Added Sprite Physics and Joints

This commit is contained in:
n00b
2024-10-27 23:24:37 -04:00
parent d49b9f5d58
commit 8f1b72a8e2
125 changed files with 9264 additions and 1223 deletions

View File

@@ -34,6 +34,7 @@ Include "/home/n00b/Projects/RCBASIC4/rcbasic_build/intern_lib/joint2D.bas"
Include "/home/n00b/Projects/RCBASIC4/rcbasic_build/intern_lib/tilemaps.bas"
Include "/home/n00b/Projects/RCBASIC4/rcbasic_build/intern_lib/mesh.bas"
Include "/home/n00b/Projects/RCBASIC4/rcbasic_build/intern_lib/actor.bas"
Include "/home/n00b/Projects/RCBASIC4/rcbasic_build/intern_lib/actor_animation.bas"
Include "/home/n00b/Projects/RCBASIC4/rcbasic_build/intern_lib/actor_physics.bas"
Include "/home/n00b/Projects/RCBASIC4/rcbasic_build/intern_lib/constraint3D.bas"
Include "/home/n00b/Projects/RCBASIC4/rcbasic_build/intern_lib/camera.bas"
@@ -42,5 +43,4 @@ Include "/home/n00b/Projects/RCBASIC4/rcbasic_build/intern_lib/particles.bas"
Include "/home/n00b/Projects/RCBASIC4/rcbasic_build/intern_lib/lights.bas"
Include "/home/n00b/Projects/RCBASIC4/rcbasic_build/intern_lib/terrain.bas"
Include "/home/n00b/Projects/RCBASIC4/rcbasic_build/intern_lib/water.bas"
Include "/home/n00b/Projects/RCBASIC4/rcbasic_build/intern_lib/actor_animation.bas"
Include "/home/n00b/Projects/RCBASIC4/rcbasic_build/intern_lib/materials.bas"

View File

@@ -488,6 +488,105 @@ rc_getSpriteCurrentAnimationFrame( GETSPRITECURRENTANIMATIONFRAME_SPRITE )
rc_numSpriteAnimationLoops( NUMSPRITEANIMATIONLOOPS_SPRITE )
rc_spriteAnimationIsPlaying( SPRITEANIMATIONISPLAYING_SPRITE )
rc_deleteSpriteAnimation( DELETESPRITEANIMATION_SPRITE, DELETESPRITEANIMATION_ANIMATION )
rc_getSpriteCenter( GETSPRITECENTER_SPR_ID, &GETSPRITECENTER_X, &GETSPRITECENTER_Y )
rc_setSpriteLinearVelocity( SETSPRITELINEARVELOCITY_SPR_ID, SETSPRITELINEARVELOCITY_X, SETSPRITELINEARVELOCITY_Y )
rc_getSpriteLinearVelocity( GETSPRITELINEARVELOCITY_SPR_ID, &GETSPRITELINEARVELOCITY_X, &GETSPRITELINEARVELOCITY_Y )
rc_setSpriteAngularVelocity( SETSPRITEANGULARVELOCITY_SPR_ID, SETSPRITEANGULARVELOCITY_AV )
rc_getSpriteAngularVelocity( GETSPRITEANGULARVELOCITY_SPR_ID )
rc_applySpriteForce( APPLYSPRITEFORCE_SPR_ID, APPLYSPRITEFORCE_FX, APPLYSPRITEFORCE_FY, APPLYSPRITEFORCE_PX, APPLYSPRITEFORCE_PY )
rc_applySpriteCentralForce( APPLYSPRITECENTRALFORCE_SPR_ID, APPLYSPRITECENTRALFORCE_X, APPLYSPRITECENTRALFORCE_Y )
rc_applySpriteTorque( APPLYSPRITETORQUE_SPR_ID, APPLYSPRITETORQUE_TORQUE )
rc_applySpriteLinearImpulse( APPLYSPRITELINEARIMPULSE_SPR_ID, APPLYSPRITELINEARIMPULSE_IX, APPLYSPRITELINEARIMPULSE_IY, APPLYSPRITELINEARIMPULSE_PX, APPLYSPRITELINEARIMPULSE_PY )
rc_applySpriteAngularImpulse( APPLYSPRITEANGULARIMPULSE_SPR_ID, APPLYSPRITEANGULARIMPULSE_IMPULSE )
rc_getSpriteMass( GETSPRITEMASS_SPR_ID )
rc_getSpriteInertia( GETSPRITEINERTIA_SPR_ID )
rc_getSpriteWorldPoint( GETSPRITEWORLDPOINT_SPR_ID, GETSPRITEWORLDPOINT_LX, GETSPRITEWORLDPOINT_LY, &GETSPRITEWORLDPOINT_X, &GETSPRITEWORLDPOINT_Y )
rc_getSpriteWorldVector( GETSPRITEWORLDVECTOR_SPR_ID, GETSPRITEWORLDVECTOR_LX, GETSPRITEWORLDVECTOR_LY, &GETSPRITEWORLDVECTOR_X, &GETSPRITEWORLDVECTOR_Y )
rc_getSpriteLocalPoint( GETSPRITELOCALPOINT_SPR_ID, GETSPRITELOCALPOINT_WX, GETSPRITELOCALPOINT_WY, &GETSPRITELOCALPOINT_X, &GETSPRITELOCALPOINT_Y )
rc_getSpriteLocalVector( GETSPRITELOCALVECTOR_SPR_ID, GETSPRITELOCALVECTOR_WX, GETSPRITELOCALVECTOR_WY, &GETSPRITELOCALVECTOR_X, &GETSPRITELOCALVECTOR_Y )
rc_getSpriteLinearVelocityFromLocalPoint( GETSPRITELINEARVELOCITYFROMLOCALPOINT_SPR_ID, GETSPRITELINEARVELOCITYFROMLOCALPOINT_PX, GETSPRITELINEARVELOCITYFROMLOCALPOINT_PY, &GETSPRITELINEARVELOCITYFROMLOCALPOINT_X, &GETSPRITELINEARVELOCITYFROMLOCALPOINT_Y )
rc_getSpriteLinearVelocityFromWorldPoint( GETSPRITELINEARVELOCITYFROMWORLDPOINT_SPR_ID, GETSPRITELINEARVELOCITYFROMWORLDPOINT_WX, GETSPRITELINEARVELOCITYFROMWORLDPOINT_WY, &GETSPRITELINEARVELOCITYFROMWORLDPOINT_X, &GETSPRITELINEARVELOCITYFROMWORLDPOINT_Y )
rc_getSpriteLinearDamping( GETSPRITELINEARDAMPING_SPR_ID )
rc_setSpriteLinearDamping( SETSPRITELINEARDAMPING_SPR_ID, SETSPRITELINEARDAMPING_LINEARDAMPING )
rc_getSpriteAngularDamping( GETSPRITEANGULARDAMPING_SPR_ID )
rc_setSpriteAngularDamping( SETSPRITEANGULARDAMPING_SPR_ID, SETSPRITEANGULARDAMPING_ANGULARDAMPING )
rc_getSpriteGravityScale( GETSPRITEGRAVITYSCALE_SPR_ID )
rc_setSpriteGravityScale( SETSPRITEGRAVITYSCALE_SPR_ID, SETSPRITEGRAVITYSCALE_G_SCALE )
rc_setSpriteBullet( SETSPRITEBULLET_SPR_ID, SETSPRITEBULLET_FLAG )
rc_spriteIsBullet( SPRITEISBULLET_SPR_ID )
rc_setSpriteSleepAllowed( SETSPRITESLEEPALLOWED_SPR_ID, SETSPRITESLEEPALLOWED_FLAG )
rc_spriteSleepAllowed( SPRITESLEEPALLOWED_SPR_ID )
rc_setSpriteAwake( SETSPRITEAWAKE_SPR_ID, SETSPRITEAWAKE_FLAG )
rc_spriteIsAwake( SPRITEISAWAKE_SPR_ID )
rc_setSpriteFixedRotation( SETSPRITEFIXEDROTATION_SPR_ID, SETSPRITEFIXEDROTATION_FLAG )
rc_spriteIsFixedRotation( SPRITEISFIXEDROTATION_SPR_ID )
rc_createDistanceJoint( CREATEDISTANCEJOINT_SPRITEA, CREATEDISTANCEJOINT_SPRITEB, CREATEDISTANCEJOINT_AX, CREATEDISTANCEJOINT_AY, CREATEDISTANCEJOINT_BX, CREATEDISTANCEJOINT_BY )
rc_createFrictionJoint( CREATEFRICTIONJOINT_SPRITEA, CREATEFRICTIONJOINT_SPRITEB, CREATEFRICTIONJOINT_X, CREATEFRICTIONJOINT_Y )
rc_createGearJoint( CREATEGEARJOINT_JOINTA, CREATEGEARJOINT_JOINTB, CREATEGEARJOINT_G_RATIO )
rc_createMotorJoint( CREATEMOTORJOINT_SPRITEA, CREATEMOTORJOINT_SPRITEB )
rc_createPrismaticJoint( CREATEPRISMATICJOINT_SPRITEA, CREATEPRISMATICJOINT_SPRITEB, CREATEPRISMATICJOINT_AX, CREATEPRISMATICJOINT_AY, CREATEPRISMATICJOINT_AXISX, CREATEPRISMATICJOINT_AXISY )
rc_createPulleyJoint( CREATEPULLEYJOINT_SPRITEA, CREATEPULLEYJOINT_SPRITEB, CREATEPULLEYJOINT_GAX, CREATEPULLEYJOINT_GAY, CREATEPULLEYJOINT_GBX, CREATEPULLEYJOINT_GBY, CREATEPULLEYJOINT_AX, CREATEPULLEYJOINT_AY, CREATEPULLEYJOINT_BX, CREATEPULLEYJOINT_BY, CREATEPULLEYJOINT_J_RATIO )
rc_createRevoluteJoint( CREATEREVOLUTEJOINT_SPRITEA, CREATEREVOLUTEJOINT_SPRITEB, CREATEREVOLUTEJOINT_X, CREATEREVOLUTEJOINT_Y )
rc_createWeldJoint( CREATEWELDJOINT_SPRITEA, CREATEWELDJOINT_SPRITEB, CREATEWELDJOINT_X, CREATEWELDJOINT_Y )
rc_createWheelJoint( CREATEWHEELJOINT_SPRITEA, CREATEWHEELJOINT_SPRITEB, CREATEWHEELJOINT_AX, CREATEWHEELJOINT_AY, CREATEWHEELJOINT_AXISX, CREATEWHEELJOINT_AXISY )
rc_getJointWorldAnchorA( GETJOINTWORLDANCHORA_JOINT_ID, &GETJOINTWORLDANCHORA_X, &GETJOINTWORLDANCHORA_Y )
rc_getJointWorldAnchorB( GETJOINTWORLDANCHORB_JOINT_ID, &GETJOINTWORLDANCHORB_X, &GETJOINTWORLDANCHORB_Y )
rc_getJointReactionForce( GETJOINTREACTIONFORCE_JOINT_ID, GETJOINTREACTIONFORCE_INV_DT, &GETJOINTREACTIONFORCE_X, &GETJOINTREACTIONFORCE_Y )
rc_getJointReactionTorque( GETJOINTREACTIONTORQUE_JOINT_ID, GETJOINTREACTIONTORQUE_INV_DT )
rc_getJointLocalAnchorA( GETJOINTLOCALANCHORA_JOINT_ID, &GETJOINTLOCALANCHORA_X, &GETJOINTLOCALANCHORA_Y )
rc_getJointLocalAnchorB( GETJOINTLOCALANCHORB_JOINT_ID, &GETJOINTLOCALANCHORB_X, &GETJOINTLOCALANCHORB_Y )
rc_setJointLength( SETJOINTLENGTH_JOINT_ID, SETJOINTLENGTH_JLEN )
rc_getJointLength( GETJOINTLENGTH_JOINT_ID )
rc_setJointMinLength( SETJOINTMINLENGTH_JOINT_ID, SETJOINTMINLENGTH_JLEN )
rc_getJointMinLength( GETJOINTMINLENGTH_JOINT_ID )
rc_setJointMaxLength( SETJOINTMAXLENGTH_JOINT_ID, SETJOINTMAXLENGTH_JLEN )
rc_getJointMaxLength( GETJOINTMAXLENGTH_JOINT_ID )
rc_getJointCurrentLength( GETJOINTCURRENTLENGTH_JOINT_ID )
rc_setJointStiffness( SETJOINTSTIFFNESS_JOINT_ID, SETJOINTSTIFFNESS_STIFFNESS )
rc_getJointStiffness( GETJOINTSTIFFNESS_JOINT_ID )
rc_setJointDamping( SETJOINTDAMPING_JOINT_ID, SETJOINTDAMPING_DAMPING )
rc_getJointDamping( GETJOINTDAMPING_JOINT_ID )
rc_setJointMaxForce( SETJOINTMAXFORCE_JOINT_ID, SETJOINTMAXFORCE_FORCE )
rc_getJointMaxForce( GETJOINTMAXFORCE_JOINT_ID )
rc_setJointMaxTorque( SETJOINTMAXTORQUE_JOINT_ID, SETJOINTMAXTORQUE_TORQUE )
rc_getJointMaxTorque( GETJOINTMAXTORQUE_JOINT_ID )
rc_setJointCorrectionFactor( SETJOINTCORRECTIONFACTOR_JOINT_ID, SETJOINTCORRECTIONFACTOR_FACTOR )
rc_getJointCorrectionFactor( GETJOINTCORRECTIONFACTOR_JOINT_ID )
rc_setJointRatio( SETJOINTRATIO_JOINT_ID, SETJOINTRATIO_J_RATIO )
rc_getJointRatio( GETJOINTRATIO_JOINT_ID )
rc_setJointLinearOffset( SETJOINTLINEAROFFSET_JOINT_ID, SETJOINTLINEAROFFSET_X, SETJOINTLINEAROFFSET_Y )
rc_getJointLinearOffset( GETJOINTLINEAROFFSET_JOINT_ID, &GETJOINTLINEAROFFSET_X, &GETJOINTLINEAROFFSET_Y )
rc_setJointAngularOffset( SETJOINTANGULAROFFSET_JOINT_ID, SETJOINTANGULAROFFSET_ANGLEOFFSET )
rc_getJointAngularOffset( GETJOINTANGULAROFFSET_JOINT_ID )
rc_getJointLocalAxisA( GETJOINTLOCALAXISA_JOINT_ID, &GETJOINTLOCALAXISA_X, &GETJOINTLOCALAXISA_Y )
rc_getJointReferenceAngle( GETJOINTREFERENCEANGLE_JOINT_ID )
rc_getJointTranslation( GETJOINTTRANSLATION_JOINT_ID )
rc_getJointSpeed( GETJOINTSPEED_JOINT_ID )
rc_jointIsLimitEnabled( JOINTISLIMITENABLED_JOINT_ID )
rc_enableJointLimit( ENABLEJOINTLIMIT_JOINT_ID, ENABLEJOINTLIMIT_FLAG )
rc_getJointLowerLimit( GETJOINTLOWERLIMIT_JOINT_ID )
rc_getJointUpperLimit( GETJOINTUPPERLIMIT_JOINT_ID )
rc_setJointLimits( SETJOINTLIMITS_JOINT_ID, SETJOINTLIMITS_LOWER_LIMIT, SETJOINTLIMITS_UPPER_LIMIT )
rc_jointMotorIsEnabled( JOINTMOTORISENABLED_JOINT_ID )
rc_enableJointMotor( ENABLEJOINTMOTOR_JOINT_ID, ENABLEJOINTMOTOR_FLAG )
rc_setJointMotorSpeed( SETJOINTMOTORSPEED_JOINT_ID, SETJOINTMOTORSPEED_SPEED )
rc_getJointMotorSpeed( GETJOINTMOTORSPEED_JOINT_ID )
rc_setJointMaxMotorForce( SETJOINTMAXMOTORFORCE_JOINT_ID, SETJOINTMAXMOTORFORCE_FORCE )
rc_getJointMaxMotorForce( GETJOINTMAXMOTORFORCE_JOINT_ID )
rc_getJointMotorForce( GETJOINTMOTORFORCE_JOINT_ID, GETJOINTMOTORFORCE_INV_DT )
rc_setJointMaxMotorTorque( SETJOINTMAXMOTORTORQUE_JOINT_ID, SETJOINTMAXMOTORTORQUE_TORQUE )
rc_getJointMaxMotorTorque( GETJOINTMAXMOTORTORQUE_JOINT_ID )
rc_getJointMotorTorque( GETJOINTMOTORTORQUE_JOINT_ID, GETJOINTMOTORTORQUE_INV_DT )
rc_getJointGroundAnchorA( GETJOINTGROUNDANCHORA_JOINT_ID, &GETJOINTGROUNDANCHORA_X, &GETJOINTGROUNDANCHORA_Y )
rc_getJointGroundAnchorB( GETJOINTGROUNDANCHORB_JOINT_ID, &GETJOINTGROUNDANCHORB_X, &GETJOINTGROUNDANCHORB_Y )
rc_getJointLengthA( GETJOINTLENGTHA_JOINT_ID )
rc_getJointLengthB( GETJOINTLENGTHB_JOINT_ID )
rc_getJointCurrentLengthA( GETJOINTCURRENTLENGTHA_JOINT_ID )
rc_getJointCurrentLengthB( GETJOINTCURRENTLENGTHB_JOINT_ID )
rc_setJointOrigin( SETJOINTORIGIN_JOINT_ID, SETJOINTORIGIN_X, SETJOINTORIGIN_Y )
rc_getJointAngle( GETJOINTANGLE_JOINT_ID )
rc_getJointLinearSpeed( GETJOINTLINEARSPEED_JOINT_ID )
rc_getJointAngularSpeed( GETJOINTANGULARSPEED_JOINT_ID )
rc_createTileSet( CREATETILESET_IMG_ID, CREATETILESET_TILE_W, CREATETILESET_TILE_H )
rc_setTileAnimationLength( SETTILEANIMATIONLENGTH_TILESET, SETTILEANIMATIONLENGTH_BASE_TILE, SETTILEANIMATIONLENGTH_NUM_FRAMES )
rc_getTileAnimationLength( GETTILEANIMATIONLENGTH_TILESET, GETTILEANIMATIONLENGTH_BASE_TILE )
@@ -540,6 +639,21 @@ rc_getActorAutoCulling( GETACTORAUTOCULLING_ACTOR )
rc_addActorShadow( ADDACTORSHADOW_ACTOR )
rc_removeActorShadow( REMOVEACTORSHADOW_ACTOR )
rc_actorExists( ACTOREXISTS_ACTOR )
rc_createActorAnimation( CREATEACTORANIMATION_ACTOR, CREATEACTORANIMATION_START_FRAME, CREATEACTORANIMATION_END_FRAME, CREATEACTORANIMATION_SPEED )
rc_setActorAnimation( SETACTORANIMATION_ACTOR, SETACTORANIMATION_ANIMATION, SETACTORANIMATION_NUM_LOOPS )
rc_setActorAnimationSpeed( SETACTORANIMATIONSPEED_ACTOR, SETACTORANIMATIONSPEED_ANIMATION, SETACTORANIMATIONSPEED_SPEED )
rc_setActorAnimationFrames( SETACTORANIMATIONFRAMES_ACTOR, SETACTORANIMATIONFRAMES_ANIMATION, SETACTORANIMATIONFRAMES_START_FRAME, SETACTORANIMATIONFRAMES_END_FRAME )
rc_getActorCurrentAnimation( GETACTORCURRENTANIMATION_ACTOR )
rc_getActorAnimationSpeed( GETACTORANIMATIONSPEED_ACTOR, GETACTORANIMATIONSPEED_ANIMATION )
rc_getActorAnimationStartFrame( GETACTORANIMATIONSTARTFRAME_ACTOR, GETACTORANIMATIONSTARTFRAME_ANIMATION )
rc_getActorAnimationEndFrame( GETACTORANIMATIONENDFRAME_ACTOR, GETACTORANIMATIONENDFRAME_ANIMATION )
rc_setActorFrame( SETACTORFRAME_ACTOR, SETACTORFRAME_FRAME )
rc_getActorFrame( GETACTORFRAME_ACTOR )
rc_actorAnimationIsPlaying( ACTORANIMATIONISPLAYING_ACTOR )
rc_numActorAnimationLoops( NUMACTORANIMATIONLOOPS_ACTOR )
rc_setActorMD2Animation( SETACTORMD2ANIMATION_ACTOR, SETACTORMD2ANIMATION_ANIM, SETACTORMD2ANIMATION_NUM_LOOPS )
rc_setActorMD2AnimationByName( SETACTORMD2ANIMATIONBYNAME_ACTOR, SETACTORMD2ANIMATIONBYNAME_ANIM_NAME$, SETACTORMD2ANIMATIONBYNAME_NUM_LOOPS )
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 )
@@ -579,7 +693,7 @@ rc_applyActorImpulseLocal( APPLYACTORIMPULSELOCAL_ACTOR, APPLYACTORIMPULSELOCAL
rc_applyActorImpulseWorld( APPLYACTORIMPULSEWORLD_ACTOR, APPLYACTORIMPULSEWORLD_X, APPLYACTORIMPULSEWORLD_Y, APPLYACTORIMPULSEWORLD_Z, APPLYACTORIMPULSEWORLD_REL_X, APPLYACTORIMPULSEWORLD_REL_Y, APPLYACTORIMPULSEWORLD_REL_Z )
rc_clearActorForces( CLEARACTORFORCES_ACTOR )
rc_updateActorInertiaTensor( UPDATEACTORINERTIATENSOR_ACTOR )
rc_getActorCOMPosition( GETACTORCOMPOSITION_ACTOR, &GETACTORCOMPOSITION_X, &GETACTORCOMPOSITION_Y, &GETACTORCOMPOSITION_Z )
rc_getActorCenter( GETACTORCENTER_ACTOR, &GETACTORCENTER_X, &GETACTORCENTER_Y, &GETACTORCENTER_Z )
rc_getActorRotationQ( GETACTORROTATIONQ_ACTOR, &GETACTORROTATIONQ_X, &GETACTORROTATIONQ_Y, &GETACTORROTATIONQ_Z, &GETACTORROTATIONQ_W )
rc_getActorLinearVelocityWorld( GETACTORLINEARVELOCITYWORLD_ACTOR, &GETACTORLINEARVELOCITYWORLD_X, &GETACTORLINEARVELOCITYWORLD_Y, &GETACTORLINEARVELOCITYWORLD_Z )
rc_getActorAngularVelocityWorld( GETACTORANGULARVELOCITYWORLD_ACTOR, &GETACTORANGULARVELOCITYWORLD_X, &GETACTORANGULARVELOCITYWORLD_Y, &GETACTORANGULARVELOCITYWORLD_Z )
@@ -587,7 +701,7 @@ rc_setActorLinearVelocityLocal( SETACTORLINEARVELOCITYLOCAL_ACTOR, SETACTORLINE
rc_setActorLinearVelocityWorld( SETACTORLINEARVELOCITYWORLD_ACTOR, SETACTORLINEARVELOCITYWORLD_X, SETACTORLINEARVELOCITYWORLD_Y, SETACTORLINEARVELOCITYWORLD_Z )
rc_setActorAngularVelocityLocal( SETACTORANGULARVELOCITYLOCAL_ACTOR, SETACTORANGULARVELOCITYLOCAL_X, SETACTORANGULARVELOCITYLOCAL_Y, SETACTORANGULARVELOCITYLOCAL_Z )
rc_setActorAngularVelocityWorld( SETACTORANGULARVELOCITYWORLD_ACTOR, SETACTORANGULARVELOCITYWORLD_X, SETACTORANGULARVELOCITYWORLD_Y, SETACTORANGULARVELOCITYWORLD_Z )
rc_getActorLocalPointVelocity( GETACTORLOCALPOINTVELOCITY_ACTOR, GETACTORLOCALPOINTVELOCITY_REL_X, GETACTORLOCALPOINTVELOCITY_REL_Y, GETACTORLOCALPOINTVELOCITY_REL_Z, &GETACTORLOCALPOINTVELOCITY_X, &GETACTORLOCALPOINTVELOCITY_Y, &GETACTORLOCALPOINTVELOCITY_Z )
rc_getActorVelocityInLocalPoint( GETACTORVELOCITYINLOCALPOINT_ACTOR, GETACTORVELOCITYINLOCALPOINT_REL_X, GETACTORVELOCITYINLOCALPOINT_REL_Y, GETACTORVELOCITYINLOCALPOINT_REL_Z, &GETACTORVELOCITYINLOCALPOINT_X, &GETACTORVELOCITYINLOCALPOINT_Y, &GETACTORVELOCITYINLOCALPOINT_Z )
rc_getActorLinearVelocityLocal( GETACTORLINEARVELOCITYLOCAL_ACTOR, &GETACTORLINEARVELOCITYLOCAL_X, &GETACTORLINEARVELOCITYLOCAL_Y, &GETACTORLINEARVELOCITYLOCAL_Z )
rc_getActorAngularVelocityLocal( GETACTORANGULARVELOCITYLOCAL_ACTOR, &GETACTORANGULARVELOCITYLOCAL_X, &GETACTORANGULARVELOCITYLOCAL_Y, &GETACTORANGULARVELOCITYLOCAL_Z )
rc_getActorAABB( GETACTORAABB_ACTOR, &GETACTORAABB_MIN_X, &GETACTORAABB_MIN_Y, &GETACTORAABB_MIN_Z, &GETACTORAABB_MAX_X, &GETACTORAABB_MAX_Y, &GETACTORAABB_MAX_Z )
@@ -803,21 +917,6 @@ rc_scaleTerrainTexture( SCALETERRAINTEXTURE_ACTOR, SCALETERRAINTEXTURE_SCALE,
rc_setTerrainCameraMovementDelta( SETTERRAINCAMERAMOVEMENTDELTA_ACTOR, SETTERRAINCAMERAMOVEMENTDELTA_DELTA )
rc_setTerrainCameraRotationDelta( SETTERRAINCAMERAROTATIONDELTA_ACTOR, SETTERRAINCAMERAROTATIONDELTA_DELTA )
rc_setTerrainPatchLOD( SETTERRAINPATCHLOD_ACTOR, SETTERRAINPATCHLOD_PATCHX, SETTERRAINPATCHLOD_PATCHZ, SETTERRAINPATCHLOD_LOD )
rc_createActorAnimation( CREATEACTORANIMATION_ACTOR, CREATEACTORANIMATION_START_FRAME, CREATEACTORANIMATION_END_FRAME, CREATEACTORANIMATION_SPEED )
rc_setActorAnimation( SETACTORANIMATION_ACTOR, SETACTORANIMATION_ANIMATION, SETACTORANIMATION_NUM_LOOPS )
rc_setActorAnimationSpeed( SETACTORANIMATIONSPEED_ACTOR, SETACTORANIMATIONSPEED_ANIMATION, SETACTORANIMATIONSPEED_SPEED )
rc_setActorAnimationFrames( SETACTORANIMATIONFRAMES_ACTOR, SETACTORANIMATIONFRAMES_ANIMATION, SETACTORANIMATIONFRAMES_START_FRAME, SETACTORANIMATIONFRAMES_END_FRAME )
rc_getActorCurrentAnimation( GETACTORCURRENTANIMATION_ACTOR )
rc_getActorAnimationSpeed( GETACTORANIMATIONSPEED_ACTOR, GETACTORANIMATIONSPEED_ANIMATION )
rc_getActorAnimationStartFrame( GETACTORANIMATIONSTARTFRAME_ACTOR, GETACTORANIMATIONSTARTFRAME_ANIMATION )
rc_getActorAnimationEndFrame( GETACTORANIMATIONENDFRAME_ACTOR, GETACTORANIMATIONENDFRAME_ANIMATION )
rc_setActorFrame( SETACTORFRAME_ACTOR, SETACTORFRAME_FRAME )
rc_getActorFrame( GETACTORFRAME_ACTOR )
rc_actorAnimationIsPlaying( ACTORANIMATIONISPLAYING_ACTOR )
rc_numActorAnimationLoops( NUMACTORANIMATIONLOOPS_ACTOR )
rc_setActorMD2Animation( SETACTORMD2ANIMATION_ACTOR, SETACTORMD2ANIMATION_ANIM, SETACTORMD2ANIMATION_NUM_LOOPS )
rc_setActorMD2AnimationByName( SETACTORMD2ANIMATIONBYNAME_ACTOR, SETACTORMD2ANIMATIONBYNAME_ANIM_NAME$, SETACTORMD2ANIMATIONBYNAME_NUM_LOOPS )
rc_deleteActorAnimation( DELETEACTORANIMATION_ACTOR, DELETEACTORANIMATION_ANIMATION )
rc_createMaterial( )
rc_deleteMaterial( DELETEMATERIAL_MATERIAL_ID )
rc_setActorMaterial( SETACTORMATERIAL_ACTOR, SETACTORMATERIAL_MATERIAL_NUM, SETACTORMATERIAL_MATERIAL_ID )

View File

@@ -37,7 +37,7 @@ sub applyActorImpulseLocal( actor, x, y, z, rel_x, rel_y, rel_z)
sub applyActorImpulseWorld( actor, x, y, z, rel_x, rel_y, rel_z)
sub clearActorForces( actor)
sub updateActorInertiaTensor( actor)
sub getActorCOMPosition( actor, ByRef x, ByRef y, ByRef z)
sub getActorCenter( actor, ByRef x, ByRef y, ByRef z)
sub getActorRotationQ( actor, ByRef x, ByRef y, ByRef z, ByRef w)
sub getActorLinearVelocityWorld( actor, ByRef x, ByRef y, ByRef z)
sub getActorAngularVelocityWorld( actor, ByRef x, ByRef y, ByRef z)
@@ -45,7 +45,7 @@ sub setActorLinearVelocityLocal( actor, x, y, z)
sub setActorLinearVelocityWorld( actor, x, y, z)
sub setActorAngularVelocityLocal( actor, x, y, z)
sub setActorAngularVelocityWorld( actor, x, y, z)
sub getActorLocalPointVelocity( actor, rel_x, rel_y, rel_z, ByRef x, ByRef y, ByRef z)
sub getActorVelocityInLocalPoint( actor, rel_x, rel_y, rel_z, ByRef x, ByRef y, ByRef z)
sub getActorLinearVelocityLocal( actor, ByRef x, ByRef y, ByRef z)
sub getActorAngularVelocityLocal( actor, ByRef x, ByRef y, ByRef z)
sub getActorAABB( actor, ByRef min_x, ByRef min_y, ByRef min_z, ByRef max_x, ByRef max_y, ByRef max_z)

View File

@@ -0,0 +1,67 @@
function createDistanceJoint( spriteA, spriteB, aX, aY, bX, bY)
function createFrictionJoint( spriteA, spriteB, x, y)
function createGearJoint( jointA, jointB, g_ratio)
function createMotorJoint( spriteA, spriteB)
function createPrismaticJoint( spriteA, spriteB, aX, aY, axisX, axisY)
function createPulleyJoint( spriteA, spriteB, gaX, gaY, gbX, gbY, aX, aY, bX, bY, j_ratio)
function createRevoluteJoint( spriteA, spriteB, x, y)
function createWeldJoint( spriteA, spriteB, x, y)
function createWheelJoint( spriteA, spriteB, aX, aY, axisX, axisY)
sub getJointWorldAnchorA( joint_id, ByRef x, ByRef y)
sub getJointWorldAnchorB( joint_id, ByRef x, ByRef y)
sub getJointReactionForce( joint_id, inv_dt, ByRef x, ByRef y)
function getJointReactionTorque( joint_id, inv_dt)
sub getJointLocalAnchorA( joint_id, ByRef x, ByRef y)
sub getJointLocalAnchorB( joint_id, ByRef x, ByRef y)
sub setJointLength( joint_id, jlen)
function getJointLength( joint_id)
sub setJointMinLength( joint_id, jlen)
function getJointMinLength( joint_id)
sub setJointMaxLength( joint_id, jlen)
function getJointMaxLength( joint_id)
function getJointCurrentLength( joint_id)
sub setJointStiffness( joint_id, stiffness)
function getJointStiffness( joint_id)
sub setJointDamping( joint_id, damping)
function getJointDamping( joint_id)
sub setJointMaxForce( joint_id, force)
function getJointMaxForce( joint_id)
sub setJointMaxTorque( joint_id, torque)
function getJointMaxTorque( joint_id)
sub setJointCorrectionFactor( joint_id, factor)
function getJointCorrectionFactor( joint_id)
sub setJointRatio( joint_id, j_ratio)
function getJointRatio( joint_id)
sub setJointLinearOffset( joint_id, x, y)
sub getJointLinearOffset( joint_id, ByRef x, ByRef y)
sub setJointAngularOffset( joint_id, angleOffset)
function getJointAngularOffset( joint_id)
sub getJointLocalAxisA( joint_id, ByRef x, ByRef y)
function getJointReferenceAngle( joint_id)
function getJointTranslation( joint_id)
function getJointSpeed( joint_id)
function jointIsLimitEnabled( joint_id)
sub enableJointLimit( joint_id, flag)
function getJointLowerLimit( joint_id)
function getJointUpperLimit( joint_id)
sub setJointLimits( joint_id, lower_limit, upper_limit)
function jointMotorIsEnabled( joint_id)
sub enableJointMotor( joint_id, flag)
sub setJointMotorSpeed( joint_id, speed)
function getJointMotorSpeed( joint_id)
sub setJointMaxMotorForce( joint_id, force)
function getJointMaxMotorForce( joint_id)
function getJointMotorForce( joint_id, inv_dt)
sub setJointMaxMotorTorque( joint_id, torque)
function getJointMaxMotorTorque( joint_id)
function getJointMotorTorque( joint_id, inv_dt)
sub getJointGroundAnchorA( joint_id, ByRef x, ByRef y)
sub getJointGroundAnchorB( joint_id, ByRef x, ByRef y)
function getJointLengthA( joint_id)
function getJointLengthB( joint_id)
function getJointCurrentLengthA( joint_id)
function getJointCurrentLengthB( joint_id)
sub setJointOrigin( joint_id, x, y)
function getJointAngle( joint_id)
function getJointLinearSpeed( joint_id)
function getJointAngularSpeed( joint_id)

View File

@@ -0,0 +1,32 @@
sub getSpriteCenter( spr_id, ByRef x, ByRef y)
sub setSpriteLinearVelocity( spr_id, x, y)
sub getSpriteLinearVelocity( spr_id, ByRef x, ByRef y)
sub setSpriteAngularVelocity( spr_id, av)
function getSpriteAngularVelocity( spr_id)
sub applySpriteForce( spr_id, fX, fY, pX, pY)
sub applySpriteCentralForce( spr_id, x, y)
sub applySpriteTorque( spr_id, torque)
sub applySpriteLinearImpulse( spr_id, iX, iY, pX, pY)
sub applySpriteAngularImpulse( spr_id, impulse)
function getSpriteMass( spr_id)
function getSpriteInertia( spr_id)
sub getSpriteWorldPoint( spr_id, lX, lY, ByRef x, ByRef y)
sub getSpriteWorldVector( spr_id, lX, lY, ByRef x, ByRef y)
sub getSpriteLocalPoint( spr_id, wX, wY, ByRef x, ByRef y)
sub getSpriteLocalVector( spr_id, wX, wY, ByRef x, ByRef y)
sub getSpriteLinearVelocityFromLocalPoint( spr_id, pX, pY, ByRef x, ByRef y)
sub getSpriteLinearVelocityFromWorldPoint( spr_id, wX, wY, ByRef x, ByRef y)
function getSpriteLinearDamping( spr_id)
sub setSpriteLinearDamping( spr_id, linearDamping)
function getSpriteAngularDamping( spr_id)
sub setSpriteAngularDamping( spr_id, angularDamping)
function getSpriteGravityScale( spr_id)
sub setSpriteGravityScale( spr_id, g_scale)
sub setSpriteBullet( spr_id, flag)
function spriteIsBullet( spr_id)
sub setSpriteSleepAllowed( spr_id, flag)
function spriteSleepAllowed( spr_id)
sub setSpriteAwake( spr_id, flag)
function spriteIsAwake( spr_id)
sub setSpriteFixedRotation( spr_id, flag)
function spriteIsFixedRotation( spr_id)

View File

@@ -519,8 +519,6 @@ void init_embedded_functions()
add_embedded_arg("c_num", ID_TYPE_NUM);
add_embedded_arg("state", ID_TYPE_NUM);
embed_function("OpenCanvasSpriteLayer", ID_TYPE_FN_NUM);
add_embedded_arg("w", ID_TYPE_NUM);
add_embedded_arg("h", ID_TYPE_NUM);
add_embedded_arg("viewport_x", ID_TYPE_NUM);
add_embedded_arg("viewport_y", ID_TYPE_NUM);
add_embedded_arg("viewport_w", ID_TYPE_NUM);
@@ -1404,6 +1402,397 @@ void init_embedded_functions()
embed_function("DeleteSpriteAnimation", ID_TYPE_SUB);
add_embedded_arg("sprite", ID_TYPE_NUM);
add_embedded_arg("animation", ID_TYPE_NUM);
embed_function("getSpriteCenter", 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("setSpriteLinearVelocity", 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("getSpriteLinearVelocity", 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("setSpriteAngularVelocity", ID_TYPE_SUB);
add_embedded_arg("spr_id", ID_TYPE_NUM);
add_embedded_arg("av", ID_TYPE_NUM);
embed_function("getSpriteAngularVelocity", ID_TYPE_FN_NUM);
add_embedded_arg("spr_id", ID_TYPE_NUM);
embed_function("applySpriteForce", ID_TYPE_SUB);
add_embedded_arg("spr_id", ID_TYPE_NUM);
add_embedded_arg("fX", ID_TYPE_NUM);
add_embedded_arg("fY", ID_TYPE_NUM);
add_embedded_arg("pX", ID_TYPE_NUM);
add_embedded_arg("pY", ID_TYPE_NUM);
embed_function("applySpriteCentralForce", 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("applySpriteTorque", ID_TYPE_SUB);
add_embedded_arg("spr_id", ID_TYPE_NUM);
add_embedded_arg("torque", ID_TYPE_NUM);
embed_function("applySpriteLinearImpulse", ID_TYPE_SUB);
add_embedded_arg("spr_id", ID_TYPE_NUM);
add_embedded_arg("iX", ID_TYPE_NUM);
add_embedded_arg("iY", ID_TYPE_NUM);
add_embedded_arg("pX", ID_TYPE_NUM);
add_embedded_arg("pY", ID_TYPE_NUM);
embed_function("applySpriteAngularImpulse", ID_TYPE_SUB);
add_embedded_arg("spr_id", ID_TYPE_NUM);
add_embedded_arg("impulse", ID_TYPE_NUM);
embed_function("getSpriteMass", ID_TYPE_FN_NUM);
add_embedded_arg("spr_id", ID_TYPE_NUM);
embed_function("getSpriteInertia", ID_TYPE_FN_NUM);
add_embedded_arg("spr_id", ID_TYPE_NUM);
embed_function("getSpriteWorldPoint", ID_TYPE_SUB);
add_embedded_arg("spr_id", ID_TYPE_NUM);
add_embedded_arg("lX", ID_TYPE_NUM);
add_embedded_arg("lY", ID_TYPE_NUM);
add_embedded_arg("x", ID_TYPE_BYREF_NUM);
add_embedded_arg("y", ID_TYPE_BYREF_NUM);
embed_function("getSpriteWorldVector", ID_TYPE_SUB);
add_embedded_arg("spr_id", ID_TYPE_NUM);
add_embedded_arg("lX", ID_TYPE_NUM);
add_embedded_arg("lY", ID_TYPE_NUM);
add_embedded_arg("x", ID_TYPE_BYREF_NUM);
add_embedded_arg("y", ID_TYPE_BYREF_NUM);
embed_function("getSpriteLocalPoint", ID_TYPE_SUB);
add_embedded_arg("spr_id", ID_TYPE_NUM);
add_embedded_arg("wX", ID_TYPE_NUM);
add_embedded_arg("wY", ID_TYPE_NUM);
add_embedded_arg("x", ID_TYPE_BYREF_NUM);
add_embedded_arg("y", ID_TYPE_BYREF_NUM);
embed_function("getSpriteLocalVector", ID_TYPE_SUB);
add_embedded_arg("spr_id", ID_TYPE_NUM);
add_embedded_arg("wX", ID_TYPE_NUM);
add_embedded_arg("wY", ID_TYPE_NUM);
add_embedded_arg("x", ID_TYPE_BYREF_NUM);
add_embedded_arg("y", ID_TYPE_BYREF_NUM);
embed_function("getSpriteLinearVelocityFromLocalPoint", ID_TYPE_SUB);
add_embedded_arg("spr_id", ID_TYPE_NUM);
add_embedded_arg("pX", ID_TYPE_NUM);
add_embedded_arg("pY", ID_TYPE_NUM);
add_embedded_arg("x", ID_TYPE_BYREF_NUM);
add_embedded_arg("y", ID_TYPE_BYREF_NUM);
embed_function("getSpriteLinearVelocityFromWorldPoint", ID_TYPE_SUB);
add_embedded_arg("spr_id", ID_TYPE_NUM);
add_embedded_arg("wX", ID_TYPE_NUM);
add_embedded_arg("wY", ID_TYPE_NUM);
add_embedded_arg("x", ID_TYPE_BYREF_NUM);
add_embedded_arg("y", ID_TYPE_BYREF_NUM);
embed_function("getSpriteLinearDamping", ID_TYPE_FN_NUM);
add_embedded_arg("spr_id", ID_TYPE_NUM);
embed_function("setSpriteLinearDamping", ID_TYPE_SUB);
add_embedded_arg("spr_id", ID_TYPE_NUM);
add_embedded_arg("linearDamping", ID_TYPE_NUM);
embed_function("getSpriteAngularDamping", ID_TYPE_FN_NUM);
add_embedded_arg("spr_id", ID_TYPE_NUM);
embed_function("setSpriteAngularDamping", ID_TYPE_SUB);
add_embedded_arg("spr_id", ID_TYPE_NUM);
add_embedded_arg("angularDamping", ID_TYPE_NUM);
embed_function("getSpriteGravityScale", ID_TYPE_FN_NUM);
add_embedded_arg("spr_id", ID_TYPE_NUM);
embed_function("setSpriteGravityScale", ID_TYPE_SUB);
add_embedded_arg("spr_id", ID_TYPE_NUM);
add_embedded_arg("g_scale", ID_TYPE_NUM);
embed_function("setSpriteBullet", ID_TYPE_SUB);
add_embedded_arg("spr_id", ID_TYPE_NUM);
add_embedded_arg("flag", ID_TYPE_NUM);
embed_function("spriteIsBullet", ID_TYPE_FN_NUM);
add_embedded_arg("spr_id", ID_TYPE_NUM);
embed_function("setSpriteSleepAllowed", ID_TYPE_SUB);
add_embedded_arg("spr_id", ID_TYPE_NUM);
add_embedded_arg("flag", ID_TYPE_NUM);
embed_function("spriteSleepAllowed", ID_TYPE_FN_NUM);
add_embedded_arg("spr_id", ID_TYPE_NUM);
embed_function("setSpriteAwake", ID_TYPE_SUB);
add_embedded_arg("spr_id", ID_TYPE_NUM);
add_embedded_arg("flag", ID_TYPE_NUM);
embed_function("spriteIsAwake", ID_TYPE_FN_NUM);
add_embedded_arg("spr_id", ID_TYPE_NUM);
embed_function("setSpriteFixedRotation", ID_TYPE_SUB);
add_embedded_arg("spr_id", ID_TYPE_NUM);
add_embedded_arg("flag", ID_TYPE_NUM);
embed_function("spriteIsFixedRotation", ID_TYPE_FN_NUM);
add_embedded_arg("spr_id", ID_TYPE_NUM);
embed_function("createDistanceJoint", ID_TYPE_FN_NUM);
add_embedded_arg("spriteA", ID_TYPE_NUM);
add_embedded_arg("spriteB", ID_TYPE_NUM);
add_embedded_arg("aX", ID_TYPE_NUM);
add_embedded_arg("aY", ID_TYPE_NUM);
add_embedded_arg("bX", ID_TYPE_NUM);
add_embedded_arg("bY", ID_TYPE_NUM);
embed_function("createFrictionJoint", ID_TYPE_FN_NUM);
add_embedded_arg("spriteA", ID_TYPE_NUM);
add_embedded_arg("spriteB", ID_TYPE_NUM);
add_embedded_arg("x", ID_TYPE_NUM);
add_embedded_arg("y", ID_TYPE_NUM);
embed_function("createGearJoint", ID_TYPE_FN_NUM);
add_embedded_arg("jointA", ID_TYPE_NUM);
add_embedded_arg("jointB", ID_TYPE_NUM);
add_embedded_arg("g_ratio", ID_TYPE_NUM);
embed_function("createMotorJoint", ID_TYPE_FN_NUM);
add_embedded_arg("spriteA", ID_TYPE_NUM);
add_embedded_arg("spriteB", ID_TYPE_NUM);
embed_function("createPrismaticJoint", ID_TYPE_FN_NUM);
add_embedded_arg("spriteA", ID_TYPE_NUM);
add_embedded_arg("spriteB", ID_TYPE_NUM);
add_embedded_arg("aX", ID_TYPE_NUM);
add_embedded_arg("aY", ID_TYPE_NUM);
add_embedded_arg("axisX", ID_TYPE_NUM);
add_embedded_arg("axisY", ID_TYPE_NUM);
embed_function("createPulleyJoint", ID_TYPE_FN_NUM);
add_embedded_arg("spriteA", ID_TYPE_NUM);
add_embedded_arg("spriteB", ID_TYPE_NUM);
add_embedded_arg("gaX", ID_TYPE_NUM);
add_embedded_arg("gaY", ID_TYPE_NUM);
add_embedded_arg("gbX", ID_TYPE_NUM);
add_embedded_arg("gbY", ID_TYPE_NUM);
add_embedded_arg("aX", ID_TYPE_NUM);
add_embedded_arg("aY", ID_TYPE_NUM);
add_embedded_arg("bX", ID_TYPE_NUM);
add_embedded_arg("bY", ID_TYPE_NUM);
add_embedded_arg("j_ratio", ID_TYPE_NUM);
embed_function("createRevoluteJoint", ID_TYPE_FN_NUM);
add_embedded_arg("spriteA", ID_TYPE_NUM);
add_embedded_arg("spriteB", ID_TYPE_NUM);
add_embedded_arg("x", ID_TYPE_NUM);
add_embedded_arg("y", ID_TYPE_NUM);
embed_function("createWeldJoint", ID_TYPE_FN_NUM);
add_embedded_arg("spriteA", ID_TYPE_NUM);
add_embedded_arg("spriteB", ID_TYPE_NUM);
add_embedded_arg("x", ID_TYPE_NUM);
add_embedded_arg("y", ID_TYPE_NUM);
embed_function("createWheelJoint", ID_TYPE_FN_NUM);
add_embedded_arg("spriteA", ID_TYPE_NUM);
add_embedded_arg("spriteB", ID_TYPE_NUM);
add_embedded_arg("aX", ID_TYPE_NUM);
add_embedded_arg("aY", ID_TYPE_NUM);
add_embedded_arg("axisX", ID_TYPE_NUM);
add_embedded_arg("axisY", ID_TYPE_NUM);
embed_function("getJointWorldAnchorA", ID_TYPE_SUB);
add_embedded_arg("joint_id", ID_TYPE_NUM);
add_embedded_arg("x", ID_TYPE_BYREF_NUM);
add_embedded_arg("y", ID_TYPE_BYREF_NUM);
embed_function("getJointWorldAnchorB", ID_TYPE_SUB);
add_embedded_arg("joint_id", ID_TYPE_NUM);
add_embedded_arg("x", ID_TYPE_BYREF_NUM);
add_embedded_arg("y", ID_TYPE_BYREF_NUM);
embed_function("getJointReactionForce", ID_TYPE_SUB);
add_embedded_arg("joint_id", ID_TYPE_NUM);
add_embedded_arg("inv_dt", ID_TYPE_NUM);
add_embedded_arg("x", ID_TYPE_BYREF_NUM);
add_embedded_arg("y", ID_TYPE_BYREF_NUM);
embed_function("getJointReactionTorque", ID_TYPE_FN_NUM);
add_embedded_arg("joint_id", ID_TYPE_NUM);
add_embedded_arg("inv_dt", ID_TYPE_NUM);
embed_function("getJointLocalAnchorA", ID_TYPE_SUB);
add_embedded_arg("joint_id", ID_TYPE_NUM);
add_embedded_arg("x", ID_TYPE_BYREF_NUM);
add_embedded_arg("y", ID_TYPE_BYREF_NUM);
embed_function("getJointLocalAnchorB", ID_TYPE_SUB);
add_embedded_arg("joint_id", ID_TYPE_NUM);
add_embedded_arg("x", ID_TYPE_BYREF_NUM);
add_embedded_arg("y", ID_TYPE_BYREF_NUM);
embed_function("setJointLength", ID_TYPE_SUB);
add_embedded_arg("joint_id", ID_TYPE_NUM);
add_embedded_arg("jlen", ID_TYPE_NUM);
embed_function("getJointLength", ID_TYPE_FN_NUM);
add_embedded_arg("joint_id", ID_TYPE_NUM);
embed_function("setJointMinLength", ID_TYPE_SUB);
add_embedded_arg("joint_id", ID_TYPE_NUM);
add_embedded_arg("jlen", ID_TYPE_NUM);
embed_function("getJointMinLength", ID_TYPE_FN_NUM);
add_embedded_arg("joint_id", ID_TYPE_NUM);
embed_function("setJointMaxLength", ID_TYPE_SUB);
add_embedded_arg("joint_id", ID_TYPE_NUM);
add_embedded_arg("jlen", ID_TYPE_NUM);
embed_function("getJointMaxLength", ID_TYPE_FN_NUM);
add_embedded_arg("joint_id", ID_TYPE_NUM);
embed_function("getJointCurrentLength", ID_TYPE_FN_NUM);
add_embedded_arg("joint_id", ID_TYPE_NUM);
embed_function("setJointStiffness", ID_TYPE_SUB);
add_embedded_arg("joint_id", ID_TYPE_NUM);
add_embedded_arg("stiffness", ID_TYPE_NUM);
embed_function("getJointStiffness", ID_TYPE_FN_NUM);
add_embedded_arg("joint_id", ID_TYPE_NUM);
embed_function("setJointDamping", ID_TYPE_SUB);
add_embedded_arg("joint_id", ID_TYPE_NUM);
add_embedded_arg("damping", ID_TYPE_NUM);
embed_function("getJointDamping", ID_TYPE_FN_NUM);
add_embedded_arg("joint_id", ID_TYPE_NUM);
embed_function("setJointMaxForce", ID_TYPE_SUB);
add_embedded_arg("joint_id", ID_TYPE_NUM);
add_embedded_arg("force", ID_TYPE_NUM);
embed_function("getJointMaxForce", ID_TYPE_FN_NUM);
add_embedded_arg("joint_id", ID_TYPE_NUM);
embed_function("setJointMaxTorque", ID_TYPE_SUB);
add_embedded_arg("joint_id", ID_TYPE_NUM);
add_embedded_arg("torque", ID_TYPE_NUM);
embed_function("getJointMaxTorque", ID_TYPE_FN_NUM);
add_embedded_arg("joint_id", ID_TYPE_NUM);
embed_function("setJointCorrectionFactor", ID_TYPE_SUB);
add_embedded_arg("joint_id", ID_TYPE_NUM);
add_embedded_arg("factor", ID_TYPE_NUM);
embed_function("getJointCorrectionFactor", ID_TYPE_FN_NUM);
add_embedded_arg("joint_id", ID_TYPE_NUM);
embed_function("setJointRatio", ID_TYPE_SUB);
add_embedded_arg("joint_id", ID_TYPE_NUM);
add_embedded_arg("j_ratio", ID_TYPE_NUM);
embed_function("getJointRatio", ID_TYPE_FN_NUM);
add_embedded_arg("joint_id", ID_TYPE_NUM);
embed_function("setJointLinearOffset", ID_TYPE_SUB);
add_embedded_arg("joint_id", ID_TYPE_NUM);
add_embedded_arg("x", ID_TYPE_NUM);
add_embedded_arg("y", ID_TYPE_NUM);
embed_function("getJointLinearOffset", ID_TYPE_SUB);
add_embedded_arg("joint_id", ID_TYPE_NUM);
add_embedded_arg("x", ID_TYPE_BYREF_NUM);
add_embedded_arg("y", ID_TYPE_BYREF_NUM);
embed_function("setJointAngularOffset", ID_TYPE_SUB);
add_embedded_arg("joint_id", ID_TYPE_NUM);
add_embedded_arg("angleOffset", ID_TYPE_NUM);
embed_function("getJointAngularOffset", ID_TYPE_FN_NUM);
add_embedded_arg("joint_id", ID_TYPE_NUM);
embed_function("getJointLocalAxisA", ID_TYPE_SUB);
add_embedded_arg("joint_id", ID_TYPE_NUM);
add_embedded_arg("x", ID_TYPE_BYREF_NUM);
add_embedded_arg("y", ID_TYPE_BYREF_NUM);
embed_function("getJointReferenceAngle", ID_TYPE_FN_NUM);
add_embedded_arg("joint_id", ID_TYPE_NUM);
embed_function("getJointTranslation", ID_TYPE_FN_NUM);
add_embedded_arg("joint_id", ID_TYPE_NUM);
embed_function("getJointSpeed", ID_TYPE_FN_NUM);
add_embedded_arg("joint_id", ID_TYPE_NUM);
embed_function("jointIsLimitEnabled", ID_TYPE_FN_NUM);
add_embedded_arg("joint_id", ID_TYPE_NUM);
embed_function("enableJointLimit", ID_TYPE_SUB);
add_embedded_arg("joint_id", ID_TYPE_NUM);
add_embedded_arg("flag", ID_TYPE_NUM);
embed_function("getJointLowerLimit", ID_TYPE_FN_NUM);
add_embedded_arg("joint_id", ID_TYPE_NUM);
embed_function("getJointUpperLimit", ID_TYPE_FN_NUM);
add_embedded_arg("joint_id", ID_TYPE_NUM);
embed_function("setJointLimits", ID_TYPE_SUB);
add_embedded_arg("joint_id", ID_TYPE_NUM);
add_embedded_arg("lower_limit", ID_TYPE_NUM);
add_embedded_arg("upper_limit", ID_TYPE_NUM);
embed_function("jointMotorIsEnabled", ID_TYPE_FN_NUM);
add_embedded_arg("joint_id", ID_TYPE_NUM);
embed_function("enableJointMotor", ID_TYPE_SUB);
add_embedded_arg("joint_id", ID_TYPE_NUM);
add_embedded_arg("flag", ID_TYPE_NUM);
embed_function("setJointMotorSpeed", ID_TYPE_SUB);
add_embedded_arg("joint_id", ID_TYPE_NUM);
add_embedded_arg("speed", ID_TYPE_NUM);
embed_function("getJointMotorSpeed", ID_TYPE_FN_NUM);
add_embedded_arg("joint_id", ID_TYPE_NUM);
embed_function("setJointMaxMotorForce", ID_TYPE_SUB);
add_embedded_arg("joint_id", ID_TYPE_NUM);
add_embedded_arg("force", ID_TYPE_NUM);
embed_function("getJointMaxMotorForce", ID_TYPE_FN_NUM);
add_embedded_arg("joint_id", ID_TYPE_NUM);
embed_function("getJointMotorForce", ID_TYPE_FN_NUM);
add_embedded_arg("joint_id", ID_TYPE_NUM);
add_embedded_arg("inv_dt", ID_TYPE_NUM);
embed_function("setJointMaxMotorTorque", ID_TYPE_SUB);
add_embedded_arg("joint_id", ID_TYPE_NUM);
add_embedded_arg("torque", ID_TYPE_NUM);
embed_function("getJointMaxMotorTorque", ID_TYPE_FN_NUM);
add_embedded_arg("joint_id", ID_TYPE_NUM);
embed_function("getJointMotorTorque", ID_TYPE_FN_NUM);
add_embedded_arg("joint_id", ID_TYPE_NUM);
add_embedded_arg("inv_dt", ID_TYPE_NUM);
embed_function("getJointGroundAnchorA", ID_TYPE_SUB);
add_embedded_arg("joint_id", ID_TYPE_NUM);
add_embedded_arg("x", ID_TYPE_BYREF_NUM);
add_embedded_arg("y", ID_TYPE_BYREF_NUM);
embed_function("getJointGroundAnchorB", ID_TYPE_SUB);
add_embedded_arg("joint_id", ID_TYPE_NUM);
add_embedded_arg("x", ID_TYPE_BYREF_NUM);
add_embedded_arg("y", ID_TYPE_BYREF_NUM);
embed_function("getJointLengthA", ID_TYPE_FN_NUM);
add_embedded_arg("joint_id", ID_TYPE_NUM);
embed_function("getJointLengthB", ID_TYPE_FN_NUM);
add_embedded_arg("joint_id", ID_TYPE_NUM);
embed_function("getJointCurrentLengthA", ID_TYPE_FN_NUM);
add_embedded_arg("joint_id", ID_TYPE_NUM);
embed_function("getJointCurrentLengthB", ID_TYPE_FN_NUM);
add_embedded_arg("joint_id", ID_TYPE_NUM);
embed_function("setJointOrigin", ID_TYPE_SUB);
add_embedded_arg("joint_id", ID_TYPE_NUM);
add_embedded_arg("x", ID_TYPE_NUM);
add_embedded_arg("y", ID_TYPE_NUM);
embed_function("getJointAngle", ID_TYPE_FN_NUM);
add_embedded_arg("joint_id", ID_TYPE_NUM);
embed_function("getJointLinearSpeed", ID_TYPE_FN_NUM);
add_embedded_arg("joint_id", ID_TYPE_NUM);
embed_function("getJointAngularSpeed", ID_TYPE_FN_NUM);
add_embedded_arg("joint_id", ID_TYPE_NUM);
embed_function("CreateTileSet", ID_TYPE_FN_NUM);
add_embedded_arg("img_id", ID_TYPE_NUM);
add_embedded_arg("tile_w", ID_TYPE_NUM);
add_embedded_arg("tile_h", ID_TYPE_NUM);
embed_function("SetTileAnimationLength", ID_TYPE_SUB);
add_embedded_arg("tileset", ID_TYPE_NUM);
add_embedded_arg("base_tile", ID_TYPE_NUM);
add_embedded_arg("num_frames", ID_TYPE_NUM);
embed_function("GetTileAnimationLength", ID_TYPE_FN_NUM);
add_embedded_arg("tileset", ID_TYPE_NUM);
add_embedded_arg("base_tile", ID_TYPE_NUM);
embed_function("SetTileAnimationFrame", ID_TYPE_SUB);
add_embedded_arg("tileset", ID_TYPE_NUM);
add_embedded_arg("base_tile", ID_TYPE_NUM);
add_embedded_arg("anim_frame", ID_TYPE_NUM);
add_embedded_arg("tile_frame", ID_TYPE_NUM);
embed_function("GetTileAnimationFrame", ID_TYPE_FN_NUM);
add_embedded_arg("tileset", ID_TYPE_NUM);
add_embedded_arg("base_tile", ID_TYPE_NUM);
add_embedded_arg("anim_frame", ID_TYPE_NUM);
embed_function("SetTileAnimationSpeed", ID_TYPE_SUB);
add_embedded_arg("tileset", ID_TYPE_NUM);
add_embedded_arg("base_tile", ID_TYPE_NUM);
add_embedded_arg("speed", ID_TYPE_NUM);
embed_function("GetTileAnimationSpeed", ID_TYPE_FN_NUM);
add_embedded_arg("tileset", ID_TYPE_NUM);
add_embedded_arg("base_tile", ID_TYPE_NUM);
embed_function("CreateTileMap", ID_TYPE_FN_NUM);
add_embedded_arg("tileset", ID_TYPE_NUM);
add_embedded_arg("widthInTiles", ID_TYPE_NUM);
add_embedded_arg("heightInTiles", ID_TYPE_NUM);
embed_function("SetTileMapSize", ID_TYPE_SUB);
add_embedded_arg("tilemap", ID_TYPE_NUM);
add_embedded_arg("widthInTiles", ID_TYPE_NUM);
add_embedded_arg("heightInTiles", ID_TYPE_NUM);
embed_function("GetTileMapSize", ID_TYPE_SUB);
add_embedded_arg("tilemap", ID_TYPE_NUM);
add_embedded_arg("widthInTiles", ID_TYPE_BYREF_NUM);
add_embedded_arg("heightInTiles", ID_TYPE_BYREF_NUM);
embed_function("SetTile", ID_TYPE_SUB);
add_embedded_arg("tilemap", ID_TYPE_NUM);
add_embedded_arg("tile", ID_TYPE_NUM);
add_embedded_arg("x", ID_TYPE_NUM);
add_embedded_arg("y", ID_TYPE_NUM);
embed_function("GetTile", ID_TYPE_FN_NUM);
add_embedded_arg("tilemap", ID_TYPE_NUM);
add_embedded_arg("x", ID_TYPE_NUM);
add_embedded_arg("y", ID_TYPE_NUM);
embed_function("FillTile", ID_TYPE_SUB);
add_embedded_arg("tilemap", ID_TYPE_NUM);
add_embedded_arg("tile", ID_TYPE_NUM);
add_embedded_arg("x", ID_TYPE_NUM);
add_embedded_arg("y", ID_TYPE_NUM);
add_embedded_arg("widthInTiles", ID_TYPE_NUM);
add_embedded_arg("heightInTiles", ID_TYPE_NUM);
embed_function("DrawTileMap", ID_TYPE_SUB);
add_embedded_arg("tilemap", ID_TYPE_NUM);
add_embedded_arg("x", ID_TYPE_NUM);
add_embedded_arg("y", ID_TYPE_NUM);
add_embedded_arg("w", ID_TYPE_NUM);
add_embedded_arg("h", ID_TYPE_NUM);
add_embedded_arg("offset_x", ID_TYPE_NUM);
add_embedded_arg("offset_y", ID_TYPE_NUM);
embed_function("LoadMesh", ID_TYPE_FN_NUM);
add_embedded_arg("mesh_file$", ID_TYPE_STR);
embed_function("DeleteMesh", ID_TYPE_SUB);
@@ -1525,6 +1914,55 @@ void init_embedded_functions()
add_embedded_arg("actor", ID_TYPE_NUM);
embed_function("ActorExists", ID_TYPE_FN_NUM);
add_embedded_arg("actor", ID_TYPE_NUM);
embed_function("CreateActorAnimation", ID_TYPE_FN_NUM);
add_embedded_arg("actor", ID_TYPE_NUM);
add_embedded_arg("start_frame", ID_TYPE_NUM);
add_embedded_arg("end_frame", ID_TYPE_NUM);
add_embedded_arg("speed", ID_TYPE_NUM);
embed_function("SetActorAnimation", ID_TYPE_SUB);
add_embedded_arg("actor", ID_TYPE_NUM);
add_embedded_arg("animation", ID_TYPE_NUM);
add_embedded_arg("num_loops", ID_TYPE_NUM);
embed_function("SetActorAnimationSpeed", ID_TYPE_SUB);
add_embedded_arg("actor", ID_TYPE_NUM);
add_embedded_arg("animation", ID_TYPE_NUM);
add_embedded_arg("speed", ID_TYPE_NUM);
embed_function("SetActorAnimationFrames", ID_TYPE_SUB);
add_embedded_arg("actor", ID_TYPE_NUM);
add_embedded_arg("animation", ID_TYPE_NUM);
add_embedded_arg("start_frame", ID_TYPE_NUM);
add_embedded_arg("end_frame", ID_TYPE_NUM);
embed_function("GetActorCurrentAnimation", ID_TYPE_FN_NUM);
add_embedded_arg("actor", ID_TYPE_NUM);
embed_function("GetActorAnimationSpeed", ID_TYPE_FN_NUM);
add_embedded_arg("actor", ID_TYPE_NUM);
add_embedded_arg("animation", ID_TYPE_NUM);
embed_function("GetActorAnimationStartFrame", ID_TYPE_FN_NUM);
add_embedded_arg("actor", ID_TYPE_NUM);
add_embedded_arg("animation", ID_TYPE_NUM);
embed_function("GetActorAnimationEndFrame", ID_TYPE_FN_NUM);
add_embedded_arg("actor", ID_TYPE_NUM);
add_embedded_arg("animation", ID_TYPE_NUM);
embed_function("SetActorFrame", ID_TYPE_SUB);
add_embedded_arg("actor", ID_TYPE_NUM);
add_embedded_arg("frame", ID_TYPE_NUM);
embed_function("GetActorFrame", ID_TYPE_FN_NUM);
add_embedded_arg("actor", ID_TYPE_NUM);
embed_function("ActorAnimationIsPlaying", ID_TYPE_FN_NUM);
add_embedded_arg("actor", ID_TYPE_NUM);
embed_function("NumActorAnimationLoops", ID_TYPE_FN_NUM);
add_embedded_arg("actor", ID_TYPE_NUM);
embed_function("SetActorMD2Animation", ID_TYPE_SUB);
add_embedded_arg("actor", ID_TYPE_NUM);
add_embedded_arg("anim", ID_TYPE_NUM);
add_embedded_arg("num_loops", ID_TYPE_NUM);
embed_function("SetActorMD2AnimationByName", ID_TYPE_SUB);
add_embedded_arg("actor", ID_TYPE_NUM);
add_embedded_arg("anim_name$", ID_TYPE_STR);
add_embedded_arg("num_loops", ID_TYPE_NUM);
embed_function("DeleteActorAnimation", ID_TYPE_SUB);
add_embedded_arg("actor", ID_TYPE_NUM);
add_embedded_arg("animation", ID_TYPE_NUM);
embed_function("SetGravity3D", ID_TYPE_SUB);
add_embedded_arg("x", ID_TYPE_NUM);
add_embedded_arg("y", ID_TYPE_NUM);
@@ -1693,7 +2131,7 @@ void init_embedded_functions()
add_embedded_arg("actor", ID_TYPE_NUM);
embed_function("updateActorInertiaTensor", ID_TYPE_SUB);
add_embedded_arg("actor", ID_TYPE_NUM);
embed_function("getActorCOMPosition", ID_TYPE_SUB);
embed_function("getActorCenter", ID_TYPE_SUB);
add_embedded_arg("actor", ID_TYPE_NUM);
add_embedded_arg("x", ID_TYPE_BYREF_NUM);
add_embedded_arg("y", ID_TYPE_BYREF_NUM);
@@ -1734,7 +2172,7 @@ void init_embedded_functions()
add_embedded_arg("x", ID_TYPE_NUM);
add_embedded_arg("y", ID_TYPE_NUM);
add_embedded_arg("z", ID_TYPE_NUM);
embed_function("getActorLocalPointVelocity", ID_TYPE_SUB);
embed_function("getActorVelocityInLocalPoint", ID_TYPE_SUB);
add_embedded_arg("actor", ID_TYPE_NUM);
add_embedded_arg("rel_x", ID_TYPE_NUM);
add_embedded_arg("rel_y", ID_TYPE_NUM);
@@ -2436,55 +2874,6 @@ void init_embedded_functions()
add_embedded_arg("patchX", ID_TYPE_NUM);
add_embedded_arg("patchZ", ID_TYPE_NUM);
add_embedded_arg("LOD", ID_TYPE_NUM);
embed_function("CreateActorAnimation", ID_TYPE_FN_NUM);
add_embedded_arg("actor", ID_TYPE_NUM);
add_embedded_arg("start_frame", ID_TYPE_NUM);
add_embedded_arg("end_frame", ID_TYPE_NUM);
add_embedded_arg("speed", ID_TYPE_NUM);
embed_function("SetActorAnimation", ID_TYPE_SUB);
add_embedded_arg("actor", ID_TYPE_NUM);
add_embedded_arg("animation", ID_TYPE_NUM);
add_embedded_arg("num_loops", ID_TYPE_NUM);
embed_function("SetActorAnimationSpeed", ID_TYPE_SUB);
add_embedded_arg("actor", ID_TYPE_NUM);
add_embedded_arg("animation", ID_TYPE_NUM);
add_embedded_arg("speed", ID_TYPE_NUM);
embed_function("SetActorAnimationFrames", ID_TYPE_SUB);
add_embedded_arg("actor", ID_TYPE_NUM);
add_embedded_arg("animation", ID_TYPE_NUM);
add_embedded_arg("start_frame", ID_TYPE_NUM);
add_embedded_arg("end_frame", ID_TYPE_NUM);
embed_function("GetActorCurrentAnimation", ID_TYPE_FN_NUM);
add_embedded_arg("actor", ID_TYPE_NUM);
embed_function("GetActorAnimationSpeed", ID_TYPE_FN_NUM);
add_embedded_arg("actor", ID_TYPE_NUM);
add_embedded_arg("animation", ID_TYPE_NUM);
embed_function("GetActorAnimationStartFrame", ID_TYPE_FN_NUM);
add_embedded_arg("actor", ID_TYPE_NUM);
add_embedded_arg("animation", ID_TYPE_NUM);
embed_function("GetActorAnimationEndFrame", ID_TYPE_FN_NUM);
add_embedded_arg("actor", ID_TYPE_NUM);
add_embedded_arg("animation", ID_TYPE_NUM);
embed_function("SetActorFrame", ID_TYPE_SUB);
add_embedded_arg("actor", ID_TYPE_NUM);
add_embedded_arg("frame", ID_TYPE_NUM);
embed_function("GetActorFrame", ID_TYPE_FN_NUM);
add_embedded_arg("actor", ID_TYPE_NUM);
embed_function("ActorAnimationIsPlaying", ID_TYPE_FN_NUM);
add_embedded_arg("actor", ID_TYPE_NUM);
embed_function("NumActorAnimationLoops", ID_TYPE_FN_NUM);
add_embedded_arg("actor", ID_TYPE_NUM);
embed_function("SetActorMD2Animation", ID_TYPE_SUB);
add_embedded_arg("actor", ID_TYPE_NUM);
add_embedded_arg("anim", ID_TYPE_NUM);
add_embedded_arg("num_loops", ID_TYPE_NUM);
embed_function("SetActorMD2AnimationByName", ID_TYPE_SUB);
add_embedded_arg("actor", ID_TYPE_NUM);
add_embedded_arg("anim_name$", ID_TYPE_STR);
add_embedded_arg("num_loops", ID_TYPE_NUM);
embed_function("DeleteActorAnimation", ID_TYPE_SUB);
add_embedded_arg("actor", ID_TYPE_NUM);
add_embedded_arg("animation", ID_TYPE_NUM);
embed_function("createMaterial", ID_TYPE_FN_NUM);
embed_function("deleteMaterial", ID_TYPE_SUB);
add_embedded_arg("material_id", ID_TYPE_NUM);

Binary file not shown.

View File

@@ -513,8 +513,6 @@ embed_function("SetCanvasPhysics2D", ID_TYPE_SUB);
add_embedded_arg("c_num", ID_TYPE_NUM);
add_embedded_arg("state", ID_TYPE_NUM);
embed_function("OpenCanvasSpriteLayer", ID_TYPE_FN_NUM);
add_embedded_arg("w", ID_TYPE_NUM);
add_embedded_arg("h", ID_TYPE_NUM);
add_embedded_arg("viewport_x", ID_TYPE_NUM);
add_embedded_arg("viewport_y", ID_TYPE_NUM);
add_embedded_arg("viewport_w", ID_TYPE_NUM);
@@ -1398,6 +1396,397 @@ add_embedded_arg("sprite", ID_TYPE_NUM);
embed_function("DeleteSpriteAnimation", ID_TYPE_SUB);
add_embedded_arg("sprite", ID_TYPE_NUM);
add_embedded_arg("animation", ID_TYPE_NUM);
embed_function("getSpriteCenter", 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("setSpriteLinearVelocity", 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("getSpriteLinearVelocity", 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("setSpriteAngularVelocity", ID_TYPE_SUB);
add_embedded_arg("spr_id", ID_TYPE_NUM);
add_embedded_arg("av", ID_TYPE_NUM);
embed_function("getSpriteAngularVelocity", ID_TYPE_FN_NUM);
add_embedded_arg("spr_id", ID_TYPE_NUM);
embed_function("applySpriteForce", ID_TYPE_SUB);
add_embedded_arg("spr_id", ID_TYPE_NUM);
add_embedded_arg("fX", ID_TYPE_NUM);
add_embedded_arg("fY", ID_TYPE_NUM);
add_embedded_arg("pX", ID_TYPE_NUM);
add_embedded_arg("pY", ID_TYPE_NUM);
embed_function("applySpriteCentralForce", 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("applySpriteTorque", ID_TYPE_SUB);
add_embedded_arg("spr_id", ID_TYPE_NUM);
add_embedded_arg("torque", ID_TYPE_NUM);
embed_function("applySpriteLinearImpulse", ID_TYPE_SUB);
add_embedded_arg("spr_id", ID_TYPE_NUM);
add_embedded_arg("iX", ID_TYPE_NUM);
add_embedded_arg("iY", ID_TYPE_NUM);
add_embedded_arg("pX", ID_TYPE_NUM);
add_embedded_arg("pY", ID_TYPE_NUM);
embed_function("applySpriteAngularImpulse", ID_TYPE_SUB);
add_embedded_arg("spr_id", ID_TYPE_NUM);
add_embedded_arg("impulse", ID_TYPE_NUM);
embed_function("getSpriteMass", ID_TYPE_FN_NUM);
add_embedded_arg("spr_id", ID_TYPE_NUM);
embed_function("getSpriteInertia", ID_TYPE_FN_NUM);
add_embedded_arg("spr_id", ID_TYPE_NUM);
embed_function("getSpriteWorldPoint", ID_TYPE_SUB);
add_embedded_arg("spr_id", ID_TYPE_NUM);
add_embedded_arg("lX", ID_TYPE_NUM);
add_embedded_arg("lY", ID_TYPE_NUM);
add_embedded_arg("x", ID_TYPE_BYREF_NUM);
add_embedded_arg("y", ID_TYPE_BYREF_NUM);
embed_function("getSpriteWorldVector", ID_TYPE_SUB);
add_embedded_arg("spr_id", ID_TYPE_NUM);
add_embedded_arg("lX", ID_TYPE_NUM);
add_embedded_arg("lY", ID_TYPE_NUM);
add_embedded_arg("x", ID_TYPE_BYREF_NUM);
add_embedded_arg("y", ID_TYPE_BYREF_NUM);
embed_function("getSpriteLocalPoint", ID_TYPE_SUB);
add_embedded_arg("spr_id", ID_TYPE_NUM);
add_embedded_arg("wX", ID_TYPE_NUM);
add_embedded_arg("wY", ID_TYPE_NUM);
add_embedded_arg("x", ID_TYPE_BYREF_NUM);
add_embedded_arg("y", ID_TYPE_BYREF_NUM);
embed_function("getSpriteLocalVector", ID_TYPE_SUB);
add_embedded_arg("spr_id", ID_TYPE_NUM);
add_embedded_arg("wX", ID_TYPE_NUM);
add_embedded_arg("wY", ID_TYPE_NUM);
add_embedded_arg("x", ID_TYPE_BYREF_NUM);
add_embedded_arg("y", ID_TYPE_BYREF_NUM);
embed_function("getSpriteLinearVelocityFromLocalPoint", ID_TYPE_SUB);
add_embedded_arg("spr_id", ID_TYPE_NUM);
add_embedded_arg("pX", ID_TYPE_NUM);
add_embedded_arg("pY", ID_TYPE_NUM);
add_embedded_arg("x", ID_TYPE_BYREF_NUM);
add_embedded_arg("y", ID_TYPE_BYREF_NUM);
embed_function("getSpriteLinearVelocityFromWorldPoint", ID_TYPE_SUB);
add_embedded_arg("spr_id", ID_TYPE_NUM);
add_embedded_arg("wX", ID_TYPE_NUM);
add_embedded_arg("wY", ID_TYPE_NUM);
add_embedded_arg("x", ID_TYPE_BYREF_NUM);
add_embedded_arg("y", ID_TYPE_BYREF_NUM);
embed_function("getSpriteLinearDamping", ID_TYPE_FN_NUM);
add_embedded_arg("spr_id", ID_TYPE_NUM);
embed_function("setSpriteLinearDamping", ID_TYPE_SUB);
add_embedded_arg("spr_id", ID_TYPE_NUM);
add_embedded_arg("linearDamping", ID_TYPE_NUM);
embed_function("getSpriteAngularDamping", ID_TYPE_FN_NUM);
add_embedded_arg("spr_id", ID_TYPE_NUM);
embed_function("setSpriteAngularDamping", ID_TYPE_SUB);
add_embedded_arg("spr_id", ID_TYPE_NUM);
add_embedded_arg("angularDamping", ID_TYPE_NUM);
embed_function("getSpriteGravityScale", ID_TYPE_FN_NUM);
add_embedded_arg("spr_id", ID_TYPE_NUM);
embed_function("setSpriteGravityScale", ID_TYPE_SUB);
add_embedded_arg("spr_id", ID_TYPE_NUM);
add_embedded_arg("g_scale", ID_TYPE_NUM);
embed_function("setSpriteBullet", ID_TYPE_SUB);
add_embedded_arg("spr_id", ID_TYPE_NUM);
add_embedded_arg("flag", ID_TYPE_NUM);
embed_function("spriteIsBullet", ID_TYPE_FN_NUM);
add_embedded_arg("spr_id", ID_TYPE_NUM);
embed_function("setSpriteSleepAllowed", ID_TYPE_SUB);
add_embedded_arg("spr_id", ID_TYPE_NUM);
add_embedded_arg("flag", ID_TYPE_NUM);
embed_function("spriteSleepAllowed", ID_TYPE_FN_NUM);
add_embedded_arg("spr_id", ID_TYPE_NUM);
embed_function("setSpriteAwake", ID_TYPE_SUB);
add_embedded_arg("spr_id", ID_TYPE_NUM);
add_embedded_arg("flag", ID_TYPE_NUM);
embed_function("spriteIsAwake", ID_TYPE_FN_NUM);
add_embedded_arg("spr_id", ID_TYPE_NUM);
embed_function("setSpriteFixedRotation", ID_TYPE_SUB);
add_embedded_arg("spr_id", ID_TYPE_NUM);
add_embedded_arg("flag", ID_TYPE_NUM);
embed_function("spriteIsFixedRotation", ID_TYPE_FN_NUM);
add_embedded_arg("spr_id", ID_TYPE_NUM);
embed_function("createDistanceJoint", ID_TYPE_FN_NUM);
add_embedded_arg("spriteA", ID_TYPE_NUM);
add_embedded_arg("spriteB", ID_TYPE_NUM);
add_embedded_arg("aX", ID_TYPE_NUM);
add_embedded_arg("aY", ID_TYPE_NUM);
add_embedded_arg("bX", ID_TYPE_NUM);
add_embedded_arg("bY", ID_TYPE_NUM);
embed_function("createFrictionJoint", ID_TYPE_FN_NUM);
add_embedded_arg("spriteA", ID_TYPE_NUM);
add_embedded_arg("spriteB", ID_TYPE_NUM);
add_embedded_arg("x", ID_TYPE_NUM);
add_embedded_arg("y", ID_TYPE_NUM);
embed_function("createGearJoint", ID_TYPE_FN_NUM);
add_embedded_arg("jointA", ID_TYPE_NUM);
add_embedded_arg("jointB", ID_TYPE_NUM);
add_embedded_arg("g_ratio", ID_TYPE_NUM);
embed_function("createMotorJoint", ID_TYPE_FN_NUM);
add_embedded_arg("spriteA", ID_TYPE_NUM);
add_embedded_arg("spriteB", ID_TYPE_NUM);
embed_function("createPrismaticJoint", ID_TYPE_FN_NUM);
add_embedded_arg("spriteA", ID_TYPE_NUM);
add_embedded_arg("spriteB", ID_TYPE_NUM);
add_embedded_arg("aX", ID_TYPE_NUM);
add_embedded_arg("aY", ID_TYPE_NUM);
add_embedded_arg("axisX", ID_TYPE_NUM);
add_embedded_arg("axisY", ID_TYPE_NUM);
embed_function("createPulleyJoint", ID_TYPE_FN_NUM);
add_embedded_arg("spriteA", ID_TYPE_NUM);
add_embedded_arg("spriteB", ID_TYPE_NUM);
add_embedded_arg("gaX", ID_TYPE_NUM);
add_embedded_arg("gaY", ID_TYPE_NUM);
add_embedded_arg("gbX", ID_TYPE_NUM);
add_embedded_arg("gbY", ID_TYPE_NUM);
add_embedded_arg("aX", ID_TYPE_NUM);
add_embedded_arg("aY", ID_TYPE_NUM);
add_embedded_arg("bX", ID_TYPE_NUM);
add_embedded_arg("bY", ID_TYPE_NUM);
add_embedded_arg("j_ratio", ID_TYPE_NUM);
embed_function("createRevoluteJoint", ID_TYPE_FN_NUM);
add_embedded_arg("spriteA", ID_TYPE_NUM);
add_embedded_arg("spriteB", ID_TYPE_NUM);
add_embedded_arg("x", ID_TYPE_NUM);
add_embedded_arg("y", ID_TYPE_NUM);
embed_function("createWeldJoint", ID_TYPE_FN_NUM);
add_embedded_arg("spriteA", ID_TYPE_NUM);
add_embedded_arg("spriteB", ID_TYPE_NUM);
add_embedded_arg("x", ID_TYPE_NUM);
add_embedded_arg("y", ID_TYPE_NUM);
embed_function("createWheelJoint", ID_TYPE_FN_NUM);
add_embedded_arg("spriteA", ID_TYPE_NUM);
add_embedded_arg("spriteB", ID_TYPE_NUM);
add_embedded_arg("aX", ID_TYPE_NUM);
add_embedded_arg("aY", ID_TYPE_NUM);
add_embedded_arg("axisX", ID_TYPE_NUM);
add_embedded_arg("axisY", ID_TYPE_NUM);
embed_function("getJointWorldAnchorA", ID_TYPE_SUB);
add_embedded_arg("joint_id", ID_TYPE_NUM);
add_embedded_arg("x", ID_TYPE_BYREF_NUM);
add_embedded_arg("y", ID_TYPE_BYREF_NUM);
embed_function("getJointWorldAnchorB", ID_TYPE_SUB);
add_embedded_arg("joint_id", ID_TYPE_NUM);
add_embedded_arg("x", ID_TYPE_BYREF_NUM);
add_embedded_arg("y", ID_TYPE_BYREF_NUM);
embed_function("getJointReactionForce", ID_TYPE_SUB);
add_embedded_arg("joint_id", ID_TYPE_NUM);
add_embedded_arg("inv_dt", ID_TYPE_NUM);
add_embedded_arg("x", ID_TYPE_BYREF_NUM);
add_embedded_arg("y", ID_TYPE_BYREF_NUM);
embed_function("getJointReactionTorque", ID_TYPE_FN_NUM);
add_embedded_arg("joint_id", ID_TYPE_NUM);
add_embedded_arg("inv_dt", ID_TYPE_NUM);
embed_function("getJointLocalAnchorA", ID_TYPE_SUB);
add_embedded_arg("joint_id", ID_TYPE_NUM);
add_embedded_arg("x", ID_TYPE_BYREF_NUM);
add_embedded_arg("y", ID_TYPE_BYREF_NUM);
embed_function("getJointLocalAnchorB", ID_TYPE_SUB);
add_embedded_arg("joint_id", ID_TYPE_NUM);
add_embedded_arg("x", ID_TYPE_BYREF_NUM);
add_embedded_arg("y", ID_TYPE_BYREF_NUM);
embed_function("setJointLength", ID_TYPE_SUB);
add_embedded_arg("joint_id", ID_TYPE_NUM);
add_embedded_arg("jlen", ID_TYPE_NUM);
embed_function("getJointLength", ID_TYPE_FN_NUM);
add_embedded_arg("joint_id", ID_TYPE_NUM);
embed_function("setJointMinLength", ID_TYPE_SUB);
add_embedded_arg("joint_id", ID_TYPE_NUM);
add_embedded_arg("jlen", ID_TYPE_NUM);
embed_function("getJointMinLength", ID_TYPE_FN_NUM);
add_embedded_arg("joint_id", ID_TYPE_NUM);
embed_function("setJointMaxLength", ID_TYPE_SUB);
add_embedded_arg("joint_id", ID_TYPE_NUM);
add_embedded_arg("jlen", ID_TYPE_NUM);
embed_function("getJointMaxLength", ID_TYPE_FN_NUM);
add_embedded_arg("joint_id", ID_TYPE_NUM);
embed_function("getJointCurrentLength", ID_TYPE_FN_NUM);
add_embedded_arg("joint_id", ID_TYPE_NUM);
embed_function("setJointStiffness", ID_TYPE_SUB);
add_embedded_arg("joint_id", ID_TYPE_NUM);
add_embedded_arg("stiffness", ID_TYPE_NUM);
embed_function("getJointStiffness", ID_TYPE_FN_NUM);
add_embedded_arg("joint_id", ID_TYPE_NUM);
embed_function("setJointDamping", ID_TYPE_SUB);
add_embedded_arg("joint_id", ID_TYPE_NUM);
add_embedded_arg("damping", ID_TYPE_NUM);
embed_function("getJointDamping", ID_TYPE_FN_NUM);
add_embedded_arg("joint_id", ID_TYPE_NUM);
embed_function("setJointMaxForce", ID_TYPE_SUB);
add_embedded_arg("joint_id", ID_TYPE_NUM);
add_embedded_arg("force", ID_TYPE_NUM);
embed_function("getJointMaxForce", ID_TYPE_FN_NUM);
add_embedded_arg("joint_id", ID_TYPE_NUM);
embed_function("setJointMaxTorque", ID_TYPE_SUB);
add_embedded_arg("joint_id", ID_TYPE_NUM);
add_embedded_arg("torque", ID_TYPE_NUM);
embed_function("getJointMaxTorque", ID_TYPE_FN_NUM);
add_embedded_arg("joint_id", ID_TYPE_NUM);
embed_function("setJointCorrectionFactor", ID_TYPE_SUB);
add_embedded_arg("joint_id", ID_TYPE_NUM);
add_embedded_arg("factor", ID_TYPE_NUM);
embed_function("getJointCorrectionFactor", ID_TYPE_FN_NUM);
add_embedded_arg("joint_id", ID_TYPE_NUM);
embed_function("setJointRatio", ID_TYPE_SUB);
add_embedded_arg("joint_id", ID_TYPE_NUM);
add_embedded_arg("j_ratio", ID_TYPE_NUM);
embed_function("getJointRatio", ID_TYPE_FN_NUM);
add_embedded_arg("joint_id", ID_TYPE_NUM);
embed_function("setJointLinearOffset", ID_TYPE_SUB);
add_embedded_arg("joint_id", ID_TYPE_NUM);
add_embedded_arg("x", ID_TYPE_NUM);
add_embedded_arg("y", ID_TYPE_NUM);
embed_function("getJointLinearOffset", ID_TYPE_SUB);
add_embedded_arg("joint_id", ID_TYPE_NUM);
add_embedded_arg("x", ID_TYPE_BYREF_NUM);
add_embedded_arg("y", ID_TYPE_BYREF_NUM);
embed_function("setJointAngularOffset", ID_TYPE_SUB);
add_embedded_arg("joint_id", ID_TYPE_NUM);
add_embedded_arg("angleOffset", ID_TYPE_NUM);
embed_function("getJointAngularOffset", ID_TYPE_FN_NUM);
add_embedded_arg("joint_id", ID_TYPE_NUM);
embed_function("getJointLocalAxisA", ID_TYPE_SUB);
add_embedded_arg("joint_id", ID_TYPE_NUM);
add_embedded_arg("x", ID_TYPE_BYREF_NUM);
add_embedded_arg("y", ID_TYPE_BYREF_NUM);
embed_function("getJointReferenceAngle", ID_TYPE_FN_NUM);
add_embedded_arg("joint_id", ID_TYPE_NUM);
embed_function("getJointTranslation", ID_TYPE_FN_NUM);
add_embedded_arg("joint_id", ID_TYPE_NUM);
embed_function("getJointSpeed", ID_TYPE_FN_NUM);
add_embedded_arg("joint_id", ID_TYPE_NUM);
embed_function("jointIsLimitEnabled", ID_TYPE_FN_NUM);
add_embedded_arg("joint_id", ID_TYPE_NUM);
embed_function("enableJointLimit", ID_TYPE_SUB);
add_embedded_arg("joint_id", ID_TYPE_NUM);
add_embedded_arg("flag", ID_TYPE_NUM);
embed_function("getJointLowerLimit", ID_TYPE_FN_NUM);
add_embedded_arg("joint_id", ID_TYPE_NUM);
embed_function("getJointUpperLimit", ID_TYPE_FN_NUM);
add_embedded_arg("joint_id", ID_TYPE_NUM);
embed_function("setJointLimits", ID_TYPE_SUB);
add_embedded_arg("joint_id", ID_TYPE_NUM);
add_embedded_arg("lower_limit", ID_TYPE_NUM);
add_embedded_arg("upper_limit", ID_TYPE_NUM);
embed_function("jointMotorIsEnabled", ID_TYPE_FN_NUM);
add_embedded_arg("joint_id", ID_TYPE_NUM);
embed_function("enableJointMotor", ID_TYPE_SUB);
add_embedded_arg("joint_id", ID_TYPE_NUM);
add_embedded_arg("flag", ID_TYPE_NUM);
embed_function("setJointMotorSpeed", ID_TYPE_SUB);
add_embedded_arg("joint_id", ID_TYPE_NUM);
add_embedded_arg("speed", ID_TYPE_NUM);
embed_function("getJointMotorSpeed", ID_TYPE_FN_NUM);
add_embedded_arg("joint_id", ID_TYPE_NUM);
embed_function("setJointMaxMotorForce", ID_TYPE_SUB);
add_embedded_arg("joint_id", ID_TYPE_NUM);
add_embedded_arg("force", ID_TYPE_NUM);
embed_function("getJointMaxMotorForce", ID_TYPE_FN_NUM);
add_embedded_arg("joint_id", ID_TYPE_NUM);
embed_function("getJointMotorForce", ID_TYPE_FN_NUM);
add_embedded_arg("joint_id", ID_TYPE_NUM);
add_embedded_arg("inv_dt", ID_TYPE_NUM);
embed_function("setJointMaxMotorTorque", ID_TYPE_SUB);
add_embedded_arg("joint_id", ID_TYPE_NUM);
add_embedded_arg("torque", ID_TYPE_NUM);
embed_function("getJointMaxMotorTorque", ID_TYPE_FN_NUM);
add_embedded_arg("joint_id", ID_TYPE_NUM);
embed_function("getJointMotorTorque", ID_TYPE_FN_NUM);
add_embedded_arg("joint_id", ID_TYPE_NUM);
add_embedded_arg("inv_dt", ID_TYPE_NUM);
embed_function("getJointGroundAnchorA", ID_TYPE_SUB);
add_embedded_arg("joint_id", ID_TYPE_NUM);
add_embedded_arg("x", ID_TYPE_BYREF_NUM);
add_embedded_arg("y", ID_TYPE_BYREF_NUM);
embed_function("getJointGroundAnchorB", ID_TYPE_SUB);
add_embedded_arg("joint_id", ID_TYPE_NUM);
add_embedded_arg("x", ID_TYPE_BYREF_NUM);
add_embedded_arg("y", ID_TYPE_BYREF_NUM);
embed_function("getJointLengthA", ID_TYPE_FN_NUM);
add_embedded_arg("joint_id", ID_TYPE_NUM);
embed_function("getJointLengthB", ID_TYPE_FN_NUM);
add_embedded_arg("joint_id", ID_TYPE_NUM);
embed_function("getJointCurrentLengthA", ID_TYPE_FN_NUM);
add_embedded_arg("joint_id", ID_TYPE_NUM);
embed_function("getJointCurrentLengthB", ID_TYPE_FN_NUM);
add_embedded_arg("joint_id", ID_TYPE_NUM);
embed_function("setJointOrigin", ID_TYPE_SUB);
add_embedded_arg("joint_id", ID_TYPE_NUM);
add_embedded_arg("x", ID_TYPE_NUM);
add_embedded_arg("y", ID_TYPE_NUM);
embed_function("getJointAngle", ID_TYPE_FN_NUM);
add_embedded_arg("joint_id", ID_TYPE_NUM);
embed_function("getJointLinearSpeed", ID_TYPE_FN_NUM);
add_embedded_arg("joint_id", ID_TYPE_NUM);
embed_function("getJointAngularSpeed", ID_TYPE_FN_NUM);
add_embedded_arg("joint_id", ID_TYPE_NUM);
embed_function("CreateTileSet", ID_TYPE_FN_NUM);
add_embedded_arg("img_id", ID_TYPE_NUM);
add_embedded_arg("tile_w", ID_TYPE_NUM);
add_embedded_arg("tile_h", ID_TYPE_NUM);
embed_function("SetTileAnimationLength", ID_TYPE_SUB);
add_embedded_arg("tileset", ID_TYPE_NUM);
add_embedded_arg("base_tile", ID_TYPE_NUM);
add_embedded_arg("num_frames", ID_TYPE_NUM);
embed_function("GetTileAnimationLength", ID_TYPE_FN_NUM);
add_embedded_arg("tileset", ID_TYPE_NUM);
add_embedded_arg("base_tile", ID_TYPE_NUM);
embed_function("SetTileAnimationFrame", ID_TYPE_SUB);
add_embedded_arg("tileset", ID_TYPE_NUM);
add_embedded_arg("base_tile", ID_TYPE_NUM);
add_embedded_arg("anim_frame", ID_TYPE_NUM);
add_embedded_arg("tile_frame", ID_TYPE_NUM);
embed_function("GetTileAnimationFrame", ID_TYPE_FN_NUM);
add_embedded_arg("tileset", ID_TYPE_NUM);
add_embedded_arg("base_tile", ID_TYPE_NUM);
add_embedded_arg("anim_frame", ID_TYPE_NUM);
embed_function("SetTileAnimationSpeed", ID_TYPE_SUB);
add_embedded_arg("tileset", ID_TYPE_NUM);
add_embedded_arg("base_tile", ID_TYPE_NUM);
add_embedded_arg("speed", ID_TYPE_NUM);
embed_function("GetTileAnimationSpeed", ID_TYPE_FN_NUM);
add_embedded_arg("tileset", ID_TYPE_NUM);
add_embedded_arg("base_tile", ID_TYPE_NUM);
embed_function("CreateTileMap", ID_TYPE_FN_NUM);
add_embedded_arg("tileset", ID_TYPE_NUM);
add_embedded_arg("widthInTiles", ID_TYPE_NUM);
add_embedded_arg("heightInTiles", ID_TYPE_NUM);
embed_function("SetTileMapSize", ID_TYPE_SUB);
add_embedded_arg("tilemap", ID_TYPE_NUM);
add_embedded_arg("widthInTiles", ID_TYPE_NUM);
add_embedded_arg("heightInTiles", ID_TYPE_NUM);
embed_function("GetTileMapSize", ID_TYPE_SUB);
add_embedded_arg("tilemap", ID_TYPE_NUM);
add_embedded_arg("widthInTiles", ID_TYPE_BYREF_NUM);
add_embedded_arg("heightInTiles", ID_TYPE_BYREF_NUM);
embed_function("SetTile", ID_TYPE_SUB);
add_embedded_arg("tilemap", ID_TYPE_NUM);
add_embedded_arg("tile", ID_TYPE_NUM);
add_embedded_arg("x", ID_TYPE_NUM);
add_embedded_arg("y", ID_TYPE_NUM);
embed_function("GetTile", ID_TYPE_FN_NUM);
add_embedded_arg("tilemap", ID_TYPE_NUM);
add_embedded_arg("x", ID_TYPE_NUM);
add_embedded_arg("y", ID_TYPE_NUM);
embed_function("FillTile", ID_TYPE_SUB);
add_embedded_arg("tilemap", ID_TYPE_NUM);
add_embedded_arg("tile", ID_TYPE_NUM);
add_embedded_arg("x", ID_TYPE_NUM);
add_embedded_arg("y", ID_TYPE_NUM);
add_embedded_arg("widthInTiles", ID_TYPE_NUM);
add_embedded_arg("heightInTiles", ID_TYPE_NUM);
embed_function("DrawTileMap", ID_TYPE_SUB);
add_embedded_arg("tilemap", ID_TYPE_NUM);
add_embedded_arg("x", ID_TYPE_NUM);
add_embedded_arg("y", ID_TYPE_NUM);
add_embedded_arg("w", ID_TYPE_NUM);
add_embedded_arg("h", ID_TYPE_NUM);
add_embedded_arg("offset_x", ID_TYPE_NUM);
add_embedded_arg("offset_y", ID_TYPE_NUM);
embed_function("LoadMesh", ID_TYPE_FN_NUM);
add_embedded_arg("mesh_file$", ID_TYPE_STR);
embed_function("DeleteMesh", ID_TYPE_SUB);
@@ -1519,6 +1908,55 @@ embed_function("RemoveActorShadow", ID_TYPE_SUB);
add_embedded_arg("actor", ID_TYPE_NUM);
embed_function("ActorExists", ID_TYPE_FN_NUM);
add_embedded_arg("actor", ID_TYPE_NUM);
embed_function("CreateActorAnimation", ID_TYPE_FN_NUM);
add_embedded_arg("actor", ID_TYPE_NUM);
add_embedded_arg("start_frame", ID_TYPE_NUM);
add_embedded_arg("end_frame", ID_TYPE_NUM);
add_embedded_arg("speed", ID_TYPE_NUM);
embed_function("SetActorAnimation", ID_TYPE_SUB);
add_embedded_arg("actor", ID_TYPE_NUM);
add_embedded_arg("animation", ID_TYPE_NUM);
add_embedded_arg("num_loops", ID_TYPE_NUM);
embed_function("SetActorAnimationSpeed", ID_TYPE_SUB);
add_embedded_arg("actor", ID_TYPE_NUM);
add_embedded_arg("animation", ID_TYPE_NUM);
add_embedded_arg("speed", ID_TYPE_NUM);
embed_function("SetActorAnimationFrames", ID_TYPE_SUB);
add_embedded_arg("actor", ID_TYPE_NUM);
add_embedded_arg("animation", ID_TYPE_NUM);
add_embedded_arg("start_frame", ID_TYPE_NUM);
add_embedded_arg("end_frame", ID_TYPE_NUM);
embed_function("GetActorCurrentAnimation", ID_TYPE_FN_NUM);
add_embedded_arg("actor", ID_TYPE_NUM);
embed_function("GetActorAnimationSpeed", ID_TYPE_FN_NUM);
add_embedded_arg("actor", ID_TYPE_NUM);
add_embedded_arg("animation", ID_TYPE_NUM);
embed_function("GetActorAnimationStartFrame", ID_TYPE_FN_NUM);
add_embedded_arg("actor", ID_TYPE_NUM);
add_embedded_arg("animation", ID_TYPE_NUM);
embed_function("GetActorAnimationEndFrame", ID_TYPE_FN_NUM);
add_embedded_arg("actor", ID_TYPE_NUM);
add_embedded_arg("animation", ID_TYPE_NUM);
embed_function("SetActorFrame", ID_TYPE_SUB);
add_embedded_arg("actor", ID_TYPE_NUM);
add_embedded_arg("frame", ID_TYPE_NUM);
embed_function("GetActorFrame", ID_TYPE_FN_NUM);
add_embedded_arg("actor", ID_TYPE_NUM);
embed_function("ActorAnimationIsPlaying", ID_TYPE_FN_NUM);
add_embedded_arg("actor", ID_TYPE_NUM);
embed_function("NumActorAnimationLoops", ID_TYPE_FN_NUM);
add_embedded_arg("actor", ID_TYPE_NUM);
embed_function("SetActorMD2Animation", ID_TYPE_SUB);
add_embedded_arg("actor", ID_TYPE_NUM);
add_embedded_arg("anim", ID_TYPE_NUM);
add_embedded_arg("num_loops", ID_TYPE_NUM);
embed_function("SetActorMD2AnimationByName", ID_TYPE_SUB);
add_embedded_arg("actor", ID_TYPE_NUM);
add_embedded_arg("anim_name$", ID_TYPE_STR);
add_embedded_arg("num_loops", ID_TYPE_NUM);
embed_function("DeleteActorAnimation", ID_TYPE_SUB);
add_embedded_arg("actor", ID_TYPE_NUM);
add_embedded_arg("animation", ID_TYPE_NUM);
embed_function("SetGravity3D", ID_TYPE_SUB);
add_embedded_arg("x", ID_TYPE_NUM);
add_embedded_arg("y", ID_TYPE_NUM);
@@ -1687,7 +2125,7 @@ embed_function("clearActorForces", ID_TYPE_SUB);
add_embedded_arg("actor", ID_TYPE_NUM);
embed_function("updateActorInertiaTensor", ID_TYPE_SUB);
add_embedded_arg("actor", ID_TYPE_NUM);
embed_function("getActorCOMPosition", ID_TYPE_SUB);
embed_function("getActorCenter", ID_TYPE_SUB);
add_embedded_arg("actor", ID_TYPE_NUM);
add_embedded_arg("x", ID_TYPE_BYREF_NUM);
add_embedded_arg("y", ID_TYPE_BYREF_NUM);
@@ -1728,7 +2166,7 @@ add_embedded_arg("actor", ID_TYPE_NUM);
add_embedded_arg("x", ID_TYPE_NUM);
add_embedded_arg("y", ID_TYPE_NUM);
add_embedded_arg("z", ID_TYPE_NUM);
embed_function("getActorLocalPointVelocity", ID_TYPE_SUB);
embed_function("getActorVelocityInLocalPoint", ID_TYPE_SUB);
add_embedded_arg("actor", ID_TYPE_NUM);
add_embedded_arg("rel_x", ID_TYPE_NUM);
add_embedded_arg("rel_y", ID_TYPE_NUM);
@@ -2430,55 +2868,6 @@ add_embedded_arg("actor", ID_TYPE_NUM);
add_embedded_arg("patchX", ID_TYPE_NUM);
add_embedded_arg("patchZ", ID_TYPE_NUM);
add_embedded_arg("LOD", ID_TYPE_NUM);
embed_function("CreateActorAnimation", ID_TYPE_FN_NUM);
add_embedded_arg("actor", ID_TYPE_NUM);
add_embedded_arg("start_frame", ID_TYPE_NUM);
add_embedded_arg("end_frame", ID_TYPE_NUM);
add_embedded_arg("speed", ID_TYPE_NUM);
embed_function("SetActorAnimation", ID_TYPE_SUB);
add_embedded_arg("actor", ID_TYPE_NUM);
add_embedded_arg("animation", ID_TYPE_NUM);
add_embedded_arg("num_loops", ID_TYPE_NUM);
embed_function("SetActorAnimationSpeed", ID_TYPE_SUB);
add_embedded_arg("actor", ID_TYPE_NUM);
add_embedded_arg("animation", ID_TYPE_NUM);
add_embedded_arg("speed", ID_TYPE_NUM);
embed_function("SetActorAnimationFrames", ID_TYPE_SUB);
add_embedded_arg("actor", ID_TYPE_NUM);
add_embedded_arg("animation", ID_TYPE_NUM);
add_embedded_arg("start_frame", ID_TYPE_NUM);
add_embedded_arg("end_frame", ID_TYPE_NUM);
embed_function("GetActorCurrentAnimation", ID_TYPE_FN_NUM);
add_embedded_arg("actor", ID_TYPE_NUM);
embed_function("GetActorAnimationSpeed", ID_TYPE_FN_NUM);
add_embedded_arg("actor", ID_TYPE_NUM);
add_embedded_arg("animation", ID_TYPE_NUM);
embed_function("GetActorAnimationStartFrame", ID_TYPE_FN_NUM);
add_embedded_arg("actor", ID_TYPE_NUM);
add_embedded_arg("animation", ID_TYPE_NUM);
embed_function("GetActorAnimationEndFrame", ID_TYPE_FN_NUM);
add_embedded_arg("actor", ID_TYPE_NUM);
add_embedded_arg("animation", ID_TYPE_NUM);
embed_function("SetActorFrame", ID_TYPE_SUB);
add_embedded_arg("actor", ID_TYPE_NUM);
add_embedded_arg("frame", ID_TYPE_NUM);
embed_function("GetActorFrame", ID_TYPE_FN_NUM);
add_embedded_arg("actor", ID_TYPE_NUM);
embed_function("ActorAnimationIsPlaying", ID_TYPE_FN_NUM);
add_embedded_arg("actor", ID_TYPE_NUM);
embed_function("NumActorAnimationLoops", ID_TYPE_FN_NUM);
add_embedded_arg("actor", ID_TYPE_NUM);
embed_function("SetActorMD2Animation", ID_TYPE_SUB);
add_embedded_arg("actor", ID_TYPE_NUM);
add_embedded_arg("anim", ID_TYPE_NUM);
add_embedded_arg("num_loops", ID_TYPE_NUM);
embed_function("SetActorMD2AnimationByName", ID_TYPE_SUB);
add_embedded_arg("actor", ID_TYPE_NUM);
add_embedded_arg("anim_name$", ID_TYPE_STR);
add_embedded_arg("num_loops", ID_TYPE_NUM);
embed_function("DeleteActorAnimation", ID_TYPE_SUB);
add_embedded_arg("actor", ID_TYPE_NUM);
add_embedded_arg("animation", ID_TYPE_NUM);
embed_function("createMaterial", ID_TYPE_FN_NUM);
embed_function("deleteMaterial", ID_TYPE_SUB);
add_embedded_arg("material_id", ID_TYPE_NUM);

File diff suppressed because it is too large Load Diff

View File

@@ -617,7 +617,7 @@ case FN_SetCanvasPhysics2D: //Sub Procedure
rc_setCanvasPhysics2D( SETCANVASPHYSICS2D_C_NUM, SETCANVASPHYSICS2D_STATE );
break;
case FN_OpenCanvasSpriteLayer: //Number Function
rc_push_num(rc_canvasOpenSpriteLayer( OPENCANVASSPRITELAYER_W, OPENCANVASSPRITELAYER_H, OPENCANVASSPRITELAYER_VIEWPORT_X, OPENCANVASSPRITELAYER_VIEWPORT_Y, OPENCANVASSPRITELAYER_VIEWPORT_W, OPENCANVASSPRITELAYER_VIEWPORT_H ));
rc_push_num(rc_canvasOpenSpriteLayer( OPENCANVASSPRITELAYER_VIEWPORT_X, OPENCANVASSPRITELAYER_VIEWPORT_Y, OPENCANVASSPRITELAYER_VIEWPORT_W, OPENCANVASSPRITELAYER_VIEWPORT_H ));
break;
case FN_Circle: //Sub Procedure
rc_drawCircle( CIRCLE_X, CIRCLE_Y, CIRCLE_RADIUS );
@@ -1496,6 +1496,345 @@ case FN_SpriteAnimationIsPlaying: //Number Function
case FN_DeleteSpriteAnimation: //Sub Procedure
rc_deleteSpriteAnimation( DELETESPRITEANIMATION_SPRITE, DELETESPRITEANIMATION_ANIMATION );
break;
case FN_getSpriteCenter: //Sub Procedure
rc_getSpriteCenter( GETSPRITECENTER_SPR_ID, &GETSPRITECENTER_X, &GETSPRITECENTER_Y );
break;
case FN_setSpriteLinearVelocity: //Sub Procedure
rc_setSpriteLinearVelocity( SETSPRITELINEARVELOCITY_SPR_ID, SETSPRITELINEARVELOCITY_X, SETSPRITELINEARVELOCITY_Y );
break;
case FN_getSpriteLinearVelocity: //Sub Procedure
rc_getSpriteLinearVelocity( GETSPRITELINEARVELOCITY_SPR_ID, &GETSPRITELINEARVELOCITY_X, &GETSPRITELINEARVELOCITY_Y );
break;
case FN_setSpriteAngularVelocity: //Sub Procedure
rc_setSpriteAngularVelocity( SETSPRITEANGULARVELOCITY_SPR_ID, SETSPRITEANGULARVELOCITY_AV );
break;
case FN_getSpriteAngularVelocity: //Number Function
rc_push_num(rc_getSpriteAngularVelocity( GETSPRITEANGULARVELOCITY_SPR_ID ));
break;
case FN_applySpriteForce: //Sub Procedure
rc_applySpriteForce( APPLYSPRITEFORCE_SPR_ID, APPLYSPRITEFORCE_FX, APPLYSPRITEFORCE_FY, APPLYSPRITEFORCE_PX, APPLYSPRITEFORCE_PY );
break;
case FN_applySpriteCentralForce: //Sub Procedure
rc_applySpriteCentralForce( APPLYSPRITECENTRALFORCE_SPR_ID, APPLYSPRITECENTRALFORCE_X, APPLYSPRITECENTRALFORCE_Y );
break;
case FN_applySpriteTorque: //Sub Procedure
rc_applySpriteTorque( APPLYSPRITETORQUE_SPR_ID, APPLYSPRITETORQUE_TORQUE );
break;
case FN_applySpriteLinearImpulse: //Sub Procedure
rc_applySpriteLinearImpulse( APPLYSPRITELINEARIMPULSE_SPR_ID, APPLYSPRITELINEARIMPULSE_IX, APPLYSPRITELINEARIMPULSE_IY, APPLYSPRITELINEARIMPULSE_PX, APPLYSPRITELINEARIMPULSE_PY );
break;
case FN_applySpriteAngularImpulse: //Sub Procedure
rc_applySpriteAngularImpulse( APPLYSPRITEANGULARIMPULSE_SPR_ID, APPLYSPRITEANGULARIMPULSE_IMPULSE );
break;
case FN_getSpriteMass: //Number Function
rc_push_num(rc_getSpriteMass( GETSPRITEMASS_SPR_ID ));
break;
case FN_getSpriteInertia: //Number Function
rc_push_num(rc_getSpriteInertia( GETSPRITEINERTIA_SPR_ID ));
break;
case FN_getSpriteWorldPoint: //Sub Procedure
rc_getSpriteWorldPoint( GETSPRITEWORLDPOINT_SPR_ID, GETSPRITEWORLDPOINT_LX, GETSPRITEWORLDPOINT_LY, &GETSPRITEWORLDPOINT_X, &GETSPRITEWORLDPOINT_Y );
break;
case FN_getSpriteWorldVector: //Sub Procedure
rc_getSpriteWorldVector( GETSPRITEWORLDVECTOR_SPR_ID, GETSPRITEWORLDVECTOR_LX, GETSPRITEWORLDVECTOR_LY, &GETSPRITEWORLDVECTOR_X, &GETSPRITEWORLDVECTOR_Y );
break;
case FN_getSpriteLocalPoint: //Sub Procedure
rc_getSpriteLocalPoint( GETSPRITELOCALPOINT_SPR_ID, GETSPRITELOCALPOINT_WX, GETSPRITELOCALPOINT_WY, &GETSPRITELOCALPOINT_X, &GETSPRITELOCALPOINT_Y );
break;
case FN_getSpriteLocalVector: //Sub Procedure
rc_getSpriteLocalVector( GETSPRITELOCALVECTOR_SPR_ID, GETSPRITELOCALVECTOR_WX, GETSPRITELOCALVECTOR_WY, &GETSPRITELOCALVECTOR_X, &GETSPRITELOCALVECTOR_Y );
break;
case FN_getSpriteLinearVelocityFromLocalPoint: //Sub Procedure
rc_getSpriteLinearVelocityFromLocalPoint( GETSPRITELINEARVELOCITYFROMLOCALPOINT_SPR_ID, GETSPRITELINEARVELOCITYFROMLOCALPOINT_PX, GETSPRITELINEARVELOCITYFROMLOCALPOINT_PY, &GETSPRITELINEARVELOCITYFROMLOCALPOINT_X, &GETSPRITELINEARVELOCITYFROMLOCALPOINT_Y );
break;
case FN_getSpriteLinearVelocityFromWorldPoint: //Sub Procedure
rc_getSpriteLinearVelocityFromWorldPoint( GETSPRITELINEARVELOCITYFROMWORLDPOINT_SPR_ID, GETSPRITELINEARVELOCITYFROMWORLDPOINT_WX, GETSPRITELINEARVELOCITYFROMWORLDPOINT_WY, &GETSPRITELINEARVELOCITYFROMWORLDPOINT_X, &GETSPRITELINEARVELOCITYFROMWORLDPOINT_Y );
break;
case FN_getSpriteLinearDamping: //Number Function
rc_push_num(rc_getSpriteLinearDamping( GETSPRITELINEARDAMPING_SPR_ID ));
break;
case FN_setSpriteLinearDamping: //Sub Procedure
rc_setSpriteLinearDamping( SETSPRITELINEARDAMPING_SPR_ID, SETSPRITELINEARDAMPING_LINEARDAMPING );
break;
case FN_getSpriteAngularDamping: //Number Function
rc_push_num(rc_getSpriteAngularDamping( GETSPRITEANGULARDAMPING_SPR_ID ));
break;
case FN_setSpriteAngularDamping: //Sub Procedure
rc_setSpriteAngularDamping( SETSPRITEANGULARDAMPING_SPR_ID, SETSPRITEANGULARDAMPING_ANGULARDAMPING );
break;
case FN_getSpriteGravityScale: //Number Function
rc_push_num(rc_getSpriteGravityScale( GETSPRITEGRAVITYSCALE_SPR_ID ));
break;
case FN_setSpriteGravityScale: //Sub Procedure
rc_setSpriteGravityScale( SETSPRITEGRAVITYSCALE_SPR_ID, SETSPRITEGRAVITYSCALE_G_SCALE );
break;
case FN_setSpriteBullet: //Sub Procedure
rc_setSpriteBullet( SETSPRITEBULLET_SPR_ID, SETSPRITEBULLET_FLAG );
break;
case FN_spriteIsBullet: //Number Function
rc_push_num(rc_spriteIsBullet( SPRITEISBULLET_SPR_ID ));
break;
case FN_setSpriteSleepAllowed: //Sub Procedure
rc_setSpriteSleepAllowed( SETSPRITESLEEPALLOWED_SPR_ID, SETSPRITESLEEPALLOWED_FLAG );
break;
case FN_spriteSleepAllowed: //Number Function
rc_push_num(rc_spriteSleepAllowed( SPRITESLEEPALLOWED_SPR_ID ));
break;
case FN_setSpriteAwake: //Sub Procedure
rc_setSpriteAwake( SETSPRITEAWAKE_SPR_ID, SETSPRITEAWAKE_FLAG );
break;
case FN_spriteIsAwake: //Number Function
rc_push_num(rc_spriteIsAwake( SPRITEISAWAKE_SPR_ID ));
break;
case FN_setSpriteFixedRotation: //Sub Procedure
rc_setSpriteFixedRotation( SETSPRITEFIXEDROTATION_SPR_ID, SETSPRITEFIXEDROTATION_FLAG );
break;
case FN_spriteIsFixedRotation: //Number Function
rc_push_num(rc_spriteIsFixedRotation( SPRITEISFIXEDROTATION_SPR_ID ));
break;
case FN_createDistanceJoint: //Number Function
rc_push_num(rc_createDistanceJoint( CREATEDISTANCEJOINT_SPRITEA, CREATEDISTANCEJOINT_SPRITEB, CREATEDISTANCEJOINT_AX, CREATEDISTANCEJOINT_AY, CREATEDISTANCEJOINT_BX, CREATEDISTANCEJOINT_BY ));
break;
case FN_createFrictionJoint: //Number Function
rc_push_num(rc_createFrictionJoint( CREATEFRICTIONJOINT_SPRITEA, CREATEFRICTIONJOINT_SPRITEB, CREATEFRICTIONJOINT_X, CREATEFRICTIONJOINT_Y ));
break;
case FN_createGearJoint: //Number Function
rc_push_num(rc_createGearJoint( CREATEGEARJOINT_JOINTA, CREATEGEARJOINT_JOINTB, CREATEGEARJOINT_G_RATIO ));
break;
case FN_createMotorJoint: //Number Function
rc_push_num(rc_createMotorJoint( CREATEMOTORJOINT_SPRITEA, CREATEMOTORJOINT_SPRITEB ));
break;
case FN_createPrismaticJoint: //Number Function
rc_push_num(rc_createPrismaticJoint( CREATEPRISMATICJOINT_SPRITEA, CREATEPRISMATICJOINT_SPRITEB, CREATEPRISMATICJOINT_AX, CREATEPRISMATICJOINT_AY, CREATEPRISMATICJOINT_AXISX, CREATEPRISMATICJOINT_AXISY ));
break;
case FN_createPulleyJoint: //Number Function
rc_push_num(rc_createPulleyJoint( CREATEPULLEYJOINT_SPRITEA, CREATEPULLEYJOINT_SPRITEB, CREATEPULLEYJOINT_GAX, CREATEPULLEYJOINT_GAY, CREATEPULLEYJOINT_GBX, CREATEPULLEYJOINT_GBY, CREATEPULLEYJOINT_AX, CREATEPULLEYJOINT_AY, CREATEPULLEYJOINT_BX, CREATEPULLEYJOINT_BY, CREATEPULLEYJOINT_J_RATIO ));
break;
case FN_createRevoluteJoint: //Number Function
rc_push_num(rc_createRevoluteJoint( CREATEREVOLUTEJOINT_SPRITEA, CREATEREVOLUTEJOINT_SPRITEB, CREATEREVOLUTEJOINT_X, CREATEREVOLUTEJOINT_Y ));
break;
case FN_createWeldJoint: //Number Function
rc_push_num(rc_createWeldJoint( CREATEWELDJOINT_SPRITEA, CREATEWELDJOINT_SPRITEB, CREATEWELDJOINT_X, CREATEWELDJOINT_Y ));
break;
case FN_createWheelJoint: //Number Function
rc_push_num(rc_createWheelJoint( CREATEWHEELJOINT_SPRITEA, CREATEWHEELJOINT_SPRITEB, CREATEWHEELJOINT_AX, CREATEWHEELJOINT_AY, CREATEWHEELJOINT_AXISX, CREATEWHEELJOINT_AXISY ));
break;
case FN_getJointWorldAnchorA: //Sub Procedure
rc_getJointWorldAnchorA( GETJOINTWORLDANCHORA_JOINT_ID, &GETJOINTWORLDANCHORA_X, &GETJOINTWORLDANCHORA_Y );
break;
case FN_getJointWorldAnchorB: //Sub Procedure
rc_getJointWorldAnchorB( GETJOINTWORLDANCHORB_JOINT_ID, &GETJOINTWORLDANCHORB_X, &GETJOINTWORLDANCHORB_Y );
break;
case FN_getJointReactionForce: //Sub Procedure
rc_getJointReactionForce( GETJOINTREACTIONFORCE_JOINT_ID, GETJOINTREACTIONFORCE_INV_DT, &GETJOINTREACTIONFORCE_X, &GETJOINTREACTIONFORCE_Y );
break;
case FN_getJointReactionTorque: //Number Function
rc_push_num(rc_getJointReactionTorque( GETJOINTREACTIONTORQUE_JOINT_ID, GETJOINTREACTIONTORQUE_INV_DT ));
break;
case FN_getJointLocalAnchorA: //Sub Procedure
rc_getJointLocalAnchorA( GETJOINTLOCALANCHORA_JOINT_ID, &GETJOINTLOCALANCHORA_X, &GETJOINTLOCALANCHORA_Y );
break;
case FN_getJointLocalAnchorB: //Sub Procedure
rc_getJointLocalAnchorB( GETJOINTLOCALANCHORB_JOINT_ID, &GETJOINTLOCALANCHORB_X, &GETJOINTLOCALANCHORB_Y );
break;
case FN_setJointLength: //Sub Procedure
rc_setJointLength( SETJOINTLENGTH_JOINT_ID, SETJOINTLENGTH_JLEN );
break;
case FN_getJointLength: //Number Function
rc_push_num(rc_getJointLength( GETJOINTLENGTH_JOINT_ID ));
break;
case FN_setJointMinLength: //Sub Procedure
rc_setJointMinLength( SETJOINTMINLENGTH_JOINT_ID, SETJOINTMINLENGTH_JLEN );
break;
case FN_getJointMinLength: //Number Function
rc_push_num(rc_getJointMinLength( GETJOINTMINLENGTH_JOINT_ID ));
break;
case FN_setJointMaxLength: //Sub Procedure
rc_setJointMaxLength( SETJOINTMAXLENGTH_JOINT_ID, SETJOINTMAXLENGTH_JLEN );
break;
case FN_getJointMaxLength: //Number Function
rc_push_num(rc_getJointMaxLength( GETJOINTMAXLENGTH_JOINT_ID ));
break;
case FN_getJointCurrentLength: //Number Function
rc_push_num(rc_getJointCurrentLength( GETJOINTCURRENTLENGTH_JOINT_ID ));
break;
case FN_setJointStiffness: //Sub Procedure
rc_setJointStiffness( SETJOINTSTIFFNESS_JOINT_ID, SETJOINTSTIFFNESS_STIFFNESS );
break;
case FN_getJointStiffness: //Number Function
rc_push_num(rc_getJointStiffness( GETJOINTSTIFFNESS_JOINT_ID ));
break;
case FN_setJointDamping: //Sub Procedure
rc_setJointDamping( SETJOINTDAMPING_JOINT_ID, SETJOINTDAMPING_DAMPING );
break;
case FN_getJointDamping: //Number Function
rc_push_num(rc_getJointDamping( GETJOINTDAMPING_JOINT_ID ));
break;
case FN_setJointMaxForce: //Sub Procedure
rc_setJointMaxForce( SETJOINTMAXFORCE_JOINT_ID, SETJOINTMAXFORCE_FORCE );
break;
case FN_getJointMaxForce: //Number Function
rc_push_num(rc_getJointMaxForce( GETJOINTMAXFORCE_JOINT_ID ));
break;
case FN_setJointMaxTorque: //Sub Procedure
rc_setJointMaxTorque( SETJOINTMAXTORQUE_JOINT_ID, SETJOINTMAXTORQUE_TORQUE );
break;
case FN_getJointMaxTorque: //Number Function
rc_push_num(rc_getJointMaxTorque( GETJOINTMAXTORQUE_JOINT_ID ));
break;
case FN_setJointCorrectionFactor: //Sub Procedure
rc_setJointCorrectionFactor( SETJOINTCORRECTIONFACTOR_JOINT_ID, SETJOINTCORRECTIONFACTOR_FACTOR );
break;
case FN_getJointCorrectionFactor: //Number Function
rc_push_num(rc_getJointCorrectionFactor( GETJOINTCORRECTIONFACTOR_JOINT_ID ));
break;
case FN_setJointRatio: //Sub Procedure
rc_setJointRatio( SETJOINTRATIO_JOINT_ID, SETJOINTRATIO_J_RATIO );
break;
case FN_getJointRatio: //Number Function
rc_push_num(rc_getJointRatio( GETJOINTRATIO_JOINT_ID ));
break;
case FN_setJointLinearOffset: //Sub Procedure
rc_setJointLinearOffset( SETJOINTLINEAROFFSET_JOINT_ID, SETJOINTLINEAROFFSET_X, SETJOINTLINEAROFFSET_Y );
break;
case FN_getJointLinearOffset: //Sub Procedure
rc_getJointLinearOffset( GETJOINTLINEAROFFSET_JOINT_ID, &GETJOINTLINEAROFFSET_X, &GETJOINTLINEAROFFSET_Y );
break;
case FN_setJointAngularOffset: //Sub Procedure
rc_setJointAngularOffset( SETJOINTANGULAROFFSET_JOINT_ID, SETJOINTANGULAROFFSET_ANGLEOFFSET );
break;
case FN_getJointAngularOffset: //Number Function
rc_push_num(rc_getJointAngularOffset( GETJOINTANGULAROFFSET_JOINT_ID ));
break;
case FN_getJointLocalAxisA: //Sub Procedure
rc_getJointLocalAxisA( GETJOINTLOCALAXISA_JOINT_ID, &GETJOINTLOCALAXISA_X, &GETJOINTLOCALAXISA_Y );
break;
case FN_getJointReferenceAngle: //Number Function
rc_push_num(rc_getJointReferenceAngle( GETJOINTREFERENCEANGLE_JOINT_ID ));
break;
case FN_getJointTranslation: //Number Function
rc_push_num(rc_getJointTranslation( GETJOINTTRANSLATION_JOINT_ID ));
break;
case FN_getJointSpeed: //Number Function
rc_push_num(rc_getJointSpeed( GETJOINTSPEED_JOINT_ID ));
break;
case FN_jointIsLimitEnabled: //Number Function
rc_push_num(rc_jointIsLimitEnabled( JOINTISLIMITENABLED_JOINT_ID ));
break;
case FN_enableJointLimit: //Sub Procedure
rc_enableJointLimit( ENABLEJOINTLIMIT_JOINT_ID, ENABLEJOINTLIMIT_FLAG );
break;
case FN_getJointLowerLimit: //Number Function
rc_push_num(rc_getJointLowerLimit( GETJOINTLOWERLIMIT_JOINT_ID ));
break;
case FN_getJointUpperLimit: //Number Function
rc_push_num(rc_getJointUpperLimit( GETJOINTUPPERLIMIT_JOINT_ID ));
break;
case FN_setJointLimits: //Sub Procedure
rc_setJointLimits( SETJOINTLIMITS_JOINT_ID, SETJOINTLIMITS_LOWER_LIMIT, SETJOINTLIMITS_UPPER_LIMIT );
break;
case FN_jointMotorIsEnabled: //Number Function
rc_push_num(rc_jointMotorIsEnabled( JOINTMOTORISENABLED_JOINT_ID ));
break;
case FN_enableJointMotor: //Sub Procedure
rc_enableJointMotor( ENABLEJOINTMOTOR_JOINT_ID, ENABLEJOINTMOTOR_FLAG );
break;
case FN_setJointMotorSpeed: //Sub Procedure
rc_setJointMotorSpeed( SETJOINTMOTORSPEED_JOINT_ID, SETJOINTMOTORSPEED_SPEED );
break;
case FN_getJointMotorSpeed: //Number Function
rc_push_num(rc_getJointMotorSpeed( GETJOINTMOTORSPEED_JOINT_ID ));
break;
case FN_setJointMaxMotorForce: //Sub Procedure
rc_setJointMaxMotorForce( SETJOINTMAXMOTORFORCE_JOINT_ID, SETJOINTMAXMOTORFORCE_FORCE );
break;
case FN_getJointMaxMotorForce: //Number Function
rc_push_num(rc_getJointMaxMotorForce( GETJOINTMAXMOTORFORCE_JOINT_ID ));
break;
case FN_getJointMotorForce: //Number Function
rc_push_num(rc_getJointMotorForce( GETJOINTMOTORFORCE_JOINT_ID, GETJOINTMOTORFORCE_INV_DT ));
break;
case FN_setJointMaxMotorTorque: //Sub Procedure
rc_setJointMaxMotorTorque( SETJOINTMAXMOTORTORQUE_JOINT_ID, SETJOINTMAXMOTORTORQUE_TORQUE );
break;
case FN_getJointMaxMotorTorque: //Number Function
rc_push_num(rc_getJointMaxMotorTorque( GETJOINTMAXMOTORTORQUE_JOINT_ID ));
break;
case FN_getJointMotorTorque: //Number Function
rc_push_num(rc_getJointMotorTorque( GETJOINTMOTORTORQUE_JOINT_ID, GETJOINTMOTORTORQUE_INV_DT ));
break;
case FN_getJointGroundAnchorA: //Sub Procedure
rc_getJointGroundAnchorA( GETJOINTGROUNDANCHORA_JOINT_ID, &GETJOINTGROUNDANCHORA_X, &GETJOINTGROUNDANCHORA_Y );
break;
case FN_getJointGroundAnchorB: //Sub Procedure
rc_getJointGroundAnchorB( GETJOINTGROUNDANCHORB_JOINT_ID, &GETJOINTGROUNDANCHORB_X, &GETJOINTGROUNDANCHORB_Y );
break;
case FN_getJointLengthA: //Number Function
rc_push_num(rc_getJointLengthA( GETJOINTLENGTHA_JOINT_ID ));
break;
case FN_getJointLengthB: //Number Function
rc_push_num(rc_getJointLengthB( GETJOINTLENGTHB_JOINT_ID ));
break;
case FN_getJointCurrentLengthA: //Number Function
rc_push_num(rc_getJointCurrentLengthA( GETJOINTCURRENTLENGTHA_JOINT_ID ));
break;
case FN_getJointCurrentLengthB: //Number Function
rc_push_num(rc_getJointCurrentLengthB( GETJOINTCURRENTLENGTHB_JOINT_ID ));
break;
case FN_setJointOrigin: //Sub Procedure
rc_setJointOrigin( SETJOINTORIGIN_JOINT_ID, SETJOINTORIGIN_X, SETJOINTORIGIN_Y );
break;
case FN_getJointAngle: //Number Function
rc_push_num(rc_getJointAngle( GETJOINTANGLE_JOINT_ID ));
break;
case FN_getJointLinearSpeed: //Number Function
rc_push_num(rc_getJointLinearSpeed( GETJOINTLINEARSPEED_JOINT_ID ));
break;
case FN_getJointAngularSpeed: //Number Function
rc_push_num(rc_getJointAngularSpeed( GETJOINTANGULARSPEED_JOINT_ID ));
break;
case FN_CreateTileSet: //Number Function
rc_push_num(rc_createTileSet( CREATETILESET_IMG_ID, CREATETILESET_TILE_W, CREATETILESET_TILE_H ));
break;
case FN_SetTileAnimationLength: //Sub Procedure
rc_setTileAnimationLength( SETTILEANIMATIONLENGTH_TILESET, SETTILEANIMATIONLENGTH_BASE_TILE, SETTILEANIMATIONLENGTH_NUM_FRAMES );
break;
case FN_GetTileAnimationLength: //Number Function
rc_push_num(rc_getTileAnimationLength( GETTILEANIMATIONLENGTH_TILESET, GETTILEANIMATIONLENGTH_BASE_TILE ));
break;
case FN_SetTileAnimationFrame: //Sub Procedure
rc_setTileAnimationFrame( SETTILEANIMATIONFRAME_TILESET, SETTILEANIMATIONFRAME_BASE_TILE, SETTILEANIMATIONFRAME_ANIM_FRAME, SETTILEANIMATIONFRAME_TILE_FRAME );
break;
case FN_GetTileAnimationFrame: //Number Function
rc_push_num(rc_getTileAnimationFrame( GETTILEANIMATIONFRAME_TILESET, GETTILEANIMATIONFRAME_BASE_TILE, GETTILEANIMATIONFRAME_ANIM_FRAME ));
break;
case FN_SetTileAnimationSpeed: //Sub Procedure
rc_setTileAnimationSpeed( SETTILEANIMATIONSPEED_TILESET, SETTILEANIMATIONSPEED_BASE_TILE, SETTILEANIMATIONSPEED_SPEED );
break;
case FN_GetTileAnimationSpeed: //Number Function
rc_push_num(rc_getTileAnimationSpeed( GETTILEANIMATIONSPEED_TILESET, GETTILEANIMATIONSPEED_BASE_TILE ));
break;
case FN_CreateTileMap: //Number Function
rc_push_num(rc_createTileMap( CREATETILEMAP_TILESET, CREATETILEMAP_WIDTHINTILES, CREATETILEMAP_HEIGHTINTILES ));
break;
case FN_SetTileMapSize: //Sub Procedure
rc_setTileMapSize( SETTILEMAPSIZE_TILEMAP, SETTILEMAPSIZE_WIDTHINTILES, SETTILEMAPSIZE_HEIGHTINTILES );
break;
case FN_GetTileMapSize: //Sub Procedure
rc_getTileMapSize( GETTILEMAPSIZE_TILEMAP, &GETTILEMAPSIZE_WIDTHINTILES, &GETTILEMAPSIZE_HEIGHTINTILES );
break;
case FN_SetTile: //Sub Procedure
rc_setTile( SETTILE_TILEMAP, SETTILE_TILE, SETTILE_X, SETTILE_Y );
break;
case FN_GetTile: //Number Function
rc_push_num(rc_getTile( GETTILE_TILEMAP, GETTILE_X, GETTILE_Y ));
break;
case FN_FillTile: //Sub Procedure
rc_fillTile( FILLTILE_TILEMAP, FILLTILE_TILE, FILLTILE_X, FILLTILE_Y, FILLTILE_WIDTHINTILES, FILLTILE_HEIGHTINTILES );
break;
case FN_DrawTileMap: //Sub Procedure
rc_drawTileMap( DRAWTILEMAP_TILEMAP, DRAWTILEMAP_X, DRAWTILEMAP_Y, DRAWTILEMAP_W, DRAWTILEMAP_H, DRAWTILEMAP_OFFSET_X, DRAWTILEMAP_OFFSET_Y );
break;
case FN_LoadMesh: //Number Function
rc_push_num(rc_loadMesh( LOADMESH_MESH_FILE$ ));
break;
@@ -1610,6 +1949,51 @@ case FN_RemoveActorShadow: //Sub Procedure
case FN_ActorExists: //Number Function
rc_push_num(rc_actorExists( ACTOREXISTS_ACTOR ));
break;
case FN_CreateActorAnimation: //Number Function
rc_push_num(rc_createActorAnimation( CREATEACTORANIMATION_ACTOR, CREATEACTORANIMATION_START_FRAME, CREATEACTORANIMATION_END_FRAME, CREATEACTORANIMATION_SPEED ));
break;
case FN_SetActorAnimation: //Sub Procedure
rc_setActorAnimation( SETACTORANIMATION_ACTOR, SETACTORANIMATION_ANIMATION, SETACTORANIMATION_NUM_LOOPS );
break;
case FN_SetActorAnimationSpeed: //Sub Procedure
rc_setActorAnimationSpeed( SETACTORANIMATIONSPEED_ACTOR, SETACTORANIMATIONSPEED_ANIMATION, SETACTORANIMATIONSPEED_SPEED );
break;
case FN_SetActorAnimationFrames: //Sub Procedure
rc_setActorAnimationFrames( SETACTORANIMATIONFRAMES_ACTOR, SETACTORANIMATIONFRAMES_ANIMATION, SETACTORANIMATIONFRAMES_START_FRAME, SETACTORANIMATIONFRAMES_END_FRAME );
break;
case FN_GetActorCurrentAnimation: //Number Function
rc_push_num(rc_getActorCurrentAnimation( GETACTORCURRENTANIMATION_ACTOR ));
break;
case FN_GetActorAnimationSpeed: //Number Function
rc_push_num(rc_getActorAnimationSpeed( GETACTORANIMATIONSPEED_ACTOR, GETACTORANIMATIONSPEED_ANIMATION ));
break;
case FN_GetActorAnimationStartFrame: //Number Function
rc_push_num(rc_getActorAnimationStartFrame( GETACTORANIMATIONSTARTFRAME_ACTOR, GETACTORANIMATIONSTARTFRAME_ANIMATION ));
break;
case FN_GetActorAnimationEndFrame: //Number Function
rc_push_num(rc_getActorAnimationEndFrame( GETACTORANIMATIONENDFRAME_ACTOR, GETACTORANIMATIONENDFRAME_ANIMATION ));
break;
case FN_SetActorFrame: //Sub Procedure
rc_setActorFrame( SETACTORFRAME_ACTOR, SETACTORFRAME_FRAME );
break;
case FN_GetActorFrame: //Number Function
rc_push_num(rc_getActorFrame( GETACTORFRAME_ACTOR ));
break;
case FN_ActorAnimationIsPlaying: //Number Function
rc_push_num(rc_actorAnimationIsPlaying( ACTORANIMATIONISPLAYING_ACTOR ));
break;
case FN_NumActorAnimationLoops: //Number Function
rc_push_num(rc_numActorAnimationLoops( NUMACTORANIMATIONLOOPS_ACTOR ));
break;
case FN_SetActorMD2Animation: //Sub Procedure
rc_setActorMD2Animation( SETACTORMD2ANIMATION_ACTOR, SETACTORMD2ANIMATION_ANIM, SETACTORMD2ANIMATION_NUM_LOOPS );
break;
case FN_SetActorMD2AnimationByName: //Sub Procedure
rc_setActorMD2AnimationByName( SETACTORMD2ANIMATIONBYNAME_ACTOR, SETACTORMD2ANIMATIONBYNAME_ANIM_NAME$, SETACTORMD2ANIMATIONBYNAME_NUM_LOOPS );
break;
case FN_DeleteActorAnimation: //Sub Procedure
rc_deleteActorAnimation( DELETEACTORANIMATION_ACTOR, DELETEACTORANIMATION_ANIMATION );
break;
case FN_SetGravity3D: //Sub Procedure
rc_setGravity3D( SETGRAVITY3D_X, SETGRAVITY3D_Y, SETGRAVITY3D_Z );
break;
@@ -1727,8 +2111,8 @@ case FN_clearActorForces: //Sub Procedure
case FN_updateActorInertiaTensor: //Sub Procedure
rc_updateActorInertiaTensor( UPDATEACTORINERTIATENSOR_ACTOR );
break;
case FN_getActorCOMPosition: //Sub Procedure
rc_getActorCOMPosition( GETACTORCOMPOSITION_ACTOR, &GETACTORCOMPOSITION_X, &GETACTORCOMPOSITION_Y, &GETACTORCOMPOSITION_Z );
case FN_getActorCenter: //Sub Procedure
rc_getActorCenter( GETACTORCENTER_ACTOR, &GETACTORCENTER_X, &GETACTORCENTER_Y, &GETACTORCENTER_Z );
break;
case FN_getActorRotationQ: //Sub Procedure
rc_getActorRotationQ( GETACTORROTATIONQ_ACTOR, &GETACTORROTATIONQ_X, &GETACTORROTATIONQ_Y, &GETACTORROTATIONQ_Z, &GETACTORROTATIONQ_W );
@@ -1751,8 +2135,8 @@ case FN_setActorAngularVelocityLocal: //Sub Procedure
case FN_setActorAngularVelocityWorld: //Sub Procedure
rc_setActorAngularVelocityWorld( SETACTORANGULARVELOCITYWORLD_ACTOR, SETACTORANGULARVELOCITYWORLD_X, SETACTORANGULARVELOCITYWORLD_Y, SETACTORANGULARVELOCITYWORLD_Z );
break;
case FN_getActorLocalPointVelocity: //Sub Procedure
rc_getActorLocalPointVelocity( GETACTORLOCALPOINTVELOCITY_ACTOR, GETACTORLOCALPOINTVELOCITY_REL_X, GETACTORLOCALPOINTVELOCITY_REL_Y, GETACTORLOCALPOINTVELOCITY_REL_Z, &GETACTORLOCALPOINTVELOCITY_X, &GETACTORLOCALPOINTVELOCITY_Y, &GETACTORLOCALPOINTVELOCITY_Z );
case FN_getActorVelocityInLocalPoint: //Sub Procedure
rc_getActorVelocityInLocalPoint( GETACTORVELOCITYINLOCALPOINT_ACTOR, GETACTORVELOCITYINLOCALPOINT_REL_X, GETACTORVELOCITYINLOCALPOINT_REL_Y, GETACTORVELOCITYINLOCALPOINT_REL_Z, &GETACTORVELOCITYINLOCALPOINT_X, &GETACTORVELOCITYINLOCALPOINT_Y, &GETACTORVELOCITYINLOCALPOINT_Z );
break;
case FN_getActorLinearVelocityLocal: //Sub Procedure
rc_getActorLinearVelocityLocal( GETACTORLINEARVELOCITYLOCAL_ACTOR, &GETACTORLINEARVELOCITYLOCAL_X, &GETACTORLINEARVELOCITYLOCAL_Y, &GETACTORLINEARVELOCITYLOCAL_Z );
@@ -2399,51 +2783,6 @@ case FN_SetTerrainCameraRotationDelta: //Sub Procedure
case FN_SetTerrainPatchLOD: //Sub Procedure
rc_setTerrainPatchLOD( SETTERRAINPATCHLOD_ACTOR, SETTERRAINPATCHLOD_PATCHX, SETTERRAINPATCHLOD_PATCHZ, SETTERRAINPATCHLOD_LOD );
break;
case FN_CreateActorAnimation: //Number Function
rc_push_num(rc_createActorAnimation( CREATEACTORANIMATION_ACTOR, CREATEACTORANIMATION_START_FRAME, CREATEACTORANIMATION_END_FRAME, CREATEACTORANIMATION_SPEED ));
break;
case FN_SetActorAnimation: //Sub Procedure
rc_setActorAnimation( SETACTORANIMATION_ACTOR, SETACTORANIMATION_ANIMATION, SETACTORANIMATION_NUM_LOOPS );
break;
case FN_SetActorAnimationSpeed: //Sub Procedure
rc_setActorAnimationSpeed( SETACTORANIMATIONSPEED_ACTOR, SETACTORANIMATIONSPEED_ANIMATION, SETACTORANIMATIONSPEED_SPEED );
break;
case FN_SetActorAnimationFrames: //Sub Procedure
rc_setActorAnimationFrames( SETACTORANIMATIONFRAMES_ACTOR, SETACTORANIMATIONFRAMES_ANIMATION, SETACTORANIMATIONFRAMES_START_FRAME, SETACTORANIMATIONFRAMES_END_FRAME );
break;
case FN_GetActorCurrentAnimation: //Number Function
rc_push_num(rc_getActorCurrentAnimation( GETACTORCURRENTANIMATION_ACTOR ));
break;
case FN_GetActorAnimationSpeed: //Number Function
rc_push_num(rc_getActorAnimationSpeed( GETACTORANIMATIONSPEED_ACTOR, GETACTORANIMATIONSPEED_ANIMATION ));
break;
case FN_GetActorAnimationStartFrame: //Number Function
rc_push_num(rc_getActorAnimationStartFrame( GETACTORANIMATIONSTARTFRAME_ACTOR, GETACTORANIMATIONSTARTFRAME_ANIMATION ));
break;
case FN_GetActorAnimationEndFrame: //Number Function
rc_push_num(rc_getActorAnimationEndFrame( GETACTORANIMATIONENDFRAME_ACTOR, GETACTORANIMATIONENDFRAME_ANIMATION ));
break;
case FN_SetActorFrame: //Sub Procedure
rc_setActorFrame( SETACTORFRAME_ACTOR, SETACTORFRAME_FRAME );
break;
case FN_GetActorFrame: //Number Function
rc_push_num(rc_getActorFrame( GETACTORFRAME_ACTOR ));
break;
case FN_ActorAnimationIsPlaying: //Number Function
rc_push_num(rc_actorAnimationIsPlaying( ACTORANIMATIONISPLAYING_ACTOR ));
break;
case FN_NumActorAnimationLoops: //Number Function
rc_push_num(rc_numActorAnimationLoops( NUMACTORANIMATIONLOOPS_ACTOR ));
break;
case FN_SetActorMD2Animation: //Sub Procedure
rc_setActorMD2Animation( SETACTORMD2ANIMATION_ACTOR, SETACTORMD2ANIMATION_ANIM, SETACTORMD2ANIMATION_NUM_LOOPS );
break;
case FN_SetActorMD2AnimationByName: //Sub Procedure
rc_setActorMD2AnimationByName( SETACTORMD2ANIMATIONBYNAME_ACTOR, SETACTORMD2ANIMATIONBYNAME_ANIM_NAME$, SETACTORMD2ANIMATIONBYNAME_NUM_LOOPS );
break;
case FN_DeleteActorAnimation: //Sub Procedure
rc_deleteActorAnimation( DELETEACTORANIMATION_ACTOR, DELETEACTORANIMATION_ANIMATION );
break;
case FN_createMaterial: //Number Function
rc_push_num(rc_createMaterial( ));
break;