IF-Forum

» IF-Forum - Autorencafé - Schreiben! - "deine Kleidung" im Inventar
AntwortenNeues ThemaNeue Umfrage

"deine Kleidung" im Inventar

Geschrieben um 11:23 am 30.05.2011 | Zitat | Editieren | Löschen
Lukas
Mitglied
Bachelor Gumby
Beiträge: 42

Folgendes Problem: die Kleidungsstücke des Spielers sollen als "deine Kleidung" im Inventar erscheinen. Jetzt wird aber im Inventar davor immer ein unbestimmter Artikel gesetzt. Wie kann ich das verhindern? Meine erste Lösung war:

setShort("$deine Kleidung,$Kleidung");

... aber gibt es auch etwas Eleganteres? (Notfalls verweist mich einfach auf die Stelle im Handbuch, falls ich da etwas übersehen habe.)

Geschrieben um 22:56 am 05.06.2011 | Zitat | Editieren | Löschen
Oliver Berse
Mitglied
Bachelor Gumby
Beiträge: 47

Wenn der Name nur im Inventar mit Pronomen erscheinen soll würde ich ihn auch nur hier anpassen:


class spieler:stdcreature {

   moveto(raum);

   

   int onAction(int action) {

      

      int result;

      

      switch(action) {   

         case(A_INVENTORY);

            kleidung.setShort("$deine Kleidung");

            result = super.onAction(action);

            kleidung.setShort("-Kleidung, $deine Kleidung");

            return(result);

            

         default;

            return(super.onAction(action));

      }

   }

}

class kleidung:stditem {

   setShort("-Kleidung, $deine Kleidung");

   with(wearable, worn, takeable);

   moveto(spieler);

}

Das gibt dann:

i

Du trägst:

deine Kleidung (angezogen)

x deine kleidung

Daran ist nichts Besonderes zu entdecken.

ziehe die kleidung aus

Du hast die Kleidung jetzt ausgezogen.

lege kleidung ab

Du legst die Kleidung ab.

ziehe deine kleidung an

(Du nimmst erst die Kleidung.)

Du hast die Kleidung jetzt angezogen.

l

Raum

Weiterhin siehst du hier eine Kleidung.

Um die Ausgabe auch an anderen Stellen zu ändern, sollte eine neue Klasse von der entsprechenden Standardklasse abgeleitet und der Name bei der gewünschten Aktion angepasst werden.

Ausprobiert habe ich es nicht, es sollte aber auch möglich sein, dem Namen in der beforeAction-Methode für bestimmte Aktionen das Pronomen zu geben und ihn nach allen Aktionen in einem Daemon wieder zu ändern.

Wenn das Pronomen aber wirklich überall erscheinen soll (und das bei den verschiedenen Listen keine Probleme macht) ist Deine Lösung aber wohl am einfachsten.

AntwortenNeues ThemaNeue Umfrage
Powered by Spam Board SVN © 2007 - 2021
Impressum / Datenschutz