From kde-commits Thu Oct 31 21:21:15 2013 From: Wolfgang Rohdewald Date: Thu, 31 Oct 2013 21:21:15 +0000 To: kde-commits Subject: [kajongg/sid] src: Game: make seed a property Message-Id: X-MARC-Message: https://marc.info/?l=kde-commits&m=138325482706731 Git commit 3682d7adc41b491d4f46fb8ad96447ed9f7b5905 by Wolfgang Rohdewald. Committed on 31/10/2013 at 21:09. Pushed by wrohdewald into branch 'sid'. Game: make seed a property M +10 -11 src/game.py M +0 -2 src/scoring.py http://commits.kde.org/kajongg/3682d7adc41b491d4f46fb8ad96447ed9f7b5905 diff --git a/src/game.py b/src/game.py index 6c3f250..4da1017 100644 --- a/src/game.py +++ b/src/game.py @@ -123,15 +123,8 @@ class Game(object): self.roundsFinished =3D 0 self._currentHandId =3D None self._prevHandId =3D None - self.seed =3D 0 self.randomGenerator =3D CountingRandom(self) - if self.isScoringGame(): - self.wantedGame =3D str(wantedGame) - self.seed =3D wantedGame - else: - self.wantedGame =3D wantedGame - _ =3D int(wantedGame.split('/')[0]) if wantedGame else 0 - self.seed =3D _ or int(self.randomGenerator.random() * 10**9) + self.wantedGame =3D wantedGame self.shouldSave =3D shouldSave self._setHandSeed() self.activePlayer =3D None @@ -386,14 +379,20 @@ class Game(object): # generate a new ruleset self.ruleset.save() = + @property + def seed(self): + """extract it from wantedGame. Set wantedGame if empty.""" + if not self.wantedGame: + self.wantedGame =3D str(self.randomGenerator.random() * 10**9) + return int(self.wantedGame.split('/')[0]) + def _setHandSeed(self): """set seed to a reproducable value, independent of what happend in previous hands/rounds. This makes it easier to reproduce game situations in later hands without having to exactly replay all previous hands= """ - if self.seed is not None: - seedFactor =3D (self.roundsFinished + 1) * 10000 + self.rotate= d * 1000 + self.notRotated * 100 - self.randomGenerator.seed(self.seed * seedFactor) + seedFactor =3D (self.roundsFinished + 1) * 10000 + self.rotated * = 1000 + self.notRotated * 100 + self.randomGenerator.seed(self.seed * seedFactor) = def prepareHand(self): """prepare a game hand""" diff --git a/src/scoring.py b/src/scoring.py index 4509b66..782d778 100644 --- a/src/scoring.py +++ b/src/scoring.py @@ -820,8 +820,6 @@ class ScoringDialog(QWidget): = def refresh(self, game): """reload game""" - if game and not game.isScoringGame(): - return self.game =3D game self.clear() self.setVisible(game is not None and not game.finished())