inserted by FC2 system

■東方弾幕風について■
まえがき

操作方法

更新履歴


v2との関数互換ヘルプ
(Thanks to mrtode氏)



東方楽曲及びZUN氏作曲楽曲の二次使用に関する条件


■スクリプト構文■
ステートメント

予約語

変数宣言

配列

ローカルスコープ
(ローカル変数)


式と演算子

比較式、論理式

分岐「if、alternative」

ループ「loop、times、while、ascent、descent」

脱出「break、return」

サブルーチン

ユーザー定義関数

マイクロスレッド

コメントアウト

ファイル取り込み「#include」


■スクリプト記述方法■
スクリプトのフォーマット

スクリプトヘッダ

組み込みルーチン

Singleスクリプト

連続再生スクリプト

Stageスクリプト

自機スクリプト

メニュー系スクリプト

アイテムカスタムスクリプト

弾カスタムスクリプト

パッケージスクリプト

イベント(@Event)


■動作仕様■
弾画像(デフォルト)

弾画像の追加

ユーザ定義アイテム

オブジェクト

描画優先度

使用可能ファイル(画像, 音声)

テキスト表示

ピクセルシェーダ

アーカイブファイル

定義ファイル(th_dnh.def)


■サンプル■

弾操作サンプル

画像表示サンプル(解説)

エフェクトサンプル

ピクセルシェーダサンプル


■共通関数■

■数学系
min
max
log
log10
cos
sin
tan
acos
asin
atan
atan2
rand
round
truncate
ceil
floor
absolute
modc


■文字列操作
InstallFont
ToString
IntToString
itoa
rtoa
rtos
vtos
atoi
ator
TrimString
SplitString


■パス関連
GetFileDirectory
GetFilePathList
GetDirectoryList
GetModuleDirectory
GetMainStgScriptPath
GetMainPackageScriptPath
GetMainStgScriptDirectory
GetCurrentScriptDirectory
GetScriptPathList


■時間関連
GetCurrentDateTimeS
GetStageTime
GetPackageTime
GetCurrentFps
GetReplayFps


■デバッグ関連
WriteLog
RaiseError


■共通データ
SetCommonData
GetCommonData
ClearCommonData
DeleteCommonData
SetAreaCommonData
GetAreaCommonData
ClearAreaCommonData
DeleteAreaCommonData
CreateCommonDataArea
IsCommonDataAreaExists
CopyCommonDataArea
GetCommonDataAreaKeyList
GetCommonDataValueKeyList
SaveCommonDataAreaA1
LoadCommonDataAreaA1
SaveCommonDataAreaA2
LoadCommonDataAreaA2
SaveCommonDataAreaToReplayFile
LoadCommonDataAreaFromReplayFile


■音声操作関数
LoadSound
RemoveSound
PlayBGM
PlaySE
StopSound


■キー入力
GetVirtualKeyState
SetVirtualKeyState
AddVirtualKey
AddReplayTargetVirtualKey
GetKeyState
GetMouseState
GetMouseX
GetMouseY
GetMouseMoveZ
SetSkipModeKey


■描画系
LoadTexture
LoadTextureInLoadThread
RemoveTexture
GetTextureWidth
GetTextureHeight
SetFogEnable
SetFogParam
ClearInvalidRenderPriority
SetInvalidRenderPriorityA1
GetReservedRenderTargetName
CreateRenderTarget
RenderToTextureA1
RenderToTextureB1
SaveRenderedTextureA1
SaveRenderedTextureA2
SaveSnapShotA1
SaveSnapShotA2
IsPixelShaderSupported
SetShader
SetShaderI
ResetShader
ResetShaderI


■3Dカメラ
SetCameraFocusX
SetCameraFocusY
SetCameraFocusZ
SetCameraFocusXYZ
SetCameraRadius
SetCameraAzimuthAngle
SetCameraElevationAngle
SetCameraYaw
SetCameraPitch
SetCameraRoll
GetCameraX
GetCameraY
GetCameraZ
GetCameraFocusX
GetCameraFocusY
GetCameraFocusZ
GetCameraRadius
GetCameraAzimuthAngle
GetCameraElevationAngle
GetCameraYaw
GetCameraPitch
GetCameraRoll
SetCameraPerspectiveClip


■2Dカメラ
Set2DCameraFocusX
Set2DCameraFocusY
Set2DCameraAngleZ
Set2DCameraRatio
Set2DCameraRatioX
Set2DCameraRatioY
Reset2DCamera
Get2DCameraX
Get2DCameraY
Get2DCameraAngleZ
Get2DCameraRatio
Get2DCameraRatioX
Get2DCameraRatioY


■スクリプト操作
LoadScript
LoadScriptInThread
StartScript
CloseScript
IsCloseScript
SetScriptArgument
GetScriptArgument
GetScriptArgumentCount
CloseStgScene
GetOwnScriptID
GetEventType
GetEventArgument
SetScriptResult
GetScriptResult
SetAutoDeleteObject
NotifyEvent
NotifyEventAll
GetScriptInfoA1


■システム関連
SetStgFrame
GetScore
AddScore
GetGraze
AddGraze
GetPoint
AddPoint
SetItemRenderPriorityI
SetShotRenderPriorityI
GetStgFrameRenderPriorityMinI
GetStgFrameRenderPriorityMaxI
GetItemRenderPriorityI
GetShotRenderPriorityI
GetPlayerRenderPriorityI
GetCameraFocusPermitPriorityI
GetStgFrameLeft
GetStgFrameTop
GetStgFrameWidth
GetStgFrameHeight
GetScreenWidth
GetScreenHeight
IsReplay
AddArchiveFile


■自機関連
GetPlayerObjectID
GetPlayerScriptID
SetPlayerSpeed
SetPlayerClip
SetPlayerLife
SetPlayerSpell
SetPlayerPower
SetPlayerInvincibilityFrame
SetPlayerDownStateFrame
SetPlayerRebirthFrame
SetPlayerRebirthLossFrame
SetPlayerAutoItemCollectLine
SetForbidPlayerShot
SetForbidPlayerSpell
GetPlayerX
GetPlayerY
GetPlayerState
GetPlayerSpeed
GetPlayerClip
GetPlayerLife
GetPlayerSpell
GetPlayerPower
GetPlayerInvincibilityFrame
GetPlayerDownStateFrame
GetPlayerRebirthFrame
GetAngleToPlayer
IsPermitPlayerShot
IsPermitPlayerSpell
IsPlayerLastSpellWait
IsPlayerSpellActive
GetPlayerID
GetPlayerReplayName


■敵関連
GetEnemyBossSceneObjectID
GetEnemyBossObjectID
GetAllEnemyID
GetIntersectionRegistedEnemyID
GetAllEnemyIntersectionPosition
GetEnemyIntersectionPosition
GetEnemyIntersectionPositionByIdA1
GetEnemyIntersectionPositionByIdA2
LoadEnemyShotData
ReloadEnemyShotData


■弾関連
DeleteShotAll
DeleteShotInCircle
CreateShotA1
CreateShotA2
CreateShotOA1
CreateShotB1
CreateShotB2
CreateShotOB1
CreateLooseLaserA1
CreateStraightLaserA1
CreateCurveLaserA1
SetShotIntersectionCircle
SetShotIntersectionLine
GetShotIdInCircleA1
GetShotIdInCircleA2
GetShotCount
SetShotAutoDeleteClip
GetShotDataInfoA1
StartShotScript


■アイテム関連
CreateItemA1
CreateItemA2
CreateItemU1
CreateItemU2
CollectAllItems
CollectItemsByType
CollectItemsInCircle
CancelCollectItems
StartItemScript
SetDefaultBonusItemEnable
LoadItemData
ReloadItemData


■その他
StartSlow
StopSlow
IsIntersected_Line_Circle
IsIntersected_Obj_Obj
GetObjectDistance
GetObject2dPosition
Get2dPosition


■共通オブジェクト操作
(Obj_)

Obj_Delete
Obj_IsDeleted
Obj_SetVisible
Obj_IsVisible
Obj_SetRenderPriority
Obj_SetRenderPriorityI
Obj_GetRenderPriority
Obj_GetRenderPriorityI
Obj_GetValue
Obj_GetValueD
Obj_SetValue
Obj_DeleteValue
Obj_IsValueExists
Obj_GetType


■描画オブジェクト操作
(ObjRender_)

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


■頂点オブジェクト操作
(ObjPrim_)

ObjPrim_Create
ObjPrim_SetPrimitiveType
ObjPrim_SetVertexCount
ObjPrim_GetVertexCount
ObjPrim_SetTexture
ObjPrim_SetVertexPosition
ObjPrim_GetVertexPosition
ObjPrim_SetVertexUV
ObjPrim_SetVertexUVT
ObjPrim_SetVertexColor
ObjPrim_SetVertexAlpha


■2D矩形オブジェクト操作
(ObjSprite2D_)

ObjSprite2D_SetSourceRect
ObjSprite2D_SetDestRect
ObjSprite2D_SetDestCenter


■2D矩形リストオブジェクト操作
(ObjSpriteList2D_)

ObjSpriteList2D_SetSourceRect
ObjSpriteList2D_SetDestRect
ObjSpriteList2D_SetDestCenter
ObjSpriteList2D_AddVertex
ObjSpriteList2D_CloseVertex
ObjSpriteList2D_ClearVertexCount


■3D矩形オブジェクト操作
(ObjSprite3D_)

ObjSprite3D_SetSourceRect
ObjSprite3D_SetDestRect
ObjSprite3D_SetSourceDestRect
ObjSprite3D_SetBillboard


■3Dメッシュオブジェクト操作
(ObjMesh_)

ObjMesh_Create
ObjMesh_Load
ObjMesh_SetColor
ObjMesh_SetAlpha
ObjMesh_SetAnimation
ObjMesh_SetCoordinate2D


■テキストオブジェクト操作
(ObjText_)

ObjText_Create
ObjText_SetText
ObjText_SetFontType
ObjText_SetFontSize
ObjText_SetFontBold
ObjText_SetFontColorTop
ObjText_SetFontColorBottom
ObjText_SetFontBorderWidth
ObjText_SetFontBorderType
ObjText_SetFontBorderColor
ObjText_SetMaxWidth
ObjText_SetMaxHeight
ObjText_SetLinePitch
ObjText_SetSidePitch
ObjText_SetTransCenter
ObjText_SetAutoTransCenter
ObjText_SetHorizontalAlignment
ObjText_SetSyntacticAnalysis
ObjText_GetTextLength
ObjText_GetTextLengthCU
ObjText_GetTextLengthCUL
ObjText_GetTotalWidth
ObjText_GetTotalHeight


■シェーダオブジェクト操作
(ObjShader_)

ObjShader_Create
ObjShader_SetShaderF
ObjShader_SetShaderO
ObjShader_ResetShader
ObjShader_SetTechnique
ObjShader_SetVector
ObjShader_SetFloat
ObjShader_SetFloatArray
ObjShader_SetTexture


■音声オブジェクト操作
(ObjSound_)

ObjSound_Create
ObjSound_Load
ObjSound_Play
ObjSound_Stop
ObjSound_SetVolumeRate
ObjSound_SetPanRate
ObjSound_SetFade
ObjSound_SetLoopEnable
ObjSound_SetLoopTime
ObjSound_SetLoopSampleCount
ObjSound_SetRestartEnable
ObjSound_SetSoundDivision
ObjSound_IsPlaying
ObjSound_GetVolumeRate


■ファイルオブジェクト操作
(ObjFile_)

ObjFile_Create
ObjFile_Open
ObjFile_OpenNW
ObjFile_Store
ObjFile_GetSize


■テキストファイルオブジェクト操作
(ObjFileT_)

ObjFileT_GetLineCount
ObjFileT_GetLineText
ObjFileT_SplitLineText
ObjFileT_AddLine
ObjFileT_ClearLine


■バイナリファイルオブジェクト操作
(ObjFileB_)

ObjFileB_SetByteOrder
ObjFileB_SetCharacterCode
ObjFileB_GetPointer
ObjFileB_Seek
ObjFileB_ReadBoolean
ObjFileB_ReadByte
ObjFileB_ReadShort
ObjFileB_ReadInteger
ObjFileB_ReadLong
ObjFileB_ReadFloat
ObjFileB_ReadDouble
ObjFileB_ReadString


■移動オブジェクト操作
(ObjMove_)

ObjMove_SetX
ObjMove_SetY
ObjMove_SetPosition
ObjMove_SetSpeed
ObjMove_SetAngle
ObjMove_SetAcceleration
ObjMove_SetMaxSpeed
ObjMove_SetAngularVelocity
ObjMove_SetDestAtSpeed
ObjMove_SetDestAtFrame
ObjMove_SetDestAtWeight
ObjMove_AddPatternA1
ObjMove_AddPatternA2
ObjMove_AddPatternA3
ObjMove_AddPatternA4
ObjMove_AddPatternB1
ObjMove_AddPatternB2
ObjMove_AddPatternB3
ObjMove_GetX
ObjMove_GetY
ObjMove_GetSpeed
ObjMove_GetAngle


■敵オブジェクト操作
(ObjEnemy_)

ObjEnemy_Create
ObjEnemy_Regist
ObjEnemy_GetInfo
ObjEnemy_SetLife
ObjEnemy_AddLife
ObjEnemy_SetDamageRate
ObjEnemy_SetIntersectionCircleToShot
ObjEnemy_SetIntersectionCircleToPlayer


■ボスシーンオブジェクト操作
(ObjEnemyBossScene_)

ObjEnemyBossScene_Create
ObjEnemyBossScene_Regist
ObjEnemyBossScene_Add
ObjEnemyBossScene_LoadInThread
ObjEnemyBossScene_GetInfo
ObjEnemyBossScene_SetSpellTimer
ObjEnemyBossScene_StartSpell


■弾(レーザー)オブジェクト操作
(ObjShot_)

ObjShot_Create
ObjShot_Regist
ObjShot_SetAutoDelete
ObjShot_FadeDelete
ObjShot_SetDeleteFrame
ObjShot_SetDelay
ObjShot_SetSpellResist
ObjShot_SetGraphic
ObjShot_SetSourceBlendType
ObjShot_SetDamage
ObjShot_SetPenetration
ObjShot_SetEraseShot
ObjShot_SetSpellFactor
ObjShot_ToItem
ObjShot_AddShotA1
ObjShot_AddShotA2
ObjShot_SetIntersectionCircleA1
ObjShot_SetIntersectionCircleA2
ObjShot_SetIntersectionLine
ObjShot_SetIntersectionEnable
ObjShot_SetItemChange
ObjShot_GetDamage
ObjShot_GetPenetration
ObjShot_GetDelay
ObjShot_IsSpellResist
ObjShot_GetImageID
ObjLaser_SetLength
ObjLaser_SetRenderWidth
ObjLaser_SetIntersectionWidth
ObjLaser_SetGrazeInvalidFrame
ObjLaser_SetInvalidLength
ObjLaser_SetItemDistance
ObjLaser_GetLength
ObjStLaser_SetAngle
ObjStLaser_GetAngle
ObjStLaser_SetSource
ObjCrLaser_SetTipDecrement


■アイテムオブジェクト操作
(ObjItem_)

ObjItem_SetItemID
ObjItem_SetRenderScoreEnable
ObjItem_SetAutoCollectEnable
ObjItem_SetDefinedMovePatternA1
ObjItem_GetInfo


■自機オブジェクト操作
(ObjPlayer_)

ObjPlayer_AddIntersectionCircleA1
ObjPlayer_AddIntersectionCircleA2
ObjPlayer_ClearIntersection


■当たり判定オブジェクト操作
(ObjCol_)

ObjCol_IsIntersected
ObjCol_GetListOfIntersectedEnemyID
ObjCol_GetIntersectedCount



■自機スクリプト専用関数■

■自機専用関数
CreatePlayerShotA1
CallSpell
LoadPlayerShotData
ReloadPlayerShotData
GetSpellManageObject


■スペルオブジェクト操作
(ObjSpell_)

ObjSpell_Create
ObjSpell_Regist
ObjSpell_SetDamage
ObjSpell_SetEraseShot
ObjSpell_SetIntersectionCircle
ObjSpell_SetIntersectionLine



■システムスクリプト専用関数■

■システムスクリプト専用関数
SetPauseScriptPath
SetEndSceneScriptPath
SetReplaySaveSceneScriptPath
GetTransitionRenderTargetName



■弾カスタムスクリプト専用関数■

■弾カスタムスクリプト専用関数
SetShotDeleteEventEnable



■パッケージスクリプト専用関数■

■パッケージスクリプト専用関数
ClosePackage
InitializeStageScene
FinalizeStageScene
StartStageScene
SetStageIndex
SetStageMainScript
SetStagePlayerScript
SetStageReplayFile
GetStageSceneState
GetStageSceneResult
PauseStageScene
TerminateStageScene

GetLoadFreePlayerScriptList
GetFreePlayerScriptCount
GetFreePlayerScriptInfo

LoadReplayList
GetValidReplayIndices
IsValidReplayIndex
GetReplayInfo
SetReplayInfo
SaveReplay