LunarCast Network

[Front Page] [Ph3 Home] [Math] [Implemented] [Settings]

Touhou Danmakufu EX Implemented Functions - Functions suffixed with [Ex] are exclusive extension functions

Math functions

Command Name Support Details
add Full
subtract Full
multiply Full
divide Full
remainder Full
power Full
min Full
max Full
log Full
log10 Full
cos Full
sin Full
tan Full
acos Full
asin Full
atan Full
atan2 Full
rand Full* May not be accurate
srand [Ex] Full
round Full
truncate Full
ceil Full
floor Full
absolute Full
modc Full
pi Full
successor Full
predecessor Full
negative Full
ToRadian [Ex] Full
ToDegree [Ex] Full

Text functions

Command Name Support Details
InstallFont Full* Path must point to a special .fnt font file (see SystemVW.fnt)
ToString Full
IntToString Full
itoa Full
rtoa Full
atoi Full
ator Full
TrimString Full
SplitString Full

Path functions

Command Name Support Details
GetFileDirectory Stub
GetFilePathList Stub
GetDirectoryList Stub
GetModuleDirectory Stub
GetMainStgScriptPath Stub
GetMainPackageScriptPath Stub
GetMainStgScriptDirectory Stub
GetCurrentScriptDirectory Full
GetScriptPathList Stub

Time functions

Command Name Support Details
GetCurrentDateTimeS Stub
GetStageTime Stub
GetPackageTime Stub
GetCurrentFps Full
GetUnlimitedFps [Ex] Full
GetReplayFps Stub

Debug functions

Command Name Support Details
WriteLog Full
AppendLog [Ex] Full
RaiseError Partial Outputs "Script Error" with the error message instead of halting the script
assert Full

Common data functions

Command Name Support Details
SetCommonData Full
GetCommonData Full
ClearCommonData Full
DeleteCommonData Full
SetAreaCommonData Full
GetAreaCommonData Full
ClearAreaCommonData Full
DeleteAreaCommonData Full
CreateCommonDataArea Full
IsCommonDataAreaExists Full
CopyCommonDataArea Full
GetCommonDataAreaKeyList Full
GetCommonDataValueKeyList Full
SaveCommonDataAreaA1 Stub
LoadCommonDataAreaA1 Stub
SaveCommonDataAreaA2 Stub
LoadCommonDataAreaA2 Stub
SaveCommonDataAreaToReplayFile Stub
LoadCommonDataAreaFromReplayFile Stub

Audio functions

Command Name Support Details
LoadSound Full
RemoveSound Full
PlayBGM Full
PlaySE Full
StopSound Full

Input functions

Command Name Support Details
AddVirtualKey Stub
AddReplayTargetVirtualKey Stub
GetVirtualKeyState Full
SetVirtualKeyState Full
GetKeyState Full
GetMouseState Stub
GetMouseX Full
GetMouseY Full
GetMouseMoveZ Stub
SetSkipModeKey Stub

Render functions

Command Name Support Details
LoadTexture Full
RemoveTexture Full
GetTextureWidth Full
GetTextureHeight Full
SetFogEnable Stub
SetFogParam Stub
SetInvalidRenderPriorityA1 Stub
ClearInvalidRenderPriority Stub
GetReservedRenderTargetName Stub
CreateRenderTarget Stub
RenderToTextureA1 Stub
RenderToTextureB1 Stub
SaveRenderedTextureA1 Stub
SaveRenderedTextureA2 Stub
SaveSnapShotA1 Stub
SaveSnapShotA2 Stub
IsPixelShaderSupported Stub
SetShader Stub
SetShaderI Stub
ResetShader Stub
ResetShaderI Stub

Script functions

Command Name Support Details
LoadScript Full
StartScript Full
RestartScript [Ex] Full
CloseScript Full
IsCloseScript Full
CloseStgScene Stub
GetOwnScriptId Full
GetEventType Full
SetScriptResult Full
GetScriptResult Full
SetAutoDeleteObject Full
GetScriptInfoA1 Full
GetCurrentInfoA1 [Ex] Full

System functions

Command Name Support Details
SetStgFrame Partial Only controls where bullets will be auto deleted
GetScore Full
AddScore Full
GetGraze Full
AddGraze Full
GetPoint Full
AddPoint Full
SetItemRenderPriorityI Stub
SetShotRenderPriorityI Stub
GetStgFrameRenderPriorityMinI Stub
GetStgFrameRenderPriorityMaxI Stub
GetItemRenderPriorityI Stub
GetShotRenderPriorityI Stub
GetPlayerRenderPriorityI Stub
GetCameraFocusPermitPriorityI Stub
GetStgFrameLeft Full
GetStgFrameTop Full
GetStgFrameWidth Full
GetStgFrameHeight Full
GetScreenWidth Full
GetScreenHeight Full
IsReplay Stub
AddArchiveFile Stub

Player functions - Spell related commands actually set values but have no visible effect due to lack of spell system

Command Name Support Details
GetPlayerObjectID Full
GetPlayerScriptID Full
SetPlayerSpeed Full
SetPlayerClip Full
SetPlayerLife Full
SetPlayerSpell Full
SetPlayerPower Full
SetPlayerInvincibilityFrame Full
SetPlayerDownStateFrame Full
SetPlayerRebirthFrame Full
SetPlayerRebirthLossFrame Full
SetPlayerAutoItemCollectLine Full
SetForbidPlayerShot Full
SetForbidPlayerSpell Full
GetPlayerX Full
GetPlayerY Full
GetPlayerState Full
GetPlayerSpeed Full
GetPlayerClip Full
GetPlayerLife Full
GetPlayerSpell Full
GetPlayerPower Full
GetPlayerInvincibilityFrame Full
GetPlayerDownStateFrame Full
GetPlayerCounterspellFrame [Ex] Full
IsPermitPlayerShot Full
IsPermitPlayerSpell Full
IsPlayerLastSpellWait Full
IsPlayerSpellActive Full

Shot functions

Command Name Support Details
DeleteShotAll Partial Always performs deletion type TYPE_IMMEDIATE
DeleteShotInCircle Stub
CreateShotA1 Full
CreatePlayerShotA1 Full
CreateShotA2 Full
CreatePlayerShotA2 [Ex] Full
CreateShotOA1 Full
CreateShotOA2 [Ex] Full
CreateShotB1 Stub
CreateShotB2 Stub
CreateShotOB1 Stub
CreateShotOB2 [Ex] Stub
CreateLooseLaserA1 Stub
CreateStraightLaserA1 Stub
SetShotIntersectionCircle Stub
SetShotIntersectionLine Stub
GetShotIdInCircleA1 Stub
GetShotIdInCircleA2 Stub
GetShotCount Stub
SetShotAutoDeleteClip Stub
GetShotDataInfoA1 Stub
StartShotScript Stub

Item functions

Command Name Support Details
CreateItemA1 Stub
CreateItemA2 Stub
CreateItemU1 Stub
CreateItemU2 Stub
CollectAllItems Stub
CollectItemsByType Stub
CancelCollectItems Stub
SetDefaultBonusItemEnable Stub
SetDefaultBonusItemEnable Stub
LoadItemData Stub
ReloadItemData Stub

Other functions

Command Name Support Details
StartSlow Stub
StopSlow Stub
IsIntersected_Line_Circle Stub
IsIntersected_Obj_Obj Stub
GetObjectDistance Full
GetObject2dPosition Stub Returns [ObjRender_GetX,ObjRenderGetY]
Get2dPosition Stub Returns [x,y]

Obj functions

Command Name Support Details
Obj_Delete Full
Obj_IsDeleted Full
Obj_IsVisible Full
Obj_SetRenderPriority Full
Obj_SetRenderPriorityI Full
Obj_GetRenderPriority Full
Obj_GetRenderPriorityI Full
Obj_GetValue Full
Obj_GetValueD Full
Obj_SetValue Full
Obj_IsValueExists Full
Obj_GetType Full

ObjRender functions

Command Name Support Details
ObjRender_SetX Full
ObjRender_SetY Full
ObjRender_SetZ Full
ObjRender_SetPosition Full
ObjRender_SetAngleX Full
ObjRender_SetAngleY Full
ObjRender_SetAngleZ Full
ObjRender_SetAngleXYZ Full
ObjRender_SetScaleX Full
ObjRender_SetScaleY Full
ObjRender_SetScaleZ Full
ObjRender_SetScaleXYZ Full
ObjRender_SetColor Full
ObjRender_SetColorHSV Full
ObjRender_SetAlpha Full
ObjRender_SetBlendType Full
ObjRender_GetX Full
ObjRender_GetY Full
ObjRender_GetZ Full
ObjRender_GetAngleX Full
ObjRender_GetAngleY Full
ObjRender_GetAngleZ Full
ObjRender_GetScaleX Full
ObjRender_GetScaleY Full
ObjRender_GetScaleZ Full
ObjRender_GetBlendType Full
ObjRender_SetZWrite Full
ObjRender_SetZTest Full
ObjRender_SetFogEnable Stub
ObjRender_SetPermitCamera Stub

ObjPrim functions

Command Name Support Details
ObjPrim_Create Partial Only OBJ_PRIMITIVE_2D and OBJ_SPRITE_2D supported, the rest are stubs
ObjPrim_SetPrimitiveType Full
ObjPrim_SetVertexCount Full
ObjPrim_GetVertexCount Full
ObjPrim_SetTexture Full
ObjPrim_SetVertexPosition Full
ObjPrim_GetVertexPosition Full
ObjPrim_SetVertexUV Full
ObjPrim_SetVertexUVT Full
ObjPrim_SetVertexColor Full
ObjPrim_SetVertexAlpha Full

ObjSprite2D functions

Command Name Support Details
ObjSprite2D_SetSourceRect Full
ObjSprite2D_SetDestRect Full
ObjSprite2D_SetDestCenter Full

ObjText functions

Command Name Support Details
ObjText_Create Full
ObjText_SetText Full
ObjText_SetFontType Full
ObjText_SetFontSize Full
ObjText_SetFontBold Partial No visible changes, otherwise succeeds
ObjText_SetFontColorRainbow [Ex] Full
ObjText_SetFontColorTop Full
ObjText_SetFontColorBottom Full
ObjText_SetFontBorderWidth Partial No visible changes, otherwise succeeds
ObjText_SetFontBorderType Partial No visible changes, otherwise succeeds
ObjText_SetFontBorderColor Partial No visible changes, otherwise succeeds
ObjText_SetMaxWidth Partial No visible changes, otherwise succeeds
ObjText_SetMaxHeight Partial No visible changes, otherwise succeeds
ObjText_SetLinePitch Stub
ObjText_SetSidePitch Stub
ObjText_SetTransCenter Stub
ObjText_SetAutoTransCenter Stub
ObjText_SetHorizontalAlignment Stub
ObjText_SetSyntacticAnalysis Partial No visible changes, otherwise succeeds
ObjText_GetTextLengthCU Stub Returns 0
ObjText_GetTextLengthCUL Stub Returns 0
ObjText_GetTotalWidth Full* May not be value-accurate
ObjText_GetTotalHeight Full* May not be value-accurate
ObjText_ShowControlCharacters [Ex] Full

ObjShot functions

Command Name Support Details
ObjShot_Create Partial Shot spawned will be already registered
ObjShot_Regist Full* Does perform registration however there is no way to create unregistered shots
ObjShot_FadeDelete Stub
ObjShot_SetDeleteFrame Full
ObjShot_SetDelay Full
ObjShot_SetSourceBlendType Stub
ObjShot_SetDamage Full
ObjShot_SetPenetration Full
ObjShot_SetEraseShot Full
ObjShot_SetSpellFactor Full
ObjShot_ToItem Full
ObjShot_AddShotA1 Full
ObjShot_AddShotA2 Full
ObjShot_SetIntersectionCircleA1 Stub
ObjShot_SetIntersectionCircleA2 Stub
ObjShot_SetIntersectionLine Stub
ObjShot_SetItemChange Full* Sets value, however items are not implemented
ObjShot_GetDamage Full
ObjShot_GetPenetration Full
ObjShot_GetDelay Full
ObjShot_IsGrazed [Ex] Full
ObjShot_IsSpellResist Full
ObjShot_GetImageID Full

ObjMove functions

Command Name Support Details
ObjMove_SetX Full
ObjMove_SetY Full
ObjMove_SetPosition Full
ObjMove_SetSpeed Full
ObjMove_SetAngle Full
ObjMove_SetAcceleration Full
ObjMove_SetMaxSpeed Full
ObjMove_SetAngularVelocity Full
ObjMove_SetDestAtSpeed Stub
ObjMove_SetDestAtFrame Full
ObjMove_SetDestAtWeight Stub
ObjMove_GetSpeed Full
ObjMove_GetAngle Full
ObjMove_GetAcceleration [Ex] Full
ObjMove_GetAngularVelocity [Ex] Full

ObjEnemy functions

Command Name Support Details
ObjEnemy_Create Full
ObjEnemy_Regist Full
ObjEnemy_GetInfo Full
ObjEnemy_SetLife Full
ObjEnemy_AddLife Full
ObjEnemy_SetDamageRate Full
ObjEnemy_SetIntersectionCircleToShot Full* The collider is permanent
ObjEnemy_SetIntersectionCircleToPlayer Full* The collider is permanent

ObjCol functions

Command Name Support Details
ObjCol_IsIntersected Full
ObjCol_GetListOfIntersectedEnemyID Stub Returns an array with a single enemy ID which is always zero (0)
ObjCol_GetIntersectedCount Full

Player Script functions

Command Name Support Details
CallSpell Stub
GetSpellManageObject Stub

LunarCast Network