Öffnen der Haustür.

Neuer Raum: Vorgarten und Dach.
This commit is contained in:
Olli Graf
2022-04-27 20:32:13 +02:00
parent 71e76c957e
commit db0493c49f
3 changed files with 46 additions and 26 deletions

View File

@@ -25,17 +25,34 @@ class ActionModul:
zeile = zeile +1
def oeffne(self,parsedCommand):
item = self.world.findItemImInventar(parsedCommand.gegenstand);
item = self.world.findItemImInventarOderAktuellerRaum(parsedCommand.gegenstand);
logging.debug(f'öffne RaumId= {self.world.aktuellerRaum.id}')
logging.debug(f'öffne Item= {item}')
if item != None:
logging.debug(f'öffne ItemId= {item.id}')
if item.id == self.world.ITEM_TRUHE:
logging.debug('öffne Truhe')
schluessel = self.world.findItemImInventarById(self.world.ITEM_KLEINER_SCHLUESSEL)
if schluessel != None:
item.zustand = item.OFFEN
self.setFehler('Truhe ist jetzt offen')
else:
self.setFehler('Die Truhe ist verschlossen und du hast keinen Schlüssel.')
self.setFehler('Die Truhe ist verschlossen und dir fehlt der passende Schlüssel.')
elif item.id == self.world.ITEM_HAUSTUER:
if self.world.aktuellerRaum.id == self.world.RAUM_FLUR:
schluessel = self.world.findItemImInventarById(self.world.ITEM_HAUSTUERSCHLUESSEL)
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.')
self.world.aktuellerRaum.ausgaenge[self.world.SUED] = self.world.RAUM_GARTEN
else:
logging.debug('öffne Haustür kein Haustürschlüssel')
self.setFehler('Die Tür ist verschlossen.')
def verliere(self,parsedCommand):
@@ -82,9 +99,12 @@ class ActionModul:
schluessel.sichtbar = True
def untersuche(self,parsedCommand):
logging.debug('untersuche() suche nach Gegenstand:' + parsedCommand.gegenstand)
logging.debug(f'untersuche() suche nach Gegenstand: {parsedCommand.gegenstand}')
if parsedCommand.gegenstand == None:
self.untersucheAktuellenRaum
return
item = self.world.findItemImInventarOderAktuellerRaum(parsedCommand.gegenstand)
if item != None:
@@ -94,12 +114,12 @@ class ActionModul:
glas.sichtbar = True
elif item.id == self.world.ITEM_BETT:
# Falltür sichtbar machen
self.world.aktuellerRaum.ausgaenge[self.world.RUNTER] = '5'
self.world.aktuellerRaum.ausgaenge[self.world.RUNTER] = self.world.RAUM_KELLER
self.setFehler('Im Boden unter dem Bett findest du eine Falltür, die nach unten führt.')
elif item.id == self.world.ITEM_NACHTSCHRANK:
self.setFehler('In der Schublade findest du einen Schlüssel')
schluessel = self.world.findRaumItemById(self.world.ITEM_HAUSTUERSCHLUESSEL)
#schluessel.sichtbar = True
schluessel.sichtbar = True
else:
logging.debug('Kein Item gefunden, suche nach Raum')
self.untersucheAktuellenRaum(parsedCommand)

View File

@@ -202,6 +202,7 @@ class World:
self.ITEM_SCHWERT = '11'
self.ITEM_SEIL = '12'
self.ITEM_HAUSTUERSCHLUESSEL = '13'
self.ITEM_RANKGITTER = '14'
# Räume
@@ -210,6 +211,9 @@ class World:
self.RAUM_FLUR = '3'
self.RAUM_SCHLAFZIMMER = '4'
self.RAUM_KELLER = '5'
self.RAUM_GARTEN = '6'
self.RAUM_DACH = '7'
self.fehler = ''
parser = WorldParser.WorldParser(self)

View File

@@ -14,7 +14,6 @@
</beschreibung>
</raum>
<raum id='3' name='Flur'>
<ausgang dir='Sued' nachRaum='1' />
<ausgang dir='Nord' nachRaum='1' />
<ausgang dir='West' nachRaum='4' />
<beschreibung>
@@ -35,24 +34,20 @@
Kellerraum
</beschreibung>
</raum>
<raum id='10' name='Treppenhaus Kerkerebene'>
<ausgang dir='Runter' nachRaum='5' />
<ausgang dir='Sued' nachRaum='11' />
<raum id='6' name='Garten'>
<ausgang dir='Nord' nachRaum='3' />
<ausgang dir='Rauf' nachRaum='7' />
Du stehst im Vorgarten, die Haustür führt zurück ins Haus.
<beschreibung>
Treppenhaus in der Kerkerebene. Eine Tür führt nach Süden. Über der Tür hängt ein Hinweisschild.
Du stehst im Vorgarten vor dem Haus. Durch die Tür im Norden gelangst du zurück ins Haus. Rechts neben der Tür
wächst Efeu an einem Rankgitter bis zum Dach hinauf.
</beschreibung>
</raum>
<raum id='11' name='Zellblockgang'>
<ausgang dir='Nord' nachRaum='10' />
<ausgang dir='Ost' nachRaum='12' />
<raum id='7' name='Dach'>
<ausgang dir='Runter' nachRaum='6' />
Du hast das Dach erklommen.
<beschreibung>
Vom Gang im Zellblock führt eine Tür nach Osten in die Kerkerzelle. Über der Tür hängt ein Hinweisschild.
</beschreibung>
</raum>
<raum id='12' name='Kerkerzelle'>
<ausgang dir='West' nachRaum='11' />
<beschreibung>
Vom Gang im Zellblock führt eine Tür nach Osten in die Kerkerzelle.
Du hast das Dach erklommen.
</beschreibung>
</raum>
</ebene>
@@ -110,7 +105,7 @@
<item name='Leiter' id='2' raum='1' imobil='true' adjektiv = '0' msgid='1' visible='true' />
<item name='Truhe' id='3' raum='2' imobil='false' adjektiv = '0' msgid='4' visible='true' />
<item name='Pflanze' id='4' raum='3' imobil='false' adjektiv = '0' msgid='3' visible='true' />
<item name='Haustür' id='5' raum='3' imobil='true' adjektiv = '0' msgid='3' visible='true' />
<item name='Haustür' id='5' raum='3' imobil='true' adjektiv = '0' msgid='5' visible='true' />
<item name='Glas' id='6' raum='3' imobil='false' adjektiv = '0' msgid='3' visible='false' />
<item name='Bett' id='7' raum='4' imobil='true' adjektiv = '0' msgid='1' visible=' true' />
<item name='Nachtschrank' id='8' raum='4' imobil='true' adjektiv = '0' msgid='1' visible=' true' />
@@ -118,7 +113,8 @@
<item name='Jacke' id='10' raum='5' imobil='false' adjektiv = '0' msgid='1' visible='true' />
<item name='Schwert' id='11' raum='5' imobil='false' adjektiv = '0' msgid='1' visible='false' />
<item name='Seil' id='12' raum='5' imobil='false' adjektiv = '0' msgid='1' visible='false' />
<item name='Haustürschlüssel' id='13' raum='5' imobil='false' adjektiv = '0' msgid='1' visible='false' />
<item name='Haustürschlüssel' id='13' raum='4' imobil='false' adjektiv = '0' msgid='1' visible='false' />
<item name='Rankgitter' id='14' raum='6' imobil='false' adjektiv = '0' msgid='1' visible='true' />
</items>
<personen>