diff --git a/doc/files/actoranimationisplaying.txt b/doc/files/actoranimationisplaying.txt
new file mode 100644
index 0000000..e833853
--- /dev/null
+++ b/doc/files/actoranimationisplaying.txt
@@ -0,0 +1,6 @@
+#title ActorAnimationIsPlaying [RCBasic Doc]
+#header function ActorAnimationIsPlaying(actor)
+
+Returns true if an actor is currently playing an animation
+
+Note: If the number of loops in the animation is set to -1 then this will always be true since it does not return false until it plays the last frame in the last loop
diff --git a/doc/files/createactoranimation.txt b/doc/files/createactoranimation.txt
new file mode 100644
index 0000000..697ef5d
--- /dev/null
+++ b/doc/files/createactoranimation.txt
@@ -0,0 +1,4 @@
+#title CreateActorAnimation [RCBasic Doc]
+#header Function CreateActorAnimation(actor, start_frame, end_frame, speed)
+
+
diff --git a/doc/files/createanimatedactor.txt b/doc/files/createanimatedactor.txt
new file mode 100644
index 0000000..12a89e7
--- /dev/null
+++ b/doc/files/createanimatedactor.txt
@@ -0,0 +1,10 @@
+#title CreateAnimatedActor [RCBasic Doc]
+#header function CreateAnimatedActor( mesh )
+
+Returns a new animated actor composed of a mesh
+
+The mesh can either be created using CreateMesh() or Loaded using LoadMesh()
+
+#ref CreateMesh LoadMesh LoadMeshFromAN8
+
+#ref CreateOctreeActor CreateCubeActor CreateSphereActor CreateWaterActor CreateLightActor CreateBillboardActor CreateTerrainActor
diff --git a/doc/files/createbillboardactor.txt b/doc/files/createbillboardactor.txt
index 6966c4f..d9b37bc 100644
--- a/doc/files/createbillboardactor.txt
+++ b/doc/files/createbillboardactor.txt
@@ -4,3 +4,5 @@
Returns a billboard actor
Billboard actors are flat textured planes that are always facing the camera.
+
+#ref CreateAnimatedActor CreateOctreeActor CreateSphereActor CreateWaterActor CreateLightActor CreateCubeActor CreateTerrainActor
diff --git a/doc/files/createcubeactor.txt b/doc/files/createcubeactor.txt
index 921c283..2c0f7b7 100644
--- a/doc/files/createcubeactor.txt
+++ b/doc/files/createcubeactor.txt
@@ -3,4 +3,4 @@
Returns an actor with a cube mesh of the specified size ( cube_size x cube_size x cube_size )
-#ref CreateMeshActor CreateMeshOctreeActor CreateSphereActor CreateWaterPlaneActor CreateLightActor CreateBillboardActor CreateTerrainActor
+#ref CreateAnimatedActor CreateOctreeActor CreateSphereActor CreateWaterActor CreateLightActor CreateBillboardActor CreateTerrainActor
diff --git a/doc/files/createmeshactor.txt b/doc/files/createmeshactor.txt
index a25428d..3feb78d 100644
--- a/doc/files/createmeshactor.txt
+++ b/doc/files/createmeshactor.txt
@@ -1,10 +1,10 @@
-#title CreateMeshActor [RCBasic Doc]
-#header function CreateMeshActor( mesh )
+#title CreateAnimatedActor [RCBasic Doc]
+#header function CreateAnimatedActor( mesh )
-Returns a new actor composed of a mesh
+Returns a new animated actor composed of a mesh
The mesh can either be created using CreateMesh() or Loaded using LoadMesh()
-#ref CreateMesh LoadMesh
+#ref CreateMesh LoadMesh LoadMeshFromAN8
-#ref CreateMeshOctreeActor CreateCubeActor CreateSphereActor CreateWaterPlaneActor CreateLightActor CreateBillboardActor CreateTerrainActor
+#ref CreateOctreeActor CreateCubeActor CreateSphereActor CreateWaterPlaneActor CreateLightActor CreateBillboardActor CreateTerrainActor
diff --git a/doc/files/createoctreeactor.txt b/doc/files/createoctreeactor.txt
new file mode 100644
index 0000000..95c9e3a
--- /dev/null
+++ b/doc/files/createoctreeactor.txt
@@ -0,0 +1,8 @@
+#title CreateOctreeActor [RCBasic Doc]
+#header function CreateOctreeActor( mesh )
+
+Returns a mesh actor optimized for large objects (such as levels)
+
+#ref CreateMesh LoadMesh
+
+#ref CreateAnimatedActor CreateCubeActor CreateSphereActor CreateWaterActor CreateLightActor CreateBillboardActor CreateTerrainActor
diff --git a/doc/files/createsphereactor.txt b/doc/files/createsphereactor.txt
index 8894b23..b8f1faa 100644
--- a/doc/files/createsphereactor.txt
+++ b/doc/files/createsphereactor.txt
@@ -3,4 +3,4 @@
Returns an actor composed of a sphere mesh
-#ref CreateMeshActor CreateMeshOctreeActor CreateCubeActor CreateWaterPlaneActor CreateLightActor CreateBillboardActor CreateTerrainActor
+#ref CreateAnimatedActor CreateOctreeActor CreateBillboardActor CreateWaterActor CreateLightActor CreateCubeActor CreateTerrainActor
diff --git a/doc/files/createterrainactor.txt b/doc/files/createterrainactor.txt
index b8ba9f9..9e97d2b 100644
--- a/doc/files/createterrainactor.txt
+++ b/doc/files/createterrainactor.txt
@@ -5,4 +5,4 @@ Returns terrain generated from a height map
Note: Height Maps can be any supported image format
-#ref CreateMeshActor CreateMeshOctreeActor CreateCubeActor CreateSphereActor CreateWaterPlaneActor CreateLightActor CreateBillboardActor
+#ref CreateAnimatedActor CreateOctreeActor CreateSphereActor CreateWaterActor CreateLightActor CreateCubeActor CreateBillboardActor
diff --git a/doc/files/createwateractor.txt b/doc/files/createwateractor.txt
index 6d4a932..2c1577d 100644
--- a/doc/files/createwateractor.txt
+++ b/doc/files/createwateractor.txt
@@ -2,3 +2,5 @@
#header function CreateWaterActor( mesh, waveHeight, waveSpeed, waveLength )
Creates an actor with water properties set on a base mesh
+
+#ref CreateAnimatedActor CreateOctreeActor CreateSphereActor CreateCubeActor CreateLightActor CreateBillboardActor CreateTerrainActor
diff --git a/doc/files/deleteactoranimation.txt b/doc/files/deleteactoranimation.txt
new file mode 100644
index 0000000..edeb2ec
--- /dev/null
+++ b/doc/files/deleteactoranimation.txt
@@ -0,0 +1,4 @@
+#title DeleteActorAnimation [RCBasic Doc]
+#header sub DeleteActorAnimation(actor, animation)
+
+Deletes an actor's animation
diff --git a/doc/files/deletespriteanimation.txt b/doc/files/deletespriteanimation.txt
new file mode 100644
index 0000000..3fe5d23
--- /dev/null
+++ b/doc/files/deletespriteanimation.txt
@@ -0,0 +1,6 @@
+#title DeleteSpriteAnimation [RCBasic Doc]
+#header Sub DeleteSpriteAnimation(sprite, animation)
+
+Delete's a sprite's animation
+
+#ref CreateSpriteAnimation
diff --git a/doc/files/getactoranimationendframe.txt b/doc/files/getactoranimationendframe.txt
new file mode 100644
index 0000000..3e171f4
--- /dev/null
+++ b/doc/files/getactoranimationendframe.txt
@@ -0,0 +1,6 @@
+#title GetActorAnimationEndFrame [RCBasic Doc]
+#header Function GetActorAnimationEndFrame(actor, animation)
+
+Returns the last frame in an actor's animation
+
+#ref SetActorAnimationFrames
diff --git a/doc/files/getactoranimationspeed.txt b/doc/files/getactoranimationspeed.txt
index 56ab127..e16a7fb 100644
--- a/doc/files/getactoranimationspeed.txt
+++ b/doc/files/getactoranimationspeed.txt
@@ -1,4 +1,6 @@
#title GetActorAnimationSpeed [RCBasic Doc]
-#header function GetActorAnimationSpeed( actor )
+#header function GetActorAnimationSpeed( actor, animation )
-Returns actors animation speed in frames per second
+Returns actor's animation speed in frames per second
+
+#ref SetActorAnimationSpeed
diff --git a/doc/files/getactoranimationstartframe.txt b/doc/files/getactoranimationstartframe.txt
new file mode 100644
index 0000000..0b92f17
--- /dev/null
+++ b/doc/files/getactoranimationstartframe.txt
@@ -0,0 +1,6 @@
+#title GetActorAnimationStartFrame [RCBasic Doc]
+#header Function GetActorAnimationStartFrame(actor, animation)
+
+Returns the first frame in an actor's animation
+
+#ref SetActorAnimationFrames
diff --git a/doc/files/getactorcurrentanimation.txt b/doc/files/getactorcurrentanimation.txt
new file mode 100644
index 0000000..429c768
--- /dev/null
+++ b/doc/files/getactorcurrentanimation.txt
@@ -0,0 +1,8 @@
+#title GetActorCurrentAnimation [RCBasic Doc]
+#header Function GetActorCurrentAnimation(actor)
+
+Returns the current animation set on an actor
+
+Note: Current animation will be 0 if the actor's frame was set with SetActorFrame()
+
+#ref SetActorAnimation SetActorFrame
diff --git a/doc/files/getactorframe.txt b/doc/files/getactorframe.txt
new file mode 100644
index 0000000..d9281ad
--- /dev/null
+++ b/doc/files/getactorframe.txt
@@ -0,0 +1,7 @@
+#title GetActorFrame [RCBasic Doc]
+#header function GetActorFrame(actor)
+
+Returns the current frame number an actor is currently rendering
+
+
+#ref SetActorFrame GetActorAnimationFrame
diff --git a/doc/files/numactoranimationloops.txt b/doc/files/numactoranimationloops.txt
new file mode 100644
index 0000000..2a55245
--- /dev/null
+++ b/doc/files/numactoranimationloops.txt
@@ -0,0 +1,5 @@
+#title NumActorAnimationLoops [RCBasic Doc]
+#header function NumActorAnimationLoops(actor)
+
+Returns the total number of loops the actor is set to repeat the animation for
+
diff --git a/doc/files/setactoranimation.txt b/doc/files/setactoranimation.txt
index adef756..721398b 100644
--- a/doc/files/setactoranimation.txt
+++ b/doc/files/setactoranimation.txt
@@ -1,8 +1,12 @@
#title SetActorAnimation [RCBasic Doc]
-#header sub SetActorAnimation( actor, start_frame, end_frame)
+#header sub SetActorAnimation( actor, animation, num_loops)
-Sets the start frame and end frame that an actor will loop through
+Sets the current animation for an actor to start playing
-Note: Use LoopActorAnimation() to enable or disable animation looping
+Notes on num_loops
+#list ol
+#li num_loops is the number of times to loop the animation after its done playing. To play the animation once, set num_loops to 0.
+#li To loop an animation infinitely, set num_loops to -1
+#/list
-#ref LoopActorAnimation SetActorFrame
+#ref CreateActorAnimation
diff --git a/doc/files/setactoranimationframes.txt b/doc/files/setactoranimationframes.txt
new file mode 100644
index 0000000..4339f60
--- /dev/null
+++ b/doc/files/setactoranimationframes.txt
@@ -0,0 +1,6 @@
+#title SetActorAnimationFrames [RCBasic Doc]
+#header sub SetActorAnimationFrames(actor, animation, start_frame, end_frame)
+
+Changes the frames that plays in an actor's animation
+
+#ref CreateActorAnimation
diff --git a/doc/files/setactoranimationspeed.txt b/doc/files/setactoranimationspeed.txt
index 1228754..e5e785c 100644
--- a/doc/files/setactoranimationspeed.txt
+++ b/doc/files/setactoranimationspeed.txt
@@ -1,5 +1,5 @@
#title SetActorAnimationSpeed [RCBasic Doc]
-#header sub SetActorAnimationSpeed( actor, speed )
+#header sub SetActorAnimationSpeed( actor, animation, speed )
Set the FPS of an actor animation
diff --git a/doc/files/setactorframe.txt b/doc/files/setactorframe.txt
index 8b2e8e9..b38a8a0 100644
--- a/doc/files/setactorframe.txt
+++ b/doc/files/setactorframe.txt
@@ -2,3 +2,8 @@
#header sub SetActorFrame( actor, frame )
Sets the current frame of an actor
+
+Note: This function will set the actor's animation to 0 which is a default 1 frame animation that is created when the actor is created.
+
+
+#ref GetActorFrame
diff --git a/doc/files/spriteanimationisplaying.txt b/doc/files/spriteanimationisplaying.txt
new file mode 100644
index 0000000..6cf944c
--- /dev/null
+++ b/doc/files/spriteanimationisplaying.txt
@@ -0,0 +1,4 @@
+#title SpriteAnimationIsPlaying [RCBasic Doc]
+#header Function SpriteAnimationIsPlaying(sprite)
+
+
diff --git a/rcbasic_build/intern_inc/switch_cases.h b/rcbasic_build/intern_inc/switch_cases.h
index 6381745..fe6d6c0 100644
--- a/rcbasic_build/intern_inc/switch_cases.h
+++ b/rcbasic_build/intern_inc/switch_cases.h
@@ -172,6 +172,7 @@ rc_setWindowAlwaysOnTop( SETWINDOWALWAYSONTOP_FLAG )
rc_setMouseRelative( SETMOUSERELATIVE_FLAG )
rc_flashWindow( FLASHWINDOW_FLAG )
rc_windowIsGrabbed( )
+rc_preUpdate( )
rc_canvasOpen( OPENCANVAS_W, OPENCANVAS_H, OPENCANVAS_VIEWPORT_X, OPENCANVAS_VIEWPORT_Y, OPENCANVAS_VIEWPORT_W, OPENCANVAS_VIEWPORT_H, OPENCANVAS_MODE )
rc_canvasClose( CLOSECANVAS_C_NUM )
rc_canvasOpen3D( OPENCANVAS3D_VIEWPORT_X, OPENCANVAS3D_VIEWPORT_Y, OPENCANVAS3D_VIEWPORT_W, OPENCANVAS3D_VIEWPORT_H, OPENCANVAS3D_MODE )
@@ -190,7 +191,7 @@ rc_setCanvasColorMod( SETCANVASCOLORMOD_C_NUM, SETCANVASCOLORMOD_C )
rc_getCanvasColorMod( GETCANVASCOLORMOD_C_NUM )
rc_cloneCanvas( CLONECANVAS_C_NUM, CLONECANVAS_MODE )
rc_setCanvasZ( SETCANVASZ_C_NUM, SETCANVASZ_Z )
-rc_getCanvasZ( GETCANVASZ_C_NUM )
+rc_getCanvasZ( CANVASZ_C_NUM )
rc_canvasClip( CANVASCLIP_X, CANVASCLIP_Y, CANVASCLIP_W, CANVASCLIP_H )
rc_activeCanvas( )
rc_setCanvasPhysics2D( SETCANVASPHYSICS2D_C_NUM, SETCANVASPHYSICS2D_STATE )
@@ -315,8 +316,8 @@ rc_fontExists( FONTEXISTS_SLOT )
rc_setFont( SETFONT_SLOT )
rc_drawText( DRAWTEXT_TXT$, DRAWTEXT_X, DRAWTEXT_Y )
rc_getTextSize( GETTEXTSIZE_TXT$, &GETTEXTSIZE_W, &GETTEXTSIZE_H )
-rc_getTextWidth( GETTEXTWIDTH_TXT$ )
-rc_getTextHeight( GETTEXTHEIGHT_TXT$ )
+rc_getTextWidth( TEXTWIDTH_TXT$ )
+rc_getTextHeight( TEXTHEIGHT_TXT$ )
rc_touchPressure( )
rc_getTouch( &GETTOUCH_STATUS, &GETTOUCH_X, &GETTOUCH_Y, &GETTOUCH_DX, &GETTOUCH_DY )
rc_getMultiTouch( &GETMULTITOUCH_STATUS, &GETMULTITOUCH_X, &GETMULTITOUCH_Y, &GETMULTITOUCH_FINGERS, &GETMULTITOUCH_DIST, &GETMULTITOUCH_THETA )
@@ -446,17 +447,59 @@ rc_readInput_Stop( )
rc_readInput_Text( )
rc_readInput_SetText( READINPUT_SETTEXT_TXT$ )
rc_readInput_ToggleBackspace( READINPUT_TOGGLEBACKSPACE_FLAG )
-rc_createSprite( CREATESPRITE_IMG )
+rc_createSprite( CREATESPRITE_IMG, CREATESPRITE_FRAME_W, CREATESPRITE_FRAME_H )
rc_deleteSprite( DELETESPRITE_SPRITE )
rc_setSpritePosition( SETSPRITEPOSITION_SPRITE, SETSPRITEPOSITION_X, SETSPRITEPOSITION_Y )
+rc_translateSprite( TRANSLATESPRITE_SPRITE, TRANSLATESPRITE_X, TRANSLATESPRITE_Y )
+rc_getSpritePosition( GETSPRITEPOSITION_SPRITE, &GETSPRITEPOSITION_X, &GETSPRITEPOSITION_Y )
+rc_spriteX( SPRITEX_SPRITE )
+rc_spriteY( SPRITEY_SPRITE )
+rc_setSpriteRotation( SETSPRITEROTATION_SPRITE, SETSPRITEROTATION_ANGLE )
+rc_rotateSprite( ROTATESPRITE_SPRITE, ROTATESPRITE_ANGLE )
+rc_getSpriteRotation( GETSPRITEROTATION_SPRITE )
+rc_setSpriteScale( SETSPRITESCALE_SPRITE, SETSPRITESCALE_X, SETSPRITESCALE_Y )
+rc_scaleSprite( SCALESPRITE_SPRITE, SCALESPRITE_X, SCALESPRITE_Y )
+rc_getSpriteScale( GETSPRITESCALE_SPRITE, &GETSPRITESCALE_X, &GETSPRITESCALE_Y )
+rc_setSpriteZ( SETSPRITEZ_SPRITE, SETSPRITEZ_Z )
+rc_spriteZ( SPRITEZ_SPRITE )
+rc_getSpriteSize( GETSPRITESIZE_SPRITE, &GETSPRITESIZE_W, &GETSPRITESIZE_H )
+rc_spriteWidth( SPRITEWIDTH_SPRITE )
+rc_spriteHeight( SPRITEHEIGHT_SPRITE )
+rc_setSpriteVisible( SETSPRITEVISIBLE_SPRITE, SETSPRITEVISIBLE_FLAG )
+rc_spriteIsVisible( SPRITEISVISIBLE_SPRITE )
+rc_setSpriteSolid( SETSPRITESOLID_SPRITE, SETSPRITESOLID_FLAG )
+rc_spriteIsSolid( SPRITEISSOLID_SPRITE )
+rc_setSpriteType( SETSPRITETYPE_SPRITE, SETSPRITETYPE_SPRITE_TYPE )
+rc_getSpriteType( GETSPRITETYPE_SPRITE )
+rc_setSpriteSource( SETSPRITESOURCE_SPRITE, SETSPRITESOURCE_IMG )
+rc_getSpriteSource( GETSPRITESOURCE_SPRITE )
+rc_createSpriteAnimation( CREATESPRITEANIMATION_SPRITE, CREATESPRITEANIMATION_ANIM_LENGTH, CREATESPRITEANIMATION_SPEED )
+rc_setSpriteFrame( SETSPRITEFRAME_SPRITE, SETSPRITEFRAME_FRAME )
+rc_getSpriteFrame( GETSPRITEFRAME_SPRITE )
+rc_setSpriteAnimationFrame( SETSPRITEANIMATIONFRAME_SPRITE, SETSPRITEANIMATIONFRAME_ANIMATION, SETSPRITEANIMATIONFRAME_ANIM_FRAME, SETSPRITEANIMATIONFRAME_FRAME )
+rc_getSpriteAnimationFrame( GETSPRITEANIMATIONFRAME_SPRITE, GETSPRITEANIMATIONFRAME_ANIMATION, GETSPRITEANIMATIONFRAME_ANIM_FRAME )
+rc_setSpriteAnimationLength( SETSPRITEANIMATIONLENGTH_SPRITE, SETSPRITEANIMATIONLENGTH_ANIMATION, SETSPRITEANIMATIONLENGTH_ANIM_LENGTH )
+rc_getSpriteAnimationLength( GETSPRITEANIMATIONLENGTH_SPRITE, GETSPRITEANIMATIONLENGTH_ANIMATION )
+rc_setSpriteAnimationSpeed( SETSPRITEANIMATIONSPEED_SPRITE, SETSPRITEANIMATIONSPEED_ANIMATION, SETSPRITEANIMATIONSPEED_SPEED )
+rc_getSpriteAnimationSpeed( GETSPRITEANIMATIONSPEED_SPRITE, GETSPRITEANIMATIONSPEED_ANIMATION )
+rc_setSpriteAnimation( SETSPRITEANIMATION_SPRITE, SETSPRITEANIMATION_ANIMATION, SETSPRITEANIMATION_NUM_LOOPS )
+rc_getSpriteAnimation( GETSPRITEANIMATION_SPRITE )
+rc_getSpriteCurrentAnimationFrame( GETSPRITECURRENTANIMATIONFRAME_SPRITE )
+rc_numSpriteAnimationLoops( NUMSPRITEANIMATIONLOOPS_SPRITE )
+rc_spriteAnimationIsPlaying( SPRITEANIMATIONISPLAYING_SPRITE )
+rc_deleteSpriteAnimation( DELETESPRITEANIMATION_SPRITE, DELETESPRITEANIMATION_ANIMATION )
rc_loadMesh( LOADMESH_MESH_FILE$ )
rc_deleteMesh( DELETEMESH_MESH )
rc_createMesh( )
rc_addMeshBuffer( ADDMESHBUFFER_MESH, ADDMESHBUFFER_VERTEX_COUNT, &ADDMESHBUFFER_VERTEX_DATA, &ADDMESHBUFFER_NORMAL_DATA, &ADDMESHBUFFER_UV_DATA, ADDMESHBUFFER_INDEX_COUNT, &ADDMESHBUFFER_INDEX_DATA )
rc_loadMeshFromArchive( LOADMESHFROMARCHIVE_ARCHIVE$, LOADMESHFROMARCHIVE_MESH_FILE$ )
rc_createPlaneMesh( CREATEPLANEMESH_W, CREATEPLANEMESH_H, CREATEPLANEMESH_TILECOUNT_W, CREATEPLANEMESH_TILECOUNT_H )
-rc_createMeshActor( CREATEMESHACTOR_MESH )
-rc_createMeshOctreeActor( CREATEMESHOCTREEACTOR_MESH )
+rc_loadAN8( LOADAN8_AN8_FILE$ )
+rc_loadMeshFromAN8( LOADMESHFROMAN8_AN8_PROJECT, LOADMESHFROMAN8_AN8_SCENE$ )
+rc_getNumAN8Scenes( GETNUMAN8SCENES_AN8_PROJECT )
+rc_getAN8SceneName( GETAN8SCENENAME$_AN8_PROJECT, GETAN8SCENENAME$_SCENE_NUM )
+rc_createAnimatedActor( CREATEANIMATEDACTOR_MESH )
+rc_createOctreeActor( CREATEOCTREEACTOR_MESH )
rc_createCubeActor( CREATECUBEACTOR_CUBE_SIZE )
rc_createSphereActor( CREATESPHEREACTOR_RADIUS )
rc_createWaterActor( CREATEWATERACTOR_MESH, CREATEWATERACTOR_WAVEHEIGHT, CREATEWATERACTOR_WAVESPEED, CREATEWATERACTOR_WAVELENGTH )
@@ -664,6 +707,9 @@ rc_setCameraFarValue( SETCAMERAFARVALUE_ZF )
rc_getCameraFarValue( )
rc_setCameraNearValue( SETCAMERANEARVALUE_ZN )
rc_getCameraNearValue( )
+rc_setProjectionMatrix( SETPROJECTIONMATRIX_MATA, SETPROJECTIONMATRIX_PROJECTION_TYPE )
+rc_getProjectionMatrix( GETPROJECTIONMATRIX_MATA )
+rc_getWorldToViewportPosition( GETWORLDTOVIEWPORTPOSITION_X, GETWORLDTOVIEWPORTPOSITION_Y, GETWORLDTOVIEWPORTPOSITION_Z, &GETWORLDTOVIEWPORTPOSITION_VX, &GETWORLDTOVIEWPORTPOSITION_VY )
rc_addSceneSkyBox( ADDSCENESKYBOX_IMG_TOP, ADDSCENESKYBOX_IMG_BOTTOM, ADDSCENESKYBOX_IMG_LEFT, ADDSCENESKYBOX_IMG_RIGHT, ADDSCENESKYBOX_IMG_FRONT, ADDSCENESKYBOX_IMG_BACK )
rc_addSceneSkyDome( ADDSCENESKYDOME_IMG )
rc_addSceneSkyDomeEx( ADDSCENESKYDOMEEX_IMG, ADDSCENESKYDOMEEX_HORIRES, ADDSCENESKYDOMEEX_VERTRES, ADDSCENESKYDOMEEX_TXPERCENTAGE, ADDSCENESKYDOMEEX_SPHEREPERCENTAGE, ADDSCENESKYDOMEEX_RADIUS )
@@ -743,21 +789,21 @@ 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_setActorAnimation( SETACTORANIMATION_ACTOR, SETACTORANIMATION_START_FRAME, SETACTORANIMATION_END_FRAME )
-rc_setActorAnimationSpeed( SETACTORANIMATIONSPEED_ACTOR, SETACTORANIMATIONSPEED_SPEED )
+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_setActorMD2Animation( SETACTORMD2ANIMATION_ACTOR, SETACTORMD2ANIMATION_ANIM )
-rc_setActorMD2AnimationByName( SETACTORMD2ANIMATIONBYNAME_ACTOR, SETACTORMD2ANIMATIONBYNAME_ANIM_NAME$ )
-rc_getActorAnimationSpeed( GETACTORANIMATIONSPEED_ACTOR )
-rc_getActorEndFrame( GETACTORENDFRAME_ACTOR )
-rc_getActorCurrentFrame( GETACTORCURRENTFRAME_ACTOR )
-rc_getActorStartFrame( GETACTORSTARTFRAME_ACTOR )
-rc_startActorTransition( STARTACTORTRANSITION_ACTOR, STARTACTORTRANSITION_FRAME, STARTACTORTRANSITION_TRANSITION_TIME )
-rc_stopActorTransition( STOPACTORTRANSITION_ACTOR )
-rc_actorIsInTransition( ACTORISINTRANSITION_ACTOR )
-rc_getActorTransitionTime( GETACTORTRANSITIONTIME_ACTOR )
-rc_actorAnimationIsLooped( ACTORANIMATIONISLOOPED_ACTOR )
-rc_loopActorAnimation( LOOPACTORANIMATION_ACTOR, LOOPACTORANIMATION_FLAG )
+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 )
diff --git a/rcbasic_build/rc_builtin.h b/rcbasic_build/rc_builtin.h
index 10d70f3..f2a194a 100755
--- a/rcbasic_build/rc_builtin.h
+++ b/rcbasic_build/rc_builtin.h
@@ -442,6 +442,7 @@ void init_embedded_functions()
embed_function("FlashWindow", ID_TYPE_FN_NUM);
add_embedded_arg("flag", ID_TYPE_NUM);
embed_function("WindowIsGrabbed", ID_TYPE_FN_NUM);
+ embed_function("PreUpdate", ID_TYPE_SUB);
embed_function("OpenCanvas", ID_TYPE_FN_NUM);
add_embedded_arg("w", ID_TYPE_NUM);
add_embedded_arg("h", ID_TYPE_NUM);
@@ -506,7 +507,7 @@ void init_embedded_functions()
embed_function("SetCanvasZ", ID_TYPE_SUB);
add_embedded_arg("c_num", ID_TYPE_NUM);
add_embedded_arg("z", ID_TYPE_NUM);
- embed_function("GetCanvasZ", ID_TYPE_FN_NUM);
+ embed_function("CanvasZ", ID_TYPE_FN_NUM);
add_embedded_arg("c_num", ID_TYPE_NUM);
embed_function("CanvasClip", ID_TYPE_FN_NUM);
add_embedded_arg("x", ID_TYPE_NUM);
@@ -887,9 +888,9 @@ void init_embedded_functions()
add_embedded_arg("txt$", ID_TYPE_STR);
add_embedded_arg("w", ID_TYPE_BYREF_NUM);
add_embedded_arg("h", ID_TYPE_BYREF_NUM);
- embed_function("GetTextWidth", ID_TYPE_FN_NUM);
+ embed_function("TextWidth", ID_TYPE_FN_NUM);
add_embedded_arg("txt$", ID_TYPE_STR);
- embed_function("GetTextHeight", ID_TYPE_FN_NUM);
+ embed_function("TextHeight", ID_TYPE_FN_NUM);
add_embedded_arg("txt$", ID_TYPE_STR);
embed_function("TouchPressure", ID_TYPE_FN_NUM);
embed_function("GetTouch", ID_TYPE_SUB);
@@ -1283,12 +1284,126 @@ void init_embedded_functions()
add_embedded_arg("flag", ID_TYPE_NUM);
embed_function("CreateSprite", ID_TYPE_FN_NUM);
add_embedded_arg("img", ID_TYPE_NUM);
+ add_embedded_arg("frame_w", ID_TYPE_NUM);
+ add_embedded_arg("frame_h", ID_TYPE_NUM);
embed_function("DeleteSprite", ID_TYPE_SUB);
add_embedded_arg("sprite", ID_TYPE_NUM);
embed_function("SetSpritePosition", ID_TYPE_SUB);
add_embedded_arg("sprite", ID_TYPE_NUM);
add_embedded_arg("x", ID_TYPE_NUM);
add_embedded_arg("y", ID_TYPE_NUM);
+ embed_function("TranslateSprite", ID_TYPE_SUB);
+ add_embedded_arg("sprite", ID_TYPE_NUM);
+ add_embedded_arg("x", ID_TYPE_NUM);
+ add_embedded_arg("y", ID_TYPE_NUM);
+ embed_function("GetSpritePosition", ID_TYPE_SUB);
+ add_embedded_arg("sprite", ID_TYPE_NUM);
+ add_embedded_arg("x", ID_TYPE_BYREF_NUM);
+ add_embedded_arg("y", ID_TYPE_BYREF_NUM);
+ embed_function("SpriteX", ID_TYPE_FN_NUM);
+ add_embedded_arg("sprite", ID_TYPE_NUM);
+ embed_function("SpriteY", ID_TYPE_FN_NUM);
+ add_embedded_arg("sprite", ID_TYPE_NUM);
+ embed_function("SetSpriteRotation", ID_TYPE_SUB);
+ add_embedded_arg("sprite", ID_TYPE_NUM);
+ add_embedded_arg("angle", ID_TYPE_NUM);
+ embed_function("RotateSprite", ID_TYPE_SUB);
+ add_embedded_arg("sprite", ID_TYPE_NUM);
+ add_embedded_arg("angle", ID_TYPE_NUM);
+ embed_function("GetSpriteRotation", ID_TYPE_FN_NUM);
+ add_embedded_arg("sprite", ID_TYPE_NUM);
+ embed_function("SetSpriteScale", ID_TYPE_SUB);
+ add_embedded_arg("sprite", ID_TYPE_NUM);
+ add_embedded_arg("x", ID_TYPE_NUM);
+ add_embedded_arg("y", ID_TYPE_NUM);
+ embed_function("ScaleSprite", ID_TYPE_SUB);
+ add_embedded_arg("sprite", ID_TYPE_NUM);
+ add_embedded_arg("x", ID_TYPE_NUM);
+ add_embedded_arg("y", ID_TYPE_NUM);
+ embed_function("GetSpriteScale", ID_TYPE_SUB);
+ add_embedded_arg("sprite", ID_TYPE_NUM);
+ add_embedded_arg("x", ID_TYPE_BYREF_NUM);
+ add_embedded_arg("y", ID_TYPE_BYREF_NUM);
+ embed_function("SetSpriteZ", ID_TYPE_SUB);
+ add_embedded_arg("sprite", ID_TYPE_NUM);
+ add_embedded_arg("z", ID_TYPE_NUM);
+ embed_function("SpriteZ", ID_TYPE_FN_NUM);
+ add_embedded_arg("sprite", ID_TYPE_NUM);
+ embed_function("GetSpriteSize", ID_TYPE_SUB);
+ add_embedded_arg("sprite", ID_TYPE_NUM);
+ add_embedded_arg("w", ID_TYPE_BYREF_NUM);
+ add_embedded_arg("h", ID_TYPE_BYREF_NUM);
+ embed_function("SpriteWidth", ID_TYPE_FN_NUM);
+ add_embedded_arg("sprite", ID_TYPE_NUM);
+ embed_function("SpriteHeight", ID_TYPE_FN_NUM);
+ add_embedded_arg("sprite", ID_TYPE_NUM);
+ embed_function("SetSpriteVisible", ID_TYPE_SUB);
+ add_embedded_arg("sprite", ID_TYPE_NUM);
+ add_embedded_arg("flag", ID_TYPE_NUM);
+ embed_function("SpriteIsVisible", ID_TYPE_FN_NUM);
+ add_embedded_arg("sprite", ID_TYPE_NUM);
+ embed_function("SetSpriteSolid", ID_TYPE_SUB);
+ add_embedded_arg("sprite", ID_TYPE_NUM);
+ add_embedded_arg("flag", ID_TYPE_NUM);
+ embed_function("SpriteIsSolid", ID_TYPE_FN_NUM);
+ add_embedded_arg("sprite", ID_TYPE_NUM);
+ embed_function("SetSpriteType", ID_TYPE_SUB);
+ add_embedded_arg("sprite", ID_TYPE_NUM);
+ add_embedded_arg("sprite_type", ID_TYPE_NUM);
+ embed_function("GetSpriteType", ID_TYPE_FN_NUM);
+ add_embedded_arg("sprite", ID_TYPE_NUM);
+ embed_function("SetSpriteSource", ID_TYPE_SUB);
+ add_embedded_arg("sprite", ID_TYPE_NUM);
+ add_embedded_arg("img", ID_TYPE_NUM);
+ embed_function("GetSpriteSource", ID_TYPE_FN_NUM);
+ add_embedded_arg("sprite", ID_TYPE_NUM);
+ embed_function("CreateSpriteAnimation", ID_TYPE_FN_NUM);
+ add_embedded_arg("sprite", ID_TYPE_NUM);
+ add_embedded_arg("anim_length", ID_TYPE_NUM);
+ add_embedded_arg("speed", ID_TYPE_NUM);
+ embed_function("SetSpriteFrame", ID_TYPE_SUB);
+ add_embedded_arg("sprite", ID_TYPE_NUM);
+ add_embedded_arg("frame", ID_TYPE_NUM);
+ embed_function("GetSpriteFrame", ID_TYPE_FN_NUM);
+ add_embedded_arg("sprite", ID_TYPE_NUM);
+ embed_function("SetSpriteAnimationFrame", ID_TYPE_SUB);
+ add_embedded_arg("sprite", ID_TYPE_NUM);
+ add_embedded_arg("animation", ID_TYPE_NUM);
+ add_embedded_arg("anim_frame", ID_TYPE_NUM);
+ add_embedded_arg("frame", ID_TYPE_NUM);
+ embed_function("GetSpriteAnimationFrame", ID_TYPE_FN_NUM);
+ add_embedded_arg("sprite", ID_TYPE_NUM);
+ add_embedded_arg("animation", ID_TYPE_NUM);
+ add_embedded_arg("anim_frame", ID_TYPE_NUM);
+ embed_function("SetSpriteAnimationLength", ID_TYPE_SUB);
+ add_embedded_arg("sprite", ID_TYPE_NUM);
+ add_embedded_arg("animation", ID_TYPE_NUM);
+ add_embedded_arg("anim_length", ID_TYPE_NUM);
+ embed_function("GetSpriteAnimationLength", ID_TYPE_FN_NUM);
+ add_embedded_arg("sprite", ID_TYPE_NUM);
+ add_embedded_arg("animation", ID_TYPE_NUM);
+ embed_function("SetSpriteAnimationSpeed", ID_TYPE_SUB);
+ add_embedded_arg("sprite", ID_TYPE_NUM);
+ add_embedded_arg("animation", ID_TYPE_NUM);
+ add_embedded_arg("speed", ID_TYPE_NUM);
+ embed_function("GetSpriteAnimationSpeed", ID_TYPE_FN_NUM);
+ add_embedded_arg("sprite", ID_TYPE_NUM);
+ add_embedded_arg("animation", ID_TYPE_NUM);
+ embed_function("SetSpriteAnimation", ID_TYPE_SUB);
+ add_embedded_arg("sprite", ID_TYPE_NUM);
+ add_embedded_arg("animation", ID_TYPE_NUM);
+ add_embedded_arg("num_loops", ID_TYPE_NUM);
+ embed_function("GetSpriteAnimation", ID_TYPE_FN_NUM);
+ add_embedded_arg("sprite", ID_TYPE_NUM);
+ embed_function("GetSpriteCurrentAnimationFrame", ID_TYPE_FN_NUM);
+ add_embedded_arg("sprite", ID_TYPE_NUM);
+ embed_function("NumSpriteAnimationLoops", ID_TYPE_FN_NUM);
+ add_embedded_arg("sprite", ID_TYPE_NUM);
+ embed_function("SpriteAnimationIsPlaying", ID_TYPE_FN_NUM);
+ 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("LoadMesh", ID_TYPE_FN_NUM);
add_embedded_arg("mesh_file$", ID_TYPE_STR);
embed_function("DeleteMesh", ID_TYPE_SUB);
@@ -1310,9 +1425,19 @@ void init_embedded_functions()
add_embedded_arg("h", ID_TYPE_NUM);
add_embedded_arg("tileCount_w", ID_TYPE_NUM);
add_embedded_arg("tileCount_h", ID_TYPE_NUM);
- embed_function("CreateMeshActor", ID_TYPE_FN_NUM);
+ embed_function("LoadAN8", ID_TYPE_FN_NUM);
+ add_embedded_arg("an8_file$", ID_TYPE_STR);
+ embed_function("LoadMeshFromAN8", ID_TYPE_FN_NUM);
+ add_embedded_arg("an8_project", ID_TYPE_NUM);
+ add_embedded_arg("an8_scene$", ID_TYPE_STR);
+ embed_function("GetNumAN8Scenes", ID_TYPE_FN_NUM);
+ add_embedded_arg("an8_project", ID_TYPE_NUM);
+ embed_function("GetAN8SceneName$", ID_TYPE_FN_STR);
+ add_embedded_arg("an8_project", ID_TYPE_NUM);
+ add_embedded_arg("scene_num", ID_TYPE_NUM);
+ embed_function("CreateAnimatedActor", ID_TYPE_FN_NUM);
add_embedded_arg("mesh", ID_TYPE_NUM);
- embed_function("CreateMeshOctreeActor", ID_TYPE_FN_NUM);
+ embed_function("CreateOctreeActor", ID_TYPE_FN_NUM);
add_embedded_arg("mesh", ID_TYPE_NUM);
embed_function("CreateCubeActor", ID_TYPE_FN_NUM);
add_embedded_arg("cube_size", ID_TYPE_NUM);
@@ -2041,6 +2166,17 @@ void init_embedded_functions()
embed_function("SetCameraNearValue", ID_TYPE_SUB);
add_embedded_arg("zn", ID_TYPE_NUM);
embed_function("GetCameraNearValue", ID_TYPE_FN_NUM);
+ embed_function("SetProjectionMatrix", ID_TYPE_SUB);
+ add_embedded_arg("matA", ID_TYPE_NUM);
+ add_embedded_arg("projection_type", ID_TYPE_NUM);
+ embed_function("GetProjectionMatrix", ID_TYPE_SUB);
+ add_embedded_arg("matA", ID_TYPE_NUM);
+ embed_function("GetWorldToViewportPosition", ID_TYPE_SUB);
+ add_embedded_arg("x", ID_TYPE_NUM);
+ add_embedded_arg("y", ID_TYPE_NUM);
+ add_embedded_arg("z", ID_TYPE_NUM);
+ add_embedded_arg("vx", ID_TYPE_BYREF_NUM);
+ add_embedded_arg("vy", ID_TYPE_BYREF_NUM);
embed_function("AddSceneSkyBox", ID_TYPE_SUB);
add_embedded_arg("img_top", ID_TYPE_NUM);
add_embedded_arg("img_bottom", ID_TYPE_NUM);
@@ -2300,45 +2436,55 @@ 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("SetActorAnimation", ID_TYPE_SUB);
+ 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);
- embed_function("GetActorAnimationSpeed", ID_TYPE_FN_NUM);
+ add_embedded_arg("num_loops", ID_TYPE_NUM);
+ embed_function("DeleteActorAnimation", ID_TYPE_SUB);
add_embedded_arg("actor", ID_TYPE_NUM);
- embed_function("GetActorEndFrame", ID_TYPE_FN_NUM);
- add_embedded_arg("actor", ID_TYPE_NUM);
- embed_function("GetActorCurrentFrame", ID_TYPE_FN_NUM);
- add_embedded_arg("actor", ID_TYPE_NUM);
- embed_function("GetActorStartFrame", ID_TYPE_FN_NUM);
- add_embedded_arg("actor", ID_TYPE_NUM);
- embed_function("StartActorTransition", ID_TYPE_SUB);
- add_embedded_arg("actor", ID_TYPE_NUM);
- add_embedded_arg("frame", ID_TYPE_NUM);
- add_embedded_arg("transition_time", ID_TYPE_NUM);
- embed_function("StopActorTransition", ID_TYPE_SUB);
- add_embedded_arg("actor", ID_TYPE_NUM);
- embed_function("ActorIsInTransition", ID_TYPE_FN_NUM);
- add_embedded_arg("actor", ID_TYPE_NUM);
- embed_function("GetActorTransitionTime", ID_TYPE_FN_NUM);
- add_embedded_arg("actor", ID_TYPE_NUM);
- embed_function("actorAnimationIsLooped", ID_TYPE_FN_NUM);
- add_embedded_arg("actor", ID_TYPE_NUM);
- embed_function("loopActorAnimation", ID_TYPE_SUB);
- add_embedded_arg("actor", ID_TYPE_NUM);
- add_embedded_arg("flag", 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);
diff --git a/rcbasic_build/rcbasic4_changes.ods b/rcbasic_build/rcbasic4_changes.ods
index 5847fcb..bccdf7a 100644
Binary files a/rcbasic_build/rcbasic4_changes.ods and b/rcbasic_build/rcbasic4_changes.ods differ
diff --git a/rcbasic_build/rcbasic_dev.txt b/rcbasic_build/rcbasic_dev.txt
index 5cb0b2a..3b882ba 100644
--- a/rcbasic_build/rcbasic_dev.txt
+++ b/rcbasic_build/rcbasic_dev.txt
@@ -436,6 +436,7 @@ add_embedded_arg("flag", ID_TYPE_NUM);
embed_function("FlashWindow", ID_TYPE_FN_NUM);
add_embedded_arg("flag", ID_TYPE_NUM);
embed_function("WindowIsGrabbed", ID_TYPE_FN_NUM);
+embed_function("PreUpdate", ID_TYPE_SUB);
embed_function("OpenCanvas", ID_TYPE_FN_NUM);
add_embedded_arg("w", ID_TYPE_NUM);
add_embedded_arg("h", ID_TYPE_NUM);
@@ -500,7 +501,7 @@ add_embedded_arg("mode", ID_TYPE_NUM);
embed_function("SetCanvasZ", ID_TYPE_SUB);
add_embedded_arg("c_num", ID_TYPE_NUM);
add_embedded_arg("z", ID_TYPE_NUM);
-embed_function("GetCanvasZ", ID_TYPE_FN_NUM);
+embed_function("CanvasZ", ID_TYPE_FN_NUM);
add_embedded_arg("c_num", ID_TYPE_NUM);
embed_function("CanvasClip", ID_TYPE_FN_NUM);
add_embedded_arg("x", ID_TYPE_NUM);
@@ -881,9 +882,9 @@ embed_function("GetTextSize", ID_TYPE_SUB);
add_embedded_arg("txt$", ID_TYPE_STR);
add_embedded_arg("w", ID_TYPE_BYREF_NUM);
add_embedded_arg("h", ID_TYPE_BYREF_NUM);
-embed_function("GetTextWidth", ID_TYPE_FN_NUM);
+embed_function("TextWidth", ID_TYPE_FN_NUM);
add_embedded_arg("txt$", ID_TYPE_STR);
-embed_function("GetTextHeight", ID_TYPE_FN_NUM);
+embed_function("TextHeight", ID_TYPE_FN_NUM);
add_embedded_arg("txt$", ID_TYPE_STR);
embed_function("TouchPressure", ID_TYPE_FN_NUM);
embed_function("GetTouch", ID_TYPE_SUB);
@@ -1277,12 +1278,126 @@ embed_function("ReadInput_ToggleBackspace", ID_TYPE_SUB);
add_embedded_arg("flag", ID_TYPE_NUM);
embed_function("CreateSprite", ID_TYPE_FN_NUM);
add_embedded_arg("img", ID_TYPE_NUM);
+add_embedded_arg("frame_w", ID_TYPE_NUM);
+add_embedded_arg("frame_h", ID_TYPE_NUM);
embed_function("DeleteSprite", ID_TYPE_SUB);
add_embedded_arg("sprite", ID_TYPE_NUM);
embed_function("SetSpritePosition", ID_TYPE_SUB);
add_embedded_arg("sprite", ID_TYPE_NUM);
add_embedded_arg("x", ID_TYPE_NUM);
add_embedded_arg("y", ID_TYPE_NUM);
+embed_function("TranslateSprite", ID_TYPE_SUB);
+add_embedded_arg("sprite", ID_TYPE_NUM);
+add_embedded_arg("x", ID_TYPE_NUM);
+add_embedded_arg("y", ID_TYPE_NUM);
+embed_function("GetSpritePosition", ID_TYPE_SUB);
+add_embedded_arg("sprite", ID_TYPE_NUM);
+add_embedded_arg("x", ID_TYPE_BYREF_NUM);
+add_embedded_arg("y", ID_TYPE_BYREF_NUM);
+embed_function("SpriteX", ID_TYPE_FN_NUM);
+add_embedded_arg("sprite", ID_TYPE_NUM);
+embed_function("SpriteY", ID_TYPE_FN_NUM);
+add_embedded_arg("sprite", ID_TYPE_NUM);
+embed_function("SetSpriteRotation", ID_TYPE_SUB);
+add_embedded_arg("sprite", ID_TYPE_NUM);
+add_embedded_arg("angle", ID_TYPE_NUM);
+embed_function("RotateSprite", ID_TYPE_SUB);
+add_embedded_arg("sprite", ID_TYPE_NUM);
+add_embedded_arg("angle", ID_TYPE_NUM);
+embed_function("GetSpriteRotation", ID_TYPE_FN_NUM);
+add_embedded_arg("sprite", ID_TYPE_NUM);
+embed_function("SetSpriteScale", ID_TYPE_SUB);
+add_embedded_arg("sprite", ID_TYPE_NUM);
+add_embedded_arg("x", ID_TYPE_NUM);
+add_embedded_arg("y", ID_TYPE_NUM);
+embed_function("ScaleSprite", ID_TYPE_SUB);
+add_embedded_arg("sprite", ID_TYPE_NUM);
+add_embedded_arg("x", ID_TYPE_NUM);
+add_embedded_arg("y", ID_TYPE_NUM);
+embed_function("GetSpriteScale", ID_TYPE_SUB);
+add_embedded_arg("sprite", ID_TYPE_NUM);
+add_embedded_arg("x", ID_TYPE_BYREF_NUM);
+add_embedded_arg("y", ID_TYPE_BYREF_NUM);
+embed_function("SetSpriteZ", ID_TYPE_SUB);
+add_embedded_arg("sprite", ID_TYPE_NUM);
+add_embedded_arg("z", ID_TYPE_NUM);
+embed_function("SpriteZ", ID_TYPE_FN_NUM);
+add_embedded_arg("sprite", ID_TYPE_NUM);
+embed_function("GetSpriteSize", ID_TYPE_SUB);
+add_embedded_arg("sprite", ID_TYPE_NUM);
+add_embedded_arg("w", ID_TYPE_BYREF_NUM);
+add_embedded_arg("h", ID_TYPE_BYREF_NUM);
+embed_function("SpriteWidth", ID_TYPE_FN_NUM);
+add_embedded_arg("sprite", ID_TYPE_NUM);
+embed_function("SpriteHeight", ID_TYPE_FN_NUM);
+add_embedded_arg("sprite", ID_TYPE_NUM);
+embed_function("SetSpriteVisible", ID_TYPE_SUB);
+add_embedded_arg("sprite", ID_TYPE_NUM);
+add_embedded_arg("flag", ID_TYPE_NUM);
+embed_function("SpriteIsVisible", ID_TYPE_FN_NUM);
+add_embedded_arg("sprite", ID_TYPE_NUM);
+embed_function("SetSpriteSolid", ID_TYPE_SUB);
+add_embedded_arg("sprite", ID_TYPE_NUM);
+add_embedded_arg("flag", ID_TYPE_NUM);
+embed_function("SpriteIsSolid", ID_TYPE_FN_NUM);
+add_embedded_arg("sprite", ID_TYPE_NUM);
+embed_function("SetSpriteType", ID_TYPE_SUB);
+add_embedded_arg("sprite", ID_TYPE_NUM);
+add_embedded_arg("sprite_type", ID_TYPE_NUM);
+embed_function("GetSpriteType", ID_TYPE_FN_NUM);
+add_embedded_arg("sprite", ID_TYPE_NUM);
+embed_function("SetSpriteSource", ID_TYPE_SUB);
+add_embedded_arg("sprite", ID_TYPE_NUM);
+add_embedded_arg("img", ID_TYPE_NUM);
+embed_function("GetSpriteSource", ID_TYPE_FN_NUM);
+add_embedded_arg("sprite", ID_TYPE_NUM);
+embed_function("CreateSpriteAnimation", ID_TYPE_FN_NUM);
+add_embedded_arg("sprite", ID_TYPE_NUM);
+add_embedded_arg("anim_length", ID_TYPE_NUM);
+add_embedded_arg("speed", ID_TYPE_NUM);
+embed_function("SetSpriteFrame", ID_TYPE_SUB);
+add_embedded_arg("sprite", ID_TYPE_NUM);
+add_embedded_arg("frame", ID_TYPE_NUM);
+embed_function("GetSpriteFrame", ID_TYPE_FN_NUM);
+add_embedded_arg("sprite", ID_TYPE_NUM);
+embed_function("SetSpriteAnimationFrame", ID_TYPE_SUB);
+add_embedded_arg("sprite", ID_TYPE_NUM);
+add_embedded_arg("animation", ID_TYPE_NUM);
+add_embedded_arg("anim_frame", ID_TYPE_NUM);
+add_embedded_arg("frame", ID_TYPE_NUM);
+embed_function("GetSpriteAnimationFrame", ID_TYPE_FN_NUM);
+add_embedded_arg("sprite", ID_TYPE_NUM);
+add_embedded_arg("animation", ID_TYPE_NUM);
+add_embedded_arg("anim_frame", ID_TYPE_NUM);
+embed_function("SetSpriteAnimationLength", ID_TYPE_SUB);
+add_embedded_arg("sprite", ID_TYPE_NUM);
+add_embedded_arg("animation", ID_TYPE_NUM);
+add_embedded_arg("anim_length", ID_TYPE_NUM);
+embed_function("GetSpriteAnimationLength", ID_TYPE_FN_NUM);
+add_embedded_arg("sprite", ID_TYPE_NUM);
+add_embedded_arg("animation", ID_TYPE_NUM);
+embed_function("SetSpriteAnimationSpeed", ID_TYPE_SUB);
+add_embedded_arg("sprite", ID_TYPE_NUM);
+add_embedded_arg("animation", ID_TYPE_NUM);
+add_embedded_arg("speed", ID_TYPE_NUM);
+embed_function("GetSpriteAnimationSpeed", ID_TYPE_FN_NUM);
+add_embedded_arg("sprite", ID_TYPE_NUM);
+add_embedded_arg("animation", ID_TYPE_NUM);
+embed_function("SetSpriteAnimation", ID_TYPE_SUB);
+add_embedded_arg("sprite", ID_TYPE_NUM);
+add_embedded_arg("animation", ID_TYPE_NUM);
+add_embedded_arg("num_loops", ID_TYPE_NUM);
+embed_function("GetSpriteAnimation", ID_TYPE_FN_NUM);
+add_embedded_arg("sprite", ID_TYPE_NUM);
+embed_function("GetSpriteCurrentAnimationFrame", ID_TYPE_FN_NUM);
+add_embedded_arg("sprite", ID_TYPE_NUM);
+embed_function("NumSpriteAnimationLoops", ID_TYPE_FN_NUM);
+add_embedded_arg("sprite", ID_TYPE_NUM);
+embed_function("SpriteAnimationIsPlaying", ID_TYPE_FN_NUM);
+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("LoadMesh", ID_TYPE_FN_NUM);
add_embedded_arg("mesh_file$", ID_TYPE_STR);
embed_function("DeleteMesh", ID_TYPE_SUB);
@@ -1304,9 +1419,19 @@ add_embedded_arg("w", ID_TYPE_NUM);
add_embedded_arg("h", ID_TYPE_NUM);
add_embedded_arg("tileCount_w", ID_TYPE_NUM);
add_embedded_arg("tileCount_h", ID_TYPE_NUM);
-embed_function("CreateMeshActor", ID_TYPE_FN_NUM);
+embed_function("LoadAN8", ID_TYPE_FN_NUM);
+add_embedded_arg("an8_file$", ID_TYPE_STR);
+embed_function("LoadMeshFromAN8", ID_TYPE_FN_NUM);
+add_embedded_arg("an8_project", ID_TYPE_NUM);
+add_embedded_arg("an8_scene$", ID_TYPE_STR);
+embed_function("GetNumAN8Scenes", ID_TYPE_FN_NUM);
+add_embedded_arg("an8_project", ID_TYPE_NUM);
+embed_function("GetAN8SceneName$", ID_TYPE_FN_STR);
+add_embedded_arg("an8_project", ID_TYPE_NUM);
+add_embedded_arg("scene_num", ID_TYPE_NUM);
+embed_function("CreateAnimatedActor", ID_TYPE_FN_NUM);
add_embedded_arg("mesh", ID_TYPE_NUM);
-embed_function("CreateMeshOctreeActor", ID_TYPE_FN_NUM);
+embed_function("CreateOctreeActor", ID_TYPE_FN_NUM);
add_embedded_arg("mesh", ID_TYPE_NUM);
embed_function("CreateCubeActor", ID_TYPE_FN_NUM);
add_embedded_arg("cube_size", ID_TYPE_NUM);
@@ -2035,6 +2160,17 @@ embed_function("GetCameraFarValue", ID_TYPE_FN_NUM);
embed_function("SetCameraNearValue", ID_TYPE_SUB);
add_embedded_arg("zn", ID_TYPE_NUM);
embed_function("GetCameraNearValue", ID_TYPE_FN_NUM);
+embed_function("SetProjectionMatrix", ID_TYPE_SUB);
+add_embedded_arg("matA", ID_TYPE_NUM);
+add_embedded_arg("projection_type", ID_TYPE_NUM);
+embed_function("GetProjectionMatrix", ID_TYPE_SUB);
+add_embedded_arg("matA", ID_TYPE_NUM);
+embed_function("GetWorldToViewportPosition", ID_TYPE_SUB);
+add_embedded_arg("x", ID_TYPE_NUM);
+add_embedded_arg("y", ID_TYPE_NUM);
+add_embedded_arg("z", ID_TYPE_NUM);
+add_embedded_arg("vx", ID_TYPE_BYREF_NUM);
+add_embedded_arg("vy", ID_TYPE_BYREF_NUM);
embed_function("AddSceneSkyBox", ID_TYPE_SUB);
add_embedded_arg("img_top", ID_TYPE_NUM);
add_embedded_arg("img_bottom", ID_TYPE_NUM);
@@ -2294,45 +2430,55 @@ 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("SetActorAnimation", ID_TYPE_SUB);
+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);
-embed_function("GetActorAnimationSpeed", ID_TYPE_FN_NUM);
+add_embedded_arg("num_loops", ID_TYPE_NUM);
+embed_function("DeleteActorAnimation", ID_TYPE_SUB);
add_embedded_arg("actor", ID_TYPE_NUM);
-embed_function("GetActorEndFrame", ID_TYPE_FN_NUM);
-add_embedded_arg("actor", ID_TYPE_NUM);
-embed_function("GetActorCurrentFrame", ID_TYPE_FN_NUM);
-add_embedded_arg("actor", ID_TYPE_NUM);
-embed_function("GetActorStartFrame", ID_TYPE_FN_NUM);
-add_embedded_arg("actor", ID_TYPE_NUM);
-embed_function("StartActorTransition", ID_TYPE_SUB);
-add_embedded_arg("actor", ID_TYPE_NUM);
-add_embedded_arg("frame", ID_TYPE_NUM);
-add_embedded_arg("transition_time", ID_TYPE_NUM);
-embed_function("StopActorTransition", ID_TYPE_SUB);
-add_embedded_arg("actor", ID_TYPE_NUM);
-embed_function("ActorIsInTransition", ID_TYPE_FN_NUM);
-add_embedded_arg("actor", ID_TYPE_NUM);
-embed_function("GetActorTransitionTime", ID_TYPE_FN_NUM);
-add_embedded_arg("actor", ID_TYPE_NUM);
-embed_function("actorAnimationIsLooped", ID_TYPE_FN_NUM);
-add_embedded_arg("actor", ID_TYPE_NUM);
-embed_function("loopActorAnimation", ID_TYPE_SUB);
-add_embedded_arg("actor", ID_TYPE_NUM);
-add_embedded_arg("flag", 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);
diff --git a/rcbasic_build/rcbasic_dev2.txt b/rcbasic_build/rcbasic_dev2.txt
index 23e3c89..90ebc6a 100644
--- a/rcbasic_build/rcbasic_dev2.txt
+++ b/rcbasic_build/rcbasic_dev2.txt
@@ -436,7 +436,8 @@
#define FN_FlashWindow 172
#define FLASHWINDOW_FLAG num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define FN_WindowIsGrabbed 173
-#define FN_OpenCanvas 174
+#define FN_PreUpdate 174
+#define FN_OpenCanvas 175
#define OPENCANVAS_W num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define OPENCANVAS_H num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define OPENCANVAS_VIEWPORT_X num_var[2].nref[0].value[ num_var[2].byref_offset ]
@@ -444,188 +445,188 @@
#define OPENCANVAS_VIEWPORT_W num_var[4].nref[0].value[ num_var[4].byref_offset ]
#define OPENCANVAS_VIEWPORT_H num_var[5].nref[0].value[ num_var[5].byref_offset ]
#define OPENCANVAS_MODE num_var[6].nref[0].value[ num_var[6].byref_offset ]
-#define FN_CloseCanvas 175
+#define FN_CloseCanvas 176
#define CLOSECANVAS_C_NUM num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_OpenCanvas3D 176
+#define FN_OpenCanvas3D 177
#define OPENCANVAS3D_VIEWPORT_X num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define OPENCANVAS3D_VIEWPORT_Y num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define OPENCANVAS3D_VIEWPORT_W num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define OPENCANVAS3D_VIEWPORT_H num_var[3].nref[0].value[ num_var[3].byref_offset ]
#define OPENCANVAS3D_MODE num_var[4].nref[0].value[ num_var[4].byref_offset ]
-#define FN_SetCanvasVisible 177
+#define FN_SetCanvasVisible 178
#define SETCANVASVISIBLE_C_NUM num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETCANVASVISIBLE_FLAG num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_CanvasIsVisible 178
+#define FN_CanvasIsVisible 179
#define CANVASISVISIBLE_C_NUM num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_SetCanvasViewport 179
+#define FN_SetCanvasViewport 180
#define SETCANVASVIEWPORT_CNUM num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETCANVASVIEWPORT_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETCANVASVIEWPORT_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define SETCANVASVIEWPORT_W num_var[3].nref[0].value[ num_var[3].byref_offset ]
#define SETCANVASVIEWPORT_H num_var[4].nref[0].value[ num_var[4].byref_offset ]
-#define FN_GetCanvasViewport 180
+#define FN_GetCanvasViewport 181
#define GETCANVASVIEWPORT_C_NUM num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETCANVASVIEWPORT_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETCANVASVIEWPORT_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define GETCANVASVIEWPORT_W num_var[3].nref[0].value[ num_var[3].byref_offset ]
#define GETCANVASVIEWPORT_H num_var[4].nref[0].value[ num_var[4].byref_offset ]
-#define FN_Canvas 181
+#define FN_Canvas 182
#define CANVAS_C_NUM num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_SetCanvasOffset 182
+#define FN_SetCanvasOffset 183
#define SETCANVASOFFSET_C_NUM num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETCANVASOFFSET_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETCANVASOFFSET_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_GetCanvasOffset 183
+#define FN_GetCanvasOffset 184
#define GETCANVASOFFSET_C_NUM num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETCANVASOFFSET_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETCANVASOFFSET_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_GetCanvasSize 184
+#define FN_GetCanvasSize 185
#define GETCANVASSIZE_C_NUM num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETCANVASSIZE_W num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETCANVASSIZE_H num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_ClearCanvas 185
-#define FN_SetCanvasAlpha 186
+#define FN_ClearCanvas 186
+#define FN_SetCanvasAlpha 187
#define SETCANVASALPHA_C_NUM num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETCANVASALPHA_A num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_GetCanvasAlpha 187
+#define FN_GetCanvasAlpha 188
#define GETCANVASALPHA_C_NUM num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_SetCanvasColorMod 188
+#define FN_SetCanvasColorMod 189
#define SETCANVASCOLORMOD_C_NUM num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETCANVASCOLORMOD_C num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_GetCanvasColorMod 189
+#define FN_GetCanvasColorMod 190
#define GETCANVASCOLORMOD_C_NUM num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_CloneCanvas 190
+#define FN_CloneCanvas 191
#define CLONECANVAS_C_NUM num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define CLONECANVAS_MODE num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_SetCanvasZ 191
+#define FN_SetCanvasZ 192
#define SETCANVASZ_C_NUM num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETCANVASZ_Z num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_GetCanvasZ 192
-#define GETCANVASZ_C_NUM num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_CanvasClip 193
+#define FN_CanvasZ 193
+#define CANVASZ_C_NUM num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define FN_CanvasClip 194
#define CANVASCLIP_X num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define CANVASCLIP_Y num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define CANVASCLIP_W num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define CANVASCLIP_H num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_ActiveCanvas 194
-#define FN_SetCanvasPhysics2D 195
+#define FN_ActiveCanvas 195
+#define FN_SetCanvasPhysics2D 196
#define SETCANVASPHYSICS2D_C_NUM num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETCANVASPHYSICS2D_STATE num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_OpenCanvasSpriteLayer 196
+#define FN_OpenCanvasSpriteLayer 197
#define OPENCANVASSPRITELAYER_W num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define OPENCANVASSPRITELAYER_H num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define OPENCANVASSPRITELAYER_VIEWPORT_X num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define OPENCANVASSPRITELAYER_VIEWPORT_Y num_var[3].nref[0].value[ num_var[3].byref_offset ]
#define OPENCANVASSPRITELAYER_VIEWPORT_W num_var[4].nref[0].value[ num_var[4].byref_offset ]
#define OPENCANVASSPRITELAYER_VIEWPORT_H num_var[5].nref[0].value[ num_var[5].byref_offset ]
-#define FN_Circle 197
+#define FN_Circle 198
#define CIRCLE_X num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define CIRCLE_Y num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define CIRCLE_RADIUS num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_CircleFill 198
+#define FN_CircleFill 199
#define CIRCLEFILL_X num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define CIRCLEFILL_Y num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define CIRCLEFILL_RADIUS num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_Ellipse 199
+#define FN_Ellipse 200
#define ELLIPSE_X num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define ELLIPSE_Y num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define ELLIPSE_RX num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define ELLIPSE_RY num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_EllipseFill 200
+#define FN_EllipseFill 201
#define ELLIPSEFILL_X num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define ELLIPSEFILL_Y num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define ELLIPSEFILL_RX num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define ELLIPSEFILL_RY num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_FloodFill 201
+#define FN_FloodFill 202
#define FLOODFILL_X num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define FLOODFILL_Y num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_GetPixel 202
+#define FN_GetPixel 203
#define GETPIXEL_X num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETPIXEL_Y num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_SetColor 203
+#define FN_SetColor 204
#define SETCOLOR_C num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_Line 204
+#define FN_Line 205
#define LINE_X1 num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define LINE_Y1 num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define LINE_X2 num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define LINE_Y2 num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_Poly 205
+#define FN_Poly 206
#define POLY_N num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define POLY_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define POLY_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_Rect 206
+#define FN_Rect 207
#define RECT_X num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define RECT_Y num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define RECT_W num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define RECT_H num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_RectFill 207
+#define FN_RectFill 208
#define RECTFILL_X num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define RECTFILL_Y num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define RECTFILL_W num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define RECTFILL_H num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_RGB 208
+#define FN_RGB 209
#define RGB_R num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define RGB_G num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define RGB_B num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_RGBA 209
+#define FN_RGBA 210
#define RGBA_R num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define RGBA_G num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define RGBA_B num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define RGBA_A num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_Pset 210
+#define FN_Pset 211
#define PSET_X num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define PSET_Y num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_LoadImage 211
+#define FN_LoadImage 212
#define LOADIMAGE_IMG$ str_var[0].sref[0].value[ str_var[0].byref_offset ]
-#define FN_LoadImageEx 212
+#define FN_LoadImageEx 213
#define LOADIMAGEEX_IMG$ str_var[0].sref[0].value[ str_var[0].byref_offset ]
#define LOADIMAGEEX_COLKEY num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_createImage 213
+#define FN_createImage 214
#define CREATEIMAGE_W num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define CREATEIMAGE_H num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define CREATEIMAGE_BUFFER num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_createImageEx 214
+#define FN_createImageEx 215
#define CREATEIMAGEEX_W num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define CREATEIMAGEEX_H num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define CREATEIMAGEEX_BUFFER num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define CREATEIMAGEEX_COLOR num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_BufferFromImage 215
+#define FN_BufferFromImage 216
#define BUFFERFROMIMAGE_SLOT num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define BUFFERFROMIMAGE_BUFFER num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_ImageExists 216
+#define FN_ImageExists 217
#define IMAGEEXISTS_SLOT num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_ColorKey 217
+#define FN_ColorKey 218
#define COLORKEY_SLOT num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define COLORKEY_C num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_setBilinearFilter 218
+#define FN_setBilinearFilter 219
#define SETBILINEARFILTER_FLAG num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getBilinearFilter 219
-#define FN_CopyImage 220
+#define FN_getBilinearFilter 220
+#define FN_CopyImage 221
#define COPYIMAGE_IMG_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_DeleteImage 221
+#define FN_DeleteImage 222
#define DELETEIMAGE_SLOT num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_SetImageAlpha 222
+#define FN_SetImageAlpha 223
#define SETIMAGEALPHA_SLOT num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETIMAGEALPHA_A num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_GetImageAlpha 223
+#define FN_GetImageAlpha 224
#define GETIMAGEALPHA_IMG_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_GetImageSize 224
+#define FN_GetImageSize 225
#define GETIMAGESIZE_SLOT num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETIMAGESIZE_W num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETIMAGESIZE_H num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_SetBlendMode 225
+#define FN_SetBlendMode 226
#define SETBLENDMODE_BLEND_MODE num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_GetBlendMode 226
-#define FN_SetImageColorMod 227
+#define FN_GetBlendMode 227
+#define FN_SetImageColorMod 228
#define SETIMAGECOLORMOD_SLOT num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETIMAGECOLORMOD_C num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_GetImageColorMod 228
+#define FN_GetImageColorMod 229
#define GETIMAGECOLORMOD_SLOT num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_DrawImage 229
+#define FN_DrawImage 230
#define DRAWIMAGE_SLOT num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define DRAWIMAGE_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define DRAWIMAGE_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_DrawImage_Blit 230
+#define FN_DrawImage_Blit 231
#define DRAWIMAGE_BLIT_SLOT num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define DRAWIMAGE_BLIT_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define DRAWIMAGE_BLIT_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
@@ -633,7 +634,7 @@
#define DRAWIMAGE_BLIT_SRC_Y num_var[4].nref[0].value[ num_var[4].byref_offset ]
#define DRAWIMAGE_BLIT_SRC_W num_var[5].nref[0].value[ num_var[5].byref_offset ]
#define DRAWIMAGE_BLIT_SRC_H num_var[6].nref[0].value[ num_var[6].byref_offset ]
-#define FN_DrawImage_BlitEx 231
+#define FN_DrawImage_BlitEx 232
#define DRAWIMAGE_BLITEX_SLOT num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define DRAWIMAGE_BLITEX_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define DRAWIMAGE_BLITEX_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
@@ -643,12 +644,12 @@
#define DRAWIMAGE_BLITEX_SRC_Y num_var[6].nref[0].value[ num_var[6].byref_offset ]
#define DRAWIMAGE_BLITEX_SRC_W num_var[7].nref[0].value[ num_var[7].byref_offset ]
#define DRAWIMAGE_BLITEX_SRC_H num_var[8].nref[0].value[ num_var[8].byref_offset ]
-#define FN_DrawImage_Rotate 232
+#define FN_DrawImage_Rotate 233
#define DRAWIMAGE_ROTATE_SLOT num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define DRAWIMAGE_ROTATE_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define DRAWIMAGE_ROTATE_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define DRAWIMAGE_ROTATE_ANGLE num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_DrawImage_RotateEx 233
+#define FN_DrawImage_RotateEx 234
#define DRAWIMAGE_ROTATEEX_SLOT num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define DRAWIMAGE_ROTATEEX_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define DRAWIMAGE_ROTATEEX_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
@@ -657,13 +658,13 @@
#define DRAWIMAGE_ROTATEEX_SRC_W num_var[5].nref[0].value[ num_var[5].byref_offset ]
#define DRAWIMAGE_ROTATEEX_SRC_H num_var[6].nref[0].value[ num_var[6].byref_offset ]
#define DRAWIMAGE_ROTATEEX_ANGLE num_var[7].nref[0].value[ num_var[7].byref_offset ]
-#define FN_DrawImage_Zoom 234
+#define FN_DrawImage_Zoom 235
#define DRAWIMAGE_ZOOM_SLOT num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define DRAWIMAGE_ZOOM_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define DRAWIMAGE_ZOOM_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define DRAWIMAGE_ZOOM_ZX num_var[3].nref[0].value[ num_var[3].byref_offset ]
#define DRAWIMAGE_ZOOM_ZY num_var[4].nref[0].value[ num_var[4].byref_offset ]
-#define FN_DrawImage_ZoomEx 235
+#define FN_DrawImage_ZoomEx 236
#define DRAWIMAGE_ZOOMEX_SLOT num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define DRAWIMAGE_ZOOMEX_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define DRAWIMAGE_ZOOMEX_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
@@ -673,14 +674,14 @@
#define DRAWIMAGE_ZOOMEX_SRC_H num_var[6].nref[0].value[ num_var[6].byref_offset ]
#define DRAWIMAGE_ZOOMEX_ZX num_var[7].nref[0].value[ num_var[7].byref_offset ]
#define DRAWIMAGE_ZOOMEX_ZY num_var[8].nref[0].value[ num_var[8].byref_offset ]
-#define FN_DrawImage_Rotozoom 236
+#define FN_DrawImage_Rotozoom 237
#define DRAWIMAGE_ROTOZOOM_SLOT num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define DRAWIMAGE_ROTOZOOM_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define DRAWIMAGE_ROTOZOOM_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define DRAWIMAGE_ROTOZOOM_ANGLE num_var[3].nref[0].value[ num_var[3].byref_offset ]
#define DRAWIMAGE_ROTOZOOM_ZX num_var[4].nref[0].value[ num_var[4].byref_offset ]
#define DRAWIMAGE_ROTOZOOM_ZY num_var[5].nref[0].value[ num_var[5].byref_offset ]
-#define FN_DrawImage_RotozoomEx 237
+#define FN_DrawImage_RotozoomEx 238
#define DRAWIMAGE_ROTOZOOMEX_SLOT num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define DRAWIMAGE_ROTOZOOMEX_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define DRAWIMAGE_ROTOZOOMEX_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
@@ -691,13 +692,13 @@
#define DRAWIMAGE_ROTOZOOMEX_ANGLE num_var[7].nref[0].value[ num_var[7].byref_offset ]
#define DRAWIMAGE_ROTOZOOMEX_ZX num_var[8].nref[0].value[ num_var[8].byref_offset ]
#define DRAWIMAGE_ROTOZOOMEX_ZY num_var[9].nref[0].value[ num_var[9].byref_offset ]
-#define FN_DrawImage_Flip 238
+#define FN_DrawImage_Flip 239
#define DRAWIMAGE_FLIP_SLOT num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define DRAWIMAGE_FLIP_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define DRAWIMAGE_FLIP_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define DRAWIMAGE_FLIP_H num_var[3].nref[0].value[ num_var[3].byref_offset ]
#define DRAWIMAGE_FLIP_V num_var[4].nref[0].value[ num_var[4].byref_offset ]
-#define FN_DrawImage_FlipEx 239
+#define FN_DrawImage_FlipEx 240
#define DRAWIMAGE_FLIPEX_SLOT num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define DRAWIMAGE_FLIPEX_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define DRAWIMAGE_FLIPEX_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
@@ -707,588 +708,702 @@
#define DRAWIMAGE_FLIPEX_SRC_H num_var[6].nref[0].value[ num_var[6].byref_offset ]
#define DRAWIMAGE_FLIPEX_H num_var[7].nref[0].value[ num_var[7].byref_offset ]
#define DRAWIMAGE_FLIPEX_V num_var[8].nref[0].value[ num_var[8].byref_offset ]
-#define FN_InKey 240
-#define FN_Key 241
+#define FN_InKey 241
+#define FN_Key 242
#define KEY_KEY_CODE num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_WaitKey 242
-#define FN_HideMouse 243
-#define FN_ShowMouse 244
-#define FN_MouseIsVisible 245
-#define FN_GetMouse 246
+#define FN_WaitKey 243
+#define FN_HideMouse 244
+#define FN_ShowMouse 245
+#define FN_MouseIsVisible 246
+#define FN_GetMouse 247
#define GETMOUSE_X num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETMOUSE_Y num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETMOUSE_MB1 num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define GETMOUSE_MB2 num_var[3].nref[0].value[ num_var[3].byref_offset ]
#define GETMOUSE_MB3 num_var[4].nref[0].value[ num_var[4].byref_offset ]
-#define FN_MouseX 247
-#define FN_MouseY 248
-#define FN_MouseButton 249
+#define FN_MouseX 248
+#define FN_MouseY 249
+#define FN_MouseButton 250
#define MOUSEBUTTON_MB num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_GetMouseWheel 250
+#define FN_GetMouseWheel 251
#define GETMOUSEWHEEL_X_AXIS num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETMOUSEWHEEL_Y_AXIS num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_MouseWheelX 251
-#define FN_MouseWheelY 252
-#define FN_GetGlobalMouse 253
+#define FN_MouseWheelX 252
+#define FN_MouseWheelY 253
+#define FN_GetGlobalMouse 254
#define GETGLOBALMOUSE_X num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETGLOBALMOUSE_Y num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETGLOBALMOUSE_MB1 num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define GETGLOBALMOUSE_MB2 num_var[3].nref[0].value[ num_var[3].byref_offset ]
#define GETGLOBALMOUSE_MB3 num_var[4].nref[0].value[ num_var[4].byref_offset ]
-#define FN_GlobalMouseX 254
-#define FN_GlobalMouseY 255
-#define FN_WarpMouse 256
+#define FN_GlobalMouseX 255
+#define FN_GlobalMouseY 256
+#define FN_WarpMouse 257
#define WARPMOUSE_X num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define WARPMOUSE_Y num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_WarpMouseGlobal 257
+#define FN_WarpMouseGlobal 258
#define WARPMOUSEGLOBAL_X num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define WARPMOUSEGLOBAL_Y num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_SetMouseZone 258
+#define FN_SetMouseZone 259
#define SETMOUSEZONE_X num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETMOUSEZONE_Y num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETMOUSEZONE_W num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define SETMOUSEZONE_H num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_ClearMouseZone 259
-#define FN_CreateSound 260
+#define FN_ClearMouseZone 260
+#define FN_CreateSound 261
#define CREATESOUND_BUFFER num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define CREATESOUND_BUFFER_SIZE num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define CREATESOUND_VOL num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_LoadSound 261
+#define FN_LoadSound 262
#define LOADSOUND_SND_FILE$ str_var[0].sref[0].value[ str_var[0].byref_offset ]
-#define FN_LoadMusic 262
+#define FN_LoadMusic 263
#define LOADMUSIC_MUSIC_FILE$ str_var[0].sref[0].value[ str_var[0].byref_offset ]
-#define FN_PlaySound 263
+#define FN_PlaySound 264
#define PLAYSOUND_SLOT num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define PLAYSOUND_CHANNEL num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define PLAYSOUND_LOOPS num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_PlaySoundTimed 264
+#define FN_PlaySoundTimed 265
#define PLAYSOUNDTIMED_SLOT num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define PLAYSOUNDTIMED_CHANNEL num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define PLAYSOUNDTIMED_LOOPS num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define PLAYSOUNDTIMED_MS num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_PlayMusic 265
+#define FN_PlayMusic 266
#define PLAYMUSIC_MLOOPS num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_PauseSound 266
+#define FN_PauseSound 267
#define PAUSESOUND_CHANNEL num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_ResumeSound 267
+#define FN_ResumeSound 268
#define RESUMESOUND_CHANNEL num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_PauseMusic 268
-#define FN_ResumeMusic 269
-#define FN_DeleteSound 270
+#define FN_PauseMusic 269
+#define FN_ResumeMusic 270
+#define FN_DeleteSound 271
#define DELETESOUND_SLOT num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_DeleteMusic 271
-#define FN_FadeMusicIn 272
+#define FN_DeleteMusic 272
+#define FN_FadeMusicIn 273
#define FADEMUSICIN_FADE_TIME num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define FADEMUSICIN_LOOPS num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_FadeMusicOut 273
+#define FN_FadeMusicOut 274
#define FADEMUSICOUT_FADE_TIME num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_MusicExists 274
-#define FN_SetMusicVolume 275
+#define FN_MusicExists 275
+#define FN_SetMusicVolume 276
#define SETMUSICVOLUME_VOL num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_GetMusicVolume 276
-#define FN_SetMusicPosition 277
+#define FN_GetMusicVolume 277
+#define FN_SetMusicPosition 278
#define SETMUSICPOSITION_POS num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_GetMusicPosition 278
-#define FN_RewindMusic 279
-#define FN_SetSoundChannels 280
+#define FN_GetMusicPosition 279
+#define FN_RewindMusic 280
+#define FN_SetSoundChannels 281
#define SETSOUNDCHANNELS_MAX_CHANNELS num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_NumSoundChannels 281
-#define FN_SoundIsEnabled 282
-#define FN_SoundExists 283
+#define FN_NumSoundChannels 282
+#define FN_SoundIsEnabled 283
+#define FN_SoundExists 284
#define SOUNDEXISTS_SLOT num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_SetChannelVolume 284
+#define FN_SetChannelVolume 285
#define SETCHANNELVOLUME_CHANNEL num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETCHANNELVOLUME_VOL num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_GetChannelVolume 285
+#define FN_GetChannelVolume 286
#define GETCHANNELVOLUME_CHANNEL num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_SetSoundVolume 286
+#define FN_SetSoundVolume 287
#define SETSOUNDVOLUME_SLOT num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETSOUNDVOLUME_VOL num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_GetSoundVolume 287
+#define FN_GetSoundVolume 288
#define GETSOUNDVOLUME_SLOT num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_StopMusic 288
-#define FN_StopSound 289
+#define FN_StopMusic 289
+#define FN_StopSound 290
#define STOPSOUND_CHANNEL num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_SetChannelPanning 290
+#define FN_SetChannelPanning 291
#define SETCHANNELPANNING_CHANNEL num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETCHANNELPANNING_LEFT_VALUE num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETCHANNELPANNING_RIGHT_VALUE num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_SetChannelDistance 291
+#define FN_SetChannelDistance 292
#define SETCHANNELDISTANCE_CHANNEL num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETCHANNELDISTANCE_DIST_VALUE num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_ChannelIsPlaying 292
+#define FN_ChannelIsPlaying 293
#define CHANNELISPLAYING_CHANNEL num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_ChannelIsPaused 293
+#define FN_ChannelIsPaused 294
#define CHANNELISPAUSED_CHANNEL num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_QueryAudioSpec 294
+#define FN_QueryAudioSpec 295
#define QUERYAUDIOSPEC_FREQ num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define QUERYAUDIOSPEC_FORMAT num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define QUERYAUDIOSPEC_CHANNELS num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_MusicIsPlaying 295
-#define FN_SetChannelSpacePosition 296
+#define FN_MusicIsPlaying 296
+#define FN_SetChannelSpacePosition 297
#define SETCHANNELSPACEPOSITION_CHANNEL num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETCHANNELSPACEPOSITION_ANGLE num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETCHANNELSPACEPOSITION_DISTANCE num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_NumJoysticks 297
-#define FN_NumJoyAxes 298
+#define FN_NumJoysticks 298
+#define FN_NumJoyAxes 299
#define NUMJOYAXES_JOY_NUM num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_NumJoyButtons 299
+#define FN_NumJoyButtons 300
#define NUMJOYBUTTONS_JOY_NUM num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_NumJoyHats 300
+#define FN_NumJoyHats 301
#define NUMJOYHATS_JOY_NUM num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_NumJoyTrackBalls 301
+#define FN_NumJoyTrackBalls 302
#define NUMJOYTRACKBALLS_JOY_NUM num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_JoyAxis 302
+#define FN_JoyAxis 303
#define JOYAXIS_JOY_NUM num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define JOYAXIS_JOY_AXIS num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_JoyButton 303
+#define FN_JoyButton 304
#define JOYBUTTON_JOY_NUM num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define JOYBUTTON_JOY_BUTTON num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_JoyHat 304
+#define FN_JoyHat 305
#define JOYHAT_JOY_NUM num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define JOYHAT_JOY_HAT num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_GetJoyTrackBall 305
+#define FN_GetJoyTrackBall 306
#define GETJOYTRACKBALL_JOY_NUM num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETJOYTRACKBALL_BALL num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETJOYTRACKBALL_DX num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define GETJOYTRACKBALL_DY num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_JoyName$ 306
+#define FN_JoyName$ 307
#define JOYNAME$_JOY_NUM num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_JoystickIsConnected 307
+#define FN_JoystickIsConnected 308
#define JOYSTICKISCONNECTED_JOY_NUM num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_JoyRumblePlay 308
+#define FN_JoyRumblePlay 309
#define JOYRUMBLEPLAY_JOY_NUM num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define JOYRUMBLEPLAY_STRENGTH num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define JOYRUMBLEPLAY_DURATION num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_JoyRumbleStop 309
+#define FN_JoyRumbleStop 310
#define JOYRUMBLESTOP_JOY_NUM num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_JoystickIsHaptic 310
+#define FN_JoystickIsHaptic 311
#define JOYSTICKISHAPTIC_JOY_NUM num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_LoadFont 311
+#define FN_LoadFont 312
#define LOADFONT_FNT_FILE$ str_var[0].sref[0].value[ str_var[0].byref_offset ]
#define LOADFONT_FONT_SIZE num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_DeleteFont 312
+#define FN_DeleteFont 313
#define DELETEFONT_SLOT num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_FontExists 313
+#define FN_FontExists 314
#define FONTEXISTS_SLOT num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_SetFont 314
+#define FN_SetFont 315
#define SETFONT_SLOT num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_DrawText 315
+#define FN_DrawText 316
#define DRAWTEXT_TXT$ str_var[0].sref[0].value[ str_var[0].byref_offset ]
#define DRAWTEXT_X num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define DRAWTEXT_Y num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_GetTextSize 316
+#define FN_GetTextSize 317
#define GETTEXTSIZE_TXT$ str_var[0].sref[0].value[ str_var[0].byref_offset ]
#define GETTEXTSIZE_W num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETTEXTSIZE_H num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_GetTextWidth 317
-#define GETTEXTWIDTH_TXT$ str_var[0].sref[0].value[ str_var[0].byref_offset ]
-#define FN_GetTextHeight 318
-#define GETTEXTHEIGHT_TXT$ str_var[0].sref[0].value[ str_var[0].byref_offset ]
-#define FN_TouchPressure 319
-#define FN_GetTouch 320
+#define FN_TextWidth 318
+#define TEXTWIDTH_TXT$ str_var[0].sref[0].value[ str_var[0].byref_offset ]
+#define FN_TextHeight 319
+#define TEXTHEIGHT_TXT$ str_var[0].sref[0].value[ str_var[0].byref_offset ]
+#define FN_TouchPressure 320
+#define FN_GetTouch 321
#define GETTOUCH_STATUS num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETTOUCH_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETTOUCH_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define GETTOUCH_DX num_var[3].nref[0].value[ num_var[3].byref_offset ]
#define GETTOUCH_DY num_var[4].nref[0].value[ num_var[4].byref_offset ]
-#define FN_GetMultiTouch 321
+#define FN_GetMultiTouch 322
#define GETMULTITOUCH_STATUS num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETMULTITOUCH_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETMULTITOUCH_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define GETMULTITOUCH_FINGERS num_var[3].nref[0].value[ num_var[3].byref_offset ]
#define GETMULTITOUCH_DIST num_var[4].nref[0].value[ num_var[4].byref_offset ]
#define GETMULTITOUCH_THETA num_var[5].nref[0].value[ num_var[5].byref_offset ]
-#define FN_GetTouchFinger 322
+#define FN_GetTouchFinger 323
#define GETTOUCHFINGER_FINGER num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETTOUCHFINGER_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETTOUCHFINGER_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define GETTOUCHFINGER_PRESSURE num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_NumFingers 323
-#define FN_GetAccel 324
+#define FN_NumFingers 324
+#define FN_GetAccel 325
#define GETACCEL_ACCEL_NUM num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETACCEL_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETACCEL_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define GETACCEL_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_AccelName$ 325
+#define FN_AccelName$ 326
#define ACCELNAME$_ACCEL_NUM num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_NumAccels 326
-#define FN_GetGyro 327
+#define FN_NumAccels 327
+#define FN_GetGyro 328
#define GETGYRO_GYRO_NUM num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETGYRO_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETGYRO_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define GETGYRO_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_GyroName$ 328
+#define FN_GyroName$ 329
#define GYRONAME$_GYRO_NUM num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_NumGyros 329
-#define FN_CheckSockets 330
+#define FN_NumGyros 330
+#define FN_CheckSockets 331
#define CHECKSOCKETS_TIMEOUT_MS num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_TCP_SocketReady 331
+#define FN_TCP_SocketReady 332
#define TCP_SOCKETREADY_SOCKET num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_UDP_SocketReady 332
+#define FN_UDP_SocketReady 333
#define UDP_SOCKETREADY_SOCKET num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_TCP_OpenSocket 333
+#define FN_TCP_OpenSocket 334
#define TCP_OPENSOCKET_HOST$ str_var[0].sref[0].value[ str_var[0].byref_offset ]
#define TCP_OPENSOCKET_PORT num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_TCP_CloseSocket 334
+#define FN_TCP_CloseSocket 335
#define TCP_CLOSESOCKET_SOCKET num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_TCP_RemoteHost 335
+#define FN_TCP_RemoteHost 336
#define TCP_REMOTEHOST_SOCKET num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_TCP_RemotePort 336
+#define FN_TCP_RemotePort 337
#define TCP_REMOTEPORT_SOCKET num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_TCP_GetData 337
+#define FN_TCP_GetData 338
#define TCP_GETDATA_SOCKET num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define TCP_GETDATA_NUMBYTES num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define TCP_GETDATA_SDATA$ str_var[0].sref[0].value[ str_var[0].byref_offset ]
-#define FN_TCP_SendData 338
+#define FN_TCP_SendData 339
#define TCP_SENDDATA_SOCKET num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define TCP_SENDDATA_SDATA$ str_var[0].sref[0].value[ str_var[0].byref_offset ]
-#define FN_TCP_AcceptSocket 339
+#define FN_TCP_AcceptSocket 340
#define TCP_ACCEPTSOCKET_SERVER num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define TCP_ACCEPTSOCKET_CLIENT num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_UDP_OpenSocket 340
+#define FN_UDP_OpenSocket 341
#define UDP_OPENSOCKET_PORT num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_UDP_CloseSocket 341
+#define FN_UDP_CloseSocket 342
#define UDP_CLOSESOCKET_SOCKET num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_UDP_GetData 342
+#define FN_UDP_GetData 343
#define UDP_GETDATA_SOCKET num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define UDP_GETDATA_HOST$ str_var[0].sref[0].value[ str_var[0].byref_offset ]
#define UDP_GETDATA_PORT num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define UDP_GETDATA_SDATA$ str_var[1].sref[0].value[ str_var[1].byref_offset ]
-#define FN_UDP_Length 343
-#define FN_UDP_MaxLength 344
-#define FN_UDP_RemoteHost$ 345
+#define FN_UDP_Length 344
+#define FN_UDP_MaxLength 345
+#define FN_UDP_RemoteHost$ 346
#define UDP_REMOTEHOST$_SOCKET num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_UDP_RemotePort 346
+#define FN_UDP_RemotePort 347
#define UDP_REMOTEPORT_SOCKET num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_UDP_SendData 347
+#define FN_UDP_SendData 348
#define UDP_SENDDATA_SOCKET num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define UDP_SENDDATA_HOST$ str_var[0].sref[0].value[ str_var[0].byref_offset ]
#define UDP_SENDDATA_PORT num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define UDP_SENDDATA_SDATA$ str_var[1].sref[0].value[ str_var[1].byref_offset ]
-#define FN_LoadVideo 348
+#define FN_LoadVideo 349
#define LOADVIDEO_VID$ str_var[0].sref[0].value[ str_var[0].byref_offset ]
-#define FN_PlayVideo 349
+#define FN_PlayVideo 350
#define PLAYVIDEO_VLOOPS num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_PauseVideo 350
-#define FN_StopVideo 351
-#define FN_SetVideoPosition 352
+#define FN_PauseVideo 351
+#define FN_StopVideo 352
+#define FN_SetVideoPosition 353
#define SETVIDEOPOSITION_POS num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_ResumeVideo 353
-#define FN_GetVideoPosition 354
-#define FN_DeleteVideo 355
-#define FN_VideoIsPlaying 356
-#define FN_VideoEnd 357
-#define FN_GetVideoStats 358
+#define FN_ResumeVideo 354
+#define FN_GetVideoPosition 355
+#define FN_DeleteVideo 356
+#define FN_VideoIsPlaying 357
+#define FN_VideoEnd 358
+#define FN_GetVideoStats 359
#define GETVIDEOSTATS_VFILE$ str_var[0].sref[0].value[ str_var[0].byref_offset ]
#define GETVIDEOSTATS_VLEN num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETVIDEOSTATS_VFPS num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETVIDEOSTATS_FRAME_W num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define GETVIDEOSTATS_FRAME_H num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_SetVideoDrawRect 359
+#define FN_SetVideoDrawRect 360
#define SETVIDEODRAWRECT_X num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETVIDEODRAWRECT_Y num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETVIDEODRAWRECT_W num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define SETVIDEODRAWRECT_H num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_GetVideoDrawRect 360
+#define FN_GetVideoDrawRect 361
#define GETVIDEODRAWRECT_X num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETVIDEODRAWRECT_Y num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETVIDEODRAWRECT_W num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define GETVIDEODRAWRECT_H num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_GetVideoSize 361
+#define FN_GetVideoSize 362
#define GETVIDEOSIZE_W num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETVIDEOSIZE_H num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_VideoExists 362
-#define FN_SetVideoVolume 363
+#define FN_VideoExists 363
+#define FN_SetVideoVolume 364
#define SETVIDEOVOLUME_VOL num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_GetVideoVolume 364
-#define FN_System 365
+#define FN_GetVideoVolume 365
+#define FN_System 366
#define SYSTEM_CMD$ str_var[0].sref[0].value[ str_var[0].byref_offset ]
-#define FN_OS$ 366
-#define FN_Command$ 367
+#define FN_OS$ 367
+#define FN_Command$ 368
#define COMMAND$_ARG num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_NumCommands 368
-#define FN_Env$ 369
+#define FN_NumCommands 369
+#define FN_Env$ 370
#define ENV$_V$ str_var[0].sref[0].value[ str_var[0].byref_offset ]
-#define FN_SetEnv 370
+#define FN_SetEnv 371
#define SETENV_VAR$ str_var[0].sref[0].value[ str_var[0].byref_offset ]
#define SETENV_VALUE$ str_var[1].sref[0].value[ str_var[1].byref_offset ]
-#define FN_PrefPath$ 371
+#define FN_PrefPath$ 372
#define PREFPATH$_ORG_NAME$ str_var[0].sref[0].value[ str_var[0].byref_offset ]
#define PREFPATH$_APP_NAME$ str_var[1].sref[0].value[ str_var[1].byref_offset ]
-#define FN_Android_GetExternalStoragePath$ 372
-#define FN_Android_GetExternalStorageState 373
-#define FN_Android_GetInternalStoragePath$ 374
-#define FN_Android_JNI_Message$ 375
+#define FN_Android_GetExternalStoragePath$ 373
+#define FN_Android_GetExternalStorageState 374
+#define FN_Android_GetInternalStoragePath$ 375
+#define FN_Android_JNI_Message$ 376
#define ANDROID_JNI_MESSAGE$_ARG$ str_var[0].sref[0].value[ str_var[0].byref_offset ]
-#define FN_Runtime_Utility_Message$ 376
+#define FN_Runtime_Utility_Message$ 377
#define RUNTIME_UTILITY_MESSAGE$_ARG$ str_var[0].sref[0].value[ str_var[0].byref_offset ]
-#define FN_GetDesktopDisplayMode 377
+#define FN_GetDesktopDisplayMode 378
#define GETDESKTOPDISPLAYMODE_INDEX num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETDESKTOPDISPLAYMODE_W num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETDESKTOPDISPLAYMODE_H num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define GETDESKTOPDISPLAYMODE_FREQ num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_GetPowerInfo 378
+#define FN_GetPowerInfo 379
#define GETPOWERINFO_STATUS num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETPOWERINFO_SECS num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETPOWERINFO_PCT num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_EvalJS$ 379
+#define FN_EvalJS$ 380
#define EVALJS$_JS_CODE$ str_var[0].sref[0].value[ str_var[0].byref_offset ]
-#define FN_SystemReturnStdOut$ 380
+#define FN_SystemReturnStdOut$ 381
#define SYSTEMRETURNSTDOUT$_CMD$ str_var[0].sref[0].value[ str_var[0].byref_offset ]
-#define FN_OpenURL 381
+#define FN_OpenURL 382
#define OPENURL_URL$ str_var[0].sref[0].value[ str_var[0].byref_offset ]
-#define FN_MessageBox 382
+#define FN_MessageBox 383
#define MESSAGEBOX_TITLE$ str_var[0].sref[0].value[ str_var[0].byref_offset ]
#define MESSAGEBOX_MSG$ str_var[1].sref[0].value[ str_var[1].byref_offset ]
-#define FN_Runtime$ 383
-#define FN_NumCPUs 384
-#define FN_SystemRam 385
-#define FN_DimMatrix 386
+#define FN_Runtime$ 384
+#define FN_NumCPUs 385
+#define FN_SystemRam 386
+#define FN_DimMatrix 387
#define DIMMATRIX_M_ROWS num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define DIMMATRIX_M_COLS num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_DeleteMatrix 387
+#define FN_DeleteMatrix 388
#define DELETEMATRIX_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_AddMatrix 388
+#define FN_AddMatrix 389
#define ADDMATRIX_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define ADDMATRIX_MB num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define ADDMATRIX_MC num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_AugmentMatrix 389
+#define FN_AugmentMatrix 390
#define AUGMENTMATRIX_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define AUGMENTMATRIX_MB num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define AUGMENTMATRIX_MC num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_CopyMatrix 390
+#define FN_CopyMatrix 391
#define COPYMATRIX_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define COPYMATRIX_MB num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_InsertMatrixColumns 391
+#define FN_InsertMatrixColumns 392
#define INSERTMATRIXCOLUMNS_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define INSERTMATRIXCOLUMNS_C num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define INSERTMATRIXCOLUMNS_NUM_COLS num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_InsertMatrixRows 392
+#define FN_InsertMatrixRows 393
#define INSERTMATRIXROWS_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define INSERTMATRIXROWS_R num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define INSERTMATRIXROWS_NUM_ROWS num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_MultiplyMatrix 393
+#define FN_MultiplyMatrix 394
#define MULTIPLYMATRIX_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define MULTIPLYMATRIX_MB num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define MULTIPLYMATRIX_MC num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_CubeMatrix 394
+#define FN_CubeMatrix 395
#define CUBEMATRIX_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define CUBEMATRIX_MB num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_DeleteMatrixColumns 395
+#define FN_DeleteMatrixColumns 396
#define DELETEMATRIXCOLUMNS_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define DELETEMATRIXCOLUMNS_C num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define DELETEMATRIXCOLUMNS_NUM_COLS num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_DeleteMatrixRows 396
+#define FN_DeleteMatrixRows 397
#define DELETEMATRIXROWS_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define DELETEMATRIXROWS_R num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define DELETEMATRIXROWS_NUM_ROWS num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_ClearMatrix 397
+#define FN_ClearMatrix 398
#define CLEARMATRIX_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_ClearMatrixColumns 398
+#define FN_ClearMatrixColumns 399
#define CLEARMATRIXCOLUMNS_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define CLEARMATRIXCOLUMNS_C num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define CLEARMATRIXCOLUMNS_NUM_COLS num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_ClearMatrixRows 399
+#define FN_ClearMatrixRows 400
#define CLEARMATRIXROWS_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define CLEARMATRIXROWS_R num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define CLEARMATRIXROWS_NUM_ROWS num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_FillMatrix 400
+#define FN_FillMatrix 401
#define FILLMATRIX_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define FILLMATRIX_V num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_FillMatrixColumns 401
+#define FN_FillMatrixColumns 402
#define FILLMATRIXCOLUMNS_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define FILLMATRIXCOLUMNS_C num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define FILLMATRIXCOLUMNS_NUM_COLS num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define FILLMATRIXCOLUMNS_V num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_FillMatrixRows 402
+#define FN_FillMatrixRows 403
#define FILLMATRIXROWS_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define FILLMATRIXROWS_R num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define FILLMATRIXROWS_NUM_ROWS num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define FILLMATRIXROWS_V num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_CopyMatrixColumns 403
+#define FN_CopyMatrixColumns 404
#define COPYMATRIXCOLUMNS_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define COPYMATRIXCOLUMNS_MB num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define COPYMATRIXCOLUMNS_C num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define COPYMATRIXCOLUMNS_NUM_COLS num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_CopyMatrixRows 404
+#define FN_CopyMatrixRows 405
#define COPYMATRIXROWS_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define COPYMATRIXROWS_MB num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define COPYMATRIXROWS_R num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define COPYMATRIXROWS_NUM_ROWS num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_SetIdentityMatrix 405
+#define FN_SetIdentityMatrix 406
#define SETIDENTITYMATRIX_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETIDENTITYMATRIX_N num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_SolveMatrix 406
+#define FN_SolveMatrix 407
#define SOLVEMATRIX_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SOLVEMATRIX_MB num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SOLVEMATRIX_MC num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_IsEqualMatrix 407
+#define FN_IsEqualMatrix 408
#define ISEQUALMATRIX_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define ISEQUALMATRIX_MB num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define ISEQUALMATRIX_TOLERANCE num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_Determinant 408
+#define FN_Determinant 409
#define DETERMINANT_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_AdjointMatrix 409
+#define FN_AdjointMatrix 410
#define ADJOINTMATRIX_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define ADJOINTMATRIX_MB num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_InvertMatrix 410
+#define FN_InvertMatrix 411
#define INVERTMATRIX_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define INVERTMATRIX_MB num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_MatrixFromBuffer 411
+#define FN_MatrixFromBuffer 412
#define MATRIXFROMBUFFER_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define MATRIXFROMBUFFER_R num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define MATRIXFROMBUFFER_C num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define MATRIXFROMBUFFER_BUFFER num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_BufferFromMatrix 412
+#define FN_BufferFromMatrix 413
#define BUFFERFROMMATRIX_BUFFER num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define BUFFERFROMMATRIX_MA num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_RandomizeMatrix 413
+#define FN_RandomizeMatrix 414
#define RANDOMIZEMATRIX_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define RANDOMIZEMATRIX_VMIN num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define RANDOMIZEMATRIX_VMAX num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_MatrixValue 414
+#define FN_MatrixValue 415
#define MATRIXVALUE_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define MATRIXVALUE_R num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define MATRIXVALUE_C num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_SetMatrixValue 415
+#define FN_SetMatrixValue 416
#define SETMATRIXVALUE_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETMATRIXVALUE_R num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETMATRIXVALUE_C num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define SETMATRIXVALUE_V num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_ScalarMatrix 416
+#define FN_ScalarMatrix 417
#define SCALARMATRIX_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SCALARMATRIX_MB num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SCALARMATRIX_S_VALUE num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_ScalarMatrixColumns 417
+#define FN_ScalarMatrixColumns 418
#define SCALARMATRIXCOLUMNS_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SCALARMATRIXCOLUMNS_MB num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SCALARMATRIXCOLUMNS_C num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define SCALARMATRIXCOLUMNS_NUM_COLS num_var[3].nref[0].value[ num_var[3].byref_offset ]
#define SCALARMATRIXCOLUMNS_S_VALUE num_var[4].nref[0].value[ num_var[4].byref_offset ]
-#define FN_ScalarMatrixRows 418
+#define FN_ScalarMatrixRows 419
#define SCALARMATRIXROWS_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SCALARMATRIXROWS_MB num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SCALARMATRIXROWS_R num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define SCALARMATRIXROWS_NUM_ROWS num_var[3].nref[0].value[ num_var[3].byref_offset ]
#define SCALARMATRIXROWS_S_VALUE num_var[4].nref[0].value[ num_var[4].byref_offset ]
-#define FN_SquareMatrix 419
+#define FN_SquareMatrix 420
#define SQUAREMATRIX_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SQUAREMATRIX_MB num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_CofactorMatrix 420
+#define FN_CofactorMatrix 421
#define COFACTORMATRIX_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define COFACTORMATRIX_R num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define COFACTORMATRIX_C num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_SubtractMatrix 421
+#define FN_SubtractMatrix 422
#define SUBTRACTMATRIX_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SUBTRACTMATRIX_MB num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SUBTRACTMATRIX_MC num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_SwapMatrix 422
+#define FN_SwapMatrix 423
#define SWAPMATRIX_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SWAPMATRIX_MB num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_SwapMatrixColumn 423
+#define FN_SwapMatrixColumn 424
#define SWAPMATRIXCOLUMN_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SWAPMATRIXCOLUMN_C1 num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SWAPMATRIXCOLUMN_C2 num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_SwapMatrixRow 424
+#define FN_SwapMatrixRow 425
#define SWAPMATRIXROW_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SWAPMATRIXROW_R1 num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SWAPMATRIXROW_R2 num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_TransposeMatrix 425
+#define FN_TransposeMatrix 426
#define TRANSPOSEMATRIX_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define TRANSPOSEMATRIX_MB num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_UnAugmentMatrix 426
+#define FN_UnAugmentMatrix 427
#define UNAUGMENTMATRIX_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define UNAUGMENTMATRIX_MB num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define UNAUGMENTMATRIX_MC num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_ZeroMatrix 427
+#define FN_ZeroMatrix 428
#define ZEROMATRIX_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_GetMatrixSize 428
+#define FN_GetMatrixSize 429
#define GETMATRIXSIZE_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETMATRIXSIZE_R num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETMATRIXSIZE_C num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_IncrementMatrixRows 429
+#define FN_IncrementMatrixRows 430
#define INCREMENTMATRIXROWS_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define INCREMENTMATRIXROWS_MB num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define INCREMENTMATRIXROWS_R num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define INCREMENTMATRIXROWS_NUM_ROWS num_var[3].nref[0].value[ num_var[3].byref_offset ]
#define INCREMENTMATRIXROWS_VALUE num_var[4].nref[0].value[ num_var[4].byref_offset ]
-#define FN_IncrementMatrixColumns 430
+#define FN_IncrementMatrixColumns 431
#define INCREMENTMATRIXCOLUMNS_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define INCREMENTMATRIXCOLUMNS_MB num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define INCREMENTMATRIXCOLUMNS_C num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define INCREMENTMATRIXCOLUMNS_NUM_COLS num_var[3].nref[0].value[ num_var[3].byref_offset ]
#define INCREMENTMATRIXCOLUMNS_VALUE num_var[4].nref[0].value[ num_var[4].byref_offset ]
-#define FN_JoinMatrixRows 431
+#define FN_JoinMatrixRows 432
#define JOINMATRIXROWS_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define JOINMATRIXROWS_MB num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define JOINMATRIXROWS_MC num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_JoinMatrixColumns 432
+#define FN_JoinMatrixColumns 433
#define JOINMATRIXCOLUMNS_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define JOINMATRIXCOLUMNS_MB num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define JOINMATRIXCOLUMNS_MC num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_ClipMatrix 433
+#define FN_ClipMatrix 434
#define CLIPMATRIX_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define CLIPMATRIX_R num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define CLIPMATRIX_C num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define CLIPMATRIX_NUM_ROWS num_var[3].nref[0].value[ num_var[3].byref_offset ]
#define CLIPMATRIX_NUM_COLS num_var[4].nref[0].value[ num_var[4].byref_offset ]
#define CLIPMATRIX_MB num_var[5].nref[0].value[ num_var[5].byref_offset ]
-#define FN_SetMatrixTranslation 434
+#define FN_SetMatrixTranslation 435
#define SETMATRIXTRANSLATION_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETMATRIXTRANSLATION_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETMATRIXTRANSLATION_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define SETMATRIXTRANSLATION_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_SetMatrixRotation 435
+#define FN_SetMatrixRotation 436
#define SETMATRIXROTATION_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETMATRIXROTATION_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETMATRIXROTATION_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define SETMATRIXROTATION_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_SetMatrixScale 436
+#define FN_SetMatrixScale 437
#define SETMATRIXSCALE_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETMATRIXSCALE_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETMATRIXSCALE_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define SETMATRIXSCALE_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_GetMatrixTranslation 437
+#define FN_GetMatrixTranslation 438
#define GETMATRIXTRANSLATION_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETMATRIXTRANSLATION_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETMATRIXTRANSLATION_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define GETMATRIXTRANSLATION_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_GetMatrixRotation 438
+#define FN_GetMatrixRotation 439
#define GETMATRIXROTATION_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETMATRIXROTATION_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETMATRIXROTATION_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define GETMATRIXROTATION_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_GetMatrixScale 439
+#define FN_GetMatrixScale 440
#define GETMATRIXSCALE_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETMATRIXSCALE_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETMATRIXSCALE_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define GETMATRIXSCALE_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_GetClipboardText$ 440
-#define FN_SetClipboardText 441
+#define FN_GetClipboardText$ 441
+#define FN_SetClipboardText 442
#define SETCLIPBOARDTEXT_TXT$ str_var[0].sref[0].value[ str_var[0].byref_offset ]
-#define FN_HasClipboardText 442
-#define FN_ReadInput_Start 443
-#define FN_ReadInput_Stop 444
-#define FN_ReadInput_Text$ 445
-#define FN_ReadInput_SetText 446
+#define FN_HasClipboardText 443
+#define FN_ReadInput_Start 444
+#define FN_ReadInput_Stop 445
+#define FN_ReadInput_Text$ 446
+#define FN_ReadInput_SetText 447
#define READINPUT_SETTEXT_TXT$ str_var[0].sref[0].value[ str_var[0].byref_offset ]
-#define FN_ReadInput_ToggleBackspace 447
+#define FN_ReadInput_ToggleBackspace 448
#define READINPUT_TOGGLEBACKSPACE_FLAG num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_CreateSprite 448
+#define FN_CreateSprite 449
#define CREATESPRITE_IMG num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_DeleteSprite 449
+#define CREATESPRITE_FRAME_W num_var[1].nref[0].value[ num_var[1].byref_offset ]
+#define CREATESPRITE_FRAME_H num_var[2].nref[0].value[ num_var[2].byref_offset ]
+#define FN_DeleteSprite 450
#define DELETESPRITE_SPRITE num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_SetSpritePosition 450
+#define FN_SetSpritePosition 451
#define SETSPRITEPOSITION_SPRITE num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETSPRITEPOSITION_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETSPRITEPOSITION_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_LoadMesh 451
+#define FN_TranslateSprite 452
+#define TRANSLATESPRITE_SPRITE num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define TRANSLATESPRITE_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
+#define TRANSLATESPRITE_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
+#define FN_GetSpritePosition 453
+#define GETSPRITEPOSITION_SPRITE num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define GETSPRITEPOSITION_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
+#define GETSPRITEPOSITION_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
+#define FN_SpriteX 454
+#define SPRITEX_SPRITE num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define FN_SpriteY 455
+#define SPRITEY_SPRITE num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define FN_SetSpriteRotation 456
+#define SETSPRITEROTATION_SPRITE num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define SETSPRITEROTATION_ANGLE num_var[1].nref[0].value[ num_var[1].byref_offset ]
+#define FN_RotateSprite 457
+#define ROTATESPRITE_SPRITE num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define ROTATESPRITE_ANGLE num_var[1].nref[0].value[ num_var[1].byref_offset ]
+#define FN_GetSpriteRotation 458
+#define GETSPRITEROTATION_SPRITE num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define FN_SetSpriteScale 459
+#define SETSPRITESCALE_SPRITE num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define SETSPRITESCALE_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
+#define SETSPRITESCALE_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
+#define FN_ScaleSprite 460
+#define SCALESPRITE_SPRITE num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define SCALESPRITE_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
+#define SCALESPRITE_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
+#define FN_GetSpriteScale 461
+#define GETSPRITESCALE_SPRITE num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define GETSPRITESCALE_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
+#define GETSPRITESCALE_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
+#define FN_SetSpriteZ 462
+#define SETSPRITEZ_SPRITE num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define SETSPRITEZ_Z num_var[1].nref[0].value[ num_var[1].byref_offset ]
+#define FN_SpriteZ 463
+#define SPRITEZ_SPRITE num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define FN_GetSpriteSize 464
+#define GETSPRITESIZE_SPRITE num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define GETSPRITESIZE_W num_var[1].nref[0].value[ num_var[1].byref_offset ]
+#define GETSPRITESIZE_H num_var[2].nref[0].value[ num_var[2].byref_offset ]
+#define FN_SpriteWidth 465
+#define SPRITEWIDTH_SPRITE num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define FN_SpriteHeight 466
+#define SPRITEHEIGHT_SPRITE num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define FN_SetSpriteVisible 467
+#define SETSPRITEVISIBLE_SPRITE num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define SETSPRITEVISIBLE_FLAG num_var[1].nref[0].value[ num_var[1].byref_offset ]
+#define FN_SpriteIsVisible 468
+#define SPRITEISVISIBLE_SPRITE num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define FN_SetSpriteSolid 469
+#define SETSPRITESOLID_SPRITE num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define SETSPRITESOLID_FLAG num_var[1].nref[0].value[ num_var[1].byref_offset ]
+#define FN_SpriteIsSolid 470
+#define SPRITEISSOLID_SPRITE num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define FN_SetSpriteType 471
+#define SETSPRITETYPE_SPRITE num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define SETSPRITETYPE_SPRITE_TYPE num_var[1].nref[0].value[ num_var[1].byref_offset ]
+#define FN_GetSpriteType 472
+#define GETSPRITETYPE_SPRITE num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define FN_SetSpriteSource 473
+#define SETSPRITESOURCE_SPRITE num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define SETSPRITESOURCE_IMG num_var[1].nref[0].value[ num_var[1].byref_offset ]
+#define FN_GetSpriteSource 474
+#define GETSPRITESOURCE_SPRITE num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define FN_CreateSpriteAnimation 475
+#define CREATESPRITEANIMATION_SPRITE num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define CREATESPRITEANIMATION_ANIM_LENGTH num_var[1].nref[0].value[ num_var[1].byref_offset ]
+#define CREATESPRITEANIMATION_SPEED num_var[2].nref[0].value[ num_var[2].byref_offset ]
+#define FN_SetSpriteFrame 476
+#define SETSPRITEFRAME_SPRITE num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define SETSPRITEFRAME_FRAME num_var[1].nref[0].value[ num_var[1].byref_offset ]
+#define FN_GetSpriteFrame 477
+#define GETSPRITEFRAME_SPRITE num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define FN_SetSpriteAnimationFrame 478
+#define SETSPRITEANIMATIONFRAME_SPRITE num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define SETSPRITEANIMATIONFRAME_ANIMATION num_var[1].nref[0].value[ num_var[1].byref_offset ]
+#define SETSPRITEANIMATIONFRAME_ANIM_FRAME num_var[2].nref[0].value[ num_var[2].byref_offset ]
+#define SETSPRITEANIMATIONFRAME_FRAME num_var[3].nref[0].value[ num_var[3].byref_offset ]
+#define FN_GetSpriteAnimationFrame 479
+#define GETSPRITEANIMATIONFRAME_SPRITE num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define GETSPRITEANIMATIONFRAME_ANIMATION num_var[1].nref[0].value[ num_var[1].byref_offset ]
+#define GETSPRITEANIMATIONFRAME_ANIM_FRAME num_var[2].nref[0].value[ num_var[2].byref_offset ]
+#define FN_SetSpriteAnimationLength 480
+#define SETSPRITEANIMATIONLENGTH_SPRITE num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define SETSPRITEANIMATIONLENGTH_ANIMATION num_var[1].nref[0].value[ num_var[1].byref_offset ]
+#define SETSPRITEANIMATIONLENGTH_ANIM_LENGTH num_var[2].nref[0].value[ num_var[2].byref_offset ]
+#define FN_GetSpriteAnimationLength 481
+#define GETSPRITEANIMATIONLENGTH_SPRITE num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define GETSPRITEANIMATIONLENGTH_ANIMATION num_var[1].nref[0].value[ num_var[1].byref_offset ]
+#define FN_SetSpriteAnimationSpeed 482
+#define SETSPRITEANIMATIONSPEED_SPRITE num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define SETSPRITEANIMATIONSPEED_ANIMATION num_var[1].nref[0].value[ num_var[1].byref_offset ]
+#define SETSPRITEANIMATIONSPEED_SPEED num_var[2].nref[0].value[ num_var[2].byref_offset ]
+#define FN_GetSpriteAnimationSpeed 483
+#define GETSPRITEANIMATIONSPEED_SPRITE num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define GETSPRITEANIMATIONSPEED_ANIMATION num_var[1].nref[0].value[ num_var[1].byref_offset ]
+#define FN_SetSpriteAnimation 484
+#define SETSPRITEANIMATION_SPRITE num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define SETSPRITEANIMATION_ANIMATION num_var[1].nref[0].value[ num_var[1].byref_offset ]
+#define SETSPRITEANIMATION_NUM_LOOPS num_var[2].nref[0].value[ num_var[2].byref_offset ]
+#define FN_GetSpriteAnimation 485
+#define GETSPRITEANIMATION_SPRITE num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define FN_GetSpriteCurrentAnimationFrame 486
+#define GETSPRITECURRENTANIMATIONFRAME_SPRITE num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define FN_NumSpriteAnimationLoops 487
+#define NUMSPRITEANIMATIONLOOPS_SPRITE num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define FN_SpriteAnimationIsPlaying 488
+#define SPRITEANIMATIONISPLAYING_SPRITE num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define FN_DeleteSpriteAnimation 489
+#define DELETESPRITEANIMATION_SPRITE num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define DELETESPRITEANIMATION_ANIMATION num_var[1].nref[0].value[ num_var[1].byref_offset ]
+#define FN_LoadMesh 490
#define LOADMESH_MESH_FILE$ str_var[0].sref[0].value[ str_var[0].byref_offset ]
-#define FN_DeleteMesh 452
+#define FN_DeleteMesh 491
#define DELETEMESH_MESH num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_CreateMesh 453
-#define FN_AddMeshBuffer 454
+#define FN_CreateMesh 492
+#define FN_AddMeshBuffer 493
#define ADDMESHBUFFER_MESH num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define ADDMESHBUFFER_VERTEX_COUNT num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define ADDMESHBUFFER_VERTEX_DATA num_var[2].nref[0].value[ num_var[2].byref_offset ]
@@ -1296,217 +1411,227 @@
#define ADDMESHBUFFER_UV_DATA num_var[4].nref[0].value[ num_var[4].byref_offset ]
#define ADDMESHBUFFER_INDEX_COUNT num_var[5].nref[0].value[ num_var[5].byref_offset ]
#define ADDMESHBUFFER_INDEX_DATA num_var[6].nref[0].value[ num_var[6].byref_offset ]
-#define FN_LoadMeshFromArchive 455
+#define FN_LoadMeshFromArchive 494
#define LOADMESHFROMARCHIVE_ARCHIVE$ str_var[0].sref[0].value[ str_var[0].byref_offset ]
#define LOADMESHFROMARCHIVE_MESH_FILE$ str_var[1].sref[0].value[ str_var[1].byref_offset ]
-#define FN_CreatePlaneMesh 456
+#define FN_CreatePlaneMesh 495
#define CREATEPLANEMESH_W num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define CREATEPLANEMESH_H num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define CREATEPLANEMESH_TILECOUNT_W num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define CREATEPLANEMESH_TILECOUNT_H num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_CreateMeshActor 457
-#define CREATEMESHACTOR_MESH num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_CreateMeshOctreeActor 458
-#define CREATEMESHOCTREEACTOR_MESH num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_CreateCubeActor 459
+#define FN_LoadAN8 496
+#define LOADAN8_AN8_FILE$ str_var[0].sref[0].value[ str_var[0].byref_offset ]
+#define FN_LoadMeshFromAN8 497
+#define LOADMESHFROMAN8_AN8_PROJECT num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define LOADMESHFROMAN8_AN8_SCENE$ str_var[0].sref[0].value[ str_var[0].byref_offset ]
+#define FN_GetNumAN8Scenes 498
+#define GETNUMAN8SCENES_AN8_PROJECT num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define FN_GetAN8SceneName$ 499
+#define GETAN8SCENENAME$_AN8_PROJECT num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define GETAN8SCENENAME$_SCENE_NUM num_var[1].nref[0].value[ num_var[1].byref_offset ]
+#define FN_CreateAnimatedActor 500
+#define CREATEANIMATEDACTOR_MESH num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define FN_CreateOctreeActor 501
+#define CREATEOCTREEACTOR_MESH num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define FN_CreateCubeActor 502
#define CREATECUBEACTOR_CUBE_SIZE num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_CreateSphereActor 460
+#define FN_CreateSphereActor 503
#define CREATESPHEREACTOR_RADIUS num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_CreateWaterActor 461
+#define FN_CreateWaterActor 504
#define CREATEWATERACTOR_MESH num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define CREATEWATERACTOR_WAVEHEIGHT num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define CREATEWATERACTOR_WAVESPEED num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define CREATEWATERACTOR_WAVELENGTH num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_CreateLightActor 462
-#define FN_CreateBillboardActor 463
-#define FN_CreateTerrainActor 464
+#define FN_CreateLightActor 505
+#define FN_CreateBillboardActor 506
+#define FN_CreateTerrainActor 507
#define CREATETERRAINACTOR_HMAP_FILE$ str_var[0].sref[0].value[ str_var[0].byref_offset ]
-#define FN_CreateParticleActor 465
+#define FN_CreateParticleActor 508
#define CREATEPARTICLEACTOR_PARTICLE_TYPE num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_DeleteActor 466
+#define FN_DeleteActor 509
#define DELETEACTOR_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_GetActorTransform 467
+#define FN_GetActorTransform 510
#define GETACTORTRANSFORM_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETACTORTRANSFORM_MATRIX num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_SetActorPosition 468
+#define FN_SetActorPosition 511
#define SETACTORPOSITION_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETACTORPOSITION_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETACTORPOSITION_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define SETACTORPOSITION_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_TranslateActorLocal 469
+#define FN_TranslateActorLocal 512
#define TRANSLATEACTORLOCAL_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define TRANSLATEACTORLOCAL_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define TRANSLATEACTORLOCAL_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define TRANSLATEACTORLOCAL_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_TranslateActorWorld 470
+#define FN_TranslateActorWorld 513
#define TRANSLATEACTORWORLD_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define TRANSLATEACTORWORLD_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define TRANSLATEACTORWORLD_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define TRANSLATEACTORWORLD_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_GetActorPosition 471
+#define FN_GetActorPosition 514
#define GETACTORPOSITION_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETACTORPOSITION_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETACTORPOSITION_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define GETACTORPOSITION_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_SetActorScale 472
+#define FN_SetActorScale 515
#define SETACTORSCALE_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETACTORSCALE_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETACTORSCALE_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define SETACTORSCALE_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_ScaleActor 473
+#define FN_ScaleActor 516
#define SCALEACTOR_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SCALEACTOR_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SCALEACTOR_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define SCALEACTOR_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_GetActorScale 474
+#define FN_GetActorScale 517
#define GETACTORSCALE_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETACTORSCALE_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETACTORSCALE_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define GETACTORSCALE_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_SetActorRotation 475
+#define FN_SetActorRotation 518
#define SETACTORROTATION_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETACTORROTATION_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETACTORROTATION_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define SETACTORROTATION_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_RotateActor 476
+#define FN_RotateActor 519
#define ROTATEACTOR_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define ROTATEACTOR_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define ROTATEACTOR_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define ROTATEACTOR_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_GetActorRotation 477
+#define FN_GetActorRotation 520
#define GETACTORROTATION_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETACTORROTATION_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETACTORROTATION_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define GETACTORROTATION_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_SetActorVisible 478
+#define FN_SetActorVisible 521
#define SETACTORVISIBLE_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETACTORVISIBLE_FLAG num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_ActorIsVisible 479
+#define FN_ActorIsVisible 522
#define ACTORISVISIBLE_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_SetActorAutoCulling 480
+#define FN_SetActorAutoCulling 523
#define SETACTORAUTOCULLING_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETACTORAUTOCULLING_CULL_TYPE num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_GetActorAutoCulling 481
+#define FN_GetActorAutoCulling 524
#define GETACTORAUTOCULLING_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_AddActorShadow 482
+#define FN_AddActorShadow 525
#define ADDACTORSHADOW_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_RemoveActorShadow 483
+#define FN_RemoveActorShadow 526
#define REMOVEACTORSHADOW_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_ActorExists 484
+#define FN_ActorExists 527
#define ACTOREXISTS_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_SetGravity3D 485
+#define FN_SetGravity3D 528
#define SETGRAVITY3D_X num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETGRAVITY3D_Y num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETGRAVITY3D_Z num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_GetGravity3D 486
+#define FN_GetGravity3D 529
#define GETGRAVITY3D_X num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETGRAVITY3D_Y num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETGRAVITY3D_Z num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_SetActorCollisionShape 487
+#define FN_SetActorCollisionShape 530
#define SETACTORCOLLISIONSHAPE_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETACTORCOLLISIONSHAPE_SHAPE_TYPE num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETACTORCOLLISIONSHAPE_MASS num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_GetActorCollisionShape 488
+#define FN_GetActorCollisionShape 531
#define GETACTORCOLLISIONSHAPE_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_SetActorSolid 489
+#define FN_SetActorSolid 532
#define SETACTORSOLID_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETACTORSOLID_FLAG num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_ActorIsSolid 490
+#define FN_ActorIsSolid 533
#define ACTORISSOLID_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_GetActorCollision 491
+#define FN_GetActorCollision 534
#define GETACTORCOLLISION_ACTOR1 num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETACTORCOLLISION_ACTOR2 num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_SetActorGravity 492
+#define FN_SetActorGravity 535
#define SETACTORGRAVITY_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETACTORGRAVITY_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETACTORGRAVITY_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define SETACTORGRAVITY_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_GetActorGravity 493
+#define FN_GetActorGravity 536
#define GETACTORGRAVITY_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETACTORGRAVITY_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETACTORGRAVITY_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define GETACTORGRAVITY_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_setActorDamping 494
+#define FN_setActorDamping 537
#define SETACTORDAMPING_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETACTORDAMPING_LIN_DAMPING num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETACTORDAMPING_ANG_DAMPING num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_getActorLinearDamping 495
+#define FN_getActorLinearDamping 538
#define GETACTORLINEARDAMPING_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getActorAngularDamping 496
+#define FN_getActorAngularDamping 539
#define GETACTORANGULARDAMPING_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getActorLinearSleepThreshold 497
+#define FN_getActorLinearSleepThreshold 540
#define GETACTORLINEARSLEEPTHRESHOLD_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getActorAngularSleepThreshold 498
+#define FN_getActorAngularSleepThreshold 541
#define GETACTORANGULARSLEEPTHRESHOLD_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_applyActorDamping 499
+#define FN_applyActorDamping 542
#define APPLYACTORDAMPING_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define APPLYACTORDAMPING_TIMESTEP num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_setActorMassProperties 500
+#define FN_setActorMassProperties 543
#define SETACTORMASSPROPERTIES_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETACTORMASSPROPERTIES_MASS num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETACTORMASSPROPERTIES_INERTIA_X num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define SETACTORMASSPROPERTIES_INERTIA_Y num_var[3].nref[0].value[ num_var[3].byref_offset ]
#define SETACTORMASSPROPERTIES_INERTIA_Z num_var[4].nref[0].value[ num_var[4].byref_offset ]
-#define FN_getActorLinearFactor 501
+#define FN_getActorLinearFactor 544
#define GETACTORLINEARFACTOR_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETACTORLINEARFACTOR_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETACTORLINEARFACTOR_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define GETACTORLINEARFACTOR_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_setActorLinearFactor 502
+#define FN_setActorLinearFactor 545
#define SETACTORLINEARFACTOR_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETACTORLINEARFACTOR_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETACTORLINEARFACTOR_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define SETACTORLINEARFACTOR_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_getActorInverseMass 503
+#define FN_getActorInverseMass 546
#define GETACTORINVERSEMASS_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_integrateActorVelocities 504
+#define FN_integrateActorVelocities 547
#define INTEGRATEACTORVELOCITIES_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define INTEGRATEACTORVELOCITIES_V_STEP num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_applyActorCentralForceLocal 505
+#define FN_applyActorCentralForceLocal 548
#define APPLYACTORCENTRALFORCELOCAL_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define APPLYACTORCENTRALFORCELOCAL_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define APPLYACTORCENTRALFORCELOCAL_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define APPLYACTORCENTRALFORCELOCAL_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_applyActorCentralForceWorld 506
+#define FN_applyActorCentralForceWorld 549
#define APPLYACTORCENTRALFORCEWORLD_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define APPLYACTORCENTRALFORCEWORLD_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define APPLYACTORCENTRALFORCEWORLD_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define APPLYACTORCENTRALFORCEWORLD_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_getActorTotalForce 507
+#define FN_getActorTotalForce 550
#define GETACTORTOTALFORCE_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETACTORTOTALFORCE_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETACTORTOTALFORCE_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define GETACTORTOTALFORCE_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_getActorTotalTorque 508
+#define FN_getActorTotalTorque 551
#define GETACTORTOTALTORQUE_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETACTORTOTALTORQUE_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETACTORTOTALTORQUE_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define GETACTORTOTALTORQUE_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_getActorInverseInertiaDiagLocal 509
+#define FN_getActorInverseInertiaDiagLocal 552
#define GETACTORINVERSEINERTIADIAGLOCAL_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETACTORINVERSEINERTIADIAGLOCAL_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETACTORINVERSEINERTIADIAGLOCAL_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define GETACTORINVERSEINERTIADIAGLOCAL_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_setActorInverseInertiaDiagLocal 510
+#define FN_setActorInverseInertiaDiagLocal 553
#define SETACTORINVERSEINERTIADIAGLOCAL_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETACTORINVERSEINERTIADIAGLOCAL_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETACTORINVERSEINERTIADIAGLOCAL_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define SETACTORINVERSEINERTIADIAGLOCAL_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_setActorSleepThresholds 511
+#define FN_setActorSleepThresholds 554
#define SETACTORSLEEPTHRESHOLDS_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETACTORSLEEPTHRESHOLDS_LINEAR num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETACTORSLEEPTHRESHOLDS_ANGULAR num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_applyActorTorqueLocal 512
+#define FN_applyActorTorqueLocal 555
#define APPLYACTORTORQUELOCAL_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define APPLYACTORTORQUELOCAL_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define APPLYACTORTORQUELOCAL_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define APPLYACTORTORQUELOCAL_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_applyActorTorqueWorld 513
+#define FN_applyActorTorqueWorld 556
#define APPLYACTORTORQUEWORLD_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define APPLYACTORTORQUEWORLD_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define APPLYACTORTORQUEWORLD_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define APPLYACTORTORQUEWORLD_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_applyActorForceLocal 514
+#define FN_applyActorForceLocal 557
#define APPLYACTORFORCELOCAL_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define APPLYACTORFORCELOCAL_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define APPLYACTORFORCELOCAL_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
@@ -1514,7 +1639,7 @@
#define APPLYACTORFORCELOCAL_REL_X num_var[4].nref[0].value[ num_var[4].byref_offset ]
#define APPLYACTORFORCELOCAL_REL_Y num_var[5].nref[0].value[ num_var[5].byref_offset ]
#define APPLYACTORFORCELOCAL_REL_Z num_var[6].nref[0].value[ num_var[6].byref_offset ]
-#define FN_applyActorForceWorld 515
+#define FN_applyActorForceWorld 558
#define APPLYACTORFORCEWORLD_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define APPLYACTORFORCEWORLD_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define APPLYACTORFORCEWORLD_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
@@ -1522,27 +1647,27 @@
#define APPLYACTORFORCEWORLD_REL_X num_var[4].nref[0].value[ num_var[4].byref_offset ]
#define APPLYACTORFORCEWORLD_REL_Y num_var[5].nref[0].value[ num_var[5].byref_offset ]
#define APPLYACTORFORCEWORLD_REL_Z num_var[6].nref[0].value[ num_var[6].byref_offset ]
-#define FN_applyActorCentralImpulseLocal 516
+#define FN_applyActorCentralImpulseLocal 559
#define APPLYACTORCENTRALIMPULSELOCAL_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define APPLYACTORCENTRALIMPULSELOCAL_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define APPLYACTORCENTRALIMPULSELOCAL_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define APPLYACTORCENTRALIMPULSELOCAL_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_applyActorCentralImpulseWorld 517
+#define FN_applyActorCentralImpulseWorld 560
#define APPLYACTORCENTRALIMPULSEWORLD_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define APPLYACTORCENTRALIMPULSEWORLD_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define APPLYACTORCENTRALIMPULSEWORLD_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define APPLYACTORCENTRALIMPULSEWORLD_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_applyActorTorqueImpulseLocal 518
+#define FN_applyActorTorqueImpulseLocal 561
#define APPLYACTORTORQUEIMPULSELOCAL_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define APPLYACTORTORQUEIMPULSELOCAL_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define APPLYACTORTORQUEIMPULSELOCAL_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define APPLYACTORTORQUEIMPULSELOCAL_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_applyActorTorqueImpulseWorld 519
+#define FN_applyActorTorqueImpulseWorld 562
#define APPLYACTORTORQUEIMPULSEWORLD_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define APPLYACTORTORQUEIMPULSEWORLD_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define APPLYACTORTORQUEIMPULSEWORLD_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define APPLYACTORTORQUEIMPULSEWORLD_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_applyActorImpulseLocal 520
+#define FN_applyActorImpulseLocal 563
#define APPLYACTORIMPULSELOCAL_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define APPLYACTORIMPULSELOCAL_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define APPLYACTORIMPULSELOCAL_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
@@ -1550,7 +1675,7 @@
#define APPLYACTORIMPULSELOCAL_REL_X num_var[4].nref[0].value[ num_var[4].byref_offset ]
#define APPLYACTORIMPULSELOCAL_REL_Y num_var[5].nref[0].value[ num_var[5].byref_offset ]
#define APPLYACTORIMPULSELOCAL_REL_Z num_var[6].nref[0].value[ num_var[6].byref_offset ]
-#define FN_applyActorImpulseWorld 521
+#define FN_applyActorImpulseWorld 564
#define APPLYACTORIMPULSEWORLD_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define APPLYACTORIMPULSEWORLD_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define APPLYACTORIMPULSEWORLD_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
@@ -1558,52 +1683,52 @@
#define APPLYACTORIMPULSEWORLD_REL_X num_var[4].nref[0].value[ num_var[4].byref_offset ]
#define APPLYACTORIMPULSEWORLD_REL_Y num_var[5].nref[0].value[ num_var[5].byref_offset ]
#define APPLYACTORIMPULSEWORLD_REL_Z num_var[6].nref[0].value[ num_var[6].byref_offset ]
-#define FN_clearActorForces 522
+#define FN_clearActorForces 565
#define CLEARACTORFORCES_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_updateActorInertiaTensor 523
+#define FN_updateActorInertiaTensor 566
#define UPDATEACTORINERTIATENSOR_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getActorCOMPosition 524
+#define FN_getActorCOMPosition 567
#define GETACTORCOMPOSITION_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETACTORCOMPOSITION_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETACTORCOMPOSITION_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define GETACTORCOMPOSITION_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_getActorRotationQ 525
+#define FN_getActorRotationQ 568
#define GETACTORROTATIONQ_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETACTORROTATIONQ_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETACTORROTATIONQ_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define GETACTORROTATIONQ_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
#define GETACTORROTATIONQ_W num_var[4].nref[0].value[ num_var[4].byref_offset ]
-#define FN_getActorLinearVelocityWorld 526
+#define FN_getActorLinearVelocityWorld 569
#define GETACTORLINEARVELOCITYWORLD_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETACTORLINEARVELOCITYWORLD_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETACTORLINEARVELOCITYWORLD_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define GETACTORLINEARVELOCITYWORLD_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_getActorAngularVelocityWorld 527
+#define FN_getActorAngularVelocityWorld 570
#define GETACTORANGULARVELOCITYWORLD_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETACTORANGULARVELOCITYWORLD_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETACTORANGULARVELOCITYWORLD_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define GETACTORANGULARVELOCITYWORLD_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_setActorLinearVelocityLocal 528
+#define FN_setActorLinearVelocityLocal 571
#define SETACTORLINEARVELOCITYLOCAL_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETACTORLINEARVELOCITYLOCAL_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETACTORLINEARVELOCITYLOCAL_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define SETACTORLINEARVELOCITYLOCAL_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_setActorLinearVelocityWorld 529
+#define FN_setActorLinearVelocityWorld 572
#define SETACTORLINEARVELOCITYWORLD_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETACTORLINEARVELOCITYWORLD_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETACTORLINEARVELOCITYWORLD_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define SETACTORLINEARVELOCITYWORLD_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_setActorAngularVelocityLocal 530
+#define FN_setActorAngularVelocityLocal 573
#define SETACTORANGULARVELOCITYLOCAL_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETACTORANGULARVELOCITYLOCAL_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETACTORANGULARVELOCITYLOCAL_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define SETACTORANGULARVELOCITYLOCAL_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_setActorAngularVelocityWorld 531
+#define FN_setActorAngularVelocityWorld 574
#define SETACTORANGULARVELOCITYWORLD_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETACTORANGULARVELOCITYWORLD_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETACTORANGULARVELOCITYWORLD_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define SETACTORANGULARVELOCITYWORLD_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_getActorLocalPointVelocity 532
+#define FN_getActorLocalPointVelocity 575
#define GETACTORLOCALPOINTVELOCITY_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETACTORLOCALPOINTVELOCITY_REL_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETACTORLOCALPOINTVELOCITY_REL_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
@@ -1611,17 +1736,17 @@
#define GETACTORLOCALPOINTVELOCITY_X num_var[4].nref[0].value[ num_var[4].byref_offset ]
#define GETACTORLOCALPOINTVELOCITY_Y num_var[5].nref[0].value[ num_var[5].byref_offset ]
#define GETACTORLOCALPOINTVELOCITY_Z num_var[6].nref[0].value[ num_var[6].byref_offset ]
-#define FN_getActorLinearVelocityLocal 533
+#define FN_getActorLinearVelocityLocal 576
#define GETACTORLINEARVELOCITYLOCAL_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETACTORLINEARVELOCITYLOCAL_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETACTORLINEARVELOCITYLOCAL_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define GETACTORLINEARVELOCITYLOCAL_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_getActorAngularVelocityLocal 534
+#define FN_getActorAngularVelocityLocal 577
#define GETACTORANGULARVELOCITYLOCAL_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETACTORANGULARVELOCITYLOCAL_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETACTORANGULARVELOCITYLOCAL_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define GETACTORANGULARVELOCITYLOCAL_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_getActorAABB 535
+#define FN_getActorAABB 578
#define GETACTORAABB_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETACTORAABB_MIN_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETACTORAABB_MIN_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
@@ -1629,7 +1754,7 @@
#define GETACTORAABB_MAX_X num_var[4].nref[0].value[ num_var[4].byref_offset ]
#define GETACTORAABB_MAX_Y num_var[5].nref[0].value[ num_var[5].byref_offset ]
#define GETACTORAABB_MAX_Z num_var[6].nref[0].value[ num_var[6].byref_offset ]
-#define FN_computeActorImpulseDenominator 536
+#define FN_computeActorImpulseDenominator 579
#define COMPUTEACTORIMPULSEDENOMINATOR_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define COMPUTEACTORIMPULSEDENOMINATOR_POS_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define COMPUTEACTORIMPULSEDENOMINATOR_POS_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
@@ -1637,47 +1762,47 @@
#define COMPUTEACTORIMPULSEDENOMINATOR_NORMAL_X num_var[4].nref[0].value[ num_var[4].byref_offset ]
#define COMPUTEACTORIMPULSEDENOMINATOR_NORMAL_Y num_var[5].nref[0].value[ num_var[5].byref_offset ]
#define COMPUTEACTORIMPULSEDENOMINATOR_NORMAL_Z num_var[6].nref[0].value[ num_var[6].byref_offset ]
-#define FN_computeActorAngularImpulseDenominator 537
+#define FN_computeActorAngularImpulseDenominator 580
#define COMPUTEACTORANGULARIMPULSEDENOMINATOR_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define COMPUTEACTORANGULARIMPULSEDENOMINATOR_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define COMPUTEACTORANGULARIMPULSEDENOMINATOR_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define COMPUTEACTORANGULARIMPULSEDENOMINATOR_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_setActorAngularFactor 538
+#define FN_setActorAngularFactor 581
#define SETACTORANGULARFACTOR_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETACTORANGULARFACTOR_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETACTORANGULARFACTOR_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define SETACTORANGULARFACTOR_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_getActorAngularFactor 539
+#define FN_getActorAngularFactor 582
#define GETACTORANGULARFACTOR_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETACTORANGULARFACTOR_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETACTORANGULARFACTOR_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define GETACTORANGULARFACTOR_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_computeActorGyroImpulseLocal 540
+#define FN_computeActorGyroImpulseLocal 583
#define COMPUTEACTORGYROIMPULSELOCAL_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define COMPUTEACTORGYROIMPULSELOCAL_DT num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define COMPUTEACTORGYROIMPULSELOCAL_X num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define COMPUTEACTORGYROIMPULSELOCAL_Y num_var[3].nref[0].value[ num_var[3].byref_offset ]
#define COMPUTEACTORGYROIMPULSELOCAL_Z num_var[4].nref[0].value[ num_var[4].byref_offset ]
-#define FN_computeActorGyroImpulseWorld 541
+#define FN_computeActorGyroImpulseWorld 584
#define COMPUTEACTORGYROIMPULSEWORLD_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define COMPUTEACTORGYROIMPULSEWORLD_DT num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define COMPUTEACTORGYROIMPULSEWORLD_X num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define COMPUTEACTORGYROIMPULSEWORLD_Y num_var[3].nref[0].value[ num_var[3].byref_offset ]
#define COMPUTEACTORGYROIMPULSEWORLD_Z num_var[4].nref[0].value[ num_var[4].byref_offset ]
-#define FN_getActorLocalInertia 542
+#define FN_getActorLocalInertia 585
#define GETACTORLOCALINERTIA_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETACTORLOCALINERTIA_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETACTORLOCALINERTIA_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define GETACTORLOCALINERTIA_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_SetActorSleepState 543
+#define FN_SetActorSleepState 586
#define SETACTORSLEEPSTATE_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETACTORSLEEPSTATE_STATE num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_createPointConstraint 544
+#define FN_createPointConstraint 587
#define CREATEPOINTCONSTRAINT_ACTORA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define CREATEPOINTCONSTRAINT_PXA num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define CREATEPOINTCONSTRAINT_PYA num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define CREATEPOINTCONSTRAINT_PZA num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_createPointConstraintEx 545
+#define FN_createPointConstraintEx 588
#define CREATEPOINTCONSTRAINTEX_ACTORA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define CREATEPOINTCONSTRAINTEX_ACTORB num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define CREATEPOINTCONSTRAINTEX_PXA num_var[2].nref[0].value[ num_var[2].byref_offset ]
@@ -1686,47 +1811,47 @@
#define CREATEPOINTCONSTRAINTEX_PXB num_var[5].nref[0].value[ num_var[5].byref_offset ]
#define CREATEPOINTCONSTRAINTEX_PYB num_var[6].nref[0].value[ num_var[6].byref_offset ]
#define CREATEPOINTCONSTRAINTEX_PZB num_var[7].nref[0].value[ num_var[7].byref_offset ]
-#define FN_setPointPivotA 546
+#define FN_setPointPivotA 589
#define SETPOINTPIVOTA_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETPOINTPIVOTA_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETPOINTPIVOTA_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define SETPOINTPIVOTA_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_setPointPivotB 547
+#define FN_setPointPivotB 590
#define SETPOINTPIVOTB_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETPOINTPIVOTB_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETPOINTPIVOTB_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define SETPOINTPIVOTB_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_createHingeConstraint 548
+#define FN_createHingeConstraint 591
#define CREATEHINGECONSTRAINT_ACTORA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define CREATEHINGECONSTRAINT_FRAMEA num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define CREATEHINGECONSTRAINT_USEREFERENCEFRAMEA num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_createHingeConstraintEx 549
+#define FN_createHingeConstraintEx 592
#define CREATEHINGECONSTRAINTEX_ACTORA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define CREATEHINGECONSTRAINTEX_ACTORB num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define CREATEHINGECONSTRAINTEX_FRAMEA num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define CREATEHINGECONSTRAINTEX_FRAMEB num_var[3].nref[0].value[ num_var[3].byref_offset ]
#define CREATEHINGECONSTRAINTEX_USEREFERENCEFRAMEA num_var[4].nref[0].value[ num_var[4].byref_offset ]
-#define FN_createSlideConstraint 550
+#define FN_createSlideConstraint 593
#define CREATESLIDECONSTRAINT_ACTORA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define CREATESLIDECONSTRAINT_FRAMEINB_MATRIX num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define CREATESLIDECONSTRAINT_USELINEARREFERENCEFRAMEA num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_createSlideConstraintEx 551
+#define FN_createSlideConstraintEx 594
#define CREATESLIDECONSTRAINTEX_ACTORA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define CREATESLIDECONSTRAINTEX_ACTORB num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define CREATESLIDECONSTRAINTEX_FRAMEINA_MATRIX num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define CREATESLIDECONSTRAINTEX_FRAMEINB_MATRIX num_var[3].nref[0].value[ num_var[3].byref_offset ]
#define CREATESLIDECONSTRAINTEX_USELINEARREFERENCEFRAMEA num_var[4].nref[0].value[ num_var[4].byref_offset ]
-#define FN_createConeConstraint 552
+#define FN_createConeConstraint 595
#define CREATECONECONSTRAINT_ACTORA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define CREATECONECONSTRAINT_RBAFRAME_MATRIX num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_createConeConstraintEx 553
+#define FN_createConeConstraintEx 596
#define CREATECONECONSTRAINTEX_ACTORA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define CREATECONECONSTRAINTEX_ACTORB num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define CREATECONECONSTRAINTEX_RBAFRAME_MATRIX num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define CREATECONECONSTRAINTEX_RBBFRAME_MATRIX num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_deleteConstraint 554
+#define FN_deleteConstraint 597
#define DELETECONSTRAINT_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getConstraintFrameOffsetA 555
+#define FN_getConstraintFrameOffsetA 598
#define GETCONSTRAINTFRAMEOFFSETA_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETCONSTRAINTFRAMEOFFSETA_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETCONSTRAINTFRAMEOFFSETA_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
@@ -1734,7 +1859,7 @@
#define GETCONSTRAINTFRAMEOFFSETA_RX num_var[4].nref[0].value[ num_var[4].byref_offset ]
#define GETCONSTRAINTFRAMEOFFSETA_RY num_var[5].nref[0].value[ num_var[5].byref_offset ]
#define GETCONSTRAINTFRAMEOFFSETA_RZ num_var[6].nref[0].value[ num_var[6].byref_offset ]
-#define FN_getConstraintFrameOffsetB 556
+#define FN_getConstraintFrameOffsetB 599
#define GETCONSTRAINTFRAMEOFFSETB_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETCONSTRAINTFRAMEOFFSETB_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETCONSTRAINTFRAMEOFFSETB_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
@@ -1742,43 +1867,43 @@
#define GETCONSTRAINTFRAMEOFFSETB_RX num_var[4].nref[0].value[ num_var[4].byref_offset ]
#define GETCONSTRAINTFRAMEOFFSETB_RY num_var[5].nref[0].value[ num_var[5].byref_offset ]
#define GETCONSTRAINTFRAMEOFFSETB_RZ num_var[6].nref[0].value[ num_var[6].byref_offset ]
-#define FN_useConstraintFrameOffset 557
+#define FN_useConstraintFrameOffset 600
#define USECONSTRAINTFRAMEOFFSET_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define USECONSTRAINTFRAMEOFFSET_FLAG num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_getHingeAngle 558
+#define FN_getHingeAngle 601
#define GETHINGEANGLE_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getHingeAngleEx 559
+#define FN_getHingeAngleEx 602
#define GETHINGEANGLEEX_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETHINGEANGLEEX_T_MATRIXA num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETHINGEANGLEEX_T_MATRIXB num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_getConstraintBreakingImpulseThreshold 560
+#define FN_getConstraintBreakingImpulseThreshold 603
#define GETCONSTRAINTBREAKINGIMPULSETHRESHOLD_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getConstraintAFrame 561
+#define FN_getConstraintAFrame 604
#define GETCONSTRAINTAFRAME_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETCONSTRAINTAFRAME_MA num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_getConstraintBFrame 562
+#define FN_getConstraintBFrame 605
#define GETCONSTRAINTBFRAME_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETCONSTRAINTBFRAME_MA num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_setHingeAxis 563
+#define FN_setHingeAxis 606
#define SETHINGEAXIS_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETHINGEAXIS_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETHINGEAXIS_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define SETHINGEAXIS_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_setConstraintBreakingImpulseThreshold 564
+#define FN_setConstraintBreakingImpulseThreshold 607
#define SETCONSTRAINTBREAKINGIMPULSETHRESHOLD_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETCONSTRAINTBREAKINGIMPULSETHRESHOLD_THRESHOLD num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_setConstraintFrames 565
+#define FN_setConstraintFrames 608
#define SETCONSTRAINTFRAMES_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETCONSTRAINTFRAMES_FRAMEA_MATRIX num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETCONSTRAINTFRAMES_FRAMEB_MATRIX num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_setHingeLimit 566
+#define FN_setHingeLimit 609
#define SETHINGELIMIT_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETHINGELIMIT_LOW num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETHINGELIMIT_HIGH num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define SETHINGELIMIT_SOFTNESS num_var[3].nref[0].value[ num_var[3].byref_offset ]
#define SETHINGELIMIT_BIAS_FACTOR num_var[4].nref[0].value[ num_var[4].byref_offset ]
#define SETHINGELIMIT_RELAXATION_FACTOR num_var[5].nref[0].value[ num_var[5].byref_offset ]
-#define FN_setConeLimit 567
+#define FN_setConeLimit 610
#define SETCONELIMIT_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETCONELIMIT_SWINGSPAN1 num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETCONELIMIT_SWINGSPAN2 num_var[2].nref[0].value[ num_var[2].byref_offset ]
@@ -1786,380 +1911,391 @@
#define SETCONELIMIT_SOFTNESS num_var[4].nref[0].value[ num_var[4].byref_offset ]
#define SETCONELIMIT_BIAS_FACTOR num_var[5].nref[0].value[ num_var[5].byref_offset ]
#define SETCONELIMIT_RELAXATION_FACTOR num_var[6].nref[0].value[ num_var[6].byref_offset ]
-#define FN_getHingeLimitBiasFactor 568
+#define FN_getHingeLimitBiasFactor 611
#define GETHINGELIMITBIASFACTOR_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getHingeLimitRelaxationFactor 569
+#define FN_getHingeLimitRelaxationFactor 612
#define GETHINGELIMITRELAXATIONFACTOR_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getHingeLimitSign 570
+#define FN_getHingeLimitSign 613
#define GETHINGELIMITSIGN_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getHingeSolveLimit 571
+#define FN_getHingeSolveLimit 614
#define GETHINGESOLVELIMIT_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_useHingeReferenceFrameA 572
+#define FN_useHingeReferenceFrameA 615
#define USEHINGEREFERENCEFRAMEA_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define USEHINGEREFERENCEFRAMEA_FLAG num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_getConstraintAppliedImpulse 573
+#define FN_getConstraintAppliedImpulse 616
#define GETCONSTRAINTAPPLIEDIMPULSE_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getConstraintFixedActor 574
+#define FN_getConstraintFixedActor 617
#define GETCONSTRAINTFIXEDACTOR_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getPointPivotA 575
+#define FN_getPointPivotA 618
#define GETPOINTPIVOTA_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETPOINTPIVOTA_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETPOINTPIVOTA_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define GETPOINTPIVOTA_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_getPointPivotB 576
+#define FN_getPointPivotB 619
#define GETPOINTPIVOTB_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETPOINTPIVOTB_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETPOINTPIVOTB_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define GETPOINTPIVOTB_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_getConstraintActorA 577
+#define FN_getConstraintActorA 620
#define GETCONSTRAINTACTORA_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getConstraintActorB 578
+#define FN_getConstraintActorB 621
#define GETCONSTRAINTACTORB_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_setConstraintSolverIterations 579
+#define FN_setConstraintSolverIterations 622
#define SETCONSTRAINTSOLVERITERATIONS_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETCONSTRAINTSOLVERITERATIONS_NUM num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_getConeBiasFactor 580
+#define FN_getConeBiasFactor 623
#define GETCONEBIASFACTOR_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getConeDamping 581
+#define FN_getConeDamping 624
#define GETCONEDAMPING_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getConeFixThresh 582
+#define FN_getConeFixThresh 625
#define GETCONEFIXTHRESH_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getConeLimit 583
+#define FN_getConeLimit 626
#define GETCONELIMIT_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETCONELIMIT_LIMIT_INDEX num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_getConstraintLimitSoftness 584
+#define FN_getConstraintLimitSoftness 627
#define GETCONSTRAINTLIMITSOFTNESS_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getConstraintSolverIterations 585
+#define FN_getConstraintSolverIterations 628
#define GETCONSTRAINTSOLVERITERATIONS_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getConeAnglePoint 586
+#define FN_getConeAnglePoint 629
#define GETCONEANGLEPOINT_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETCONEANGLEPOINT_ANGLE num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETCONEANGLEPOINT_C_LEN num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define GETCONEANGLEPOINT_X num_var[3].nref[0].value[ num_var[3].byref_offset ]
#define GETCONEANGLEPOINT_Y num_var[4].nref[0].value[ num_var[4].byref_offset ]
#define GETCONEANGLEPOINT_Z num_var[5].nref[0].value[ num_var[5].byref_offset ]
-#define FN_getConstraintAngularOnly 587
+#define FN_getConstraintAngularOnly 630
#define GETCONSTRAINTANGULARONLY_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getConeSolveSwingLimit 588
+#define FN_getConeSolveSwingLimit 631
#define GETCONESOLVESWINGLIMIT_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getConeSolveTwistLimit 589
+#define FN_getConeSolveTwistLimit 632
#define GETCONESOLVETWISTLIMIT_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getConeSwingSpan1 590
+#define FN_getConeSwingSpan1 633
#define GETCONESWINGSPAN1_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getConeSwingSpan2 591
+#define FN_getConeSwingSpan2 634
#define GETCONESWINGSPAN2_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getConeTwistAngle 592
+#define FN_getConeTwistAngle 635
#define GETCONETWISTANGLE_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getConeTwistLimitSign 593
+#define FN_getConeTwistLimitSign 636
#define GETCONETWISTLIMITSIGN_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getConeTwistSpan 594
+#define FN_getConeTwistSpan 637
#define GETCONETWISTSPAN_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_setConstraintAngularOnly 595
+#define FN_setConstraintAngularOnly 638
#define SETCONSTRAINTANGULARONLY_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETCONSTRAINTANGULARONLY_FLAG num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_setConeDamping 596
+#define FN_setConeDamping 639
#define SETCONEDAMPING_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETCONEDAMPING_DAMPING num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_setConeFixThresh 597
+#define FN_setConeFixThresh 640
#define SETCONEFIXTHRESH_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETCONEFIXTHRESH_FIXTHRESH num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_getSlideAnchorA 598
+#define FN_getSlideAnchorA 641
#define GETSLIDEANCHORA_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETSLIDEANCHORA_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETSLIDEANCHORA_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define GETSLIDEANCHORA_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_getSlideAnchorB 599
+#define FN_getSlideAnchorB 642
#define GETSLIDEANCHORB_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETSLIDEANCHORB_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETSLIDEANCHORB_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define GETSLIDEANCHORB_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_getSlideAngDepth 600
+#define FN_getSlideAngDepth 643
#define GETSLIDEANGDEPTH_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getSlideAngularPos 601
+#define FN_getSlideAngularPos 644
#define GETSLIDEANGULARPOS_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getSlideDampingDirAng 602
+#define FN_getSlideDampingDirAng 645
#define GETSLIDEDAMPINGDIRANG_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getSlideDampingDirLin 603
+#define FN_getSlideDampingDirLin 646
#define GETSLIDEDAMPINGDIRLIN_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getSlideDampingLimAng 604
+#define FN_getSlideDampingLimAng 647
#define GETSLIDEDAMPINGLIMANG_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getSlideDampingLimLin 605
+#define FN_getSlideDampingLimLin 648
#define GETSLIDEDAMPINGLIMLIN_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getSlideDampingOrthoAng 606
+#define FN_getSlideDampingOrthoAng 649
#define GETSLIDEDAMPINGORTHOANG_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getSlideDampingOrthoLin 607
+#define FN_getSlideDampingOrthoLin 650
#define GETSLIDEDAMPINGORTHOLIN_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getSlideLinearPos 608
+#define FN_getSlideLinearPos 651
#define GETSLIDELINEARPOS_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getSlideLinDepth 609
+#define FN_getSlideLinDepth 652
#define GETSLIDELINDEPTH_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getSlideLowerAngLimit 610
+#define FN_getSlideLowerAngLimit 653
#define GETSLIDELOWERANGLIMIT_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getSlideLowerLinLimit 611
+#define FN_getSlideLowerLinLimit 654
#define GETSLIDELOWERLINLIMIT_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getSlideRestitutionDirAng 612
+#define FN_getSlideRestitutionDirAng 655
#define GETSLIDERESTITUTIONDIRANG_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getSlideRestitutionDirLin 613
+#define FN_getSlideRestitutionDirLin 656
#define GETSLIDERESTITUTIONDIRLIN_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getSlideRestitutionLimAng 614
+#define FN_getSlideRestitutionLimAng 657
#define GETSLIDERESTITUTIONLIMANG_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getSlideRestitutionLimLin 615
+#define FN_getSlideRestitutionLimLin 658
#define GETSLIDERESTITUTIONLIMLIN_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getSlideRestitutionOrthoAng 616
+#define FN_getSlideRestitutionOrthoAng 659
#define GETSLIDERESTITUTIONORTHOANG_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getSlideRestitutionOrthoLin 617
+#define FN_getSlideRestitutionOrthoLin 660
#define GETSLIDERESTITUTIONORTHOLIN_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getSlideSoftnessDirAng 618
+#define FN_getSlideSoftnessDirAng 661
#define GETSLIDESOFTNESSDIRANG_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getSlideSoftnessDirLin 619
+#define FN_getSlideSoftnessDirLin 662
#define GETSLIDESOFTNESSDIRLIN_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getSlideSoftnessLimAng 620
+#define FN_getSlideSoftnessLimAng 663
#define GETSLIDESOFTNESSLIMANG_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getSlideSoftnessLimLin 621
+#define FN_getSlideSoftnessLimLin 664
#define GETSLIDESOFTNESSLIMLIN_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getSlideSoftnessOrthoAng 622
+#define FN_getSlideSoftnessOrthoAng 665
#define GETSLIDESOFTNESSORTHOANG_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getSlideSoftnessOrthoLin 623
+#define FN_getSlideSoftnessOrthoLin 666
#define GETSLIDESOFTNESSORTHOLIN_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getSlideSolveAngLimit 624
+#define FN_getSlideSolveAngLimit 667
#define GETSLIDESOLVEANGLIMIT_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getSlideSolveLinLimit 625
+#define FN_getSlideSolveLinLimit 668
#define GETSLIDESOLVELINLIMIT_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getSlideUpperAngLimit 626
+#define FN_getSlideUpperAngLimit 669
#define GETSLIDEUPPERANGLIMIT_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getSlideUpperLinLimit 627
+#define FN_getSlideUpperLinLimit 670
#define GETSLIDEUPPERLINLIMIT_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getSlideUseFrameOffset 628
+#define FN_getSlideUseFrameOffset 671
#define GETSLIDEUSEFRAMEOFFSET_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_setSlideDampingDirAng 629
+#define FN_setSlideDampingDirAng 672
#define SETSLIDEDAMPINGDIRANG_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETSLIDEDAMPINGDIRANG_N num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_setSlideDampingDirLin 630
+#define FN_setSlideDampingDirLin 673
#define SETSLIDEDAMPINGDIRLIN_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETSLIDEDAMPINGDIRLIN_N num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_setSlideDampingLimAng 631
+#define FN_setSlideDampingLimAng 674
#define SETSLIDEDAMPINGLIMANG_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETSLIDEDAMPINGLIMANG_N num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_setSlideDampingLimLin 632
+#define FN_setSlideDampingLimLin 675
#define SETSLIDEDAMPINGLIMLIN_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETSLIDEDAMPINGLIMLIN_N num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_setSlideDampingOrthoAng 633
+#define FN_setSlideDampingOrthoAng 676
#define SETSLIDEDAMPINGORTHOANG_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETSLIDEDAMPINGORTHOANG_N num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_setSlideDampingOrthoLin 634
+#define FN_setSlideDampingOrthoLin 677
#define SETSLIDEDAMPINGORTHOLIN_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETSLIDEDAMPINGORTHOLIN_N num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_setSlideLowerAngLimit 635
+#define FN_setSlideLowerAngLimit 678
#define SETSLIDELOWERANGLIMIT_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETSLIDELOWERANGLIMIT_N num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_setSlideLowerLinLimit 636
+#define FN_setSlideLowerLinLimit 679
#define SETSLIDELOWERLINLIMIT_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETSLIDELOWERLINLIMIT_N num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_setSlideRestitutionDirAng 637
+#define FN_setSlideRestitutionDirAng 680
#define SETSLIDERESTITUTIONDIRANG_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETSLIDERESTITUTIONDIRANG_N num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_setSlideRestitutionDirLin 638
+#define FN_setSlideRestitutionDirLin 681
#define SETSLIDERESTITUTIONDIRLIN_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETSLIDERESTITUTIONDIRLIN_N num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_setSlideRestitutionLimAng 639
+#define FN_setSlideRestitutionLimAng 682
#define SETSLIDERESTITUTIONLIMANG_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETSLIDERESTITUTIONLIMANG_N num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_setSlideRestitutionLimLin 640
+#define FN_setSlideRestitutionLimLin 683
#define SETSLIDERESTITUTIONLIMLIN_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETSLIDERESTITUTIONLIMLIN_N num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_setSlideRestitutionOrthoAng 641
+#define FN_setSlideRestitutionOrthoAng 684
#define SETSLIDERESTITUTIONORTHOANG_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETSLIDERESTITUTIONORTHOANG_N num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_setSlideRestitutionOrthoLin 642
+#define FN_setSlideRestitutionOrthoLin 685
#define SETSLIDERESTITUTIONORTHOLIN_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETSLIDERESTITUTIONORTHOLIN_N num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_setSlideSoftnessDirAng 643
+#define FN_setSlideSoftnessDirAng 686
#define SETSLIDESOFTNESSDIRANG_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETSLIDESOFTNESSDIRANG_N num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_setSlideSoftnessDirLin 644
+#define FN_setSlideSoftnessDirLin 687
#define SETSLIDESOFTNESSDIRLIN_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETSLIDESOFTNESSDIRLIN_N num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_setSlideSoftnessLimAng 645
+#define FN_setSlideSoftnessLimAng 688
#define SETSLIDESOFTNESSLIMANG_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETSLIDESOFTNESSLIMANG_N num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_setSlideSoftnessLimLin 646
+#define FN_setSlideSoftnessLimLin 689
#define SETSLIDESOFTNESSLIMLIN_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETSLIDESOFTNESSLIMLIN_N num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_setSlideSoftnessOrthoAng 647
+#define FN_setSlideSoftnessOrthoAng 690
#define SETSLIDESOFTNESSORTHOANG_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETSLIDESOFTNESSORTHOANG_N num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_setSlideSoftnessOrthoLin 648
+#define FN_setSlideSoftnessOrthoLin 691
#define SETSLIDESOFTNESSORTHOLIN_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETSLIDESOFTNESSORTHOLIN_N num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_setSlideUpperAngLimit 649
+#define FN_setSlideUpperAngLimit 692
#define SETSLIDEUPPERANGLIMIT_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETSLIDEUPPERANGLIMIT_N num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_setSlideUpperLinLimit 650
+#define FN_setSlideUpperLinLimit 693
#define SETSLIDEUPPERLINLIMIT_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETSLIDEUPPERLINLIMIT_N num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_ConstraintExists 651
+#define FN_ConstraintExists 694
#define CONSTRAINTEXISTS_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_SetCameraPosition 652
+#define FN_SetCameraPosition 695
#define SETCAMERAPOSITION_X num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETCAMERAPOSITION_Y num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETCAMERAPOSITION_Z num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_GetCameraPosition 653
+#define FN_GetCameraPosition 696
#define GETCAMERAPOSITION_X num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETCAMERAPOSITION_Y num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETCAMERAPOSITION_Z num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_TranslateCamera 654
+#define FN_TranslateCamera 697
#define TRANSLATECAMERA_X num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define TRANSLATECAMERA_Y num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define TRANSLATECAMERA_Z num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_SetCameraRotation 655
+#define FN_SetCameraRotation 698
#define SETCAMERAROTATION_X num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETCAMERAROTATION_Y num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETCAMERAROTATION_Z num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_GetCameraRotation 656
+#define FN_GetCameraRotation 699
#define GETCAMERAROTATION_X num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETCAMERAROTATION_Y num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETCAMERAROTATION_Z num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_RotateCamera 657
+#define FN_RotateCamera 700
#define ROTATECAMERA_X num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define ROTATECAMERA_Y num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define ROTATECAMERA_Z num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_SetCameraFOV 658
+#define FN_SetCameraFOV 701
#define SETCAMERAFOV_FOV num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_GetCameraFOV 659
-#define FN_SetCameraAspectRatio 660
+#define FN_GetCameraFOV 702
+#define FN_SetCameraAspectRatio 703
#define SETCAMERAASPECTRATIO_ASPECT num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_GetCameraAspectRatio 661
-#define FN_SetCameraFarValue 662
+#define FN_GetCameraAspectRatio 704
+#define FN_SetCameraFarValue 705
#define SETCAMERAFARVALUE_ZF num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_GetCameraFarValue 663
-#define FN_SetCameraNearValue 664
+#define FN_GetCameraFarValue 706
+#define FN_SetCameraNearValue 707
#define SETCAMERANEARVALUE_ZN num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_GetCameraNearValue 665
-#define FN_AddSceneSkyBox 666
+#define FN_GetCameraNearValue 708
+#define FN_SetProjectionMatrix 709
+#define SETPROJECTIONMATRIX_MATA num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define SETPROJECTIONMATRIX_PROJECTION_TYPE num_var[1].nref[0].value[ num_var[1].byref_offset ]
+#define FN_GetProjectionMatrix 710
+#define GETPROJECTIONMATRIX_MATA num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define FN_GetWorldToViewportPosition 711
+#define GETWORLDTOVIEWPORTPOSITION_X num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define GETWORLDTOVIEWPORTPOSITION_Y num_var[1].nref[0].value[ num_var[1].byref_offset ]
+#define GETWORLDTOVIEWPORTPOSITION_Z num_var[2].nref[0].value[ num_var[2].byref_offset ]
+#define GETWORLDTOVIEWPORTPOSITION_VX num_var[3].nref[0].value[ num_var[3].byref_offset ]
+#define GETWORLDTOVIEWPORTPOSITION_VY num_var[4].nref[0].value[ num_var[4].byref_offset ]
+#define FN_AddSceneSkyBox 712
#define ADDSCENESKYBOX_IMG_TOP num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define ADDSCENESKYBOX_IMG_BOTTOM num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define ADDSCENESKYBOX_IMG_LEFT num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define ADDSCENESKYBOX_IMG_RIGHT num_var[3].nref[0].value[ num_var[3].byref_offset ]
#define ADDSCENESKYBOX_IMG_FRONT num_var[4].nref[0].value[ num_var[4].byref_offset ]
#define ADDSCENESKYBOX_IMG_BACK num_var[5].nref[0].value[ num_var[5].byref_offset ]
-#define FN_AddSceneSkyDome 667
+#define FN_AddSceneSkyDome 713
#define ADDSCENESKYDOME_IMG num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_AddSceneSkyDomeEx 668
+#define FN_AddSceneSkyDomeEx 714
#define ADDSCENESKYDOMEEX_IMG num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define ADDSCENESKYDOMEEX_HORIRES num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define ADDSCENESKYDOMEEX_VERTRES num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define ADDSCENESKYDOMEEX_TXPERCENTAGE num_var[3].nref[0].value[ num_var[3].byref_offset ]
#define ADDSCENESKYDOMEEX_SPHEREPERCENTAGE num_var[4].nref[0].value[ num_var[4].byref_offset ]
#define ADDSCENESKYDOMEEX_RADIUS num_var[5].nref[0].value[ num_var[5].byref_offset ]
-#define FN_RemoveSceneSky 669
-#define FN_SetWorld3DMaxSubSteps 670
+#define FN_RemoveSceneSky 715
+#define FN_SetWorld3DMaxSubSteps 716
#define SETWORLD3DMAXSUBSTEPS_STEPS num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_SetWorld3DTimeStep 671
+#define FN_SetWorld3DTimeStep 717
#define SETWORLD3DTIMESTEP_TS num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_startParticleEmitter 672
+#define FN_startParticleEmitter 718
#define STARTPARTICLEEMITTER_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_stopParticleEmitter 673
+#define FN_stopParticleEmitter 719
#define STOPPARTICLEEMITTER_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_setParticleDirection 674
+#define FN_setParticleDirection 720
#define SETPARTICLEDIRECTION_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETPARTICLEDIRECTION_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETPARTICLEDIRECTION_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define SETPARTICLEDIRECTION_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_getParticleDirection 675
+#define FN_getParticleDirection 721
#define GETPARTICLEDIRECTION_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETPARTICLEDIRECTION_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETPARTICLEDIRECTION_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define GETPARTICLEDIRECTION_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_useParticleEveryMeshVertex 676
+#define FN_useParticleEveryMeshVertex 722
#define USEPARTICLEEVERYMESHVERTEX_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define USEPARTICLEEVERYMESHVERTEX_FLAG num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_particleIsUsingEveryMeshVertex 677
+#define FN_particleIsUsingEveryMeshVertex 723
#define PARTICLEISUSINGEVERYMESHVERTEX_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_setParticleNormalDirectionMod 678
+#define FN_setParticleNormalDirectionMod 724
#define SETPARTICLENORMALDIRECTIONMOD_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETPARTICLENORMALDIRECTIONMOD_ND_MOD num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_getParticleNormalDirectionMod 679
+#define FN_getParticleNormalDirectionMod 725
#define GETPARTICLENORMALDIRECTIONMOD_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_useParticleNormalDirection 680
+#define FN_useParticleNormalDirection 726
#define USEPARTICLENORMALDIRECTION_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define USEPARTICLENORMALDIRECTION_FLAG num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_particleIsUsingNormalDirection 681
+#define FN_particleIsUsingNormalDirection 727
#define PARTICLEISUSINGNORMALDIRECTION_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_setParticleMesh 682
+#define FN_setParticleMesh 728
#define SETPARTICLEMESH_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETPARTICLEMESH_MESH num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_setMinParticlesPerSecond 683
+#define FN_setMinParticlesPerSecond 729
#define SETMINPARTICLESPERSECOND_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETMINPARTICLESPERSECOND_MINPARTICLESPERSECOND num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_getMinParticlesPerSecond 684
+#define FN_getMinParticlesPerSecond 730
#define GETMINPARTICLESPERSECOND_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_setMaxParticlesPerSecond 685
+#define FN_setMaxParticlesPerSecond 731
#define SETMAXPARTICLESPERSECOND_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETMAXPARTICLESPERSECOND_MAXPARTICLESPERSECOND num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_getMaxParticlesPerSecond 686
+#define FN_getMaxParticlesPerSecond 732
#define GETMAXPARTICLESPERSECOND_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_setParticleMinStartColor 687
+#define FN_setParticleMinStartColor 733
#define SETPARTICLEMINSTARTCOLOR_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETPARTICLEMINSTARTCOLOR_COLOR num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_getParticleMinStartColor 688
+#define FN_getParticleMinStartColor 734
#define GETPARTICLEMINSTARTCOLOR_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_setParticleMaxStartColor 689
+#define FN_setParticleMaxStartColor 735
#define SETPARTICLEMAXSTARTCOLOR_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETPARTICLEMAXSTARTCOLOR_COLOR num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_getParticleMaxStartColor 690
+#define FN_getParticleMaxStartColor 736
#define GETPARTICLEMAXSTARTCOLOR_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_setParticleMinLife 691
+#define FN_setParticleMinLife 737
#define SETPARTICLEMINLIFE_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETPARTICLEMINLIFE_MINLIFE num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_getParticleMinLife 692
+#define FN_getParticleMinLife 738
#define GETPARTICLEMINLIFE_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_setParticleMaxLife 693
+#define FN_setParticleMaxLife 739
#define SETPARTICLEMAXLIFE_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETPARTICLEMAXLIFE_MAXLIFE num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_getParticleMaxLife 694
+#define FN_getParticleMaxLife 740
#define GETPARTICLEMAXLIFE_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_setParticleMaxAngle 695
+#define FN_setParticleMaxAngle 741
#define SETPARTICLEMAXANGLE_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETPARTICLEMAXANGLE_MAXANGLE num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_getParticleMaxAngle 696
+#define FN_getParticleMaxAngle 742
#define GETPARTICLEMAXANGLE_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_setParticleMinStartSize 697
+#define FN_setParticleMinStartSize 743
#define SETPARTICLEMINSTARTSIZE_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETPARTICLEMINSTARTSIZE_W num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETPARTICLEMINSTARTSIZE_H num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_getParticleMinStartSize 698
+#define FN_getParticleMinStartSize 744
#define GETPARTICLEMINSTARTSIZE_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETPARTICLEMINSTARTSIZE_W num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETPARTICLEMINSTARTSIZE_H num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_setParticleMaxStartSize 699
+#define FN_setParticleMaxStartSize 745
#define SETPARTICLEMAXSTARTSIZE_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETPARTICLEMAXSTARTSIZE_W num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETPARTICLEMAXSTARTSIZE_H num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_getParticleMaxStartSize 700
+#define FN_getParticleMaxStartSize 746
#define GETPARTICLEMAXSTARTSIZE_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETPARTICLEMAXSTARTSIZE_W num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETPARTICLEMAXSTARTSIZE_H num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_setParticleCenter 701
+#define FN_setParticleCenter 747
#define SETPARTICLECENTER_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETPARTICLECENTER_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETPARTICLECENTER_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define SETPARTICLECENTER_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_getParticleCenter 702
+#define FN_getParticleCenter 748
#define GETPARTICLECENTER_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETPARTICLECENTER_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETPARTICLECENTER_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define GETPARTICLECENTER_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_setParticleRadius 703
+#define FN_setParticleRadius 749
#define SETPARTICLERADIUS_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETPARTICLERADIUS_RADIUS num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_getParticleRadius 704
+#define FN_getParticleRadius 750
#define GETPARTICLERADIUS_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_setParticleRingThickness 705
+#define FN_setParticleRingThickness 751
#define SETPARTICLERINGTHICKNESS_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETPARTICLERINGTHICKNESS_RINGTHICKNESS num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_getParticleRingThickness 706
+#define FN_getParticleRingThickness 752
#define GETPARTICLERINGTHICKNESS_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_setParticleBox 707
+#define FN_setParticleBox 753
#define SETPARTICLEBOX_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETPARTICLEBOX_MIN_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETPARTICLEBOX_MIN_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
@@ -2167,7 +2303,7 @@
#define SETPARTICLEBOX_MAX_X num_var[4].nref[0].value[ num_var[4].byref_offset ]
#define SETPARTICLEBOX_MAX_Y num_var[5].nref[0].value[ num_var[5].byref_offset ]
#define SETPARTICLEBOX_MAX_Z num_var[6].nref[0].value[ num_var[6].byref_offset ]
-#define FN_getParticleBox 708
+#define FN_getParticleBox 754
#define GETPARTICLEBOX_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETPARTICLEBOX_MIN_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETPARTICLEBOX_MIN_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
@@ -2175,84 +2311,84 @@
#define GETPARTICLEBOX_MAX_X num_var[4].nref[0].value[ num_var[4].byref_offset ]
#define GETPARTICLEBOX_MAX_Y num_var[5].nref[0].value[ num_var[5].byref_offset ]
#define GETPARTICLEBOX_MAX_Z num_var[6].nref[0].value[ num_var[6].byref_offset ]
-#define FN_setParticleNormal 709
+#define FN_setParticleNormal 755
#define SETPARTICLENORMAL_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETPARTICLENORMAL_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETPARTICLENORMAL_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define SETPARTICLENORMAL_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_getParticleNormal 710
+#define FN_getParticleNormal 756
#define GETPARTICLENORMAL_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETPARTICLENORMAL_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETPARTICLENORMAL_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define GETPARTICLENORMAL_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_setParticleLength 711
+#define FN_setParticleLength 757
#define SETPARTICLELENGTH_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETPARTICLELENGTH_P_LEN num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_getParticleLength 712
+#define FN_getParticleLength 758
#define GETPARTICLELENGTH_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_useParticleOutlineOnly 713
+#define FN_useParticleOutlineOnly 759
#define USEPARTICLEOUTLINEONLY_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define USEPARTICLEOUTLINEONLY_FLAG num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_particleIsUsingOutlineOnly 714
+#define FN_particleIsUsingOutlineOnly 760
#define PARTICLEISUSINGOUTLINEONLY_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getParticleType 715
+#define FN_getParticleType 761
#define GETPARTICLETYPE_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_lightIsCastingShadow 716
+#define FN_lightIsCastingShadow 762
#define LIGHTISCASTINGSHADOW_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getLightType 717
+#define FN_getLightType 763
#define GETLIGHTTYPE_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getLightRadius 718
+#define FN_getLightRadius 764
#define GETLIGHTRADIUS_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_setLightType 719
+#define FN_setLightType 765
#define SETLIGHTTYPE_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETLIGHTTYPE_LIGHT_TYPE num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_setLightRadius 720
+#define FN_setLightRadius 766
#define SETLIGHTRADIUS_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETLIGHTRADIUS_RADIUS num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_setLightShadowCast 721
+#define FN_setLightShadowCast 767
#define SETLIGHTSHADOWCAST_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETLIGHTSHADOWCAST_FLAG num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_SetLightAmbientColor 722
+#define FN_SetLightAmbientColor 768
#define SETLIGHTAMBIENTCOLOR_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETLIGHTAMBIENTCOLOR_COLOR num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_GetLightAmbientColor 723
+#define FN_GetLightAmbientColor 769
#define GETLIGHTAMBIENTCOLOR_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_SetLightAttenuation 724
+#define FN_SetLightAttenuation 770
#define SETLIGHTATTENUATION_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETLIGHTATTENUATION_L_CONSTANT num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETLIGHTATTENUATION_L_LINEAR num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define SETLIGHTATTENUATION_L_QUADRATIC num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_GetLightAttenuation 725
+#define FN_GetLightAttenuation 771
#define GETLIGHTATTENUATION_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETLIGHTATTENUATION_CONSTANT num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETLIGHTATTENUATION_LINEAR num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define GETLIGHTATTENUATION_QUADRATIC num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_SetLightDiffuseColor 726
+#define FN_SetLightDiffuseColor 772
#define SETLIGHTDIFFUSECOLOR_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETLIGHTDIFFUSECOLOR_COLOR num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_GetLightDiffuseColor 727
+#define FN_GetLightDiffuseColor 773
#define GETLIGHTDIFFUSECOLOR_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_SetLightFalloff 728
+#define FN_SetLightFalloff 774
#define SETLIGHTFALLOFF_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETLIGHTFALLOFF_FALLOFF num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_GetLightFalloff 729
+#define FN_GetLightFalloff 775
#define GETLIGHTFALLOFF_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_SetLightInnerCone 730
+#define FN_SetLightInnerCone 776
#define SETLIGHTINNERCONE_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETLIGHTINNERCONE_ANGLE num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_GetLightInnerCone 731
+#define FN_GetLightInnerCone 777
#define GETLIGHTINNERCONE_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_SetLightOuterCone 732
+#define FN_SetLightOuterCone 778
#define SETLIGHTOUTERCONE_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETLIGHTOUTERCONE_ANGLE num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_GetLightOuterCone 733
+#define FN_GetLightOuterCone 779
#define GETLIGHTOUTERCONE_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_SetLightSpecularColor 734
+#define FN_SetLightSpecularColor 780
#define SETLIGHTSPECULARCOLOR_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETLIGHTSPECULARCOLOR_COLOR num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_GetLightSpecularColor 735
+#define FN_GetLightSpecularColor 781
#define GETLIGHTSPECULARCOLOR_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_GetTerrainPatchAABB 736
+#define FN_GetTerrainPatchAABB 782
#define GETTERRAINPATCHAABB_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETTERRAINPATCHAABB_PATCHX num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETTERRAINPATCHAABB_PATCHZ num_var[2].nref[0].value[ num_var[2].byref_offset ]
@@ -2262,230 +2398,240 @@
#define GETTERRAINPATCHAABB_MAXX num_var[6].nref[0].value[ num_var[6].byref_offset ]
#define GETTERRAINPATCHAABB_MAXY num_var[7].nref[0].value[ num_var[7].byref_offset ]
#define GETTERRAINPATCHAABB_MAXZ num_var[8].nref[0].value[ num_var[8].byref_offset ]
-#define FN_GetTerrainPatchLOD 737
+#define FN_GetTerrainPatchLOD 783
#define GETTERRAINPATCHLOD_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETTERRAINPATCHLOD_PATCHX num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETTERRAINPATCHLOD_PATCHZ num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_GetTerrainHeight 738
+#define FN_GetTerrainHeight 784
#define GETTERRAINHEIGHT_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETTERRAINHEIGHT_PATCHX num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETTERRAINHEIGHT_PATCHZ num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_GetTerrainCenter 739
+#define FN_GetTerrainCenter 785
#define GETTERRAINCENTER_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETTERRAINCENTER_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETTERRAINCENTER_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define GETTERRAINCENTER_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_SetTerrainLODDistance 740
+#define FN_SetTerrainLODDistance 786
#define SETTERRAINLODDISTANCE_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETTERRAINLODDISTANCE_LOD num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETTERRAINLODDISTANCE_DISTANCE num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_ScaleTerrainTexture 741
+#define FN_ScaleTerrainTexture 787
#define SCALETERRAINTEXTURE_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SCALETERRAINTEXTURE_SCALE num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SCALETERRAINTEXTURE_SCALE2 num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_SetTerrainCameraMovementDelta 742
+#define FN_SetTerrainCameraMovementDelta 788
#define SETTERRAINCAMERAMOVEMENTDELTA_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETTERRAINCAMERAMOVEMENTDELTA_DELTA num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_SetTerrainCameraRotationDelta 743
+#define FN_SetTerrainCameraRotationDelta 789
#define SETTERRAINCAMERAROTATIONDELTA_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETTERRAINCAMERAROTATIONDELTA_DELTA num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_SetTerrainPatchLOD 744
+#define FN_SetTerrainPatchLOD 790
#define SETTERRAINPATCHLOD_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETTERRAINPATCHLOD_PATCHX num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETTERRAINPATCHLOD_PATCHZ num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define SETTERRAINPATCHLOD_LOD num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_SetActorAnimation 745
+#define FN_CreateActorAnimation 791
+#define CREATEACTORANIMATION_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define CREATEACTORANIMATION_START_FRAME num_var[1].nref[0].value[ num_var[1].byref_offset ]
+#define CREATEACTORANIMATION_END_FRAME num_var[2].nref[0].value[ num_var[2].byref_offset ]
+#define CREATEACTORANIMATION_SPEED num_var[3].nref[0].value[ num_var[3].byref_offset ]
+#define FN_SetActorAnimation 792
#define SETACTORANIMATION_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define SETACTORANIMATION_START_FRAME num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define SETACTORANIMATION_END_FRAME num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_SetActorAnimationSpeed 746
+#define SETACTORANIMATION_ANIMATION num_var[1].nref[0].value[ num_var[1].byref_offset ]
+#define SETACTORANIMATION_NUM_LOOPS num_var[2].nref[0].value[ num_var[2].byref_offset ]
+#define FN_SetActorAnimationSpeed 793
#define SETACTORANIMATIONSPEED_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define SETACTORANIMATIONSPEED_SPEED num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_SetActorFrame 747
+#define SETACTORANIMATIONSPEED_ANIMATION num_var[1].nref[0].value[ num_var[1].byref_offset ]
+#define SETACTORANIMATIONSPEED_SPEED num_var[2].nref[0].value[ num_var[2].byref_offset ]
+#define FN_SetActorAnimationFrames 794
+#define SETACTORANIMATIONFRAMES_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define SETACTORANIMATIONFRAMES_ANIMATION num_var[1].nref[0].value[ num_var[1].byref_offset ]
+#define SETACTORANIMATIONFRAMES_START_FRAME num_var[2].nref[0].value[ num_var[2].byref_offset ]
+#define SETACTORANIMATIONFRAMES_END_FRAME num_var[3].nref[0].value[ num_var[3].byref_offset ]
+#define FN_GetActorCurrentAnimation 795
+#define GETACTORCURRENTANIMATION_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define FN_GetActorAnimationSpeed 796
+#define GETACTORANIMATIONSPEED_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define GETACTORANIMATIONSPEED_ANIMATION num_var[1].nref[0].value[ num_var[1].byref_offset ]
+#define FN_GetActorAnimationStartFrame 797
+#define GETACTORANIMATIONSTARTFRAME_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define GETACTORANIMATIONSTARTFRAME_ANIMATION num_var[1].nref[0].value[ num_var[1].byref_offset ]
+#define FN_GetActorAnimationEndFrame 798
+#define GETACTORANIMATIONENDFRAME_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define GETACTORANIMATIONENDFRAME_ANIMATION num_var[1].nref[0].value[ num_var[1].byref_offset ]
+#define FN_SetActorFrame 799
#define SETACTORFRAME_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETACTORFRAME_FRAME num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_SetActorMD2Animation 748
+#define FN_GetActorFrame 800
+#define GETACTORFRAME_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define FN_ActorAnimationIsPlaying 801
+#define ACTORANIMATIONISPLAYING_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define FN_NumActorAnimationLoops 802
+#define NUMACTORANIMATIONLOOPS_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define FN_SetActorMD2Animation 803
#define SETACTORMD2ANIMATION_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETACTORMD2ANIMATION_ANIM num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_SetActorMD2AnimationByName 749
+#define SETACTORMD2ANIMATION_NUM_LOOPS num_var[2].nref[0].value[ num_var[2].byref_offset ]
+#define FN_SetActorMD2AnimationByName 804
#define SETACTORMD2ANIMATIONBYNAME_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETACTORMD2ANIMATIONBYNAME_ANIM_NAME$ str_var[0].sref[0].value[ str_var[0].byref_offset ]
-#define FN_GetActorAnimationSpeed 750
-#define GETACTORANIMATIONSPEED_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_GetActorEndFrame 751
-#define GETACTORENDFRAME_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_GetActorCurrentFrame 752
-#define GETACTORCURRENTFRAME_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_GetActorStartFrame 753
-#define GETACTORSTARTFRAME_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_StartActorTransition 754
-#define STARTACTORTRANSITION_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define STARTACTORTRANSITION_FRAME num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define STARTACTORTRANSITION_TRANSITION_TIME num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_StopActorTransition 755
-#define STOPACTORTRANSITION_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_ActorIsInTransition 756
-#define ACTORISINTRANSITION_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_GetActorTransitionTime 757
-#define GETACTORTRANSITIONTIME_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_actorAnimationIsLooped 758
-#define ACTORANIMATIONISLOOPED_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_loopActorAnimation 759
-#define LOOPACTORANIMATION_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define LOOPACTORANIMATION_FLAG num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_createMaterial 760
-#define FN_deleteMaterial 761
+#define SETACTORMD2ANIMATIONBYNAME_NUM_LOOPS num_var[1].nref[0].value[ num_var[1].byref_offset ]
+#define FN_DeleteActorAnimation 805
+#define DELETEACTORANIMATION_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define DELETEACTORANIMATION_ANIMATION num_var[1].nref[0].value[ num_var[1].byref_offset ]
+#define FN_createMaterial 806
+#define FN_deleteMaterial 807
#define DELETEMATERIAL_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_setActorMaterial 762
+#define FN_setActorMaterial 808
#define SETACTORMATERIAL_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETACTORMATERIAL_MATERIAL_NUM num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETACTORMATERIAL_MATERIAL_ID num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_getActorMaterial 763
+#define FN_getActorMaterial 809
#define GETACTORMATERIAL_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETACTORMATERIAL_MATERIAL_NUM num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_copyActorMaterial 764
+#define FN_copyActorMaterial 810
#define COPYACTORMATERIAL_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define COPYACTORMATERIAL_MATERIAL_NUM num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_copyMaterial 765
+#define FN_copyMaterial 811
#define COPYMATERIAL_SMATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_setMaterialTextureCanvas 766
+#define FN_setMaterialTextureCanvas 812
#define SETMATERIALTEXTURECANVAS_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETMATERIALTEXTURECANVAS_LEVEL num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETMATERIALTEXTURECANVAS_CANVAS_ID num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_setMaterialAmbientColor 767
+#define FN_setMaterialAmbientColor 813
#define SETMATERIALAMBIENTCOLOR_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETMATERIALAMBIENTCOLOR_COLOR num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_getMaterialAmbientColor 768
+#define FN_getMaterialAmbientColor 814
#define GETMATERIALAMBIENTCOLOR_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_setMaterialAntiAliasing 769
+#define FN_setMaterialAntiAliasing 815
#define SETMATERIALANTIALIASING_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETMATERIALANTIALIASING_AA num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_getMaterialAntiAliasing 770
+#define FN_getMaterialAntiAliasing 816
#define GETMATERIALANTIALIASING_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_setMaterialBackfaceCulling 771
+#define FN_setMaterialBackfaceCulling 817
#define SETMATERIALBACKFACECULLING_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETMATERIALBACKFACECULLING_FLAG num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_getMaterialBackfaceCulling 772
+#define FN_getMaterialBackfaceCulling 818
#define GETMATERIALBACKFACECULLING_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_setMaterialBlendFactor 773
+#define FN_setMaterialBlendFactor 819
#define SETMATERIALBLENDFACTOR_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETMATERIALBLENDFACTOR_BF num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_getMaterialBlendFactor 774
+#define FN_getMaterialBlendFactor 820
#define GETMATERIALBLENDFACTOR_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_setMaterialBlendMode 775
+#define FN_setMaterialBlendMode 821
#define SETMATERIALBLENDMODE_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETMATERIALBLENDMODE_BLEND_MODE num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_getMaterialBlendMode 776
+#define FN_getMaterialBlendMode 822
#define GETMATERIALBLENDMODE_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_setMaterialColorMask 777
+#define FN_setMaterialColorMask 823
#define SETMATERIALCOLORMASK_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETMATERIALCOLORMASK_COLOR_MASK num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_getMaterialColorMask 778
+#define FN_getMaterialColorMask 824
#define GETMATERIALCOLORMASK_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_setMaterialColorMode 779
+#define FN_setMaterialColorMode 825
#define SETMATERIALCOLORMODE_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETMATERIALCOLORMODE_COLOR_MODE num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_getMaterialColorMode 780
+#define FN_getMaterialColorMode 826
#define GETMATERIALCOLORMODE_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_setMaterialDiffuseColor 781
+#define FN_setMaterialDiffuseColor 827
#define SETMATERIALDIFFUSECOLOR_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETMATERIALDIFFUSECOLOR_COLOR num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_getMaterialDiffuseColor 782
+#define FN_getMaterialDiffuseColor 828
#define GETMATERIALDIFFUSECOLOR_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_setMaterialEmissiveColor 783
+#define FN_setMaterialEmissiveColor 829
#define SETMATERIALEMISSIVECOLOR_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETMATERIALEMISSIVECOLOR_COLOR num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_getMaterialEmissiveColor 784
+#define FN_getMaterialEmissiveColor 830
#define GETMATERIALEMISSIVECOLOR_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_setMaterialFog 785
+#define FN_setMaterialFog 831
#define SETMATERIALFOG_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETMATERIALFOG_FLAG num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_getMaterialFog 786
+#define FN_getMaterialFog 832
#define GETMATERIALFOG_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_setMaterialFrontfaceCulling 787
+#define FN_setMaterialFrontfaceCulling 833
#define SETMATERIALFRONTFACECULLING_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETMATERIALFRONTFACECULLING_FLAG num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_getMaterialFrontfaceCulling 788
+#define FN_getMaterialFrontfaceCulling 834
#define GETMATERIALFRONTFACECULLING_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_setMaterialGouraudShading 789
+#define FN_setMaterialGouraudShading 835
#define SETMATERIALGOURAUDSHADING_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETMATERIALGOURAUDSHADING_FLAG num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_materialIsGouraudShaded 790
+#define FN_materialIsGouraudShaded 836
#define MATERIALISGOURAUDSHADED_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_materialIsAplhaBlend 791
+#define FN_materialIsAplhaBlend 837
#define MATERIALISAPLHABLEND_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_materialIsTransparent 792
+#define FN_materialIsTransparent 838
#define MATERIALISTRANSPARENT_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_setMaterialLighting 793
+#define FN_setMaterialLighting 839
#define SETMATERIALLIGHTING_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETMATERIALLIGHTING_FLAG num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_materialIsLit 794
+#define FN_materialIsLit 840
#define MATERIALISLIT_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_setMaterialType 795
+#define FN_setMaterialType 841
#define SETMATERIALTYPE_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETMATERIALTYPE_MAT_TYPE num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_getMaterialType 796
+#define FN_getMaterialType 842
#define GETMATERIALTYPE_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_setMaterialNormalize 797
+#define FN_setMaterialNormalize 843
#define SETMATERIALNORMALIZE_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETMATERIALNORMALIZE_FLAG num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_materialIsNormalized 798
+#define FN_materialIsNormalized 844
#define MATERIALISNORMALIZED_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_setMaterialPointCloud 799
+#define FN_setMaterialPointCloud 845
#define SETMATERIALPOINTCLOUD_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETMATERIALPOINTCLOUD_FLAG num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_materialIsPointCloud 800
+#define FN_materialIsPointCloud 846
#define MATERIALISPOINTCLOUD_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_setMaterialFlag 801
+#define FN_setMaterialFlag 847
#define SETMATERIALFLAG_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETMATERIALFLAG_MATERIAL_FLAG num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETMATERIALFLAG_F_VALUE num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_getMaterialFlag 802
+#define FN_getMaterialFlag 848
#define GETMATERIALFLAG_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETMATERIALFLAG_MATERIAL_FLAG num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_setMaterialTexture 803
+#define FN_setMaterialTexture 849
#define SETMATERIALTEXTURE_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETMATERIALTEXTURE_LEVEL num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETMATERIALTEXTURE_IMG_ID num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_setMaterialShininess 804
+#define FN_setMaterialShininess 850
#define SETMATERIALSHININESS_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETMATERIALSHININESS_SHININESS num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_getMaterialShininess 805
+#define FN_getMaterialShininess 851
#define GETMATERIALSHININESS_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_setMaterialSpecularColor 806
+#define FN_setMaterialSpecularColor 852
#define SETMATERIALSPECULARCOLOR_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETMATERIALSPECULARCOLOR_COLOR num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_getMaterialSpecularColor 807
+#define FN_getMaterialSpecularColor 853
#define GETMATERIALSPECULARCOLOR_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_setMaterialThickness 808
+#define FN_setMaterialThickness 854
#define SETMATERIALTHICKNESS_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETMATERIALTHICKNESS_THICKNESS num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_getMaterialThickness 809
+#define FN_getMaterialThickness 855
#define GETMATERIALTHICKNESS_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_setMaterialWireframe 810
+#define FN_setMaterialWireframe 856
#define SETMATERIALWIREFRAME_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETMATERIALWIREFRAME_FLAG num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_materialIsWireframe 811
+#define FN_materialIsWireframe 857
#define MATERIALISWIREFRAME_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_setActorTexture 812
+#define FN_setActorTexture 858
#define SETACTORTEXTURE_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETACTORTEXTURE_LAYER num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETACTORTEXTURE_IMAGE_ID num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_getActorMaterialCount 813
+#define FN_getActorMaterialCount 859
#define GETACTORMATERIALCOUNT_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_setActorMaterialFlag 814
+#define FN_setActorMaterialFlag 860
#define SETACTORMATERIALFLAG_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETACTORMATERIALFLAG_FLAG num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETACTORMATERIALFLAG_FLAG_VALUE num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_getActorMaterialFlag 815
+#define FN_getActorMaterialFlag 861
#define GETACTORMATERIALFLAG_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETACTORMATERIALFLAG_MATERIAL num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETACTORMATERIALFLAG_FLAG num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_setActorMaterialType 816
+#define FN_setActorMaterialType 862
#define SETACTORMATERIALTYPE_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETACTORMATERIALTYPE_MATERIAL_TYPE num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_getActorMaterialType 817
+#define FN_getActorMaterialType 863
#define GETACTORMATERIALTYPE_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETACTORMATERIALTYPE_MATERIAL num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_MaterialExists 818
+#define FN_MaterialExists 864
#define MATERIALEXISTS_MATERIAL num_var[0].nref[0].value[ num_var[0].byref_offset ]
diff --git a/rcbasic_build/rcbasic_dev3.txt b/rcbasic_build/rcbasic_dev3.txt
index 06586d5..45c5eea 100644
--- a/rcbasic_build/rcbasic_dev3.txt
+++ b/rcbasic_build/rcbasic_dev3.txt
@@ -547,6 +547,9 @@ case FN_FlashWindow: //Number Function
case FN_WindowIsGrabbed: //Number Function
rc_push_num(rc_windowIsGrabbed( ));
break;
+case FN_PreUpdate: //Sub Procedure
+ rc_preUpdate( );
+ break;
case FN_OpenCanvas: //Number Function
rc_push_num(rc_canvasOpen( OPENCANVAS_W, OPENCANVAS_H, OPENCANVAS_VIEWPORT_X, OPENCANVAS_VIEWPORT_Y, OPENCANVAS_VIEWPORT_W, OPENCANVAS_VIEWPORT_H, OPENCANVAS_MODE ));
break;
@@ -601,8 +604,8 @@ case FN_CloneCanvas: //Number Function
case FN_SetCanvasZ: //Sub Procedure
rc_setCanvasZ( SETCANVASZ_C_NUM, SETCANVASZ_Z );
break;
-case FN_GetCanvasZ: //Number Function
- rc_push_num(rc_getCanvasZ( GETCANVASZ_C_NUM ));
+case FN_CanvasZ: //Number Function
+ rc_push_num(rc_getCanvasZ( CANVASZ_C_NUM ));
break;
case FN_CanvasClip: //Number Function
rc_push_num(rc_canvasClip( CANVASCLIP_X, CANVASCLIP_Y, CANVASCLIP_W, CANVASCLIP_H ));
@@ -976,11 +979,11 @@ case FN_DrawText: //Sub Procedure
case FN_GetTextSize: //Sub Procedure
rc_getTextSize( GETTEXTSIZE_TXT$, &GETTEXTSIZE_W, &GETTEXTSIZE_H );
break;
-case FN_GetTextWidth: //Number Function
- rc_push_num(rc_getTextWidth( GETTEXTWIDTH_TXT$ ));
+case FN_TextWidth: //Number Function
+ rc_push_num(rc_getTextWidth( TEXTWIDTH_TXT$ ));
break;
-case FN_GetTextHeight: //Number Function
- rc_push_num(rc_getTextHeight( GETTEXTHEIGHT_TXT$ ));
+case FN_TextHeight: //Number Function
+ rc_push_num(rc_getTextHeight( TEXTHEIGHT_TXT$ ));
break;
case FN_TouchPressure: //Number Function
rc_push_num(rc_touchPressure( ));
@@ -1371,7 +1374,7 @@ case FN_ReadInput_ToggleBackspace: //Sub Procedure
rc_readInput_ToggleBackspace( READINPUT_TOGGLEBACKSPACE_FLAG );
break;
case FN_CreateSprite: //Number Function
- rc_push_num(rc_createSprite( CREATESPRITE_IMG ));
+ rc_push_num(rc_createSprite( CREATESPRITE_IMG, CREATESPRITE_FRAME_W, CREATESPRITE_FRAME_H ));
break;
case FN_DeleteSprite: //Sub Procedure
rc_deleteSprite( DELETESPRITE_SPRITE );
@@ -1379,6 +1382,120 @@ case FN_DeleteSprite: //Sub Procedure
case FN_SetSpritePosition: //Sub Procedure
rc_setSpritePosition( SETSPRITEPOSITION_SPRITE, SETSPRITEPOSITION_X, SETSPRITEPOSITION_Y );
break;
+case FN_TranslateSprite: //Sub Procedure
+ rc_translateSprite( TRANSLATESPRITE_SPRITE, TRANSLATESPRITE_X, TRANSLATESPRITE_Y );
+ break;
+case FN_GetSpritePosition: //Sub Procedure
+ rc_getSpritePosition( GETSPRITEPOSITION_SPRITE, &GETSPRITEPOSITION_X, &GETSPRITEPOSITION_Y );
+ break;
+case FN_SpriteX: //Number Function
+ rc_push_num(rc_spriteX( SPRITEX_SPRITE ));
+ break;
+case FN_SpriteY: //Number Function
+ rc_push_num(rc_spriteY( SPRITEY_SPRITE ));
+ break;
+case FN_SetSpriteRotation: //Sub Procedure
+ rc_setSpriteRotation( SETSPRITEROTATION_SPRITE, SETSPRITEROTATION_ANGLE );
+ break;
+case FN_RotateSprite: //Sub Procedure
+ rc_rotateSprite( ROTATESPRITE_SPRITE, ROTATESPRITE_ANGLE );
+ break;
+case FN_GetSpriteRotation: //Number Function
+ rc_push_num(rc_getSpriteRotation( GETSPRITEROTATION_SPRITE ));
+ break;
+case FN_SetSpriteScale: //Sub Procedure
+ rc_setSpriteScale( SETSPRITESCALE_SPRITE, SETSPRITESCALE_X, SETSPRITESCALE_Y );
+ break;
+case FN_ScaleSprite: //Sub Procedure
+ rc_scaleSprite( SCALESPRITE_SPRITE, SCALESPRITE_X, SCALESPRITE_Y );
+ break;
+case FN_GetSpriteScale: //Sub Procedure
+ rc_getSpriteScale( GETSPRITESCALE_SPRITE, &GETSPRITESCALE_X, &GETSPRITESCALE_Y );
+ break;
+case FN_SetSpriteZ: //Sub Procedure
+ rc_setSpriteZ( SETSPRITEZ_SPRITE, SETSPRITEZ_Z );
+ break;
+case FN_SpriteZ: //Number Function
+ rc_push_num(rc_spriteZ( SPRITEZ_SPRITE ));
+ break;
+case FN_GetSpriteSize: //Sub Procedure
+ rc_getSpriteSize( GETSPRITESIZE_SPRITE, &GETSPRITESIZE_W, &GETSPRITESIZE_H );
+ break;
+case FN_SpriteWidth: //Number Function
+ rc_push_num(rc_spriteWidth( SPRITEWIDTH_SPRITE ));
+ break;
+case FN_SpriteHeight: //Number Function
+ rc_push_num(rc_spriteHeight( SPRITEHEIGHT_SPRITE ));
+ break;
+case FN_SetSpriteVisible: //Sub Procedure
+ rc_setSpriteVisible( SETSPRITEVISIBLE_SPRITE, SETSPRITEVISIBLE_FLAG );
+ break;
+case FN_SpriteIsVisible: //Number Function
+ rc_push_num(rc_spriteIsVisible( SPRITEISVISIBLE_SPRITE ));
+ break;
+case FN_SetSpriteSolid: //Sub Procedure
+ rc_setSpriteSolid( SETSPRITESOLID_SPRITE, SETSPRITESOLID_FLAG );
+ break;
+case FN_SpriteIsSolid: //Number Function
+ rc_push_num(rc_spriteIsSolid( SPRITEISSOLID_SPRITE ));
+ break;
+case FN_SetSpriteType: //Sub Procedure
+ rc_setSpriteType( SETSPRITETYPE_SPRITE, SETSPRITETYPE_SPRITE_TYPE );
+ break;
+case FN_GetSpriteType: //Number Function
+ rc_push_num(rc_getSpriteType( GETSPRITETYPE_SPRITE ));
+ break;
+case FN_SetSpriteSource: //Sub Procedure
+ rc_setSpriteSource( SETSPRITESOURCE_SPRITE, SETSPRITESOURCE_IMG );
+ break;
+case FN_GetSpriteSource: //Number Function
+ rc_push_num(rc_getSpriteSource( GETSPRITESOURCE_SPRITE ));
+ break;
+case FN_CreateSpriteAnimation: //Number Function
+ rc_push_num(rc_createSpriteAnimation( CREATESPRITEANIMATION_SPRITE, CREATESPRITEANIMATION_ANIM_LENGTH, CREATESPRITEANIMATION_SPEED ));
+ break;
+case FN_SetSpriteFrame: //Sub Procedure
+ rc_setSpriteFrame( SETSPRITEFRAME_SPRITE, SETSPRITEFRAME_FRAME );
+ break;
+case FN_GetSpriteFrame: //Number Function
+ rc_push_num(rc_getSpriteFrame( GETSPRITEFRAME_SPRITE ));
+ break;
+case FN_SetSpriteAnimationFrame: //Sub Procedure
+ rc_setSpriteAnimationFrame( SETSPRITEANIMATIONFRAME_SPRITE, SETSPRITEANIMATIONFRAME_ANIMATION, SETSPRITEANIMATIONFRAME_ANIM_FRAME, SETSPRITEANIMATIONFRAME_FRAME );
+ break;
+case FN_GetSpriteAnimationFrame: //Number Function
+ rc_push_num(rc_getSpriteAnimationFrame( GETSPRITEANIMATIONFRAME_SPRITE, GETSPRITEANIMATIONFRAME_ANIMATION, GETSPRITEANIMATIONFRAME_ANIM_FRAME ));
+ break;
+case FN_SetSpriteAnimationLength: //Sub Procedure
+ rc_setSpriteAnimationLength( SETSPRITEANIMATIONLENGTH_SPRITE, SETSPRITEANIMATIONLENGTH_ANIMATION, SETSPRITEANIMATIONLENGTH_ANIM_LENGTH );
+ break;
+case FN_GetSpriteAnimationLength: //Number Function
+ rc_push_num(rc_getSpriteAnimationLength( GETSPRITEANIMATIONLENGTH_SPRITE, GETSPRITEANIMATIONLENGTH_ANIMATION ));
+ break;
+case FN_SetSpriteAnimationSpeed: //Sub Procedure
+ rc_setSpriteAnimationSpeed( SETSPRITEANIMATIONSPEED_SPRITE, SETSPRITEANIMATIONSPEED_ANIMATION, SETSPRITEANIMATIONSPEED_SPEED );
+ break;
+case FN_GetSpriteAnimationSpeed: //Number Function
+ rc_push_num(rc_getSpriteAnimationSpeed( GETSPRITEANIMATIONSPEED_SPRITE, GETSPRITEANIMATIONSPEED_ANIMATION ));
+ break;
+case FN_SetSpriteAnimation: //Sub Procedure
+ rc_setSpriteAnimation( SETSPRITEANIMATION_SPRITE, SETSPRITEANIMATION_ANIMATION, SETSPRITEANIMATION_NUM_LOOPS );
+ break;
+case FN_GetSpriteAnimation: //Number Function
+ rc_push_num(rc_getSpriteAnimation( GETSPRITEANIMATION_SPRITE ));
+ break;
+case FN_GetSpriteCurrentAnimationFrame: //Number Function
+ rc_push_num(rc_getSpriteCurrentAnimationFrame( GETSPRITECURRENTANIMATIONFRAME_SPRITE ));
+ break;
+case FN_NumSpriteAnimationLoops: //Number Function
+ rc_push_num(rc_numSpriteAnimationLoops( NUMSPRITEANIMATIONLOOPS_SPRITE ));
+ break;
+case FN_SpriteAnimationIsPlaying: //Number Function
+ rc_push_num(rc_spriteAnimationIsPlaying( SPRITEANIMATIONISPLAYING_SPRITE ));
+ break;
+case FN_DeleteSpriteAnimation: //Sub Procedure
+ rc_deleteSpriteAnimation( DELETESPRITEANIMATION_SPRITE, DELETESPRITEANIMATION_ANIMATION );
+ break;
case FN_LoadMesh: //Number Function
rc_push_num(rc_loadMesh( LOADMESH_MESH_FILE$ ));
break;
@@ -1397,11 +1514,23 @@ case FN_LoadMeshFromArchive: //Number Function
case FN_CreatePlaneMesh: //Number Function
rc_push_num(rc_createPlaneMesh( CREATEPLANEMESH_W, CREATEPLANEMESH_H, CREATEPLANEMESH_TILECOUNT_W, CREATEPLANEMESH_TILECOUNT_H ));
break;
-case FN_CreateMeshActor: //Number Function
- rc_push_num(rc_createMeshActor( CREATEMESHACTOR_MESH ));
+case FN_LoadAN8: //Number Function
+ rc_push_num(rc_loadAN8( LOADAN8_AN8_FILE$ ));
break;
-case FN_CreateMeshOctreeActor: //Number Function
- rc_push_num(rc_createMeshOctreeActor( CREATEMESHOCTREEACTOR_MESH ));
+case FN_LoadMeshFromAN8: //Number Function
+ rc_push_num(rc_loadMeshFromAN8( LOADMESHFROMAN8_AN8_PROJECT, LOADMESHFROMAN8_AN8_SCENE$ ));
+ break;
+case FN_GetNumAN8Scenes: //Number Function
+ rc_push_num(rc_getNumAN8Scenes( GETNUMAN8SCENES_AN8_PROJECT ));
+ break;
+case FN_GetAN8SceneName$: //String Function
+ rc_push_str(rc_getAN8SceneName( GETAN8SCENENAME$_AN8_PROJECT, GETAN8SCENENAME$_SCENE_NUM ));
+ break;
+case FN_CreateAnimatedActor: //Number Function
+ rc_push_num(rc_createAnimatedActor( CREATEANIMATEDACTOR_MESH ));
+ break;
+case FN_CreateOctreeActor: //Number Function
+ rc_push_num(rc_createOctreeActor( CREATEOCTREEACTOR_MESH ));
break;
case FN_CreateCubeActor: //Number Function
rc_push_num(rc_createCubeActor( CREATECUBEACTOR_CUBE_SIZE ));
@@ -2024,6 +2153,15 @@ case FN_SetCameraNearValue: //Sub Procedure
case FN_GetCameraNearValue: //Number Function
rc_push_num(rc_getCameraNearValue( ));
break;
+case FN_SetProjectionMatrix: //Sub Procedure
+ rc_setProjectionMatrix( SETPROJECTIONMATRIX_MATA, SETPROJECTIONMATRIX_PROJECTION_TYPE );
+ break;
+case FN_GetProjectionMatrix: //Sub Procedure
+ rc_getProjectionMatrix( GETPROJECTIONMATRIX_MATA );
+ break;
+case FN_GetWorldToViewportPosition: //Sub Procedure
+ rc_getWorldToViewportPosition( GETWORLDTOVIEWPORTPOSITION_X, GETWORLDTOVIEWPORTPOSITION_Y, GETWORLDTOVIEWPORTPOSITION_Z, &GETWORLDTOVIEWPORTPOSITION_VX, &GETWORLDTOVIEWPORTPOSITION_VY );
+ break;
case FN_AddSceneSkyBox: //Sub Procedure
rc_addSceneSkyBox( ADDSCENESKYBOX_IMG_TOP, ADDSCENESKYBOX_IMG_BOTTOM, ADDSCENESKYBOX_IMG_LEFT, ADDSCENESKYBOX_IMG_RIGHT, ADDSCENESKYBOX_IMG_FRONT, ADDSCENESKYBOX_IMG_BACK );
break;
@@ -2261,50 +2399,50 @@ 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_START_FRAME, SETACTORANIMATION_END_FRAME );
+ rc_setActorAnimation( SETACTORANIMATION_ACTOR, SETACTORANIMATION_ANIMATION, SETACTORANIMATION_NUM_LOOPS );
break;
case FN_SetActorAnimationSpeed: //Sub Procedure
- rc_setActorAnimationSpeed( SETACTORANIMATIONSPEED_ACTOR, SETACTORANIMATIONSPEED_SPEED );
+ 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 );
+ rc_setActorMD2Animation( SETACTORMD2ANIMATION_ACTOR, SETACTORMD2ANIMATION_ANIM, SETACTORMD2ANIMATION_NUM_LOOPS );
break;
case FN_SetActorMD2AnimationByName: //Sub Procedure
- rc_setActorMD2AnimationByName( SETACTORMD2ANIMATIONBYNAME_ACTOR, SETACTORMD2ANIMATIONBYNAME_ANIM_NAME$ );
+ rc_setActorMD2AnimationByName( SETACTORMD2ANIMATIONBYNAME_ACTOR, SETACTORMD2ANIMATIONBYNAME_ANIM_NAME$, SETACTORMD2ANIMATIONBYNAME_NUM_LOOPS );
break;
-case FN_GetActorAnimationSpeed: //Number Function
- rc_push_num(rc_getActorAnimationSpeed( GETACTORANIMATIONSPEED_ACTOR ));
- break;
-case FN_GetActorEndFrame: //Number Function
- rc_push_num(rc_getActorEndFrame( GETACTORENDFRAME_ACTOR ));
- break;
-case FN_GetActorCurrentFrame: //Number Function
- rc_push_num(rc_getActorCurrentFrame( GETACTORCURRENTFRAME_ACTOR ));
- break;
-case FN_GetActorStartFrame: //Number Function
- rc_push_num(rc_getActorStartFrame( GETACTORSTARTFRAME_ACTOR ));
- break;
-case FN_StartActorTransition: //Sub Procedure
- rc_startActorTransition( STARTACTORTRANSITION_ACTOR, STARTACTORTRANSITION_FRAME, STARTACTORTRANSITION_TRANSITION_TIME );
- break;
-case FN_StopActorTransition: //Sub Procedure
- rc_stopActorTransition( STOPACTORTRANSITION_ACTOR );
- break;
-case FN_ActorIsInTransition: //Number Function
- rc_push_num(rc_actorIsInTransition( ACTORISINTRANSITION_ACTOR ));
- break;
-case FN_GetActorTransitionTime: //Number Function
- rc_push_num(rc_getActorTransitionTime( GETACTORTRANSITIONTIME_ACTOR ));
- break;
-case FN_actorAnimationIsLooped: //Number Function
- rc_push_num(rc_actorAnimationIsLooped( ACTORANIMATIONISLOOPED_ACTOR ));
- break;
-case FN_loopActorAnimation: //Sub Procedure
- rc_loopActorAnimation( LOOPACTORANIMATION_ACTOR, LOOPACTORANIMATION_FLAG );
+case FN_DeleteActorAnimation: //Sub Procedure
+ rc_deleteActorAnimation( DELETEACTORANIMATION_ACTOR, DELETEACTORANIMATION_ANIMATION );
break;
case FN_createMaterial: //Number Function
rc_push_num(rc_createMaterial( ));
diff --git a/rcbasic_runtime/rc_defines.h b/rcbasic_runtime/rc_defines.h
index 4b714d7..d583133 100755
--- a/rcbasic_runtime/rc_defines.h
+++ b/rcbasic_runtime/rc_defines.h
@@ -439,7 +439,8 @@
#define FN_FlashWindow 172
#define FLASHWINDOW_FLAG num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define FN_WindowIsGrabbed 173
-#define FN_OpenCanvas 174
+#define FN_PreUpdate 174
+#define FN_OpenCanvas 175
#define OPENCANVAS_W num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define OPENCANVAS_H num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define OPENCANVAS_VIEWPORT_X num_var[2].nref[0].value[ num_var[2].byref_offset ]
@@ -447,188 +448,188 @@
#define OPENCANVAS_VIEWPORT_W num_var[4].nref[0].value[ num_var[4].byref_offset ]
#define OPENCANVAS_VIEWPORT_H num_var[5].nref[0].value[ num_var[5].byref_offset ]
#define OPENCANVAS_MODE num_var[6].nref[0].value[ num_var[6].byref_offset ]
-#define FN_CloseCanvas 175
+#define FN_CloseCanvas 176
#define CLOSECANVAS_C_NUM num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_OpenCanvas3D 176
+#define FN_OpenCanvas3D 177
#define OPENCANVAS3D_VIEWPORT_X num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define OPENCANVAS3D_VIEWPORT_Y num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define OPENCANVAS3D_VIEWPORT_W num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define OPENCANVAS3D_VIEWPORT_H num_var[3].nref[0].value[ num_var[3].byref_offset ]
#define OPENCANVAS3D_MODE num_var[4].nref[0].value[ num_var[4].byref_offset ]
-#define FN_SetCanvasVisible 177
+#define FN_SetCanvasVisible 178
#define SETCANVASVISIBLE_C_NUM num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETCANVASVISIBLE_FLAG num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_CanvasIsVisible 178
+#define FN_CanvasIsVisible 179
#define CANVASISVISIBLE_C_NUM num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_SetCanvasViewport 179
+#define FN_SetCanvasViewport 180
#define SETCANVASVIEWPORT_CNUM num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETCANVASVIEWPORT_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETCANVASVIEWPORT_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define SETCANVASVIEWPORT_W num_var[3].nref[0].value[ num_var[3].byref_offset ]
#define SETCANVASVIEWPORT_H num_var[4].nref[0].value[ num_var[4].byref_offset ]
-#define FN_GetCanvasViewport 180
+#define FN_GetCanvasViewport 181
#define GETCANVASVIEWPORT_C_NUM num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETCANVASVIEWPORT_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETCANVASVIEWPORT_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define GETCANVASVIEWPORT_W num_var[3].nref[0].value[ num_var[3].byref_offset ]
#define GETCANVASVIEWPORT_H num_var[4].nref[0].value[ num_var[4].byref_offset ]
-#define FN_Canvas 181
+#define FN_Canvas 182
#define CANVAS_C_NUM num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_SetCanvasOffset 182
+#define FN_SetCanvasOffset 183
#define SETCANVASOFFSET_C_NUM num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETCANVASOFFSET_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETCANVASOFFSET_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_GetCanvasOffset 183
+#define FN_GetCanvasOffset 184
#define GETCANVASOFFSET_C_NUM num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETCANVASOFFSET_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETCANVASOFFSET_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_GetCanvasSize 184
+#define FN_GetCanvasSize 185
#define GETCANVASSIZE_C_NUM num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETCANVASSIZE_W num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETCANVASSIZE_H num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_ClearCanvas 185
-#define FN_SetCanvasAlpha 186
+#define FN_ClearCanvas 186
+#define FN_SetCanvasAlpha 187
#define SETCANVASALPHA_C_NUM num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETCANVASALPHA_A num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_GetCanvasAlpha 187
+#define FN_GetCanvasAlpha 188
#define GETCANVASALPHA_C_NUM num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_SetCanvasColorMod 188
+#define FN_SetCanvasColorMod 189
#define SETCANVASCOLORMOD_C_NUM num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETCANVASCOLORMOD_C num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_GetCanvasColorMod 189
+#define FN_GetCanvasColorMod 190
#define GETCANVASCOLORMOD_C_NUM num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_CloneCanvas 190
+#define FN_CloneCanvas 191
#define CLONECANVAS_C_NUM num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define CLONECANVAS_MODE num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_SetCanvasZ 191
+#define FN_SetCanvasZ 192
#define SETCANVASZ_C_NUM num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETCANVASZ_Z num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_GetCanvasZ 192
-#define GETCANVASZ_C_NUM num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_CanvasClip 193
+#define FN_CanvasZ 193
+#define CANVASZ_C_NUM num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define FN_CanvasClip 194
#define CANVASCLIP_X num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define CANVASCLIP_Y num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define CANVASCLIP_W num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define CANVASCLIP_H num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_ActiveCanvas 194
-#define FN_SetCanvasPhysics2D 195
+#define FN_ActiveCanvas 195
+#define FN_SetCanvasPhysics2D 196
#define SETCANVASPHYSICS2D_C_NUM num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETCANVASPHYSICS2D_STATE num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_OpenCanvasSpriteLayer 196
+#define FN_OpenCanvasSpriteLayer 197
#define OPENCANVASSPRITELAYER_W num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define OPENCANVASSPRITELAYER_H num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define OPENCANVASSPRITELAYER_VIEWPORT_X num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define OPENCANVASSPRITELAYER_VIEWPORT_Y num_var[3].nref[0].value[ num_var[3].byref_offset ]
#define OPENCANVASSPRITELAYER_VIEWPORT_W num_var[4].nref[0].value[ num_var[4].byref_offset ]
#define OPENCANVASSPRITELAYER_VIEWPORT_H num_var[5].nref[0].value[ num_var[5].byref_offset ]
-#define FN_Circle 197
+#define FN_Circle 198
#define CIRCLE_X num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define CIRCLE_Y num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define CIRCLE_RADIUS num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_CircleFill 198
+#define FN_CircleFill 199
#define CIRCLEFILL_X num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define CIRCLEFILL_Y num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define CIRCLEFILL_RADIUS num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_Ellipse 199
+#define FN_Ellipse 200
#define ELLIPSE_X num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define ELLIPSE_Y num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define ELLIPSE_RX num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define ELLIPSE_RY num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_EllipseFill 200
+#define FN_EllipseFill 201
#define ELLIPSEFILL_X num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define ELLIPSEFILL_Y num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define ELLIPSEFILL_RX num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define ELLIPSEFILL_RY num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_FloodFill 201
+#define FN_FloodFill 202
#define FLOODFILL_X num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define FLOODFILL_Y num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_GetPixel 202
+#define FN_GetPixel 203
#define GETPIXEL_X num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETPIXEL_Y num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_SetColor 203
+#define FN_SetColor 204
#define SETCOLOR_C num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_Line 204
+#define FN_Line 205
#define LINE_X1 num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define LINE_Y1 num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define LINE_X2 num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define LINE_Y2 num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_Poly 205
+#define FN_Poly 206
#define POLY_N num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define POLY_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define POLY_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_Rect 206
+#define FN_Rect 207
#define RECT_X num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define RECT_Y num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define RECT_W num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define RECT_H num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_RectFill 207
+#define FN_RectFill 208
#define RECTFILL_X num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define RECTFILL_Y num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define RECTFILL_W num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define RECTFILL_H num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_RGB 208
+#define FN_RGB 209
#define RGB_R num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define RGB_G num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define RGB_B num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_RGBA 209
+#define FN_RGBA 210
#define RGBA_R num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define RGBA_G num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define RGBA_B num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define RGBA_A num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_Pset 210
+#define FN_Pset 211
#define PSET_X num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define PSET_Y num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_LoadImage 211
+#define FN_LoadImage 212
#define LOADIMAGE_IMG$ str_var[0].sref[0].value[ str_var[0].byref_offset ]
-#define FN_LoadImageEx 212
+#define FN_LoadImageEx 213
#define LOADIMAGEEX_IMG$ str_var[0].sref[0].value[ str_var[0].byref_offset ]
#define LOADIMAGEEX_COLKEY num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_createImage 213
+#define FN_createImage 214
#define CREATEIMAGE_W num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define CREATEIMAGE_H num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define CREATEIMAGE_BUFFER num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_createImageEx 214
+#define FN_createImageEx 215
#define CREATEIMAGEEX_W num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define CREATEIMAGEEX_H num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define CREATEIMAGEEX_BUFFER num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define CREATEIMAGEEX_COLOR num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_BufferFromImage 215
+#define FN_BufferFromImage 216
#define BUFFERFROMIMAGE_SLOT num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define BUFFERFROMIMAGE_BUFFER num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_ImageExists 216
+#define FN_ImageExists 217
#define IMAGEEXISTS_SLOT num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_ColorKey 217
+#define FN_ColorKey 218
#define COLORKEY_SLOT num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define COLORKEY_C num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_setBilinearFilter 218
+#define FN_setBilinearFilter 219
#define SETBILINEARFILTER_FLAG num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getBilinearFilter 219
-#define FN_CopyImage 220
+#define FN_getBilinearFilter 220
+#define FN_CopyImage 221
#define COPYIMAGE_IMG_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_DeleteImage 221
+#define FN_DeleteImage 222
#define DELETEIMAGE_SLOT num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_SetImageAlpha 222
+#define FN_SetImageAlpha 223
#define SETIMAGEALPHA_SLOT num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETIMAGEALPHA_A num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_GetImageAlpha 223
+#define FN_GetImageAlpha 224
#define GETIMAGEALPHA_IMG_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_GetImageSize 224
+#define FN_GetImageSize 225
#define GETIMAGESIZE_SLOT num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETIMAGESIZE_W num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETIMAGESIZE_H num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_SetBlendMode 225
+#define FN_SetBlendMode 226
#define SETBLENDMODE_BLEND_MODE num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_GetBlendMode 226
-#define FN_SetImageColorMod 227
+#define FN_GetBlendMode 227
+#define FN_SetImageColorMod 228
#define SETIMAGECOLORMOD_SLOT num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETIMAGECOLORMOD_C num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_GetImageColorMod 228
+#define FN_GetImageColorMod 229
#define GETIMAGECOLORMOD_SLOT num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_DrawImage 229
+#define FN_DrawImage 230
#define DRAWIMAGE_SLOT num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define DRAWIMAGE_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define DRAWIMAGE_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_DrawImage_Blit 230
+#define FN_DrawImage_Blit 231
#define DRAWIMAGE_BLIT_SLOT num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define DRAWIMAGE_BLIT_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define DRAWIMAGE_BLIT_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
@@ -636,7 +637,7 @@
#define DRAWIMAGE_BLIT_SRC_Y num_var[4].nref[0].value[ num_var[4].byref_offset ]
#define DRAWIMAGE_BLIT_SRC_W num_var[5].nref[0].value[ num_var[5].byref_offset ]
#define DRAWIMAGE_BLIT_SRC_H num_var[6].nref[0].value[ num_var[6].byref_offset ]
-#define FN_DrawImage_BlitEx 231
+#define FN_DrawImage_BlitEx 232
#define DRAWIMAGE_BLITEX_SLOT num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define DRAWIMAGE_BLITEX_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define DRAWIMAGE_BLITEX_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
@@ -646,12 +647,12 @@
#define DRAWIMAGE_BLITEX_SRC_Y num_var[6].nref[0].value[ num_var[6].byref_offset ]
#define DRAWIMAGE_BLITEX_SRC_W num_var[7].nref[0].value[ num_var[7].byref_offset ]
#define DRAWIMAGE_BLITEX_SRC_H num_var[8].nref[0].value[ num_var[8].byref_offset ]
-#define FN_DrawImage_Rotate 232
+#define FN_DrawImage_Rotate 233
#define DRAWIMAGE_ROTATE_SLOT num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define DRAWIMAGE_ROTATE_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define DRAWIMAGE_ROTATE_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define DRAWIMAGE_ROTATE_ANGLE num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_DrawImage_RotateEx 233
+#define FN_DrawImage_RotateEx 234
#define DRAWIMAGE_ROTATEEX_SLOT num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define DRAWIMAGE_ROTATEEX_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define DRAWIMAGE_ROTATEEX_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
@@ -660,13 +661,13 @@
#define DRAWIMAGE_ROTATEEX_SRC_W num_var[5].nref[0].value[ num_var[5].byref_offset ]
#define DRAWIMAGE_ROTATEEX_SRC_H num_var[6].nref[0].value[ num_var[6].byref_offset ]
#define DRAWIMAGE_ROTATEEX_ANGLE num_var[7].nref[0].value[ num_var[7].byref_offset ]
-#define FN_DrawImage_Zoom 234
+#define FN_DrawImage_Zoom 235
#define DRAWIMAGE_ZOOM_SLOT num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define DRAWIMAGE_ZOOM_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define DRAWIMAGE_ZOOM_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define DRAWIMAGE_ZOOM_ZX num_var[3].nref[0].value[ num_var[3].byref_offset ]
#define DRAWIMAGE_ZOOM_ZY num_var[4].nref[0].value[ num_var[4].byref_offset ]
-#define FN_DrawImage_ZoomEx 235
+#define FN_DrawImage_ZoomEx 236
#define DRAWIMAGE_ZOOMEX_SLOT num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define DRAWIMAGE_ZOOMEX_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define DRAWIMAGE_ZOOMEX_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
@@ -676,14 +677,14 @@
#define DRAWIMAGE_ZOOMEX_SRC_H num_var[6].nref[0].value[ num_var[6].byref_offset ]
#define DRAWIMAGE_ZOOMEX_ZX num_var[7].nref[0].value[ num_var[7].byref_offset ]
#define DRAWIMAGE_ZOOMEX_ZY num_var[8].nref[0].value[ num_var[8].byref_offset ]
-#define FN_DrawImage_Rotozoom 236
+#define FN_DrawImage_Rotozoom 237
#define DRAWIMAGE_ROTOZOOM_SLOT num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define DRAWIMAGE_ROTOZOOM_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define DRAWIMAGE_ROTOZOOM_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define DRAWIMAGE_ROTOZOOM_ANGLE num_var[3].nref[0].value[ num_var[3].byref_offset ]
#define DRAWIMAGE_ROTOZOOM_ZX num_var[4].nref[0].value[ num_var[4].byref_offset ]
#define DRAWIMAGE_ROTOZOOM_ZY num_var[5].nref[0].value[ num_var[5].byref_offset ]
-#define FN_DrawImage_RotozoomEx 237
+#define FN_DrawImage_RotozoomEx 238
#define DRAWIMAGE_ROTOZOOMEX_SLOT num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define DRAWIMAGE_ROTOZOOMEX_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define DRAWIMAGE_ROTOZOOMEX_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
@@ -694,13 +695,13 @@
#define DRAWIMAGE_ROTOZOOMEX_ANGLE num_var[7].nref[0].value[ num_var[7].byref_offset ]
#define DRAWIMAGE_ROTOZOOMEX_ZX num_var[8].nref[0].value[ num_var[8].byref_offset ]
#define DRAWIMAGE_ROTOZOOMEX_ZY num_var[9].nref[0].value[ num_var[9].byref_offset ]
-#define FN_DrawImage_Flip 238
+#define FN_DrawImage_Flip 239
#define DRAWIMAGE_FLIP_SLOT num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define DRAWIMAGE_FLIP_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define DRAWIMAGE_FLIP_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define DRAWIMAGE_FLIP_H num_var[3].nref[0].value[ num_var[3].byref_offset ]
#define DRAWIMAGE_FLIP_V num_var[4].nref[0].value[ num_var[4].byref_offset ]
-#define FN_DrawImage_FlipEx 239
+#define FN_DrawImage_FlipEx 240
#define DRAWIMAGE_FLIPEX_SLOT num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define DRAWIMAGE_FLIPEX_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define DRAWIMAGE_FLIPEX_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
@@ -710,588 +711,702 @@
#define DRAWIMAGE_FLIPEX_SRC_H num_var[6].nref[0].value[ num_var[6].byref_offset ]
#define DRAWIMAGE_FLIPEX_H num_var[7].nref[0].value[ num_var[7].byref_offset ]
#define DRAWIMAGE_FLIPEX_V num_var[8].nref[0].value[ num_var[8].byref_offset ]
-#define FN_InKey 240
-#define FN_Key 241
+#define FN_InKey 241
+#define FN_Key 242
#define KEY_KEY_CODE num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_WaitKey 242
-#define FN_HideMouse 243
-#define FN_ShowMouse 244
-#define FN_MouseIsVisible 245
-#define FN_GetMouse 246
+#define FN_WaitKey 243
+#define FN_HideMouse 244
+#define FN_ShowMouse 245
+#define FN_MouseIsVisible 246
+#define FN_GetMouse 247
#define GETMOUSE_X num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETMOUSE_Y num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETMOUSE_MB1 num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define GETMOUSE_MB2 num_var[3].nref[0].value[ num_var[3].byref_offset ]
#define GETMOUSE_MB3 num_var[4].nref[0].value[ num_var[4].byref_offset ]
-#define FN_MouseX 247
-#define FN_MouseY 248
-#define FN_MouseButton 249
+#define FN_MouseX 248
+#define FN_MouseY 249
+#define FN_MouseButton 250
#define MOUSEBUTTON_MB num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_GetMouseWheel 250
+#define FN_GetMouseWheel 251
#define GETMOUSEWHEEL_X_AXIS num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETMOUSEWHEEL_Y_AXIS num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_MouseWheelX 251
-#define FN_MouseWheelY 252
-#define FN_GetGlobalMouse 253
+#define FN_MouseWheelX 252
+#define FN_MouseWheelY 253
+#define FN_GetGlobalMouse 254
#define GETGLOBALMOUSE_X num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETGLOBALMOUSE_Y num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETGLOBALMOUSE_MB1 num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define GETGLOBALMOUSE_MB2 num_var[3].nref[0].value[ num_var[3].byref_offset ]
#define GETGLOBALMOUSE_MB3 num_var[4].nref[0].value[ num_var[4].byref_offset ]
-#define FN_GlobalMouseX 254
-#define FN_GlobalMouseY 255
-#define FN_WarpMouse 256
+#define FN_GlobalMouseX 255
+#define FN_GlobalMouseY 256
+#define FN_WarpMouse 257
#define WARPMOUSE_X num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define WARPMOUSE_Y num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_WarpMouseGlobal 257
+#define FN_WarpMouseGlobal 258
#define WARPMOUSEGLOBAL_X num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define WARPMOUSEGLOBAL_Y num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_SetMouseZone 258
+#define FN_SetMouseZone 259
#define SETMOUSEZONE_X num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETMOUSEZONE_Y num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETMOUSEZONE_W num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define SETMOUSEZONE_H num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_ClearMouseZone 259
-#define FN_CreateSound 260
+#define FN_ClearMouseZone 260
+#define FN_CreateSound 261
#define CREATESOUND_BUFFER num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define CREATESOUND_BUFFER_SIZE num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define CREATESOUND_VOL num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_LoadSound 261
+#define FN_LoadSound 262
#define LOADSOUND_SND_FILE$ str_var[0].sref[0].value[ str_var[0].byref_offset ]
-#define FN_LoadMusic 262
+#define FN_LoadMusic 263
#define LOADMUSIC_MUSIC_FILE$ str_var[0].sref[0].value[ str_var[0].byref_offset ]
-#define FN_PlaySound 263
+#define FN_PlaySound 264
#define PLAYSOUND_SLOT num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define PLAYSOUND_CHANNEL num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define PLAYSOUND_LOOPS num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_PlaySoundTimed 264
+#define FN_PlaySoundTimed 265
#define PLAYSOUNDTIMED_SLOT num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define PLAYSOUNDTIMED_CHANNEL num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define PLAYSOUNDTIMED_LOOPS num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define PLAYSOUNDTIMED_MS num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_PlayMusic 265
+#define FN_PlayMusic 266
#define PLAYMUSIC_MLOOPS num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_PauseSound 266
+#define FN_PauseSound 267
#define PAUSESOUND_CHANNEL num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_ResumeSound 267
+#define FN_ResumeSound 268
#define RESUMESOUND_CHANNEL num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_PauseMusic 268
-#define FN_ResumeMusic 269
-#define FN_DeleteSound 270
+#define FN_PauseMusic 269
+#define FN_ResumeMusic 270
+#define FN_DeleteSound 271
#define DELETESOUND_SLOT num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_DeleteMusic 271
-#define FN_FadeMusicIn 272
+#define FN_DeleteMusic 272
+#define FN_FadeMusicIn 273
#define FADEMUSICIN_FADE_TIME num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define FADEMUSICIN_LOOPS num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_FadeMusicOut 273
+#define FN_FadeMusicOut 274
#define FADEMUSICOUT_FADE_TIME num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_MusicExists 274
-#define FN_SetMusicVolume 275
+#define FN_MusicExists 275
+#define FN_SetMusicVolume 276
#define SETMUSICVOLUME_VOL num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_GetMusicVolume 276
-#define FN_SetMusicPosition 277
+#define FN_GetMusicVolume 277
+#define FN_SetMusicPosition 278
#define SETMUSICPOSITION_POS num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_GetMusicPosition 278
-#define FN_RewindMusic 279
-#define FN_SetSoundChannels 280
+#define FN_GetMusicPosition 279
+#define FN_RewindMusic 280
+#define FN_SetSoundChannels 281
#define SETSOUNDCHANNELS_MAX_CHANNELS num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_NumSoundChannels 281
-#define FN_SoundIsEnabled 282
-#define FN_SoundExists 283
+#define FN_NumSoundChannels 282
+#define FN_SoundIsEnabled 283
+#define FN_SoundExists 284
#define SOUNDEXISTS_SLOT num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_SetChannelVolume 284
+#define FN_SetChannelVolume 285
#define SETCHANNELVOLUME_CHANNEL num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETCHANNELVOLUME_VOL num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_GetChannelVolume 285
+#define FN_GetChannelVolume 286
#define GETCHANNELVOLUME_CHANNEL num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_SetSoundVolume 286
+#define FN_SetSoundVolume 287
#define SETSOUNDVOLUME_SLOT num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETSOUNDVOLUME_VOL num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_GetSoundVolume 287
+#define FN_GetSoundVolume 288
#define GETSOUNDVOLUME_SLOT num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_StopMusic 288
-#define FN_StopSound 289
+#define FN_StopMusic 289
+#define FN_StopSound 290
#define STOPSOUND_CHANNEL num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_SetChannelPanning 290
+#define FN_SetChannelPanning 291
#define SETCHANNELPANNING_CHANNEL num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETCHANNELPANNING_LEFT_VALUE num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETCHANNELPANNING_RIGHT_VALUE num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_SetChannelDistance 291
+#define FN_SetChannelDistance 292
#define SETCHANNELDISTANCE_CHANNEL num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETCHANNELDISTANCE_DIST_VALUE num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_ChannelIsPlaying 292
+#define FN_ChannelIsPlaying 293
#define CHANNELISPLAYING_CHANNEL num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_ChannelIsPaused 293
+#define FN_ChannelIsPaused 294
#define CHANNELISPAUSED_CHANNEL num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_QueryAudioSpec 294
+#define FN_QueryAudioSpec 295
#define QUERYAUDIOSPEC_FREQ num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define QUERYAUDIOSPEC_FORMAT num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define QUERYAUDIOSPEC_CHANNELS num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_MusicIsPlaying 295
-#define FN_SetChannelSpacePosition 296
+#define FN_MusicIsPlaying 296
+#define FN_SetChannelSpacePosition 297
#define SETCHANNELSPACEPOSITION_CHANNEL num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETCHANNELSPACEPOSITION_ANGLE num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETCHANNELSPACEPOSITION_DISTANCE num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_NumJoysticks 297
-#define FN_NumJoyAxes 298
+#define FN_NumJoysticks 298
+#define FN_NumJoyAxes 299
#define NUMJOYAXES_JOY_NUM num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_NumJoyButtons 299
+#define FN_NumJoyButtons 300
#define NUMJOYBUTTONS_JOY_NUM num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_NumJoyHats 300
+#define FN_NumJoyHats 301
#define NUMJOYHATS_JOY_NUM num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_NumJoyTrackBalls 301
+#define FN_NumJoyTrackBalls 302
#define NUMJOYTRACKBALLS_JOY_NUM num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_JoyAxis 302
+#define FN_JoyAxis 303
#define JOYAXIS_JOY_NUM num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define JOYAXIS_JOY_AXIS num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_JoyButton 303
+#define FN_JoyButton 304
#define JOYBUTTON_JOY_NUM num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define JOYBUTTON_JOY_BUTTON num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_JoyHat 304
+#define FN_JoyHat 305
#define JOYHAT_JOY_NUM num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define JOYHAT_JOY_HAT num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_GetJoyTrackBall 305
+#define FN_GetJoyTrackBall 306
#define GETJOYTRACKBALL_JOY_NUM num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETJOYTRACKBALL_BALL num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETJOYTRACKBALL_DX num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define GETJOYTRACKBALL_DY num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_JoyName$ 306
+#define FN_JoyName$ 307
#define JOYNAME$_JOY_NUM num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_JoystickIsConnected 307
+#define FN_JoystickIsConnected 308
#define JOYSTICKISCONNECTED_JOY_NUM num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_JoyRumblePlay 308
+#define FN_JoyRumblePlay 309
#define JOYRUMBLEPLAY_JOY_NUM num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define JOYRUMBLEPLAY_STRENGTH num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define JOYRUMBLEPLAY_DURATION num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_JoyRumbleStop 309
+#define FN_JoyRumbleStop 310
#define JOYRUMBLESTOP_JOY_NUM num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_JoystickIsHaptic 310
+#define FN_JoystickIsHaptic 311
#define JOYSTICKISHAPTIC_JOY_NUM num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_LoadFont 311
+#define FN_LoadFont 312
#define LOADFONT_FNT_FILE$ str_var[0].sref[0].value[ str_var[0].byref_offset ]
#define LOADFONT_FONT_SIZE num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_DeleteFont 312
+#define FN_DeleteFont 313
#define DELETEFONT_SLOT num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_FontExists 313
+#define FN_FontExists 314
#define FONTEXISTS_SLOT num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_SetFont 314
+#define FN_SetFont 315
#define SETFONT_SLOT num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_DrawText 315
+#define FN_DrawText 316
#define DRAWTEXT_TXT$ str_var[0].sref[0].value[ str_var[0].byref_offset ]
#define DRAWTEXT_X num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define DRAWTEXT_Y num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_GetTextSize 316
+#define FN_GetTextSize 317
#define GETTEXTSIZE_TXT$ str_var[0].sref[0].value[ str_var[0].byref_offset ]
#define GETTEXTSIZE_W num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETTEXTSIZE_H num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_GetTextWidth 317
-#define GETTEXTWIDTH_TXT$ str_var[0].sref[0].value[ str_var[0].byref_offset ]
-#define FN_GetTextHeight 318
-#define GETTEXTHEIGHT_TXT$ str_var[0].sref[0].value[ str_var[0].byref_offset ]
-#define FN_TouchPressure 319
-#define FN_GetTouch 320
+#define FN_TextWidth 318
+#define TEXTWIDTH_TXT$ str_var[0].sref[0].value[ str_var[0].byref_offset ]
+#define FN_TextHeight 319
+#define TEXTHEIGHT_TXT$ str_var[0].sref[0].value[ str_var[0].byref_offset ]
+#define FN_TouchPressure 320
+#define FN_GetTouch 321
#define GETTOUCH_STATUS num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETTOUCH_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETTOUCH_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define GETTOUCH_DX num_var[3].nref[0].value[ num_var[3].byref_offset ]
#define GETTOUCH_DY num_var[4].nref[0].value[ num_var[4].byref_offset ]
-#define FN_GetMultiTouch 321
+#define FN_GetMultiTouch 322
#define GETMULTITOUCH_STATUS num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETMULTITOUCH_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETMULTITOUCH_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define GETMULTITOUCH_FINGERS num_var[3].nref[0].value[ num_var[3].byref_offset ]
#define GETMULTITOUCH_DIST num_var[4].nref[0].value[ num_var[4].byref_offset ]
#define GETMULTITOUCH_THETA num_var[5].nref[0].value[ num_var[5].byref_offset ]
-#define FN_GetTouchFinger 322
+#define FN_GetTouchFinger 323
#define GETTOUCHFINGER_FINGER num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETTOUCHFINGER_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETTOUCHFINGER_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define GETTOUCHFINGER_PRESSURE num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_NumFingers 323
-#define FN_GetAccel 324
+#define FN_NumFingers 324
+#define FN_GetAccel 325
#define GETACCEL_ACCEL_NUM num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETACCEL_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETACCEL_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define GETACCEL_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_AccelName$ 325
+#define FN_AccelName$ 326
#define ACCELNAME$_ACCEL_NUM num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_NumAccels 326
-#define FN_GetGyro 327
+#define FN_NumAccels 327
+#define FN_GetGyro 328
#define GETGYRO_GYRO_NUM num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETGYRO_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETGYRO_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define GETGYRO_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_GyroName$ 328
+#define FN_GyroName$ 329
#define GYRONAME$_GYRO_NUM num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_NumGyros 329
-#define FN_CheckSockets 330
+#define FN_NumGyros 330
+#define FN_CheckSockets 331
#define CHECKSOCKETS_TIMEOUT_MS num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_TCP_SocketReady 331
+#define FN_TCP_SocketReady 332
#define TCP_SOCKETREADY_SOCKET num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_UDP_SocketReady 332
+#define FN_UDP_SocketReady 333
#define UDP_SOCKETREADY_SOCKET num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_TCP_OpenSocket 333
+#define FN_TCP_OpenSocket 334
#define TCP_OPENSOCKET_HOST$ str_var[0].sref[0].value[ str_var[0].byref_offset ]
#define TCP_OPENSOCKET_PORT num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_TCP_CloseSocket 334
+#define FN_TCP_CloseSocket 335
#define TCP_CLOSESOCKET_SOCKET num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_TCP_RemoteHost 335
+#define FN_TCP_RemoteHost 336
#define TCP_REMOTEHOST_SOCKET num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_TCP_RemotePort 336
+#define FN_TCP_RemotePort 337
#define TCP_REMOTEPORT_SOCKET num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_TCP_GetData 337
+#define FN_TCP_GetData 338
#define TCP_GETDATA_SOCKET num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define TCP_GETDATA_NUMBYTES num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define TCP_GETDATA_SDATA$ str_var[0].sref[0].value[ str_var[0].byref_offset ]
-#define FN_TCP_SendData 338
+#define FN_TCP_SendData 339
#define TCP_SENDDATA_SOCKET num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define TCP_SENDDATA_SDATA$ str_var[0].sref[0].value[ str_var[0].byref_offset ]
-#define FN_TCP_AcceptSocket 339
+#define FN_TCP_AcceptSocket 340
#define TCP_ACCEPTSOCKET_SERVER num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define TCP_ACCEPTSOCKET_CLIENT num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_UDP_OpenSocket 340
+#define FN_UDP_OpenSocket 341
#define UDP_OPENSOCKET_PORT num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_UDP_CloseSocket 341
+#define FN_UDP_CloseSocket 342
#define UDP_CLOSESOCKET_SOCKET num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_UDP_GetData 342
+#define FN_UDP_GetData 343
#define UDP_GETDATA_SOCKET num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define UDP_GETDATA_HOST$ str_var[0].sref[0].value[ str_var[0].byref_offset ]
#define UDP_GETDATA_PORT num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define UDP_GETDATA_SDATA$ str_var[1].sref[0].value[ str_var[1].byref_offset ]
-#define FN_UDP_Length 343
-#define FN_UDP_MaxLength 344
-#define FN_UDP_RemoteHost$ 345
+#define FN_UDP_Length 344
+#define FN_UDP_MaxLength 345
+#define FN_UDP_RemoteHost$ 346
#define UDP_REMOTEHOST$_SOCKET num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_UDP_RemotePort 346
+#define FN_UDP_RemotePort 347
#define UDP_REMOTEPORT_SOCKET num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_UDP_SendData 347
+#define FN_UDP_SendData 348
#define UDP_SENDDATA_SOCKET num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define UDP_SENDDATA_HOST$ str_var[0].sref[0].value[ str_var[0].byref_offset ]
#define UDP_SENDDATA_PORT num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define UDP_SENDDATA_SDATA$ str_var[1].sref[0].value[ str_var[1].byref_offset ]
-#define FN_LoadVideo 348
+#define FN_LoadVideo 349
#define LOADVIDEO_VID$ str_var[0].sref[0].value[ str_var[0].byref_offset ]
-#define FN_PlayVideo 349
+#define FN_PlayVideo 350
#define PLAYVIDEO_VLOOPS num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_PauseVideo 350
-#define FN_StopVideo 351
-#define FN_SetVideoPosition 352
+#define FN_PauseVideo 351
+#define FN_StopVideo 352
+#define FN_SetVideoPosition 353
#define SETVIDEOPOSITION_POS num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_ResumeVideo 353
-#define FN_GetVideoPosition 354
-#define FN_DeleteVideo 355
-#define FN_VideoIsPlaying 356
-#define FN_VideoEnd 357
-#define FN_GetVideoStats 358
+#define FN_ResumeVideo 354
+#define FN_GetVideoPosition 355
+#define FN_DeleteVideo 356
+#define FN_VideoIsPlaying 357
+#define FN_VideoEnd 358
+#define FN_GetVideoStats 359
#define GETVIDEOSTATS_VFILE$ str_var[0].sref[0].value[ str_var[0].byref_offset ]
#define GETVIDEOSTATS_VLEN num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETVIDEOSTATS_VFPS num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETVIDEOSTATS_FRAME_W num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define GETVIDEOSTATS_FRAME_H num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_SetVideoDrawRect 359
+#define FN_SetVideoDrawRect 360
#define SETVIDEODRAWRECT_X num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETVIDEODRAWRECT_Y num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETVIDEODRAWRECT_W num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define SETVIDEODRAWRECT_H num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_GetVideoDrawRect 360
+#define FN_GetVideoDrawRect 361
#define GETVIDEODRAWRECT_X num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETVIDEODRAWRECT_Y num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETVIDEODRAWRECT_W num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define GETVIDEODRAWRECT_H num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_GetVideoSize 361
+#define FN_GetVideoSize 362
#define GETVIDEOSIZE_W num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETVIDEOSIZE_H num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_VideoExists 362
-#define FN_SetVideoVolume 363
+#define FN_VideoExists 363
+#define FN_SetVideoVolume 364
#define SETVIDEOVOLUME_VOL num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_GetVideoVolume 364
-#define FN_System 365
+#define FN_GetVideoVolume 365
+#define FN_System 366
#define SYSTEM_CMD$ str_var[0].sref[0].value[ str_var[0].byref_offset ]
-#define FN_OS$ 366
-#define FN_Command$ 367
+#define FN_OS$ 367
+#define FN_Command$ 368
#define COMMAND$_ARG num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_NumCommands 368
-#define FN_Env$ 369
+#define FN_NumCommands 369
+#define FN_Env$ 370
#define ENV$_V$ str_var[0].sref[0].value[ str_var[0].byref_offset ]
-#define FN_SetEnv 370
+#define FN_SetEnv 371
#define SETENV_VAR$ str_var[0].sref[0].value[ str_var[0].byref_offset ]
#define SETENV_VALUE$ str_var[1].sref[0].value[ str_var[1].byref_offset ]
-#define FN_PrefPath$ 371
+#define FN_PrefPath$ 372
#define PREFPATH$_ORG_NAME$ str_var[0].sref[0].value[ str_var[0].byref_offset ]
#define PREFPATH$_APP_NAME$ str_var[1].sref[0].value[ str_var[1].byref_offset ]
-#define FN_Android_GetExternalStoragePath$ 372
-#define FN_Android_GetExternalStorageState 373
-#define FN_Android_GetInternalStoragePath$ 374
-#define FN_Android_JNI_Message$ 375
+#define FN_Android_GetExternalStoragePath$ 373
+#define FN_Android_GetExternalStorageState 374
+#define FN_Android_GetInternalStoragePath$ 375
+#define FN_Android_JNI_Message$ 376
#define ANDROID_JNI_MESSAGE$_ARG$ str_var[0].sref[0].value[ str_var[0].byref_offset ]
-#define FN_Runtime_Utility_Message$ 376
+#define FN_Runtime_Utility_Message$ 377
#define RUNTIME_UTILITY_MESSAGE$_ARG$ str_var[0].sref[0].value[ str_var[0].byref_offset ]
-#define FN_GetDesktopDisplayMode 377
+#define FN_GetDesktopDisplayMode 378
#define GETDESKTOPDISPLAYMODE_INDEX num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETDESKTOPDISPLAYMODE_W num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETDESKTOPDISPLAYMODE_H num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define GETDESKTOPDISPLAYMODE_FREQ num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_GetPowerInfo 378
+#define FN_GetPowerInfo 379
#define GETPOWERINFO_STATUS num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETPOWERINFO_SECS num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETPOWERINFO_PCT num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_EvalJS$ 379
+#define FN_EvalJS$ 380
#define EVALJS$_JS_CODE$ str_var[0].sref[0].value[ str_var[0].byref_offset ]
-#define FN_SystemReturnStdOut$ 380
+#define FN_SystemReturnStdOut$ 381
#define SYSTEMRETURNSTDOUT$_CMD$ str_var[0].sref[0].value[ str_var[0].byref_offset ]
-#define FN_OpenURL 381
+#define FN_OpenURL 382
#define OPENURL_URL$ str_var[0].sref[0].value[ str_var[0].byref_offset ]
-#define FN_MessageBox 382
+#define FN_MessageBox 383
#define MESSAGEBOX_TITLE$ str_var[0].sref[0].value[ str_var[0].byref_offset ]
#define MESSAGEBOX_MSG$ str_var[1].sref[0].value[ str_var[1].byref_offset ]
-#define FN_Runtime$ 383
-#define FN_NumCPUs 384
-#define FN_SystemRam 385
-#define FN_DimMatrix 386
+#define FN_Runtime$ 384
+#define FN_NumCPUs 385
+#define FN_SystemRam 386
+#define FN_DimMatrix 387
#define DIMMATRIX_M_ROWS num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define DIMMATRIX_M_COLS num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_DeleteMatrix 387
+#define FN_DeleteMatrix 388
#define DELETEMATRIX_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_AddMatrix 388
+#define FN_AddMatrix 389
#define ADDMATRIX_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define ADDMATRIX_MB num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define ADDMATRIX_MC num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_AugmentMatrix 389
+#define FN_AugmentMatrix 390
#define AUGMENTMATRIX_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define AUGMENTMATRIX_MB num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define AUGMENTMATRIX_MC num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_CopyMatrix 390
+#define FN_CopyMatrix 391
#define COPYMATRIX_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define COPYMATRIX_MB num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_InsertMatrixColumns 391
+#define FN_InsertMatrixColumns 392
#define INSERTMATRIXCOLUMNS_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define INSERTMATRIXCOLUMNS_C num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define INSERTMATRIXCOLUMNS_NUM_COLS num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_InsertMatrixRows 392
+#define FN_InsertMatrixRows 393
#define INSERTMATRIXROWS_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define INSERTMATRIXROWS_R num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define INSERTMATRIXROWS_NUM_ROWS num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_MultiplyMatrix 393
+#define FN_MultiplyMatrix 394
#define MULTIPLYMATRIX_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define MULTIPLYMATRIX_MB num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define MULTIPLYMATRIX_MC num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_CubeMatrix 394
+#define FN_CubeMatrix 395
#define CUBEMATRIX_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define CUBEMATRIX_MB num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_DeleteMatrixColumns 395
+#define FN_DeleteMatrixColumns 396
#define DELETEMATRIXCOLUMNS_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define DELETEMATRIXCOLUMNS_C num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define DELETEMATRIXCOLUMNS_NUM_COLS num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_DeleteMatrixRows 396
+#define FN_DeleteMatrixRows 397
#define DELETEMATRIXROWS_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define DELETEMATRIXROWS_R num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define DELETEMATRIXROWS_NUM_ROWS num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_ClearMatrix 397
+#define FN_ClearMatrix 398
#define CLEARMATRIX_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_ClearMatrixColumns 398
+#define FN_ClearMatrixColumns 399
#define CLEARMATRIXCOLUMNS_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define CLEARMATRIXCOLUMNS_C num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define CLEARMATRIXCOLUMNS_NUM_COLS num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_ClearMatrixRows 399
+#define FN_ClearMatrixRows 400
#define CLEARMATRIXROWS_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define CLEARMATRIXROWS_R num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define CLEARMATRIXROWS_NUM_ROWS num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_FillMatrix 400
+#define FN_FillMatrix 401
#define FILLMATRIX_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define FILLMATRIX_V num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_FillMatrixColumns 401
+#define FN_FillMatrixColumns 402
#define FILLMATRIXCOLUMNS_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define FILLMATRIXCOLUMNS_C num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define FILLMATRIXCOLUMNS_NUM_COLS num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define FILLMATRIXCOLUMNS_V num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_FillMatrixRows 402
+#define FN_FillMatrixRows 403
#define FILLMATRIXROWS_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define FILLMATRIXROWS_R num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define FILLMATRIXROWS_NUM_ROWS num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define FILLMATRIXROWS_V num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_CopyMatrixColumns 403
+#define FN_CopyMatrixColumns 404
#define COPYMATRIXCOLUMNS_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define COPYMATRIXCOLUMNS_MB num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define COPYMATRIXCOLUMNS_C num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define COPYMATRIXCOLUMNS_NUM_COLS num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_CopyMatrixRows 404
+#define FN_CopyMatrixRows 405
#define COPYMATRIXROWS_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define COPYMATRIXROWS_MB num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define COPYMATRIXROWS_R num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define COPYMATRIXROWS_NUM_ROWS num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_SetIdentityMatrix 405
+#define FN_SetIdentityMatrix 406
#define SETIDENTITYMATRIX_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETIDENTITYMATRIX_N num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_SolveMatrix 406
+#define FN_SolveMatrix 407
#define SOLVEMATRIX_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SOLVEMATRIX_MB num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SOLVEMATRIX_MC num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_IsEqualMatrix 407
+#define FN_IsEqualMatrix 408
#define ISEQUALMATRIX_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define ISEQUALMATRIX_MB num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define ISEQUALMATRIX_TOLERANCE num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_Determinant 408
+#define FN_Determinant 409
#define DETERMINANT_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_AdjointMatrix 409
+#define FN_AdjointMatrix 410
#define ADJOINTMATRIX_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define ADJOINTMATRIX_MB num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_InvertMatrix 410
+#define FN_InvertMatrix 411
#define INVERTMATRIX_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define INVERTMATRIX_MB num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_MatrixFromBuffer 411
+#define FN_MatrixFromBuffer 412
#define MATRIXFROMBUFFER_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define MATRIXFROMBUFFER_R num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define MATRIXFROMBUFFER_C num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define MATRIXFROMBUFFER_BUFFER num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_BufferFromMatrix 412
+#define FN_BufferFromMatrix 413
#define BUFFERFROMMATRIX_BUFFER num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define BUFFERFROMMATRIX_MA num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_RandomizeMatrix 413
+#define FN_RandomizeMatrix 414
#define RANDOMIZEMATRIX_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define RANDOMIZEMATRIX_VMIN num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define RANDOMIZEMATRIX_VMAX num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_MatrixValue 414
+#define FN_MatrixValue 415
#define MATRIXVALUE_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define MATRIXVALUE_R num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define MATRIXVALUE_C num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_SetMatrixValue 415
+#define FN_SetMatrixValue 416
#define SETMATRIXVALUE_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETMATRIXVALUE_R num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETMATRIXVALUE_C num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define SETMATRIXVALUE_V num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_ScalarMatrix 416
+#define FN_ScalarMatrix 417
#define SCALARMATRIX_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SCALARMATRIX_MB num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SCALARMATRIX_S_VALUE num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_ScalarMatrixColumns 417
+#define FN_ScalarMatrixColumns 418
#define SCALARMATRIXCOLUMNS_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SCALARMATRIXCOLUMNS_MB num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SCALARMATRIXCOLUMNS_C num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define SCALARMATRIXCOLUMNS_NUM_COLS num_var[3].nref[0].value[ num_var[3].byref_offset ]
#define SCALARMATRIXCOLUMNS_S_VALUE num_var[4].nref[0].value[ num_var[4].byref_offset ]
-#define FN_ScalarMatrixRows 418
+#define FN_ScalarMatrixRows 419
#define SCALARMATRIXROWS_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SCALARMATRIXROWS_MB num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SCALARMATRIXROWS_R num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define SCALARMATRIXROWS_NUM_ROWS num_var[3].nref[0].value[ num_var[3].byref_offset ]
#define SCALARMATRIXROWS_S_VALUE num_var[4].nref[0].value[ num_var[4].byref_offset ]
-#define FN_SquareMatrix 419
+#define FN_SquareMatrix 420
#define SQUAREMATRIX_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SQUAREMATRIX_MB num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_CofactorMatrix 420
+#define FN_CofactorMatrix 421
#define COFACTORMATRIX_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define COFACTORMATRIX_R num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define COFACTORMATRIX_C num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_SubtractMatrix 421
+#define FN_SubtractMatrix 422
#define SUBTRACTMATRIX_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SUBTRACTMATRIX_MB num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SUBTRACTMATRIX_MC num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_SwapMatrix 422
+#define FN_SwapMatrix 423
#define SWAPMATRIX_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SWAPMATRIX_MB num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_SwapMatrixColumn 423
+#define FN_SwapMatrixColumn 424
#define SWAPMATRIXCOLUMN_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SWAPMATRIXCOLUMN_C1 num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SWAPMATRIXCOLUMN_C2 num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_SwapMatrixRow 424
+#define FN_SwapMatrixRow 425
#define SWAPMATRIXROW_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SWAPMATRIXROW_R1 num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SWAPMATRIXROW_R2 num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_TransposeMatrix 425
+#define FN_TransposeMatrix 426
#define TRANSPOSEMATRIX_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define TRANSPOSEMATRIX_MB num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_UnAugmentMatrix 426
+#define FN_UnAugmentMatrix 427
#define UNAUGMENTMATRIX_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define UNAUGMENTMATRIX_MB num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define UNAUGMENTMATRIX_MC num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_ZeroMatrix 427
+#define FN_ZeroMatrix 428
#define ZEROMATRIX_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_GetMatrixSize 428
+#define FN_GetMatrixSize 429
#define GETMATRIXSIZE_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETMATRIXSIZE_R num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETMATRIXSIZE_C num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_IncrementMatrixRows 429
+#define FN_IncrementMatrixRows 430
#define INCREMENTMATRIXROWS_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define INCREMENTMATRIXROWS_MB num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define INCREMENTMATRIXROWS_R num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define INCREMENTMATRIXROWS_NUM_ROWS num_var[3].nref[0].value[ num_var[3].byref_offset ]
#define INCREMENTMATRIXROWS_VALUE num_var[4].nref[0].value[ num_var[4].byref_offset ]
-#define FN_IncrementMatrixColumns 430
+#define FN_IncrementMatrixColumns 431
#define INCREMENTMATRIXCOLUMNS_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define INCREMENTMATRIXCOLUMNS_MB num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define INCREMENTMATRIXCOLUMNS_C num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define INCREMENTMATRIXCOLUMNS_NUM_COLS num_var[3].nref[0].value[ num_var[3].byref_offset ]
#define INCREMENTMATRIXCOLUMNS_VALUE num_var[4].nref[0].value[ num_var[4].byref_offset ]
-#define FN_JoinMatrixRows 431
+#define FN_JoinMatrixRows 432
#define JOINMATRIXROWS_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define JOINMATRIXROWS_MB num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define JOINMATRIXROWS_MC num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_JoinMatrixColumns 432
+#define FN_JoinMatrixColumns 433
#define JOINMATRIXCOLUMNS_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define JOINMATRIXCOLUMNS_MB num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define JOINMATRIXCOLUMNS_MC num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_ClipMatrix 433
+#define FN_ClipMatrix 434
#define CLIPMATRIX_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define CLIPMATRIX_R num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define CLIPMATRIX_C num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define CLIPMATRIX_NUM_ROWS num_var[3].nref[0].value[ num_var[3].byref_offset ]
#define CLIPMATRIX_NUM_COLS num_var[4].nref[0].value[ num_var[4].byref_offset ]
#define CLIPMATRIX_MB num_var[5].nref[0].value[ num_var[5].byref_offset ]
-#define FN_SetMatrixTranslation 434
+#define FN_SetMatrixTranslation 435
#define SETMATRIXTRANSLATION_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETMATRIXTRANSLATION_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETMATRIXTRANSLATION_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define SETMATRIXTRANSLATION_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_SetMatrixRotation 435
+#define FN_SetMatrixRotation 436
#define SETMATRIXROTATION_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETMATRIXROTATION_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETMATRIXROTATION_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define SETMATRIXROTATION_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_SetMatrixScale 436
+#define FN_SetMatrixScale 437
#define SETMATRIXSCALE_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETMATRIXSCALE_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETMATRIXSCALE_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define SETMATRIXSCALE_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_GetMatrixTranslation 437
+#define FN_GetMatrixTranslation 438
#define GETMATRIXTRANSLATION_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETMATRIXTRANSLATION_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETMATRIXTRANSLATION_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define GETMATRIXTRANSLATION_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_GetMatrixRotation 438
+#define FN_GetMatrixRotation 439
#define GETMATRIXROTATION_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETMATRIXROTATION_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETMATRIXROTATION_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define GETMATRIXROTATION_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_GetMatrixScale 439
+#define FN_GetMatrixScale 440
#define GETMATRIXSCALE_MA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETMATRIXSCALE_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETMATRIXSCALE_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define GETMATRIXSCALE_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_GetClipboardText$ 440
-#define FN_SetClipboardText 441
+#define FN_GetClipboardText$ 441
+#define FN_SetClipboardText 442
#define SETCLIPBOARDTEXT_TXT$ str_var[0].sref[0].value[ str_var[0].byref_offset ]
-#define FN_HasClipboardText 442
-#define FN_ReadInput_Start 443
-#define FN_ReadInput_Stop 444
-#define FN_ReadInput_Text$ 445
-#define FN_ReadInput_SetText 446
+#define FN_HasClipboardText 443
+#define FN_ReadInput_Start 444
+#define FN_ReadInput_Stop 445
+#define FN_ReadInput_Text$ 446
+#define FN_ReadInput_SetText 447
#define READINPUT_SETTEXT_TXT$ str_var[0].sref[0].value[ str_var[0].byref_offset ]
-#define FN_ReadInput_ToggleBackspace 447
+#define FN_ReadInput_ToggleBackspace 448
#define READINPUT_TOGGLEBACKSPACE_FLAG num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_CreateSprite 448
+#define FN_CreateSprite 449
#define CREATESPRITE_IMG num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_DeleteSprite 449
+#define CREATESPRITE_FRAME_W num_var[1].nref[0].value[ num_var[1].byref_offset ]
+#define CREATESPRITE_FRAME_H num_var[2].nref[0].value[ num_var[2].byref_offset ]
+#define FN_DeleteSprite 450
#define DELETESPRITE_SPRITE num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_SetSpritePosition 450
+#define FN_SetSpritePosition 451
#define SETSPRITEPOSITION_SPRITE num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETSPRITEPOSITION_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETSPRITEPOSITION_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_LoadMesh 451
+#define FN_TranslateSprite 452
+#define TRANSLATESPRITE_SPRITE num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define TRANSLATESPRITE_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
+#define TRANSLATESPRITE_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
+#define FN_GetSpritePosition 453
+#define GETSPRITEPOSITION_SPRITE num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define GETSPRITEPOSITION_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
+#define GETSPRITEPOSITION_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
+#define FN_SpriteX 454
+#define SPRITEX_SPRITE num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define FN_SpriteY 455
+#define SPRITEY_SPRITE num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define FN_SetSpriteRotation 456
+#define SETSPRITEROTATION_SPRITE num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define SETSPRITEROTATION_ANGLE num_var[1].nref[0].value[ num_var[1].byref_offset ]
+#define FN_RotateSprite 457
+#define ROTATESPRITE_SPRITE num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define ROTATESPRITE_ANGLE num_var[1].nref[0].value[ num_var[1].byref_offset ]
+#define FN_GetSpriteRotation 458
+#define GETSPRITEROTATION_SPRITE num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define FN_SetSpriteScale 459
+#define SETSPRITESCALE_SPRITE num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define SETSPRITESCALE_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
+#define SETSPRITESCALE_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
+#define FN_ScaleSprite 460
+#define SCALESPRITE_SPRITE num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define SCALESPRITE_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
+#define SCALESPRITE_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
+#define FN_GetSpriteScale 461
+#define GETSPRITESCALE_SPRITE num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define GETSPRITESCALE_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
+#define GETSPRITESCALE_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
+#define FN_SetSpriteZ 462
+#define SETSPRITEZ_SPRITE num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define SETSPRITEZ_Z num_var[1].nref[0].value[ num_var[1].byref_offset ]
+#define FN_SpriteZ 463
+#define SPRITEZ_SPRITE num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define FN_GetSpriteSize 464
+#define GETSPRITESIZE_SPRITE num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define GETSPRITESIZE_W num_var[1].nref[0].value[ num_var[1].byref_offset ]
+#define GETSPRITESIZE_H num_var[2].nref[0].value[ num_var[2].byref_offset ]
+#define FN_SpriteWidth 465
+#define SPRITEWIDTH_SPRITE num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define FN_SpriteHeight 466
+#define SPRITEHEIGHT_SPRITE num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define FN_SetSpriteVisible 467
+#define SETSPRITEVISIBLE_SPRITE num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define SETSPRITEVISIBLE_FLAG num_var[1].nref[0].value[ num_var[1].byref_offset ]
+#define FN_SpriteIsVisible 468
+#define SPRITEISVISIBLE_SPRITE num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define FN_SetSpriteSolid 469
+#define SETSPRITESOLID_SPRITE num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define SETSPRITESOLID_FLAG num_var[1].nref[0].value[ num_var[1].byref_offset ]
+#define FN_SpriteIsSolid 470
+#define SPRITEISSOLID_SPRITE num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define FN_SetSpriteType 471
+#define SETSPRITETYPE_SPRITE num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define SETSPRITETYPE_SPRITE_TYPE num_var[1].nref[0].value[ num_var[1].byref_offset ]
+#define FN_GetSpriteType 472
+#define GETSPRITETYPE_SPRITE num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define FN_SetSpriteSource 473
+#define SETSPRITESOURCE_SPRITE num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define SETSPRITESOURCE_IMG num_var[1].nref[0].value[ num_var[1].byref_offset ]
+#define FN_GetSpriteSource 474
+#define GETSPRITESOURCE_SPRITE num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define FN_CreateSpriteAnimation 475
+#define CREATESPRITEANIMATION_SPRITE num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define CREATESPRITEANIMATION_ANIM_LENGTH num_var[1].nref[0].value[ num_var[1].byref_offset ]
+#define CREATESPRITEANIMATION_SPEED num_var[2].nref[0].value[ num_var[2].byref_offset ]
+#define FN_SetSpriteFrame 476
+#define SETSPRITEFRAME_SPRITE num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define SETSPRITEFRAME_FRAME num_var[1].nref[0].value[ num_var[1].byref_offset ]
+#define FN_GetSpriteFrame 477
+#define GETSPRITEFRAME_SPRITE num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define FN_SetSpriteAnimationFrame 478
+#define SETSPRITEANIMATIONFRAME_SPRITE num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define SETSPRITEANIMATIONFRAME_ANIMATION num_var[1].nref[0].value[ num_var[1].byref_offset ]
+#define SETSPRITEANIMATIONFRAME_ANIM_FRAME num_var[2].nref[0].value[ num_var[2].byref_offset ]
+#define SETSPRITEANIMATIONFRAME_FRAME num_var[3].nref[0].value[ num_var[3].byref_offset ]
+#define FN_GetSpriteAnimationFrame 479
+#define GETSPRITEANIMATIONFRAME_SPRITE num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define GETSPRITEANIMATIONFRAME_ANIMATION num_var[1].nref[0].value[ num_var[1].byref_offset ]
+#define GETSPRITEANIMATIONFRAME_ANIM_FRAME num_var[2].nref[0].value[ num_var[2].byref_offset ]
+#define FN_SetSpriteAnimationLength 480
+#define SETSPRITEANIMATIONLENGTH_SPRITE num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define SETSPRITEANIMATIONLENGTH_ANIMATION num_var[1].nref[0].value[ num_var[1].byref_offset ]
+#define SETSPRITEANIMATIONLENGTH_ANIM_LENGTH num_var[2].nref[0].value[ num_var[2].byref_offset ]
+#define FN_GetSpriteAnimationLength 481
+#define GETSPRITEANIMATIONLENGTH_SPRITE num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define GETSPRITEANIMATIONLENGTH_ANIMATION num_var[1].nref[0].value[ num_var[1].byref_offset ]
+#define FN_SetSpriteAnimationSpeed 482
+#define SETSPRITEANIMATIONSPEED_SPRITE num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define SETSPRITEANIMATIONSPEED_ANIMATION num_var[1].nref[0].value[ num_var[1].byref_offset ]
+#define SETSPRITEANIMATIONSPEED_SPEED num_var[2].nref[0].value[ num_var[2].byref_offset ]
+#define FN_GetSpriteAnimationSpeed 483
+#define GETSPRITEANIMATIONSPEED_SPRITE num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define GETSPRITEANIMATIONSPEED_ANIMATION num_var[1].nref[0].value[ num_var[1].byref_offset ]
+#define FN_SetSpriteAnimation 484
+#define SETSPRITEANIMATION_SPRITE num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define SETSPRITEANIMATION_ANIMATION num_var[1].nref[0].value[ num_var[1].byref_offset ]
+#define SETSPRITEANIMATION_NUM_LOOPS num_var[2].nref[0].value[ num_var[2].byref_offset ]
+#define FN_GetSpriteAnimation 485
+#define GETSPRITEANIMATION_SPRITE num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define FN_GetSpriteCurrentAnimationFrame 486
+#define GETSPRITECURRENTANIMATIONFRAME_SPRITE num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define FN_NumSpriteAnimationLoops 487
+#define NUMSPRITEANIMATIONLOOPS_SPRITE num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define FN_SpriteAnimationIsPlaying 488
+#define SPRITEANIMATIONISPLAYING_SPRITE num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define FN_DeleteSpriteAnimation 489
+#define DELETESPRITEANIMATION_SPRITE num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define DELETESPRITEANIMATION_ANIMATION num_var[1].nref[0].value[ num_var[1].byref_offset ]
+#define FN_LoadMesh 490
#define LOADMESH_MESH_FILE$ str_var[0].sref[0].value[ str_var[0].byref_offset ]
-#define FN_DeleteMesh 452
+#define FN_DeleteMesh 491
#define DELETEMESH_MESH num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_CreateMesh 453
-#define FN_AddMeshBuffer 454
+#define FN_CreateMesh 492
+#define FN_AddMeshBuffer 493
#define ADDMESHBUFFER_MESH num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define ADDMESHBUFFER_VERTEX_COUNT num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define ADDMESHBUFFER_VERTEX_DATA num_var[2].nref[0].value[ num_var[2].byref_offset ]
@@ -1299,217 +1414,227 @@
#define ADDMESHBUFFER_UV_DATA num_var[4].nref[0].value[ num_var[4].byref_offset ]
#define ADDMESHBUFFER_INDEX_COUNT num_var[5].nref[0].value[ num_var[5].byref_offset ]
#define ADDMESHBUFFER_INDEX_DATA num_var[6].nref[0].value[ num_var[6].byref_offset ]
-#define FN_LoadMeshFromArchive 455
+#define FN_LoadMeshFromArchive 494
#define LOADMESHFROMARCHIVE_ARCHIVE$ str_var[0].sref[0].value[ str_var[0].byref_offset ]
#define LOADMESHFROMARCHIVE_MESH_FILE$ str_var[1].sref[0].value[ str_var[1].byref_offset ]
-#define FN_CreatePlaneMesh 456
+#define FN_CreatePlaneMesh 495
#define CREATEPLANEMESH_W num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define CREATEPLANEMESH_H num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define CREATEPLANEMESH_TILECOUNT_W num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define CREATEPLANEMESH_TILECOUNT_H num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_CreateMeshActor 457
-#define CREATEMESHACTOR_MESH num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_CreateMeshOctreeActor 458
-#define CREATEMESHOCTREEACTOR_MESH num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_CreateCubeActor 459
+#define FN_LoadAN8 496
+#define LOADAN8_AN8_FILE$ str_var[0].sref[0].value[ str_var[0].byref_offset ]
+#define FN_LoadMeshFromAN8 497
+#define LOADMESHFROMAN8_AN8_PROJECT num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define LOADMESHFROMAN8_AN8_SCENE$ str_var[0].sref[0].value[ str_var[0].byref_offset ]
+#define FN_GetNumAN8Scenes 498
+#define GETNUMAN8SCENES_AN8_PROJECT num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define FN_GetAN8SceneName$ 499
+#define GETAN8SCENENAME$_AN8_PROJECT num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define GETAN8SCENENAME$_SCENE_NUM num_var[1].nref[0].value[ num_var[1].byref_offset ]
+#define FN_CreateAnimatedActor 500
+#define CREATEANIMATEDACTOR_MESH num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define FN_CreateOctreeActor 501
+#define CREATEOCTREEACTOR_MESH num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define FN_CreateCubeActor 502
#define CREATECUBEACTOR_CUBE_SIZE num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_CreateSphereActor 460
+#define FN_CreateSphereActor 503
#define CREATESPHEREACTOR_RADIUS num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_CreateWaterActor 461
+#define FN_CreateWaterActor 504
#define CREATEWATERACTOR_MESH num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define CREATEWATERACTOR_WAVEHEIGHT num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define CREATEWATERACTOR_WAVESPEED num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define CREATEWATERACTOR_WAVELENGTH num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_CreateLightActor 462
-#define FN_CreateBillboardActor 463
-#define FN_CreateTerrainActor 464
+#define FN_CreateLightActor 505
+#define FN_CreateBillboardActor 506
+#define FN_CreateTerrainActor 507
#define CREATETERRAINACTOR_HMAP_FILE$ str_var[0].sref[0].value[ str_var[0].byref_offset ]
-#define FN_CreateParticleActor 465
+#define FN_CreateParticleActor 508
#define CREATEPARTICLEACTOR_PARTICLE_TYPE num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_DeleteActor 466
+#define FN_DeleteActor 509
#define DELETEACTOR_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_GetActorTransform 467
+#define FN_GetActorTransform 510
#define GETACTORTRANSFORM_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETACTORTRANSFORM_MATRIX num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_SetActorPosition 468
+#define FN_SetActorPosition 511
#define SETACTORPOSITION_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETACTORPOSITION_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETACTORPOSITION_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define SETACTORPOSITION_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_TranslateActorLocal 469
+#define FN_TranslateActorLocal 512
#define TRANSLATEACTORLOCAL_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define TRANSLATEACTORLOCAL_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define TRANSLATEACTORLOCAL_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define TRANSLATEACTORLOCAL_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_TranslateActorWorld 470
+#define FN_TranslateActorWorld 513
#define TRANSLATEACTORWORLD_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define TRANSLATEACTORWORLD_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define TRANSLATEACTORWORLD_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define TRANSLATEACTORWORLD_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_GetActorPosition 471
+#define FN_GetActorPosition 514
#define GETACTORPOSITION_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETACTORPOSITION_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETACTORPOSITION_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define GETACTORPOSITION_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_SetActorScale 472
+#define FN_SetActorScale 515
#define SETACTORSCALE_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETACTORSCALE_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETACTORSCALE_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define SETACTORSCALE_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_ScaleActor 473
+#define FN_ScaleActor 516
#define SCALEACTOR_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SCALEACTOR_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SCALEACTOR_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define SCALEACTOR_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_GetActorScale 474
+#define FN_GetActorScale 517
#define GETACTORSCALE_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETACTORSCALE_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETACTORSCALE_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define GETACTORSCALE_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_SetActorRotation 475
+#define FN_SetActorRotation 518
#define SETACTORROTATION_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETACTORROTATION_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETACTORROTATION_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define SETACTORROTATION_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_RotateActor 476
+#define FN_RotateActor 519
#define ROTATEACTOR_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define ROTATEACTOR_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define ROTATEACTOR_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define ROTATEACTOR_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_GetActorRotation 477
+#define FN_GetActorRotation 520
#define GETACTORROTATION_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETACTORROTATION_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETACTORROTATION_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define GETACTORROTATION_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_SetActorVisible 478
+#define FN_SetActorVisible 521
#define SETACTORVISIBLE_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETACTORVISIBLE_FLAG num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_ActorIsVisible 479
+#define FN_ActorIsVisible 522
#define ACTORISVISIBLE_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_SetActorAutoCulling 480
+#define FN_SetActorAutoCulling 523
#define SETACTORAUTOCULLING_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETACTORAUTOCULLING_CULL_TYPE num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_GetActorAutoCulling 481
+#define FN_GetActorAutoCulling 524
#define GETACTORAUTOCULLING_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_AddActorShadow 482
+#define FN_AddActorShadow 525
#define ADDACTORSHADOW_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_RemoveActorShadow 483
+#define FN_RemoveActorShadow 526
#define REMOVEACTORSHADOW_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_ActorExists 484
+#define FN_ActorExists 527
#define ACTOREXISTS_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_SetGravity3D 485
+#define FN_SetGravity3D 528
#define SETGRAVITY3D_X num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETGRAVITY3D_Y num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETGRAVITY3D_Z num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_GetGravity3D 486
+#define FN_GetGravity3D 529
#define GETGRAVITY3D_X num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETGRAVITY3D_Y num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETGRAVITY3D_Z num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_SetActorCollisionShape 487
+#define FN_SetActorCollisionShape 530
#define SETACTORCOLLISIONSHAPE_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETACTORCOLLISIONSHAPE_SHAPE_TYPE num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETACTORCOLLISIONSHAPE_MASS num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_GetActorCollisionShape 488
+#define FN_GetActorCollisionShape 531
#define GETACTORCOLLISIONSHAPE_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_SetActorSolid 489
+#define FN_SetActorSolid 532
#define SETACTORSOLID_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETACTORSOLID_FLAG num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_ActorIsSolid 490
+#define FN_ActorIsSolid 533
#define ACTORISSOLID_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_GetActorCollision 491
+#define FN_GetActorCollision 534
#define GETACTORCOLLISION_ACTOR1 num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETACTORCOLLISION_ACTOR2 num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_SetActorGravity 492
+#define FN_SetActorGravity 535
#define SETACTORGRAVITY_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETACTORGRAVITY_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETACTORGRAVITY_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define SETACTORGRAVITY_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_GetActorGravity 493
+#define FN_GetActorGravity 536
#define GETACTORGRAVITY_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETACTORGRAVITY_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETACTORGRAVITY_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define GETACTORGRAVITY_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_setActorDamping 494
+#define FN_setActorDamping 537
#define SETACTORDAMPING_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETACTORDAMPING_LIN_DAMPING num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETACTORDAMPING_ANG_DAMPING num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_getActorLinearDamping 495
+#define FN_getActorLinearDamping 538
#define GETACTORLINEARDAMPING_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getActorAngularDamping 496
+#define FN_getActorAngularDamping 539
#define GETACTORANGULARDAMPING_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getActorLinearSleepThreshold 497
+#define FN_getActorLinearSleepThreshold 540
#define GETACTORLINEARSLEEPTHRESHOLD_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getActorAngularSleepThreshold 498
+#define FN_getActorAngularSleepThreshold 541
#define GETACTORANGULARSLEEPTHRESHOLD_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_applyActorDamping 499
+#define FN_applyActorDamping 542
#define APPLYACTORDAMPING_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define APPLYACTORDAMPING_TIMESTEP num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_setActorMassProperties 500
+#define FN_setActorMassProperties 543
#define SETACTORMASSPROPERTIES_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETACTORMASSPROPERTIES_MASS num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETACTORMASSPROPERTIES_INERTIA_X num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define SETACTORMASSPROPERTIES_INERTIA_Y num_var[3].nref[0].value[ num_var[3].byref_offset ]
#define SETACTORMASSPROPERTIES_INERTIA_Z num_var[4].nref[0].value[ num_var[4].byref_offset ]
-#define FN_getActorLinearFactor 501
+#define FN_getActorLinearFactor 544
#define GETACTORLINEARFACTOR_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETACTORLINEARFACTOR_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETACTORLINEARFACTOR_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define GETACTORLINEARFACTOR_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_setActorLinearFactor 502
+#define FN_setActorLinearFactor 545
#define SETACTORLINEARFACTOR_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETACTORLINEARFACTOR_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETACTORLINEARFACTOR_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define SETACTORLINEARFACTOR_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_getActorInverseMass 503
+#define FN_getActorInverseMass 546
#define GETACTORINVERSEMASS_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_integrateActorVelocities 504
+#define FN_integrateActorVelocities 547
#define INTEGRATEACTORVELOCITIES_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define INTEGRATEACTORVELOCITIES_V_STEP num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_applyActorCentralForceLocal 505
+#define FN_applyActorCentralForceLocal 548
#define APPLYACTORCENTRALFORCELOCAL_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define APPLYACTORCENTRALFORCELOCAL_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define APPLYACTORCENTRALFORCELOCAL_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define APPLYACTORCENTRALFORCELOCAL_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_applyActorCentralForceWorld 506
+#define FN_applyActorCentralForceWorld 549
#define APPLYACTORCENTRALFORCEWORLD_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define APPLYACTORCENTRALFORCEWORLD_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define APPLYACTORCENTRALFORCEWORLD_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define APPLYACTORCENTRALFORCEWORLD_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_getActorTotalForce 507
+#define FN_getActorTotalForce 550
#define GETACTORTOTALFORCE_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETACTORTOTALFORCE_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETACTORTOTALFORCE_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define GETACTORTOTALFORCE_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_getActorTotalTorque 508
+#define FN_getActorTotalTorque 551
#define GETACTORTOTALTORQUE_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETACTORTOTALTORQUE_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETACTORTOTALTORQUE_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define GETACTORTOTALTORQUE_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_getActorInverseInertiaDiagLocal 509
+#define FN_getActorInverseInertiaDiagLocal 552
#define GETACTORINVERSEINERTIADIAGLOCAL_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETACTORINVERSEINERTIADIAGLOCAL_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETACTORINVERSEINERTIADIAGLOCAL_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define GETACTORINVERSEINERTIADIAGLOCAL_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_setActorInverseInertiaDiagLocal 510
+#define FN_setActorInverseInertiaDiagLocal 553
#define SETACTORINVERSEINERTIADIAGLOCAL_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETACTORINVERSEINERTIADIAGLOCAL_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETACTORINVERSEINERTIADIAGLOCAL_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define SETACTORINVERSEINERTIADIAGLOCAL_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_setActorSleepThresholds 511
+#define FN_setActorSleepThresholds 554
#define SETACTORSLEEPTHRESHOLDS_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETACTORSLEEPTHRESHOLDS_LINEAR num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETACTORSLEEPTHRESHOLDS_ANGULAR num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_applyActorTorqueLocal 512
+#define FN_applyActorTorqueLocal 555
#define APPLYACTORTORQUELOCAL_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define APPLYACTORTORQUELOCAL_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define APPLYACTORTORQUELOCAL_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define APPLYACTORTORQUELOCAL_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_applyActorTorqueWorld 513
+#define FN_applyActorTorqueWorld 556
#define APPLYACTORTORQUEWORLD_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define APPLYACTORTORQUEWORLD_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define APPLYACTORTORQUEWORLD_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define APPLYACTORTORQUEWORLD_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_applyActorForceLocal 514
+#define FN_applyActorForceLocal 557
#define APPLYACTORFORCELOCAL_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define APPLYACTORFORCELOCAL_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define APPLYACTORFORCELOCAL_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
@@ -1517,7 +1642,7 @@
#define APPLYACTORFORCELOCAL_REL_X num_var[4].nref[0].value[ num_var[4].byref_offset ]
#define APPLYACTORFORCELOCAL_REL_Y num_var[5].nref[0].value[ num_var[5].byref_offset ]
#define APPLYACTORFORCELOCAL_REL_Z num_var[6].nref[0].value[ num_var[6].byref_offset ]
-#define FN_applyActorForceWorld 515
+#define FN_applyActorForceWorld 558
#define APPLYACTORFORCEWORLD_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define APPLYACTORFORCEWORLD_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define APPLYACTORFORCEWORLD_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
@@ -1525,27 +1650,27 @@
#define APPLYACTORFORCEWORLD_REL_X num_var[4].nref[0].value[ num_var[4].byref_offset ]
#define APPLYACTORFORCEWORLD_REL_Y num_var[5].nref[0].value[ num_var[5].byref_offset ]
#define APPLYACTORFORCEWORLD_REL_Z num_var[6].nref[0].value[ num_var[6].byref_offset ]
-#define FN_applyActorCentralImpulseLocal 516
+#define FN_applyActorCentralImpulseLocal 559
#define APPLYACTORCENTRALIMPULSELOCAL_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define APPLYACTORCENTRALIMPULSELOCAL_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define APPLYACTORCENTRALIMPULSELOCAL_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define APPLYACTORCENTRALIMPULSELOCAL_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_applyActorCentralImpulseWorld 517
+#define FN_applyActorCentralImpulseWorld 560
#define APPLYACTORCENTRALIMPULSEWORLD_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define APPLYACTORCENTRALIMPULSEWORLD_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define APPLYACTORCENTRALIMPULSEWORLD_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define APPLYACTORCENTRALIMPULSEWORLD_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_applyActorTorqueImpulseLocal 518
+#define FN_applyActorTorqueImpulseLocal 561
#define APPLYACTORTORQUEIMPULSELOCAL_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define APPLYACTORTORQUEIMPULSELOCAL_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define APPLYACTORTORQUEIMPULSELOCAL_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define APPLYACTORTORQUEIMPULSELOCAL_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_applyActorTorqueImpulseWorld 519
+#define FN_applyActorTorqueImpulseWorld 562
#define APPLYACTORTORQUEIMPULSEWORLD_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define APPLYACTORTORQUEIMPULSEWORLD_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define APPLYACTORTORQUEIMPULSEWORLD_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define APPLYACTORTORQUEIMPULSEWORLD_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_applyActorImpulseLocal 520
+#define FN_applyActorImpulseLocal 563
#define APPLYACTORIMPULSELOCAL_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define APPLYACTORIMPULSELOCAL_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define APPLYACTORIMPULSELOCAL_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
@@ -1553,7 +1678,7 @@
#define APPLYACTORIMPULSELOCAL_REL_X num_var[4].nref[0].value[ num_var[4].byref_offset ]
#define APPLYACTORIMPULSELOCAL_REL_Y num_var[5].nref[0].value[ num_var[5].byref_offset ]
#define APPLYACTORIMPULSELOCAL_REL_Z num_var[6].nref[0].value[ num_var[6].byref_offset ]
-#define FN_applyActorImpulseWorld 521
+#define FN_applyActorImpulseWorld 564
#define APPLYACTORIMPULSEWORLD_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define APPLYACTORIMPULSEWORLD_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define APPLYACTORIMPULSEWORLD_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
@@ -1561,52 +1686,52 @@
#define APPLYACTORIMPULSEWORLD_REL_X num_var[4].nref[0].value[ num_var[4].byref_offset ]
#define APPLYACTORIMPULSEWORLD_REL_Y num_var[5].nref[0].value[ num_var[5].byref_offset ]
#define APPLYACTORIMPULSEWORLD_REL_Z num_var[6].nref[0].value[ num_var[6].byref_offset ]
-#define FN_clearActorForces 522
+#define FN_clearActorForces 565
#define CLEARACTORFORCES_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_updateActorInertiaTensor 523
+#define FN_updateActorInertiaTensor 566
#define UPDATEACTORINERTIATENSOR_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getActorCOMPosition 524
+#define FN_getActorCOMPosition 567
#define GETACTORCOMPOSITION_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETACTORCOMPOSITION_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETACTORCOMPOSITION_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define GETACTORCOMPOSITION_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_getActorRotationQ 525
+#define FN_getActorRotationQ 568
#define GETACTORROTATIONQ_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETACTORROTATIONQ_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETACTORROTATIONQ_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define GETACTORROTATIONQ_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
#define GETACTORROTATIONQ_W num_var[4].nref[0].value[ num_var[4].byref_offset ]
-#define FN_getActorLinearVelocityWorld 526
+#define FN_getActorLinearVelocityWorld 569
#define GETACTORLINEARVELOCITYWORLD_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETACTORLINEARVELOCITYWORLD_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETACTORLINEARVELOCITYWORLD_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define GETACTORLINEARVELOCITYWORLD_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_getActorAngularVelocityWorld 527
+#define FN_getActorAngularVelocityWorld 570
#define GETACTORANGULARVELOCITYWORLD_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETACTORANGULARVELOCITYWORLD_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETACTORANGULARVELOCITYWORLD_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define GETACTORANGULARVELOCITYWORLD_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_setActorLinearVelocityLocal 528
+#define FN_setActorLinearVelocityLocal 571
#define SETACTORLINEARVELOCITYLOCAL_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETACTORLINEARVELOCITYLOCAL_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETACTORLINEARVELOCITYLOCAL_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define SETACTORLINEARVELOCITYLOCAL_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_setActorLinearVelocityWorld 529
+#define FN_setActorLinearVelocityWorld 572
#define SETACTORLINEARVELOCITYWORLD_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETACTORLINEARVELOCITYWORLD_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETACTORLINEARVELOCITYWORLD_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define SETACTORLINEARVELOCITYWORLD_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_setActorAngularVelocityLocal 530
+#define FN_setActorAngularVelocityLocal 573
#define SETACTORANGULARVELOCITYLOCAL_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETACTORANGULARVELOCITYLOCAL_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETACTORANGULARVELOCITYLOCAL_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define SETACTORANGULARVELOCITYLOCAL_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_setActorAngularVelocityWorld 531
+#define FN_setActorAngularVelocityWorld 574
#define SETACTORANGULARVELOCITYWORLD_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETACTORANGULARVELOCITYWORLD_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETACTORANGULARVELOCITYWORLD_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define SETACTORANGULARVELOCITYWORLD_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_getActorLocalPointVelocity 532
+#define FN_getActorLocalPointVelocity 575
#define GETACTORLOCALPOINTVELOCITY_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETACTORLOCALPOINTVELOCITY_REL_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETACTORLOCALPOINTVELOCITY_REL_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
@@ -1614,17 +1739,17 @@
#define GETACTORLOCALPOINTVELOCITY_X num_var[4].nref[0].value[ num_var[4].byref_offset ]
#define GETACTORLOCALPOINTVELOCITY_Y num_var[5].nref[0].value[ num_var[5].byref_offset ]
#define GETACTORLOCALPOINTVELOCITY_Z num_var[6].nref[0].value[ num_var[6].byref_offset ]
-#define FN_getActorLinearVelocityLocal 533
+#define FN_getActorLinearVelocityLocal 576
#define GETACTORLINEARVELOCITYLOCAL_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETACTORLINEARVELOCITYLOCAL_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETACTORLINEARVELOCITYLOCAL_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define GETACTORLINEARVELOCITYLOCAL_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_getActorAngularVelocityLocal 534
+#define FN_getActorAngularVelocityLocal 577
#define GETACTORANGULARVELOCITYLOCAL_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETACTORANGULARVELOCITYLOCAL_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETACTORANGULARVELOCITYLOCAL_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define GETACTORANGULARVELOCITYLOCAL_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_getActorAABB 535
+#define FN_getActorAABB 578
#define GETACTORAABB_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETACTORAABB_MIN_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETACTORAABB_MIN_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
@@ -1632,7 +1757,7 @@
#define GETACTORAABB_MAX_X num_var[4].nref[0].value[ num_var[4].byref_offset ]
#define GETACTORAABB_MAX_Y num_var[5].nref[0].value[ num_var[5].byref_offset ]
#define GETACTORAABB_MAX_Z num_var[6].nref[0].value[ num_var[6].byref_offset ]
-#define FN_computeActorImpulseDenominator 536
+#define FN_computeActorImpulseDenominator 579
#define COMPUTEACTORIMPULSEDENOMINATOR_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define COMPUTEACTORIMPULSEDENOMINATOR_POS_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define COMPUTEACTORIMPULSEDENOMINATOR_POS_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
@@ -1640,47 +1765,47 @@
#define COMPUTEACTORIMPULSEDENOMINATOR_NORMAL_X num_var[4].nref[0].value[ num_var[4].byref_offset ]
#define COMPUTEACTORIMPULSEDENOMINATOR_NORMAL_Y num_var[5].nref[0].value[ num_var[5].byref_offset ]
#define COMPUTEACTORIMPULSEDENOMINATOR_NORMAL_Z num_var[6].nref[0].value[ num_var[6].byref_offset ]
-#define FN_computeActorAngularImpulseDenominator 537
+#define FN_computeActorAngularImpulseDenominator 580
#define COMPUTEACTORANGULARIMPULSEDENOMINATOR_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define COMPUTEACTORANGULARIMPULSEDENOMINATOR_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define COMPUTEACTORANGULARIMPULSEDENOMINATOR_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define COMPUTEACTORANGULARIMPULSEDENOMINATOR_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_setActorAngularFactor 538
+#define FN_setActorAngularFactor 581
#define SETACTORANGULARFACTOR_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETACTORANGULARFACTOR_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETACTORANGULARFACTOR_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define SETACTORANGULARFACTOR_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_getActorAngularFactor 539
+#define FN_getActorAngularFactor 582
#define GETACTORANGULARFACTOR_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETACTORANGULARFACTOR_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETACTORANGULARFACTOR_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define GETACTORANGULARFACTOR_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_computeActorGyroImpulseLocal 540
+#define FN_computeActorGyroImpulseLocal 583
#define COMPUTEACTORGYROIMPULSELOCAL_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define COMPUTEACTORGYROIMPULSELOCAL_DT num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define COMPUTEACTORGYROIMPULSELOCAL_X num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define COMPUTEACTORGYROIMPULSELOCAL_Y num_var[3].nref[0].value[ num_var[3].byref_offset ]
#define COMPUTEACTORGYROIMPULSELOCAL_Z num_var[4].nref[0].value[ num_var[4].byref_offset ]
-#define FN_computeActorGyroImpulseWorld 541
+#define FN_computeActorGyroImpulseWorld 584
#define COMPUTEACTORGYROIMPULSEWORLD_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define COMPUTEACTORGYROIMPULSEWORLD_DT num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define COMPUTEACTORGYROIMPULSEWORLD_X num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define COMPUTEACTORGYROIMPULSEWORLD_Y num_var[3].nref[0].value[ num_var[3].byref_offset ]
#define COMPUTEACTORGYROIMPULSEWORLD_Z num_var[4].nref[0].value[ num_var[4].byref_offset ]
-#define FN_getActorLocalInertia 542
+#define FN_getActorLocalInertia 585
#define GETACTORLOCALINERTIA_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETACTORLOCALINERTIA_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETACTORLOCALINERTIA_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define GETACTORLOCALINERTIA_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_SetActorSleepState 543
+#define FN_SetActorSleepState 586
#define SETACTORSLEEPSTATE_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETACTORSLEEPSTATE_STATE num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_createPointConstraint 544
+#define FN_createPointConstraint 587
#define CREATEPOINTCONSTRAINT_ACTORA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define CREATEPOINTCONSTRAINT_PXA num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define CREATEPOINTCONSTRAINT_PYA num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define CREATEPOINTCONSTRAINT_PZA num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_createPointConstraintEx 545
+#define FN_createPointConstraintEx 588
#define CREATEPOINTCONSTRAINTEX_ACTORA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define CREATEPOINTCONSTRAINTEX_ACTORB num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define CREATEPOINTCONSTRAINTEX_PXA num_var[2].nref[0].value[ num_var[2].byref_offset ]
@@ -1689,47 +1814,47 @@
#define CREATEPOINTCONSTRAINTEX_PXB num_var[5].nref[0].value[ num_var[5].byref_offset ]
#define CREATEPOINTCONSTRAINTEX_PYB num_var[6].nref[0].value[ num_var[6].byref_offset ]
#define CREATEPOINTCONSTRAINTEX_PZB num_var[7].nref[0].value[ num_var[7].byref_offset ]
-#define FN_setPointPivotA 546
+#define FN_setPointPivotA 589
#define SETPOINTPIVOTA_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETPOINTPIVOTA_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETPOINTPIVOTA_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define SETPOINTPIVOTA_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_setPointPivotB 547
+#define FN_setPointPivotB 590
#define SETPOINTPIVOTB_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETPOINTPIVOTB_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETPOINTPIVOTB_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define SETPOINTPIVOTB_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_createHingeConstraint 548
+#define FN_createHingeConstraint 591
#define CREATEHINGECONSTRAINT_ACTORA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define CREATEHINGECONSTRAINT_FRAMEA num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define CREATEHINGECONSTRAINT_USEREFERENCEFRAMEA num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_createHingeConstraintEx 549
+#define FN_createHingeConstraintEx 592
#define CREATEHINGECONSTRAINTEX_ACTORA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define CREATEHINGECONSTRAINTEX_ACTORB num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define CREATEHINGECONSTRAINTEX_FRAMEA num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define CREATEHINGECONSTRAINTEX_FRAMEB num_var[3].nref[0].value[ num_var[3].byref_offset ]
#define CREATEHINGECONSTRAINTEX_USEREFERENCEFRAMEA num_var[4].nref[0].value[ num_var[4].byref_offset ]
-#define FN_createSlideConstraint 550
+#define FN_createSlideConstraint 593
#define CREATESLIDECONSTRAINT_ACTORA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define CREATESLIDECONSTRAINT_FRAMEINB_MATRIX num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define CREATESLIDECONSTRAINT_USELINEARREFERENCEFRAMEA num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_createSlideConstraintEx 551
+#define FN_createSlideConstraintEx 594
#define CREATESLIDECONSTRAINTEX_ACTORA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define CREATESLIDECONSTRAINTEX_ACTORB num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define CREATESLIDECONSTRAINTEX_FRAMEINA_MATRIX num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define CREATESLIDECONSTRAINTEX_FRAMEINB_MATRIX num_var[3].nref[0].value[ num_var[3].byref_offset ]
#define CREATESLIDECONSTRAINTEX_USELINEARREFERENCEFRAMEA num_var[4].nref[0].value[ num_var[4].byref_offset ]
-#define FN_createConeConstraint 552
+#define FN_createConeConstraint 595
#define CREATECONECONSTRAINT_ACTORA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define CREATECONECONSTRAINT_RBAFRAME_MATRIX num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_createConeConstraintEx 553
+#define FN_createConeConstraintEx 596
#define CREATECONECONSTRAINTEX_ACTORA num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define CREATECONECONSTRAINTEX_ACTORB num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define CREATECONECONSTRAINTEX_RBAFRAME_MATRIX num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define CREATECONECONSTRAINTEX_RBBFRAME_MATRIX num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_deleteConstraint 554
+#define FN_deleteConstraint 597
#define DELETECONSTRAINT_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getConstraintFrameOffsetA 555
+#define FN_getConstraintFrameOffsetA 598
#define GETCONSTRAINTFRAMEOFFSETA_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETCONSTRAINTFRAMEOFFSETA_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETCONSTRAINTFRAMEOFFSETA_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
@@ -1737,7 +1862,7 @@
#define GETCONSTRAINTFRAMEOFFSETA_RX num_var[4].nref[0].value[ num_var[4].byref_offset ]
#define GETCONSTRAINTFRAMEOFFSETA_RY num_var[5].nref[0].value[ num_var[5].byref_offset ]
#define GETCONSTRAINTFRAMEOFFSETA_RZ num_var[6].nref[0].value[ num_var[6].byref_offset ]
-#define FN_getConstraintFrameOffsetB 556
+#define FN_getConstraintFrameOffsetB 599
#define GETCONSTRAINTFRAMEOFFSETB_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETCONSTRAINTFRAMEOFFSETB_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETCONSTRAINTFRAMEOFFSETB_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
@@ -1745,43 +1870,43 @@
#define GETCONSTRAINTFRAMEOFFSETB_RX num_var[4].nref[0].value[ num_var[4].byref_offset ]
#define GETCONSTRAINTFRAMEOFFSETB_RY num_var[5].nref[0].value[ num_var[5].byref_offset ]
#define GETCONSTRAINTFRAMEOFFSETB_RZ num_var[6].nref[0].value[ num_var[6].byref_offset ]
-#define FN_useConstraintFrameOffset 557
+#define FN_useConstraintFrameOffset 600
#define USECONSTRAINTFRAMEOFFSET_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define USECONSTRAINTFRAMEOFFSET_FLAG num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_getHingeAngle 558
+#define FN_getHingeAngle 601
#define GETHINGEANGLE_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getHingeAngleEx 559
+#define FN_getHingeAngleEx 602
#define GETHINGEANGLEEX_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETHINGEANGLEEX_T_MATRIXA num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETHINGEANGLEEX_T_MATRIXB num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_getConstraintBreakingImpulseThreshold 560
+#define FN_getConstraintBreakingImpulseThreshold 603
#define GETCONSTRAINTBREAKINGIMPULSETHRESHOLD_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getConstraintAFrame 561
+#define FN_getConstraintAFrame 604
#define GETCONSTRAINTAFRAME_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETCONSTRAINTAFRAME_MA num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_getConstraintBFrame 562
+#define FN_getConstraintBFrame 605
#define GETCONSTRAINTBFRAME_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETCONSTRAINTBFRAME_MA num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_setHingeAxis 563
+#define FN_setHingeAxis 606
#define SETHINGEAXIS_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETHINGEAXIS_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETHINGEAXIS_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define SETHINGEAXIS_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_setConstraintBreakingImpulseThreshold 564
+#define FN_setConstraintBreakingImpulseThreshold 607
#define SETCONSTRAINTBREAKINGIMPULSETHRESHOLD_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETCONSTRAINTBREAKINGIMPULSETHRESHOLD_THRESHOLD num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_setConstraintFrames 565
+#define FN_setConstraintFrames 608
#define SETCONSTRAINTFRAMES_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETCONSTRAINTFRAMES_FRAMEA_MATRIX num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETCONSTRAINTFRAMES_FRAMEB_MATRIX num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_setHingeLimit 566
+#define FN_setHingeLimit 609
#define SETHINGELIMIT_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETHINGELIMIT_LOW num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETHINGELIMIT_HIGH num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define SETHINGELIMIT_SOFTNESS num_var[3].nref[0].value[ num_var[3].byref_offset ]
#define SETHINGELIMIT_BIAS_FACTOR num_var[4].nref[0].value[ num_var[4].byref_offset ]
#define SETHINGELIMIT_RELAXATION_FACTOR num_var[5].nref[0].value[ num_var[5].byref_offset ]
-#define FN_setConeLimit 567
+#define FN_setConeLimit 610
#define SETCONELIMIT_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETCONELIMIT_SWINGSPAN1 num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETCONELIMIT_SWINGSPAN2 num_var[2].nref[0].value[ num_var[2].byref_offset ]
@@ -1789,380 +1914,391 @@
#define SETCONELIMIT_SOFTNESS num_var[4].nref[0].value[ num_var[4].byref_offset ]
#define SETCONELIMIT_BIAS_FACTOR num_var[5].nref[0].value[ num_var[5].byref_offset ]
#define SETCONELIMIT_RELAXATION_FACTOR num_var[6].nref[0].value[ num_var[6].byref_offset ]
-#define FN_getHingeLimitBiasFactor 568
+#define FN_getHingeLimitBiasFactor 611
#define GETHINGELIMITBIASFACTOR_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getHingeLimitRelaxationFactor 569
+#define FN_getHingeLimitRelaxationFactor 612
#define GETHINGELIMITRELAXATIONFACTOR_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getHingeLimitSign 570
+#define FN_getHingeLimitSign 613
#define GETHINGELIMITSIGN_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getHingeSolveLimit 571
+#define FN_getHingeSolveLimit 614
#define GETHINGESOLVELIMIT_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_useHingeReferenceFrameA 572
+#define FN_useHingeReferenceFrameA 615
#define USEHINGEREFERENCEFRAMEA_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define USEHINGEREFERENCEFRAMEA_FLAG num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_getConstraintAppliedImpulse 573
+#define FN_getConstraintAppliedImpulse 616
#define GETCONSTRAINTAPPLIEDIMPULSE_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getConstraintFixedActor 574
+#define FN_getConstraintFixedActor 617
#define GETCONSTRAINTFIXEDACTOR_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getPointPivotA 575
+#define FN_getPointPivotA 618
#define GETPOINTPIVOTA_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETPOINTPIVOTA_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETPOINTPIVOTA_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define GETPOINTPIVOTA_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_getPointPivotB 576
+#define FN_getPointPivotB 619
#define GETPOINTPIVOTB_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETPOINTPIVOTB_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETPOINTPIVOTB_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define GETPOINTPIVOTB_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_getConstraintActorA 577
+#define FN_getConstraintActorA 620
#define GETCONSTRAINTACTORA_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getConstraintActorB 578
+#define FN_getConstraintActorB 621
#define GETCONSTRAINTACTORB_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_setConstraintSolverIterations 579
+#define FN_setConstraintSolverIterations 622
#define SETCONSTRAINTSOLVERITERATIONS_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETCONSTRAINTSOLVERITERATIONS_NUM num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_getConeBiasFactor 580
+#define FN_getConeBiasFactor 623
#define GETCONEBIASFACTOR_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getConeDamping 581
+#define FN_getConeDamping 624
#define GETCONEDAMPING_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getConeFixThresh 582
+#define FN_getConeFixThresh 625
#define GETCONEFIXTHRESH_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getConeLimit 583
+#define FN_getConeLimit 626
#define GETCONELIMIT_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETCONELIMIT_LIMIT_INDEX num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_getConstraintLimitSoftness 584
+#define FN_getConstraintLimitSoftness 627
#define GETCONSTRAINTLIMITSOFTNESS_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getConstraintSolverIterations 585
+#define FN_getConstraintSolverIterations 628
#define GETCONSTRAINTSOLVERITERATIONS_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getConeAnglePoint 586
+#define FN_getConeAnglePoint 629
#define GETCONEANGLEPOINT_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETCONEANGLEPOINT_ANGLE num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETCONEANGLEPOINT_C_LEN num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define GETCONEANGLEPOINT_X num_var[3].nref[0].value[ num_var[3].byref_offset ]
#define GETCONEANGLEPOINT_Y num_var[4].nref[0].value[ num_var[4].byref_offset ]
#define GETCONEANGLEPOINT_Z num_var[5].nref[0].value[ num_var[5].byref_offset ]
-#define FN_getConstraintAngularOnly 587
+#define FN_getConstraintAngularOnly 630
#define GETCONSTRAINTANGULARONLY_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getConeSolveSwingLimit 588
+#define FN_getConeSolveSwingLimit 631
#define GETCONESOLVESWINGLIMIT_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getConeSolveTwistLimit 589
+#define FN_getConeSolveTwistLimit 632
#define GETCONESOLVETWISTLIMIT_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getConeSwingSpan1 590
+#define FN_getConeSwingSpan1 633
#define GETCONESWINGSPAN1_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getConeSwingSpan2 591
+#define FN_getConeSwingSpan2 634
#define GETCONESWINGSPAN2_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getConeTwistAngle 592
+#define FN_getConeTwistAngle 635
#define GETCONETWISTANGLE_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getConeTwistLimitSign 593
+#define FN_getConeTwistLimitSign 636
#define GETCONETWISTLIMITSIGN_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getConeTwistSpan 594
+#define FN_getConeTwistSpan 637
#define GETCONETWISTSPAN_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_setConstraintAngularOnly 595
+#define FN_setConstraintAngularOnly 638
#define SETCONSTRAINTANGULARONLY_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETCONSTRAINTANGULARONLY_FLAG num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_setConeDamping 596
+#define FN_setConeDamping 639
#define SETCONEDAMPING_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETCONEDAMPING_DAMPING num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_setConeFixThresh 597
+#define FN_setConeFixThresh 640
#define SETCONEFIXTHRESH_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETCONEFIXTHRESH_FIXTHRESH num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_getSlideAnchorA 598
+#define FN_getSlideAnchorA 641
#define GETSLIDEANCHORA_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETSLIDEANCHORA_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETSLIDEANCHORA_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define GETSLIDEANCHORA_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_getSlideAnchorB 599
+#define FN_getSlideAnchorB 642
#define GETSLIDEANCHORB_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETSLIDEANCHORB_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETSLIDEANCHORB_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define GETSLIDEANCHORB_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_getSlideAngDepth 600
+#define FN_getSlideAngDepth 643
#define GETSLIDEANGDEPTH_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getSlideAngularPos 601
+#define FN_getSlideAngularPos 644
#define GETSLIDEANGULARPOS_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getSlideDampingDirAng 602
+#define FN_getSlideDampingDirAng 645
#define GETSLIDEDAMPINGDIRANG_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getSlideDampingDirLin 603
+#define FN_getSlideDampingDirLin 646
#define GETSLIDEDAMPINGDIRLIN_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getSlideDampingLimAng 604
+#define FN_getSlideDampingLimAng 647
#define GETSLIDEDAMPINGLIMANG_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getSlideDampingLimLin 605
+#define FN_getSlideDampingLimLin 648
#define GETSLIDEDAMPINGLIMLIN_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getSlideDampingOrthoAng 606
+#define FN_getSlideDampingOrthoAng 649
#define GETSLIDEDAMPINGORTHOANG_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getSlideDampingOrthoLin 607
+#define FN_getSlideDampingOrthoLin 650
#define GETSLIDEDAMPINGORTHOLIN_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getSlideLinearPos 608
+#define FN_getSlideLinearPos 651
#define GETSLIDELINEARPOS_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getSlideLinDepth 609
+#define FN_getSlideLinDepth 652
#define GETSLIDELINDEPTH_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getSlideLowerAngLimit 610
+#define FN_getSlideLowerAngLimit 653
#define GETSLIDELOWERANGLIMIT_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getSlideLowerLinLimit 611
+#define FN_getSlideLowerLinLimit 654
#define GETSLIDELOWERLINLIMIT_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getSlideRestitutionDirAng 612
+#define FN_getSlideRestitutionDirAng 655
#define GETSLIDERESTITUTIONDIRANG_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getSlideRestitutionDirLin 613
+#define FN_getSlideRestitutionDirLin 656
#define GETSLIDERESTITUTIONDIRLIN_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getSlideRestitutionLimAng 614
+#define FN_getSlideRestitutionLimAng 657
#define GETSLIDERESTITUTIONLIMANG_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getSlideRestitutionLimLin 615
+#define FN_getSlideRestitutionLimLin 658
#define GETSLIDERESTITUTIONLIMLIN_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getSlideRestitutionOrthoAng 616
+#define FN_getSlideRestitutionOrthoAng 659
#define GETSLIDERESTITUTIONORTHOANG_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getSlideRestitutionOrthoLin 617
+#define FN_getSlideRestitutionOrthoLin 660
#define GETSLIDERESTITUTIONORTHOLIN_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getSlideSoftnessDirAng 618
+#define FN_getSlideSoftnessDirAng 661
#define GETSLIDESOFTNESSDIRANG_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getSlideSoftnessDirLin 619
+#define FN_getSlideSoftnessDirLin 662
#define GETSLIDESOFTNESSDIRLIN_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getSlideSoftnessLimAng 620
+#define FN_getSlideSoftnessLimAng 663
#define GETSLIDESOFTNESSLIMANG_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getSlideSoftnessLimLin 621
+#define FN_getSlideSoftnessLimLin 664
#define GETSLIDESOFTNESSLIMLIN_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getSlideSoftnessOrthoAng 622
+#define FN_getSlideSoftnessOrthoAng 665
#define GETSLIDESOFTNESSORTHOANG_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getSlideSoftnessOrthoLin 623
+#define FN_getSlideSoftnessOrthoLin 666
#define GETSLIDESOFTNESSORTHOLIN_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getSlideSolveAngLimit 624
+#define FN_getSlideSolveAngLimit 667
#define GETSLIDESOLVEANGLIMIT_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getSlideSolveLinLimit 625
+#define FN_getSlideSolveLinLimit 668
#define GETSLIDESOLVELINLIMIT_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getSlideUpperAngLimit 626
+#define FN_getSlideUpperAngLimit 669
#define GETSLIDEUPPERANGLIMIT_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getSlideUpperLinLimit 627
+#define FN_getSlideUpperLinLimit 670
#define GETSLIDEUPPERLINLIMIT_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getSlideUseFrameOffset 628
+#define FN_getSlideUseFrameOffset 671
#define GETSLIDEUSEFRAMEOFFSET_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_setSlideDampingDirAng 629
+#define FN_setSlideDampingDirAng 672
#define SETSLIDEDAMPINGDIRANG_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETSLIDEDAMPINGDIRANG_N num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_setSlideDampingDirLin 630
+#define FN_setSlideDampingDirLin 673
#define SETSLIDEDAMPINGDIRLIN_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETSLIDEDAMPINGDIRLIN_N num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_setSlideDampingLimAng 631
+#define FN_setSlideDampingLimAng 674
#define SETSLIDEDAMPINGLIMANG_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETSLIDEDAMPINGLIMANG_N num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_setSlideDampingLimLin 632
+#define FN_setSlideDampingLimLin 675
#define SETSLIDEDAMPINGLIMLIN_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETSLIDEDAMPINGLIMLIN_N num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_setSlideDampingOrthoAng 633
+#define FN_setSlideDampingOrthoAng 676
#define SETSLIDEDAMPINGORTHOANG_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETSLIDEDAMPINGORTHOANG_N num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_setSlideDampingOrthoLin 634
+#define FN_setSlideDampingOrthoLin 677
#define SETSLIDEDAMPINGORTHOLIN_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETSLIDEDAMPINGORTHOLIN_N num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_setSlideLowerAngLimit 635
+#define FN_setSlideLowerAngLimit 678
#define SETSLIDELOWERANGLIMIT_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETSLIDELOWERANGLIMIT_N num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_setSlideLowerLinLimit 636
+#define FN_setSlideLowerLinLimit 679
#define SETSLIDELOWERLINLIMIT_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETSLIDELOWERLINLIMIT_N num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_setSlideRestitutionDirAng 637
+#define FN_setSlideRestitutionDirAng 680
#define SETSLIDERESTITUTIONDIRANG_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETSLIDERESTITUTIONDIRANG_N num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_setSlideRestitutionDirLin 638
+#define FN_setSlideRestitutionDirLin 681
#define SETSLIDERESTITUTIONDIRLIN_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETSLIDERESTITUTIONDIRLIN_N num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_setSlideRestitutionLimAng 639
+#define FN_setSlideRestitutionLimAng 682
#define SETSLIDERESTITUTIONLIMANG_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETSLIDERESTITUTIONLIMANG_N num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_setSlideRestitutionLimLin 640
+#define FN_setSlideRestitutionLimLin 683
#define SETSLIDERESTITUTIONLIMLIN_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETSLIDERESTITUTIONLIMLIN_N num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_setSlideRestitutionOrthoAng 641
+#define FN_setSlideRestitutionOrthoAng 684
#define SETSLIDERESTITUTIONORTHOANG_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETSLIDERESTITUTIONORTHOANG_N num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_setSlideRestitutionOrthoLin 642
+#define FN_setSlideRestitutionOrthoLin 685
#define SETSLIDERESTITUTIONORTHOLIN_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETSLIDERESTITUTIONORTHOLIN_N num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_setSlideSoftnessDirAng 643
+#define FN_setSlideSoftnessDirAng 686
#define SETSLIDESOFTNESSDIRANG_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETSLIDESOFTNESSDIRANG_N num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_setSlideSoftnessDirLin 644
+#define FN_setSlideSoftnessDirLin 687
#define SETSLIDESOFTNESSDIRLIN_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETSLIDESOFTNESSDIRLIN_N num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_setSlideSoftnessLimAng 645
+#define FN_setSlideSoftnessLimAng 688
#define SETSLIDESOFTNESSLIMANG_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETSLIDESOFTNESSLIMANG_N num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_setSlideSoftnessLimLin 646
+#define FN_setSlideSoftnessLimLin 689
#define SETSLIDESOFTNESSLIMLIN_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETSLIDESOFTNESSLIMLIN_N num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_setSlideSoftnessOrthoAng 647
+#define FN_setSlideSoftnessOrthoAng 690
#define SETSLIDESOFTNESSORTHOANG_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETSLIDESOFTNESSORTHOANG_N num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_setSlideSoftnessOrthoLin 648
+#define FN_setSlideSoftnessOrthoLin 691
#define SETSLIDESOFTNESSORTHOLIN_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETSLIDESOFTNESSORTHOLIN_N num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_setSlideUpperAngLimit 649
+#define FN_setSlideUpperAngLimit 692
#define SETSLIDEUPPERANGLIMIT_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETSLIDEUPPERANGLIMIT_N num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_setSlideUpperLinLimit 650
+#define FN_setSlideUpperLinLimit 693
#define SETSLIDEUPPERLINLIMIT_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETSLIDEUPPERLINLIMIT_N num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_ConstraintExists 651
+#define FN_ConstraintExists 694
#define CONSTRAINTEXISTS_CONSTRAINT_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_SetCameraPosition 652
+#define FN_SetCameraPosition 695
#define SETCAMERAPOSITION_X num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETCAMERAPOSITION_Y num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETCAMERAPOSITION_Z num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_GetCameraPosition 653
+#define FN_GetCameraPosition 696
#define GETCAMERAPOSITION_X num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETCAMERAPOSITION_Y num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETCAMERAPOSITION_Z num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_TranslateCamera 654
+#define FN_TranslateCamera 697
#define TRANSLATECAMERA_X num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define TRANSLATECAMERA_Y num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define TRANSLATECAMERA_Z num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_SetCameraRotation 655
+#define FN_SetCameraRotation 698
#define SETCAMERAROTATION_X num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETCAMERAROTATION_Y num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETCAMERAROTATION_Z num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_GetCameraRotation 656
+#define FN_GetCameraRotation 699
#define GETCAMERAROTATION_X num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETCAMERAROTATION_Y num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETCAMERAROTATION_Z num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_RotateCamera 657
+#define FN_RotateCamera 700
#define ROTATECAMERA_X num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define ROTATECAMERA_Y num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define ROTATECAMERA_Z num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_SetCameraFOV 658
+#define FN_SetCameraFOV 701
#define SETCAMERAFOV_FOV num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_GetCameraFOV 659
-#define FN_SetCameraAspectRatio 660
+#define FN_GetCameraFOV 702
+#define FN_SetCameraAspectRatio 703
#define SETCAMERAASPECTRATIO_ASPECT num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_GetCameraAspectRatio 661
-#define FN_SetCameraFarValue 662
+#define FN_GetCameraAspectRatio 704
+#define FN_SetCameraFarValue 705
#define SETCAMERAFARVALUE_ZF num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_GetCameraFarValue 663
-#define FN_SetCameraNearValue 664
+#define FN_GetCameraFarValue 706
+#define FN_SetCameraNearValue 707
#define SETCAMERANEARVALUE_ZN num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_GetCameraNearValue 665
-#define FN_AddSceneSkyBox 666
+#define FN_GetCameraNearValue 708
+#define FN_SetProjectionMatrix 709
+#define SETPROJECTIONMATRIX_MATA num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define SETPROJECTIONMATRIX_PROJECTION_TYPE num_var[1].nref[0].value[ num_var[1].byref_offset ]
+#define FN_GetProjectionMatrix 710
+#define GETPROJECTIONMATRIX_MATA num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define FN_GetWorldToViewportPosition 711
+#define GETWORLDTOVIEWPORTPOSITION_X num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define GETWORLDTOVIEWPORTPOSITION_Y num_var[1].nref[0].value[ num_var[1].byref_offset ]
+#define GETWORLDTOVIEWPORTPOSITION_Z num_var[2].nref[0].value[ num_var[2].byref_offset ]
+#define GETWORLDTOVIEWPORTPOSITION_VX num_var[3].nref[0].value[ num_var[3].byref_offset ]
+#define GETWORLDTOVIEWPORTPOSITION_VY num_var[4].nref[0].value[ num_var[4].byref_offset ]
+#define FN_AddSceneSkyBox 712
#define ADDSCENESKYBOX_IMG_TOP num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define ADDSCENESKYBOX_IMG_BOTTOM num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define ADDSCENESKYBOX_IMG_LEFT num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define ADDSCENESKYBOX_IMG_RIGHT num_var[3].nref[0].value[ num_var[3].byref_offset ]
#define ADDSCENESKYBOX_IMG_FRONT num_var[4].nref[0].value[ num_var[4].byref_offset ]
#define ADDSCENESKYBOX_IMG_BACK num_var[5].nref[0].value[ num_var[5].byref_offset ]
-#define FN_AddSceneSkyDome 667
+#define FN_AddSceneSkyDome 713
#define ADDSCENESKYDOME_IMG num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_AddSceneSkyDomeEx 668
+#define FN_AddSceneSkyDomeEx 714
#define ADDSCENESKYDOMEEX_IMG num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define ADDSCENESKYDOMEEX_HORIRES num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define ADDSCENESKYDOMEEX_VERTRES num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define ADDSCENESKYDOMEEX_TXPERCENTAGE num_var[3].nref[0].value[ num_var[3].byref_offset ]
#define ADDSCENESKYDOMEEX_SPHEREPERCENTAGE num_var[4].nref[0].value[ num_var[4].byref_offset ]
#define ADDSCENESKYDOMEEX_RADIUS num_var[5].nref[0].value[ num_var[5].byref_offset ]
-#define FN_RemoveSceneSky 669
-#define FN_SetWorld3DMaxSubSteps 670
+#define FN_RemoveSceneSky 715
+#define FN_SetWorld3DMaxSubSteps 716
#define SETWORLD3DMAXSUBSTEPS_STEPS num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_SetWorld3DTimeStep 671
+#define FN_SetWorld3DTimeStep 717
#define SETWORLD3DTIMESTEP_TS num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_startParticleEmitter 672
+#define FN_startParticleEmitter 718
#define STARTPARTICLEEMITTER_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_stopParticleEmitter 673
+#define FN_stopParticleEmitter 719
#define STOPPARTICLEEMITTER_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_setParticleDirection 674
+#define FN_setParticleDirection 720
#define SETPARTICLEDIRECTION_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETPARTICLEDIRECTION_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETPARTICLEDIRECTION_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define SETPARTICLEDIRECTION_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_getParticleDirection 675
+#define FN_getParticleDirection 721
#define GETPARTICLEDIRECTION_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETPARTICLEDIRECTION_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETPARTICLEDIRECTION_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define GETPARTICLEDIRECTION_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_useParticleEveryMeshVertex 676
+#define FN_useParticleEveryMeshVertex 722
#define USEPARTICLEEVERYMESHVERTEX_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define USEPARTICLEEVERYMESHVERTEX_FLAG num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_particleIsUsingEveryMeshVertex 677
+#define FN_particleIsUsingEveryMeshVertex 723
#define PARTICLEISUSINGEVERYMESHVERTEX_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_setParticleNormalDirectionMod 678
+#define FN_setParticleNormalDirectionMod 724
#define SETPARTICLENORMALDIRECTIONMOD_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETPARTICLENORMALDIRECTIONMOD_ND_MOD num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_getParticleNormalDirectionMod 679
+#define FN_getParticleNormalDirectionMod 725
#define GETPARTICLENORMALDIRECTIONMOD_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_useParticleNormalDirection 680
+#define FN_useParticleNormalDirection 726
#define USEPARTICLENORMALDIRECTION_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define USEPARTICLENORMALDIRECTION_FLAG num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_particleIsUsingNormalDirection 681
+#define FN_particleIsUsingNormalDirection 727
#define PARTICLEISUSINGNORMALDIRECTION_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_setParticleMesh 682
+#define FN_setParticleMesh 728
#define SETPARTICLEMESH_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETPARTICLEMESH_MESH num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_setMinParticlesPerSecond 683
+#define FN_setMinParticlesPerSecond 729
#define SETMINPARTICLESPERSECOND_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETMINPARTICLESPERSECOND_MINPARTICLESPERSECOND num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_getMinParticlesPerSecond 684
+#define FN_getMinParticlesPerSecond 730
#define GETMINPARTICLESPERSECOND_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_setMaxParticlesPerSecond 685
+#define FN_setMaxParticlesPerSecond 731
#define SETMAXPARTICLESPERSECOND_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETMAXPARTICLESPERSECOND_MAXPARTICLESPERSECOND num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_getMaxParticlesPerSecond 686
+#define FN_getMaxParticlesPerSecond 732
#define GETMAXPARTICLESPERSECOND_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_setParticleMinStartColor 687
+#define FN_setParticleMinStartColor 733
#define SETPARTICLEMINSTARTCOLOR_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETPARTICLEMINSTARTCOLOR_COLOR num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_getParticleMinStartColor 688
+#define FN_getParticleMinStartColor 734
#define GETPARTICLEMINSTARTCOLOR_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_setParticleMaxStartColor 689
+#define FN_setParticleMaxStartColor 735
#define SETPARTICLEMAXSTARTCOLOR_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETPARTICLEMAXSTARTCOLOR_COLOR num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_getParticleMaxStartColor 690
+#define FN_getParticleMaxStartColor 736
#define GETPARTICLEMAXSTARTCOLOR_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_setParticleMinLife 691
+#define FN_setParticleMinLife 737
#define SETPARTICLEMINLIFE_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETPARTICLEMINLIFE_MINLIFE num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_getParticleMinLife 692
+#define FN_getParticleMinLife 738
#define GETPARTICLEMINLIFE_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_setParticleMaxLife 693
+#define FN_setParticleMaxLife 739
#define SETPARTICLEMAXLIFE_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETPARTICLEMAXLIFE_MAXLIFE num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_getParticleMaxLife 694
+#define FN_getParticleMaxLife 740
#define GETPARTICLEMAXLIFE_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_setParticleMaxAngle 695
+#define FN_setParticleMaxAngle 741
#define SETPARTICLEMAXANGLE_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETPARTICLEMAXANGLE_MAXANGLE num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_getParticleMaxAngle 696
+#define FN_getParticleMaxAngle 742
#define GETPARTICLEMAXANGLE_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_setParticleMinStartSize 697
+#define FN_setParticleMinStartSize 743
#define SETPARTICLEMINSTARTSIZE_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETPARTICLEMINSTARTSIZE_W num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETPARTICLEMINSTARTSIZE_H num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_getParticleMinStartSize 698
+#define FN_getParticleMinStartSize 744
#define GETPARTICLEMINSTARTSIZE_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETPARTICLEMINSTARTSIZE_W num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETPARTICLEMINSTARTSIZE_H num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_setParticleMaxStartSize 699
+#define FN_setParticleMaxStartSize 745
#define SETPARTICLEMAXSTARTSIZE_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETPARTICLEMAXSTARTSIZE_W num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETPARTICLEMAXSTARTSIZE_H num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_getParticleMaxStartSize 700
+#define FN_getParticleMaxStartSize 746
#define GETPARTICLEMAXSTARTSIZE_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETPARTICLEMAXSTARTSIZE_W num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETPARTICLEMAXSTARTSIZE_H num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_setParticleCenter 701
+#define FN_setParticleCenter 747
#define SETPARTICLECENTER_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETPARTICLECENTER_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETPARTICLECENTER_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define SETPARTICLECENTER_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_getParticleCenter 702
+#define FN_getParticleCenter 748
#define GETPARTICLECENTER_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETPARTICLECENTER_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETPARTICLECENTER_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define GETPARTICLECENTER_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_setParticleRadius 703
+#define FN_setParticleRadius 749
#define SETPARTICLERADIUS_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETPARTICLERADIUS_RADIUS num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_getParticleRadius 704
+#define FN_getParticleRadius 750
#define GETPARTICLERADIUS_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_setParticleRingThickness 705
+#define FN_setParticleRingThickness 751
#define SETPARTICLERINGTHICKNESS_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETPARTICLERINGTHICKNESS_RINGTHICKNESS num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_getParticleRingThickness 706
+#define FN_getParticleRingThickness 752
#define GETPARTICLERINGTHICKNESS_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_setParticleBox 707
+#define FN_setParticleBox 753
#define SETPARTICLEBOX_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETPARTICLEBOX_MIN_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETPARTICLEBOX_MIN_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
@@ -2170,7 +2306,7 @@
#define SETPARTICLEBOX_MAX_X num_var[4].nref[0].value[ num_var[4].byref_offset ]
#define SETPARTICLEBOX_MAX_Y num_var[5].nref[0].value[ num_var[5].byref_offset ]
#define SETPARTICLEBOX_MAX_Z num_var[6].nref[0].value[ num_var[6].byref_offset ]
-#define FN_getParticleBox 708
+#define FN_getParticleBox 754
#define GETPARTICLEBOX_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETPARTICLEBOX_MIN_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETPARTICLEBOX_MIN_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
@@ -2178,84 +2314,84 @@
#define GETPARTICLEBOX_MAX_X num_var[4].nref[0].value[ num_var[4].byref_offset ]
#define GETPARTICLEBOX_MAX_Y num_var[5].nref[0].value[ num_var[5].byref_offset ]
#define GETPARTICLEBOX_MAX_Z num_var[6].nref[0].value[ num_var[6].byref_offset ]
-#define FN_setParticleNormal 709
+#define FN_setParticleNormal 755
#define SETPARTICLENORMAL_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETPARTICLENORMAL_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETPARTICLENORMAL_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define SETPARTICLENORMAL_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_getParticleNormal 710
+#define FN_getParticleNormal 756
#define GETPARTICLENORMAL_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETPARTICLENORMAL_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETPARTICLENORMAL_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define GETPARTICLENORMAL_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_setParticleLength 711
+#define FN_setParticleLength 757
#define SETPARTICLELENGTH_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETPARTICLELENGTH_P_LEN num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_getParticleLength 712
+#define FN_getParticleLength 758
#define GETPARTICLELENGTH_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_useParticleOutlineOnly 713
+#define FN_useParticleOutlineOnly 759
#define USEPARTICLEOUTLINEONLY_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define USEPARTICLEOUTLINEONLY_FLAG num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_particleIsUsingOutlineOnly 714
+#define FN_particleIsUsingOutlineOnly 760
#define PARTICLEISUSINGOUTLINEONLY_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getParticleType 715
+#define FN_getParticleType 761
#define GETPARTICLETYPE_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_lightIsCastingShadow 716
+#define FN_lightIsCastingShadow 762
#define LIGHTISCASTINGSHADOW_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getLightType 717
+#define FN_getLightType 763
#define GETLIGHTTYPE_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_getLightRadius 718
+#define FN_getLightRadius 764
#define GETLIGHTRADIUS_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_setLightType 719
+#define FN_setLightType 765
#define SETLIGHTTYPE_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETLIGHTTYPE_LIGHT_TYPE num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_setLightRadius 720
+#define FN_setLightRadius 766
#define SETLIGHTRADIUS_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETLIGHTRADIUS_RADIUS num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_setLightShadowCast 721
+#define FN_setLightShadowCast 767
#define SETLIGHTSHADOWCAST_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETLIGHTSHADOWCAST_FLAG num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_SetLightAmbientColor 722
+#define FN_SetLightAmbientColor 768
#define SETLIGHTAMBIENTCOLOR_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETLIGHTAMBIENTCOLOR_COLOR num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_GetLightAmbientColor 723
+#define FN_GetLightAmbientColor 769
#define GETLIGHTAMBIENTCOLOR_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_SetLightAttenuation 724
+#define FN_SetLightAttenuation 770
#define SETLIGHTATTENUATION_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETLIGHTATTENUATION_L_CONSTANT num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETLIGHTATTENUATION_L_LINEAR num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define SETLIGHTATTENUATION_L_QUADRATIC num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_GetLightAttenuation 725
+#define FN_GetLightAttenuation 771
#define GETLIGHTATTENUATION_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETLIGHTATTENUATION_CONSTANT num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETLIGHTATTENUATION_LINEAR num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define GETLIGHTATTENUATION_QUADRATIC num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_SetLightDiffuseColor 726
+#define FN_SetLightDiffuseColor 772
#define SETLIGHTDIFFUSECOLOR_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETLIGHTDIFFUSECOLOR_COLOR num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_GetLightDiffuseColor 727
+#define FN_GetLightDiffuseColor 773
#define GETLIGHTDIFFUSECOLOR_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_SetLightFalloff 728
+#define FN_SetLightFalloff 774
#define SETLIGHTFALLOFF_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETLIGHTFALLOFF_FALLOFF num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_GetLightFalloff 729
+#define FN_GetLightFalloff 775
#define GETLIGHTFALLOFF_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_SetLightInnerCone 730
+#define FN_SetLightInnerCone 776
#define SETLIGHTINNERCONE_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETLIGHTINNERCONE_ANGLE num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_GetLightInnerCone 731
+#define FN_GetLightInnerCone 777
#define GETLIGHTINNERCONE_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_SetLightOuterCone 732
+#define FN_SetLightOuterCone 778
#define SETLIGHTOUTERCONE_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETLIGHTOUTERCONE_ANGLE num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_GetLightOuterCone 733
+#define FN_GetLightOuterCone 779
#define GETLIGHTOUTERCONE_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_SetLightSpecularColor 734
+#define FN_SetLightSpecularColor 780
#define SETLIGHTSPECULARCOLOR_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETLIGHTSPECULARCOLOR_COLOR num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_GetLightSpecularColor 735
+#define FN_GetLightSpecularColor 781
#define GETLIGHTSPECULARCOLOR_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_GetTerrainPatchAABB 736
+#define FN_GetTerrainPatchAABB 782
#define GETTERRAINPATCHAABB_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETTERRAINPATCHAABB_PATCHX num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETTERRAINPATCHAABB_PATCHZ num_var[2].nref[0].value[ num_var[2].byref_offset ]
@@ -2265,232 +2401,242 @@
#define GETTERRAINPATCHAABB_MAXX num_var[6].nref[0].value[ num_var[6].byref_offset ]
#define GETTERRAINPATCHAABB_MAXY num_var[7].nref[0].value[ num_var[7].byref_offset ]
#define GETTERRAINPATCHAABB_MAXZ num_var[8].nref[0].value[ num_var[8].byref_offset ]
-#define FN_GetTerrainPatchLOD 737
+#define FN_GetTerrainPatchLOD 783
#define GETTERRAINPATCHLOD_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETTERRAINPATCHLOD_PATCHX num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETTERRAINPATCHLOD_PATCHZ num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_GetTerrainHeight 738
+#define FN_GetTerrainHeight 784
#define GETTERRAINHEIGHT_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETTERRAINHEIGHT_PATCHX num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETTERRAINHEIGHT_PATCHZ num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_GetTerrainCenter 739
+#define FN_GetTerrainCenter 785
#define GETTERRAINCENTER_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETTERRAINCENTER_X num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETTERRAINCENTER_Y num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define GETTERRAINCENTER_Z num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_SetTerrainLODDistance 740
+#define FN_SetTerrainLODDistance 786
#define SETTERRAINLODDISTANCE_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETTERRAINLODDISTANCE_LOD num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETTERRAINLODDISTANCE_DISTANCE num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_ScaleTerrainTexture 741
+#define FN_ScaleTerrainTexture 787
#define SCALETERRAINTEXTURE_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SCALETERRAINTEXTURE_SCALE num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SCALETERRAINTEXTURE_SCALE2 num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_SetTerrainCameraMovementDelta 742
+#define FN_SetTerrainCameraMovementDelta 788
#define SETTERRAINCAMERAMOVEMENTDELTA_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETTERRAINCAMERAMOVEMENTDELTA_DELTA num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_SetTerrainCameraRotationDelta 743
+#define FN_SetTerrainCameraRotationDelta 789
#define SETTERRAINCAMERAROTATIONDELTA_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETTERRAINCAMERAROTATIONDELTA_DELTA num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_SetTerrainPatchLOD 744
+#define FN_SetTerrainPatchLOD 790
#define SETTERRAINPATCHLOD_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETTERRAINPATCHLOD_PATCHX num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETTERRAINPATCHLOD_PATCHZ num_var[2].nref[0].value[ num_var[2].byref_offset ]
#define SETTERRAINPATCHLOD_LOD num_var[3].nref[0].value[ num_var[3].byref_offset ]
-#define FN_SetActorAnimation 745
+#define FN_CreateActorAnimation 791
+#define CREATEACTORANIMATION_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define CREATEACTORANIMATION_START_FRAME num_var[1].nref[0].value[ num_var[1].byref_offset ]
+#define CREATEACTORANIMATION_END_FRAME num_var[2].nref[0].value[ num_var[2].byref_offset ]
+#define CREATEACTORANIMATION_SPEED num_var[3].nref[0].value[ num_var[3].byref_offset ]
+#define FN_SetActorAnimation 792
#define SETACTORANIMATION_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define SETACTORANIMATION_START_FRAME num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define SETACTORANIMATION_END_FRAME num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_SetActorAnimationSpeed 746
+#define SETACTORANIMATION_ANIMATION num_var[1].nref[0].value[ num_var[1].byref_offset ]
+#define SETACTORANIMATION_NUM_LOOPS num_var[2].nref[0].value[ num_var[2].byref_offset ]
+#define FN_SetActorAnimationSpeed 793
#define SETACTORANIMATIONSPEED_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define SETACTORANIMATIONSPEED_SPEED num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_SetActorFrame 747
+#define SETACTORANIMATIONSPEED_ANIMATION num_var[1].nref[0].value[ num_var[1].byref_offset ]
+#define SETACTORANIMATIONSPEED_SPEED num_var[2].nref[0].value[ num_var[2].byref_offset ]
+#define FN_SetActorAnimationFrames 794
+#define SETACTORANIMATIONFRAMES_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define SETACTORANIMATIONFRAMES_ANIMATION num_var[1].nref[0].value[ num_var[1].byref_offset ]
+#define SETACTORANIMATIONFRAMES_START_FRAME num_var[2].nref[0].value[ num_var[2].byref_offset ]
+#define SETACTORANIMATIONFRAMES_END_FRAME num_var[3].nref[0].value[ num_var[3].byref_offset ]
+#define FN_GetActorCurrentAnimation 795
+#define GETACTORCURRENTANIMATION_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define FN_GetActorAnimationSpeed 796
+#define GETACTORANIMATIONSPEED_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define GETACTORANIMATIONSPEED_ANIMATION num_var[1].nref[0].value[ num_var[1].byref_offset ]
+#define FN_GetActorAnimationStartFrame 797
+#define GETACTORANIMATIONSTARTFRAME_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define GETACTORANIMATIONSTARTFRAME_ANIMATION num_var[1].nref[0].value[ num_var[1].byref_offset ]
+#define FN_GetActorAnimationEndFrame 798
+#define GETACTORANIMATIONENDFRAME_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define GETACTORANIMATIONENDFRAME_ANIMATION num_var[1].nref[0].value[ num_var[1].byref_offset ]
+#define FN_SetActorFrame 799
#define SETACTORFRAME_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETACTORFRAME_FRAME num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_SetActorMD2Animation 748
+#define FN_GetActorFrame 800
+#define GETACTORFRAME_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define FN_ActorAnimationIsPlaying 801
+#define ACTORANIMATIONISPLAYING_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define FN_NumActorAnimationLoops 802
+#define NUMACTORANIMATIONLOOPS_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define FN_SetActorMD2Animation 803
#define SETACTORMD2ANIMATION_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETACTORMD2ANIMATION_ANIM num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_SetActorMD2AnimationByName 749
+#define SETACTORMD2ANIMATION_NUM_LOOPS num_var[2].nref[0].value[ num_var[2].byref_offset ]
+#define FN_SetActorMD2AnimationByName 804
#define SETACTORMD2ANIMATIONBYNAME_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETACTORMD2ANIMATIONBYNAME_ANIM_NAME$ str_var[0].sref[0].value[ str_var[0].byref_offset ]
-#define FN_GetActorAnimationSpeed 750
-#define GETACTORANIMATIONSPEED_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_GetActorEndFrame 751
-#define GETACTORENDFRAME_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_GetActorCurrentFrame 752
-#define GETACTORCURRENTFRAME_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_GetActorStartFrame 753
-#define GETACTORSTARTFRAME_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_StartActorTransition 754
-#define STARTACTORTRANSITION_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define STARTACTORTRANSITION_FRAME num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define STARTACTORTRANSITION_TRANSITION_TIME num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_StopActorTransition 755
-#define STOPACTORTRANSITION_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_ActorIsInTransition 756
-#define ACTORISINTRANSITION_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_GetActorTransitionTime 757
-#define GETACTORTRANSITIONTIME_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_actorAnimationIsLooped 758
-#define ACTORANIMATIONISLOOPED_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_loopActorAnimation 759
-#define LOOPACTORANIMATION_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define LOOPACTORANIMATION_FLAG num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_createMaterial 760
-#define FN_deleteMaterial 761
+#define SETACTORMD2ANIMATIONBYNAME_NUM_LOOPS num_var[1].nref[0].value[ num_var[1].byref_offset ]
+#define FN_DeleteActorAnimation 805
+#define DELETEACTORANIMATION_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
+#define DELETEACTORANIMATION_ANIMATION num_var[1].nref[0].value[ num_var[1].byref_offset ]
+#define FN_createMaterial 806
+#define FN_deleteMaterial 807
#define DELETEMATERIAL_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_setActorMaterial 762
+#define FN_setActorMaterial 808
#define SETACTORMATERIAL_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETACTORMATERIAL_MATERIAL_NUM num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETACTORMATERIAL_MATERIAL_ID num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_getActorMaterial 763
+#define FN_getActorMaterial 809
#define GETACTORMATERIAL_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETACTORMATERIAL_MATERIAL_NUM num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_copyActorMaterial 764
+#define FN_copyActorMaterial 810
#define COPYACTORMATERIAL_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define COPYACTORMATERIAL_MATERIAL_NUM num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_copyMaterial 765
+#define FN_copyMaterial 811
#define COPYMATERIAL_SMATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_setMaterialTextureCanvas 766
+#define FN_setMaterialTextureCanvas 812
#define SETMATERIALTEXTURECANVAS_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETMATERIALTEXTURECANVAS_LEVEL num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETMATERIALTEXTURECANVAS_CANVAS_ID num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_setMaterialAmbientColor 767
+#define FN_setMaterialAmbientColor 813
#define SETMATERIALAMBIENTCOLOR_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETMATERIALAMBIENTCOLOR_COLOR num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_getMaterialAmbientColor 768
+#define FN_getMaterialAmbientColor 814
#define GETMATERIALAMBIENTCOLOR_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_setMaterialAntiAliasing 769
+#define FN_setMaterialAntiAliasing 815
#define SETMATERIALANTIALIASING_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETMATERIALANTIALIASING_AA num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_getMaterialAntiAliasing 770
+#define FN_getMaterialAntiAliasing 816
#define GETMATERIALANTIALIASING_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_setMaterialBackfaceCulling 771
+#define FN_setMaterialBackfaceCulling 817
#define SETMATERIALBACKFACECULLING_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETMATERIALBACKFACECULLING_FLAG num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_getMaterialBackfaceCulling 772
+#define FN_getMaterialBackfaceCulling 818
#define GETMATERIALBACKFACECULLING_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_setMaterialBlendFactor 773
+#define FN_setMaterialBlendFactor 819
#define SETMATERIALBLENDFACTOR_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETMATERIALBLENDFACTOR_BF num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_getMaterialBlendFactor 774
+#define FN_getMaterialBlendFactor 820
#define GETMATERIALBLENDFACTOR_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_setMaterialBlendMode 775
+#define FN_setMaterialBlendMode 821
#define SETMATERIALBLENDMODE_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETMATERIALBLENDMODE_BLEND_MODE num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_getMaterialBlendMode 776
+#define FN_getMaterialBlendMode 822
#define GETMATERIALBLENDMODE_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_setMaterialColorMask 777
+#define FN_setMaterialColorMask 823
#define SETMATERIALCOLORMASK_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETMATERIALCOLORMASK_COLOR_MASK num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_getMaterialColorMask 778
+#define FN_getMaterialColorMask 824
#define GETMATERIALCOLORMASK_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_setMaterialColorMode 779
+#define FN_setMaterialColorMode 825
#define SETMATERIALCOLORMODE_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETMATERIALCOLORMODE_COLOR_MODE num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_getMaterialColorMode 780
+#define FN_getMaterialColorMode 826
#define GETMATERIALCOLORMODE_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_setMaterialDiffuseColor 781
+#define FN_setMaterialDiffuseColor 827
#define SETMATERIALDIFFUSECOLOR_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETMATERIALDIFFUSECOLOR_COLOR num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_getMaterialDiffuseColor 782
+#define FN_getMaterialDiffuseColor 828
#define GETMATERIALDIFFUSECOLOR_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_setMaterialEmissiveColor 783
+#define FN_setMaterialEmissiveColor 829
#define SETMATERIALEMISSIVECOLOR_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETMATERIALEMISSIVECOLOR_COLOR num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_getMaterialEmissiveColor 784
+#define FN_getMaterialEmissiveColor 830
#define GETMATERIALEMISSIVECOLOR_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_setMaterialFog 785
+#define FN_setMaterialFog 831
#define SETMATERIALFOG_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETMATERIALFOG_FLAG num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_getMaterialFog 786
+#define FN_getMaterialFog 832
#define GETMATERIALFOG_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_setMaterialFrontfaceCulling 787
+#define FN_setMaterialFrontfaceCulling 833
#define SETMATERIALFRONTFACECULLING_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETMATERIALFRONTFACECULLING_FLAG num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_getMaterialFrontfaceCulling 788
+#define FN_getMaterialFrontfaceCulling 834
#define GETMATERIALFRONTFACECULLING_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_setMaterialGouraudShading 789
+#define FN_setMaterialGouraudShading 835
#define SETMATERIALGOURAUDSHADING_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETMATERIALGOURAUDSHADING_FLAG num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_materialIsGouraudShaded 790
+#define FN_materialIsGouraudShaded 836
#define MATERIALISGOURAUDSHADED_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_materialIsAplhaBlend 791
+#define FN_materialIsAplhaBlend 837
#define MATERIALISAPLHABLEND_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_materialIsTransparent 792
+#define FN_materialIsTransparent 838
#define MATERIALISTRANSPARENT_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_setMaterialLighting 793
+#define FN_setMaterialLighting 839
#define SETMATERIALLIGHTING_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETMATERIALLIGHTING_FLAG num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_materialIsLit 794
+#define FN_materialIsLit 840
#define MATERIALISLIT_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_setMaterialType 795
+#define FN_setMaterialType 841
#define SETMATERIALTYPE_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETMATERIALTYPE_MAT_TYPE num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_getMaterialType 796
+#define FN_getMaterialType 842
#define GETMATERIALTYPE_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_setMaterialNormalize 797
+#define FN_setMaterialNormalize 843
#define SETMATERIALNORMALIZE_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETMATERIALNORMALIZE_FLAG num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_materialIsNormalized 798
+#define FN_materialIsNormalized 844
#define MATERIALISNORMALIZED_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_setMaterialPointCloud 799
+#define FN_setMaterialPointCloud 845
#define SETMATERIALPOINTCLOUD_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETMATERIALPOINTCLOUD_FLAG num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_materialIsPointCloud 800
+#define FN_materialIsPointCloud 846
#define MATERIALISPOINTCLOUD_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_setMaterialFlag 801
+#define FN_setMaterialFlag 847
#define SETMATERIALFLAG_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETMATERIALFLAG_MATERIAL_FLAG num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETMATERIALFLAG_F_VALUE num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_getMaterialFlag 802
+#define FN_getMaterialFlag 848
#define GETMATERIALFLAG_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETMATERIALFLAG_MATERIAL_FLAG num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_setMaterialTexture 803
+#define FN_setMaterialTexture 849
#define SETMATERIALTEXTURE_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETMATERIALTEXTURE_LEVEL num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETMATERIALTEXTURE_IMG_ID num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_setMaterialShininess 804
+#define FN_setMaterialShininess 850
#define SETMATERIALSHININESS_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETMATERIALSHININESS_SHININESS num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_getMaterialShininess 805
+#define FN_getMaterialShininess 851
#define GETMATERIALSHININESS_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_setMaterialSpecularColor 806
+#define FN_setMaterialSpecularColor 852
#define SETMATERIALSPECULARCOLOR_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETMATERIALSPECULARCOLOR_COLOR num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_getMaterialSpecularColor 807
+#define FN_getMaterialSpecularColor 853
#define GETMATERIALSPECULARCOLOR_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_setMaterialThickness 808
+#define FN_setMaterialThickness 854
#define SETMATERIALTHICKNESS_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETMATERIALTHICKNESS_THICKNESS num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_getMaterialThickness 809
+#define FN_getMaterialThickness 855
#define GETMATERIALTHICKNESS_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_setMaterialWireframe 810
+#define FN_setMaterialWireframe 856
#define SETMATERIALWIREFRAME_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETMATERIALWIREFRAME_FLAG num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_materialIsWireframe 811
+#define FN_materialIsWireframe 857
#define MATERIALISWIREFRAME_MATERIAL_ID num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_setActorTexture 812
+#define FN_setActorTexture 858
#define SETACTORTEXTURE_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETACTORTEXTURE_LAYER num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETACTORTEXTURE_IMAGE_ID num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_getActorMaterialCount 813
+#define FN_getActorMaterialCount 859
#define GETACTORMATERIALCOUNT_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
-#define FN_setActorMaterialFlag 814
+#define FN_setActorMaterialFlag 860
#define SETACTORMATERIALFLAG_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETACTORMATERIALFLAG_FLAG num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define SETACTORMATERIALFLAG_FLAG_VALUE num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_getActorMaterialFlag 815
+#define FN_getActorMaterialFlag 861
#define GETACTORMATERIALFLAG_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETACTORMATERIALFLAG_MATERIAL num_var[1].nref[0].value[ num_var[1].byref_offset ]
#define GETACTORMATERIALFLAG_FLAG num_var[2].nref[0].value[ num_var[2].byref_offset ]
-#define FN_setActorMaterialType 816
+#define FN_setActorMaterialType 862
#define SETACTORMATERIALTYPE_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define SETACTORMATERIALTYPE_MATERIAL_TYPE num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_getActorMaterialType 817
+#define FN_getActorMaterialType 863
#define GETACTORMATERIALTYPE_ACTOR num_var[0].nref[0].value[ num_var[0].byref_offset ]
#define GETACTORMATERIALTYPE_MATERIAL num_var[1].nref[0].value[ num_var[1].byref_offset ]
-#define FN_MaterialExists 818
+#define FN_MaterialExists 864
#define MATERIALEXISTS_MATERIAL num_var[0].nref[0].value[ num_var[0].byref_offset ]
diff --git a/rcbasic_runtime/rc_func130_cases.h b/rcbasic_runtime/rc_func130_cases.h
index 1241293..3002e48 100644
--- a/rcbasic_runtime/rc_func130_cases.h
+++ b/rcbasic_runtime/rc_func130_cases.h
@@ -547,6 +547,9 @@ case FN_FlashWindow: //Number Function
case FN_WindowIsGrabbed: //Number Function
rc_push_num(rc_windowIsGrabbed( ));
break;
+case FN_PreUpdate: //Sub Procedure
+ rc_preUpdate( );
+ break;
case FN_OpenCanvas: //Number Function
rc_push_num(rc_canvasOpen( OPENCANVAS_W, OPENCANVAS_H, OPENCANVAS_VIEWPORT_X, OPENCANVAS_VIEWPORT_Y, OPENCANVAS_VIEWPORT_W, OPENCANVAS_VIEWPORT_H, OPENCANVAS_MODE ));
break;
@@ -601,8 +604,8 @@ case FN_CloneCanvas: //Number Function
case FN_SetCanvasZ: //Sub Procedure
rc_setCanvasZ( SETCANVASZ_C_NUM, SETCANVASZ_Z );
break;
-case FN_GetCanvasZ: //Number Function
- rc_push_num(rc_getCanvasZ( GETCANVASZ_C_NUM ));
+case FN_CanvasZ: //Number Function
+ rc_push_num(rc_getCanvasZ( CANVASZ_C_NUM ));
break;
case FN_CanvasClip: //Number Function
rc_push_num(rc_canvasClip( CANVASCLIP_X, CANVASCLIP_Y, CANVASCLIP_W, CANVASCLIP_H ));
@@ -976,11 +979,11 @@ case FN_DrawText: //Sub Procedure
case FN_GetTextSize: //Sub Procedure
rc_getTextSize( GETTEXTSIZE_TXT$, &GETTEXTSIZE_W, &GETTEXTSIZE_H );
break;
-case FN_GetTextWidth: //Number Function
- rc_push_num(rc_getTextWidth( GETTEXTWIDTH_TXT$ ));
+case FN_TextWidth: //Number Function
+ rc_push_num(rc_getTextWidth( TEXTWIDTH_TXT$ ));
break;
-case FN_GetTextHeight: //Number Function
- rc_push_num(rc_getTextHeight( GETTEXTHEIGHT_TXT$ ));
+case FN_TextHeight: //Number Function
+ rc_push_num(rc_getTextHeight( TEXTHEIGHT_TXT$ ));
break;
case FN_TouchPressure: //Number Function
rc_push_num(rc_touchPressure( ));
@@ -1371,7 +1374,7 @@ case FN_ReadInput_ToggleBackspace: //Sub Procedure
rc_readInput_ToggleBackspace( READINPUT_TOGGLEBACKSPACE_FLAG );
break;
case FN_CreateSprite: //Number Function
- rc_push_num(rc_createSprite( CREATESPRITE_IMG, 0, 0 ));
+ rc_push_num(rc_createSprite( CREATESPRITE_IMG, CREATESPRITE_FRAME_W, CREATESPRITE_FRAME_H ));
break;
case FN_DeleteSprite: //Sub Procedure
rc_deleteSprite( DELETESPRITE_SPRITE );
@@ -1379,6 +1382,120 @@ case FN_DeleteSprite: //Sub Procedure
case FN_SetSpritePosition: //Sub Procedure
rc_setSpritePosition( SETSPRITEPOSITION_SPRITE, SETSPRITEPOSITION_X, SETSPRITEPOSITION_Y );
break;
+case FN_TranslateSprite: //Sub Procedure
+ rc_translateSprite( TRANSLATESPRITE_SPRITE, TRANSLATESPRITE_X, TRANSLATESPRITE_Y );
+ break;
+case FN_GetSpritePosition: //Sub Procedure
+ rc_getSpritePosition( GETSPRITEPOSITION_SPRITE, &GETSPRITEPOSITION_X, &GETSPRITEPOSITION_Y );
+ break;
+case FN_SpriteX: //Number Function
+ rc_push_num(rc_spriteX( SPRITEX_SPRITE ));
+ break;
+case FN_SpriteY: //Number Function
+ rc_push_num(rc_spriteY( SPRITEY_SPRITE ));
+ break;
+case FN_SetSpriteRotation: //Sub Procedure
+ rc_setSpriteRotation( SETSPRITEROTATION_SPRITE, SETSPRITEROTATION_ANGLE );
+ break;
+case FN_RotateSprite: //Sub Procedure
+ rc_rotateSprite( ROTATESPRITE_SPRITE, ROTATESPRITE_ANGLE );
+ break;
+case FN_GetSpriteRotation: //Number Function
+ rc_push_num(rc_getSpriteRotation( GETSPRITEROTATION_SPRITE ));
+ break;
+case FN_SetSpriteScale: //Sub Procedure
+ rc_setSpriteScale( SETSPRITESCALE_SPRITE, SETSPRITESCALE_X, SETSPRITESCALE_Y );
+ break;
+case FN_ScaleSprite: //Sub Procedure
+ rc_scaleSprite( SCALESPRITE_SPRITE, SCALESPRITE_X, SCALESPRITE_Y );
+ break;
+case FN_GetSpriteScale: //Sub Procedure
+ rc_getSpriteScale( GETSPRITESCALE_SPRITE, &GETSPRITESCALE_X, &GETSPRITESCALE_Y );
+ break;
+case FN_SetSpriteZ: //Sub Procedure
+ rc_setSpriteZ( SETSPRITEZ_SPRITE, SETSPRITEZ_Z );
+ break;
+case FN_SpriteZ: //Number Function
+ rc_push_num(rc_spriteZ( SPRITEZ_SPRITE ));
+ break;
+case FN_GetSpriteSize: //Sub Procedure
+ rc_getSpriteSize( GETSPRITESIZE_SPRITE, &GETSPRITESIZE_W, &GETSPRITESIZE_H );
+ break;
+case FN_SpriteWidth: //Number Function
+ rc_push_num(rc_spriteWidth( SPRITEWIDTH_SPRITE ));
+ break;
+case FN_SpriteHeight: //Number Function
+ rc_push_num(rc_spriteHeight( SPRITEHEIGHT_SPRITE ));
+ break;
+case FN_SetSpriteVisible: //Sub Procedure
+ rc_setSpriteVisible( SETSPRITEVISIBLE_SPRITE, SETSPRITEVISIBLE_FLAG );
+ break;
+case FN_SpriteIsVisible: //Number Function
+ rc_push_num(rc_spriteIsVisible( SPRITEISVISIBLE_SPRITE ));
+ break;
+case FN_SetSpriteSolid: //Sub Procedure
+ rc_setSpriteSolid( SETSPRITESOLID_SPRITE, SETSPRITESOLID_FLAG );
+ break;
+case FN_SpriteIsSolid: //Number Function
+ rc_push_num(rc_spriteIsSolid( SPRITEISSOLID_SPRITE ));
+ break;
+case FN_SetSpriteType: //Sub Procedure
+ rc_setSpriteType( SETSPRITETYPE_SPRITE, SETSPRITETYPE_SPRITE_TYPE );
+ break;
+case FN_GetSpriteType: //Number Function
+ rc_push_num(rc_getSpriteType( GETSPRITETYPE_SPRITE ));
+ break;
+case FN_SetSpriteSource: //Sub Procedure
+ rc_setSpriteSource( SETSPRITESOURCE_SPRITE, SETSPRITESOURCE_IMG );
+ break;
+case FN_GetSpriteSource: //Number Function
+ rc_push_num(rc_getSpriteSource( GETSPRITESOURCE_SPRITE ));
+ break;
+case FN_CreateSpriteAnimation: //Number Function
+ rc_push_num(rc_createSpriteAnimation( CREATESPRITEANIMATION_SPRITE, CREATESPRITEANIMATION_ANIM_LENGTH, CREATESPRITEANIMATION_SPEED ));
+ break;
+case FN_SetSpriteFrame: //Sub Procedure
+ rc_setSpriteFrame( SETSPRITEFRAME_SPRITE, SETSPRITEFRAME_FRAME );
+ break;
+case FN_GetSpriteFrame: //Number Function
+ rc_push_num(rc_getSpriteFrame( GETSPRITEFRAME_SPRITE ));
+ break;
+case FN_SetSpriteAnimationFrame: //Sub Procedure
+ rc_setSpriteAnimationFrame( SETSPRITEANIMATIONFRAME_SPRITE, SETSPRITEANIMATIONFRAME_ANIMATION, SETSPRITEANIMATIONFRAME_ANIM_FRAME, SETSPRITEANIMATIONFRAME_FRAME );
+ break;
+case FN_GetSpriteAnimationFrame: //Number Function
+ rc_push_num(rc_getSpriteAnimationFrame( GETSPRITEANIMATIONFRAME_SPRITE, GETSPRITEANIMATIONFRAME_ANIMATION, GETSPRITEANIMATIONFRAME_ANIM_FRAME ));
+ break;
+case FN_SetSpriteAnimationLength: //Sub Procedure
+ rc_setSpriteAnimationLength( SETSPRITEANIMATIONLENGTH_SPRITE, SETSPRITEANIMATIONLENGTH_ANIMATION, SETSPRITEANIMATIONLENGTH_ANIM_LENGTH );
+ break;
+case FN_GetSpriteAnimationLength: //Number Function
+ rc_push_num(rc_getSpriteAnimationLength( GETSPRITEANIMATIONLENGTH_SPRITE, GETSPRITEANIMATIONLENGTH_ANIMATION ));
+ break;
+case FN_SetSpriteAnimationSpeed: //Sub Procedure
+ rc_setSpriteAnimationSpeed( SETSPRITEANIMATIONSPEED_SPRITE, SETSPRITEANIMATIONSPEED_ANIMATION, SETSPRITEANIMATIONSPEED_SPEED );
+ break;
+case FN_GetSpriteAnimationSpeed: //Number Function
+ rc_push_num(rc_getSpriteAnimationSpeed( GETSPRITEANIMATIONSPEED_SPRITE, GETSPRITEANIMATIONSPEED_ANIMATION ));
+ break;
+case FN_SetSpriteAnimation: //Sub Procedure
+ rc_setSpriteAnimation( SETSPRITEANIMATION_SPRITE, SETSPRITEANIMATION_ANIMATION, SETSPRITEANIMATION_NUM_LOOPS );
+ break;
+case FN_GetSpriteAnimation: //Number Function
+ rc_push_num(rc_getSpriteAnimation( GETSPRITEANIMATION_SPRITE ));
+ break;
+case FN_GetSpriteCurrentAnimationFrame: //Number Function
+ rc_push_num(rc_getSpriteCurrentAnimationFrame( GETSPRITECURRENTANIMATIONFRAME_SPRITE ));
+ break;
+case FN_NumSpriteAnimationLoops: //Number Function
+ rc_push_num(rc_numSpriteAnimationLoops( NUMSPRITEANIMATIONLOOPS_SPRITE ));
+ break;
+case FN_SpriteAnimationIsPlaying: //Number Function
+ rc_push_num(rc_spriteAnimationIsPlaying( SPRITEANIMATIONISPLAYING_SPRITE ));
+ break;
+case FN_DeleteSpriteAnimation: //Sub Procedure
+ rc_deleteSpriteAnimation( DELETESPRITEANIMATION_SPRITE, DELETESPRITEANIMATION_ANIMATION );
+ break;
case FN_LoadMesh: //Number Function
rc_push_num(rc_loadMesh( LOADMESH_MESH_FILE$ ));
break;
@@ -1397,11 +1514,23 @@ case FN_LoadMeshFromArchive: //Number Function
case FN_CreatePlaneMesh: //Number Function
rc_push_num(rc_createPlaneMesh( CREATEPLANEMESH_W, CREATEPLANEMESH_H, CREATEPLANEMESH_TILECOUNT_W, CREATEPLANEMESH_TILECOUNT_H ));
break;
-case FN_CreateMeshActor: //Number Function
- rc_push_num(rc_createMeshActor( CREATEMESHACTOR_MESH ));
+case FN_LoadAN8: //Number Function
+ rc_push_num(rc_loadAN8( LOADAN8_AN8_FILE$ ));
break;
-case FN_CreateMeshOctreeActor: //Number Function
- rc_push_num(rc_createMeshOctreeActor( CREATEMESHOCTREEACTOR_MESH ));
+case FN_LoadMeshFromAN8: //Number Function
+ rc_push_num(rc_loadMeshFromAN8( LOADMESHFROMAN8_AN8_PROJECT, LOADMESHFROMAN8_AN8_SCENE$ ));
+ break;
+case FN_GetNumAN8Scenes: //Number Function
+ rc_push_num(rc_getNumAN8Scenes( GETNUMAN8SCENES_AN8_PROJECT ));
+ break;
+case FN_GetAN8SceneName$: //String Function
+ rc_push_str(rc_getAN8SceneName( GETAN8SCENENAME$_AN8_PROJECT, GETAN8SCENENAME$_SCENE_NUM ));
+ break;
+case FN_CreateAnimatedActor: //Number Function
+ rc_push_num(rc_createAnimatedActor( CREATEANIMATEDACTOR_MESH ));
+ break;
+case FN_CreateOctreeActor: //Number Function
+ rc_push_num(rc_createOctreeActor( CREATEOCTREEACTOR_MESH ));
break;
case FN_CreateCubeActor: //Number Function
rc_push_num(rc_createCubeActor( CREATECUBEACTOR_CUBE_SIZE ));
@@ -2024,6 +2153,15 @@ case FN_SetCameraNearValue: //Sub Procedure
case FN_GetCameraNearValue: //Number Function
rc_push_num(rc_getCameraNearValue( ));
break;
+case FN_SetProjectionMatrix: //Sub Procedure
+ rc_setProjectionMatrix( SETPROJECTIONMATRIX_MATA, SETPROJECTIONMATRIX_PROJECTION_TYPE );
+ break;
+case FN_GetProjectionMatrix: //Sub Procedure
+ rc_getProjectionMatrix( GETPROJECTIONMATRIX_MATA );
+ break;
+case FN_GetWorldToViewportPosition: //Sub Procedure
+ rc_getWorldToViewportPosition( GETWORLDTOVIEWPORTPOSITION_X, GETWORLDTOVIEWPORTPOSITION_Y, GETWORLDTOVIEWPORTPOSITION_Z, &GETWORLDTOVIEWPORTPOSITION_VX, &GETWORLDTOVIEWPORTPOSITION_VY );
+ break;
case FN_AddSceneSkyBox: //Sub Procedure
rc_addSceneSkyBox( ADDSCENESKYBOX_IMG_TOP, ADDSCENESKYBOX_IMG_BOTTOM, ADDSCENESKYBOX_IMG_LEFT, ADDSCENESKYBOX_IMG_RIGHT, ADDSCENESKYBOX_IMG_FRONT, ADDSCENESKYBOX_IMG_BACK );
break;
@@ -2261,50 +2399,50 @@ 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_START_FRAME, SETACTORANIMATION_END_FRAME );
+ rc_setActorAnimation( SETACTORANIMATION_ACTOR, SETACTORANIMATION_ANIMATION, SETACTORANIMATION_NUM_LOOPS );
break;
case FN_SetActorAnimationSpeed: //Sub Procedure
- rc_setActorAnimationSpeed( SETACTORANIMATIONSPEED_ACTOR, SETACTORANIMATIONSPEED_SPEED );
+ 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 );
+ rc_setActorMD2Animation( SETACTORMD2ANIMATION_ACTOR, SETACTORMD2ANIMATION_ANIM, SETACTORMD2ANIMATION_NUM_LOOPS );
break;
case FN_SetActorMD2AnimationByName: //Sub Procedure
- rc_setActorMD2AnimationByName( SETACTORMD2ANIMATIONBYNAME_ACTOR, SETACTORMD2ANIMATIONBYNAME_ANIM_NAME$ );
+ rc_setActorMD2AnimationByName( SETACTORMD2ANIMATIONBYNAME_ACTOR, SETACTORMD2ANIMATIONBYNAME_ANIM_NAME$, SETACTORMD2ANIMATIONBYNAME_NUM_LOOPS );
break;
-case FN_GetActorAnimationSpeed: //Number Function
- rc_push_num(rc_getActorAnimationSpeed( GETACTORANIMATIONSPEED_ACTOR ));
- break;
-case FN_GetActorEndFrame: //Number Function
- rc_push_num(rc_getActorEndFrame( GETACTORENDFRAME_ACTOR ));
- break;
-case FN_GetActorCurrentFrame: //Number Function
- rc_push_num(rc_getActorCurrentFrame( GETACTORCURRENTFRAME_ACTOR ));
- break;
-case FN_GetActorStartFrame: //Number Function
- rc_push_num(rc_getActorStartFrame( GETACTORSTARTFRAME_ACTOR ));
- break;
-case FN_StartActorTransition: //Sub Procedure
- rc_startActorTransition( STARTACTORTRANSITION_ACTOR, STARTACTORTRANSITION_FRAME, STARTACTORTRANSITION_TRANSITION_TIME );
- break;
-case FN_StopActorTransition: //Sub Procedure
- rc_stopActorTransition( STOPACTORTRANSITION_ACTOR );
- break;
-case FN_ActorIsInTransition: //Number Function
- rc_push_num(rc_actorIsInTransition( ACTORISINTRANSITION_ACTOR ));
- break;
-case FN_GetActorTransitionTime: //Number Function
- rc_push_num(rc_getActorTransitionTime( GETACTORTRANSITIONTIME_ACTOR ));
- break;
-case FN_actorAnimationIsLooped: //Number Function
- rc_push_num(rc_actorAnimationIsLooped( ACTORANIMATIONISLOOPED_ACTOR ));
- break;
-case FN_loopActorAnimation: //Sub Procedure
- rc_loopActorAnimation( LOOPACTORANIMATION_ACTOR, LOOPACTORANIMATION_FLAG );
+case FN_DeleteActorAnimation: //Sub Procedure
+ rc_deleteActorAnimation( DELETEACTORANIMATION_ACTOR, DELETEACTORANIMATION_ANIMATION );
break;
case FN_createMaterial: //Number Function
rc_push_num(rc_createMaterial( ));
diff --git a/rcbasic_runtime/rc_gfx.h b/rcbasic_runtime/rc_gfx.h
index 8b31990..0d416b7 100644
--- a/rcbasic_runtime/rc_gfx.h
+++ b/rcbasic_runtime/rc_gfx.h
@@ -2998,6 +2998,28 @@ int rc_canvasClip(int x, int y, int w, int h)
+void rc_preUpdate()
+{
+ //3D World Update
+ rc_physics3D.DeltaTime = device->getTimer()->getTime() - rc_physics3D.TimeStamp;
+ rc_physics3D.TimeStamp = device->getTimer()->getTime();
+ rc_physics3D.world->stepSimulation(rc_physics3D.DeltaTime*0.001f, rc_physics3D.maxSubSteps, rc_physics3D.fixedTimeStep);
+
+ for(int i = 0; i < rc_canvas.size(); i++)
+ {
+ if(rc_canvas[i].type != RC_CANVAS_TYPE_SPRITE)
+ continue;
+
+ float step = rc_canvas[i].physics2D.timeStep;
+ int32 velocityIterations = rc_canvas[i].physics2D.velocityIterations;
+ int32 positionIterations = rc_canvas[i].physics2D.positionIterations;
+
+ if(rc_canvas[i].physics2D.enabled)
+ rc_canvas[i].physics2D.world->Step(step, velocityIterations, positionIterations);
+ }
+
+ hasPreUpdated = true;
+}
bool rc_update()
{
@@ -3348,23 +3370,34 @@ bool rc_update()
irr::core::vector2d screenSize( (irr::f32) rc_canvas[0].dimension.Width, (irr::f32) rc_canvas[0].dimension.Height );
- double frame_current_time = ((double)SDL_GetTicks())/1000.0;
+ Uint32 current_time_ms = SDL_GetTicks();
+ double frame_current_time = ((double)current_time_ms)/1000.0;
for(int i = 0; i < rc_transition_actor.size();)
{
- if((frame_current_time - rc_actor[i].transition_start_time) >= rc_actor[i].transition_time)
+ int t_actor = rc_transition_actor[i];
+
+ if((frame_current_time - rc_actor[t_actor].transition_start_time) >= rc_actor[t_actor].transition_time)
{
- irr::scene::IAnimatedMeshSceneNode* node = (irr::scene::IAnimatedMeshSceneNode*)rc_actor[i].mesh_node;
+ irr::scene::IAnimatedMeshSceneNode* node = (irr::scene::IAnimatedMeshSceneNode*)rc_actor[t_actor].mesh_node;
node->setTransitionTime(0);
node->setJointMode(irr::scene::EJUOR_NONE);
- rc_actor[i].transition = false;
- rc_actor[i].transition_time = 0;
- rc_actor[i].transition_start_time = 0;
- rc_transition_actor.erase(i);
+ rc_actor[t_actor].transition = false;
+ rc_actor[t_actor].transition_time = 0;
+ rc_actor[t_actor].transition_start_time = 0;
+ rc_transition_actor.erase(t_actor);
+
+ rc_actor[t_actor].animation[0].start_frame = (int)rc_actor[t_actor].transition_frame;
+ rc_actor[t_actor].animation[0].end_frame = (int)rc_actor[t_actor].transition_frame;
+ rc_actor[t_actor].animation[0].fps = 0;
+ rc_actor[t_actor].current_animation_loop = 0;
+ rc_actor[t_actor].isPlaying = true;
+ rc_actor[t_actor].current_animation = 0;
}
else
{
- irr::scene::IAnimatedMeshSceneNode* node = (irr::scene::IAnimatedMeshSceneNode*)rc_actor[i].mesh_node;
+ //std::cout << "Animate dammit" << std::endl;
+ irr::scene::IAnimatedMeshSceneNode* node = (irr::scene::IAnimatedMeshSceneNode*)rc_actor[t_actor].mesh_node;
node->animateJoints();
i++;
}
@@ -3373,9 +3406,12 @@ bool rc_update()
VideoDriver->beginScene(true, true);
- rc_physics3D.DeltaTime = device->getTimer()->getTime() - rc_physics3D.TimeStamp;
- rc_physics3D.TimeStamp = device->getTimer()->getTime();
- rc_physics3D.world->stepSimulation(rc_physics3D.DeltaTime*0.001f, rc_physics3D.maxSubSteps, rc_physics3D.fixedTimeStep);
+ if(!hasPreUpdated)
+ {
+ rc_physics3D.DeltaTime = device->getTimer()->getTime() - rc_physics3D.TimeStamp;
+ rc_physics3D.TimeStamp = device->getTimer()->getTime();
+ rc_physics3D.world->stepSimulation(rc_physics3D.DeltaTime*0.001f, rc_physics3D.maxSubSteps, rc_physics3D.fixedTimeStep);
+ }
for(int i = 0; i < rc_canvas.size(); i++)
{
@@ -3446,6 +3482,8 @@ bool rc_update()
rc_setActiveCanvas(rc_active_canvas);
}
+ hasPreUpdated = false; //Will be set to true if PreUpdate() is called
+
#ifdef RC_WEB
emscripten_sleep(0);
#else
diff --git a/rcbasic_runtime/rc_gfx3D.h b/rcbasic_runtime/rc_gfx3D.h
index 3c675b0..5fa8988 100644
--- a/rcbasic_runtime/rc_gfx3D.h
+++ b/rcbasic_runtime/rc_gfx3D.h
@@ -562,7 +562,7 @@ bool rc_getActorCollision(int actor1, int actor2)
//add mesh actor to scene
-int rc_createMeshActor(int mesh_id)
+int rc_createAnimatedActor(int mesh_id)
{
if(mesh_id < 0 || mesh_id >= rc_mesh.size())
return -1;
@@ -604,6 +604,23 @@ int rc_createMeshActor(int mesh_id)
rc_actor[actor_id] = actor;
}
+ //animation
+ rc_actor_animation_obj animation;
+ animation.start_frame = 0;
+ animation.end_frame = 0;
+ animation.fps = 60.0;
+ animation.frame_start_time = SDL_GetTicks();
+ animation.frame_swap_time = 1000/60;
+ rc_actor[actor_id].animation.push_back(animation);
+ rc_animEndCallBack* anim_callback = new rc_animEndCallBack();
+ anim_callback->ref_actor = &rc_actor[actor_id];
+ anim_callback->OnAnimationEnd(node);
+ node->setAnimationEndCallback(anim_callback);
+ node->setLoopMode(false);
+ node->setFrameLoop(0, 0);
+ anim_callback->drop();
+
+
//Actor RigidBody
rc_actor[actor_id].physics.shape_type = RC_NODE_SHAPE_TYPE_BOX;
rc_actor[actor_id].physics.rigid_body = NULL;
@@ -616,7 +633,7 @@ int rc_createMeshActor(int mesh_id)
//add mesh actor to scene
-int rc_createMeshOctreeActor(int mesh_id)
+int rc_createOctreeActor(int mesh_id)
{
if(mesh_id < 0 || mesh_id >= rc_mesh.size())
return -1;
@@ -4952,21 +4969,97 @@ void rc_setWorld3DTimeStep(double ts)
//set actor animation [TODO]
-void rc_setActorAnimation(int actor, int start_frame, int end_frame)
+int rc_createActorAnimation(int actor, int start_frame, int end_frame, double speed)
+{
+ if(actor < 0 || actor >= rc_actor.size())
+ return -1;
+
+ rc_actor_animation_obj animation;
+ animation.active = true;
+ animation.start_frame = start_frame;
+ animation.end_frame = end_frame;
+ animation.fps = speed;
+ animation.frame_swap_time = 1000/speed;
+
+ int animation_id = rc_actor[actor].animation.size();
+
+ if(rc_actor[actor].deleted_animation.size() > 0)
+ {
+ animation_id = rc_actor[actor].deleted_animation[0];
+ rc_actor[actor].deleted_animation.erase(0);
+ rc_actor[actor].animation[animation_id] = animation;
+ }
+ else
+ rc_actor[actor].animation.push_back(animation);
+
+ return animation_id;
+}
+
+void rc_deleteActorAnimation(int actor, int animation)
+{
+ if(actor < 0 || actor >= rc_actor.size())
+ return;
+
+ if(animation < 0 || animation >= rc_actor[actor].animation.size())
+ return;
+
+ if(!rc_actor[actor].animation[animation].active)
+ return;
+
+ rc_actor[actor].animation[animation].active = false;
+ rc_actor[actor].deleted_animation.push_back(animation);
+}
+
+void rc_setActorAnimation(int actor, int animation, int num_loops)
{
if(actor < 0 || actor >= rc_actor.size())
return;
+ if(animation < 0 || animation >= rc_actor[actor].animation.size())
+ return;
+
switch(rc_actor[actor].node_type)
{
case RC_NODE_TYPE_MESH:
irr::scene::IAnimatedMeshSceneNode* node = (irr::scene::IAnimatedMeshSceneNode*)rc_actor[actor].mesh_node;
+ int start_frame = rc_actor[actor].animation[animation].start_frame;
+ int end_frame = rc_actor[actor].animation[animation].end_frame;
+ rc_actor[actor].current_animation = animation;
+ rc_actor[actor].current_animation_loop = 0;
+ rc_actor[actor].num_animation_loops = num_loops;
+ rc_actor[actor].isPlaying = true;
+ node->setCurrentFrame(start_frame);
node->setFrameLoop((irr::s32)start_frame, (irr::s32)end_frame );
+ node->setAnimationSpeed(rc_actor[actor].animation[animation].fps);
break;
}
}
-void rc_setActorMD2Animation(int actor, int md2_animation)
+int rc_getActorCurrentAnimation(int actor)
+{
+ if(actor < 0 || actor >= rc_actor.size())
+ return -1;
+
+ return rc_actor[actor].current_animation;
+}
+
+int rc_numActorAnimationLoops(int actor)
+{
+ if(actor < 0 || actor >= rc_actor.size())
+ return -1;
+
+ return rc_actor[actor].num_animation_loops;
+}
+
+bool rc_actorAnimationIsPlaying(int actor)
+{
+ if(actor < 0 || actor >= rc_actor.size())
+ return -1;
+
+ return rc_actor[actor].isPlaying;
+}
+
+void rc_setActorMD2Animation(int actor, int md2_animation, int num_loops)
{
if(actor < 0 || actor >= rc_actor.size())
return;
@@ -4976,11 +5069,21 @@ void rc_setActorMD2Animation(int actor, int md2_animation)
case RC_NODE_TYPE_MESH:
irr::scene::IAnimatedMeshSceneNode* node = (irr::scene::IAnimatedMeshSceneNode*)rc_actor[actor].mesh_node;
node->setMD2Animation( (irr::scene::EMD2_ANIMATION_TYPE) md2_animation );
+
+ //int start_frame = node->getStartFrame();
+ //int end_frame = node->getEndFrame();
+ rc_actor[actor].current_animation = RC_ANIMATION_MD2;
+ rc_actor[actor].current_animation_loop = 0;
+ rc_actor[actor].num_animation_loops = num_loops;
+ rc_actor[actor].isPlaying = true;
+ //node->setCurrentFrame(start_frame);
+ //node->setFrameLoop((irr::s32)start_frame, (irr::s32)end_frame ); //setMD2Animation() does this for me
+ node->setAnimationSpeed(node->getMesh()->getAnimationSpeed());
break;
}
}
-void rc_setActorMD2AnimationByName(int actor, std::string animation_name)
+void rc_setActorMD2AnimationByName(int actor, std::string animation_name, int num_loops)
{
if(actor < 0 || actor >= rc_actor.size())
return;
@@ -4990,41 +5093,71 @@ void rc_setActorMD2AnimationByName(int actor, std::string animation_name)
case RC_NODE_TYPE_MESH:
irr::scene::IAnimatedMeshSceneNode* node = (irr::scene::IAnimatedMeshSceneNode*)rc_actor[actor].mesh_node;
node->setMD2Animation( animation_name.c_str() );
+
+ //int start_frame = node->getStartFrame();
+ //int end_frame = node->getEndFrame();
+ rc_actor[actor].current_animation = RC_ANIMATION_MD2;
+ rc_actor[actor].current_animation_loop = 0;
+ rc_actor[actor].num_animation_loops = num_loops;
+ rc_actor[actor].isPlaying = true;
+ //node->setCurrentFrame(start_frame);
+ //node->setFrameLoop((irr::s32)start_frame, (irr::s32)end_frame ); //setMD2Animation() does this for me
+ node->setAnimationSpeed(node->getMesh()->getAnimationSpeed());
break;
}
}
-int rc_getActorStartFrame(int actor)
+int rc_getActorAnimationStartFrame(int actor, int animation)
{
if(actor < 0 || actor >= rc_actor.size())
return 0;
+ if(animation < 0 || animation >= rc_actor[actor].animation.size())
+ return 0;
+
switch(rc_actor[actor].node_type)
{
case RC_NODE_TYPE_MESH:
- irr::scene::IAnimatedMeshSceneNode* node = (irr::scene::IAnimatedMeshSceneNode*)rc_actor[actor].mesh_node;
- return node->getStartFrame();
+ if(rc_actor[actor].current_animation == animation)
+ {
+ irr::scene::IAnimatedMeshSceneNode* node = (irr::scene::IAnimatedMeshSceneNode*)rc_actor[actor].mesh_node;
+ return node->getStartFrame();
+ }
+ else
+ {
+ return rc_actor[actor].animation[animation].start_frame;
+ }
}
return 0;
}
-int rc_getActorEndFrame(int actor)
+int rc_getActorAnimationEndFrame(int actor, int animation)
{
if(actor < 0 || actor >= rc_actor.size())
return 0;
+ if(animation < 0 || animation >= rc_actor[actor].animation.size())
+ return 0;
+
switch(rc_actor[actor].node_type)
{
case RC_NODE_TYPE_MESH:
- irr::scene::IAnimatedMeshSceneNode* node = (irr::scene::IAnimatedMeshSceneNode*)rc_actor[actor].mesh_node;
- return node->getEndFrame();
+ if(rc_actor[actor].current_animation == animation)
+ {
+ irr::scene::IAnimatedMeshSceneNode* node = (irr::scene::IAnimatedMeshSceneNode*)rc_actor[actor].mesh_node;
+ return node->getEndFrame();
+ }
+ else
+ {
+ return rc_actor[actor].animation[animation].end_frame;
+ }
}
return 0;
}
-int rc_getActorCurrentFrame(int actor)
+int rc_getActorFrame(int actor)
{
if(actor < 0 || actor >= rc_actor.size())
return 0;
@@ -5040,33 +5173,37 @@ int rc_getActorCurrentFrame(int actor)
}
//set actor animation speed
-void rc_setActorAnimationSpeed(int actor, double speed)
+void rc_setActorAnimationSpeed(int actor, int animation, double speed)
{
if(actor < 0 || actor >= rc_actor.size())
return;
+ if(animation < 0 || animation >= rc_actor[actor].animation.size())
+ return;
+
switch(rc_actor[actor].node_type)
{
case RC_NODE_TYPE_MESH:
- irr::scene::IAnimatedMeshSceneNode* node = (irr::scene::IAnimatedMeshSceneNode*)rc_actor[actor].mesh_node;
- node->setAnimationSpeed( (irr::f32)speed );
+ rc_actor[actor].animation[animation].fps = speed;
+
+ if(animation == rc_actor[actor].current_animation)
+ {
+ irr::scene::IAnimatedMeshSceneNode* node = (irr::scene::IAnimatedMeshSceneNode*)rc_actor[actor].mesh_node;
+ node->setAnimationSpeed( (irr::f32)speed );
+ }
break;
}
}
-double rc_getActorAnimationSpeed(int actor)
+double rc_getActorAnimationSpeed(int actor, int animation)
{
if(actor < 0 || actor >= rc_actor.size())
return 0;
- switch(rc_actor[actor].node_type)
- {
- case RC_NODE_TYPE_MESH:
- irr::scene::IAnimatedMeshSceneNode* node = (irr::scene::IAnimatedMeshSceneNode*)rc_actor[actor].mesh_node;
- return node->getAnimationSpeed();
- }
+ if(animation < 0 || animation >= rc_actor[actor].animation.size())
+ return 0;
- return 0;
+ return rc_actor[actor].animation[animation].fps;
}
void rc_setActorFrame(int actor, int frame)
@@ -5078,11 +5215,117 @@ void rc_setActorFrame(int actor, int frame)
{
case RC_NODE_TYPE_MESH:
irr::scene::IAnimatedMeshSceneNode* node = (irr::scene::IAnimatedMeshSceneNode*)rc_actor[actor].mesh_node;
+ rc_actor[actor].animation[0].start_frame = frame;
+ rc_actor[actor].animation[0].end_frame = frame;
+ rc_actor[actor].animation[0].fps = 0;
+ rc_actor[actor].current_animation_loop = 0;
+ rc_actor[actor].isPlaying = true;
+ rc_actor[actor].current_animation = 0;
node->setCurrentFrame(frame);
break;
}
}
+void rc_setActorAnimationFrames(int actor, int animation, int start_frame, int end_frame)
+{
+ if(actor < 0 || actor >= rc_actor.size())
+ return;
+
+ if(animation < 0 || animation >= rc_actor[actor].animation.size())
+ return;
+
+ switch(rc_actor[actor].node_type)
+ {
+ case RC_NODE_TYPE_MESH:
+ rc_actor[actor].animation[animation].start_frame = start_frame;
+ rc_actor[actor].animation[animation].end_frame = end_frame;
+
+ if(animation == rc_actor[actor].current_animation)
+ {
+ irr::scene::IAnimatedMeshSceneNode* node = (irr::scene::IAnimatedMeshSceneNode*)rc_actor[actor].mesh_node;
+ node->setFrameLoop(start_frame, end_frame);
+ }
+ break;
+ }
+}
+
+void rc_startActorTransition(int actor, double frame, double transition_time)
+{
+ if(actor < 0 || actor >= rc_actor.size())
+ return;
+
+ if(rc_actor[actor].transition)
+ return;
+
+ switch(rc_actor[actor].node_type)
+ {
+ case RC_NODE_TYPE_MESH:
+ irr::scene::IAnimatedMeshSceneNode* node = (irr::scene::IAnimatedMeshSceneNode*)rc_actor[actor].mesh_node;
+ node->setTransitionTime(transition_time);
+ //node->setJointMode(irr::scene::EJUOR_CONTROL); //This is actually called in setTransitionTime()
+ node->setCurrentFrame(frame);
+ rc_actor[actor].transition_frame = frame;
+ rc_actor[actor].transition = true;
+ rc_actor[actor].transition_time = transition_time;
+ rc_actor[actor].transition_start_time = ((double)SDL_GetTicks())/1000.0;
+ rc_actor[actor].current_animation = RC_ANIMATION_TRANSITION;
+ rc_transition_actor.push_back(actor);
+ }
+}
+
+double rc_getActorTransitionTime(int actor)
+{
+ if(actor < 0 || actor >= rc_actor.size())
+ return 0;
+
+ if(rc_actor[actor].transition)
+ return rc_actor[actor].transition_time;
+
+ return 0;
+}
+
+
+void rc_stopActorTransition(int actor)
+{
+ if(actor < 0 || actor >= rc_actor.size())
+ return;
+
+
+ switch(rc_actor[actor].node_type)
+ {
+ case RC_NODE_TYPE_MESH:
+ irr::scene::IAnimatedMeshSceneNode* node = (irr::scene::IAnimatedMeshSceneNode*)rc_actor[actor].mesh_node;
+ node->setTransitionTime(0);
+ node->setJointMode(irr::scene::EJUOR_NONE);
+ rc_actor[actor].transition = false;
+ rc_actor[actor].transition_time = 0;
+
+ rc_setActorFrame(actor, rc_actor[actor].transition_frame);
+
+ for(int i = 0; i < rc_transition_actor.size();)
+ {
+ if(rc_transition_actor[i] == actor)
+ {
+ rc_transition_actor.erase(i);
+ }
+ else
+ i++;
+ }
+ }
+}
+
+bool rc_actorIsInTransition(int actor)
+{
+ if(actor < 0 || actor >= rc_actor.size())
+ return false;
+
+ return rc_actor[actor].transition;
+}
+
+
+
+
+
//set actor animation speed
void rc_setActorAutoCulling(int actor, int cull_type)
{
@@ -5458,34 +5701,7 @@ Uint32 rc_getLightSpecularColor(int actor)
}
-void rc_loopActorAnimation(int actor, bool flag)
-{
- if(actor < 0 || actor >= rc_actor.size())
- return;
- switch(rc_actor[actor].node_type)
- {
- case RC_NODE_TYPE_MESH:
- irr::scene::IAnimatedMeshSceneNode* node = (irr::scene::IAnimatedMeshSceneNode*)rc_actor[actor].mesh_node;
- node->setLoopMode(flag);
- break;
- }
-}
-
-bool rc_actorAnimationIsLooped(int actor)
-{
- if(actor < 0 || actor >= rc_actor.size())
- return false;
-
- switch(rc_actor[actor].node_type)
- {
- case RC_NODE_TYPE_MESH:
- irr::scene::IAnimatedMeshSceneNode* node = (irr::scene::IAnimatedMeshSceneNode*)rc_actor[actor].mesh_node;
- return node->getLoopMode();
- }
-
- return false;
-}
//set actor animation speed
void rc_setActorVisible(int actor, bool flag)
@@ -5505,75 +5721,6 @@ bool rc_actorIsVisible(int actor)
return rc_actor[actor].mesh_node->isVisible();
}
-void rc_startActorTransition(int actor, double frame, double transition_time)
-{
- if(actor < 0 || actor >= rc_actor.size())
- return;
-
- if(rc_actor[actor].transition)
- return;
-
- switch(rc_actor[actor].node_type)
- {
- case RC_NODE_TYPE_MESH:
- irr::scene::IAnimatedMeshSceneNode* node = (irr::scene::IAnimatedMeshSceneNode*)rc_actor[actor].mesh_node;
- node->setTransitionTime(transition_time);
- node->setJointMode(irr::scene::EJUOR_CONTROL);
- node->setCurrentFrame(frame);
- rc_actor[actor].transition = true;
- rc_actor[actor].transition_time = transition_time;
- rc_actor[actor].transition_start_time = ((double)SDL_GetTicks())/1000.0;
- rc_transition_actor.push_back(actor);
- }
-}
-
-double rc_getActorTransitionTime(int actor)
-{
- if(actor < 0 || actor >= rc_actor.size())
- return 0;
-
- if(rc_actor[actor].transition)
- return rc_actor[actor].transition_time;
-
- return 0;
-}
-
-
-void rc_stopActorTransition(int actor)
-{
- if(actor < 0 || actor >= rc_actor.size())
- return;
-
-
- switch(rc_actor[actor].node_type)
- {
- case RC_NODE_TYPE_MESH:
- irr::scene::IAnimatedMeshSceneNode* node = (irr::scene::IAnimatedMeshSceneNode*)rc_actor[actor].mesh_node;
- node->setTransitionTime(0);
- node->setJointMode(irr::scene::EJUOR_NONE);
- rc_actor[actor].transition = false;
- rc_actor[actor].transition_time = 0;
-
- for(int i = 0; i < rc_transition_actor.size();)
- {
- if(rc_transition_actor[i] == actor)
- {
- rc_transition_actor.erase(i);
- }
- else
- i++;
- }
- }
-}
-
-bool rc_actorIsInTransition(int actor)
-{
- if(actor < 0 || actor >= rc_actor.size())
- return false;
-
- return rc_actor[actor].transition;
-}
-
void rc_getTerrainPatchAABB(int actor, double patch_x, double patch_z, double* min_x, double* min_y, double* min_z, double* max_x, double* max_y, double* max_z)
{
@@ -6717,7 +6864,7 @@ double rc_getCameraNearValue()
return rc_canvas[rc_active_canvas].camera.camera->getNearValue();
}
-void rc_setCameraProjectionMatrix(int proj_matrix, int proj_type)
+void rc_setProjectionMatrix(int proj_matrix, int proj_type)
{
if(!(rc_active_canvas > 0 && rc_active_canvas < rc_canvas.size()))
return;
@@ -6733,7 +6880,7 @@ void rc_setCameraProjectionMatrix(int proj_matrix, int proj_type)
rc_canvas[rc_active_canvas].camera.camera->setProjectionMatrix(irr_mat, isOrtho);
}
-void rc_getCameraProjectionMatrix(int proj_matrix)
+void rc_getProjectionMatrix(int proj_matrix)
{
if(!(rc_active_canvas > 0 && rc_active_canvas < rc_canvas.size()))
return;
diff --git a/rcbasic_runtime/rc_gfx_core.h b/rcbasic_runtime/rc_gfx_core.h
index f88c8b0..832f9da 100644
--- a/rcbasic_runtime/rc_gfx_core.h
+++ b/rcbasic_runtime/rc_gfx_core.h
@@ -307,7 +307,7 @@ struct rc_physicsWorld2D_obj
b2World* world;
rc_contactListener_obj* contact_listener;
- float timeStep = 1/20.0; //the length of time passed to simulate (seconds)
+ float timeStep = 1/60.0; //the length of time passed to simulate (seconds)
int velocityIterations = 8; //how strongly to correct velocity
int positionIterations = 3; //how strongly to correct position
};
@@ -355,6 +355,7 @@ struct rc_canvas_obj
irr::core::array rc_canvas;
irr::core::array rc_canvas_zOrder;
int rc_active_canvas = -1;
+bool hasPreUpdated = false;
irr::video::SColor rc_active_color(0,0,0,0);
irr::video::SColor rc_clear_color(0,0,0,0);
@@ -516,6 +517,19 @@ struct rc_particle_properties_obj
bool outlineOnly;
};
+#define RC_ANIMATION_MD2 -2
+#define RC_ANIMATION_TRANSITION -3
+
+struct rc_actor_animation_obj
+{
+ bool active;
+ int start_frame;
+ int end_frame;
+ double fps;
+ irr::u32 frame_start_time;
+ irr::u32 frame_swap_time;
+};
+
struct rc_scene_node
{
int node_type = 0;
@@ -525,12 +539,20 @@ struct rc_scene_node
rc_node_physics physics;
bool transition;
+ double transition_frame;
double transition_time;
double transition_start_time;
rc_particle_properties_obj particle_properties;
int material_ref_index = -1;
+
+ int current_animation;
+ int num_animation_loops;
+ int current_animation_loop;
+ bool isPlaying;
+ irr::core::array deleted_animation;
+ irr::core::array animation;
};
irr::core::array rc_actor;
@@ -538,6 +560,35 @@ irr::core::array rc_actor;
irr::core::array rc_transition_actor;
+class rc_animEndCallBack : public IAnimationEndCallBack
+{
+ public:
+ rc_scene_node* ref_actor;
+
+ void OnAnimationEnd( IAnimatedMeshSceneNode *node)
+ {
+ if(ref_actor->current_animation_loop < ref_actor->num_animation_loops || ref_actor->num_animation_loops < 0)
+ {
+ //std::cout << "animating" << std::endl;
+ irr::scene::IAnimatedMeshSceneNode* node = (irr::scene::IAnimatedMeshSceneNode*) ref_actor->mesh_node;
+ int animation = ref_actor->current_animation;
+ if(animation < 0 || animation >= ref_actor->animation.size())
+ return;
+ int start_frame = ref_actor->animation[animation].start_frame;
+ int end_frame = ref_actor->animation[animation].end_frame;
+ node->setFrameLoop(start_frame, end_frame);
+ ref_actor->current_animation_loop++;
+ }
+ else
+ {
+ ref_actor->isPlaying = false;
+ }
+ //std::cout << "The animation has ended!" << std::endl;
+ // Your callback code goes there.
+ }
+};
+
+
void myTickCallback2(btSoftRigidDynamicsWorld* dynamicsWorld, btScalar timeStep)
{
rc_collisions.clear();
diff --git a/rcbasic_runtime/rc_sprite2D.h b/rcbasic_runtime/rc_sprite2D.h
index bffaa0c..4b1e780 100644
--- a/rcbasic_runtime/rc_sprite2D.h
+++ b/rcbasic_runtime/rc_sprite2D.h
@@ -51,6 +51,7 @@ struct rc_sprite2D_obj
int num_animation_loops;
int current_animation_loop;
bool isPlaying;
+ irr::core::array deleted_sprites;
irr::core::array animation;
int parent_canvas = -1;
diff --git a/rcbasic_runtime/rc_spritelib.h b/rcbasic_runtime/rc_spritelib.h
index cad66c6..1b35bf5 100644
--- a/rcbasic_runtime/rc_spritelib.h
+++ b/rcbasic_runtime/rc_spritelib.h
@@ -32,11 +32,29 @@ int rc_createSpriteAnimation(int spr_id, int anim_length, double fps)
animation.frames.push_back(0);
int animation_id = rc_sprite[spr_id].animation.size();
- rc_sprite[spr_id].animation.push_back(animation);
+ if(rc_sprite[spr_id].deleted_sprites.size() > 0)
+ {
+ animation_id = rc_sprite[spr_id].deleted_sprites[0];
+ rc_sprite[spr_id].deleted_sprites.erase(0);
+ rc_sprite[spr_id].animation[animation_id] = animation;
+ }
+ else
+ rc_sprite[spr_id].animation.push_back(animation);
return animation_id;
}
+void rc_deleteSpriteAnimation(int spr_id, int animation)
+{
+ if(spr_id < 0 || spr_id >= rc_sprite.size())
+ return;
+
+ if(!rc_sprite[spr_id].active)
+ return;
+
+ rc_sprite[spr_id].deleted_sprites.push_back(animation);
+}
+
void rc_setSpriteFrame(int spr_id, int frame)
{
if(spr_id < 0 || spr_id >= rc_sprite.size())
@@ -176,7 +194,7 @@ double rc_getSpriteAnimationSpeed(int spr_id, int animation)
return rc_sprite[spr_id].animation[animation].fps;
}
-void rc_setSpriteAnimation(int spr_id, int animation)
+void rc_setSpriteAnimation(int spr_id, int animation, int num_loops)
{
if(spr_id < 0 || spr_id >= rc_sprite.size())
return;
@@ -191,6 +209,7 @@ void rc_setSpriteAnimation(int spr_id, int animation)
rc_sprite[spr_id].animation[animation].current_frame = 0;
rc_sprite[spr_id].isPlaying = true;
rc_sprite[spr_id].animation[animation].frame_start_time = SDL_GetTicks();
+ rc_sprite[spr_id].num_animation_loops = num_loops;
}
int rc_getSpriteAnimation(int spr_id)
@@ -238,6 +257,17 @@ int rc_numSpriteAnimationLoops(int spr_id)
return rc_sprite[spr_id].num_animation_loops;
}
+bool rc_spriteAnimationIsPlaying(int spr_id)
+{
+ if(spr_id < 0 || spr_id >= rc_sprite.size())
+ return false;
+
+ if(!rc_sprite[spr_id].active)
+ return false;
+
+ return rc_sprite[spr_id].isPlaying;
+}
+
//------------------------------SPRITES-------------------------------------------------------
//Larger z gets drawn first
void sortSpriteZ(int canvas_id)
@@ -575,7 +605,7 @@ void rc_setSpriteScale(int spr_id, double x, double y)
rc_sprite[spr_id].scale.set(x, y);
- if(rc_sprite[spr_id].isSolid)
+ if(true) //(rc_sprite[spr_id].isSolid) //I probably originally planned on not having a fixture for non-solid sprites but then I discovered sensors
{
if(rc_sprite[spr_id].physics.fixture)
{
@@ -650,6 +680,19 @@ void rc_scaleSprite(int spr_id, double x, double y)
rc_setSpriteScale(spr_id, scale_x, scale_y);
}
+
+void rc_getSpriteScale(int spr_id, double* x, double* y)
+{
+ if(spr_id < 0 || spr_id >= rc_sprite.size())
+ return;
+
+ if(!rc_sprite[spr_id].active)
+ return;
+
+ *x = rc_sprite[spr_id].scale.X;
+ *y = rc_sprite[spr_id].scale.Y;
+}
+
double rc_spriteWidth(int spr_id)
{
if(spr_id < 0 || spr_id >= rc_sprite.size())
@@ -748,7 +791,7 @@ void drawSprites(int canvas_id)
int32 velocityIterations = rc_canvas[canvas_id].physics2D.velocityIterations;
int32 positionIterations = rc_canvas[canvas_id].physics2D.positionIterations;
- if(rc_canvas[canvas_id].physics2D.enabled)
+ if(rc_canvas[canvas_id].physics2D.enabled && (!hasPreUpdated))
rc_canvas[canvas_id].physics2D.world->Step(step, velocityIterations, positionIterations);
//Setting the render target to the current canvas. NOTE: I might change this target to a separate sprite layer later.