You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
SigFiesta/LuaScript/ID/AdlFH/AdlFH_Guarder.lua

130 lines
1.9 KiB

require( "common" )
-- <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
function AdlFH_Marlene( Handle, MapIndex )
cExecCheck "AdlFH_Marlene"
return Guarder( Handle, MapIndex )
end
-- <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
function AdlFH_GuardAlber( Handle, MapIndex )
cExecCheck "AdlFH_GuardAlber"
return Guarder( Handle, MapIndex )
end
-- <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
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 -- <EFBFBD>׾<EFBFBD><EFBFBD><EFBFBD>
-- <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϰ<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
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 ) -- <EFBFBD><EFBFBD>ũ<EFBFBD><EFBFBD>Ʈ <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
GuardMemBlock[Handle] = nil -- <EFBFBD>޸<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
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
-- <EFBFBD>ʵ<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>. <EFBFBD><EFBFBD><EFBFBD>ÿ<EFBFBD> <EFBFBD>ڵ<EFBFBD>
if InstanceField[Var.MapIndex] == nil then
return
end
local loussier = InstanceField[Var.MapIndex].LoussierHandle
-- <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϴٰ<EFBFBD> <EFBFBD><EFBFBD><EFBFBD>ÿ<EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
if loussier == nil then
cAIScriptSet( Handle ) -- <EFBFBD><EFBFBD>ũ<EFBFBD><EFBFBD>Ʈ <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
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