SchneeSniperLevel Geschrieben 7. April 2011 Melden Share Geschrieben 7. April 2011 Ich will ein kleines FliegerGame machen. Aber schon nach einpaar stunden kam der erste Rückschlag...... Ich hatte das Move-Script schon hinter mir und wollte einmal das shoot-Script programmieren. Das sah dann so aus: var schuss : Transform; var schussstaerke: float; function Update () { if(Input.GetButtonDown("Jump")) { var lol = Instantiate(schuss, transform.position, Quaternion.identity); lol.rigidbody.AddForce(transform.forward * schussstaerke); } } Nichts Kompliziertes... Nachher habe ich auch ein neues Prefab erstellt mit den Inhalt einer Sphere die den Rigidbody drauf hatte. Das neue Prefab habe ich zu der schuss variable getan und hoffte es Läufe. Da hatte ich mich schön getäuscht. Es lief eigentlich schon aber die Kugel hatte keine Kraft, die sie haben sollte. Sie klebte einfach am SpamPoint!!! was habe ich falsch getan??? (dieses Projekt ist mein erstes und will so fiel wie möglichst daraus lernen!) Liebe Grüsse SchneeSniperLevel.... Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
Albion Geschrieben 7. April 2011 Melden Share Geschrieben 7. April 2011 var schuss : Rigidbody; var schussstaerke: float; function Update () { if (Input.GetButtonDown("Jump")) { var lol : Rigidbody; lol = Instantiate(schuss, transform.position, transform.rotation); lol.velocity = transform.TransformDirection (Vector3.forward * schussstaerke); } } Würds so machen Achja, sag der Kugel doch am besten noch das sie sich nach ner bestimmten Zeit dann vom Acker macht. Mann hat sonst so viele davon rumliegen... lol.timeoutDestructor = 15; Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
SchneeSniperLevel Geschrieben 7. April 2011 Autor Melden Share Geschrieben 7. April 2011 Habe ich ja aber in eine eigenen Script... function Start () { Destroy(this.gameObject, 5); } Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
Sascha Geschrieben 8. April 2011 Melden Share Geschrieben 8. April 2011 AddForce hat einen wahlweisen zweiten Parameter: rigidbody.AddForce(direction, ForceMode.Impulse); Einfach Impulse eingeben, schon ist die Beschleunigung ein Impuls und kein "Dauerdrücken", welches wesentlich schwächer ausfällt. Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
SchneeSniperLevel Geschrieben 8. April 2011 Autor Melden Share Geschrieben 8. April 2011 Ahhh soo schön..... und das Script läuft. Danke an euch zweien!!!! Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
Recommended Posts
Archiviert
Dieses Thema ist jetzt archiviert und für weitere Antworten gesperrt.