jag

2048_rust

public

Small 2048 game in Rust

Star0
Watch0

Commit ad346a16fded

tarball

baumsplitter41 <baumsplitter41@baumsplitter41.eu>2026-09-13 22:28 UTC

1 file changed+12-7
chore: improved print_field() by using println! instaed of '\n’ and a match statement. Removed duplicated line and not needed 'true' match.
Modified file: src/main.rs+12 additions−7 deletions
@@ -13,7 +13,7 @@ enum Direction {
1313 }
1414
1515 fn print_field(field: [[u16; 4]; 4]) {
16- print!("┏━━━━┯━━━━┯━━━━┯━━━━┓\n");
16+ println!("┏━━━━┯━━━━┯━━━━┯━━━━┓");
1717
1818 for i in 0..field.len() {
1919 print!("┃");
@@ -24,16 +24,20 @@ fn print_field(field: [[u16; 4]; 4]) {
2424 n => print!("{:4}", n),
2525 };
2626
27- print!("{}", if j == 3 { "┃\n" } else { "│" });
27+ match j {
28+ 3 => println!("┃"),
29+ _ => print!("│")
30+ };
31+
2832 }
2933 //print!("\x1b[D┃\n┃ │ │ │ ┃\n");
3034
3135 if i != 3 {
32- print!("┠────┼────┼────┼────┨\n");
36+ println!("┠────┼────┼────┼────┨");
3337 }
3438 }
3539
36- print!("┗━━━━┷━━━━┷━━━━┷━━━━┛\n");
40+ println!("┗━━━━┷━━━━┷━━━━┷━━━━┛");
3741
3842 io::stdout().flush().unwrap();
3943 }
@@ -69,7 +73,7 @@ fn move_field(direction: Direction, field: [[u16; 4]; 4]) -> [[u16; 4]; 4] {
6973 }
7074
7175 if new_field[this.0][this.1] == new_field[next.0][next.1] {
72- if lock == true {
76+ if lock {
7377 lock = false;
7478 break;
7579 }
@@ -155,8 +159,9 @@ fn main() {
155159
156160 let mut field: [[u16; 4]; 4] = [[0; 4]; 4];
157161
158- make_rand_num(&mut field);
159- make_rand_num(&mut field);
162+ for _ in 0..2 {
163+ make_rand_num(&mut field);
164+ };
160165
161166 let mut stdin = stdin();
162167 let mut buf = [0u8; 10];