i typed the other dude who talked like you but he knows nothing about programming
Works like a charm.
--°Ô½ºÆ®µé¿¡°Ô hostarg¸®¼ÂÀ» ¿äûÇÑ´Ù.( È£½ºÆ®´Â Á÷Á¢ ½ºÅ©¸³Æ®¿¡¼* Init() È£ÃâÇØÁà¾ß ÇÔ! )
function LuaInitHostArg( ArcadeSystem, HostController )
HostController:InitHostArgCommand();
end
--¾ÆÄÉÀÌµå ¸ðµå°¡ ½ÇÇàµÉ¶§ ÃÑ ½ºÅ×ÀÌÁö¸¦ Á¤ÇÑ´Ù.
function LuaTotalStage( ArcadeSystem, HostController, u8TotalStage )
InputArg = ArcadeSystem:GetInputArg();
InputArg:PushLU32( "TOTAL_STAGE", u8TotalStage );
HostController:RequestStageClear();
end
--½ºÅ×ÀÌÁö¸¦ Ŭ¸®¾îÇßÀ» ¶§ È£Ãâ
function LuaRequestStageClear( ArcadeSystem, HostController )
HostController:RequestStageClear();
end
--½ºÅ×ÀÌÁö¸¦ ½ÇÆÐÇßÀ» ¶§ È£Ãâ
function LuaRequestStageFailed( ArcadeSystem, HostController )
HostController:RequestStageClear();
end
--½ºÅ×ÀÌÁö Á¤º¸¼³Á¤
function LuaSetStageInfo( ArcadeSystem, HostController, u32StageID, u32StageTime )
InputArg = ArcadeSystem:GetInputArg();
InputArg:PushLU32( "STAGE_ID", u32StageID );
InputArg:PushLU32( "STAGE_TIME", u32StageTime );
HostController:SetStageInfo( InputArg );
end
--host, guestÀÇ µ¥ÀÌÅ͸¦ µ¿±âÈ*½ÃŰ´Â ÇÔ¼ö, ¹æÀå ÀÌÀüÀ» ´ëºñÇØ¼* µ¿±âÈ*½ÃÄÑÁØ´Ù.
function LuaSyncHostData( ArcadeSystem, HostController, strDataSetName )
InputArg = ArcadeSystem:GetInputArg();
InputArg:PushLStr( "SYNC_HOST_DATA", strDataSetName );
HostController:SyncHostData( InputArg );
end
--AI¾×ÅÍÀÇ Å³ ÁøÇàÀ²À» º¸¿©ÁØ´Ù!
function LuaKillProgressReg( ArcadeSystem, HostController, szAIActorName, u32TotalCount )
InputArg = ArcadeSystem:GetInputArg();
InputArg:PushLStr( "KILLPROG_REG_TYPE", szAIActorName );
InputArg:PushLU32( "KILLPROG_TOT", u32TotalCount );
HostController:KillProgressReg( InputArg );
end
--AI¾×ÅÍÀÇ Å³ ÁøÇàÀ²À» ¾ø¾Ø´Ù.
function LuaKillProgressUnreg( ArcadeSystem, HostController, szAIActorName )
InputArg = ArcadeSystem:GetInputArg();
InputArg:PushLStr( "KILLPROG_UNREG_TYPE", szAIActorName );
HostController:KillProgressUnreg( InputArg );
end
--AI ų ÁøÇàÀ²À» ¸ðµÎ ¾ø¾Ø´Ù.
function LuaKillProgressUnregAll( ArcadeSystem, HostController )
InputArg = ArcadeSystem:GetInputArg();
HostController:KillProgressUnregAll( InputArg );
end
--¹«ºñ¸¦ Ç÷¹ÀÌÇØÁÖ´ÂÇÔ¼ö
function LuaMoviePlay( ArcadeSystem, HostController, u32MovieID )
InputArg = ArcadeSystem:GetInputArg();
InputArg:PushLU32( "MOVIESYSTEM_ID",u32MovieID );
HostController:PlayMovie( InputArg );
end
--¹Ì¼Ç ¾ÆÀ̵𸦠¼³Á¤ÇØÁÖ´Â ÇÔ¼ö
function LuaChangeMissionID( ArcadeSystem, HostController, u32MissionID )
InputArg = ArcadeSystem:GetInputArg();
InputArg:PushLU32( "MISSION_ID", u32MissionID );
HostController:ChangeMissionID( InputArg );
end
--¹Ì¼Ç ÀÎÆ÷¸¦ º¸¿©ÁÖ´Â ÇÔ¼ö
function LuaViewMissionInfo( ArcadeSystem, HostController, u32MissionID, fRed, fGreen, fBlue, fAlpha, u32LifeTime )
InputArg = ArcadeSystem:GetInputArg();
InputArg:PushLU32( "MISSIONINFO_ID", u32MissionID );
InputArg:PushLFloat( "MISSIONINFO_R", fRed );
InputArg:PushLFloat( "MISSIONINFO_G", fGreen );
InputArg:PushLFloat( "MISSIONINFO_B", fBlue );
InputArg:PushLFloat( "MISSIONINFO_A", fAlpha );
InputArg:PushLU32( "MISSIONINFO_LIFETIME", u32LifeTime );
HostController:ViewMissionInfo( InputArg );
end
--bgmÀ» Ç÷¹ÀÌÇØÁÖ´Â ÇÔ¼ö
function LuaPlayBGM( ArcadeSystem, HostController, szBGM )
InputArg = ArcadeSystem:GetInputArg();
InputArg:PushLStr( "BGM_FILE", szBGM );
HostController:PlayBGM( InputArg );
end
--bgmÀ» Á¤Áö½ÃŰ´Â ÇÔ¼ö
function LuaStopBGM( ArcadeSystem, HostController )
InputArg = ArcadeSystem:GetInputArg();
HostController:StopBGM( InputArg );
end
--È¿°úÀ½À» Ç÷¹ÀÌÇØÁÖ´Â ÇÔ¼ö
function LuaPlaySFX( ArcadeSystem, HostController, szSFX )
InputArg = ArcadeSystem:GetInputArg();
InputArg:PushLStr( "SFX_FILE", szSFX );
HostController:PlaySFX( InputArg );
end
--Æ÷±× ¼Ó¼ºÀ» º¯°æÇØÁÖ´Â ÇÔ¼ö
function LuaChangeFogProperty( ArcadeSystem, HostController, fFogMinDist, fFogMaxDist, fFogR, fFogG, fFogB )
InputArg = ArcadeSystem:GetInputArg();
InputArg:PushLFloat( "FOG_MINDIST", fFogMinDist );
InputArg:PushLFloat( "FOG_MAXDIST", fFogMaxDist );
InputArg:PushLFloat( "FOG_R", fFogR );
InputArg:PushLFloat( "FOG_G", fFogG );
InputArg:PushLFloat( "FOG_B", fFogB );
HostController:ChangeFogProperty( InputArg );
end
--Æ÷±× ¼Ó¼ºÀ» ¿ø·¡´ë·Î º¹¿øÇØÁÖ´Â ÇÔ¼ö
function LuaRestoreFogProperty( ArcadeSystem, HostController )
InputArg = ArcadeSystem:GetInputArg();
HostController:RestoreFogProperty( InputArg );
end
--½ºÄ«À̹ڽº¸¦ ¼û±æÁö¸¦ ¼³Á¤ÇØÁÖ´Â ÇÔ¼ö.
function LuaShowSkyBox( ArcadeSystem, HostController, bShowSkyBox )
InputArg = ArcadeSystem:GetInputArg();
InputArg:PushLBool( "SHOW", bShowSkyBox );
HostController:ShowSkyBox( InputArg );
end
--ÁöÁ¤ÇÑ À§Ä¡¿¡ ¾ÆÀÌÅÛÀ» ½ºÆù½ÃŲ´Ù.
function LuaItemSpawn( ArcadeSystem, HostController, u32ItemID, bRandomShow, fPosX, fPosY, fPosZ, fDirX, fDirY, fDirZ )
InputArg = ArcadeSystem:GetInputArg();
InputArg:PushLU32( "ITEM_ID", u32ItemID );
InputArg:PushLBool( "RANDOM_SHOW", bRandomShow );
InputArg:PushLFloat( "POS_X", fPosX );
InputArg:PushLFloat( "POS_Y", fPosY );
InputArg:PushLFloat( "POS_Z", fPosZ );
InputArg:PushLFloat( "DIR_X", fDirX );
InputArg:PushLFloat( "DIR_Y", fDirY );
InputArg:PushLFloat( "DIR_Z", fDirZ );
HostController:SpawnItem( InputArg );
end
--ƯÁ¤ ³ëµå¿¡ ¾ÆÀÌÅÛÀ» ½ºÆù½ÃŲ´Ù.
function LuaItemSpawnByNode( ArcadeSystem, HostController, u32ItemID, bRandomShow, strSpawnNode )
InputArg = ArcadeSystem:GetInputArg();
InputArg:PushLU32( "ITEM_ID", u32ItemID );
InputArg:PushLBool( "RANDOM_SHOW", bRandomShow );
InputArg:PushLStr( "SPAWN_NODE", strSpawnNode );
HostController:SpawnItembyNode( InputArg );
end
--AI¾×ÅÍÀÇÀ§Ä¡¿¡ ¾ÆÀÌÅÛÀ» ½ºÆù½ÃŲ´Ù.
function LuaItemSpawnByAIActor( ArcadeSystem, HostController, u32ItemID, bRandomShow, pAIActor )
InputArg = ArcadeSystem:GetInputArg();
InputArg:PushLU32( "ITEM_ID", u32ItemID );
InputArg:PushLBool( "RANDOM_SHOW", bRandomShow );
InputArg:PushLVoid( "AI_ACTOR", pAIActor );
HostController:SpawnItemByAIActor( InputArg );
end
--½ºÆùµÈ ¾ÆÀÌÅÛµéÀ» ¸ðµÎ Áö¿î´Ù.
function LuaRemoveAllItem( ArcadeSystem, HostController )
HostController:RemoveAllItem();
end
--ƯÁ¤³ëµå¿¡ player¸¦ ½ºÆù½ÃŲ´Ù.
function LuaPlayerSpawnByNode( ArcadeSystem, HostController, strSpawnNode )
InputArg = ArcadeSystem:GetInputArg();
InputArg:PushLStr( "SPAWN_NODE", strSpawnNode );
HostController:PlayerSpawnByNode( InputArg );
end
--ƯÁ¤ÁÂÇ¥¿¡ ai¸¦ ¼ÒȯÇÑ´Ù.
function LuaSpawnAIActor( ArcadeSystem, HostController, strAITypeName, strActorTypeName, fPosX, fPosY, fPosZ, fDirX, fDirY, fDirZ )
InputArg = ArcadeSystem:GetInputArg();
InputArg:PushLStr( "AI_TYPE", strAITypeName );
InputArg:PushLStr( "ACTOR_TYPE", strActorTypeName );
InputArg:PushLFloat( "POS_X", fPosX );
InputArg:PushLFloat( "POS_Y", fPosY );
InputArg:PushLFloat( "POS_Z", fPosZ );
InputArg:PushLFloat( "DIR_X", fDirX );
InputArg:PushLFloat( "DIR_Y", fDirY );
InputArg:PushLFloat( "DIR_Z", fDirZ );
HostController:SpawnAIActor( InputArg );
end
--ƯÁ¤³ëµå¿¡ ai¸¦ ¼ÒȯÇÑ´Ù.
function LuaSpawnAIActorByNode( ArcadeSystem, HostController, strAITypeName, strActorTypeName, strSpawnNode )
InputArg = ArcadeSystem:GetInputArg();
InputArg:PushLStr( "AI_TYPE", strAITypeName );
InputArg:PushLStr( "ACTOR_TYPE", strActorTypeName );
InputArg:PushLStr( "SPAWN_NODE", strSpawnNode );
HostController:SpawnAIActorByNode( InputArg );
end
--ƯÁ¤¾×ÅÍÀÇ À§Ä¡¿¡ ai¸¦ ¼ÒȯÇÑ´Ù.
function LuaSpawnAIActorByActorPos( ArcadeSystem, HostController, strAITypeName, strActorTypeName, pActor )
InputArg = ArcadeSystem:GetInputArg();
InputArg:PushLStr( "AI_TYPE", strAITypeName );
InputArg:PushLStr( "ACTOR_TYPE", strActorTypeName );
InputArg:PushLVoid( "TARGET_ACTOR", pActor );
HostController:SpawnAIActorByActorPos( InputArg );
end
--ÇØ´ç ŸÀÔÀÇ ¸ðµç ai¸¦ ¾ø¿£´Ù.
function LuaRemoveAllAIActorByType( ArcadeSystem, HostController, strAITypeName )
InputArg = ArcadeSystem:GetInputArg();
InputArg:PushLStr( "AI_TYPE", strAITypeName );
HostController:RemoveAllAIActorByType( InputArg );
end
--¸ðµç ai¸¦ ¾ø¿£´Ù.
function LuaRemoveAllAIActor( ArcadeSystem, HostController )
HostController:RemoveAllAIActor();
end
--ÁöÁ¤ÇÑ ¾×Å͸¦ °ø°Ý
function Command_Attack( pAIActor, pTargetActor, szAttackType, bRotateToTarget, fAimOffset )
Arg = pAIActor:GetArg();
Arg:SetLStr( "COMMAND", "ATTACK" );
Arg:SetActor( "TARGET_ACTOR", pTargetActor );
Arg:SetLStr( "ATTACK_TYPE", szAttackType );
Arg:SetLBool( "ROTATE_TO_TARGET", bRotateToTarget );
Arg:SetLFloat( "AIM_OFFSET", fAimOffset );
pAIActor:Command();
end
--ÁöÁ¤ÇÑ À§Ä¡·Î À̵¿Çϸé¼* °ø°Ý
function Command_MovingAttack_ToPos( pAIActor, u32CommandTime, pTargetActor, szAttackType, bRotateToTarget, fTargetPosX, fTargetPosY, fTargetPosZ, fOffsetPosX, fOffsetPosZ, fAimOffset )
Arg = pAIActor:GetArg();
Arg:SetLStr( "COMMAND", "MOVINGATTACK_POS" );
Arg:SetLU32( "COMMAND_TIME", u32CommandTime );
Arg:SetActor( "TARGET_ACTOR", pTargetActor );
Arg:SetLStr( "ATTACK_TYPE", szAttackType );
Arg:SetLBool( "ROTATE_TO_TARGET", bRotateToTarget );
Arg:SetLFloat( "TARGETPOS_X", fTargetPosX );
Arg:SetLFloat( "TARGETPOS_Y", fTargetPosY );
Arg:SetLFloat( "TARGETPOS_Z", fTargetPosZ );
Arg:SetLFloat( "COMMON_VALUE_1", fOffsetPosX );
Arg:SetLFloat( "COMMON_VALUE_2", fOffsetPosZ );
Arg:SetLFloat( "AIM_OFFSET", fAimOffset );
pAIActor:Command();
end
--ÁöÁ¤ÇÑ ³ëµåÀ§Ä¡·Î À̵¿Çϸé¼* °ø°Ý
function Command_MovingAttack_ToNode( pAIActor, u32CommandTime, pTargetActor, szAttackType, bRotateToTarget, szNode, fOffsetPosX, fOffsetPosZ, fAimOffset )
Arg = pAIActor:GetArg();
Arg:SetLStr( "COMMAND", "MOVINGATTACK_NODE" );
Arg:SetLU32( "COMMAND_TIME", u32CommandTime );
Arg:SetActor( "TARGET_ACTOR", pTargetActor );
Arg:SetLStr( "ATTACK_TYPE", szAttackType );
Arg:SetLBool( "ROTATE_TO_TARGET", bRotateToTarget );
Arg:SetLStr( "NODE_NAME", szNode );
Arg:SetLFloat( "COMMON_VALUE_1", fOffsetPosX );
Arg:SetLFloat( "COMMON_VALUE_2", fOffsetPosZ );
Arg:SetLFloat( "AIM_OFFSET", fAimOffset );
pAIActor:Command();
end
--ÁöÁ¤ÇÑ ¾×Å͸¦ ÇâÇØ À̵¿Çϸé¼* °ø°Ý
function Command_MovingAttack_ToActor( pAIActor, u32CommandTime, pTargetActor, szAttackType, bRotateToTarget, fOffsetPosX, fOffsetPosZ, fAimOffset )
Arg = pAIActor:GetArg();
Arg:SetLStr( "COMMAND", "MOVINGATTACK_ACTOR" );
Arg:SetLU32( "COMMAND_TIME", u32CommandTime );
Arg:SetActor( "TARGET_ACTOR", pTargetActor );
Arg:SetLStr( "ATTACK_TYPE", szAttackType );
Arg:SetLBool( "ROTATE_TO_TARGET", bRotateToTarget );
Arg:SetLFloat( "COMMON_VALUE_1", fOffsetPosX );
Arg:SetLFloat( "COMMON_VALUE_2", fOffsetPosZ );
Arg:SetLFloat( "AIM_OFFSET", fAimOffset );
pAIActor:Command();
end
--ÁöÁ¤ÇÑ ¾×ÅÍ ¹Ý´ë¸¦ ÇâÇØ À̵¿Çϸé¼* °ø°Ý
function Command_BackMovingAttack_ToActor( pAIActor, u32CommandTime, pTargetActor, szAttackType, bRotateToTarget, fMoveDist, fOffsetPosX, fOffsetPosZ, fAimOffset )
Arg = pAIActor:GetArg();
Arg:SetLStr( "COMMAND", "BACKMOVINGATTACK_ACTOR" );
Arg:SetLU32( "COMMAND_TIME", u32CommandTime );
Arg:SetActor( "TARGET_ACTOR", pTargetActor );
Arg:SetLStr( "ATTACK_TYPE", szAttackType );
Arg:SetLBool( "ROTATE_TO_TARGET", bRotateToTarget );
Arg:SetLFloat( "COMMON_VALUE_3", fMoveDist );
Arg:SetLFloat( "COMMON_VALUE_1", fOffsetPosX );
Arg:SetLFloat( "COMMON_VALUE_2", fOffsetPosZ );
Arg:SetLFloat( "AIM_OFFSET", fAimOffset );
pAIActor:Command();
end
--ÁöÁ¤ÇÑ À§Ä¡·Î À̵¿
function Command_Move_ToPos( pAIActor, u32CommandTime, fTargetPosX, fTargetPosY, fTargetPosZ, fOffsetPosX, fOffsetPosZ )
Arg = pAIActor:GetArg();
Arg:SetLStr( "COMMAND", "MOVE_POS" );
Arg:SetLU32( "COMMAND_TIME", u32CommandTime );
Arg:SetLFloat( "TARGETPOS_X", fTargetPosX );
Arg:SetLFloat( "TARGETPOS_Y", fTargetPosY );
Arg:SetLFloat( "TARGETPOS_Z", fTargetPosZ );
Arg:SetLFloat( "COMMON_VALUE_1", fOffsetPosX );
Arg:SetLFloat( "COMMON_VALUE_2", fOffsetPosZ );
pAIActor:Command();
end
--ÁöÁ¤ÇÑ ³ëµåÀ§Ä¡·Î À̵¿
function Command_Move_ToNode( pAIActor, u32CommandTime, szNode, fOffsetPosX, fOffsetPosZ )
Arg = pAIActor:GetArg();
Arg:SetLStr( "COMMAND", "MOVE_NODE" );
Arg:SetLU32( "COMMAND_TIME", u32CommandTime );
Arg:SetLStr( "NODE_NAME", szNode );
Arg:SetLFloat( "COMMON_VALUE_1", fOffsetPosX );
Arg:SetLFloat( "COMMON_VALUE_2", fOffsetPosZ );
pAIActor:Command();
end
--°¡±î¿î °ø°ÝÀ§Ä¡·Î À̵¿
function Command_Move_ToAttackArea( pAIActor, u32CommandTime,fOffsetPosX, fOffsetPosZ )
Arg = pAIActor:GetArg();
Arg:SetLStr( "COMMAND", "MOVE_ATTACKAREA" );
Arg:SetLU32( "COMMAND_TIME", u32CommandTime );
Arg:SetLFloat( "COMMON_VALUE_1", fOffsetPosX );
Arg:SetLFloat( "COMMON_VALUE_2", fOffsetPosZ );
pAIActor:Command();
end
--°¡±î¿î ¼öºñÀ§Ä¡·Î À̵¿
function Command_Move_ToDefenseArea( pAIActor, u32CommandTime,fOffsetPosX, fOffsetPosZ )
Arg = pAIActor:GetArg();
Arg:SetLStr( "COMMAND", "MOVE_DEFENSEAREA" );
Arg:SetLU32( "COMMAND_TIME", u32CommandTime );
Arg:SetLFloat( "COMMON_VALUE_1", fOffsetPosX );
Arg:SetLFloat( "COMMON_VALUE_2", fOffsetPosZ );
pAIActor:Command();
end
--ÁöÁ¤ÇÑ ¾×Å͸¦ ÇâÇØ À̵¿
function Command_Move_ToActor( pAIActor, u32CommandTime, pTargetActor, fOffsetPosX, fOffsetPosZ )
Arg = pAIActor:GetArg();
Arg:SetLStr( "COMMAND", "MOVE_ACTOR" );
Arg:SetLU32( "COMMAND_TIME", u32CommandTime );
Arg:SetActor( "TARGET_ACTOR", pTargetActor );
Arg:SetLFloat( "COMMON_VALUE_1", fOffsetPosX );
Arg:SetLFloat( "COMMON_VALUE_2", fOffsetPosZ );
pAIActor:Command();
end
--ÁöÁ¤ÇÑ ¾×ÅÍ ¹Ý´ë¸¦ ÇâÇØ À̵¿
function Command_BackMove_ToActor( pAIActor, u32CommandTime, pTargetActor, fMoveDist, fOffsetPosX, fOffsetPosZ )
Arg = pAIActor:GetArg();
Arg:SetLStr( "COMMAND", "BACKMOVE_ACTOR" );
Arg:SetLU32( "COMMAND_TIME", u32CommandTime );
Arg:SetActor( "TARGET_ACTOR", pTargetActor );
Arg:SetLFloat( "COMMON_VALUE_3", fMoveDist );
Arg:SetLFloat( "COMMON_VALUE_1", fOffsetPosX );
Arg:SetLFloat( "COMMON_VALUE_2", fOffsetPosZ );
pAIActor:Command();
end
--ÁöÁ¤ÇÑ ³ëµå·Î ¼ø°£ À̵¿
function Command_Teleport_ToNode( pAIActor, szNode )
Arg = pAIActor:GetArg();
Arg:SetLStr( "COMMAND", "TELEPORT_NODE" );
Arg:SetLStr( "NODE_NAME", szNode );
pAIActor:Command();
end
--ÇöÀç À§Ä¡¿¡¼* ´ë±â
function Command_Stop( pAIActor )
Arg = pAIActor:GetArg();
Arg:SetLStr( "COMMAND", "STOP" );
pAIActor:Command();
end
--Á×À½
function Command_Death( pAIActor )
Arg = pAIActor:GetArg();
Arg:SetLStr( "COMMAND", "DEATH" );
pAIActor:Command();
end
--ȸÇÇ
function Command_Dodge( pAIActor, bLeft )
fDodgeDirValue = 1;
if bLeft == false then
fDodgeDirValue = -1;
end
Arg = pAIActor:GetArg();
Arg:SetLStr( "COMMAND", "DODGE" );
Arg:SetLFloat( "COMMON_VALUE_1", fDodgeDirValue );
pAIActor:Command();
end
--ÁöÁ¤ÇÑ ¾×Å͸¦ Á¤¸éÀ¸·Î ¹Ù¶óº¸°í ȸÇÇ
function Command_Dodge_ToActor( pAIActor, pTargetActor, bLeft )
fDodgeDirValue = 1;
if bLeft == false then
fDodgeDirValue = -1;
end
Arg = pAIActor:GetArg();
Arg:SetLStr( "COMMAND", "DODGE_ACTOR" );
Arg:SetActor( "TARGET_ACTOR", pTargetActor );
Arg:SetLFloat( "COMMON_VALUE_1", fDodgeDirValue );
pAIActor:Command();
end
--ÁöÁ¤ÇÑ ¾×ÅÍ¿¡°Ô ¹ÙÀε彺ųÀ» »ç¿ë
function Command_SkillBind( pAIActor, pTargetActor, fAimOffset )
Arg = pAIActor:GetArg();
Arg:SetLStr( "COMMAND", "SKILL_BIND" );
Arg:SetActor( "TARGET_ACTOR", pTargetActor );
Arg:SetLFloat( "AIM_OFFSET", fAimOffset );
pAIActor:Command();
end
--Åõ¸íÈ*½ºÅ³ ¿Â¿ÀÇÁ
function Command_SkillInvisible( pAIActor, bOnOff )
fOnOffValue = 1;
if bOnOff == false then
fOnOffValue = -1;
end
Arg = pAIActor:GetArg();
Arg:SetLStr( "COMMAND", "SKILL_INVISIBLE" );
Arg:SetLFloat( "COMMON_VALUE_1", fOnOffValue );
pAIActor:Command();
end
--AIÀÇ HP¸¦ º¯°æ
function Command_ChangeHP( pAIActor, fHPRate )
Arg = pAIActor:GetArg();
Arg:SetLStr( "COMMAND", "CHANGE_HP" );
Arg:SetLFloat( "COMMON_VALUE_1", fHPRate );
pAIActor:Command();
end