Это старая версия документа!
В прошлом эксперименте мы подключили TFT дисплей, создали игровую карту в виде двумерного массива и отобразили ее на экране. Теперь давайте поймем какие вообще объекты задействованы в игровом процессе. Как мы уже поняли, это стены, ящики, кладовщик и цели, куда нужно перетащить ящики. Теперь нужно описать каждый из классов.
Начнем с класса ящика. Главные свойства ящика, это его координаты на карте и его состояние — находится он на цели или нет.
class Box: def __init__(self, tft, x, y): self.tft = tft self.x = x self.y = y self.picture = 'box.bmp' self.picture_onGate = 'boxngate.bmp' self.onGate = False self.draw() def draw(self): if (self.onGate): self.tft.draw_bmp(self.x * 16,self.y * 16, self.picture_onGate) else: self.tft.draw_bmp(self.x * 16,self.y * 16, self.picture) def setOnGate(self, state): self.onGate = state def getOnGate(self): return self.onGate def getPos(self): return (self.x, self.y) def setPos(self, x, y): self.x = x self.y = y self.draw()