Seite 2 von 2 ErsteErste 12
Ergebnis 21 bis 27 von 27

Thema: Events pro Map/ Heldenbewegungs-TerrainID-skript RPGM2003

  1. #21
    EDIT: Hier stand ganz viel murks! ^^


    BDraw, jetzt aber: Du bist ein Gott!!!
    Du hast mir arthritische Finger erspart! Man ey, das mit der Fork hab ich in meiner Hektik einfach übersehen :/

    Es funktioniert jetzt wunderbar! Und für alle die den Code auch nochmal in seiner Reinform brauchen hier im Spoiler verpackt:


    Geändert von Mr.Räbbit (14.01.2012 um 15:04 Uhr)

  2. #22
    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:
    Code:
    x1 = Held-X
    y1 = Held-Y
    Key Input Processing (nur Cursortasten)
    x2 = Held-X
    y2 = Held-Y
    if x1 = x2
    	if y1 = y2
    		Reaktion
    		Jump: Label 1
    	end
    end
    Label 1
    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.

  3. #23
    @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 :]

  4. #24
    @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. ^^



    Geändert von BDraw (14.01.2012 um 15:24 Uhr)

  5. #25
    @BDraw: Das stand in meinem editierten Text, ich hatte ein paar wilde Verschwörungstheorien zur Fehlerquelle geäußert ^^

    Und zur Performance, das Event ist das einzige PP auf der Map in sofern mache ich mir da jetzt keine großen Sorgen.

  6. #26
    @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.

    Code:
    x1 = Held-X
    y1 = Held-Y
    t_neu = Set Terrain ID (x1, y1)
    if t_neu != t_alt
    	Reaktion abhängig vom Terrain
    	t_alt = t_neu
    end
    Wait 0,1 (falls die Geschwindigkeit nie unter "Normal" fällt, sollte das kein Problem sein)

    Geändert von Kelven (14.01.2012 um 15:38 Uhr)

  7. #27
    @ Kelven:

    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!

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •