Synonyme hinzugefuegt (Arathorn).
Ausserdem Funktionstypen.
Change-Id: I008ec70e7e53ec26f9ffa1cba09330fcec2ebc75
diff --git a/d/seher/haeuser/special/seherfaqmobil.c b/d/seher/haeuser/special/seherfaqmobil.c
index 250db4b..b7513a8 100644
--- a/d/seher/haeuser/special/seherfaqmobil.c
+++ b/d/seher/haeuser/special/seherfaqmobil.c
@@ -1,7 +1,7 @@
// tragbare Seher-FAQ, gibt es im Seherladen zu kaufen bzw. automatisch zur Seherwerdung
// Rikus@mg.mud.de
-inherit "std/thing";
+inherit "/std/thing";
#include <properties.h>
#include <wizlevels.h>
@@ -11,51 +11,92 @@
static string *seite;
-mapping synonym = ([]);
+mapping synonym = ([
+ "neuigkeiten":"0",
+ "transport":"1",
+ "transporter":"1",
+ "transportmoeglichkeit":"1",
+ "transportmoeglichkeiten":"1",
+ "portale":"1",
+ "seherportale":"1",
+ "sehertore":"1",
+ "quest":"2",
+ "quests":"2",
+ "seherquest":"2",
+ "seherquests":"2",
+ "fluchtrichtung":"3",
+ "level":"4",
+ "seherlevel":"4",
+ "kommunikation":"5",
+ "kugel":"6",
+ "magische kugel":"6",
+ "seherkugel":"6",
+ "kristallkugel":"6",
+ "seherladen":"7",
+ "designer-seher":"8",
+ "designerseher":"8",
+ "fehlermeldung":"9",
+ "paralleldimension":"10",
+ "portal":"11",
+ "paraportal":"11",
+ "para-portal":"11",
+ "finger":"12",
+ "finger-befehl":"12",
+ "fingerbefehl":"12",
+ "echo":"13",
+ "remote":"13",
+ "r-emote":"13",
+ "haus":"14",
+ "haeuser":"14",
+ "seherhaus":"14",
+ "seherhaeuser":"14",
+ "nachwort":"15",
+ "danksagung":"16",
+ "danksagungen":"16",
+]);
-create()
-{
-// if (!clonep(this_object())) return;
+protected void create() {
+ if ( !clonep() ) {
+ set_next_reset(-1);
+ return;
+ }
::create();
+
SetProp(P_SHORT,"Die SeherFAQ");
SetProp(P_NAME,"SeherFAQ");
SetProp(P_GENDER,FEMALE);
- SetProp(P_LONG,"Dies ist die SeherFAQ. Wenn Du weitere Fragen oder "+
- "Anregungen zu dieser FAQ\nhast, sei so nett und schicke Sting "+
- "einen kurzen Brief. Zum Inhalt der FAQ\nkommst Du mit "+
- ">lies inhalt<\n");
+ SetProp(P_LONG, break_string(
+ "Dies ist die SeherFAQ. Wenn Du weitere Fragen oder Anregungen zu "
+ "dieser FAQ hast, sei so nett und schicke dem Regionsmagier Seher oder "
+ "einem Erzmagier einen kurzen Brief. Zum Inhalt der FAQ kommst Du mit "
+ "dem Befehl 'lies inhalt'",78));
SetProp(P_WEIGHT,100);
SetProp(P_VALUE,1000);
AddId(({"faq","seherfaq"}));
AddCmd("lies","lesen");
- restore_object(FAQ("faq"));
seite = get_dir(FAQ("*"))-({".","..","faq.o"});
}
-init()
-{
- object o;
- ::init();
- if ((o=environment()) && query_once_interactive(o) && !IS_SEER(o))
- call_out("wech",0);
+public varargs void init(object oldenv) {
+ ::init(oldenv);
+ object o = environment();
+ if ( objectp(o) && query_once_interactive(o) && !IS_SEER(o) )
+ call_out("wech",0);
}
-wech()
-{
- write("Die Seher-FAQ lacht Dich aus und loest sich in Wohlgefallen auf.\n");
- remove();
+void wech() {
+ write("Die Seher-FAQ lacht Dich aus und loest sich in Wohlgefallen auf.\n");
+ remove();
}
-int lesen(string str)
-{
+int lesen(string str) {
if (!str || str == "") {
notify_fail("Was willst Du denn lesen?\n");
return 0;
}
- if (environment()!=this_player())
- {
- notify_fail("Du musst die FAQ schon erst nehmen!\n");
- return 0;
+ if (environment()!=this_player()) {
+ notify_fail("Du musst die FAQ schon erst nehmen!\n");
+ return 0;
}
str = lower_case(this_player()->_unparsed_args());
if (member(seite,str)<0) {
@@ -70,10 +111,10 @@
return 1;
}
-string _query_extralook()
-{
- object o;
- if ((o=environment()) && (o->QueryProp(P_GENDER)==FEMALE))
- return "Mit ihrer Seher-FAQ outet sie sich als Wurstseherin.\n";
- return "Mit seiner Seher-FAQ outet er sich als Wurstseher.\n";
+string _query_extralook() {
+ object owner = environment();
+ return sprintf("Mit %s Seher-FAQ outet %s sich als Wurstseher%s.\n",
+ owner->QueryPossPronoun(this_object(), WEM, SINGULAR),
+ owner->QueryPronoun(WER),
+ owner->QueryProp(P_GENDER)==FEMALE ? "in" : "" );
}