@Rabu: Häh? Was ist falsch daran, wenn man Ruby sagt? Immerhin schreibt man auch Ruby oO Und es ist ja auch kein Rubyauszug, sondern das richtige Ruby welches durch zusätzliche Bibliotheken erweitert wurde.
Zitat von KD vor etlichen Monaten
Eigentlich sind für sowas Events am geeignetsten. Das einzige Problem bei Events ist, dass sie 4*4 Animationen haben. Wenn du davon nur eine brauchst, ist das natürlich unschön.
Ansonsten hab ich mal auf eine ähnliche Anfrage vor mehreren Monaten ein Script geschrieben:
Zitat von KD
Solche Zusatzfunktionen lassen sich leicht mit Ruby schreiben.
Hab hier mal ein solches Script geschrieben. Du musst nur den Scripteditor öffnen (F11), mit der rechten Maustaste auf Main klicken und dann auf Insert (es wird ein leeres Script eingefügt) und in das neue, leere Script den Code reinkopieren.
Danach kannst du die "Move with Map" Funktion bei Pictures einstellen. Es gibt zwei Funktionen: picture_move_with_map(id_des_pictures) lässt ein Picture fixieren. picture_move_with_screen(id_des_pictures) lässt ein Picture mit dem Helden mitbewegen (Standardeinstellung). Du musst diese Funktionen nur in den "Script"-Befehl eingeben. Z.B.
Lässt das Picture mit der ID 3 fixieren.
Könntest du mal genau erklären was das Script eigentlich macht? Ich hab etwas Schwierigkeiten so eine Schreibweise zu verstehen, weil du ja eine sehr komprimierten Syntax wählst. Bzw. kenne ich mich mit Ruby auch nicht so gut aus. Mich interessiert vor allem wieso das so einfach funktioniert wofür die einzelnen Methoden sind.
Wichtig an dem ganzen Script sind ja nur diese zwei Methoden x und y, die ich einfach aus der Game_Character Klasse rauskopiert habe, da ja Charaktersprites ebenfalls statisch auf der Map angezeigt werden. Wobei ich da zu sorglos kopiert habe, das +32 und +16 am Ende muss raus *wegstreich*
Ich hab das Script schnell mal in 5 Minuten geschrieben, als jemand im Quartier danach gefragt hat. Ich kann also jetzt nicht garantieren das es in jedem Fall funktioniert (dafür müsste ich mich nochmal eingehender mit den Pictures beschäftigen). Meine Logik ist, dass die Methoden x und y die Position des Pictures auf dem Bildschirm angeben. Normalerweise sind das Instanzvariablen, die beim show Picture Befehl gesetzt werden show picture x=100 y=200 setzt @x auf 100 und @y auf 200). Das Picture wird normalerweise auf die Position dieser Variablen angezeigt. Ich ersetze die Getter-Methoden durch eine Fallunterscheidung: Wenn Picture auf der Map fixiert werden soll, so soll der @x Wert von der Position des Bildschirms auf der Map abhängen.
Im Grunde genommen ändert mein Script nicht viel am Picture. Es fängt nur die Koordinatenabfrage ab und ändert diese bei Bedarf. Das heißt das alle Funktionen des Pictures wie gewohnt ablaufen. Wenn ein Script aber die Instanzvariablen @x und @y des Pictures wissen will (und nicht die tatsächlichen Koordinaten auf dem Bildschirm) so kommt es natürlich zu Problemen. Aber ich wüsste nicht wo im Scripteditor eine solche Abfrage stehen sollte (die Instanzvariablen sind ja uninteressant).