diff options
author | Justin Worthe <justin@worthe-it.co.za> | 2019-04-26 19:43:59 +0200 |
---|---|---|
committer | Justin Worthe <justin@worthe-it.co.za> | 2019-04-26 19:43:59 +0200 |
commit | ebe7d5cd5cc42d8f3f02ca926f4b920ada03765f (patch) | |
tree | a139c6b65182f1fc10d7dcea7eec45a234491048 /src/constants.rs | |
parent | 3e4f70ff90471120818cfb38a6dbde4952c11b8f (diff) |
Refactored game map to use less memory
Diffstat (limited to 'src/constants.rs')
-rw-r--r-- | src/constants.rs | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/src/constants.rs b/src/constants.rs new file mode 100644 index 0000000..dcda1d5 --- /dev/null +++ b/src/constants.rs @@ -0,0 +1,49 @@ +pub const MAP_SIZE: usize = 33; +pub const MAP_ROW_SIZE: [MapRow; MAP_SIZE] = [ + MapRow { start_bit: 0, x_offset: 11 }, + MapRow { start_bit: 11, x_offset: 8 }, + MapRow { start_bit: 28, x_offset: 7 }, + MapRow { start_bit: 47, x_offset: 6 }, + MapRow { start_bit: 68, x_offset: 4 }, + MapRow { start_bit: 93, x_offset: 4 }, + MapRow { start_bit: 118, x_offset: 3 }, + MapRow { start_bit: 145, x_offset: 2 }, + MapRow { start_bit: 174, x_offset: 1 }, + MapRow { start_bit: 205, x_offset: 1 }, + MapRow { start_bit: 236, x_offset: 1 }, + MapRow { start_bit: 267, x_offset: 0 }, + MapRow { start_bit: 300, x_offset: 0 }, + MapRow { start_bit: 333, x_offset: 0 }, + MapRow { start_bit: 366, x_offset: 0 }, + MapRow { start_bit: 399, x_offset: 0 }, + MapRow { start_bit: 432, x_offset: 0 }, + MapRow { start_bit: 465, x_offset: 0 }, + MapRow { start_bit: 498, x_offset: 0 }, + MapRow { start_bit: 531, x_offset: 0 }, + MapRow { start_bit: 564, x_offset: 0 }, + MapRow { start_bit: 597, x_offset: 0 }, + MapRow { start_bit: 630, x_offset: 1 }, + MapRow { start_bit: 661, x_offset: 1 }, + MapRow { start_bit: 692, x_offset: 1 }, + MapRow { start_bit: 723, x_offset: 2 }, + MapRow { start_bit: 752, x_offset: 3 }, + MapRow { start_bit: 779, x_offset: 4 }, + MapRow { start_bit: 804, x_offset: 4 }, + MapRow { start_bit: 829, x_offset: 6 }, + MapRow { start_bit: 850, x_offset: 7 }, + MapRow { start_bit: 869, x_offset: 8 }, + MapRow { start_bit: 886, x_offset: 11 }, +]; +pub const MAP_BITSIZE: usize = 897; +pub const MAP_U64S: usize = 15; + +pub struct MapRow { + pub start_bit: usize, + pub x_offset: usize +} + +impl MapRow { + pub fn len(&self) -> usize { + MAP_SIZE - 2 * self.x_offset + } +} |