Thema: Re: Gegenstand erscheint durch Sprung Mi Feb 11, 2009 2:21 pm
Also es sagt ich sollte nach CreateObject ein , oder ) setzen und das noch vor dem (PLZ1). Das wirkt echt komisch.
Simsi Staatssekretär
Alter : 31 Ort : Vaihingen/Enz Anmeldedatum : 30.03.08
Thema: Re: Gegenstand erscheint durch Sprung Mi Feb 11, 2009 4:07 pm
du hast einfach das { erst nahc dem if() geschrieben, das muss direkt hinter Timer()
Bowserkoopa Staatsrat
Alter : 30 Anmeldedatum : 21.12.08
Thema: Re: Gegenstand erscheint durch Sprung Mi Feb 11, 2009 8:55 pm
Aber der Block tut immer noch nicht. Soll ich ihn mal auf den CNDG Server laden? Das mit dem { hinter der Klammer, hatte ich schon vorher gemacht, aber die Engine glaubt CreateObject(PLZ1) ist ein identifier...
EDIT2: Ich habe den Fehler behoben, aber jetzt erscheint immer ein Pilz im 36 Frames abstand?
Bowserkoopa Staatsrat
Alter : 30 Anmeldedatum : 21.12.08
Thema: Re: Gegenstand erscheint durch Sprung Sa Feb 14, 2009 3:31 pm
Weiß keiner wie ich es unterdrücken kann, dass alle 36 Frames ein Pilz kommt? Es erzeugt immer sobald er irgendwo einen Clonk findet
Gamer Staatsrat
Alter : 28 Ort : In einem kleinen Dorf in Unterfranken (Bayern) Anmeldedatum : 10.02.09
Thema: Re: Gegenstand erscheint durch Sprung Sa Feb 14, 2009 3:46 pm
Denk daran, das Objekt macht das, was du im Script schreibst. Wenn du einfach "if(ObjectDistance(FindObject(CLNK))" (oder so) stehen hast. produziert er fröhlich Pilze. Mach doch mal ein "else" rein. Wenn es nähmlich keinen Clonk mehr findet, machst du
Code:
else return(1);
oder sowas rein. außerdem gbit es auch noch den Befehl "break" und "continue"
Bowserkoopa Staatsrat
Alter : 30 Anmeldedatum : 21.12.08
Thema: Re: Gegenstand erscheint durch Sprung Sa Feb 14, 2009 5:15 pm
Jetzt habe ich ein else eingebaut, aber er erzeugt keine Pilze mehr sonder startet immer die Aktion "Used" Aus irgendeinem Grund sucht er immer die gesamte Karte nach clonks ab, obwohl das Objekt nur 17x16 Pixel groß ist. Es soll nur checken, ob sich jemand unter ihm befindet und dann einen Pilz erzeugen.
Liech Fregattenkapitän
Alter : 33 Anmeldedatum : 02.02.09
Thema: Re: Gegenstand erscheint durch Sprung Sa Feb 14, 2009 5:29 pm
Thema: Re: Gegenstand erscheint durch Sprung So Feb 15, 2009 7:26 pm
Ok, dass mit den Arrays habe ich jetzt auch verstanden. Nur wird das local Pilz immer nach 36 Frames abgezogen, was bedeutet man muss den Block immer im richtigen Moment erwischen. Außerdem habe ich das Skript so angepasst, dass es immer Items erzeugt, sobald sich jemand in einem Radius von 20 Pixel nähert, weil es nicht klappt, dass man es unten Berühren muss.
Code:
/*-- Block --*/
#strict
local Pilz;
func RandomID() { var a = [PLZ1, FBLU, PLZ4, PLZ3]; //IDs einsetzen return (a[Random(3)]); }
func Initialize() { SetAction("Wandel"); Pilz++;//wir tun ein pilz in den behälter ScheduleCall(0, "AddNewPilz", 500); return(1); }
func Timer() { if(!Pilz)return(1);
else{
//Tausch sachen wie ObjektBreite durch die jeweilige Objekteigenschaft aus var x = 17/2*-1;//der untere rechte objektrand var y = GetDefBottom();//der untere rechte objektrand var width = 17; var height = 11;//Clonkhöhe/2+1 if(FindObject2(Find_Distance(20), Find_OCF(OCF_CrewMember()))) { CreateObject(RandomID(),0,-8); SetAction("Used");} Pilz--; } }
Thema: Re: Gegenstand erscheint durch Sprung So Feb 15, 2009 8:50 pm
Zitat :
func Timer() { if(!Pilz)return(1);
else{
//Tausch sachen wie ObjektBreite durch die jeweilige Objekteigenschaft aus var x = 17/2*-1;//der untere rechte objektrand var y = GetDefBottom();//der untere rechte objektrand var width = 17; var height = 11;//Clonkhöhe/2+1 if(FindObject2(Find_Distance(20), Find_OCF(OCF_CrewMember()))) { CreateObject(RandomID(),0,-; SetAction("Used"); } //wird immer bei else ausgeführt Pilz--; } }