This commit is contained in:
n00b87
2026-02-16 19:08:23 -06:00
parent 5779e59cdd
commit bc0d138387
8 changed files with 1284 additions and 1191 deletions

View File

@@ -1467,6 +1467,17 @@ void init_embedded_functions()
add_embedded_arg("sprite", ID_TYPE_NUM);
embed_function("GetSpriteAlpha", ID_TYPE_FN_NUM);
add_embedded_arg("sprite", ID_TYPE_NUM);
embed_function("AddSpriteChild", ID_TYPE_FN_NUM);
add_embedded_arg("sprite", ID_TYPE_NUM);
add_embedded_arg("child_sprite", ID_TYPE_NUM);
add_embedded_arg("x", ID_TYPE_NUM);
add_embedded_arg("y", ID_TYPE_NUM);
embed_function("RemoveSpriteChild", ID_TYPE_SUB);
add_embedded_arg("sprite", ID_TYPE_NUM);
add_embedded_arg("child_index", ID_TYPE_NUM);
embed_function("GetSpriteChildIndex", ID_TYPE_FN_NUM);
add_embedded_arg("sprite", ID_TYPE_NUM);
add_embedded_arg("child_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);
@@ -2234,6 +2245,7 @@ void init_embedded_functions()
embed_function("ActorExists", ID_TYPE_FN_NUM);
add_embedded_arg("actor", ID_TYPE_NUM);
embed_function("CreateProjectorActor", ID_TYPE_FN_NUM);
embed_function("CreateCompositeActor", ID_TYPE_FN_NUM);
embed_function("CreateActorAnimation", ID_TYPE_FN_NUM);
add_embedded_arg("actor", ID_TYPE_NUM);
add_embedded_arg("start_frame", ID_TYPE_NUM);

View File

@@ -1461,6 +1461,17 @@ 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("AddSpriteChild", ID_TYPE_FN_NUM);
add_embedded_arg("sprite", ID_TYPE_NUM);
add_embedded_arg("child_sprite", ID_TYPE_NUM);
add_embedded_arg("x", ID_TYPE_NUM);
add_embedded_arg("y", ID_TYPE_NUM);
embed_function("RemoveSpriteChild", ID_TYPE_SUB);
add_embedded_arg("sprite", ID_TYPE_NUM);
add_embedded_arg("child_index", ID_TYPE_NUM);
embed_function("GetSpriteChildIndex", ID_TYPE_FN_NUM);
add_embedded_arg("sprite", ID_TYPE_NUM);
add_embedded_arg("child_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);
@@ -2228,6 +2239,7 @@ add_embedded_arg("actor", ID_TYPE_NUM);
embed_function("ActorExists", ID_TYPE_FN_NUM);
add_embedded_arg("actor", ID_TYPE_NUM);
embed_function("CreateProjectorActor", ID_TYPE_FN_NUM);
embed_function("CreateCompositeActor", ID_TYPE_FN_NUM);
embed_function("CreateActorAnimation", ID_TYPE_FN_NUM);
add_embedded_arg("actor", ID_TYPE_NUM);
add_embedded_arg("start_frame", ID_TYPE_NUM);

File diff suppressed because it is too large Load Diff

View File

@@ -1571,6 +1571,15 @@ case FN_GetSpriteColorMod: //Number Function
case FN_GetSpriteAlpha: //Number Function
rc_push_num(rc_getSpriteAlpha( GETSPRITEALPHA_SPRITE ));
break;
case FN_AddSpriteChild: //Number Function
rc_push_num(rc_addSpriteChild( ADDSPRITECHILD_SPRITE, ADDSPRITECHILD_CHILD_SPRITE, ADDSPRITECHILD_X, ADDSPRITECHILD_Y ));
break;
case FN_RemoveSpriteChild: //Sub Procedure
rc_removeSpriteChild( REMOVESPRITECHILD_SPRITE, REMOVESPRITECHILD_CHILD_INDEX );
break;
case FN_GetSpriteChildIndex: //Number Function
rc_push_num(rc_getSpriteChildIndex( GETSPRITECHILDINDEX_SPRITE, GETSPRITECHILDINDEX_CHILD_SPRITE ));
break;
case FN_CreateSpriteAnimation: //Number Function
rc_push_num(rc_createSpriteAnimation( CREATESPRITEANIMATION_SPRITE, CREATESPRITEANIMATION_ANIM_LENGTH, CREATESPRITEANIMATION_SPEED ));
break;
@@ -2240,6 +2249,9 @@ case FN_ActorExists: //Number Function
case FN_CreateProjectorActor: //Number Function
rc_push_num(rc_createProjectorActor( ));
break;
case FN_CreateCompositeActor: //Number Function
rc_push_num(rc_createCompositeActor( ));
break;
case FN_CreateActorAnimation: //Number Function
rc_push_num(rc_createActorAnimation( CREATEACTORANIMATION_ACTOR, CREATEACTORANIMATION_START_FRAME, CREATEACTORANIMATION_END_FRAME, CREATEACTORANIMATION_SPEED ));
break;

File diff suppressed because it is too large Load Diff

View File

@@ -1571,6 +1571,15 @@ case FN_GetSpriteColorMod: //Number Function
case FN_GetSpriteAlpha: //Number Function
rc_push_num(rc_getSpriteAlpha( GETSPRITEALPHA_SPRITE ));
break;
case FN_AddSpriteChild: //Number Function
rc_push_num(rc_addSpriteChild( ADDSPRITECHILD_SPRITE, ADDSPRITECHILD_CHILD_SPRITE, ADDSPRITECHILD_X, ADDSPRITECHILD_Y ));
break;
case FN_RemoveSpriteChild: //Sub Procedure
rc_removeSpriteChild( REMOVESPRITECHILD_SPRITE, REMOVESPRITECHILD_CHILD_INDEX );
break;
case FN_GetSpriteChildIndex: //Number Function
rc_push_num(rc_getSpriteChildIndex( GETSPRITECHILDINDEX_SPRITE, GETSPRITECHILDINDEX_CHILD_SPRITE ));
break;
case FN_CreateSpriteAnimation: //Number Function
rc_push_num(rc_createSpriteAnimation( CREATESPRITEANIMATION_SPRITE, CREATESPRITEANIMATION_ANIM_LENGTH, CREATESPRITEANIMATION_SPEED ));
break;
@@ -2240,6 +2249,9 @@ case FN_ActorExists: //Number Function
case FN_CreateProjectorActor: //Number Function
rc_push_num(rc_createProjectorActor( ));
break;
case FN_CreateCompositeActor: //Number Function
rc_push_num(rc_createCompositeActor( ));
break;
case FN_CreateActorAnimation: //Number Function
rc_push_num(rc_createActorAnimation( CREATEACTORANIMATION_ACTOR, CREATEACTORANIMATION_START_FRAME, CREATEACTORANIMATION_END_FRAME, CREATEACTORANIMATION_SPEED ));
break;

View File

@@ -678,6 +678,27 @@ void rc_removeSpriteChild(int spr_id, int child_index)
}
int rc_getSpriteChildIndex(int spr_id, int child_spr_id)
{
if(spr_id < 0 || spr_id >= rc_sprite.size())
return -1;
if(!rc_sprite[spr_id].active)
return -1;
if(child_spr_id < 0 || child_spr_id >= rc_sprite.size())
return -1;
for(int i = 0; i < rc_sprite[spr_id].child_sprites.size(); i++)
{
if(rc_sprite[spr_id].child_sprites[i] == child_spr_id)
return i;
}
return -1;
}
void rc_setSpriteSource(int spr_id, int img_id)
{
if(spr_id < 0 || spr_id >= rc_sprite.size())

View File

@@ -37,7 +37,7 @@
1763959134 /home/n00b/Projects/RCBASIC4/rcbasic_runtime/rc_os_defines.h
<TargetConditionals.h>
1769580609 /home/n00b/Projects/RCBASIC4/rcbasic_runtime/rc_defines.h
1771232878 /home/n00b/Projects/RCBASIC4/rcbasic_runtime/rc_defines.h
1764140917 /home/n00b/Projects/RCBASIC4/rcbasic_runtime/rc_stdlib.h
"rc_os_defines.h"
@@ -2281,7 +2281,7 @@
"rc_gfx_core.h"
<irrtheora.h>
1769580609 /home/n00b/Projects/RCBASIC4/rcbasic_runtime/rc_func130_cases.h
1771232878 /home/n00b/Projects/RCBASIC4/rcbasic_runtime/rc_func130_cases.h
1760243468 source:/home/n00b/Projects/irrBullet/src/irrBullet.cpp
"irrBullet.h"
@@ -2503,7 +2503,7 @@
<SDL.h>
<SDL2/SDL.h>
1771231655 /home/n00b/Projects/RCBASIC4/rcbasic_runtime/rc_spritelib.h
1771236229 /home/n00b/Projects/RCBASIC4/rcbasic_runtime/rc_spritelib.h
"SDL.h"
<SDL2/SDL.h>
"rc_sprite2D.h"