@@ -405,6 +405,19 @@ fn welcome_screen(mut sc: &Stdout, world: &World) {
405
405
let _ = sc. queue ( Clear ( crossterm:: terminal:: ClearType :: All ) ) ;
406
406
}
407
407
408
+ fn pause_screen ( mut sc : & Stdout , world : & World ) {
409
+ let pause_msg1: & str = "╔═══════════╗" ;
410
+ let pause_msg2: & str = "║Game Paused║" ;
411
+ let pause_msg3: & str = "╚═══════════╝" ;
412
+ let _ = sc. queue ( MoveTo ( world. maxc / 2 - 6 , world. maxl / 2 - 1 ) ) ;
413
+ let _ = sc. queue ( Print ( pause_msg1) ) ;
414
+ let _ = sc. queue ( MoveTo ( world. maxc / 2 - 6 , world. maxl / 2 ) ) ;
415
+ let _ = sc. queue ( Print ( pause_msg2) ) ;
416
+ let _ = sc. queue ( MoveTo ( world. maxc / 2 - 6 , world. maxl / 2 + 1 ) ) ;
417
+ let _ = sc. queue ( Print ( pause_msg3) ) ;
418
+ let _ = sc. flush ( ) ;
419
+ }
420
+
408
421
fn goodbye_screen ( mut sc : & Stdout , world : & World ) {
409
422
let goodbye_msg1: & str = " ██████╗ ██████╗ ██████╗ ██████╗ ██████╗ █████╗ ███╗ ███╗███████╗██╗\n \r ██╔════╝ ██╔═══██╗██╔═══██╗██╔══██╗ ██╔════╝ ██╔══██╗████╗ ████║██╔════╝██║\n \r ██║ ███╗██║ ██║██║ ██║██║ ██║ ██║ ███╗███████║██╔████╔██║█████╗ ██║\n \r ██║ ██║██║ ██║██║ ██║██║ ██║ ██║ ██║██╔══██║██║╚██╔╝██║██╔══╝ ╚═╝\n \r ╚██████╔╝╚██████╔╝╚██████╔╝██████╔╝ ╚██████╔╝██║ ██║██║ ╚═╝ ██║███████╗██╗\n \r ╚═════╝ ╚═════╝ ╚═════╝ ╚═════╝ ╚═════╝ ╚═╝ ╚═╝╚═╝ ╚═╝╚══════╝╚═╝\n " ;
410
423
let goodbye_msg2: & str = "████████╗██╗ ██╗ █████╗ ███╗ ██╗██╗ ██╗███████╗\n \r ╚══██╔══╝██║ ██║██╔══██╗████╗ ██║██║ ██╔╝██╔════╝\n \r ██║ ███████║███████║██╔██╗ ██║█████╔╝ ███████╗\n \r ██║ ██╔══██║██╔══██║██║╚██╗██║██╔═██╗ ╚════██║\n \r ██║ ██║ ██║██║ ██║██║ ╚████║██║ ██╗███████║██╗\n \r ╚═╝ ╚═╝ ╚═╝╚═╝ ╚═╝╚═╝ ╚═══╝╚═╝ ╚═╝╚══════╝╚═╝\n " ;
@@ -586,6 +599,8 @@ fn main() -> std::io::Result<()> {
586
599
if world. status != PlayerStatus :: Paused {
587
600
physics ( & mut world) ;
588
601
draw ( & sc, & mut world) ?;
602
+ } else {
603
+ pause_screen ( & sc, & world) ;
589
604
}
590
605
thread:: sleep ( time:: Duration :: from_millis ( slowness) ) ;
591
606
}
@@ -597,4 +612,4 @@ fn main() -> std::io::Result<()> {
597
612
. execute ( Show ) ?;
598
613
disable_raw_mode ( ) ?;
599
614
Ok ( ( ) )
600
- }
615
+ }
0 commit comments