Autor |
Nachricht |
< Fehler bei geschlossenen Behältern? |
|
Verfasst am:
Do, 22 Jul 2010 - 22:44
|
|
|
Wasserträger

Anmeldungsdatum: 21.12.2009
Beiträge: 45
Wohnort: Kiel
|
|
Kuckuck, ich bin's noch mal... Und ich erwarte keine kostenlose Nachhilfe, vor allem, weil etwas Ähnliches unter [url]http://forum.ifzentrale.de/viewtopic.php?t=814 [/url]schon mal diskutiert wurde. Nur geholfen haben mir die vielen Tipps von Christian dort nicht.
Das DM4 sagt (wenn ich's richtig verstehe), dass der Inhalt von Containern nur sichtbar ist, wenn diese offen oder transparent sind. Trotzdem bekomme ich beim Untersuchen von Containern den Inhalt aufgelistet.
Das ganze sieht so aus:
Code: |
Object -> herd "steinern@00 Herd"
with description [; print "Der Herd ist aus dicken glatt gehauenen Feldsteinen gemauert und hat einen großen Schornstein in der
Nordostecke der Küche. An der Vorderseite ist eine mit Luftschlitzen versehene Eisenklappe angebracht, hinter der das Herdfeuer
angemacht wird. Obenauf liegt eine schwere eiserne Kochplatte, auf der mindestens vier große Töpfe Platz haben.";],
initial "Ein mächtiger gemauerter Herd steht an der Nordwand.",
name 'herd' 'kochplatte',
before [; Open:
<<open klappe>>;
],
has supporter male enterable static;
Object ->-> klappe "Herdklappe"
with name 'herd' 'klappe' 'herdklappe',
describe [;
print "Vorne am Herd ist eine schwere eiserne Klappe angebracht. Vier Schlitze darin sorgen dafür, dass das Herdfeuer nicht
erstickt.";
if (self has open) print "Die Herdklappe ist geöffnet.";
else rtrue;
],
! invent [;if (self hasnt open) rtrue;],
! when_closed [;print (string) self.describe;],
has concealed container openable female;
Deko2 ->->-> asche "Asche"
with name 'asche',
article "etwas",
has female;
|
Immer wenn ich die Herdklappe anschaue, wird die Asche genannt. (In der momentanen Version ausschließlich, aber das ist erst mal egal.)
Die im o.g. Thread vorgeschlagene Lösung mit react_before wirkt für mich ein wenig von hinten durch die Brust ins Auge; daher habe ich sie noch nicht ausprobiert. Mit der invent-, der description- und der describe-Property habe ich auch schon rumgespielt; nützt alles nichts: die Asche bleibt sichtbar.
Liegt hier ein Fehler in der Lib vor?
Schöne Grüße,
Christof |
|
|
|
 |
|
Verfasst am:
Fr, 23 Jul 2010 - 8:31
|
|
|
Experte

Anmeldungsdatum: 25.08.2002
Beiträge: 677
Wohnort: München
|
|
Also ich bekomme mit Deinem Code:
Frotz hat folgendes geschrieben: | > u klappe
Du kannst nicht hineinschauen, die Herdklappe ist geschlossen.
> öffne sie
Du öffnest die Herdklappe und findest etwas Asche darin.
> u klappe
In der Herdklappe siehst du etwas Asche. |
Und das klingt doch vernünftig (außer dass die Asche wohl im Herd und nicht in der Klappe ist - Du kannst Dir hier gewiss eine Verschahtelungstiefe sparen). Ich habe die Klasse Deko2 einfach als static implementiert.
Und die Leerzeilen sehen bei mir wieder sehr durcheinander aus. Da Du gerne in der Lib Sachen änderst, kompiliere Dein Spiel doch mal mit einer frischen, unangetasteten Lib. _________________ Every silver lining has a cloud. |
|
|
|
 |
|
Verfasst am:
Fr, 23 Jul 2010 - 21:58
|
|
|
Wasserträger

Anmeldungsdatum: 21.12.2009
Beiträge: 45
Wohnort: Kiel
|
|
Hallo Martin!
Danke für den Tipp, jetzt läuft es erst mal wie geplant. Tatsächlich sah meine ExamineSub anders aus als die, die ich vor zwei Tagen von deiner Webseite geladen habe. Nein, ich habe keine Ahnung, woher die Änderungen kommen, aber der Kreis der Verdächtigen ist ziemlich klein... (Ich schreibe immer nur in längeren Ferien an meinem Adventure, da sollte ich solche Änderungen wohl protokollieren.)
Zitat: | Und das klingt doch vernünftig (außer dass die Asche wohl im Herd und nicht in der Klappe ist - Du kannst Dir hier gewiss eine Verschahtelungstiefe sparen). Ich habe die Klasse Deko2 einfach als static implementiert. |
Jepp, das glaube ich auch. (Genau so wenig muss die Stange über dem Herd nicht dessen Tochterobjekt sein.) Problem bei Herd/ Herdklappe ist, dass ein Gegenstand nur Supporter oder Container sein kann. Wie nennt man eigentlich den Innenraum eines frühzeitlichen Herds, in dem das Feuer gebrannt hat? Brennkammer wohl kaum.
Vielleicht fällt mir da noch was Besseres ein, sonst bleibt die Herdklappe zu und der Schatz wird im Klohäuschchen versteckt.
Schöne Grüße,
Christof |
|
|
|
 |
|
|
Alle Zeiten sind GMT + 1 Stunde (MEZ) |
|
Du kannst keine Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum nicht antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen.
|
|