Forum moved to if-forum.org
Autor Nachricht
<  I6/Deform 20100131: nimm etwas ab => programming error
Agrajag
BeitragVerfasst am: Di, 16 März 2010 - 17:05  Antworten mit Zitat
Wasserträger
Wasserträger


Anmeldungsdatum: 05.10.2004
Beiträge: 75
Wohnort: Chiemgau

Hallo zusammen,

mir ist während des Spielbauens aufgefallen, daß ich einen Fehler erzeugen kann, der scheinbar auch andere Projekte betrifft.

Frotz hat folgendes geschrieben:

> nimm dingsbums ab
Aber das Dingsbums ist gar nicht
[** Programming error: tried to test “has” or “hasnt” of nichts **]
in nichts.


So oder ähnlich kommt die Meldung bei (zumindest Nichtkleidungs-) Objekten, auf die ich "nimm ab" anwende.

Spaßhalber habe ich dies auch mal mit dem Deformuseum geprüft. Ergebnis: Die dem ZIP-File beiliegende, damals kompilierte z5-Datei weist den Fehler nicht auf. Baue ich mit Deform vom 31.01.2010, tritt auch dort das o. g. Verhalten auf.

Kann das jemand nachstellen? Ich hab kurz auf die RemoveSub und die Remove-Anweisungen in Parser.h geschaut, aber eher wie ein Schwein in die Steckdose, und mir ist nichts ins Auge gesprungen. Vielleicht mache ich ja auch nur was falsch.

Danke schonmal!
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
ChristianB
BeitragVerfasst am: Di, 16 März 2010 - 19:17  Antworten mit Zitat
Experte
Experte


Anmeldungsdatum: 05.05.2004
Beiträge: 633
Wohnort: Hamburg

Das müsste schon seit einer ganzen Weile so sein. NIMM <OBJEKT> AB triggert ##Remove, und das möchte gerne noun und second haben. Second ist in deinem Beispiel deshalb nothing.

NIMM <OBJEKT> AB sollte vielleicht besser ##Take auslösen. Damit gibt's jedenfalls keine Probleme mit nur einem Objekt. Wenn Du nach dem Einbinden von "GermanG.h" die Definitionen für 'nimm' (und damit für all dessen Synonyme) ersetzt, sollte alles funktionieren.

Code:
Extend 'nimm' replace
    * dir multi                                             -> Take
    * multi 'auf'/'mit'                                     -> Take
    * worn 'ab'                                             -> Disrobe
    !!! gestrichen !!! * noun 'ab'                          -> Remove
    * noun 'ab'                                             -> Take
    * multiinside 'aus' dative noun prep_heraus             -> Remove
    * multiinside 'in' dative noun prep_heraus              -> Remove
    * multiinside 'von' dative noun prep_herunter           -> Remove
    * multiinside noun_heraus                               -> Remove
    * multiinside noun_darunter                             -> Remove
    * 'platz' 'auf' dative noun                             -> Enter
    * 'platz' 'in' dative noun                              -> Enter
    * 'auf' dative noun 'platz'                             -> Enter
    * 'in' dative noun 'platz'                              -> Enter
    ;


>nimm ab
Du findest dich nicht zu dick.

Das funktioniert dann aber noch nicht ;-)

Grüße,
Christian
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Martin
BeitragVerfasst am: Di, 16 März 2010 - 20:23  Antworten mit Zitat
Experte
Experte


Anmeldungsdatum: 25.08.2002
Beiträge: 677
Wohnort: München

Christian hat folgendes geschrieben:
NIMM <OBJEKT> AB sollte vielleicht besser ##Take auslösen.

Ja, das muss Take heißen. Der Fehler ist schon seit Ende 2005 drin. Vorher stand nur die worn-Zeile für "nimm ab" dort. Und [noun=Routine]- und [attr]-Tokens können nur sinnvoll verwendet werden, wenn man ein [noun] oder [held] für dasselbe Satzmuster hinterherschickt. In diesem Fall habe ich es aber verschlimmbessert.

(Ich komme öfters mit den Inform-Actions durcheinander: Was bedeutet PutOn? Was Remove? Außerdem, was ist mit dem Fall "Nimm Barbara die Wasserpistole ab"?)

Eine neue Version mit just diesem Fix ist hochgeladen. Vielen Dank!
_________________
Every silver lining has a cloud.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
ChristianB
BeitragVerfasst am: Mi, 17 März 2010 - 3:27  Antworten mit Zitat
Experte
Experte


Anmeldungsdatum: 05.05.2004
Beiträge: 633
Wohnort: Hamburg

Martin hat folgendes geschrieben:
Außerdem, was ist mit dem Fall "Nimm Barbara die Wasserpistole ab"?

Das riecht nach Remove andersrum, oder?

Code:
    * creature noun 'ab'          -> Remove reverse
    * noun noun 'ab'              -> Remove reverse


Danke fürs Update!
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Agrajag
BeitragVerfasst am: Do, 18 März 2010 - 17:40  Antworten mit Zitat
Wasserträger
Wasserträger


Anmeldungsdatum: 05.10.2004
Beiträge: 75
Wohnort: Chiemgau

Gerade ausprobiert, funktioniert nun einwandfrei. Danke für die Anpassung!
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Beiträge der letzten Zeit anzeigen:   
Alle Zeiten sind GMT + 1 Stunde (MEZ)

Nächstes Thema anzeigen
Vorheriges Thema anzeigen
Seite 1 von 1
if-de :: Forum Foren-Übersicht  >  Inform & Glulx

Neues Thema eröffnen   Neue Antwort erstellen


 
Gehe zu:  
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.



Kontakt: Administrator

Powered by phpBB and NoseBleed v1.05