Added Sprite Color Blend and Global AntiAlias functions

This commit is contained in:
n00b
2024-12-22 20:27:40 -05:00
parent ff01fa83f4
commit d91146db60
20 changed files with 1740 additions and 1546 deletions

View File

@@ -244,6 +244,8 @@ rc_drawImage_Rotozoom( DRAWIMAGE_ROTOZOOM_SLOT, DRAWIMAGE_ROTOZOOM_X, DRAWIMAG
rc_drawImage_RotozoomEx( DRAWIMAGE_ROTOZOOMEX_SLOT, DRAWIMAGE_ROTOZOOMEX_X, DRAWIMAGE_ROTOZOOMEX_Y, DRAWIMAGE_ROTOZOOMEX_SRC_X, DRAWIMAGE_ROTOZOOMEX_SRC_Y, DRAWIMAGE_ROTOZOOMEX_SRC_W, DRAWIMAGE_ROTOZOOMEX_SRC_H, DRAWIMAGE_ROTOZOOMEX_ANGLE, DRAWIMAGE_ROTOZOOMEX_ZX, DRAWIMAGE_ROTOZOOMEX_ZY )
rc_drawImage_Flip( DRAWIMAGE_FLIP_SLOT, DRAWIMAGE_FLIP_X, DRAWIMAGE_FLIP_Y, DRAWIMAGE_FLIP_H, DRAWIMAGE_FLIP_V )
rc_drawImage_FlipEx( DRAWIMAGE_FLIPEX_SLOT, DRAWIMAGE_FLIPEX_X, DRAWIMAGE_FLIPEX_Y, DRAWIMAGE_FLIPEX_SRC_X, DRAWIMAGE_FLIPEX_SRC_Y, DRAWIMAGE_FLIPEX_SRC_W, DRAWIMAGE_FLIPEX_SRC_H, DRAWIMAGE_FLIPEX_H, DRAWIMAGE_FLIPEX_V )
rc_setAntiAliasMode( SETANTIALIASMODE_AA_MODE )
rc_getAntiAliasMode( )
rc_inKey( )
rc_key( KEY_KEY_CODE )
rc_waitKey( )
@@ -479,6 +481,10 @@ rc_getSpriteType( GETSPRITETYPE_SPRITE )
rc_setSpriteSource( SETSPRITESOURCE_SPRITE, SETSPRITESOURCE_IMG )
rc_getSpriteSource( GETSPRITESOURCE_SPRITE )
rc_spriteExists( SPRITEEXISTS_SPRITE )
rc_setSpriteColorMod( SETSPRITECOLORMOD_SPRITE, SETSPRITECOLORMOD_COLOR )
rc_setSpriteAlpha( SETSPRITEALPHA_SPRITE, SETSPRITEALPHA_ALPHA )
rc_getSpriteColorMod( GETSPRITECOLORMOD_SPRITE )
rc_getSpriteAlpha( GETSPRITEALPHA_SPRITE )
rc_createSpriteAnimation( CREATESPRITEANIMATION_SPRITE, CREATESPRITEANIMATION_ANIM_LENGTH, CREATESPRITEANIMATION_SPEED )
rc_setSpriteFrame( SETSPRITEFRAME_SPRITE, SETSPRITEFRAME_FRAME )
rc_getSpriteFrame( GETSPRITEFRAME_SPRITE )

View File

@@ -27,3 +27,5 @@ sub DrawImage_Rotozoom(slot, x, y, angle, zx, zy)
sub DrawImage_RotozoomEx(slot, x, y, src_x, src_y, src_w, src_h, angle, zx, zy)
sub DrawImage_Flip(slot, x, y, h, v)
sub DrawImage_FlipEx(slot, x, y, src_x, src_y, src_w, src_h, h, v)
sub SetAntiAliasMode( aa_mode )
function GetAntiAliasMode( )

View File

@@ -25,3 +25,7 @@ Function GetSpriteType(sprite)
Sub SetSpriteSource(sprite, img)
Function GetSpriteSource(sprite)
Function SpriteExists(sprite)
Sub SetSpriteColorMod(sprite, color)
Sub SetSpriteAlpha(sprite, alpha)
Function GetSpriteColorMod(sprite)
Function GetSpriteAlpha(sprite)

View File

@@ -746,6 +746,9 @@ void init_embedded_functions()
add_embedded_arg("src_h", ID_TYPE_NUM);
add_embedded_arg("h", ID_TYPE_NUM);
add_embedded_arg("v", ID_TYPE_NUM);
embed_function("SetAntiAliasMode", ID_TYPE_SUB);
add_embedded_arg("aa_mode", ID_TYPE_NUM);
embed_function("GetAntiAliasMode", ID_TYPE_FN_NUM);
embed_function("InKey", ID_TYPE_FN_NUM);
embed_function("Key", ID_TYPE_FN_NUM);
add_embedded_arg("key_code", ID_TYPE_NUM);
@@ -1390,6 +1393,16 @@ void init_embedded_functions()
add_embedded_arg("sprite", ID_TYPE_NUM);
embed_function("SpriteExists", ID_TYPE_FN_NUM);
add_embedded_arg("sprite", ID_TYPE_NUM);
embed_function("SetSpriteColorMod", ID_TYPE_SUB);
add_embedded_arg("sprite", ID_TYPE_NUM);
add_embedded_arg("color", ID_TYPE_NUM);
embed_function("SetSpriteAlpha", ID_TYPE_SUB);
add_embedded_arg("sprite", ID_TYPE_NUM);
add_embedded_arg("alpha", ID_TYPE_NUM);
embed_function("GetSpriteColorMod", ID_TYPE_FN_NUM);
add_embedded_arg("sprite", ID_TYPE_NUM);
embed_function("GetSpriteAlpha", ID_TYPE_FN_NUM);
add_embedded_arg("sprite", ID_TYPE_NUM);
embed_function("CreateSpriteAnimation", ID_TYPE_FN_NUM);
add_embedded_arg("sprite", ID_TYPE_NUM);
add_embedded_arg("anim_length", ID_TYPE_NUM);

Binary file not shown.

View File

@@ -740,6 +740,9 @@ add_embedded_arg("src_w", ID_TYPE_NUM);
add_embedded_arg("src_h", ID_TYPE_NUM);
add_embedded_arg("h", ID_TYPE_NUM);
add_embedded_arg("v", ID_TYPE_NUM);
embed_function("SetAntiAliasMode", ID_TYPE_SUB);
add_embedded_arg("aa_mode", ID_TYPE_NUM);
embed_function("GetAntiAliasMode", ID_TYPE_FN_NUM);
embed_function("InKey", ID_TYPE_FN_NUM);
embed_function("Key", ID_TYPE_FN_NUM);
add_embedded_arg("key_code", ID_TYPE_NUM);
@@ -1384,6 +1387,16 @@ embed_function("GetSpriteSource", ID_TYPE_FN_NUM);
add_embedded_arg("sprite", ID_TYPE_NUM);
embed_function("SpriteExists", ID_TYPE_FN_NUM);
add_embedded_arg("sprite", ID_TYPE_NUM);
embed_function("SetSpriteColorMod", ID_TYPE_SUB);
add_embedded_arg("sprite", ID_TYPE_NUM);
add_embedded_arg("color", ID_TYPE_NUM);
embed_function("SetSpriteAlpha", ID_TYPE_SUB);
add_embedded_arg("sprite", ID_TYPE_NUM);
add_embedded_arg("alpha", ID_TYPE_NUM);
embed_function("GetSpriteColorMod", ID_TYPE_FN_NUM);
add_embedded_arg("sprite", ID_TYPE_NUM);
embed_function("GetSpriteAlpha", ID_TYPE_FN_NUM);
add_embedded_arg("sprite", ID_TYPE_NUM);
embed_function("CreateSpriteAnimation", ID_TYPE_FN_NUM);
add_embedded_arg("sprite", ID_TYPE_NUM);
add_embedded_arg("anim_length", ID_TYPE_NUM);

File diff suppressed because it is too large Load Diff

View File

@@ -763,6 +763,12 @@ case FN_DrawImage_Flip: //Sub Procedure
case FN_DrawImage_FlipEx: //Sub Procedure
rc_drawImage_FlipEx( DRAWIMAGE_FLIPEX_SLOT, DRAWIMAGE_FLIPEX_X, DRAWIMAGE_FLIPEX_Y, DRAWIMAGE_FLIPEX_SRC_X, DRAWIMAGE_FLIPEX_SRC_Y, DRAWIMAGE_FLIPEX_SRC_W, DRAWIMAGE_FLIPEX_SRC_H, DRAWIMAGE_FLIPEX_H, DRAWIMAGE_FLIPEX_V );
break;
case FN_SetAntiAliasMode: //Sub Procedure
rc_setAntiAliasMode( SETANTIALIASMODE_AA_MODE );
break;
case FN_GetAntiAliasMode: //Number Function
rc_push_num(rc_getAntiAliasMode( ));
break;
case FN_InKey: //Number Function
rc_push_num(rc_inKey( ));
break;
@@ -1469,6 +1475,18 @@ case FN_GetSpriteSource: //Number Function
case FN_SpriteExists: //Number Function
rc_push_num(rc_spriteExists( SPRITEEXISTS_SPRITE ));
break;
case FN_SetSpriteColorMod: //Sub Procedure
rc_setSpriteColorMod( SETSPRITECOLORMOD_SPRITE, SETSPRITECOLORMOD_COLOR );
break;
case FN_SetSpriteAlpha: //Sub Procedure
rc_setSpriteAlpha( SETSPRITEALPHA_SPRITE, SETSPRITEALPHA_ALPHA );
break;
case FN_GetSpriteColorMod: //Number Function
rc_push_num(rc_getSpriteColorMod( GETSPRITECOLORMOD_SPRITE ));
break;
case FN_GetSpriteAlpha: //Number Function
rc_push_num(rc_getSpriteAlpha( GETSPRITEALPHA_SPRITE ));
break;
case FN_CreateSpriteAnimation: //Number Function
rc_push_num(rc_createSpriteAnimation( CREATESPRITEANIMATION_SPRITE, CREATESPRITEANIMATION_ANIM_LENGTH, CREATESPRITEANIMATION_SPEED ));
break;