Aenderungen fuer wieder funktionierendes strict_types
- Deklarative Casts hinzugefuegt
- Typen gefixt
Change-Id: I44c6082d907efb241a35da248774809054f8c5ab
diff --git a/obj/tools/MGtool.c b/obj/tools/MGtool.c
index 4656d68..5619ecf 100644
--- a/obj/tools/MGtool.c
+++ b/obj/tools/MGtool.c
@@ -399,9 +399,9 @@
static void dprop(string key, mixed data, object obj)
{
if(pipe_out&&pipe_of)
- write_file(pipe_of,break_string_hard(mixed_to_string(obj->QueryProp(key),MAX_RECURSION),78,ALEFT(key+" ",18,".")+" = "));
+ write_file(pipe_of,break_string_hard(mixed_to_string(({mixed})obj->QueryProp(key),MAX_RECURSION),78,ALEFT(key+" ",18,".")+" = "));
else
- W(break_string_hard(mixed_to_string(obj->QueryProp(key),MAX_RECURSION),78,ALEFT(key+" ",18,".")+" = "));
+ W(break_string_hard(mixed_to_string(({mixed})obj->QueryProp(key),MAX_RECURSION),78,ALEFT(key+" ",18,".")+" = "));
}
static string propflags(string key, object ob)
diff --git a/obj/tools/MGtool/toolcmd.c b/obj/tools/MGtool/toolcmd.c
index 59bfbcb..ad6b3aa 100644
--- a/obj/tools/MGtool/toolcmd.c
+++ b/obj/tools/MGtool/toolcmd.c
@@ -60,7 +60,7 @@
{
obj=find_object(LPC_FILE);
ru1=rusage();
- error=catch(res=obj->eval(callobj, cloner, ENV(cloner)));
+ error=catch(res=({mixed})obj->eval(callobj, cloner, ENV(cloner)));
ru2=rusage();
if(error)
W("Error: "+error[1..]);
@@ -183,7 +183,7 @@
TK("Xcd: str: "+(str?str:"(NULL)"));
if(!str)
{
- if(!(path=cloner->QueryProp("start_home")))
+ if(!(path=({string})cloner->QueryProp("start_home")))
path="/";
}
else if((dest=XFindObj(str,1)))
@@ -233,7 +233,7 @@
m_add(variable, "clone", obj);
if(!MoveObj(obj, ENV(cloner), TRUE))
WDLN("Cannot move object into this room");
- else if(!obj->QueryNoGet())
+ else if(!({mixed})obj->QueryNoGet())
{
if(!MoveObj(obj, cloner, TRUE))
WDLN("Cannot move object into your inventory");
@@ -265,7 +265,7 @@
variable["clone"] = obj;
if(!MoveObj(obj, ENV(cloner), TRUE))
WDLN("Cannot move object into this room");
- else if(!obj->QueryNoGet())
+ else if(!({mixed})obj->QueryNoGet())
{
if(!MoveObj(obj, cloner, TRUE))
WDLN("Cannot move object into your inventory");
@@ -487,7 +487,7 @@
else
{
ru1=rusage();
- error=catch(res=obj->eval(cloner, ENV(cloner)));
+ error=catch(res=({mixed})obj->eval(cloner, ENV(cloner)));
ru2=rusage();
if(error)
W("Error: "+error[1..]);
@@ -928,7 +928,7 @@
return FALSE;
PIPE_DELETE(pipe_of);
if(!(pipe_out&&pipe_of))
- WLN(who->name(WESSEN)+" Inventory:"+(short?" (short)":""));
+ WLN(({string})who->name(WESSEN)+" Inventory:"+(short?" (short)":""));
if(!short)
if(pipe_out&&pipe_of)
FORALL(item, who) PrintShort(ARIGHT(++i+". ", 4, " "), item, pipe_of);
@@ -952,7 +952,7 @@
if(!(daemon=load_object(LAG_O_DAEMON)))
lag=({-1.0,-1.0,-1.0});
else
- lag=daemon->read_lag_data();
+ lag=({float*})daemon->read_lag_data();
lags="Letzte 60 min: ";
if(lag[0]>=0.0)
{
@@ -998,7 +998,7 @@
cloner->AddIntLight(addlight);
}
WDLN("Current light levels: "+TOOL_NAME+"="+xlight+", room="+
- ENV(cloner)->QueryIntLight());
+ ({int})ENV(cloner)->QueryIntLight());
return TRUE;
}
@@ -1102,7 +1102,7 @@
else
{
ru1=rusage();
- error=catch(res=obj->eval(cloner, ENV(cloner)));
+ error=catch(res=({mixed})obj->eval(cloner, ENV(cloner)));
ru2=rusage();
if(error)
W("Error: "+error[1..]);
@@ -1266,12 +1266,12 @@
opt="";
else
opt=implode(strs[0..s-3], " ");
- if(!(dir="/"+MASTER->valid_read(strs[s-2], geteuid(),
+ if(!(dir="/"+({int})MASTER->valid_read(strs[s-2], geteuid(),
"get_dir", ME))) {
WDLN("No permission to open directory for reading");
return TRUE;
}
- if(!(file="/"+MASTER->valid_write(strs[s-1], geteuid(),
+ if(!(file="/"+({int})MASTER->valid_write(strs[s-1], geteuid(),
"write_file", ME))) {
WDLN("No permission to open script file for writing");
return TRUE;
@@ -1380,7 +1380,7 @@
}
else if(obj=XFindObj(str))
{
- if(xpr=obj->__query_xprof_data__())
+ if(xpr=({mixed})obj->__query_xprof_data__())
{
funcs=m_indices(xpr);
data=m_values(xpr);
diff --git a/obj/tools/fehlerteufel.c b/obj/tools/fehlerteufel.c
index 7b9c8e6..664eb07 100644
--- a/obj/tools/fehlerteufel.c
+++ b/obj/tools/fehlerteufel.c
@@ -58,7 +58,7 @@
{
if (!issue) return 0;
- string txt=ERRORD->format_error(issue, 0);
+ string txt=({string})ERRORD->format_error(issue, 0);
if (!stringp(txt) || !sizeof(txt))
return 0;
@@ -196,7 +196,7 @@
{
if (!(m & modus))
continue;
- < <int|string>* >* list = ERRORD->QueryIssueListByLoadname(loadname,m);
+ < <int|string>* >* list = ({< <int|string>* >*})ERRORD->QueryIssueListByLoadname(loadname,m);
if (pointerp(list))
{
foreach(<int|string>* row : list)
@@ -892,9 +892,10 @@
return;
}
SetProp(P_EXTRA_LOOK,break_string(
- "Auf "+environment()->Name(WESSEN)+" Schulter sitzt ein kleiner "
+ "Auf "+({string})environment()->Name(WESSEN)
+ +" Schulter sitzt ein kleiner "
"Fehlerteufel, der "
- +environment()->QueryPronoun(WEM)
+ +({string})environment()->QueryPronoun(WEM)
+" immer wieder etwas ins Ohr fluestert.",78));
call_out("reset",1);
@@ -1034,7 +1035,7 @@
private struct fullissue_s|struct fullissue_s* get_issues(string arg)
{
- arg=PL->_unparsed_args();
+ arg=({string})PL->_unparsed_args();
struct fullissue_s|struct fullissue_s* issues;
// Erstmal schauen, ob arg eine ID ist.
@@ -1046,7 +1047,7 @@
// wird im aktuellen Verzeichnis gesucht.
if(sizeof(arg) && arg[0] != '/')
{
- arg=PL->QueryProp(P_CURRENTDIR)+"/"+arg;
+ arg=({string})PL->QueryProp(P_CURRENTDIR)+"/"+arg;
}
issues=({});
foreach(int m: ALL_ERR_TYPES)
diff --git a/obj/tools/lupe.c b/obj/tools/lupe.c
index 94da478..b751d58 100644
--- a/obj/tools/lupe.c
+++ b/obj/tools/lupe.c
@@ -183,7 +183,7 @@
{
case "erzaehl": return tell(str);
}
- str=PL->_unparsed_args();
+ str=({string})PL->_unparsed_args();
for (i=0;i<maxverb;i++)
if (commands[i]==verb[0..sizeof(commands[i])-1])
if (ret=evalcmd(str))
@@ -199,14 +199,14 @@
int ret;
if (!IS_ARCH(this_interactive())) return 0;
- if (!(str=this_interactive()->_unparsed_args())) return 0;
+ if (!(str=({string})this_interactive()->_unparsed_args())) return 0;
if (sizeof(tmp=old_explode(str," "))<2) return 0;
if (!(who=find_player(tmp[0]))) return 0;
if (!(sn=query_snoop(who))) return 0;
if (query_wiz_grp(this_interactive())<=query_wiz_grp(sn) ||
query_wiz_grp(this_interactive())<=query_wiz_grp(who)) return 0;
snoop(sn,0);
- ret=this_interactive()->_erzaehle(str);
+ ret=({int})this_interactive()->_erzaehle(str);
snoop(sn,who);
return ret;
}
@@ -433,7 +433,7 @@
mixed pl(string arg)
{
string who,rest;
- object p;
+ string|object p;
who=getarg(arg);
rest=getrest(arg);
if (err) return 0;
@@ -488,7 +488,7 @@
if (!err)
{
push(ob);
- ob->move(this_player(),M_NOCHECK);
+ ({int})ob->move(this_player(),M_NOCHECK);
write("Created "+desc(ob)+".\n");
}
else
@@ -753,8 +753,8 @@
return "<corrupted stack entry>";
if (query_once_interactive(ob))
return object_name(ob)+" "+capitalize(geteuid(ob));
- if (!hide_short && ob->short())
- return object_name(ob)+" "+ob->name();
+ if (!hide_short && ({string})ob->short())
+ return object_name(ob)+" "+({string})ob->name();
else
return object_name(ob);
}
@@ -786,8 +786,8 @@
if (err) return arg;
push(ob);
write("FILENAME: "+object_name(ob)+" ");
- if (!hide_short && (s=ob->short()))
- write(" SHORT: "+ob->name());
+ if (!hide_short && (({string})s=ob->short()))
+ write(" SHORT: "+({string})ob->name());
write("\n");
return arg;
}
@@ -800,8 +800,8 @@
ob=pop();
if (err) return arg;
write("FILENAME: "+object_name(ob)+" ");
- if (s=ob->short())
- write(" SHORT: "+ob->name());
+ if (s=({string})ob->short())
+ write(" SHORT: "+({string})ob->name());
write("\n");
if (getuid(ob))
write("CREATOR: "+getuid(ob)+"\n");
@@ -811,26 +811,26 @@
+ query_idle(ob)+"\n");
}
if (s=query_snoop(ob))
- write("SNOOPED BY: "+s->query_real_name()+"\n");
+ write("SNOOPED BY: "+({string})s->query_real_name()+"\n");
s="";
if (living(ob))
s +="living ";
- if (ob->query_npc())
+ if (({int})ob->query_npc())
s+="npc ";
- if (ob->query_gender_string())
- s+=ob->query_gender_string();
+ if (({string})ob->query_gender_string())
+ s+=({string})ob->query_gender_string();
if (s!="")
write("FLAGS: "+s+"\n");
// write("LONG:\n");
- // if (stringp(s=ob->long()))
+ // if (stringp(s=({string})ob->long()))
// write(s);
// write("\n");
for (i=0;i<sizeof(query_list);i+=2)
{
if (query_list[i+1][0]=='-')
- s=ob->QueryProp(query_list[i+1][1..]);
+ s=({string})ob->QueryProp(query_list[i+1][1..]);
else
- s=call_other(ob,query_list[i+1]);
+ s=({string})call_other(ob,query_list[i+1]);
if (s)
{
printf("%s: %O\n",query_list[i],s);
@@ -1046,9 +1046,9 @@
if (!a)
{
printf("Removing %O",ob);
- if (!hide_short) printf(" %O",ob->name());
+ if (!hide_short) printf(" %O",({string})ob->name());
}
- catch(ob->remove());
+ catch(({int})ob->remove());
if (ob)
{
if (!a) printf(" HARD");
@@ -1084,7 +1084,7 @@
{
object p,p2;
p=first_inventory(ob);
- while (p && p->id(str) && destroyable(p))
+ while (p && ({int})p->id(str) && destroyable(p))
{
if (recursive) clean(p);
Remove(p,0);
@@ -1093,7 +1093,7 @@
while (p)
{
p2=next_inventory(p);
- if (p2 && p2->id(str) && destroyable(p2))
+ if (p2 && ({int})p2->id(str) && destroyable(p2))
{
if (recursive) clean(p2);
Remove(p2,0);
@@ -1153,7 +1153,7 @@
if (err) return arg;
from=pop();
if (err) return arg;
- from->move(to,M_NOCHECK);
+ ({int})from->move(to,M_NOCHECK);
write("Bewege "+desc(from)+" nach "+desc(to)+".\n");
return arg;
}
@@ -1262,7 +1262,7 @@
for (i=sizeof(list)-1;i>=0;i--)
if (list[i] && query_once_interactive(list[i]))
{
- list[i]->move("room/void",M_TPORT | M_SILENT | M_NO_SHOW | M_NOCHECK);
+ ({int})list[i]->move("room/void",M_TPORT | M_SILENT | M_NO_SHOW | M_NOCHECK);
} else
list[i]=0;
list-=({0});
@@ -1279,7 +1279,7 @@
}
err=catch(ob=clone_object(file));
if (!err)
- ob->move(env,M_TPORT | M_SILENT | M_NO_SHOW | M_NOCHECK);
+ ({int})ob->move(env,M_TPORT | M_SILENT | M_NO_SHOW | M_NOCHECK);
}
else
{
@@ -1296,7 +1296,7 @@
}
for (i=sizeof(list)-1;i>=0;i--)
if (list[i])
- list[i]->move(ob,M_TPORT | M_SILENT | M_NO_SHOW | M_NOCHECK);
+ ({int})list[i]->move(ob,M_TPORT | M_SILENT | M_NO_SHOW | M_NOCHECK);
return arg;
}
@@ -1454,7 +1454,7 @@
ob=pop();
if (err) return arg;
- write(capitalize(ob->name(WER))+" ");
+ write(capitalize(({string})ob->name(WER))+" ");
if (!query_once_interactive(ob))
{
write("ist kein echter Spieler.\n");
@@ -1477,7 +1477,7 @@
{
object ob;
mapping quests;
- mixed stats, *arr, tmp,tmp2, list;
+ mixed stats, arr, tmp,tmp2, list;
string titel, level, stat_str,weapon,armour;
int pl;
int i;
@@ -1486,7 +1486,7 @@
if (err)
return arg;
- titel=ob->QueryProp(P_TITLE);
+ titel=({string})ob->QueryProp(P_TITLE);
if (!(pl=query_once_interactive(ob)))
level="Monster="+old_explode(object_name(ob),"#")[0];
else
@@ -1508,7 +1508,7 @@
level="Seher";
else level="Spieler";
if (IS_DOMAINMEMBER(ob))
- for (tmp="secure/master"->get_domain_homes(geteuid(ob));
+ for (tmp=({string*})"secure/master"->get_domain_homes(geteuid(ob));
sizeof(tmp);tmp=tmp[1..])
level+="-"+capitalize(tmp[0]);
if (pl)
@@ -1518,54 +1518,54 @@
else
if (query_idle(ob)>600)
level+=", idle";
- if (ob->QueryProp(P_GHOST))
+ if (({int})ob->QueryProp(P_GHOST))
level+=", tot";
- if (ob->QueryProp(P_INVIS))
+ if (({int})ob->QueryProp(P_INVIS))
level+=", unsichtbar";
- if (ob->QueryProp(P_FROG))
+ if (({int})ob->QueryProp(P_FROG))
level+=", gruen und glitschig";
- if (ob->QueryProp(P_TESTPLAYER))
+ if (({int|string})ob->QueryProp(P_TESTPLAYER))
level+=", Testspieler";
}
- tmp=ob->QueryProp(P_PRESAY);
+ tmp=({string})ob->QueryProp(P_PRESAY);
if (tmp && tmp!="")
tmp=tmp+" ";
else
tmp="";
- tmp2=ob->QueryProp(P_RACE);
+ tmp2=({string})ob->QueryProp(P_RACE);
if(!tmp2)
tmp2="Dingsda";
- arr=ob->QueryProp(P_NAME);
+ arr=({string})ob->QueryProp(P_NAME);
if (pointerp(arr)) arr=arr[0];
printf("%s%s %s (%s)[%s].\n\n",tmp||"",arr||"",titel||"",
tmp2||"??",level||"??");
if (pl)
printf(" Alter : %s.%s\n",
- timef(2*ob->QueryProp(P_AGE)),
- (tmp=ob->QueryProp(P_MARRIED))?
+ timef(2*({int})ob->QueryProp(P_AGE)),
+ (tmp=({string})ob->QueryProp(P_MARRIED))?
("Verheiratet mit "+capitalize(tmp)+"."):"");
else
printf(" Aggressiv : %4s Gespraechig : %d%%\n",
- ob->QueryProp(P_AGGRESSIVE)? "Ja" : "Nein",
- ob->QueryProp(P_CHAT_CHANCE)) ;
+ ({int|float|mapping})ob->QueryProp(P_AGGRESSIVE)? "Ja" : "Nein",
+ ({int})ob->QueryProp(P_CHAT_CHANCE)) ;
printf(" Lebenspunkte : [%4d/%4d] Magiepunkte : [%4d/%4d] " +
"Erfahrung : %d\n",
- ob->QueryProp(P_HP), ob->QueryProp(P_MAX_HP),
- ob->QueryProp(P_SP), ob->QueryProp(P_MAX_SP),
- ob->QueryProp(P_XP));
+ ({int})ob->QueryProp(P_HP), ({int})ob->QueryProp(P_MAX_HP),
+ ({int})ob->QueryProp(P_SP), ({int})ob->QueryProp(P_MAX_SP),
+ ({int})ob->QueryProp(P_XP));
printf(" Nahrung : [%3d/%d] Fluessigkeit : [%3d/%d] " +
"Alkohol : [%3d/%d]\n",
- ob->QueryProp(P_FOOD), ob->QueryProp(P_MAX_FOOD),
- ob->QueryProp(P_DRINK), ob->QueryProp(P_MAX_DRINK),
- ob->QueryProp(P_ALCOHOL), ob->QueryProp(P_MAX_ALCOHOL)) ;
- switch(ob->QueryProp(P_GENDER)) {
+ ({int})ob->QueryProp(P_FOOD), ({int})ob->QueryProp(P_MAX_FOOD),
+ ({int})ob->QueryProp(P_DRINK), ({int})ob->QueryProp(P_MAX_DRINK),
+ ({int})ob->QueryProp(P_ALCOHOL), ({int})ob->QueryProp(P_MAX_ALCOHOL)) ;
+ switch(({int})ob->QueryProp(P_GENDER)) {
case FEMALE : tmp2 = "weiblich " ; break ;
case MALE : tmp2 = "maennlich" ; break ;
default : tmp2 = "boingisch" ; break ;
}
printf(" Geschlecht : %s Charakter : %-5d Stufe : %-3d\n",
- tmp2, ob->QueryProp(P_ALIGN), ob->QueryProp(P_LEVEL)) ;
- stats = ob->QueryProp(P_ATTRIBUTES) ;
+ tmp2, ({int})ob->QueryProp(P_ALIGN), ({int})ob->QueryProp(P_LEVEL)) ;
+ stats = ({mapping})ob->QueryProp(P_ATTRIBUTES) ;
if (!mappingp(stats)) stats=([]);
tmp = m_indices(stats); tmp2 = m_values(stats); stat_str = "" ;
for(; sizeof(tmp); tmp=tmp[1..],tmp2=tmp2[1..])
@@ -1576,20 +1576,20 @@
else
stat_str = stat_str[0..<2];
- printf(" Geld : %-9d Stati : %s\n\n", ob->QueryMoney(),
+ printf(" Geld : %-9d Stati : %s\n\n", ({int})ob->QueryMoney(),
stat_str) ;
weapon = "Keine" ; armour = "" ;
for(tmp=all_inventory(ob); sizeof(tmp); tmp=tmp[1..])
{
- if(tmp[ 0 ]->QueryProp(P_WIELDED)) // gezueckte Waffe
+ if(({object})tmp[ 0 ]->QueryProp(P_WIELDED)) // gezueckte Waffe
weapon = (tmp[ 0 ]->name(WER)) + " (" +
old_explode(object_name(tmp[ 0 ]),"#")[0] + ")[" +
- tmp[ 0 ]->QueryProp(P_WC) + "]" ;
+ ({int})tmp[ 0 ]->QueryProp(P_WC) + "]" ;
- if(tmp[ 0 ]->QueryProp(P_WORN)) // getragene Ruestung
- armour += (tmp[ 0 ]->name(WER)) + "[" +
- tmp[ 0 ]->QueryProp(P_AC) + "]" +
+ if(({object})tmp[ 0 ]->QueryProp(P_WORN)) // getragene Ruestung
+ armour += (({string})tmp[ 0 ]->name(WER)) + "[" +
+ ({int})tmp[ 0 ]->QueryProp(P_AC) + "]" +
", " ;
}
@@ -1606,17 +1606,17 @@
}
printf(" Waffe(%3d) : %s\nRuestung(%3d) : %s\n",
- ob->QueryProp(P_TOTAL_WC), weapon,
- ob->QueryProp(P_TOTAL_AC), armour) ;
+ ({int})ob->QueryProp(P_TOTAL_WC), weapon,
+ ({int})ob->QueryProp(P_TOTAL_AC), armour) ;
- list = ob->QueryEnemies();
+ list = ({mixed})ob->QueryEnemies();
if (pointerp(list))
{
list=list[0];
tmp2 = "" ;
for(i=sizeof(list)-1 ; i>=0;i--)
if (objectp(list[i]))
- tmp2 += (list[ i ]->name(WER) + ", ") ;
+ tmp2 += (({string})list[ i ]->name(WER) + ", ") ;
if(tmp2 != "")
printf(" Feinde : %s.\n", tmp2[0..<3]);
}
@@ -1625,11 +1625,11 @@
if(pl)
{
printf( break_string(
- CountUp(m_indices(ob->QueryProp(P_QUESTS))),
+ CountUp(m_indices(({mapping})ob->QueryProp(P_QUESTS))),
75,
" Aufgaben : ",
BS_INDENT_ONCE));
- if(((tmp2 = ob->QueryProp(P_MAILADDR)) != "none") && tmp2 &&
+ if(((tmp2 = ({string})ob->QueryProp(P_MAILADDR)) != "none") && tmp2 &&
(tmp2 != ""))
tmp2 = " (" + tmp2 + ")" ;
else
@@ -1655,22 +1655,22 @@
if (err) return arg;
if (query_once_interactive(ob))
printf("Spieler: %s, Level: %d, Wizlevel: %d\n",
- capitalize(getuid(ob)), ob->QueryProp(P_LEVEL),
+ capitalize(getuid(ob)), ({int})ob->QueryProp(P_LEVEL),
query_wiz_level(ob));
else
printf("Monster, UID: %s, EUID: %s, Level: %d\n",
- getuid(ob), (geteuid(ob)?geteuid(ob):"0"), ob->QueryProp(P_LEVEL));
- tmp=ob->short();
+ getuid(ob), (geteuid(ob)?geteuid(ob):"0"), ({int})ob->QueryProp(P_LEVEL));
+ tmp=({string})ob->short();
if (!stringp(tmp)||!sizeof(tmp))
- tmp=sprintf("(%s %s %s %s)",ob->QueryProp(P_PRESAY)+"",
- ob->QueryProp(P_NAME)+"",ob->QueryProp(P_TITLE)+"",
+ tmp=sprintf("(%s %s %s %s)",({string})ob->QueryProp(P_PRESAY)+"",
+ ({string})ob->QueryProp(P_NAME)+"",({string})ob->QueryProp(P_TITLE)+"",
(interactive(ob)?"":"(netztot"));
else
tmp=tmp[0..<3];
- printf("%s, Rasse: %s\n",tmp, ""+ob->QueryProp(P_RACE));
+ printf("%s, Rasse: %s\n",tmp, ""+({string})ob->QueryProp(P_RACE));
printf("Stats: ");
- tmp=ob->QueryProp(P_ATTRIBUTES);
- tmp3=ob->QueryProp(P_ATTRIBUTES_OFFSETS);
+ tmp=({mapping})ob->QueryProp(P_ATTRIBUTES);
+ tmp3=({mapping})ob->QueryProp(P_ATTRIBUTES_OFFSETS);
if (!tmp)
printf("keine\n");
else
@@ -1685,9 +1685,9 @@
printf("\n");
}
printf("Ruestung: %-6d Waffen: %-6d Vorsicht: %-6d Geschlecht: ",
- ob->QueryProp(P_TOTAL_AC),ob->QueryProp(P_TOTAL_WC),
- ob->QueryProp(P_WIMPY));
- if (!(tmp=ob->QueryProp(P_GENDER)))
+ ({int})ob->QueryProp(P_TOTAL_AC),({int})ob->QueryProp(P_TOTAL_WC),
+ ({int})ob->QueryProp(P_WIMPY));
+ if (!(tmp=({int})ob->QueryProp(P_GENDER)))
printf("N\n");
else
{
@@ -1696,29 +1696,29 @@
else
printf("M\n");
}
- if (tmp=ob->QueryProp(P_MARRIED))
+ if (tmp=({string})ob->QueryProp(P_MARRIED))
printf("Verheiratet mit %s.\n",capitalize(tmp));
printf("Lebenspunkte: %4d [%4d], Magiepunkte: %4d [%4d], Erf: %-8d\n",
- ob->QueryProp(P_HP), ob->QueryProp(P_MAX_HP),
- ob->QueryProp(P_SP), ob->QueryProp(P_MAX_SP),
- ob->QueryProp(P_XP));
+ ({int})ob->QueryProp(P_HP), ({int})ob->QueryProp(P_MAX_HP),
+ ({int})ob->QueryProp(P_SP), ({int})ob->QueryProp(P_MAX_SP),
+ ({int})ob->QueryProp(P_XP));
if (living(ob))
{
tmp=present("geld",ob);
if (tmp)
- tmp=tmp->QueryProp(P_AMOUNT);
+ tmp=({int})tmp->QueryProp(P_AMOUNT);
printf("Traegt %6d (%6d) g. Eigengewicht %6d g. %6d Muenzen.\n",
- ob->query_weight_contents(),ob->QueryProp(P_MAX_WEIGHT),
- ob->QueryProp(P_WEIGHT),tmp);
- if (tmp=ob->SelectEnemy())
- printf("Kaempft gegen %s [%O]\n",tmp->name(WEN),tmp);
+ ({int})ob->query_weight_contents(),({int})ob->QueryProp(P_MAX_WEIGHT),
+ ({int})ob->QueryProp(P_WEIGHT),tmp);
+ if (tmp=({object})ob->SelectEnemy())
+ printf("Kaempft gegen %s [%O]\n",({string})tmp->name(WEN),tmp);
}
printf("ENV: %s",
((tmp=environment(ob))?object_name(tmp):"- fabric of space -"));
if(query_once_interactive(ob))
{
- printf(", EMail: %s\n", ob->QueryProp(P_MAILADDR)+"");
- tmp="/secure/master"->find_userinfo(getuid(ob));
+ printf(", EMail: %s\n", ({string})ob->QueryProp(P_MAILADDR)+"");
+ tmp=({int})"/secure/master"->find_userinfo(getuid(ob));
if (pointerp(tmp) && sizeof(tmp)>USER_DOMAIN)
{
tmp=tmp[USER_DOMAIN];
@@ -1730,7 +1730,7 @@
printf(".\n");
}
}
- tmp="/secure/master"->get_domain_homes(getuid(ob));
+ tmp=({string*})"/secure/master"->get_domain_homes(getuid(ob));
if (pointerp(tmp)&&sizeof(tmp)>0)
{
printf("Mitglied in: ");
@@ -1739,7 +1739,7 @@
printf(".\n");
}
printf("Quests: ");
- tmp=ob->QueryProp(P_QUESTS);
+ tmp=({mapping})ob->QueryProp(P_QUESTS);
if (tmp==({})||!pointerp(tmp))
printf("Keine.\n");
else
@@ -1752,8 +1752,8 @@
tmp=tmp[8..];
printf("%s",tmp);
}
- printf("PKills: %d ",ob->QueryProp(P_KILLS));
- printf(", QuestPoints: %d (%d/%d), Alter: %s\n",ob->QueryProp(P_QP),ob->QueryProp(P_NEEDED_QP),QM->QueryMaxQP(),timef(2*ob->QueryProp(P_AGE)));
+ printf("PKills: %d ",({int})ob->QueryProp(P_KILLS));
+ printf(", QuestPoints: %d (%d/%d), Alter: %s\n",({int})ob->QueryProp(P_QP),({int})ob->QueryProp(P_NEEDED_QP),({int})QM->QueryMaxQP(),timef(2*({int})ob->QueryProp(P_AGE)));
if (interactive(ob))
{
printf("From: %s (%s) [%s]\n",query_ip_name(ob),query_ip_number(ob),country(query_ip_name(ob)));
@@ -1761,9 +1761,9 @@
printf("Idle seit %d Sekunden",tmp);
if (tmp>60)
printf(" (%s)",timef(tmp));
- printf(", cmd avg: %d",ob->QueryProp("command_average"));
+ printf(", cmd avg: %d",({int})ob->QueryProp("command_average"));
printf(", noch %d ZT zu finden.\nGesnooped von: %s\n",
- ((tmp=ob->QueryProp(P_POTIONROOMS))?sizeof(tmp):0),
+ ((tmp=({int*})ob->QueryProp(P_POTIONROOMS))?sizeof(tmp):0),
((tmp=query_snoop(ob))?capitalize(getuid(tmp)):"Niemandem"));
}
else
@@ -1772,7 +1772,7 @@
tmp=file_time("save/"+tmp[0..0]+"/"+tmp+".o");
tmp=time()-tmp;
printf("Kam von: %s, vor: %d s(%s)\n",
- ob->QueryProp(P_CALLED_FROM_IP),tmp,timef(tmp));
+ ({string})ob->QueryProp(P_CALLED_FROM_IP),tmp,timef(tmp));
}
}
else
@@ -1864,7 +1864,7 @@
err=desc(ob)+" is not an interactive player";
return arg;
}
- if ((err="/secure/master"->renew_player_object(ob))<0)
+ if ((err=({int})"/secure/master"->renew_player_object(ob))<0)
err="error "+err+" when renewing "+desc(ob);
return arg;
}
@@ -1883,10 +1883,10 @@
return arg;
}
new=clone_object(old_explode(object_name(ob),"#")[0]);
- props=ob->QueryProperties();
- new->SetProperties(ob->QueryProperties());
+ props=({mapping})ob->QueryProperties();
+ ({mapping})new->SetProperties(ob->QueryProperties());
push(new);
- new->move(this_player(),M_NOCHECK);
+ ({int})new->move(this_player(),M_NOCHECK);
return arg;
}