Heyho
Ich habe ja neulich gefragt, wie ich nur eine gewisse Anzahl an Gegnern in einer Grid Zelle haben kann. Das funktioniert (eigentlich) auch, allerdings werden immer mehr Gegner vernichtet als nötig wäre.
Sagen wir, maximal 4 Gegner sollen in einer Zelle sein, aber es werden 5 in dieser Zelle createt, dann sollte nur einer zerstört werden. Allerdings werden fast immer zu viele oder alle Gegner zerstört Das erkenne ich daran, dass ich vor der Zerstörung eine "Leiche" des Gegners spawnen lasse.
Der Code im oZombie (Gegner) Create Event:
Alles anzeigen
Weiß vielleicht jemand weiter?
Ich habe ja neulich gefragt, wie ich nur eine gewisse Anzahl an Gegnern in einer Grid Zelle haben kann. Das funktioniert (eigentlich) auch, allerdings werden immer mehr Gegner vernichtet als nötig wäre.
Sagen wir, maximal 4 Gegner sollen in einer Zelle sein, aber es werden 5 in dieser Zelle createt, dann sollte nur einer zerstört werden. Allerdings werden fast immer zu viele oder alle Gegner zerstört Das erkenne ich daran, dass ich vor der Zerstörung eine "Leiche" des Gegners spawnen lasse.
Der Code im oZombie (Gegner) Create Event:
GML-Quellcode
- var xgrid;
- var ygrid;
- xgrid = floor(x/320);
- ygrid = floor(y/320);
- var gridcount;
- gridcount = 0;
- with(oZombie)
- {
- // mit jedem Gegner prüfen ob er in der eigenen Zelle ist
- if (floor(x/320) == xgrid && floor(y/320) == ygrid)
- {
- gridcount += 1;
- }
- }
- if (gridcount > 4) // Wenn zu viele da sind
- {
- instance_create(x, y, oZombieDead); // Leiche erzeugen
- instance_destroy(); // Zerstören
- }
Weiß vielleicht jemand weiter?
Es gibt 10 Arten von Menschen: Diejenigen, die Binärcode verstehen und die, die es nicht tun