mirror of
https://github.com/kristoferssolo/blockishfire.git
synced 2025-12-31 13:42:30 +00:00
Removed errors
This commit is contained in:
parent
a84c8500db
commit
4c642f09bd
29
src/main.rs
29
src/main.rs
@ -2,9 +2,9 @@ extern crate rand;
|
||||
|
||||
use rand::Rng;
|
||||
|
||||
use crossterm::terminal;
|
||||
use std::thread;
|
||||
use std::time::{Duration, Instant};
|
||||
use crossterm::terminal;
|
||||
|
||||
fn main() {
|
||||
const COLOR_PALLET: [[u8; 3]; 37] = [
|
||||
@ -45,23 +45,19 @@ fn main() {
|
||||
[0xDF, 0xDF, 0x9F],
|
||||
[0xEF, 0xEF, 0xC7],
|
||||
[0xFF, 0xFF, 0xFF],
|
||||
];
|
||||
];
|
||||
let fire_width = 320;
|
||||
let fire_height = 168;
|
||||
let time_per_frame = 1000/ 60;
|
||||
let time_per_frame = 1000 / 60;
|
||||
let mut doom_fire = vec![0; fire_width * fire_height];
|
||||
|
||||
let mut term_width = 0;
|
||||
let mut term_height = 0;
|
||||
|
||||
let mut term_width = 0 as u32;
|
||||
let mut term_height = 0 as u32;
|
||||
|
||||
match terminal::size() {
|
||||
Ok(res) => {
|
||||
if let Ok(res) = terminal::size() {
|
||||
term_width = res.0 as u32 * 8;
|
||||
term_height = res.1 as u32 * 8 * 2;
|
||||
}
|
||||
Err(_) => {}
|
||||
}
|
||||
|
||||
let mut engine = blockish::ThreadedEngine::new(term_width, term_height, false);
|
||||
for i in 0..fire_width {
|
||||
@ -80,23 +76,18 @@ fn main() {
|
||||
let dst = (src - r + 1) as usize;
|
||||
let res = doom_fire[src] - (r & 1);
|
||||
doom_fire[dst - fire_width] = res;
|
||||
}
|
||||
else {
|
||||
} else {
|
||||
doom_fire[src - fire_width] = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
engine.render(&|x, y| {
|
||||
let start = (y * fire_height as u32 / term_height * fire_width as u32 + (x * fire_width as u32 / term_width))
|
||||
as usize;
|
||||
let start = (y * fire_height as u32 / term_height * fire_width as u32
|
||||
+ (x * fire_width as u32 / term_width)) as usize;
|
||||
let pixel = doom_fire[start];
|
||||
let rgb = COLOR_PALLET[pixel];
|
||||
(
|
||||
rgb[0],
|
||||
rgb[1],
|
||||
rgb[2],
|
||||
)
|
||||
(rgb[0], rgb[1], rgb[2])
|
||||
});
|
||||
let end_time = Instant::now();
|
||||
let render_time = end_time - start_time;
|
||||
|
||||
Loading…
Reference in New Issue
Block a user