diff --git a/ActionModul.py b/ActionModul.py index 1753ff0..c9b1f19 100644 --- a/ActionModul.py +++ b/ActionModul.py @@ -64,10 +64,11 @@ class ActionModul: logging.debug(f'öffne Haustür Schlüssel ist {schluessel}') if schluessel != None: item.zustand = item.OFFEN - self.setFehler('Die Haustür ist geöffnet und führt in den Garten.') + schluessel.sichtbar = False + self.setFehler('Die Haustür ist geöffnet,der Haustürschlüssel löst sich auf.') self.world.aktuellerRaum.ausgaenge[self.world.SUED] = self.world.RAUM_GARTEN + self.ausDemInventar(schluessel) else: - logging.debug('öffne Haustür kein Haustürschlüssel') self.setFehler('Die Tür ist verschlossen.') def isAktuellerRaum(self, raumid): @@ -95,21 +96,24 @@ class ActionModul: bach = self.world.sucheRaum(self.world.RAUM_BACH) bach.ausgaenge[self.world.SUED] = self.world.RAUM_TEICH + def ausDemInventar(self,item): + del self.world.inventar[item.id] + self.world.aktuellerRaum.items[item.id] = item + item.raumid = self.world.aktuellerRaum.id + def verliere(self,parsedCommand): item = self.world.findItemImInventar(parsedCommand.gegenstand); logging.debug(f'verliere Item {item}') if item != None: - del self.world.inventar[item.id] if self.isAktuellerRaum(self.world.RAUM_BACH): if item.id == self.world.ITEM_PLANKE: - baueBruecke() + self.baueBruecke() self.setFehler('Du legst die Planke über den Bach und es ensteht eine Brücke über den Bach') - self.world.aktuellerRaum.items[item.id] = item - item.raumid = self.world.aktuellerRaum.id + self.ausDemInventar(item) else: self.setFehler("Diesen Gegenstand besitzt du nicht.") @@ -152,6 +156,9 @@ class ActionModul: self.insInventar(schluessel) + def zeigeItemBeschreibung(self,item): + self.world.printText(f'item-{item.id}') + def untersuche(self,parsedCommand): logging.debug(f'untersuche() suche nach Gegenstand: {parsedCommand.gegenstand}') if parsedCommand.gegenstand == None: @@ -181,6 +188,16 @@ class ActionModul: fisch.sichtbar = True elif item.id == self.world.ITEM_JACKE: self.findeTruhenschluessel() + elif item.id == self.world.ITEM_TEICH: + fisch = self.world.findItemById(self.world.ITEM_FISCH) + + fisch.sichtbar = True + if fisch.raumid == self.world.RAUM_TEICH: + self.setFehler('Im Teich schwimmt ein kleiner Fisch') + else: + self.zeigeItemBeschreibung(item) + + @@ -257,16 +274,16 @@ class ActionModul: logging.debug("gehe nach " + richtung) if richtung == 'nord': - self.nord() + self.geheNach(richtung) elif richtung == 'süd': - self.sued() + self.geheNach(richtung) if richtung == 'west': - self.west() + self.geheNach(richtung) if richtung == 'ost': - self.ost() + self.geheNach(richtung) if richtung == 'rauf': self.rauf() - + def geheNach(self,richtung): logging.debug(f'geheNach() Richtung {richtung}') diff --git a/TestModule.py b/TestModule.py index b151d14..0cfa1f4 100644 --- a/TestModule.py +++ b/TestModule.py @@ -12,8 +12,12 @@ class TestModule: def debug(self,msg): logging.debug(f'AUTO: {msg}') + def parseInput(self, command): + return self.world.parseInput(command) + def testOeffneTruhe(self): - pcmd = self.world.parseInput('nimm Truhe') + pcmd = self.parseInput('nimm Truhe') + #Auf den Dachboden self.ac.rauf() self.ac.nimm(pcmd) @@ -26,41 +30,72 @@ class TestModule: self.ac.west() self.debug(f'aktueller Raum: {self.world.aktuellerRaum.name}') self.debug(f'Ausgänge: {self.world.aktuellerRaum.ausgaenge}') - pcmd = self.world.parseInput('untersuche Bett') + pcmd = self.parseInput('untersuche Bett') + self.ac.untersuche(pcmd) self.debug(f'Ausgänge: {self.world.aktuellerRaum.ausgaenge}') # In den Keller self.ac.runter() - pcmd = self.world.parseInput('nimm Jacke') + pcmd = self.parseInput('nimm Jacke') + self.ac.nimm(pcmd) - pcmd = self.world.parseInput('benutze Jacke') + pcmd = self.parseInput('benutze Jacke') + self.ac.benutze(pcmd) - pcmd = self.world.parseInput('öffne Truhe') + pcmd = self.parseInput('öffne Truhe') + self.ac.oeffne(pcmd) def testTeich(self): self.testOeffneTruhe() - pcmd = self.world.parseInput('nimm Seil') + pcmd = self.parseInput('nimm Seil') + self.ac.nimm(pcmd) - pcmd = self.world.parseInput('nimm Schwert') + pcmd = self.parseInput('nimm Schwert') + self.ac.nimm(pcmd) #Rauf ins Schlafzimmer self.ac.rauf() - pcmd = self.world.parseInput('untersuche Nachtschrank') + pcmd = self.parseInput('untersuche Nachtschrank') + self.ac.untersuche(pcmd) - pcmd = self.world.parseInput('nimm Haustürschlüssel') + pcmd = self.parseInput('nimm Haustürschlüssel') + self.ac.nimm(pcmd) #In den Flur self.ac.ost() - pcmd = self.world.parseInput('untersuche Pflanze') + pcmd = self.parseInput('untersuche Pflanze') + self.ac.untersuche(pcmd) - pcmd = self.world.parseInput('nimm Krug') + pcmd = self.parseInput('nimm Krug') + self.ac.nimm(pcmd) + pcmd = self.parseInput('öffne Haustür') + + self.ac.oeffne(pcmd) + + # nach draussen + self.ac.sued() + + # aufs Dach + self.ac.rauf() + + pcmd = self.parseInput('nimm Planke') + self.ac.nimm(pcmd) + + #Wieder runter + self.ac.runter() + #Zum Bach + self.ac.sued() + + + + diff --git a/World.py b/World.py index f630242..ee3b45b 100644 --- a/World.py +++ b/World.py @@ -256,7 +256,8 @@ class World: self.RAUM_GARTEN = '6' self.RAUM_DACH = '7' self.RAUM_BACH = '8' - self.RAUM_TEICH = '9' + self.RAUM_FELD = '9' + self.RAUM_TEICH = '10' self.fehler = '' diff --git a/world.xml b/world.xml index 819eae4..4144597 100644 --- a/world.xml +++ b/world.xml @@ -58,11 +58,18 @@ Du stehst an einem Bach. - + - Ein kleiner Teich. + Du stehst an einem Teich. + + + + + + + Ein Feld. @@ -166,11 +173,11 @@ In einer Schreibtischschublade findest du einen Schlüssel. - - Der Schlüssel ist etwa 10cm lang und hat eine ringförmige Reide. Der Bart hat drei Zacken und zwei Kerben. + + Der Schlüssel schimmert etwas bläulich. - - Zellblock 11-38 + + Die Planke wirkt stabil genug, dein Gewicht zu tragen. Das Tor besteht aus schmideeisernen Stäben, die geschmiedete Querträger halten. Das Tor ist an den Seiten in Führungsschienen