require( "common" ) -- ¸¶·»´À function AdlFH_Marlene( Handle, MapIndex ) cExecCheck "AdlFH_Marlene" return Guarder( Handle, MapIndex ) end -- °æºñº´ function AdlFH_GuardAlber( Handle, MapIndex ) cExecCheck "AdlFH_GuardAlber" return Guarder( Handle, MapIndex ) end -- °æºñº´ function AdlFH_GuardEstelle( Handle, MapIndex ) cExecCheck "AdlFH_GuardEstelle" return Guarder( Handle, MapIndex ) end GuardMemBlock = {} function Guarder( Handle, MapIndex ) cExecCheck "Guarder" local Var = GuardMemBlock[Handle] if cIsObjectDead( Handle ) then -- Á×¾úÀ½ -- Á×Àº °æºñº´ÀÌ ¸¶·»´À ÀÏ °æ¿ì ´ë»çÇÏ°í Á×À½ if InstanceField[MapIndex] ~= nil then local Field = InstanceField[MapIndex] if Field ~= nil then if Handle == Field.Marlene then cMobDialog( MapIndex, DialogInfo.Marlene_Death[1].Portrait, DialogInfo.Marlene_Death[1].FileName, DialogInfo.Marlene_Death[1].Index ) end end end cAIScriptSet( Handle ) -- ½ºÅ©¸³Æ® ¾ø¾Ú GuardMemBlock[Handle] = nil -- ¸Þ¸ð¸®ÇØÁ¦ return ReturnAI.END end if Var == nil then GuardMemBlock[Handle] = {} Var = GuardMemBlock[Handle] Var.Handle = Handle Var.MapIndex = MapIndex Var.StepFunc = GuarderStop end return Var.StepFunc( Var ) end function CheckOnSurvivalOfLoussier( Var ) cExecCheck "CheckOnSurvivalOfLoussier" if Var == nil then return end -- Çʵå Àü¿ªº¯¼ö. ·ç½Ã¿¡ ÇÚµé if InstanceField[Var.MapIndex] == nil then return end local loussier = InstanceField[Var.MapIndex].LoussierHandle -- ¸¶·»´À¿Í °æºñº´Àº ´ë±âÇÏ´Ù°¡ ·ç½Ã¿¡°¡ Á×À¸¸é ¾ø¾Ú if loussier == nil then cAIScriptSet( Handle ) -- ½ºÅ©¸³Æ® ¾ø¾Ú cNPCVanish( Var.Handle ) Var = nil end end function GuarderStop( Var ) cExecCheck "GuarderStop" CheckOnSurvivalOfLoussier( Var ) return ReturnAI.END end function GuarderActivity( Var ) cExecCheck "GuarderActivity" CheckOnSurvivalOfLoussier( Var ) return ReturnAI.CPP end