Alter : 30 Ort : Anywhere you can imagine.... Anmeldedatum : 20.09.09
Thema: "Steuerung" im Haus Di März 23, 2010 2:47 pm
Hi, Also, ich hab ein Gebäude gemacht, dass Objekt A in Objekt B und C umwandeln soll. Alles schön und gut, aber wie mache ich das im Script, dass wenn man Special1 drückt, ein Menü aufgeht, aber nur wenn man in dem Haus ist. Ich habs schon im Haus-Script mit "ControlSpecial1" probiert, aber das klappt nicht. Kann mir wer helfen?
Bowserkoopa Staatsrat
Alter : 30 Anmeldedatum : 21.12.08
Thema: Re: "Steuerung" im Haus Di März 23, 2010 2:53 pm
Du musst ein Appedto an den Clonk machen, der überprüft, ob er im besagten Haus ist und ControlSpecial1 macht. inherited aber nicht vergessen!
Roflord Oberst
Alter : 30 Ort : Anywhere you can imagine.... Anmeldedatum : 20.09.09
Thema: Re: "Steuerung" im Haus Di März 23, 2010 3:05 pm
Ok, danke, ich probier's. Aber gibts nicht ne Möglichkeit, das "von Haus aus" zu machen?
Gamer Staatsrat
Alter : 28 Ort : In einem kleinen Dorf in Unterfranken (Bayern) Anmeldedatum : 10.02.09
Thema: Re: "Steuerung" im Haus Di März 23, 2010 4:48 pm
Mhm normalerweiße müsste doch func ContainedSpecial1() gehen? Ich glaub dein Fehler war das du ControlSpecial1 geschreiben hast aber da es ja im Haus ist muss das ein Contained stehen.
Roflord Oberst
Alter : 30 Ort : Anywhere you can imagine.... Anmeldedatum : 20.09.09
Thema: Re: "Steuerung" im Haus Di März 23, 2010 7:46 pm
Hab ich probiert, geht aber auch nicht....
Bowserkoopa Staatsrat
Alter : 30 Anmeldedatum : 21.12.08
Thema: Re: "Steuerung" im Haus Di März 23, 2010 8:18 pm
Könntest du vlt. zeigen, was du bis jetzt hast? Dann könnte man besser helfen und dein Problem lösen
Extremclonk Staatsrat
Ort : Am Anti-Spam-Limes Anmeldedatum : 19.01.09
Thema: Re: "Steuerung" im Haus Di März 23, 2010 9:03 pm
Es heißt NUR Special, Special1 wird nicht aufgerufen wenn man die Taste drückt.
Alter : 30 Ort : Anywhere you can imagine.... Anmeldedatum : 20.09.09
Thema: Re: "Steuerung" im Haus Mi März 24, 2010 1:12 pm
Hier ist der Code der Hütte. Und bitte fragt mich nicht, wie oder wieso ich aus Metall Erde und Sand machen will :
Code:
/*-- Metallhütte --*/
#strict
#include DOOR #include BAS4
global func ConainedSpecial(object pClonk){
CreateMenu(MTHT,pClonk,0,C4MN_Extra_None,"Mache aus Metall....",0,C4MN_Style_Normal,0); AddMenuItem("Erde und Sand","MakeEarthAndSand",ERTH,pClonk,0,0,"Macht aus 1 Metall:2 Erde + 3 Sand");
Außerdem ist mir unverständlich warum da global func steht, nur func reicht aus, ich glaube nicht das eine global func in ein Gebäude sollte.
Roflord Oberst
Alter : 30 Ort : Anywhere you can imagine.... Anmeldedatum : 20.09.09
Thema: Re: "Steuerung" im Haus Mi März 24, 2010 9:22 pm
So, danke! Das Menp geht auf, usw. Aber da ist auch schon das neue Problem: Er sagt immer, es wäre kein Metall drinne, obwohl welches da ist. Hier nochmal das Script:
Code:
/*-- Stahlhütte --*/
#strict
#include DOOR #include BAS4
global func ContainedSpecial(object pClonk){
CreateMenu(MTHT,pClonk,0,C4MN_Extra_None,"Mache aus Metall....",0,C4MN_Style_Normal,0); AddMenuItem("Erde und Sand","MakeEarthAndSand",ERTH,pClonk,0,0,"Macht aus 1 Metall:2 Erde + 3 Sand");
Thema: Re: "Steuerung" im Haus Mi März 24, 2010 9:40 pm
Du hast
Code:
if(FindContents(METL, this()) == true))
geschrieben. FindContents gibt aber keinen integer (= eine Zahl), sondern ein Objekt zurück. "true" ist ja dasselbe wie 1 nur halt anders geschrieben. Du vergleichst nun ein Objekt mit einer Zahl, da kann nur false rauskommen. Es ist viel einfacher. Du kannst einfach
Code:
if(FindContents(METL, this()))
schreiben. Denn die if-Bedingung muss nur ungleich Null sein und ein Objekt wird als ungleich Null gewertet.
Roflord Oberst
Alter : 30 Ort : Anywhere you can imagine.... Anmeldedatum : 20.09.09
Thema: Re: "Steuerung" im Haus Mi März 24, 2010 9:42 pm