Frage zu Funktionen [erledigt]
Übersicht

![]() |
ElendilBetreff: Frage zu Funktionen [erledigt] |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hey,
Ich code zurzeit wieder eine neue Funktion für mein Spiel. In dieser benutze ich zwei Cubes, zwischen die die ausgewählte Figur immer hin und her pendelt. Nun zu meiner Frage: Ist es möglich diese Cubes lokal zu erstellen, damit ich gleichzeitig die funktion auch für eine andere figur aufrufen kann? Bisher hatte ich das immer so gelöst, dass ich am Anfang des Codes mehrere Globale Cubes mit unterschiedlichem Namen erstellt hatte. Damit bin ich aber ziemlich eingeschränkt un irgendwie finde ich ist diese Art das Problem zu lösen auch ziemlich unschön. Wenn ich in der Funktion nun aber die Cubes lokal erstellen lasse, wird das Spiel immer langsamer und langsamer. Hoffe mein Problem wurde deutlich Thx jetz schonmal =) LG Elendil |
||
- Zuletzt bearbeitet von Elendil am Sa, Mai 22, 2010 19:05, insgesamt einmal bearbeitet
![]() |
XeresModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
Alle Objekte die du erzeugst, bleiben so lange da, bis du sie mit FreeEntity![]() Sicher das du überhaupt Cubes brauchst? ![]() ![]() |
||
Win10 Prof.(x64)/Ubuntu 16.04|CPU 4x3Ghz (Intel i5-4590S)|RAM 8 GB|GeForce GTX 960
Wie man Fragen richtig stellt || "Es geht nicht" || Video-Tutorial: Sinus & Cosinus THERE IS NO FAIR. THERE IS NO JUSTICE. THERE IS JUST ME. (Death, Discworld) |
flashmaxel |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Wenn du die Entitys nicht direkt in der Funktion, in der du sie erstellst, wieder löschen kannst, weil sie noch eine Zeit danach weiter gebraucht werden, musst du irgendwie später wieder auf sie zugreifen können um sie zu löschen.
Das geht indem du sie in Variablen, Arrays oder Types speicherst oder ihnen Namen gibst die du später mit FindChild wieder finden kannst. In jedem Fall musst du dich um das löschen selbst kümmern. |
||
![]() |
Elendil |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hi,
danke für den Tipp mit den Pivots, hatte mit dem Befehl noch nicht soviel zu tun. Auch das mit dem löschen funktioniert jetzt. Ich habe jetzt aber leider noch ein Problem, hoff ihr könnt mir dabei helfen >.<.. Es gibt noch eine Variable, die verändert wird, sobald die Figur den Zielstandpunkt erreicht (standartmäßig ist dieser am Anfang auf 0) Wird der Zielstandpunkt erreicht, wird die Funktion beendet und die Variable wird auf 1 gesetzt. man kann nun mit einem anderen Bewegungsmodus (es gibt verschiedene) fortfahren. Für diese ist aber vorrausgesetzt, dass die Variable auf 1 ist. Hier liegt das Problem: Wenn ich die Variable als eine lokale in der Funktion erstelle, wird diese komischer Weise nicht mehr auf 1 umgestellt sondern bleibt immer auf 0. (In der Funktion habe ich die Variable so geschrieben: "local last_check"). Tut mir leid, falls mein Problem grad etwas sehr noobig is aber ich komm grad einfach nicht drauf >.<.. |
||
- Zuletzt bearbeitet von Elendil am Sa, Mai 22, 2010 17:30, insgesamt einmal bearbeitet
![]() |
Thunder |
![]() Antworten mit Zitat ![]() |
---|---|---|
Kann es sein, dass du die Variable auch global deklariert hast? Dann würde das was passiert auf deine Beschreibung passen. In der Funktion wird die lokale Variable verändert, aber die globale bleibt auf 0.
Ein bisschen Code ist immer gut. mfg Thunder PS: Der Modus (Einzahl), die Modi (Mehrzahl) |
||
Meine Sachen: https://bitbucket.org/chtisgit https://github.com/chtisgit |
![]() |
Elendil |
![]() Antworten mit Zitat ![]() |
---|---|---|
ou >.< gleichmal verbessert mit dem modus ^^ danke. wollte eig. erst schreiben das es mehrere modi gibt, habs dann aber doch anders geschrieben o_O
zum problem: die variable gibts nur als lokale. Habs jetzt aber lösen können: Ich überprüfe einfach nochmal an anderer Stelle, ob der Wert schon verändert wurde. Wenn nicht wird er spätestens da geändert. Ist nicht wirklich optimal, muss ich wohl nochmal die nächsten Tage checken wo der Fehler liegt, aber mein eigentliches Problem, welches ich am Anfang hatte wurde ja gelöst also markiere ich den Eintrag als erledigt. Hab auch nochmal einen Testlauf gemacht, mit 4 figuren die gleichzeitig laufen -> funktioniert alles genauso wie ichs mir vorgestellt hatte ![]() ![]() LG Elendil |
||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group