Schlüssel im Keller kann jetzt gefunden werden.

This commit is contained in:
Olli Graf
2022-01-21 06:10:47 +01:00
parent 2740729f46
commit d971acfd83
3 changed files with 39 additions and 16 deletions

View File

@@ -50,25 +50,36 @@ class ActionModul:
else: else:
self.setFehler("Diesen Gegenstand besitzt du nicht.") self.setFehler("Diesen Gegenstand besitzt du nicht.")
def untersucheAktuellenRaum(self, parsedCommand):
raum = self.world.sucheRaumName(parsedCommand.gegenstand)
logging.debug(f'raumId {raum.id}')
logging.debug(f'untersucheAktuellenRaum() {parsedCommand.gegenstand} in {self.world.aktuellerRaum.id}')
if raum.id == self.world.aktuellerRaum.id:
logging.debug(f'untersuche aktuellen Raum {raum.name}')
if raum.id == '5':
#Schlüssel im Keller sichtbar machen
logging.debug('mache Schlüssel sichtbar')
schluessel = self.world.findRaumItemById('9')
schluessel.sichtbar = True
def untersuche(self,parsedCommand): def untersuche(self,parsedCommand):
logging.debug('untersuche() suche nach Gegenstand:' + parsedCommand.gegenstand) logging.debug('untersuche() suche nach Gegenstand:' + parsedCommand.gegenstand)
item = self.world.findItemImInventarOderAktuellerRaum(parsedCommand.gegenstand) item = self.world.findItemImInventarOderAktuellerRaum(parsedCommand.gegenstand)
if item != None: if item != None:
if item.id == '10': if item.id == '4':
schluessel = self.world.findRaumItemById('11')
logging.debug('mache Gegenstand ' + schluessel.name + ' sichtbar')
schluessel.sichtbar = True
self.world.printText('2')
elif item.id == '4':
glas = self.world.findRaumItemById('6') glas = self.world.findRaumItemById('6')
logging.debug(f'mache Gegenstand {glas.name} sichtbar') logging.debug(f'mache Gegenstand {glas.name} sichtbar')
glas.sichtbar = True glas.sichtbar = True
elif item.id == '7': elif item.id == '7':
# Falltür sichtbar machen # Falltür sichtbar machen
self.world.aktuellerRaum.ausgaenge[self.world.RUNTER] = '8' self.world.aktuellerRaum.ausgaenge[self.world.RUNTER] = '5'
self.setFehler('Im Boden unter dem Bett findest du eine Falltür, die nach unten führt.')
else: else:
self.setFehler("Das sehe ich hier nicht.") logging.debug('Kein Item gefunden, suche nach Raum')
self.untersucheAktuellenRaum(parsedCommand)
def ziehe(self,parsedCommand): def ziehe(self,parsedCommand):
item = self.world.findIteminAktuellerRaum(parsedCommand.gegenstand) item = self.world.findIteminAktuellerRaum(parsedCommand.gegenstand)
@@ -77,7 +88,7 @@ class ActionModul:
if item.id == 8: if item.id == 8:
self.world.stdscr.addstr('Du ziehst den Hebel und es passiert.... nichts!') self.world.stdscr.addstr('Du ziehst den Hebel und es passiert.... nichts!')
else: else:
self.setFehler("diesen Gegenstand sehe ich hier nicht.") self.setFehler('Das sehe ich hier nicht.')
def nimm(self,parsedCommand): def nimm(self,parsedCommand):
item = self.world.findIteminAktuellerRaum(parsedCommand.gegenstand) item = self.world.findIteminAktuellerRaum(parsedCommand.gegenstand)
@@ -100,26 +111,28 @@ class ActionModul:
def gehe(self): def gehe(self):
richtung = self.world.parsedCommand.gegenstand richtung = self.world.parsedCommand.gegenstand
print("gehe nach " + richtung) logging.debug("gehe nach " + richtung)
if richtung == 'nord': if richtung == 'nord':
self.nord() self.nord()
def geheNach(self,richtung): def geheNach(self,richtung):
logging.debug(f'geheNach() Richtung {richtung}')
raum = self.world.aktuellerRaum raum = self.world.aktuellerRaum
if raum.ausgaenge[richtung]: if raum.ausgaenge[richtung]:
ausgang = raum.sucheRaumAusgang(richtung) ausgang = raum.sucheRaumAusgang(richtung)
print("gefundener Ausgang: " + ausgang) logging.debug(f'gefundener Ausgang: {ausgang}')
if ausgang != None: if ausgang != None:
raum = self.world.sucheRaum(ausgang) raum = self.world.sucheRaum(ausgang)
print("gefundener Raum "+ raum.name)
else: else:
logging.warn('Keine AusgandId gefunde')
self.setFehler("In diese Richtung gibt's keine Ausgang!") self.setFehler("In diese Richtung gibt's keine Ausgang!")
if raum != None: if raum != None:
self.world.aktuellerRaum = raum self.world.aktuellerRaum = raum
else: else:
logging.debug('Kein Raum zur AusgangId')
self.setFehler("In diese Richtung gibt's keine Ausgang!") self.setFehler("In diese Richtung gibt's keine Ausgang!")
else: else:
self.setFehler("In diese Richtung kannst du nicht gehen") self.setFehler("In diese Richtung kannst du nicht gehen")
@@ -143,7 +156,7 @@ class ActionModul:
self.geheNach(self.world.RUNTER) self.geheNach(self.world.RUNTER)
def about(self): def about(self):
print("Kerker Version " + self.world.VERSION) print("Tomb Version " + self.world.VERSION)
self.world.waitForCR self.world.waitForCR
def raumaction(self): def raumaction(self):

View File

@@ -74,6 +74,13 @@ class World:
return raum return raum
return None return None
def sucheRaumName(self,name):
for raumid in self.raumliste:
raum = self.raumliste[raumid]
if raum.name == name:
return raum
return None
def findItemImInventarOderAktuellerRaum(self,itemname): def findItemImInventarOderAktuellerRaum(self,itemname):
item = self.findItemImInventar(itemname) item = self.findItemImInventar(itemname)

View File

@@ -28,10 +28,10 @@
Neben dem Bett steht ein Nachtschrank mit Schublade. Neben dem Bett steht ein Nachtschrank mit Schublade.
</beschreibung> </beschreibung>
</raum> </raum>
<raum id='5' name='Treppenhaus'> <raum id='5' name='Keller'>
<ausgang dir='Rauf' nachRaum='10' /> <ausgang dir='Rauf' nachRaum='4' />
<beschreibung> <beschreibung>
Treppenhaus im Keller Kellerraum
</beschreibung> </beschreibung>
</raum> </raum>
<raum id='10' name='Treppenhaus Kerkerebene'> <raum id='10' name='Treppenhaus Kerkerebene'>
@@ -93,6 +93,7 @@
<sortout name='den' /> <sortout name='den' />
<sortout name='in' /> <sortout name='in' />
<sortout name='und' /> <sortout name='und' />
<sortout name='kleiner' />
</sortouts> </sortouts>
<items> <items>
<item name='Tisch' id='1' raum='1' imobil='true' msgid='1' visible='true' /> <item name='Tisch' id='1' raum='1' imobil='true' msgid='1' visible='true' />
@@ -103,6 +104,8 @@
<item name='Glas' id='6' raum='3' imobil='false' msgid='3' visible='false' /> <item name='Glas' id='6' raum='3' imobil='false' msgid='3' visible='false' />
<item name='Bett' id='7' raum='4' imobil='true' msgid='1' visible=' true' /> <item name='Bett' id='7' raum='4' imobil='true' msgid='1' visible=' true' />
<item name='Nachtschrank' id='8' raum='4' imobil='true' msgid='1' visible=' true' /> <item name='Nachtschrank' id='8' raum='4' imobil='true' msgid='1' visible=' true' />
<item name='kleiner Schlüssel' id='9' raum='5' imobil='false' msgid='1' visible='false' />
</items> </items>
<personen> <personen>
<person name=' Fisch' id='2' raum='2' bewegung='0' /> <person name=' Fisch' id='2' raum='2' bewegung='0' />