Sprite flipping, face in direction of movement

This commit is contained in:
stevenhowes
2021-05-13 20:56:36 +01:00
parent 3c0a6d25e9
commit 74faf7f89b
6 changed files with 72 additions and 5 deletions
+36
View File
@@ -139,6 +139,42 @@ void draw_sprite(char* spritename,int x, int y)
_kernel_swi(OS_SpriteOp,&inreg,&outreg);
}
void draw_sprite_flippedh(char* spritename,int x, int y)
{
// SpriteOp 32
inreg.r[0] = 256+33;
inreg.r[1] = (int) buffer;
inreg.r[2] = (int) spritename;
_kernel_swi(OS_SpriteOp,&inreg,&outreg);
draw_sprite(spritename,x,y);
// SpriteOp 32
inreg.r[0] = 256+33;
inreg.r[1] = (int) buffer;
inreg.r[2] = (int) spritename;
_kernel_swi(OS_SpriteOp,&inreg,&outreg);
}
void draw_sprite_flippedv(char* spritename,int x, int y)
{
// SpriteOp 47
inreg.r[0] = 256+47;
inreg.r[1] = (int) buffer;
inreg.r[2] = (int) spritename;
_kernel_swi(OS_SpriteOp,&inreg,&outreg);
draw_sprite(spritename,x,y);
// SpriteOp 47
inreg.r[0] = 256+47;
inreg.r[1] = (int) buffer;
inreg.r[2] = (int) spritename;
_kernel_swi(OS_SpriteOp,&inreg,&outreg);
}
void draw_letter(char* spritename,int x, int y)
{
// SpriteOp 34 to put sprite at a location