Zitat Zitat von Bex Beitrag anzeigen
Wobei ich euch wohl rund um die Liste eventuell die Tage noch etwas mit fragen zum verständniss löchern werde.
Du kannst dir auch die Dokumentation in der Hilfe-Datei des Makers durchlesen.
Fälschlicherweise werden Listen in Ruby als Array bezeichnet, auch wenn sie keine Arrays im klassischen Sinne sind.

Zitat Zitat von Bex Beitrag anzeigen
Ich hatte nun vor beim erstmaligen betreten der jeweiligen map die Initialisierungsseiten der einzelnen Gegner einmalig ablaufen zu lassen, damit die ihre werte in das self variablen script speichern.(Das sollte ohne probleme klappen)
Frage: Wie würde der Eventscriptbefehl ausschauen damit sich das event selber in die liste mit der id der aktuellen map ablegt, ohne einen Tag im namen zu verwenden und also mehrere listen für jede map id eine? (Das Event führt sich ja selber aus müsste also sowas wie: Gegnerlistevon"game map id"[].include this [@event.id]. (Erschlag mich nicht,das ist brainstorming^^und kein code)
Und zweitens, wie kann ich das Event wieder aus jener Liste entfernen? Bräuchte einmal den self befehl fürs event und interessanterhalber wie ich es von ausserhalb manipulliere.
Falls du eine globale Liste verwendest, zum Beispiel $someList, dann kannst du einfach folgendes Script in jedes Geschoss-Event auf der Karte packen und als Auto-Start (oder ähnliches) zu Beginn laufen lassen:
Code:
$someList.push(getEvent)
Damit wird das Event hinten an der Liste angehängt.

Zitat Zitat von Bex Beitrag anzeigen
Du sagst das mit dem Dollarzeichen ist unsauber, brauche ich das aber nicht um von ausserhalb drauf zu greifen zu können?
Das Dollarzeichen macht die Variable zu einer globalen Variable. Wenn du es verwendest kannst du immer und überall darauf zugreifen und die Variable jederzeit manipulieren.
Globale Variablen werden in der Programmierung größtenteils verpönt und verachtet, weil sie als schlechter Programmierstil gelten. Sie sind zwar nützlich und effektiv, aber stellen ein schlechtes Design dar.
Wenn jemand eine globale Variable verwendet ist es ein Anzeichen dafür, dass diese Person das Grundgerüst seiner Applikation nicht ganz durchdacht hat.

Natürlich kennst du das Grundgerüst deiner Applikation (dem RPG-Maker Ace) nicht, weil es nicht dein Code ist. Idealerweise würdest du ersteinmal 2 Monate lang den gesamten Code rauf und runter lesen und verstehen und danach planen wie du die Kommunikation idealerweise implementieren kannst ohne globale Variablen verwenden zu müssen.
Aber bei einem Projekt wie diesem hier ist das völlig übertrieben und nicht nötig. Man braucht keinen sauberen Stil um ein kleines Spielchen nebenher zu bauen.

Zitat Zitat von Bex Beitrag anzeigen
Und noch viel wichtiger bleibt diese Liste nach dem Speichern und neuladen des Spiels erhalten?
Nein. Die Liste wird nicht mit gespeichert außer du änderst entweder die Speicherroutine oder machst die Liste zum Teil einer der Klassen, welche der Maker speichert (so wie Kelven es gesagt hat).
Wenn du die Liste jedoch zu einem Teil einer anderen Klasse machst (wie zum Beispiel Game_Party, Game_Player, etc) dann kannst du keine globale Liste mehr verwenden.