Thema: Aufgenommene Objekte töten Sa Dez 05, 2009 8:28 pm
Ich mache als Objekt gerade eine Stachelsäule. Die bewegt sich auf und ab und tötet bei Kontakt Clonks. Dabei bin ich auf die Idee gekommen, dass die Säule nahe Clonks einfach aufnehmen und töten könnte und ich so einen Timer erspare. Wie mache ich, dass alle aufgenommenen Objekte getötet werden?
der kleine boss Vizeadmiral
Alter : 28 Ort : In einem gaaaaanz kleinen Kaff in Austria Anmeldedatum : 21.03.09
Also die Säule hat nen Entrancebereich und dann muss man irgendwie abfragen ob die Säule grade was aufgenommen hat. Noch nebenbei: Wie schafft man ne Konstante Geschwindigkeit? Nach oben geht die Stachelsäule nämlich nicht. Hier mal der Skript
Ist denn die Collection-Methode besser als ein normaler Timer?
Ja wenn er tausende von diesen Stachelsäuseln macht dann lohnt sich das schon. Außerdem finde ich die Idee clever.
Code:
func RejectCollect(id idObj, object pObj){ Kill(pObj); // Kill ist sicherer return(1); // Es soll ja nicht wirklich eingesammelt werden sondern nur sterben. }
Und natürlich musst du in der DefCore das Collection=-x,-y,z,a Rechteck passend setzten.
eigentlich könnte man sich idObj ja sparen, wobei es vielleicht intern irgendwie gebraucht wird. Aber das kann ich mir nicht vorstellen, dann wärs ja return(_inherited)
Eben jetzt muss ich mal das Objekt ausprobieren ob es tut. Aber wenn es rauf und runter geht dann bewegt es sich total komisch. Es geht ja nicht mal ganz rauf
func RejectCollect(id idObj, object pObj){ Kill(pObj); // Kill ist sicherer return(1); // Es soll ja nicht wirklich eingesammelt werden sondern nur sterben. }
.......Also wenn ich durch laufe bringt es meinen Clonk nicht um erst wenn ich in die mitte springe. Was ist das Problem.
Zusammengefasst: Wenn ich in durch laufe erhalte ich keinen Schaden aber wenn ich in die Mitte springe Schadet es mir nur ein bisschen aber kein KO Schlag. Außerdem will ich wenn man irgendwas von der Stachelsäule berührt das es einen KO Treffer gibt.
NilsZ Admiral
Ort : Mein Rekord: 27 Punkte! :D Anmeldedatum : 07.08.08
Also vielleicht musst du in der DefCore das Collection Rechteck größer bestimmen. Was dein auf und ab angeht, da würde ich das Prinzip vom Vogel nutzen. Mit ner Actmap, in Defcore Floatskill, und dann per Script SetAction+SetYDir. Warum du aber nur wenig Schaden bekommst weiß ich auch nicht. Kill sollte normal immer töten?...
Bowserkoopa Staatsrat
Alter : 30 Anmeldedatum : 21.12.08
Thema: Re: Aufgenommene Objekte töten Mi Dez 09, 2009 10:04 am
ist als category c4d_object und daher wird durch die bewegung der säule geschadet. dann scheint die säule niemanden aufzunehmen :S kann übrigens nicht großschreiben, weil ich ne leichte verletzung an der hand habe
NilsZ Admiral
Ort : Mein Rekord: 27 Punkte! :D Anmeldedatum : 07.08.08
Die Säule braucht ein entsprechendes Collection-Rechteck, aber iin der DefCore des Clonk muss Collectible=1 stehen, sonst kann er nicht eingesammelt werden.
@Bowserkoopa: Mögest du bald wieder groß schreiben können.
Eine Timer zahl kann nicht "falsch" oder "richtig" sein..Wenn du aber schreibst Timer=200 dann wird nur 5,55.. te Sekunde der Timer aufgerufen (wenn ich mich nicht vgerechnet habe) und wenn du aber sehr schnell den Clonk überprüfen willst dann soltest du den Timer niedriger setzen.