Das Inventar ist jetzt immer zu sehen.
This commit is contained in:
@@ -45,7 +45,7 @@ class ActionModul:
|
||||
logging.debug('öffne Truhe')
|
||||
schluessel = self.world.findItemImInventarById(self.world.ITEM_KLEINER_SCHLUESSEL)
|
||||
|
||||
if schluessel != None:
|
||||
if schluessel != None and item.zustand != item.OFFEN:
|
||||
item.zustand = item.OFFEN
|
||||
seil = self.world.findItemById(self.world.ITEM_SEIL)
|
||||
seil.sichtbar = True
|
||||
@@ -53,7 +53,7 @@ class ActionModul:
|
||||
schwert = self.world.findItemById(self.world.ITEM_SCHWERT)
|
||||
schwert.sichtbar = True
|
||||
self.world.aktuellerRaum.items[schwert.id] = schwert
|
||||
self.setFehler('Truhe ist jetzt offen')
|
||||
self.setFehler('Aus der Truhe fallen ein Seil und ein Schwert.')
|
||||
else:
|
||||
self.setFehler('Die Truhe ist verschlossen und dir fehlt der passende Schlüssel.')
|
||||
|
||||
@@ -70,17 +70,29 @@ class ActionModul:
|
||||
logging.debug('öffne Haustür kein Haustürschlüssel')
|
||||
self.setFehler('Die Tür ist verschlossen.')
|
||||
|
||||
def isAktuellerRaum(self, raumid):
|
||||
return self.world.aktuellerRaum.id == raumid
|
||||
|
||||
def benutze(self, parsedCommand):
|
||||
leiter = self.world.findItemInAktuellerRaum(parsedCommand.gegenstand)
|
||||
item = self.world.findItemImInventarOderAktuellerRaum(parsedCommand.gegenstand);
|
||||
|
||||
logging.debug(f'benutze(): Leiter is {leiter}')
|
||||
if leiter != None:
|
||||
if item.id ==self.world.ITEM_JACKE:
|
||||
self.setFehler('Also du die Jacke anziehst, findest du einen kleine Schlüssel in der Tasche.')
|
||||
self.findeTruhenschluessel()
|
||||
elif item.id == self.world.ITEM_LEITER:
|
||||
if(self.world.aktuellerRaum.id == self.world.RAUM_ESSZIMMER):
|
||||
logging.debug(f'aktuellerRaum ist {self.world.aktuellerRaum.id}')
|
||||
self.rauf()
|
||||
else:
|
||||
self.setFehler('Eine Leiter sehe ich hier nicht.')
|
||||
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')
|
||||
|
||||
|
||||
|
||||
def baueBruecke(self):
|
||||
bach = self.world.sucheRaum(self.world.RAUM_BACH)
|
||||
bach.ausgaenge[self.world.SUED] = self.world.RAUM_TEICH
|
||||
|
||||
def verliere(self,parsedCommand):
|
||||
item = self.world.findItemImInventar(parsedCommand.gegenstand);
|
||||
@@ -92,7 +104,7 @@ class ActionModul:
|
||||
|
||||
if self.world.aktuellerRaum.id == self.world.RAUM_BACH:
|
||||
if item.id == self.world.ITEM_PLANKE:
|
||||
self.world.aktuellerRaum.ausgaenge[self.world.SUED] = self.world.RAUM_TEICH
|
||||
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
|
||||
@@ -112,7 +124,7 @@ class ActionModul:
|
||||
|
||||
if item != None:
|
||||
logging.debug('stelle() item.id=' + str(item.id))
|
||||
if item.id == self.world.ITEM_GLAS:
|
||||
if item.id == self.world.ITEM_KRUG:
|
||||
self.world.aktuellerRaum.ausgaenge[self.world.NORD] = '5'
|
||||
self.verliere(parsedCommand)
|
||||
self.world.printText('1')
|
||||
@@ -126,27 +138,33 @@ class ActionModul:
|
||||
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')
|
||||
self.setFehler('Auf dem Boden findest du einen kleinen Schlüssel.')
|
||||
schluessel = self.world.findRaumItemById(self.world.ITEM_KLEINER_SCHLUESSEL)
|
||||
schluessel.sichtbar = True
|
||||
|
||||
|
||||
def findeTruhenschluessel(self):
|
||||
schluessel = self.world.findItemById(self.world.ITEM_KLEINER_SCHLUESSEL)
|
||||
|
||||
logging.debug(f'Schlüssel ist sichtbar {schluessel.sichtbar}')
|
||||
if not schluessel.sichtbar:
|
||||
logging.debug('mache Schlüssel sichtbar')
|
||||
self.setFehler('In der Jackentasche findest du einen kleinen Schlüssel.')
|
||||
schluessel.sichtbar = True
|
||||
self.insInventar(schluessel)
|
||||
|
||||
|
||||
def untersuche(self,parsedCommand):
|
||||
logging.debug(f'untersuche() suche nach Gegenstand: {parsedCommand.gegenstand}')
|
||||
if parsedCommand.gegenstand == None:
|
||||
self.untersucheAktuellenRaum
|
||||
self.untersucheAktuellenRaum()
|
||||
return
|
||||
|
||||
item = self.world.findItemImInventarOderAktuellerRaum(parsedCommand.gegenstand)
|
||||
|
||||
if item != None:
|
||||
if item.id == self.world.ITEM_PFLANZE:
|
||||
glas = self.world.findRaumItemById(self.world.ITEM_GLAS)
|
||||
logging.debug(f'mache Gegenstand {glas.name} sichtbar')
|
||||
glas.sichtbar = True
|
||||
krug = self.world.findRaumItemById(self.world.ITEM_KRUG)
|
||||
logging.debug(f'mache Gegenstand {krug.name} sichtbar')
|
||||
krug.sichtbar = True
|
||||
self.setFehler('Die Pflanze ist in einen Krug gepflanzt.')
|
||||
elif item.id == self.world.ITEM_BETT:
|
||||
# Falltür sichtbar machen
|
||||
self.world.aktuellerRaum.ausgaenge[self.world.RUNTER] = self.world.RAUM_KELLER
|
||||
@@ -160,6 +178,11 @@ class ActionModul:
|
||||
self.setFehler('Im Teich schwimmt ein kleiner Fish')
|
||||
fisch = self.world.findItemInAktuellerRaum(self.world.ITEM_FISCH)
|
||||
fisch.sichtbar = True
|
||||
elif item.id == self.world.ITEM_JACKE:
|
||||
self.findeTruhenschluessel()
|
||||
|
||||
|
||||
|
||||
else:
|
||||
logging.debug('Kein Item gefunden, suche nach Raum')
|
||||
self.untersucheAktuellenRaum(parsedCommand)
|
||||
@@ -188,6 +211,10 @@ class ActionModul:
|
||||
else:
|
||||
self.setFehler('Eine Leiter sehe ich hier nicht.')
|
||||
|
||||
def insInventar(self, item):
|
||||
logging.debug(f'neu ins Inventar: {item.name}')
|
||||
self.world.inventar[item.id] = item
|
||||
|
||||
|
||||
def nimm(self,parsedCommand):
|
||||
item = self.world.findItemInAktuellerRaum(parsedCommand.gegenstand)
|
||||
@@ -203,8 +230,11 @@ class ActionModul:
|
||||
text = self.world.msg[item.pickupmsg]
|
||||
self.setFehler(text)
|
||||
else:
|
||||
logging.debug(f'Item {item.name} aus aktuellem Raum entfernen')
|
||||
del self.world.aktuellerRaum.items[item.id]
|
||||
self.world.inventar[item.id] = item
|
||||
logging.debug(f'Item {item.name} ins Inventar')
|
||||
|
||||
self.insInventar(item)
|
||||
|
||||
logging.debug(f'nimm: RaumId== {self.world.aktuellerRaum.id}')
|
||||
if self.world.aktuellerRaum.id == self.world.RAUM_BACH:
|
||||
|
Reference in New Issue
Block a user