asciigame/utils.py

32 lines
936 B
Python

class BoardUtils:
def findOccupied(board):
occupied = []
for i in board:
pos = i.getCoords()
dims = i.dims
for j in range(dims[0]):
for k in range(dims[1]):
occupied.append([pos[0] + j, pos[1] + k])
return occupied
def surround(pos, radius=1):
surrounding = []
for i in range(-1 * radius, radius + 1, 1):
for j in range(-1 * radius, radius + 1, 1):
surrounding.append([pos[0] + i, pos[1] + j])
return surrounding
def tileAtPosition(board, pos):
for i in board:
lpos = i.getCoords()
dims = i.dims
if not dims:
dims = [1, 1]
for j in range(dims[0]):
for k in range(dims[1]):
if [lpos[0] + j, lpos[1] + k] == pos:
return i
return None