Fixed Memory Leak in Collision Callback

This commit is contained in:
n00b
2025-05-21 19:45:56 -04:00
parent daac85c26a
commit e7da6b745c
25 changed files with 1510 additions and 1283 deletions

View File

@@ -556,8 +556,8 @@ rc_getWorld2DAutoClearForces( )
rc_castRay2D( CASTRAY2D_FROM_X, CASTRAY2D_FROM_Y, CASTRAY2D_TO_X, CASTRAY2D_TO_Y )
rc_castRay2D_All( CASTRAY2D_ALL_FROM_X, CASTRAY2D_ALL_FROM_Y, CASTRAY2D_ALL_TO_X, CASTRAY2D_ALL_TO_Y )
rc_getRayHit2D( GETRAYHIT2D_INDEX, &GETRAYHIT2D_SPR_ID, &GETRAYHIT2D_X, &GETRAYHIT2D_Y, &GETRAYHIT2D_NORMAL_X, &GETRAYHIT2D_NORMAL_Y )
rc_setSpriteCollisionShape( SETSPRITECOLLISIONSHAPE_SPR_ID, SETSPRITECOLLISIONSHAPE_SHAPE )
rc_getSpriteCollisionShape( GETSPRITECOLLISIONSHAPE_SPR_ID )
rc_setSpriteCollisionShape( SETSPRITESHAPE_SPR_ID, SETSPRITESHAPE_SHAPE )
rc_getSpriteCollisionShape( GETSPRITESHAPE_SPR_ID )
rc_setSpriteRadius( SETSPRITERADIUS_SPR_ID, SETSPRITERADIUS_RADIUS )
rc_getSpriteRadius( GETSPRITERADIUS_SPR_ID )
rc_setSpriteBox( SETSPRITEBOX_SPR_ID, SETSPRITEBOX_W, SETSPRITEBOX_H )
@@ -565,6 +565,8 @@ rc_getSpriteBoxSize( GETSPRITEBOXSIZE_SPR_ID, &GETSPRITEBOXSIZE_W, &GETSPRITEB
rc_setSpriteChain( SETSPRITECHAIN_SPR_ID, &SETSPRITECHAIN_VX, &SETSPRITECHAIN_VY, SETSPRITECHAIN_V_COUNT, SETSPRITECHAIN_PREV_X, SETSPRITECHAIN_PREV_Y, SETSPRITECHAIN_NEXT_X, SETSPRITECHAIN_NEXT_Y )
rc_setSpriteChainLoop( SETSPRITECHAINLOOP_SPR_ID, &SETSPRITECHAINLOOP_VX, &SETSPRITECHAINLOOP_VY, SETSPRITECHAINLOOP_V_COUNT )
rc_setSpritePolygon( SETSPRITEPOLYGON_SPR_ID, &SETSPRITEPOLYGON_VX, &SETSPRITEPOLYGON_VY, SETSPRITEPOLYGON_V_COUNT )
rc_setSpriteShapeOffset( SETSPRITESHAPEOFFSET_SPR_ID, SETSPRITESHAPEOFFSET_X, SETSPRITESHAPEOFFSET_Y )
rc_getSpriteShapeOffset( GETSPRITESHAPEOFFSET_SPR_ID, &GETSPRITESHAPEOFFSET_X, &GETSPRITESHAPEOFFSET_Y )
rc_createDistanceJoint( CREATEDISTANCEJOINT_SPRITEA, CREATEDISTANCEJOINT_SPRITEB, CREATEDISTANCEJOINT_AX, CREATEDISTANCEJOINT_AY, CREATEDISTANCEJOINT_BX, CREATEDISTANCEJOINT_BY, CREATEDISTANCEJOINT_COLLIDE_CONNECT )
rc_createFrictionJoint( CREATEFRICTIONJOINT_SPRITEA, CREATEFRICTIONJOINT_SPRITEB, CREATEFRICTIONJOINT_X, CREATEFRICTIONJOINT_Y, CREATEFRICTIONJOINT_COLLIDE_CONNECT )
rc_createGearJoint( CREATEGEARJOINT_JOINTA, CREATEGEARJOINT_JOINTB, CREATEGEARJOINT_G_RATIO, CREATEGEARJOINT_COLLIDE_CONNECT )
@@ -650,6 +652,8 @@ rc_fillTile( FILLTILE_TILEMAP, FILLTILE_TILE, FILLTILE_X, FILLTILE_Y, FILLTI
rc_drawTileMap( DRAWTILEMAP_TILEMAP, DRAWTILEMAP_X, DRAWTILEMAP_Y, DRAWTILEMAP_W, DRAWTILEMAP_H, DRAWTILEMAP_OFFSET_X, DRAWTILEMAP_OFFSET_Y )
rc_deleteTileSet( DELETETILESET_TILESET )
rc_deleteTileMap( DELETETILEMAP_TILEMAP )
rc_tileSetExists( TILESETEXISTS_TILESET )
rc_tileMapExists( TILEMAPEXISTS_TILEMAP )
rc_loadMesh( LOADMESH_MESH_FILE$ )
rc_deleteMesh( DELETEMESH_MESH )
rc_createMesh( )
@@ -710,8 +714,8 @@ rc_setActorMD2AnimationByName( SETACTORMD2ANIMATIONBYNAME_ACTOR, SETACTORMD2ANI
rc_deleteActorAnimation( DELETEACTORANIMATION_ACTOR, DELETEACTORANIMATION_ANIMATION )
rc_setGravity3D( SETGRAVITY3D_X, SETGRAVITY3D_Y, SETGRAVITY3D_Z )
rc_getGravity3D( &GETGRAVITY3D_X, &GETGRAVITY3D_Y, &GETGRAVITY3D_Z )
rc_setActorCollisionShape( SETACTORCOLLISIONSHAPE_ACTOR, SETACTORCOLLISIONSHAPE_SHAPE_TYPE, SETACTORCOLLISIONSHAPE_MASS )
rc_getActorCollisionShape( GETACTORCOLLISIONSHAPE_ACTOR )
rc_setActorCollisionShape( SETACTORSHAPE_ACTOR, SETACTORSHAPE_SHAPE_TYPE, SETACTORSHAPE_MASS )
rc_getActorCollisionShape( GETACTORSHAPE_ACTOR )
rc_setActorSolid( SETACTORSOLID_ACTOR, SETACTORSOLID_FLAG )
rc_actorIsSolid( ACTORISSOLID_ACTOR )
rc_getActorCollision( GETACTORCOLLISION_ACTOR1, GETACTORCOLLISION_ACTOR2 )

View File

@@ -1,7 +1,7 @@
sub SetGravity3D(x, y, z)
sub GetGravity3D(ByRef x, ByRef y, ByRef z)
sub SetActorCollisionShape( actor, shape_type, mass)
function GetActorCollisionShape(actor)
sub SetActorShape( actor, shape_type, mass)
function GetActorShape(actor)
sub SetActorSolid(actor, flag)
function ActorIsSolid(actor)
function GetActorCollision(actor1, actor2)

View File

@@ -52,8 +52,8 @@ function GetWorld2DAutoClearForces()
function CastRay2D( from_x, from_y, to_x, to_y )
function CastRay2D_All( from_x, from_y, to_x, to_y )
sub GetRayHit2D( index, ByRef spr_id, ByRef x, ByRef y, ByRef normal_x, ByRef normal_y )
Sub SetSpriteCollisionShape(spr_id, shape)
Function GetSpriteCollisionShape(spr_id)
Sub SetSpriteShape(spr_id, shape)
Function GetSpriteShape(spr_id)
Sub SetSpriteRadius(spr_id, radius)
Function GetSpriteRadius(spr_id)
Sub SetSpriteBox(spr_id, w, h)
@@ -61,3 +61,5 @@ Sub GetSpriteBoxSize(spr_id, ByRef w, ByRef h)
Sub SetSpriteChain(spr_id, ByRef vx, ByRef vy, v_count, prev_x, prev_y, next_x, next_y)
Sub SetSpriteChainLoop(spr_id, ByRef vx, ByRef vy, v_count)
Sub SetSpritePolygon(spr_id, ByRef vx, ByRef vy, v_count)
Sub SetSpriteShapeOffset( spr_id, x, y )
Sub GetSpriteShapeOffset( spr_id, ByRef x, ByRef y )

View File

@@ -14,3 +14,5 @@ Sub FillTile(tilemap, tile, x, y, widthInTiles, heightInTiles)
Sub DrawTileMap(tilemap, x, y, w, h, offset_x, offset_y)
Sub DeleteTileSet(tileset)
Sub DeleteTileMap(tilemap)
Function TileSetExists(tileset)
Function TileMapExists(tilemap)

View File

@@ -924,6 +924,8 @@ int main(int argc, char * argv[])
//rc_filename = "/home/n00b/test/SpriteShapeTest/main.bas";
//rc_filename = "/home/n00b/Programs/RCBasic_v400_Linux64/examples/Constraint/main.bas";
//rc_filename = "/home/n00b/Programs/RCBasic_v401_Linux64/examples/Simple_3D_Platformer/main.bas";
//chdir("/home/n00b/Pictures/UNTITLED");
//rc_filename = "/home/n00b/Pictures/UNTITLED/nv_test.bas";
//DEBUG END
//enable_presets = true;

View File

@@ -1629,10 +1629,10 @@ void init_embedded_functions()
add_embedded_arg("y", ID_TYPE_BYREF_NUM);
add_embedded_arg("normal_x", ID_TYPE_BYREF_NUM);
add_embedded_arg("normal_y", ID_TYPE_BYREF_NUM);
embed_function("SetSpriteCollisionShape", ID_TYPE_SUB);
embed_function("SetSpriteShape", ID_TYPE_SUB);
add_embedded_arg("spr_id", ID_TYPE_NUM);
add_embedded_arg("shape", ID_TYPE_NUM);
embed_function("GetSpriteCollisionShape", ID_TYPE_FN_NUM);
embed_function("GetSpriteShape", ID_TYPE_FN_NUM);
add_embedded_arg("spr_id", ID_TYPE_NUM);
embed_function("SetSpriteRadius", ID_TYPE_SUB);
add_embedded_arg("spr_id", ID_TYPE_NUM);
@@ -1666,6 +1666,14 @@ void init_embedded_functions()
add_embedded_arg("vx", ID_TYPE_BYREF_NUM);
add_embedded_arg("vy", ID_TYPE_BYREF_NUM);
add_embedded_arg("v_count", ID_TYPE_NUM);
embed_function("SetSpriteShapeOffset", ID_TYPE_SUB);
add_embedded_arg("spr_id", ID_TYPE_NUM);
add_embedded_arg("x", ID_TYPE_NUM);
add_embedded_arg("y", ID_TYPE_NUM);
embed_function("GetSpriteShapeOffset", ID_TYPE_SUB);
add_embedded_arg("spr_id", ID_TYPE_NUM);
add_embedded_arg("x", ID_TYPE_BYREF_NUM);
add_embedded_arg("y", ID_TYPE_BYREF_NUM);
embed_function("createDistanceJoint", ID_TYPE_FN_NUM);
add_embedded_arg("spriteA", ID_TYPE_NUM);
add_embedded_arg("spriteB", ID_TYPE_NUM);
@@ -1960,6 +1968,10 @@ void init_embedded_functions()
add_embedded_arg("tileset", ID_TYPE_NUM);
embed_function("DeleteTileMap", ID_TYPE_SUB);
add_embedded_arg("tilemap", ID_TYPE_NUM);
embed_function("TileSetExists", ID_TYPE_FN_NUM);
add_embedded_arg("tileset", ID_TYPE_NUM);
embed_function("TileMapExists", ID_TYPE_FN_NUM);
add_embedded_arg("tilemap", ID_TYPE_NUM);
embed_function("LoadMesh", ID_TYPE_FN_NUM);
add_embedded_arg("mesh_file$", ID_TYPE_STR);
embed_function("DeleteMesh", ID_TYPE_SUB);
@@ -2164,11 +2176,11 @@ void init_embedded_functions()
add_embedded_arg("x", ID_TYPE_BYREF_NUM);
add_embedded_arg("y", ID_TYPE_BYREF_NUM);
add_embedded_arg("z", ID_TYPE_BYREF_NUM);
embed_function("SetActorCollisionShape", ID_TYPE_SUB);
embed_function("SetActorShape", ID_TYPE_SUB);
add_embedded_arg("actor", ID_TYPE_NUM);
add_embedded_arg("shape_type", ID_TYPE_NUM);
add_embedded_arg("mass", ID_TYPE_NUM);
embed_function("GetActorCollisionShape", ID_TYPE_FN_NUM);
embed_function("GetActorShape", ID_TYPE_FN_NUM);
add_embedded_arg("actor", ID_TYPE_NUM);
embed_function("SetActorSolid", ID_TYPE_SUB);
add_embedded_arg("actor", ID_TYPE_NUM);

Binary file not shown.

View File

@@ -1,5 +1,5 @@
# depslib dependency file v1.0
1744257370 source:/home/n00b/Projects/RCBASIC4/rcbasic_build/main.cpp
1747541932 source:/home/n00b/Projects/RCBASIC4/rcbasic_build/main.cpp
<iostream>
<stack>
<vector>
@@ -54,7 +54,7 @@
1734372057 /home/n00b/Projects/RCBASIC4/rcbasic_build/rc_global.h
<inttypes.h>
1744257290 /home/n00b/Projects/RCBASIC4/rcbasic_build/rc_builtin.h
1747541797 /home/n00b/Projects/RCBASIC4/rcbasic_build/rc_builtin.h
"identifier.h"
1734372057 /home/n00b/Projects/RCBASIC4/rcbasic_build/rc_vm_asm.h

View File

@@ -2,6 +2,36 @@
<CodeBlocks_layout_file>
<FileVersion major="1" minor="0" />
<ActiveTarget name="Debug" />
<File name="identifier.h" open="0" top="0" tabpos="26" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="9544" topLine="341" />
</Cursor>
</File>
<File name="rc_global.h" open="0" top="0" tabpos="5" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="13014" topLine="163" />
</Cursor>
</File>
<File name="env_resolve.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="615" topLine="32" />
</Cursor>
</File>
<File name="rc_utility.h" open="0" top="0" tabpos="27" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="1747" topLine="35" />
</Cursor>
</File>
<File name="tokenizer.h" open="0" top="0" tabpos="2" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="41712" topLine="1007" />
</Cursor>
</File>
<File name="rc_vm_asm.h" open="0" top="0" tabpos="3" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="41761" topLine="1347" />
</Cursor>
</File>
<File name="parser.h" open="0" top="0" tabpos="24" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="136748" topLine="3309" />
@@ -10,54 +40,24 @@
<Collapse line="6341" />
</Folding>
</File>
<File name="constants.h" open="0" top="0" tabpos="10" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="0" topLine="0" />
</Cursor>
</File>
<File name="tokenizer.h" open="1" top="1" tabpos="19" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="41919" topLine="1007" />
</Cursor>
</File>
<File name="main.cpp" open="1" top="0" tabpos="18" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="30118" topLine="906" />
</Cursor>
</File>
<File name="keywords.h" open="0" top="0" tabpos="25" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="105" topLine="17" />
</Cursor>
</File>
<File name="rc_vm_asm.h" open="0" top="0" tabpos="3" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="41761" topLine="1347" />
</Cursor>
</File>
<File name="rc_global.h" open="0" top="0" tabpos="5" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="13014" topLine="163" />
</Cursor>
</File>
<File name="rc_builtin.h" open="0" top="0" tabpos="6" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="112317" topLine="2509" />
</Cursor>
</File>
<File name="env_resolve.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<File name="constants.h" open="0" top="0" tabpos="10" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="615" topLine="32" />
<Cursor1 position="0" topLine="0" />
</Cursor>
</File>
<File name="identifier.h" open="0" top="0" tabpos="26" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<File name="main.cpp" open="1" top="0" tabpos="1" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="9544" topLine="341" />
</Cursor>
</File>
<File name="rc_utility.h" open="0" top="0" tabpos="27" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="1747" topLine="35" />
<Cursor1 position="29027" topLine="909" />
</Cursor>
</File>
</CodeBlocks_layout_file>

View File

@@ -1623,10 +1623,10 @@ add_embedded_arg("x", ID_TYPE_BYREF_NUM);
add_embedded_arg("y", ID_TYPE_BYREF_NUM);
add_embedded_arg("normal_x", ID_TYPE_BYREF_NUM);
add_embedded_arg("normal_y", ID_TYPE_BYREF_NUM);
embed_function("SetSpriteCollisionShape", ID_TYPE_SUB);
embed_function("SetSpriteShape", ID_TYPE_SUB);
add_embedded_arg("spr_id", ID_TYPE_NUM);
add_embedded_arg("shape", ID_TYPE_NUM);
embed_function("GetSpriteCollisionShape", ID_TYPE_FN_NUM);
embed_function("GetSpriteShape", ID_TYPE_FN_NUM);
add_embedded_arg("spr_id", ID_TYPE_NUM);
embed_function("SetSpriteRadius", ID_TYPE_SUB);
add_embedded_arg("spr_id", ID_TYPE_NUM);
@@ -1660,6 +1660,14 @@ add_embedded_arg("spr_id", ID_TYPE_NUM);
add_embedded_arg("vx", ID_TYPE_BYREF_NUM);
add_embedded_arg("vy", ID_TYPE_BYREF_NUM);
add_embedded_arg("v_count", ID_TYPE_NUM);
embed_function("SetSpriteShapeOffset", ID_TYPE_SUB);
add_embedded_arg("spr_id", ID_TYPE_NUM);
add_embedded_arg("x", ID_TYPE_NUM);
add_embedded_arg("y", ID_TYPE_NUM);
embed_function("GetSpriteShapeOffset", ID_TYPE_SUB);
add_embedded_arg("spr_id", ID_TYPE_NUM);
add_embedded_arg("x", ID_TYPE_BYREF_NUM);
add_embedded_arg("y", ID_TYPE_BYREF_NUM);
embed_function("createDistanceJoint", ID_TYPE_FN_NUM);
add_embedded_arg("spriteA", ID_TYPE_NUM);
add_embedded_arg("spriteB", ID_TYPE_NUM);
@@ -1954,6 +1962,10 @@ embed_function("DeleteTileSet", ID_TYPE_SUB);
add_embedded_arg("tileset", ID_TYPE_NUM);
embed_function("DeleteTileMap", ID_TYPE_SUB);
add_embedded_arg("tilemap", ID_TYPE_NUM);
embed_function("TileSetExists", ID_TYPE_FN_NUM);
add_embedded_arg("tileset", ID_TYPE_NUM);
embed_function("TileMapExists", ID_TYPE_FN_NUM);
add_embedded_arg("tilemap", ID_TYPE_NUM);
embed_function("LoadMesh", ID_TYPE_FN_NUM);
add_embedded_arg("mesh_file$", ID_TYPE_STR);
embed_function("DeleteMesh", ID_TYPE_SUB);
@@ -2158,11 +2170,11 @@ embed_function("GetGravity3D", ID_TYPE_SUB);
add_embedded_arg("x", ID_TYPE_BYREF_NUM);
add_embedded_arg("y", ID_TYPE_BYREF_NUM);
add_embedded_arg("z", ID_TYPE_BYREF_NUM);
embed_function("SetActorCollisionShape", ID_TYPE_SUB);
embed_function("SetActorShape", ID_TYPE_SUB);
add_embedded_arg("actor", ID_TYPE_NUM);
add_embedded_arg("shape_type", ID_TYPE_NUM);
add_embedded_arg("mass", ID_TYPE_NUM);
embed_function("GetActorCollisionShape", ID_TYPE_FN_NUM);
embed_function("GetActorShape", ID_TYPE_FN_NUM);
add_embedded_arg("actor", ID_TYPE_NUM);
embed_function("SetActorSolid", ID_TYPE_SUB);
add_embedded_arg("actor", ID_TYPE_NUM);

File diff suppressed because it is too large Load Diff

View File

@@ -1700,11 +1700,11 @@ case FN_CastRay2D_All: //Number Function
case FN_GetRayHit2D: //Sub Procedure
rc_getRayHit2D( GETRAYHIT2D_INDEX, &GETRAYHIT2D_SPR_ID, &GETRAYHIT2D_X, &GETRAYHIT2D_Y, &GETRAYHIT2D_NORMAL_X, &GETRAYHIT2D_NORMAL_Y );
break;
case FN_SetSpriteCollisionShape: //Sub Procedure
rc_setSpriteCollisionShape( SETSPRITECOLLISIONSHAPE_SPR_ID, SETSPRITECOLLISIONSHAPE_SHAPE );
case FN_SetSpriteShape: //Sub Procedure
rc_setSpriteCollisionShape( SETSPRITESHAPE_SPR_ID, SETSPRITESHAPE_SHAPE );
break;
case FN_GetSpriteCollisionShape: //Number Function
rc_push_num(rc_getSpriteCollisionShape( GETSPRITECOLLISIONSHAPE_SPR_ID ));
case FN_GetSpriteShape: //Number Function
rc_push_num(rc_getSpriteCollisionShape( GETSPRITESHAPE_SPR_ID ));
break;
case FN_SetSpriteRadius: //Sub Procedure
rc_setSpriteRadius( SETSPRITERADIUS_SPR_ID, SETSPRITERADIUS_RADIUS );
@@ -1727,6 +1727,12 @@ case FN_SetSpriteChainLoop: //Sub Procedure
case FN_SetSpritePolygon: //Sub Procedure
rc_setSpritePolygon( SETSPRITEPOLYGON_SPR_ID, &SETSPRITEPOLYGON_VX, &SETSPRITEPOLYGON_VY, SETSPRITEPOLYGON_V_COUNT );
break;
case FN_SetSpriteShapeOffset: //Sub Procedure
rc_setSpriteShapeOffset( SETSPRITESHAPEOFFSET_SPR_ID, SETSPRITESHAPEOFFSET_X, SETSPRITESHAPEOFFSET_Y );
break;
case FN_GetSpriteShapeOffset: //Sub Procedure
rc_getSpriteShapeOffset( GETSPRITESHAPEOFFSET_SPR_ID, &GETSPRITESHAPEOFFSET_X, &GETSPRITESHAPEOFFSET_Y );
break;
case FN_createDistanceJoint: //Number Function
rc_push_num(rc_createDistanceJoint( CREATEDISTANCEJOINT_SPRITEA, CREATEDISTANCEJOINT_SPRITEB, CREATEDISTANCEJOINT_AX, CREATEDISTANCEJOINT_AY, CREATEDISTANCEJOINT_BX, CREATEDISTANCEJOINT_BY, CREATEDISTANCEJOINT_COLLIDE_CONNECT ));
break;
@@ -1982,6 +1988,12 @@ case FN_DeleteTileSet: //Sub Procedure
case FN_DeleteTileMap: //Sub Procedure
rc_deleteTileMap( DELETETILEMAP_TILEMAP );
break;
case FN_TileSetExists: //Number Function
rc_push_num(rc_tileSetExists( TILESETEXISTS_TILESET ));
break;
case FN_TileMapExists: //Number Function
rc_push_num(rc_tileMapExists( TILEMAPEXISTS_TILEMAP ));
break;
case FN_LoadMesh: //Number Function
rc_push_num(rc_loadMesh( LOADMESH_MESH_FILE$ ));
break;
@@ -2162,11 +2174,11 @@ case FN_SetGravity3D: //Sub Procedure
case FN_GetGravity3D: //Sub Procedure
rc_getGravity3D( &GETGRAVITY3D_X, &GETGRAVITY3D_Y, &GETGRAVITY3D_Z );
break;
case FN_SetActorCollisionShape: //Sub Procedure
rc_setActorCollisionShape( SETACTORCOLLISIONSHAPE_ACTOR, SETACTORCOLLISIONSHAPE_SHAPE_TYPE, SETACTORCOLLISIONSHAPE_MASS );
case FN_SetActorShape: //Sub Procedure
rc_setActorCollisionShape( SETACTORSHAPE_ACTOR, SETACTORSHAPE_SHAPE_TYPE, SETACTORSHAPE_MASS );
break;
case FN_GetActorCollisionShape: //Number Function
rc_push_num(rc_getActorCollisionShape( GETACTORCOLLISIONSHAPE_ACTOR ));
case FN_GetActorShape: //Number Function
rc_push_num(rc_getActorCollisionShape( GETACTORSHAPE_ACTOR ));
break;
case FN_SetActorSolid: //Sub Procedure
rc_setActorSolid( SETACTORSOLID_ACTOR, SETACTORSOLID_FLAG );