Mercurial > rinkhals
diff gamelib/misc.py @ 69:18db99fda6bd
Move spawing code from engine to gameboard - seems more natural.
author | Neil Muller <drnlmuller@gmail.com> |
---|---|
date | Mon, 31 Aug 2009 22:14:12 +0000 |
parents | |
children | e90068d1f374 |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/gamelib/misc.py Mon Aug 31 22:14:12 2009 +0000 @@ -0,0 +1,31 @@ +# Holder for misc useful classes + +class Position(object): + """2D position / vector""" + + def __init__(self, x, y): + self.x = x + self.y = y + + def to_tuple(self): + return self.x, self.y + + def dist(self, b): + """Gives the distance to another position""" + + return abs(self.x - b.x) + abs(self.y - b.y) + + def __sub__(self, b): + return Position(self.x - b.x, self.y - b.y) + + def __add__(self, b): + return Position(self.x + b.x, self.y + b.y) + + def left_of(self, b): + return self.x < b.x + + def right_of(self, b): + return self.x > b.x + + def __eq__(self, b): + return self.x == b.x and self.y == b.y