X-Git-Url: https://plomlompom.com/repos/%7B%7Bprefix%7D%7D/balance?a=blobdiff_plain;f=plomrogue%2Fgame.py;h=3c927dbb7dc92e2718b08185f71e496f469694e1;hb=fd98b77dfea09c0481b0e8be1204b6439eea80da;hp=dd9c50a76a7e65c211f9425d413c18911611200d;hpb=e91c0688ee0d273d7f106e837e1ad52009d79350;p=plomrogue2 diff --git a/plomrogue/game.py b/plomrogue/game.py index dd9c50a..3c927db 100755 --- a/plomrogue/game.py +++ b/plomrogue/game.py @@ -3,6 +3,7 @@ from plomrogue.io import GameIO from plomrogue.misc import quote from plomrogue.mapping import YX, MapGeometrySquare, MapGeometryHex, Map import string +import datetime @@ -129,6 +130,9 @@ class Game(GameBase): self.player_chars = string.digits + string.ascii_letters self.player_char_i = -1 self.admin_passwords = [] + self.send_gamestate_interval = datetime.timedelta(seconds=0.04) + self.last_send_gamestate = datetime.datetime.now() -\ + self.send_gamestate_interval self.terrains = { '.': 'floor', 'X': 'wall', @@ -261,9 +265,12 @@ class Game(GameBase): self.io.send('PLAY_ERROR ' + quote(str(e)), connection_id) if self.changed: self.turn += 1 - self.send_gamestate() - self.changed = False - self.save() + if self.last_send_gamestate < \ + datetime.datetime.now() -self.send_gamestate_interval: + self.send_gamestate() + self.changed = False + self.save() + self.last_send_gamestate = datetime.datetime.now() def get_command(self, command_name):