Exemple #1
0
 def __init__(self):
     self.screenView = ScreenView()
     self.controllers = list()
     self.running = True
     self.mouseDragButton = None
     self.lastTileOverPosition = HexCoordSys.getTilePosition(0, 0)
     self.session = ClientSession()
     self.controllers.append(TileController("Tile", self.session))
     self.controllers.append(PieceController("Piece", self.session, self.controllers["Tile"].tilePositionModel))
     self.mainLoop()
 def processAnyNewData(self):
     # Not sure if python supports non-blocking queue iteration, so do this as a while
     event = self.incomingEventQueue.get(block=False)
     while event is not None:
         data = event.get("data")
         id = event["id"]
         # TODO handle multiple moves
         if event["type"] == "Remove" or event["type"] == "Move":
             data = self.remove(id)
         if event["type"] == "Add" or event["type"] == "Move":
             tilePosition = HexCoordSys.getTilePosition(int(event["tilePosition"][0]), int(event["tilePosition"][1]))
             self.add(id, tilePosition, data)
         event = self.incomingEventQueue.get(block=False)