Some more logic

This commit is contained in:
Greg Shuflin 2021-09-21 00:12:52 -07:00
parent fac481c0a5
commit 2978a661d5

View File

@ -1,4 +1,4 @@
use iced::widget::canvas::{self, Path, Stroke}; use iced::widget::canvas::{self, Path, Stroke, Text};
use iced::{ use iced::{
executor, keyboard, time, Application, Color, Command, Element, Length, Point, Rectangle, executor, keyboard, time, Application, Color, Command, Element, Length, Point, Rectangle,
Settings, Size, Subscription, Settings, Size, Subscription,
@ -66,7 +66,7 @@ impl Application for Tetris {
}; };
if self.blocks.piece_currently_active() { if self.blocks.piece_currently_active() {
if self.ticks % 10 == 0 { if self.ticks % 10 == 0 && !self.paused {
self.blocks.move_active_piece(MoveDirection::SoftDrop); self.blocks.move_active_piece(MoveDirection::SoftDrop);
} }
} else { } else {
@ -145,6 +145,29 @@ impl<'a> canvas::Program<Message> for Tetris {
frame.stroke(&block, stroke); frame.stroke(&block, stroke);
} }
let text_color = Color::from_rgb8(255, 30, 30);
let text_size = 32.0;
let score = Text {
content: format!("Lines removed: {}", self.lines_removed),
position: Point::new(10.0, 30.0),
color: text_color,
size: text_size,
..Default::default()
};
frame.fill_text(score);
if self.paused {
let paused = Text {
content: format!("PAUSED"),
position: Point::new(10.0, 60.0),
color: text_color,
size: text_size,
..Default::default()
};
frame.fill_text(paused);
}
vec![background, frame.into_geometry()] vec![background, frame.into_geometry()]
} }
} }