func Infantrie(){ iFrame=iFrame + 36; var x=(iFrame * 100 / (20*36)); //Prozent berechnen Message("%v",this(),x); if(x == 1){ //jetzt ist die zeit abgelaufen var pKI=CreateObject(__AI,GetX()+RandomX(-5,5),GetY(),GetOwner(this())); CreateContents(PWIP,pKI,1); } return(1); }
Nun, das Script an sich ist fehlerfrei, doch wenn ich dann im Menü auf "Infantrie-Squad" gehe und alle 36 Frames wird Infantrie aufgerufen, kommt dieser Error:
Zitat :
ERROR: '(' expected, but found end of file (eval in zzz halo wars.c4s\Baracke.c4d\Script.c:0:9)
Ich hab wirklich KEINE Ahnung was das zu bedeuten hat, ich hab Alle Klammern nochmmal nachgeschaut, finde aber keinen Fehler.. Hoffe ihr könnt mir helfen, Gamer
Extremclonk Staatsrat
Ort : Am Anti-Spam-Limes Anmeldedatum : 19.01.09
Thema: Re: Komischer Error Di Feb 16, 2010 4:54 pm
Im Fehler steht was von eval daher muss der Fehler irgendwo stecken, wo ein Befehl als String übergeben wird. Schauen wir mal bei AddMenuItem ist da doch was. Du übergibts hier als String "ProduceEinheit" und eval setzt dies in den Script "ProduceEinheit" um und will ihn ausführen. Dabei fällt ihm auf das da garkeine Funktionsklammern sind! Der Script hört einfach auf! Da denkt sich eval natürlich, geben wir gleich mal einen Error aus. Also mach hinter szCommand einfach Funktionsklammern.
Umezawa Feldmarschall
Alter : 29 Anmeldedatum : 30.12.08
Thema: Re: Komischer Error Di Feb 16, 2010 7:08 pm
Der Fehler liegt nicht dort, sondern in Schedule. AddMenuItem erwartet nur den Funktionsnamen, Schedule (welches übrigens intern eval aufruft) hingegen will das komplette Script sehen, also wie schon gesagt mit den Klammern.
Gamer Staatsrat
Alter : 28 Ort : In einem kleinen Dorf in Unterfranken (Bayern) Anmeldedatum : 10.02.09
Thema: Re: Komischer Error Di Feb 16, 2010 8:28 pm
Hm sollte ich dann also "ScheduleCall()" verwenden? Oder doch lieber mit Timer lösen?
Extremclonk Staatsrat
Ort : Am Anti-Spam-Limes Anmeldedatum : 19.01.09
Thema: Re: Komischer Error Di Feb 16, 2010 8:33 pm
Thema: Re: Komischer Error Di Feb 16, 2010 11:01 pm
Du könntest auch ScheduleCall nehmen, aber dann müsste noch das Objektparameter davor
Gamer Staatsrat
Alter : 28 Ort : In einem kleinen Dorf in Unterfranken (Bayern) Anmeldedatum : 10.02.09
Thema: Re: Komischer Error Mi Feb 17, 2010 8:10 pm
Danke Extremclonk, dein Script hat geholfen! Noch eine kleine Frage hätte ich da. Ist es möglich mit Schedule / ScheduleCall eine Funktion unendlich mal aufzurufen? Also iRepeat = ∞ Ich habe es schon mit -1 probiert, aber da wird meine Funktion NIE aufgerufen.
Toastbrot Kadett
Anmeldedatum : 10.03.09
Thema: Re: Komischer Error Mi Feb 17, 2010 11:59 pm
Das kann man entweder mit einem Effect lösen oder man lässt den/das/? Schedule eine Funktion aufrufen die einerseits den Gewünschten kram macht und anderseits einen neuen Schedule auslöst.