Thema: Variable ist immer Null Sa Apr 11, 2009 4:56 pm
Hallo zusammen ich habe folgendes Problem: Ich will das mein Clonk auf Special2 eine Pistole zieht und sie wenn er eine in der Hand hat auch wieder wegpackt. Dies funktionert ausgezeichnet. Allerdings will ich auch das der Munitionsstand beim wegpacken gespeichert wird und beim ziehen wieder in die Pistole gepackt wird. Script:
Code:
protected func ControlSpecial2() { if(FindContents(CCDE,0)) { var pistol = FindContents(CCDE,0); var muni = GetAmmo(STAM,pistol); pistol->RemoveObject(); return(1); }
{ var gun = CreateContents(CCDE,0,1); gun->DoAmmo(STAM,muni); } }
Die Pistole wir jedoch nicht geladen. Wenn ich sie wider ziehe sind immer null Schuss drin egal wie viel Schuss vorher drin waren. Die muni Variable ist immer null oder existiert nicht. Errors gibt es keine.
Umezawa Feldmarschall
Alter : 29 Anmeldedatum : 30.12.08
Thema: Re: Variable ist immer Null Sa Apr 11, 2009 5:07 pm
muni muss als Local deklariert sein, sonst wird sie an Funktionsende gelöscht
Gamer Staatsrat
Alter : 28 Ort : In einem kleinen Dorf in Unterfranken (Bayern) Anmeldedatum : 10.02.09
Thema: Re: Variable ist immer Null Sa Apr 11, 2009 5:09 pm
Ja, oder am Anfang des scripts als "static" aber gich glaube "local" wäre besser. Ca so: #strict local pistol; local muni; func Initialize(){ pistol = ... muni = ... }
Extremclonk Staatsrat
Ort : Am Anti-Spam-Limes Anmeldedatum : 19.01.09
Thema: Re: Variable ist immer Null Sa Apr 11, 2009 5:20 pm
So was hatte ich schon vermutet das es die Variable löscht und ich i-was mit local machen muss aber ich kenn mich net aus und wusste net das ich die locals am Anfang definieren muss. Funzt jetzt. THANKS AT ALL!!
Gamer Staatsrat
Alter : 28 Ort : In einem kleinen Dorf in Unterfranken (Bayern) Anmeldedatum : 10.02.09
Thema: Re: Variable ist immer Null Sa Apr 11, 2009 5:40 pm