From 8dd9517ae4b925fba5b825da04254412e039fa0c Mon Sep 17 00:00:00 2001 From: Justin Worthe Date: Sun, 1 Jul 2018 23:58:52 +0200 Subject: Continued filling in bitwise game engine --- src/engine/geometry.rs | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'src/engine/geometry.rs') diff --git a/src/engine/geometry.rs b/src/engine/geometry.rs index 22b56f0..02fe44b 100644 --- a/src/engine/geometry.rs +++ b/src/engine/geometry.rs @@ -59,6 +59,16 @@ impl Point { 1 << index } } + + pub fn to_either_bitfield(&self, width: u8) -> u64 { + if self.x >= width { + let index = self.y * width + self.x - width; + 1 << index + } else { + let index = self.y * width + self.x; + 1 << index + } + } } use std::cmp::Ord; -- cgit v1.2.3