diverse Typecast-Fixes

Change-Id: Ie8b87b64bc90855c99206830a05cd5d029b0bef8
diff --git a/d/seher/haeuser/hausverwalter.c b/d/seher/haeuser/hausverwalter.c
index 26643d1..058a77b 100644
--- a/d/seher/haeuser/hausverwalter.c
+++ b/d/seher/haeuser/hausverwalter.c
@@ -117,7 +117,8 @@
     return 1;
   }
   
-  catch(ar = (int)(PATH+"access_rights")->access_rights(geteuid(this_interactive()), "haus.h"));
+  catch(ar = ({int})(PATH+"access_rights")->access_rights(
+                      geteuid(this_interactive()), "haus.h"));
 
   // Erzmagier und alle mit Schreibrechten auf haus.h duerfen
   if ( (this_interactive() == this_player()) &&
@@ -188,7 +189,8 @@
       printf("error loading %O!\n", hname);
       continue;
     }
-    foreach (string dir, string path : (mapping)(here->QueryProp(P_EXITS))) {
+    foreach (string dir, string path : ({mapping})(here->QueryProp(P_EXITS)))
+    {
       // betrachte alle Ausgaenge
       if (dir == "raus") {
         // Haustuer aus dem Hauptraum darf natuerlich rausfuehren
diff --git a/d/seher/haeuser/traghaus.c b/d/seher/haeuser/traghaus.c
index 7a55bb8..a0c5e41 100644
--- a/d/seher/haeuser/traghaus.c
+++ b/d/seher/haeuser/traghaus.c
@@ -177,7 +177,7 @@
 Du wirfst noch einmal einen verstohlenen Blick auf die Giesskanne, musst aber\n\
 feststellen, dass sie verschwunden ist und auch verschwunden bleibt.\n" );
 
-  say(capitalize((string)(this_player()->name()))+" verwandelt mit einem Tropfen Wasser "+
+  say(capitalize(this_player()->name())+" verwandelt mit einem Tropfen Wasser "+
       this_player()->QueryPossPronoun(this_object(), WEN) + " Haus.\n");
 
   VERWALTER->NeuesHaus(owner, environment(this_object()));
diff --git a/d/seher/haeuser/virtual_compiler.c b/d/seher/haeuser/virtual_compiler.c
index a4f844c..7e05245 100644
--- a/d/seher/haeuser/virtual_compiler.c
+++ b/d/seher/haeuser/virtual_compiler.c
@@ -38,7 +38,7 @@
   // Zeiger auf Cloneliste holen
   if (call_other(MEMORY,"HaveRights")) {
     // Objektpointer laden
-    objects = (mixed) call_other(MEMORY,"Load","objects");
+    objects = call_other(MEMORY,"Load","objects");
 
     // Hats geklappt?
     if (!mappingp(objects)) 
@@ -68,11 +68,11 @@
 
   if (name[<6..<3] == "haus" )
   {
-    ob = (object) (VERWALTER)->_LadeHaus(name[0..<7]);
+    ob = ({object})(VERWALTER)->_LadeHaus(name[0..<7]);
   }
   else if (name[<7..<4] == "raum" )
   {
-    ob = (object) (VERWALTER)->_LadeRaum(name[0..<8], to_int(name[<3..<3]));
+    ob = ({object})(VERWALTER)->_LadeRaum(name[0..<8], to_int(name[<3..<3]));
   } 
   else 
   {
@@ -94,7 +94,7 @@
   Soll die Liste der Objekte zum VC per QueryObjects ausgegeben werden oder nicht?
 */
   
-int ToggleCloneList()
+void ToggleCloneList()
 {
   show_clone_list ^= 1;
   tell_object(this_player(), "Die Clone List wird nun "+
diff --git a/mail/nedit.c b/mail/nedit.c
index b6225a2..03fa088 100644
--- a/mail/nedit.c
+++ b/mail/nedit.c
@@ -86,7 +86,7 @@
   bend = cur = len = sizeof(nedittext)-1;
   nexitfunc=exitfunc;
   flags = 0;
-  editor_used=(string)TP->query_real_name();
+  editor_used=({string})TP->query_real_name();
   if (pretext)
     get_edit_line("~z");
   else {
@@ -300,7 +300,7 @@
   {
     str=str[2..<2];
     if (str[0..0]==" ") str=str[1..<1];
-    if (!str || catch(err=file_size(str=(string)"/secure/master"->_get_path(str,getuid(TP)))) || err<0) {
+    if (!str || catch(err=file_size(str=({string})"/secure/master"->_get_path(str,getuid(TP)))) || err<0) {
       write("File nicht gefunden.\n");
       //nedit_prompt();
       input_to("get_edit_line", INPUT_PROMPT, nedit_prompt());
diff --git a/obj/tools/questtool.c b/obj/tools/questtool.c
index 6fa1e32..a4c3ff2 100644
--- a/obj/tools/questtool.c
+++ b/obj/tools/questtool.c
@@ -157,7 +157,7 @@
   string *keys;
   int i;
 
-  if ( !(keys = (string*) QM->QueryAllKeys()) ) return;
+  if ( !(keys = ({string*}) QM->QueryAllKeys()) ) return;
   keys=sort_array(keys,#'>);//')
   for ( i = 0, num_key = ([]); i < sizeof(keys); i++ )
     num_key += ([(i+1)+"":keys[i]]);
@@ -200,39 +200,39 @@
 	name = str;
       counter++;
       write ( sprintf("Punkte (>0) [%d]:\n",
-		      (do_change?(int)savequest[0]:10)) ); 
+		      (do_change ? savequest[0] : 10)) ); 
       input_to ( "ReadNewQuest" );
       break;
     case QP:
       if((!str||!sizeof(str)))
 	if(do_change)
-	  qp = (int) savequest[Q_QP];
+	  qp = ({int})savequest[Q_QP];
 	else
 	  qp = 10;
       else
 	sscanf ( str, "%d", qp );
       counter++;
       write ( sprintf("Erfahrung (>=0) [%d]:\n",
-		      (do_change?(int)savequest[1]:qp*1000)));
+		      (do_change ? savequest[1] : qp*1000)));
       input_to ( "ReadNewQuest" );
       break;
     case XP: 
       if((!str||!sizeof(str)))
 	if(do_change)
-	  xp = (int) savequest[Q_XP];
+	  xp = ({int})savequest[Q_XP];
 	else
 	  xp = qp * 1000;
       else
 	sscanf ( str, "%d", xp );
       counter++;
       write ( sprintf("Filenamen file1[,file2,...]) %s:\n",
-		      (do_change?"["+implode((string *)savequest[2],",")+"]":
+		      (do_change?"["+implode(savequest[2],",")+"]":
 		       "")) );
       input_to ( "ReadNewQuest" );
       break;
     case ALLOW:
       if((!str||!sizeof(str)) && do_change)
-	allowed = (string *) savequest[Q_ALLOWED];
+	allowed = ({string *}) savequest[Q_ALLOWED];
       else
 	allowed = old_explode(implode(old_explode(str,".c"),""),",");
       counter++;
@@ -249,7 +249,7 @@
 	info = str;
       counter++;
       write ( sprintf("Stufe (-1 <=lev<=10) (-1 ist eine Seherquest) [%d]:\n",
-		      (do_change?(int)savequest[4]:0)) );
+		      (do_change ? savequest[4] : 0)) );
       input_to ( "ReadNewQuest" );
       break;
     case LEVEL:
@@ -261,40 +261,40 @@
 	sscanf ( str, "%d", level );
       counter++;
       write ( sprintf("Klasse ([012345]) [%d]:\n",
-		      (do_change?(int)savequest[5]:0)) ); 
+		      (do_change ? savequest[5] : 0)) ); 
       input_to ( "ReadNewQuest" );
       break;
     case CLASS:
       if((!str||!sizeof(str)))
 	if(do_change)
-	  need = (int) savequest[Q_CLASS];
+	  need = ({int})savequest[Q_CLASS];
 	else
 	  need = 0;
       else
 	sscanf ( str, "%d", need );
       counter++;
       write ( sprintf("Attribut [01234]\n(1=fleissig,2=heroisch,3=episch,4=legendaer) %s:\n",
-		      (do_change?"["+(string)savequest[9]+"]":"")) );
+		      (do_change?"["+savequest[9]+"]":"")) );
       input_to ( "ReadNewQuest" );
       break;
     case ATTR:
       if ((!str||!sizeof(str)))
 	if (do_change)
-	  group = (int) savequest[Q_ATTR];
+	  group = ({int})savequest[Q_ATTR];
 	else
 	  group = 0;
       else
 	sscanf (str, "%d", group);
       counter++;
       write ( sprintf("Magier %s:\n",
-		      (do_change?"["+(string)savequest[7]+"]":"")) );
+		      (do_change?"["+savequest[7]+"]":"")) );
       input_to ( "ReadNewQuest" );
     break;	
     case WIZ:
       if((!str||!sizeof(str)) && do_change)
-	wizard = (string) savequest[Q_WIZ];
+        wizard = ({string})savequest[Q_WIZ];
       else
-	wizard = str;
+        wizard = str;
       wizard = lower_case(wizard);
       counter++;
       write ( sprintf("Wartender Magier %s:\n",
@@ -303,9 +303,9 @@
       break;
     case SCNDWIZ:
       if ((!str||!sizeof(str)) && do_change)
-	scndwizard = (string) savequest[Q_SCNDWIZ];
+        scndwizard = ({string}) savequest[Q_SCNDWIZ];
       else
-	scndwizard = str;
+        scndwizard = str;
       scndwizard = lower_case(scndwizard);
       counter++;
       write ( "Eintragen (j/n)?\n" );
@@ -320,7 +320,7 @@
       active = 0;
       if ( do_change && changekey && sizeof(changekey) )
       {
-	oldquest = (mixed *) QM->QueryQuest ( changekey );
+        oldquest = ({mixed *}) QM->QueryQuest ( changekey );
 
 	if ( !pointerp ( oldquest ) || !sizeof ( oldquest ) )
 	{
@@ -328,7 +328,7 @@
 	  return;
 	}
 
-	errstat = (int) QM->RemoveQuest( changekey );
+	errstat = ({int}) QM->RemoveQuest( changekey );
 
 	do_change = 0;
 	changekey = "";
@@ -347,7 +347,7 @@
 
       // add new Quest deactivated by default and keep old active flag
       // if changing an existing entry
-      errstat= (int)QM->AddQuest(name,qp,xp,allowed,info,level,need,active,
+      errstat= ({int})QM->AddQuest(name,qp,xp,allowed,info,level,need,active,
 				 wizard, scndwizard, group);
 
       switch ( errstat )
@@ -387,7 +387,7 @@
   if ( !(newstr = num_key[str+""]) )
     newstr = str;
 
-  oldquest = (mixed *) QM->QueryQuest ( newstr );
+  oldquest = ({mixed *}) QM->QueryQuest ( newstr );
 
   if ( !pointerp ( oldquest ) || !sizeof ( oldquest ) )
   {
@@ -395,7 +395,7 @@
     return 1;
   }
 
-  errstat = (int) QM->RemoveQuest( newstr );
+  errstat = ({int}) QM->RemoveQuest( newstr );
 
   switch ( errstat )
   {
@@ -427,7 +427,7 @@
   if ( !(newstr = num_key[str+""]) )
     newstr = str;
 
-  oldquest = (mixed *) QM->QueryQuest ( newstr );
+  oldquest = ({mixed *}) QM->QueryQuest ( newstr );
 
   if ( !pointerp( oldquest ) || !sizeof ( oldquest ) )
   {
@@ -472,11 +472,9 @@
   }
 
   errstat = 
-	(int)QM->AddQuest( savekey, (int) savequest[0], (int) savequest[1],
-			  (string *) savequest[2], (string) savequest[3],
-			  (int) savequest[4], (int) savequest[5],
-			  (string) savequest[6], (int) savequest[7],
-			  (string) savequest[8] );
+	  ({int})QM->AddQuest(savekey, savequest[0], savequest[1],
+			           savequest[2], savequest[3], savequest[4], savequest[5],
+			           savequest[6], savequest[7], savequest[8]);
 
   switch ( errstat )
   {
@@ -531,7 +529,7 @@
     return 1;
   }
   
-  write(ERRNO_2_STRING("GQ",(int)ob->GiveQuest(newquest,"__silent__"))+"\n");
+  write(ERRNO_2_STRING("GQ",({int})ob->GiveQuest(newquest,"__silent__"))+"\n");
   if(created)
   {
     ob->save_me(0);
@@ -577,7 +575,7 @@
     return 1;
   }
   
-  write(ERRNO_2_STRING("DQ",(int) ob->DeleteQuest ( newquest ))+"\n");
+  write(ERRNO_2_STRING("DQ",({int}) ob->DeleteQuest ( newquest ))+"\n");
   if(created)
   {
     ob->save_me(0);
@@ -606,7 +604,7 @@
   if ( !(newstr = num_key[str+""]) )
 	newstr = str;
 
-  quest = (mixed *) QM->QueryQuest( newstr );
+  quest = ({mixed *}) QM->QueryQuest( newstr );
 
   if ( !pointerp( quest ) || !sizeof ( quest ) )
   {
@@ -640,14 +638,14 @@
   mixed *quest;
   int i;
 
-  if ( !(keys = (string *) QM->QueryAllKeys()) )
+  if ( !(keys = ({string *}) QM->QueryAllKeys()) )
     return 1;
 
   write ( "\n" );
   keys=sort_array(keys,#'>);//')
   for ( i = 0; i < sizeof(keys); i++ )
   {
-    quest = (mixed *) QM->QueryQuest(keys[i]);
+    quest = ({mixed *}) QM->QueryQuest(keys[i]);
     if(quest[6])
       active="*";
     else
@@ -667,13 +665,13 @@
   string *keys, rstr;
   int i;
 
-  if ( !(keys = (mixed *) QM->QueryAllKeys()) )
+  if ( !(keys = ({mixed *})QM->QueryAllKeys()) )
     return 1;
 
   keys=sort_array(keys,#'>);//')
   for ( i = 0, rstr = ""; i < sizeof(keys); i++ )
   {
-    quest = (mixed *) QM->QueryQuest(keys[i]);
+    quest = ({mixed *}) QM->QueryQuest(keys[i]);
       write ( "\nKey              : "+keys[i] );
   if(quest[Q_ACTIVE])
     write (" (aktiviert)\n");
diff --git a/secure/lepmaster.c b/secure/lepmaster.c
index 3d7cb79..6e53834 100644
--- a/secure/lepmaster.c
+++ b/secure/lepmaster.c
@@ -80,24 +80,24 @@
   ret = 100;
 
   // Beitrag A: Stupse von NPC-Erstkills
-  ret += (int)SCOREMASTER->QueryKillPoints(pl);
+  ret += ({int})SCOREMASTER->QueryKillPoints(pl);
 
   DEBUG("Nach KP: ret = %d\n", ret);
 
   // Beitrag B: Stupse von geloesten Miniquests
-  ret += (int)QM->QueryMiniQuestPoints(pl);
+  ret += ({int})QM->QueryMiniQuestPoints(pl);
 
   DEBUG("Nach MQP: ret = %d\n", ret);
 
   // Beitrag C: Questpunkte
   //  werden 1:1 uebernommen;
-  ret += (int)pl->QueryProp(P_QP);
+  ret += ({int})pl->QueryProp(P_QP);
 
   DEBUG("Nach QP: ret = %d\n", ret);
 
   // Beitrag D: Erfahrungspunkte
   //  Stupse = XPs ^ 0.32
-  val = (int)pl->QueryProp(P_XP);
+  val = ({int})pl->QueryProp(P_XP);
 
   if (val<1) l=0;
   else l=to_int(exp(log(to_float(val))*0.32));
@@ -109,19 +109,19 @@
   // Beitrag E: Zaubertraenke
   //  Gefundene Traenke geben 5 LEP
   //  Die Heiltraenke geben zusaetzlich 10+20+30+40 LEP
-  i = 80 - (val = sizeof((int *)pl->QueryProp(P_POTIONROOMS)));
+  i = 80 - (val = sizeof(({int *})pl->QueryProp(P_POTIONROOMS)));
 
   ret += 5*i + ([ 0: 100, 1: 60, 2: 30, 3: 10])[val];
 
   // Beitrag F: Forscherpunkte
   //  Pro FP gibt es 6 Stufenpunkte
-  ret += 6 * (int)EPMASTER->QueryExplorationPoints(pl);
+  ret += 6 * ({int})EPMASTER->QueryExplorationPoints(pl);
 
   DEBUG("Nach FP: ret = %d\n", ret);
 
   // Beitrag G: Gildeneinstufung
   //  Maximale Gildeneinstufung (10000) entspricht vier Leveln
-  ret += ((int)pl->QueryProp(P_GUILD_RATING))/25;
+  ret += (({int})pl->QueryProp(P_GUILD_RATING))/25;
 
   DEBUG("Nach GR: ret = %d\n", ret);
 
@@ -193,12 +193,12 @@
   int max, my, avg;
   string ret;
 
-  if ((my=(int)EPMASTER->QueryExplorationPoints(getuid(previous_object()))) < MIN_EP)
+  if ((my=({int})EPMASTER->QueryExplorationPoints(getuid(previous_object()))) < MIN_EP)
     return "Du kennst Dich im "MUDNAME" so gut wie gar nicht aus.\n";
 
   my *= 100;
-  max = my/(int)EPMASTER->QueryMaxEP();
-  avg = my/(int)EPMASTER->QueryAverage();
+  max = my/({int})EPMASTER->QueryMaxEP();
+  avg = my/({int})EPMASTER->QueryAverage();
 
   ret = "Verglichen mit Deinen Mitspielern, kennst Du Dich im "MUDNAME" ";
   switch(avg) {
@@ -308,12 +308,12 @@
   DEBUG("Abenteuerpunkte: %d ("+REQ_QP+")\n", player->QueryProp(P_QP));
   if (player->QueryProp(P_QP) < REQ_QP) {
     s += sprintf(" * Dir fehlen noch mindestens %d Abenteuerpunkte.\n", 
-		 REQ_QP - (int)player->QueryProp(P_QP));
+		 REQ_QP - ({int})player->QueryProp(P_QP));
     i--;
   }
 
   // Forscherpunkte
-  z = 6 * (int)EPMASTER->QueryExplorationPoints(player);
+  z = 6 * ({int})EPMASTER->QueryExplorationPoints(player);
   DEBUG("Forscherpunkte: %d ("+REQ_EP+")\n", z);
   if (z < REQ_EP) {
     s += sprintf(" * Du kennst Dich im "MUDNAME" noch nicht genug aus, "
@@ -323,7 +323,7 @@
   }
 
   // Zaubertraenke
-  z = 80 - (val = sizeof((int*)player->QueryProp(P_POTIONROOMS)));
+  z = 80 - (val = sizeof(({int*})player->QueryProp(P_POTIONROOMS)));
   z = z*5 + ([0:100, 1:60, 2:30, 3:10])[val];
   DEBUG("Zaubertraenke: %d ("+REQ_P+")\n", z);
   if (z < REQ_P) {
@@ -333,7 +333,7 @@
   }
 
   // Erstkills
-  z = (int)SCOREMASTER->QueryKillPoints(player);
+  z = ({int})SCOREMASTER->QueryKillPoints(player);
   DEBUG("Erstkills: %d ("+REQ_K+")\n", z);
   if (z < REQ_K) {
         s += sprintf(" * Du hast noch nicht genuegend wuerdige Gegner erlegt, genau "
@@ -346,7 +346,7 @@
 
   // Restliche Stufenpunkte 
   DEBUG("Stufenpunkte: %d ("+REQ_LEP+")\n", player->QueryProp(P_LEP));
-  if ((int)(player->QueryProp(P_LEP)) < REQ_LEP) {
+  if (({int})(player->QueryProp(P_LEP)) < REQ_LEP) {
     s += sprintf(" * Du musst mindestens %d Stufenpunkte, entspricht Stufe %d, "
         "erreichen.\n", REQ_LEP, minlevel);
     i--;
@@ -354,7 +354,7 @@
   
   // Demnach mindestens REQ/100-Level 
   DEBUG("Level: %d ("+REQ_LEP/100+")\n", player->QueryProp(P_LEVEL));
-  if ((int)player->QueryProp(P_LEVEL) < minlevel) {
+  if (({int})player->QueryProp(P_LEVEL) < minlevel) {
     s += sprintf(" * Du musst mindestens Stufe %d erreichen.\n", minlevel);
     i--;
   }
diff --git a/secure/merlin.c b/secure/merlin.c
index cfa8984..53b90c4 100644
--- a/secure/merlin.c
+++ b/secure/merlin.c
@@ -14,7 +14,7 @@
 #pragma warn_deprecated
 
 // 2014-Mai-10, Arathorn: Er soll ja weiterhin auf tm reagieren.
-inherit "std/npc/comm.c";
+inherit "/std/npc/comm.c";
 
 #include <config.h>
 #include <properties.h>
@@ -343,8 +343,8 @@
     return;
   }
 
-  if (!(int)pl->QueryGuest()) {
-  string plname = (string)pl->Name(WER);
+  if (!pl->QueryGuest()) {
+  string plname = ({string})pl->Name(WER);
     CHMASTER->send("Anfaenger", this_object(),
       sprintf("%s macht nun ebenfalls das Morgengrauen unsicher. "
               "Herzlich Willkommen %s!", plname, plname)
@@ -429,7 +429,7 @@
   tell_room(environment(), "Merlin schimpft: Lass das!!!\n",({PL}));
   tell_room(environment(),sprintf(
         "Merlin gibt %s eine schallende Ohrfeige.\n",      
-        capitalize((string)this_player()->name(WEM))), ({this_player()}));
+        capitalize(({string})this_player()->name(WEM))), ({this_player()}));
   return("Merlin schimpft: Lass das!!!\n"
       "Merlin gibt Dir eine schallende Ohrfeige.\n");
 }
@@ -455,11 +455,11 @@
 
   if (!(env=environment()))
     return;
-  if (!(ti=this_interactive())||(int)ti->QueryProp(P_LEVEL)<19||ti->QueryProp(P_GHOST))
+  if (!(ti=this_interactive())||ti->QueryProp(P_LEVEL)<19||ti->QueryProp(P_GHOST))
     return;
   tell_object(ti,"Du spuerst einen sengenden Schmerz.\n");
-  ti->do_damage( ((int)ti->QueryProp(P_HP)) / 2 + 5);
-  if((int)ti->QueryProp(P_GHOST)) return;
+  ti->do_damage( ti->QueryProp(P_HP) / 2 + 5);
+  if(ti->QueryProp(P_GHOST)) return;
   ans="ich hab nicht die leiseste Idee, wo ich hier bin ...\n";
   path=old_explode(object_name(env),"/");
   if (path[0]=="d")
@@ -646,10 +646,10 @@
   if (IS_SEER(pl))
     return 1;
   
-  if ((int)LEPMASTER->QueryReadyForWiz(pl)==1)
+  if (LEPMASTER->QueryReadyForWiz(pl)==1)
     return 1;
 
-  s=(string)LEPMASTER->QueryReadyForWizText(pl); 
+  s=({string})LEPMASTER->QueryReadyForWizText(pl); 
 
   tell_object(pl, break_string("Merlin gruebelt ein wenig und teilt Dir "
                                "nach einigem Ueberlegen mit:\n\n", 78,0,1));
@@ -660,8 +660,9 @@
                                78, "Merlin teilt Dir mit: "));
 
   if (environment() == environment(pl))
-    say((string)pl->name(WER)
-        +" erfuellt noch nicht alle Anforderungen fuer den "+was+"status.\n",pl);
+    say(pl->name(WER)
+        +" erfuellt noch nicht alle Anforderungen fuer den "+was+
+        "status.\n",pl);
   
   return 0;
 }
@@ -743,15 +744,15 @@
       Say("Nur ein Erzmagier kann "+who->name(WEN)+" zum \"richtigen\" Magier machen!\n");
       return 0;
     }
-    ret=(int)"secure/master"->advance_wizlevel(geteuid(who),21);
+    ret=({int})"secure/master"->advance_wizlevel(geteuid(who),21);
     if (ret<=0)
     {
       say("Merlin: error "+ret+"\n");
       write("Merlin: error "+ret+"\n");
     }
-    write("Merlin ruft: "+(string)who->name(WER)+" ist in den Kreis der Magier "+
+    write("Merlin ruft: "+who->name(WER)+" ist in den Kreis der Magier "+
               "aufgenommen worden!\n");
-    shout("Merlin ruft: "+(string)who->name(WER)+" ist in den Kreis der Magier "+
+    shout("Merlin ruft: "+who->name(WER)+" ist in den Kreis der Magier "+
               "aufgenommen worden!\n");
     "secure/master"->renew_player_object(who);
     return 1;
@@ -762,7 +763,7 @@
   //
   if (IS_WIZARD(who))
   {
-    domains=(string*)"secure/master"->get_domain_homes(getuid(who));
+    domains=({string*})"secure/master"->get_domain_homes(getuid(who));
     if (!domains || !pointerp(domains) || !sizeof(domains))
     {
       Say(who->name(WER)+" gehoert noch keiner Region an und kann daher noch "+
@@ -771,7 +772,7 @@
                 "an und komm\ndann wieder!\n");
       return 0;
     }
-    ret=(int)"secure/master"->advance_wizlevel(geteuid(who),25);
+    ret=({int})"secure/master"->advance_wizlevel(geteuid(who),25);
     if(ret>0)
     {
       shout(who->name(WER)+" arbeitet jetzt an einer Region mit!\n");
@@ -793,13 +794,13 @@
       Say("Nur ein Erzmagier kann "+who->name(WEN)+" zum \"richtigen\" Magier machen!\n");
       return 0;
     }
-    ret=(int)"secure/master"->advance_wizlevel(geteuid(who),20);
+    ret=({int})"secure/master"->advance_wizlevel(geteuid(who),20);
     if (ret<=0)
     {
       say("Merlin: error "+ret+"\n");
       write("Merlin: error "+ret+"\n");
     }
-    string wizname = (string)who->query_real_name();
+    string wizname = ({string})who->query_real_name();
     "secure/master"->renew_player_object(who);
     // Fehlerteufel geben
     call_out(#'GibFehlerteufel,4,find_player(wizname));
@@ -823,7 +824,7 @@
   // Er schlaegt fehl, wenn der Vertrag der Clone einer alten BP ist.
   if (!(vertrag=present_clone("/obj/vertrag",who)) ||
       object_name(blueprint(vertrag))!="/obj/vertrag" ||
-      !((int)vertrag->is_unterschrieben()) )
+      !(vertrag->is_unterschrieben()) )
   {
     Write("Du hast ja gar keinen unterschriebenen Vertrag bei Dir. Besorg Dir "+
               "einen Ver-\ntrag, unterschreibe ihn und komm dann wieder!\n");
@@ -841,11 +842,12 @@
   }
   if (!QueryBedingungen(who,"Magier"))
     return 0;
-  ret=(int)"secure/master"->advance_wizlevel(geteuid(who),15);
+  ret=({int})"secure/master"->advance_wizlevel(geteuid(who),15);
   if (ret>0)
   {
     PostMagier(capitalize(getuid(who)),
-        capitalize(secure_euid()),(int)who->QueryProp(P_GENDER));
+               capitalize(secure_euid()),
+               who->QueryProp(P_GENDER));
     write_file("/log/SPONSOR",dtime(time())+": "+capitalize(getuid(promoter))+" macht "+
              who->name(WER)+" zum Learner.\n");
     write(who->name(WER)+" ist in den Kreis der Magier aufgenommen worden!\n");
@@ -913,8 +915,8 @@
   "secure/master"->renew_player_object(player);
   player = find_player(playername);
   text = sprintf(" ist jetzt ein%s Seher%s!\n",
-    (((int)player->QueryProp(P_GENDER))==2?"e":""),
-    (((int)player->QueryProp(P_GENDER))==2?"in":""));
+    ((player->QueryProp(P_GENDER))==2?"e":""),
+    ((player->QueryProp(P_GENDER))==2?"in":""));
   write("Merlin ruft: "+capitalize(playername)+text);
   shout("Merlin ruft: "+capitalize(playername)+text);
   PostSeher(capitalize(playername),(int)player->QueryProp(P_GENDER));
@@ -969,7 +971,7 @@
             break_string(sprintf("Das ist eine grosse Freude. %s hat sich "
      "tapfer durch das "MUDNAME" geschlagen und mittlerweile alle "
      "Anforderungen erfuellt, um %s zu werden.",                                  
-     plname, ((int)player->QueryProp(P_GENDER))==1?"Seher":"Seherin"),
+     plname, (player->QueryProp(P_GENDER))==1?"Seher":"Seherin"),
               78, "Merlin sagt: "));
 
   call_out("seer_sequenz2", 4, player, plname);
@@ -1046,7 +1048,7 @@
       return;
   }
   // Ausgaenge durchsuchen
-  mapping ex=(mapping)environment()->QueryProp(P_EXITS);
+  mapping ex=({mapping})environment()->QueryProp(P_EXITS);
   if (!mappingp(ex))
     return;
   mapping rooms = m_allocate(sizeof(ex));
@@ -1105,7 +1107,7 @@
   for (i = 0; i < sizeof(inv); i++)
   {
     string sh;
-    sh = (string)inv[i]->short();
+    sh = ({string})inv[i]->short();
     if (iswiz)
     {
       if (sh) sh = sh[0..<2] + " ["+object_name(inv[i])+"]\n";
@@ -1151,7 +1153,7 @@
     printf("%s ist schon Stufe %d.\n",capitalize(wen),l);
         return 1;
   }
-  ret=(int)"secure/master"->advance_wizlevel(wen,stufe);
+  ret=({int})"secure/master"->advance_wizlevel(wen,stufe);
   if (ret<=0)
     printf("Errorcode %d\n",ret);
   else
@@ -1192,7 +1194,7 @@
     return 0;
   }
 
-  str=(string)this_interactive()->_unparsed_args();
+  str=({string})this_interactive()->_unparsed_args();
   switch (query_verb())
   {
     case "gilde":
@@ -1207,7 +1209,7 @@
   if (query_verb()!="merlin")
     return 0;
   delay=1;
-  mapping exits=(mapping)environment()->QueryProp(P_EXITS);
+  mapping exits=({mapping})environment()->QueryProp(P_EXITS);
   if (!str||str=="")
   {
     printf(environment()->int_short(ME,ME));
@@ -1265,7 +1267,7 @@
     move(object_name(ob),0);
     return 1;
   }
-  path=(mixed)master()->make_path_absolute(dest);
+  path = ({string})master()->make_path_absolute(dest);
   ret=catch(load_object(path);publish);
   if (ret && file_size(path)<0)
   {
diff --git a/secure/scoremaster.c b/secure/scoremaster.c
index 576a4b9..af40a93 100644
--- a/secure/scoremaster.c
+++ b/secure/scoremaster.c
@@ -226,7 +226,7 @@
   i=sizeof(whop=m_indices(to_change))-1;
   while (i>=0 && get_eval_cost()>100000)
   {
-    ek = (string)(MASTER->query_ek(who=whop[i]) || "");
+    ek = ({string})(MASTER->query_ek(who=whop[i]) || "");
     for (j=sizeof(what=to_change[who])-1;j>=0;j--) {
       if ((value=what[j])>0) {
     // Vergabestatistik hochzaehlen.
@@ -694,7 +694,7 @@
 // filtert alle Eintraege aus dem Bitstring heraus, die fuer
 // ausgetragene/inaktive EKs stehen.
 public string QueryKills(string pl) {
-  string res = (string)MASTER->query_ek(pl) || "";
+  string res = ({string})MASTER->query_ek(pl) || "";
   // vergleichen mit den aktiven EKs aus active_eks und nur jene Bits
   // zurueckliefern, die in beiden Strings gesetzt sind.
   return and_bits(res,active_eks);
@@ -931,7 +931,7 @@
       return ([]);
   }
   // alle EKs, die der Spieler hat
-  string eks = (string)master()->query_ek(getuid(player));
+  string eks = ({string})master()->query_ek(getuid(player));
   // als Tips kommen alle in Frage, die er nicht hat, vor dem Invertieren muss
   // aber sichergestellt werden, dass eks min. so lang ist wie active_eks, da
   // die Invertierung ja z.B. nur EKs 0-1700 beruecksichtigt, wenn 1700 der
@@ -947,7 +947,7 @@
   // jetzt invertieren
   string non_eks = invert_bits(eks);
   // jetzt vorhande EK-Tips ausfiltern. Im Prinzip gleiches Spiel wie oben.
-  string ektips = (string)master()->query_ektips(getuid(player));
+  string ektips = ({string})master()->query_ektips(getuid(player));
   // jetzt alle nicht als Tip vergebenen NPC ermitteln, vor dem Invertieren
   // wieder Laenge angleichen...
   ektips = invert_bits(clear_bit(set_bit(ektips, lb), lb));
@@ -1196,9 +1196,9 @@
   if (!stringp(player))
     return 0;
 
-  string tipstr=(string)master()->query_ektips(player);
+  string tipstr = ({string})master()->query_ektips(player);
   // jetzt EK-Tips ausfiltern, die erledigt sind. Dazu EK-Liste holen...
-  string eks=(string)master()->query_ek(player);
+  string eks = ({string})master()->query_ek(player);
   // als Tips kommen alle in Frage, die er nicht hat, vor dem Invertieren muss
   // aber sichergestellt werden, dass eks min. so lang ist wie tipstr, da
   // die Invertierung ja z.B. nur EKs 0-1700 beruecksichtigt, wenn 1700 der
@@ -1250,7 +1250,7 @@
   if(!player || !query_once_interactive(player))    
       return 0;
   
-  lvl=(int)player->QueryProp(P_LEVEL);
+  lvl = ({int})player->QueryProp(P_LEVEL);
   numElegible=0;
   i=sizeof(EKTIPS_LEVEL_LIMITS)-1;
 
@@ -1261,7 +1261,7 @@
       if(lvl>=EKTIPS_LEVEL_LIMITS[i]) numElegible++;
   }
 
-  tips=(string)MASTER->query_ektips(getuid(player)) || "";
+  tips = ({string})MASTER->query_ektips(getuid(player)) || "";
   // inaktive EKs ausfiltern.
   tips = and_bits(tips, active_eks);
   // und Gesamtzahl an Tips zaehlen. Hier werden erledigte Tips explizit nicht
@@ -1290,7 +1290,7 @@
 
   tmp=m_indices(free);
 
-  ektip=(string)MASTER->query_ektips(pl) || "";
+  ektip = ({string})MASTER->query_ektips(pl) || "";
  
   foreach(int i: EKTIPS_MAX_RETRY) {
       index=random(sizeof(tmp));
@@ -1362,7 +1362,7 @@
   int changed, changed2; 
   
   // EKs pruefen
-  string eks=(string)master()->query_ek(pl) || "";
+  string eks = ({string})master()->query_ek(pl) || "";
   string *opfer=allocate( (sizeof(eks)*6)+1, "");
   int p=-1;
   while ((p=next_bit(eks,p)) != -1) {
@@ -1389,7 +1389,7 @@
     }
   }
   // und noch die Ek-Tips...
-  string ektips = (string)master()->query_ektips(pl) || "";
+  string ektips = ({string})master()->query_ektips(pl) || "";
   p = -1;
   while ((p=next_bit(ektips,p)) != -1) {
     if (!member(by_num, p)) {
@@ -1428,9 +1428,9 @@
 
   if (!mappingp(allplayer)) {
       foreach(string key: npcs) {
-  npcs[key,NPC_COUNT]=0;
+        npcs[key,NPC_COUNT]=0;
       }
-      allplayer=(mapping)master()->get_all_players();
+      allplayer = ({mapping})master()->get_all_players();
       rm(WERKILLTWEN);
       call_out(#'check_all_player,2,allplayer);
       return;
diff --git a/std/util/pl_iterator.c b/std/util/pl_iterator.c
index 555a75e..8c87baf 100644
--- a/std/util/pl_iterator.c
+++ b/std/util/pl_iterator.c
@@ -45,8 +45,9 @@
 protected int start_player_check(closure check_cl, closure finish_cl, int res,
                              varargs mixed extra)
 {
+  // Reservierte Ticks, pausieren, wenn weniger.
   res ||= 1250000;
-  mapping allplayer=(mapping)master()->get_all_players();
+  mapping allplayer=master()->get_all_players();
   call_out(#'check_all_player,2, allplayer, check_cl, finish_cl, res, extra...);
   return 1;
 }
diff --git a/sys/player/fao.h b/sys/player/fao.h
index 8341a84..8864749 100644
--- a/sys/player/fao.h
+++ b/sys/player/fao.h
@@ -37,11 +37,11 @@
 #define FAO_MAY_USE_PORTAL(x,p)   (intp(p) && ((FAO_HAS_PORTALS1_GIFT(x) && \
         member(FAO_PORTALS1_LIST,p)!=-1 )||(FAO_HAS_PORTALS2_GIFT(x) && \
         member(FAO_PORTALS2_LIST,p)!=-1) ) && \
-    (pointerp((int*)x->QueryProp(P_FAO_PORTALS)) \
-     && member((int*)x->QueryProp(P_FAO_PORTALS),p)!=-1) )
+    (pointerp(({int*})x->QueryProp(P_FAO_PORTALS)) \
+     && member(({int*})x->QueryProp(P_FAO_PORTALS),p)!=-1) )
 #define FAO_HAS_SEER_PORTAL_GIFT(x)     (x!=0 && query_once_interactive(x) \
-    && ((int)x->QueryProp(P_FAO)&FAO_SEER_PORTAL)!=0)
+    && (({int})x->QueryProp(P_FAO)&FAO_SEER_PORTAL)!=0)
 #define FAO_IS_MEMBER(x) (x!=0 && query_once_interactive(x) \
-    && ((int)x->QueryProp(P_FAO)&FAO_MEMBER)!=0)
+    && (({int})x->QueryProp(P_FAO)&FAO_MEMBER)!=0)
 #endif // __PLAYER_FAO_H__