Kod powyżej jest błędny, zamiast standardowego rozmieszczenia jest rozmieszczenie harmoniczne (z dzieleniem przez 0 na dodatek...). Nie mówiąc już o tym, że zmienne i, xx, yy, etc. nie są zmiennymi obiektów, które układamy w elipsę.
GML
global.xx = 320; //środek elipsy x
global.yy = 240; //środek elipsy y
global.ra = 240; //pozioma półoś elipsy
global.rb = 120; //pionowa półoś elipsy
for(i = 0; i < instance_number(object0); i += 1)
{
var z;
global.z = i;
with(instance_find(object0,i))
{
x = global.xx+cos(global.z*2*pi/instance_number(object0))*global.ra;
y = global.yy+sin(global.z*2*pi/instance_number(object0))*global.rb;
}
}
Zauważmy, że odległość między sąsiednimi obiektami nie jest stała, stały jest kąt. Możemy pobawić się nieco, by uzyskać rozłożenie stałe ze względu na odległości.