Ich will einen "realistischen" Clonk erstellen, also erreichen, dass, während er läuft, immer nach bestimmter Zeit die physicals gesenkt werden. Das gleiche, nur mit anderen Werten soll natürlich auch bei Klettern, Scwimmen etc. geschehen.
Ich hab da schon so nen Lösungsansatz, halt so ne while-Schleife, aber wirklich verstehen tu ich es nicht.
Noch was anderes: Während er steht oder in einem Gebäude ist, soll sich (auch mit ner while-Schleife oder so) das Leben regeneriert werden.
Extremclonk Staatsrat
Ort : Am Anti-Spam-Limes Anmeldedatum : 19.01.09
Thema: Re: Frage zu while So Aug 30, 2009 8:32 pm
Wenn du einen neuen Clonk machst kannst du in die Actions SartCalls einbauen die immer entsprechende Funktionen aufrufen wenn der Clonk die Action macht. Z.B. machst du bei Walk einnen StartCall rein den du "Brems" nennst. Dann erstellst du eine public func Brems.
Code:
public func Brems() { SetPhysical("Walk",GetPhysical("Walk",0,0)-1000); }
Das setzt die Physical "Walk" des Clonks alle 15 Frames um 1000 runter. Hoffe hab keine Fehler drin. Jetzt musst du noch in alle andere Actions sowas mit anderen Nahem und statt "Walk" eben z.B."Swim" machen.
Dann brauchst du noch eine Funktion die die Phisicals langsam wieder hoch setzt. Hierfür würde ich einen Effekt oder einen Timer machen und dann sowas in der Art:
Und in die Funktion dasselbe für die anderen Physicals halt auch.
Das ist jetzt nicht perfekt ich habs bloß schnell so zusammen geschrieben aber so in der Art wärs wohl sinnvoller als mit ner Schleife.
YoCed Vizeadmiral
Alter : 28 Ort : Rheine Anmeldedatum : 23.05.09
Thema: Re: Frage zu while Mo Aug 31, 2009 8:12 am
Also, ich weiß, scripts einfach übernehmen ist nichts, also hab ich mir noch mal alles angesehen:
Wie kommst du im ersten Teil auf die 15 Frames? GetPhysical("Walk",0,0,1) - In der Entwicklerhilfe steht, dass der 4.Parameter eine ID ist, kein Integer
Aber sonst hab ich alles verstanden
Gamer Staatsrat
Alter : 28 Ort : In einem kleinen Dorf in Unterfranken (Bayern) Anmeldedatum : 10.02.09
Thema: Re: Frage zu while Mo Aug 31, 2009 11:02 am
Vlt. dachte er das der 4te ein Objekt ist und "1" entspricht bei lokalem aufruf "this()", also das Objekt. Aber du hast recht es müsste ne ID da stehen, vlt. so etwa:
Code:
GetPyhsical("Walk",0,0,GetID(this));
Edit: Rechtschreibffehler behoben, kannst deinen beitrag wieder löschen YoCed
Zuletzt von Gamer am Mo Aug 31, 2009 11:47 am bearbeitet; insgesamt 2-mal bearbeitet
YoCed Vizeadmiral
Alter : 28 Ort : Rheine Anmeldedatum : 23.05.09
Thema: Re: Frage zu while Mo Aug 31, 2009 11:36 am
Ah, gut aber du hast da nen Rechtschreibfehler bei
Zitat :
GetID(this))
EDIT: Ich seh aber nichts vom berichtigtem Fehler
Extremclonk Staatsrat
Ort : Am Anti-Spam-Limes Anmeldedatum : 19.01.09
Thema: Re: Frage zu while Mo Aug 31, 2009 10:57 pm
Das mit den 15 Frames hab ich in der Actmap der Clonks nachgeguckt und was da stehen soll weiß ich net genau ich hab das gestern noch zusammen geschustert, wollt bloß mal so grob einen Ansatz geben, vermutlich hat Gamer recht.
Rouby Major
Alter : 36 Ort : Bremen Anmeldedatum : 02.09.09
Thema: Re: Frage zu while Mi Sep 02, 2009 2:57 pm
Am elegantesten wäre das mit Effekten zu lösen oder nicht?
Schau dir mal in der Doku das Kapitel mit Effekten an. Dort steht es relativ ausgiebig erklärt wie und warum man das macht ;-). Zur Not schau dir einfach einen der Standart-Zauber an, die arbeiten seit Endeavour / Rage auch alle mit Effekten.