Zitat:
Natürlich könnt ich per Ruby alle Events durchgehen und abfragen, aber das scheint mir sehr inperfomant.
In der Regel ist da nichts unperformantes dran. Der maker macht auch nichts anderes wenn er z.B. prüfen will, ob ein Feld belegt ist.
Wenn du extrem viele Events auf der Map hast und mehrfach pro Frame so eine Abfrage starten willst, kann es ggf. zu Performanceproblemen kommen (die bekommt man aber sowieso beim XP wenn man >500 Events auf der Map hat). In dem Fall könnte man über eine HashMap diese Abfrage verbessern.
Aber allgemein gilt:
Code:
id, _ = $game_map.events.find {|event_id, event| event.x == 10 && event.y == 20}
if id
$game_variables[1] = id
end
um z.B. die Event-ID des Events auf dem Feld 10/20 abzufragen.