Mercurial > nagslang
changeset 338:0da3d9af277f
Better change sequence.
author | Jeremy Thurgood <firxen@gmail.com> |
---|---|
date | Fri, 06 Sep 2013 12:42:18 +0200 |
parents | 004e3dd38336 |
children | 9137e792307b |
files | nagslang/protagonist.py |
diffstat | 1 files changed, 13 insertions(+), 16 deletions(-) [+] |
line wrap: on
line diff
--- a/nagslang/protagonist.py Fri Sep 06 12:25:53 2013 +0200 +++ b/nagslang/protagonist.py Fri Sep 06 12:42:18 2013 +0200 @@ -36,6 +36,16 @@ return self.game_object.form +def _make_change_sequence(old, new): + return ( + new, new, old, old, old, old, + new, new, old, old, old, + new, new, old, old, + new, new, new, old, old, + new, new, new, new, old, old, + new) + + class Protagonist(GameObject): """Representation of our fearless protagonist. @@ -47,20 +57,8 @@ CHANGING_SEQUENCE = { # The key is the form we're changing *from*. - HUMAN_FORM: ( - WOLF_FORM, HUMAN_FORM, HUMAN_FORM, - WOLF_FORM, HUMAN_FORM, WOLF_FORM, - HUMAN_FORM, WOLF_FORM, HUMAN_FORM, - WOLF_FORM, HUMAN_FORM, WOLF_FORM, - HUMAN_FORM, WOLF_FORM, WOLF_FORM, - ), - WOLF_FORM: ( - HUMAN_FORM, WOLF_FORM, WOLF_FORM, - HUMAN_FORM, WOLF_FORM, HUMAN_FORM, - WOLF_FORM, HUMAN_FORM, WOLF_FORM, - HUMAN_FORM, WOLF_FORM, HUMAN_FORM, - WOLF_FORM, HUMAN_FORM, HUMAN_FORM, - ), + HUMAN_FORM: _make_change_sequence(HUMAN_FORM, WOLF_FORM), + WOLF_FORM: _make_change_sequence(WOLF_FORM, HUMAN_FORM), } zorder = ZORDER_MID @@ -252,8 +250,7 @@ self.inventory = old_protagonist.inventory def toggle_form(self): - for form in self.CHANGING_SEQUENCE[self.form]: - self.changing_sequence.extend([form] * 3) + self.changing_sequence.extend(self.CHANGING_SEQUENCE[self.form]) def _go_to_next_form(self): if self.changing_sequence.pop(0) == self.WOLF_FORM: