summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/bitmap.rs8
-rw-r--r--src/main.rs15
2 files changed, 4 insertions, 19 deletions
diff --git a/src/bitmap.rs b/src/bitmap.rs
index afc78c5..8773a66 100644
--- a/src/bitmap.rs
+++ b/src/bitmap.rs
@@ -103,12 +103,12 @@ impl BitmapManager {
// FIXME: As of right now it's RGB, not ARGB.
for i in 0..256 {
- let r = data[(i * 3)] as u32;
- let g = data[(i * 3) + 1] as u32;
- let b = data[(i * 3) + 2] as u32;
+ let r = data[(i * 3)] << 2;
+ let g = data[(i * 3) + 1] << 2;
+ let b = data[(i * 3) + 2] << 2;
// FIXME: Also, I'm not a fan of this manual shifting shit.
- palette.push(r << 4 | g << 2 | b << 0);
+ palette.push(((r as u32) << 16) | ((g as u32) << 8) | (b as u32));
}
palette
diff --git a/src/main.rs b/src/main.rs
index 8880719..3a95beb 100644
--- a/src/main.rs
+++ b/src/main.rs
@@ -40,19 +40,4 @@ fn main() {
let bitmap_manager = bitmap::BitmapManager::new(&group_manager).unwrap();
let _tile = bitmap_manager.get_tile(277).unwrap();
-
- // use std::fs::File;
- // use std::io::Write;
- // let mut file = File::create("/tmp/test.data").unwrap();
- // let mut data: Vec<u8> = Vec::new();
- // for pixel in tile.data.iter() {
- // let r = pixel / 16;
- // let g = pixel / 4;
- // let b = pixel & 0xff;
- // data.push(r as u8);
- // data.push(g as u8);
- // data.push(b as u8);
- // }
- // println!("{} x {}", tile.width, tile.height);
- // file.write_all(&data);
}