Ne, ich hab's mal eben getestet. Die Terrain-ID gilt für alle Elemente vom Autotile. Sonst würde es auch wenig sinnvoll sein, dem überhaupt eine ID zuzuweisen.
Irgendwie bin ich beim Script skeptisch. Du fragst die Heldenposition ab und nach einem Wait 0,0 nochmal. Eigentlich müsstest du die Heldenposition aber nur nach jeder Bewegung abfragen. Vielleicht wäre es so besser:
Pseudo-Code:
Problematisch könnte nur sein, dass die Tastenabfrage vor der Bewegung stattfindet und man deswegen ein Wait bräuchte, das an die Bewegungsgeschwindigkeit angepasst ist.
@Kelven: Also für meine Zwecke funktioniert es zumindest Bestens, es ist ja eigentlich auch eher ein Weltkarten-Reiseskript, um verschiedenste Events zu aktivieren, das Terrain abzufragen und anzufragen, ob der Held sich gerade gerührt hat oder nicht.
Ich Danke Euch allen für Eure Antworten, Ihr habt mir alle seeeehr viel Arbeit erspart :]
--
"Gib einem Mann Feuer, und er hat es einen Tag lang warm. Steck ihn in Brand, und er hat es warm für den Rest seines Lebens"
@Kelven:
Worauf du mit dem Autotile hinauswillst, ist mir noch nicht ganz klar...
Aber mit der Abfrage, das stimmt schon, 100% vertraue ich dem 0,0-Wait auch nicht. Aber solange der Held nicht so schnell ist, dass er kürzer als 0,0 braucht um von Feld zu Feld zu kommen, dürfte da eigtl. nichts passieren. Einzig bei der Performance bin ich skeptisch, andererseits dürfte es relativ egal sein, ob man ne Taste abfragt oder Koordinaten vergleicht. Weswegen ich das mit der Tastenabfrage ungerne mache, ist, dass man das Script bei Sequenzen oder allgemein Bewegungen, die per Move Event getätigt werden, dann vergessen kann.
Danke für den Tipp aber mit der Abfrage, das ist echt einfacher. ^^
@BDraw
Mit der Tastenabfrage müsste die Performance besser sein (falls es mit der überhaupt Probleme gibt), weil der Prozess ja immer auf die Tastenabfrage wartet und wenn der Spieler gerade nichts drückt, passiert auch nichts. Nur bei gedrückter Taste könnte es problematisch werden, vermutlich bräuchte man noch ein Wait hinter der Abfrage. Ich weiß aber auch gar nicht, ob eine gedrückte Taste überhaupt Key Input Processing mehrmals auslöst.
Edit:
Nur so aus wissenschaftlicher Neugier hab ich überlegt, ob man die Methode noch vereinfachen könnte. Ich hab das nicht ausgetestet, aber müsste es so nicht auch gehen? Falls ich nicht missverstanden habe was die alte Methode machen soll. Man würde dann sogar eine Variable sparen. Allerdings müsste man die Variable für das alte Terrain wohl vorher initialisieren.
Prinzipiell würde das auf jeden Fall funktionieren, allerdings ging es bei dem Skript ja gerade darum (oder unter anderem), dass sich die Heldengeschwindigkeit je nach Terrain verändert. Lässt man diesen Punkt aber außer acht, ist es eine gute,schlankere Version des Codes!
--
"Gib einem Mann Feuer, und er hat es einen Tag lang warm. Steck ihn in Brand, und er hat es warm für den Rest seines Lebens"