diff --git a/ActionModul.py b/ActionModul.py index 5a46aef..a133e1d 100644 --- a/ActionModul.py +++ b/ActionModul.py @@ -87,7 +87,7 @@ class ActionModul: elif item.id == self.world.ITEM_PLANKE: if self.isAktuellerRaum(self.world.RAUM_BACH): baueBruecke() - self.setFehler('Du legst die Planke über den Bach und es ensteht eine Brücke über den Bach') + self.setFehler('Du legst die Planke über den Bach und es ensteht eine Brücke.') else: self.setFehler('Das macht hier keinen Sinn.') @@ -256,14 +256,26 @@ class ActionModul: del self.world.aktuellerRaum.items[item.id] logging.debug(f'Item {item.name} ins Inventar') - self.insInventar(item) - + aufnehmen = True + logging.debug(f'nimm: RaumId== {self.world.aktuellerRaum.id}') if self.isAktuellerRaum(self.world.RAUM_BACH): logging.debug(f'nimm: ItemId == {item.id}') if item.id == self.world.ITEM_PLANKE: logging.debug('nehme Planke am Bach') self.world.aktuellerRaum.ausgaenge[self.world.SUED] = '-1' + elif self.isAktuellerRaum(self.world.RAUM_TEICH): + if item.id == self.world.ITEM_FISCH: + krug = self.world.findItemImInventarById(self.world.ITEM_KRUG) + + if krug != None: + self.setFehler('Du schöpfst mit dem Krug und der Fisch ist drin.') + else: + self.setFehler('Der Fisch ist zu glitschig, um ihn mit der Hand zu fangen.') + aufnehmen = False + + if aufnehmen: + self.insInventar(item) else: diff --git a/TestModule.py b/TestModule.py index 16c0500..ee6944a 100644 --- a/TestModule.py +++ b/TestModule.py @@ -7,6 +7,7 @@ class TestModule: logging.debug(f'** init Testmodule {world}') self.world = world + self.schrittzaehler = 0 self.ac = ActionModul.ActionModul(world) def debug(self,msg): @@ -20,84 +21,110 @@ class TestModule: #Auf den Dachboden self.ac.rauf() + self.schrittzaehler = self.schrittzaehler +1 self.ac.nimm(pcmd) + self.schrittzaehler = self.schrittzaehler +1 #Zurück ins Wohnzimmer self.ac.runter() + self.schrittzaehler = self.schrittzaehler +1 #In den Flur self.ac.sued() + self.schrittzaehler = self.schrittzaehler +1 # Ins Schlafzimmer self.ac.west() + self.schrittzaehler = self.schrittzaehler +1 self.debug(f'aktueller Raum: {self.world.aktuellerRaum.name}') self.debug(f'Ausgänge: {self.world.aktuellerRaum.ausgaenge}') pcmd = self.parseInput('untersuche Bett') self.ac.untersuche(pcmd) + self.schrittzaehler = self.schrittzaehler +1 self.debug(f'Ausgänge: {self.world.aktuellerRaum.ausgaenge}') # In den Keller self.ac.runter() + self.schrittzaehler = self.schrittzaehler +1 pcmd = self.parseInput('nimm Jacke') self.ac.nimm(pcmd) + self.schrittzaehler = self.schrittzaehler +1 pcmd = self.parseInput('benutze Jacke') self.ac.benutze(pcmd) + self.schrittzaehler = self.schrittzaehler +1 pcmd = self.parseInput('öffne Truhe') self.ac.oeffne(pcmd) + self.schrittzaehler = self.schrittzaehler +1 def testTeich(self): self.testOeffneTruhe() pcmd = self.parseInput('nimm Seil') self.ac.nimm(pcmd) + self.schrittzaehler = self.schrittzaehler +1 pcmd = self.parseInput('nimm Schwert') self.ac.nimm(pcmd) + self.schrittzaehler = self.schrittzaehler +1 #Rauf ins Schlafzimmer self.ac.rauf() + self.schrittzaehler = self.schrittzaehler +1 pcmd = self.parseInput('untersuche Nachtschrank') self.ac.untersuche(pcmd) + self.schrittzaehler = self.schrittzaehler +1 pcmd = self.parseInput('nimm Haustürschlüssel') self.ac.nimm(pcmd) + self.schrittzaehler = self.schrittzaehler +1 #In den Flur self.ac.ost() + self.schrittzaehler = self.schrittzaehler +1 pcmd = self.parseInput('untersuche Pflanze') self.ac.untersuche(pcmd) + self.schrittzaehler = self.schrittzaehler +1 pcmd = self.parseInput('nimm Krug') self.ac.nimm(pcmd) + self.schrittzaehler = self.schrittzaehler +1 pcmd = self.parseInput('öffne Haustür') self.ac.oeffne(pcmd) + self.schrittzaehler = self.schrittzaehler +1 # nach draussen self.ac.sued() + self.schrittzaehler = self.schrittzaehler +1 # aufs Dach self.ac.rauf() + self.schrittzaehler = self.schrittzaehler +1 pcmd = self.parseInput('nimm Planke') self.ac.nimm(pcmd) + self.schrittzaehler = self.schrittzaehler +1 #Wieder runter self.ac.runter() + self.schrittzaehler = self.schrittzaehler +1 #Zum Bach self.ac.sued() + self.schrittzaehler = self.schrittzaehler +1 pcmd = self.parseInput('verliere Planke') self.ac.verliere(pcmd) + self.schrittzaehler = self.schrittzaehler +1 #Zum Teich self.ac.sued() + self.schrittzaehler = self.schrittzaehler +1 diff --git a/World.py b/World.py index 09eefd4..692bdb9 100644 --- a/World.py +++ b/World.py @@ -64,6 +64,7 @@ class World: richtungen ='' ixri = 0 + self.stdscr.addstr(6,85,f'Schritte: {self.schrittzaehler}') win = curses.newwin(7,35,7,85) win.box() win.addstr('Ausgänge:') @@ -206,6 +207,7 @@ class World: count = count +1 def __init__(self): + self.schrittzaehler = 0 self.raumliste = {} self.msg = {} self.personen = {} diff --git a/map.txt b/map.txt new file mode 100644 index 0000000..18b97b6 --- /dev/null +++ b/map.txt @@ -0,0 +1,20 @@ + Wohnzimmer + ^ + | + V + Schlafzimmer<-->Flur + ^ + | + V + Garten + ^ + | + V + Bach + ^ + | + V + Feld + + + diff --git a/tomb.py b/tomb.py index d42b82b..1c91273 100755 --- a/tomb.py +++ b/tomb.py @@ -75,7 +75,6 @@ logging.debug('World initialisiert') actionmodul = ActionModul.ActionModul(world) def inputLoop(stdscr): - schrittzaehler = 0 world.stdscr = stdscr curses.echo() @@ -88,6 +87,7 @@ def inputLoop(stdscr): actionmodul.clearFehler() stdscr.addstr(11,0,'Was nun? ') command = stdscr.getstr(11,10,40).decode(encoding="utf-8") + world.schrittzaehler = world.schrittzaehler +1 command = command.rstrip() if command.startswith('debug:'): debugcommand = command.split(':',1) @@ -114,7 +114,6 @@ def inputLoop(stdscr): parsedCommand = world.parseInput(command) commandid = parsedCommand.commandid verarbeiteBefehl(parsedCommand) - schrittzaehler = schrittzaehler +1 actionmodul.raumaction() def debug_Items(): @@ -127,4 +126,8 @@ def debug_Items(): # logging.debug(f'Item-IdId:{item.id} - Item-Name:{item.name}') count = count +1 -wrapper(inputLoop) +def main(): + wrapper(inputLoop) + +if __name__ == '__main__': + main() diff --git a/world.xml b/world.xml index 9de011d..c7e1cb9 100644 --- a/world.xml +++ b/world.xml @@ -59,7 +59,7 @@ - + Du stehst an einem Teich.