Vor der Hautschleife aufrufen!
num = das Sprite was gedreht werden soll
drehungs_step = nächste drehung in Grad
Start_num ab wo die Sprites gespeichert werden.
FUNCTION ROTOCOPY: num, drehungs_step, start_num
GLOBAL Winkel
LOCAL XX, YY, Spitzenmass
GETSPRITESIZE num, XX, YY
Spitzenmass = SQR( POW(XX,2) + POW(YY,2) )
FOR Winkel = 0 TO 359 STEP drehungs_step
FILLRECT 0,0,Spitzenmass,Spitzenmass, RGB(0xff, 0x00, 0x80)
ROTOSPRITE num,(Spitzenmass-XX)/2, (Spitzenmass-YY)/2, Winkel
GRABSPRITE start_num + Winkel / drehungs_step, 0, 0, Spitzenmass, Spitzenmass
BLACKSCREEN
NEXT
ENDFUNCTION
Ist zu behandeln wie SPRITE nur das es auf den Mittelpunkt bezogen ist!
FUNCTION Sprite_Mid: num, X, Y
LOCAL XX, YY
GETSPRITESIZE num , XX, YY
SPRITE num, X-XX/2, Y-YY/2
ENDFUNCTION
Überprüft auf Collision(Pixelgenau)
ein normales Sprite mit einem "ROTOSPRITE"
num1 = Normales Sprite
mid_num2 = Das "ROTOSPRITE"
FUNCTION Sprcoll_mid: num1, x1, y1, mid_num2, x2, y2
LOCAL XX, YY
GETSPRITESIZE mid_num2, XX, YY
IF SPRCOLL(num1, x1, y1, mid_num2, x2-XX/2, y2-XX/2)
RETURN 1
ENDIF
ENDFUNCTION