Autor |
Nachricht |
< Liste der Objekte im Raum beeinflussen? |
|
Verfasst am:
Di, 12 Jun 2012 - 16:37
|
|
|
Wasserträger
Anmeldungsdatum: 02.12.2011
Beiträge: 40
Wohnort: Heidelberg
|
|
Hallo!
Während ich hier an meinem ersten kleinen Textadventure arbeite, fällt mir auf, dass Inform, obwohl ich Objekte in der Beschreibung eines Raumes (in text substitiutions) erwähne, sie trotzdem in der "Du siehst hier..."-Liste von Objekten erwähnt.
Code: | "Außer dem [Bed] ist ein [Table] das einzige Mobiliar." | führt trotzdem zu Zitat: | Außer dem Bett ist ein Tisch das einzige Mobiliar.
Du siehst hier einen Tisch. |
Gibt es eine einfache Methode, das zu ändern?
Moritz. _________________ In a world without walls and fences, who needs Windows and Gates? |
|
|
|
|
|
Verfasst am:
Di, 12 Jun 2012 - 17:49
|
|
|
Wasserträger
Anmeldungsdatum: 07.04.2012
Beiträge: 52
Wohnort: München
|
|
Am naheliegendsten in dem konkreten Fall scheint es mir, die Objekte mit dem Scenery-Attribut zu versehen. "The Table is a scenery thing/is scenery" - dann tauchen sie in der Liste nicht auf, weil Inform davon ausgeht, dass die Objekte im Text erwähnt werden. |
|
|
|
|
|
Verfasst am:
Mi, 13 Jun 2012 - 14:58
|
|
|
Wasserträger
Anmeldungsdatum: 02.12.2011
Beiträge: 40
Wohnort: Heidelberg
|
|
Das funktioniert bei dem Tisch, aber nicht bei beweglichen Objekten... Scenery ist ja automatisch fixed in place. Der "undescribed" Wert klingt zunächst nach einer Lösung, aber dann wird das Objekt nicht erwähnt, wenn es in einem anderen Raum irgendwo liegt... Gibt es wirklich keinen Weg, Inform erkennen zu lassen, was es schon erwähnt hat? _________________ In a world without walls and fences, who needs Windows and Gates? |
|
|
|
|
|
Verfasst am:
Mi, 13 Jun 2012 - 16:43
|
|
|
Experte
Anmeldungsdatum: 05.05.2004
Beiträge: 633
Wohnort: Hamburg
|
|
Standardmäßig sind die Möglichkeiten zur flexiblen Gestaltung der Raumberschreibungen eher eingeschränkt.
Die Eigenschaft "undescribed" sollte jedenfalls nicht benutzt werden, da sie sehr fehleranfällig ist. Diue Eigenschaft, die du suchst, ist "mentioned". Aber in die diversen Regeln für die Raumbeschreibung einzugreifen, ist recht umständlich.
Zum Glück gibt's Erweiterungen, beispielsweise Emily Shorts "Room Description Control."
Vielleicht kommst du damit weiter. _________________ Worichtung willst du ingehen? |
|
|
|
|
|
Verfasst am:
Mi, 13 Jun 2012 - 17:24
|
|
|
Experte
Anmeldungsdatum: 25.08.2002
Beiträge: 677
Wohnort: München
|
|
Es gibt die Erweiterung Mentioned in Room Description von Rob Newcomb, die nach einem ersten Test auch ganz gut zusammen mit GerX funktioniert:
"Erwähnenswert" by Niet van den Hocker
Include German by Team Gerx.
Include Mentioned In Room Description by Ron Newcomb.
A thing is usually privately-named. A room is usually privately-named.
Chamber is a room. "In dieser kleinen, einfachen Stube steht nur ein Tisch[if the stool is in the Chamber] mit [einem stool][end if].". The printed name is "Stube".
[Chamber is a room. "In dieser kleinen, einfachen Stube steht nur ein Tisch[if the stool is in the Chamber and the stool is not handled] mit [einem stool][end if].". The printed name is "Stube".]
The table is a supporter in the Chamber. The printed name is "Tisch[m]". Understand "tisch" as table. The table is scenery.
The stool is an enterable supporter in the Chamber. The printed name is "Hocker[m]". Understand "hocker" or "stuhl" as stool. The stool is not fixed in place.
Instead of attacking the stool:
say "Ups, Du hast eines der Beine fast abgebrochen!";
now the printed name of the stool is "wackelig[^] Hocker".
test me with "nimm alles / l / stelle hocker hin / l / zerbrich hocker / l ".
Hier wird der Hocker immer mit der Raumbeschreibung zusammengeführt. Die ausgeklammerte Variante erwähnt den Hocker nur dann in der Raumbeschreibung, wenn er noch nicht mitgenommen wurde. Danach kommt er in die Liste der Dinge im Raum.
Allerdings ist es schon ungewöhnlich, Dinge, die man mitnehmen kann, in die Raumbeschreibung zu integrieren. Man sollte diesen Kniff gewiss sparsam anwenden. _________________ Every silver lining has a cloud. |
|
|
|
|
|
Verfasst am:
Do, 14 Jun 2012 - 7:01
|
|
|
Experte
Anmeldungsdatum: 25.03.2010
Beiträge: 660
|
|
Wieso nicht sowas wie (ungetestet):
Code: |
The Dummy Room is in the room.
The description is "bla bla bla [if the blob is scenery]blubb blubb[/end if].".
The blob is a thing in the Dummy Room.
It is scenery.
Before taking the blob for the first time:
now the blob is not scenery;
continue the action.
|
|
|
|
|
|
|
Verfasst am:
Do, 14 Jun 2012 - 17:34
|
|
|
Wasserträger
Anmeldungsdatum: 02.12.2011
Beiträge: 40
Wohnort: Heidelberg
|
|
Danke Martin, die Erweiterung tut's! _________________ In a world without walls and fences, who needs Windows and Gates? |
|
|
|
|
|