|
|
|
|
--[[
|
|
|
|
|
<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> - <EFBFBD>ﰡ
|
|
|
|
|
|
|
|
|
|
9Data/Here/World/FineScript.txt <EFBFBD>ʿ<EFBFBD>
|
|
|
|
|
9Data/Hero/Script/BH_Helga.txt <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>
|
|
|
|
|
ReturnAI = {}
|
|
|
|
|
ReturnAI.END = 1 -- Return_AI_END = 1;// -- <EFBFBD><EFBFBD><EFBFBD><EFBFBD> AI<EFBFBD><EFBFBD>ƾ <EFBFBD><EFBFBD>
|
|
|
|
|
ReturnAI.CPP = 2 -- Return_AI_CPP = 2;// -- <EFBFBD><EFBFBD><EFBFBD>Ʒ<EFBFBD> <EFBFBD>Ϻ<EFBFBD> ó<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD> cpp<EFBFBD><EFBFBD> AI<EFBFBD><EFBFBD>ƾ <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
|
|
|
|
--[[ TODO
|
|
|
|
|
<EFBFBD>÷<EFBFBD><EFBFBD>̾ <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ͽ<EFBFBD> Ÿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>Ҿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <EFBFBD>ﰡ<EFBFBD><EFBFBD> DuringReturn2Regen()<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>
|
|
|
|
|
]]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
HelgaIndex = "BH_Helga"
|
|
|
|
|
KarasianIndex = {}
|
|
|
|
|
KarasianIndex[1] = "BH_KaraTemplerAC"
|
|
|
|
|
KarasianIndex[2] = "BH_KaraTemplerMR"
|
|
|
|
|
BijouIndex = "BH_HelgaBall"
|
|
|
|
|
|
|
|
|
|
HelgaReadyAbstate = "StaBH_Helga_Idle01" -- <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>ﰡ<EFBFBD><EFBFBD> <EFBFBD><EFBFBD>ũ<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>ִ<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̻<EFBFBD>
|
|
|
|
|
HelgaBuffByBijou = "StaBH_HelgaAPU01" -- <EFBFBD><EFBFBD><EFBFBD>꿡 <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>ﰡ<EFBFBD><EFBFBD> <EFBFBD>ɸ<EFBFBD><EFBFBD><EFBFBD> <EFBFBD>ߺ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
HelgaBufByKarasian = "StaBH_HelgaDRT01" -- ī<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>
|
|
|
|
|
BijouBuffByKarasian = "StaHelgaBall" -- ī<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>)
|
|
|
|
|
KarasianSelfBuff = "StaBH_KaraTempler_None" -- ī<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>
|
|
|
|
|
|
|
|
|
|
HelgaRaiseSkill = "BH_Helga_Skill_N_None" -- <EFBFBD>ﰡ<EFBFBD><EFBFBD> <EFBFBD>Ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>ִϸ<EFBFBD><EFBFBD>̼<EFBFBD>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
KarasianRegenSec = 900
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-- <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>Ʈ
|
|
|
|
|
BijouLoc = {}
|
|
|
|
|
KarasianLocate = {}
|
|
|
|
|
|
|
|
|
|
-- ù° <EFBFBD><EFBFBD>
|
|
|
|
|
BijouLoc[1] = {}
|
|
|
|
|
BijouLoc[1].X = 2483
|
|
|
|
|
BijouLoc[1].Y = 870
|
|
|
|
|
BijouLoc[1].D = 0
|
|
|
|
|
KarasianLocate[ 1] = {}
|
|
|
|
|
KarasianLocate[ 1].X = 2539
|
|
|
|
|
KarasianLocate[ 1].Y = 852
|
|
|
|
|
KarasianLocate[ 1].D = -89
|
|
|
|
|
KarasianLocate[ 2] = {}
|
|
|
|
|
KarasianLocate[ 2].X = 2442
|
|
|
|
|
KarasianLocate[ 2].Y = 833
|
|
|
|
|
KarasianLocate[ 2].D = 38
|
|
|
|
|
KarasianLocate[ 3] = {}
|
|
|
|
|
KarasianLocate[ 3].X = 2477
|
|
|
|
|
KarasianLocate[ 3].Y = 929
|
|
|
|
|
KarasianLocate[ 3].D = 165
|
|
|
|
|
|
|
|
|
|
-- <EFBFBD><EFBFBD>°<EFBFBD><EFBFBD>
|
|
|
|
|
BijouLoc[2] = {}
|
|
|
|
|
BijouLoc[2].X = 681
|
|
|
|
|
BijouLoc[2].Y = 879
|
|
|
|
|
BijouLoc[2].D = 0
|
|
|
|
|
KarasianLocate[ 4] = {}
|
|
|
|
|
KarasianLocate[ 4].X = 733
|
|
|
|
|
KarasianLocate[ 4].Y = 852
|
|
|
|
|
KarasianLocate[ 4].D = -76
|
|
|
|
|
KarasianLocate[ 5] = {}
|
|
|
|
|
KarasianLocate[ 5].X = 635
|
|
|
|
|
KarasianLocate[ 5].Y = 849
|
|
|
|
|
KarasianLocate[ 5].D = 50
|
|
|
|
|
KarasianLocate[ 6] = {}
|
|
|
|
|
KarasianLocate[ 6].X = 677
|
|
|
|
|
KarasianLocate[ 6].Y = 935
|
|
|
|
|
KarasianLocate[ 6].D = -172
|
|
|
|
|
|
|
|
|
|
-- <EFBFBD><EFBFBD>°<EFBFBD><EFBFBD>
|
|
|
|
|
BijouLoc[3] = {}
|
|
|
|
|
BijouLoc[3].X = 2503
|
|
|
|
|
BijouLoc[3].Y = 2290
|
|
|
|
|
BijouLoc[3].D = 0
|
|
|
|
|
KarasianLocate[ 7] = {}
|
|
|
|
|
KarasianLocate[ 7].X = 2556
|
|
|
|
|
KarasianLocate[ 7].Y = 2268
|
|
|
|
|
KarasianLocate[ 7].D = -79
|
|
|
|
|
KarasianLocate[ 8] = {}
|
|
|
|
|
KarasianLocate[ 8].X = 2457
|
|
|
|
|
KarasianLocate[ 8].Y = 2251
|
|
|
|
|
KarasianLocate[ 8].D = 52
|
|
|
|
|
KarasianLocate[ 9] = {}
|
|
|
|
|
KarasianLocate[ 9].X = 2507
|
|
|
|
|
KarasianLocate[ 9].Y = 2345
|
|
|
|
|
KarasianLocate[ 9].D = -177
|
|
|
|
|
|
|
|
|
|
-- <EFBFBD><EFBFBD>°<EFBFBD><EFBFBD>
|
|
|
|
|
BijouLoc[4] = {}
|
|
|
|
|
BijouLoc[4].X = 670
|
|
|
|
|
BijouLoc[4].Y = 2275
|
|
|
|
|
BijouLoc[4].D = 0
|
|
|
|
|
KarasianLocate[10] = {}
|
|
|
|
|
KarasianLocate[10].X = 725
|
|
|
|
|
KarasianLocate[10].Y = 2247
|
|
|
|
|
KarasianLocate[10].D = -75
|
|
|
|
|
KarasianLocate[11] = {}
|
|
|
|
|
KarasianLocate[11].X = 621
|
|
|
|
|
KarasianLocate[11].Y = 2244
|
|
|
|
|
KarasianLocate[11].D = 41
|
|
|
|
|
KarasianLocate[12] = {}
|
|
|
|
|
KarasianLocate[12].X = 667
|
|
|
|
|
KarasianLocate[12].Y = 2329
|
|
|
|
|
KarasianLocate[12].D = 177
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
----------------------------------------------------------------------
|
|
|
|
|
-- Mantis 8164
|
|
|
|
|
-- <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD>ȯ <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
BH_HelgaBox =
|
|
|
|
|
{
|
|
|
|
|
{ Index = "BH_Helga_X", ItemDropMobIndex = "BH_Helga_O", x = 1605, y = 1638, Radius = 1032 },
|
|
|
|
|
{ Index = "BH_Helga_X", ItemDropMobIndex = "BH_Helga_O_02", x = 1605, y = 1638, Radius = 1032 },
|
|
|
|
|
}
|
|
|
|
|
----------------------------------------------------------------------
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
MemBlock = {}
|
|
|
|
|
HelgaHandle = 0
|
|
|
|
|
|
|
|
|
|
function ViewHandle()
|
|
|
|
|
cExecCheck "ViewHandle"
|
|
|
|
|
local Var = MemBlock[HelgaHandle]
|
|
|
|
|
local x, y = cObjectLocate(Var.Handle)
|
|
|
|
|
cDebugLog("Helga : " .. Var.Handle .. '(' .. x .. ',' .. y .. ')')
|
|
|
|
|
|
|
|
|
|
for b = 1, 4 do
|
|
|
|
|
local BVar = Var.BijouInfo[b]
|
|
|
|
|
local x, y = cObjectLocate(BVar.Handle)
|
|
|
|
|
cDebugLog(" Bijou : " .. BVar.Handle .. '(' .. x .. ',' .. y .. ')')
|
|
|
|
|
for k = 1, 3 do
|
|
|
|
|
local KVar = BVar.KarasianInfo[k]
|
|
|
|
|
local x, y = cObjectLocate(KVar.Handle)
|
|
|
|
|
cDebugLog(" Karasian : " .. KVar.Handle .. '(' .. x .. ',' .. y .. ')')
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
--[[
|
|
|
|
|
function MainRoutine(Handle, MapIndex) -- ī<EFBFBD><EFBFBD><EFBFBD>þȿ<EFBFBD><EFBFBD><EFBFBD> ȣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
cExecCheck "MainRoutine"
|
|
|
|
|
if MobID == Karasian1ID or MobID == Karasian2ID then
|
|
|
|
|
Karasian_Main(Handle, MobID, MapIndex)
|
|
|
|
|
return ReturnAI.END
|
|
|
|
|
elseif MobID == BijouID then -- <EFBFBD><EFBFBD><EFBFBD>꿡<EFBFBD><EFBFBD> ȣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
Bijou_Main(Handle, MobID, MapIndex)
|
|
|
|
|
return ReturnAI.END
|
|
|
|
|
elseif MobID == HelgaID then -- <EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<EFBFBD>ﰡ)<EFBFBD><EFBFBD><EFBFBD><EFBFBD> ȣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
return Helga_Main(Handle, MobID, MapIndex)
|
|
|
|
|
end
|
|
|
|
|
return ReturnAI.END
|
|
|
|
|
end
|
|
|
|
|
]]
|
|
|
|
|
|
|
|
|
|
---------------------------------------------------------------------
|
|
|
|
|
------------------------ Common Part ---------------------------
|
|
|
|
|
---------------------------------------------------------------------
|
|
|
|
|
function Common_Nothing() -- <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
cExecCheck "Common_Nothing"
|
|
|
|
|
return ReturnAI.END -- <EFBFBD><EFBFBD><EFBFBD><EFBFBD> AI<EFBFBD><EFBFBD>ƾ <EFBFBD><EFBFBD>
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
function Common_Wait(Var) -- Var.Wait.Second<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD>ٸ<EFBFBD> <EFBFBD><EFBFBD> StepFunc<EFBFBD><EFBFBD> WaitFunction<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
cExecCheck "Common_Wait"
|
|
|
|
|
-- ----cDebugLog("Common_Wait " .. Var.Me)
|
|
|
|
|
-- <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̹Ƿ<EFBFBD> <EFBFBD>ﰡ, <EFBFBD><EFBFBD><EFBFBD><EFBFBD>, ī<EFBFBD><EFBFBD><EFBFBD>þ<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> Var<EFBFBD><EFBFBD> Wait.Second, Wait.NextFunc, StepFunc<EFBFBD><EFBFBD> <EFBFBD>־<EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD>
|
|
|
|
|
if cCurSec() >= Var.Wait.Second then
|
|
|
|
|
Var.StepFunc = Var.Wait.NextFunc
|
|
|
|
|
end
|
|
|
|
|
return Var.Wait.Rtn
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
function Common_RemoveTreasure(MapIndex)
|
|
|
|
|
cExecCheck "Common_RemoveTreasure"
|
|
|
|
|
cDebugLog "Common_RemoveTreasure"
|
|
|
|
|
|
|
|
|
|
cRegenGroupActiv("BH_Helga", "BH_HelgaBox", 0) -- <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> 1<EFBFBD≯<EFBFBD> activ)
|
|
|
|
|
-- cVanishAll(MapIndex, "BH_Helga_O")
|
|
|
|
|
-- cVanishAll(MapIndex, "BH_Helga_O_02")
|
|
|
|
|
cVanishAll(MapIndex, "BH_Helga_X")
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
---------------------------------------------------------------------
|
|
|
|
|
-------------------------- Helga Part ----------------------------
|
|
|
|
|
---------------------------------------------------------------------
|
|
|
|
|
function BH_Helga(Handle, MapIndex)
|
|
|
|
|
cExecCheck "BH_Helga"
|
|
|
|
|
-- ----cDebugLog "Helga_Main"
|
|
|
|
|
local Var = MemBlock[Handle]
|
|
|
|
|
|
|
|
|
|
if cIsObjectDead(Handle) == nil and Var == nil then
|
|
|
|
|
HelgaHandle = Handle
|
|
|
|
|
if MapIndex ~= "BH_Helga" then -- <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>߸<EFBFBD><EFBFBD>Ǿ<EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
cAIScriptSet(Handle) -- AI<EFBFBD><EFBFBD>ũ<EFBFBD><EFBFBD>Ʈ <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
return ReturnAI.END
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
-- <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> <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><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(cIsObjectDead)<EFBFBD><EFBFBD> Ȯ<EFBFBD><EFBFBD>
|
|
|
|
|
------cDebugLog("Helga Initialize")
|
|
|
|
|
MemBlock[Handle] = {}
|
|
|
|
|
Var = MemBlock[Handle]
|
|
|
|
|
Var.Me = "Helga" -- <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϱ<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
Var.Handle = Handle
|
|
|
|
|
Var.MapIndex = MapIndex
|
|
|
|
|
Var.BuffCharge = 0 -- <EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> 40<EFBFBD><EFBFBD> <EFBFBD>Ǹ<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
Var.TargetLostSec = 0 -- Ÿ<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> Ÿ<EFBFBD><EFBFBD> ã<EFBFBD><EFBFBD> <EFBFBD>ð<EFBFBD>)
|
|
|
|
|
|
|
|
|
|
cSetAbstate(Var.Handle, HelgaReadyAbstate, 1, 2000000000)
|
|
|
|
|
cSetAbstate(Var.Handle, "StaImmortal", 1, 2000000000)
|
|
|
|
|
|
|
|
|
|
Var.StepFunc = Helga_BijouRegen -- <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD>ƾ<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
if cIsObjectDead(Handle) ~= nil
|
|
|
|
|
then
|
|
|
|
|
if Var ~= nil then
|
|
|
|
|
-----cDebugLog "Helga Dead"
|
|
|
|
|
-- <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ΰ<EFBFBD> <EFBFBD><EFBFBD>ȯ - <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
local InvisibleHandle = cMobRegen_Obj("InvisibleMan", Handle)
|
|
|
|
|
if InvisibleHandle ~= nil
|
|
|
|
|
then
|
|
|
|
|
-- <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD>ũ<EFBFBD><EFBFBD>Ʈ <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
cAIScriptSet(InvisibleHandle, Handle)
|
|
|
|
|
|
|
|
|
|
MemBlock[InvisibleHandle] = {}
|
|
|
|
|
MemBlock[InvisibleHandle].Handle = InvisibleHandle
|
|
|
|
|
MemBlock[InvisibleHandle].MapIndex = MapIndex
|
|
|
|
|
MemBlock[InvisibleHandle].StepFunc = Invisible_Init
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
-- <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> <EFBFBD>ٽ<EFBFBD> ó<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
for b = 1, 4
|
|
|
|
|
do
|
|
|
|
|
local BijouInfo = Var.BijouInfo[b]
|
|
|
|
|
if BijouInfo ~= nil
|
|
|
|
|
then
|
|
|
|
|
-- <EFBFBD><EFBFBD><EFBFBD>꿡 <EFBFBD>Ҵ<EFBFBD><EFBFBD><EFBFBD> ī<EFBFBD><EFBFBD><EFBFBD>þ<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
for k = 1, 3
|
|
|
|
|
do
|
|
|
|
|
local KaraInfo = BijouInfo.KarasianInfo[k]
|
|
|
|
|
if KaraInfo ~= nil
|
|
|
|
|
then
|
|
|
|
|
cNPCVanish(KaraInfo.Handle)
|
|
|
|
|
|
|
|
|
|
-- ī<EFBFBD><EFBFBD><EFBFBD>þȿ<EFBFBD> <EFBFBD>Ҵ<EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
-- <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD> Var.BijouInfo.KaraInfo<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>
|
|
|
|
|
MemBlock[KaraInfo.Handle] = nil
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
cNPCVanish(BijouInfo.Handle)
|
|
|
|
|
|
|
|
|
|
-- <EFBFBD><EFBFBD><EFBFBD>꿡 <EFBFBD>Ҵ<EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<EFBFBD>̶<EFBFBD> Bijou.KarasianInfo<EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
|
|
|
|
|
-- <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD> Var.BijouInfo<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>
|
|
|
|
|
MemBlock[BijouInfo.Handle] = nil
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
-- <EFBFBD>ﰡ<EFBFBD><EFBFBD> <EFBFBD>Ҵ<EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<EFBFBD>̶<EFBFBD> Var.BijouInfo<EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
|
|
|
|
|
MemBlock[Var.Handle] = nil
|
|
|
|
|
Var = nil
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
return ReturnAI.END
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
return Var.StepFunc(Var)
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
function Helga_BijouRegen(Var) -- <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŵ
|
|
|
|
|
cExecCheck "Helga_BijouRegen"
|
|
|
|
|
----cDebugLog("Bijou Regen from " .. Var.Handle)
|
|
|
|
|
Var.BijouInfo = {}
|
|
|
|
|
for b = 1, 4 do
|
|
|
|
|
local BijouHandle = cMobRegen_XY(Var.MapIndex, BijouIndex, BijouLoc[b].X, BijouLoc[b].Y, BijouLoc[b].D)
|
|
|
|
|
cDebugLog("Bijou Regen : " .. BijouHandle)
|
|
|
|
|
|
|
|
|
|
local BijouInfo = {}
|
|
|
|
|
MemBlock[BijouHandle] = BijouInfo -- <EFBFBD>ڵ鿡 <EFBFBD><EFBFBD><EFBFBD>߾<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
Var.BijouInfo[b] = BijouInfo
|
|
|
|
|
|
|
|
|
|
BijouInfo.Me = "Bijou" -- <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϱ<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
BijouInfo.Handle = BijouHandle
|
|
|
|
|
BijouInfo.HelgaInfo = Var
|
|
|
|
|
BijouInfo.MapIndex = Var.MapIndex
|
|
|
|
|
BijouInfo.KarasianOffset = b * 3 - 2 -- <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> 1<EFBFBD>̹Ƿ<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
-- <EFBFBD><EFBFBD><EFBFBD><EFBFBD> 1 -> ī<EFBFBD><EFBFBD><EFBFBD>þ<EFBFBD> 1, 2, 3
|
|
|
|
|
-- <EFBFBD><EFBFBD><EFBFBD><EFBFBD> 2 -> ī<EFBFBD><EFBFBD><EFBFBD>þ<EFBFBD> 4, 5, 6
|
|
|
|
|
-- <EFBFBD><EFBFBD><EFBFBD><EFBFBD> 3 -> ī<EFBFBD><EFBFBD><EFBFBD>þ<EFBFBD> 7, 8, 9
|
|
|
|
|
-- <EFBFBD><EFBFBD><EFBFBD><EFBFBD> 4 -> ī<EFBFBD><EFBFBD><EFBFBD>þ<EFBFBD> 10, 11, 12
|
|
|
|
|
cAIScriptSet(BijouHandle, Var.Handle) -- <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> AI<EFBFBD><EFBFBD>ũ<EFBFBD><EFBFBD>Ʈ<EFBFBD><EFBFBD> Var.Handle(<EFBFBD>ﰡ)<EFBFBD><EFBFBD> AI<EFBFBD><EFBFBD>ũ<EFBFBD><EFBFBD>Ʈ<EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
BijouInfo.StepFunc = Bijou_KarasianRegen -- <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> ī<EFBFBD><EFBFBD><EFBFBD>þ<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
Var.StepFunc = Helga_TreasureVanish
|
|
|
|
|
return ReturnAI.END
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
function Helga_TreasureVanish(Var)
|
|
|
|
|
cExecCheck "Helga_TreasureVanish"
|
|
|
|
|
|
|
|
|
|
cDebugLog "Helga_TreasureVanish"
|
|
|
|
|
Common_RemoveTreasure(Var.MapIndex)
|
|
|
|
|
|
|
|
|
|
-- 10<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>...)
|
|
|
|
|
Var.Wait = {}
|
|
|
|
|
Var.Wait.Second = cCurSec() + 10
|
|
|
|
|
Var.Wait.NextFunc = Helga_TreasureVanish
|
|
|
|
|
Var.Wait.Rtn = ReturnAI.END
|
|
|
|
|
Var.StepFunc = Common_Wait
|
|
|
|
|
cDebugLog("Common_Wait - Helga_TreasureVanish")
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-- <EFBFBD>ﰡ <EFBFBD><EFBFBD> <EFBFBD>ٽ<EFBFBD> ä<EFBFBD><EFBFBD>
|
|
|
|
|
local HP, MaxHP = cObjectHP(Var.Handle)
|
|
|
|
|
cSetNPCParam(Var.Handle, "HP", MaxHP)
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
function Helga_Awake(Var) -- ī<EFBFBD><EFBFBD><EFBFBD>þȵ鿡 <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD> ó<EFBFBD><EFBFBD>
|
|
|
|
|
cExecCheck "Helga_Awake"
|
|
|
|
|
----cDebugLog("Awake - Skill Blast") -- <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD>ų <EFBFBD>ߵ<EFBFBD>
|
|
|
|
|
|
|
|
|
|
cResetAbstate(Var.Handle, HelgaReadyAbstate)-- <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>
|
|
|
|
|
cResetAbstate(Var.Handle, "StaImmortal") -- <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>
|
|
|
|
|
------cDebugLog("Awake - Skill Blast") -- <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD>ų <EFBFBD>ߵ<EFBFBD>
|
|
|
|
|
|
|
|
|
|
cNPCSkillUse(Var.Handle, Var.Handle, HelgaRaiseSkill) -- <EFBFBD>Ͼ<EFBFBD><EFBFBD> <EFBFBD>ִϸ<EFBFBD><EFBFBD>̼<EFBFBD>
|
|
|
|
|
|
|
|
|
|
-- <EFBFBD><EFBFBD>ų<EFBFBD>ߵ<EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> 3<EFBFBD>ʰ<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD> Helga_Attack<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>ٲ<EFBFBD>(<EFBFBD>Լ<EFBFBD> Common_Wait <EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
|
|
|
|
|
Var.Wait = {}
|
|
|
|
|
Var.Wait.Second = cCurSec() + 3
|
|
|
|
|
Var.Wait.NextFunc = Helga_PreAttack -- <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϱ<EFBFBD> <EFBFBD><EFBFBD> <EFBFBD>غ<EFBFBD>
|
|
|
|
|
Var.Wait.Rtn = ReturnAI.END
|
|
|
|
|
Var.StepFunc = Common_Wait
|
|
|
|
|
cDebugLog("Common_Wait - Helga_Awake")
|
|
|
|
|
|
|
|
|
|
Var.BuffCharge = 0 -- <EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> Bijou_BuffToHelga()<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>, 40<EFBFBD><EFBFBD> <EFBFBD>Ǹ<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
|
|
|
|
return ReturnAI.END
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
function Helga_PreAttack(Var)
|
|
|
|
|
cExecCheck "Helga_PreAttack"
|
|
|
|
|
Var.TargetLostSec = cCurSec() -- <EFBFBD><EFBFBD><EFBFBD><EFBFBD> Ÿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>Ҿ<EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
Var.StepFunc = Helga_Attack
|
|
|
|
|
----cDebugLog("Helga_PreAttack " .. Var.TargetLostSec)
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
function Helga_Attack(Var)
|
|
|
|
|
cExecCheck "Helga_Attack"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if LastWrite ~= cCurSec() then
|
|
|
|
|
cDebugLog("Helga_Attack " .. Var.TargetLostSec .. " " .. cCurSec())
|
|
|
|
|
LastWrite = cCurSec()
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
-- <EFBFBD>ﰡ<EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
if Var.BuffCharge >= 3600 then
|
|
|
|
|
----cDebugLog("HelgaBuff")
|
|
|
|
|
if cTargetHandle(Var.Handle) ~= nil then
|
|
|
|
|
cMessage(Var.Handle, "BH_Helga_Buff")
|
|
|
|
|
cSetAbstate(Var.Handle, HelgaBuffByBijou, 1, 200000000)
|
|
|
|
|
end
|
|
|
|
|
Var.BuffCharge = Var.BuffCharge - 3600
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
local TargetHandle = cTargetHandle(Var.Handle)
|
|
|
|
|
if TargetHandle ~= nil and cObjectType(TargetHandle) == 2 then -- Ÿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>ְ<EFBFBD> <EFBFBD>÷<EFBFBD><EFBFBD>̾<EFBFBD><EFBFBD><EFBFBD> (SHINEOBJECT_PLAYER == 2)
|
|
|
|
|
Var.TargetLostSec = cCurSec()
|
|
|
|
|
elseif Var.TargetLostSec + 10 < cCurSec() then -- <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 10<EFBFBD><EFBFBD> <EFBFBD><EFBFBD>
|
|
|
|
|
cResetAbstate(Var.Handle, KarasianSelfBuff) -- <EFBFBD><EFBFBD>ȭ<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
cResetAbstate(Var.Handle, HelgaBuffByBijou) -- <EFBFBD><EFBFBD>ȭ<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
Var.BuffCharge = 0 -- <EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> 40<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>
|
|
|
|
|
for b = 1, 4 do
|
|
|
|
|
cNPCVanish(Var.BijouInfo[b].Handle)
|
|
|
|
|
for k = 1, 3 do
|
|
|
|
|
cNPCVanish(Var.BijouInfo[b].KarasianInfo[k].Handle)
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
MemBlock = {} --><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> - ó<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>ٽ<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
return ReturnAI.CPP -- <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>ﰡ<EFBFBD><EFBFBD> CPP<EFBFBD><EFBFBD> AI<EFBFBD><EFBFBD>ƾ <EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<EFBFBD>ﰡ<EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> üũ<EFBFBD><EFBFBD> Helga_Main<EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
|
|
|
|
|
|
|
|
|
|
function Helga_AllBijouStepFunc(Var, func) -- <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> StepFunc<EFBFBD><EFBFBD> <EFBFBD>ϰ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>ٲ<EFBFBD>
|
|
|
|
|
cExecCheck "Helga_AllBijouStepFunc"
|
|
|
|
|
----cDebugLog("Helga_AllBijouStepFunc")
|
|
|
|
|
for b = 1, 4 do
|
|
|
|
|
----cDebugLog(" " .. Var.BijouInfo[b].Me)
|
|
|
|
|
Var.BijouInfo[b].StepFunc = func
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
function Helga_AllKarasianStepFunc(Var, func) -- <EFBFBD><EFBFBD><EFBFBD><EFBFBD> ī<EFBFBD><EFBFBD><EFBFBD>þȵ<EFBFBD><EFBFBD><EFBFBD> StepFunc<EFBFBD><EFBFBD> <EFBFBD>ϰ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>ٲ<EFBFBD>
|
|
|
|
|
cExecCheck "Helga_AllKarasianStepFunc"
|
|
|
|
|
----cDebugLog("Helga_AllKarasianStepFunc")
|
|
|
|
|
for b = 1, 4 do
|
|
|
|
|
for k = 1, 3 do
|
|
|
|
|
----cDebugLog(" " .. Var.BijouInfo[b].KarasianInfo[k].Me)
|
|
|
|
|
Var.BijouInfo[b].KarasianInfo[k].StepFunc = func
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
---------------------------------------------------------------------
|
|
|
|
|
------------------------- Bijou Part ---------------------------
|
|
|
|
|
---------------------------------------------------------------------
|
|
|
|
|
function BH_HelgaBall(Handle, MapIndex)
|
|
|
|
|
cExecCheck "BH_HelgaBall"
|
|
|
|
|
-- ----cDebugLog "Bijou_Main"
|
|
|
|
|
local Var = MemBlock[Handle] -- <EFBFBD>ڵ<EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> ã<EFBFBD><EFBFBD>
|
|
|
|
|
if Var == nil then
|
|
|
|
|
----cDebugLog("Bijou Handle Error:" .. Handle)
|
|
|
|
|
return
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
Var.StepFunc(Var)
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
function Bijou_KarasianRegen(Var) -- ī<EFBFBD><EFBFBD><EFBFBD>þ<EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD> <EFBFBD>Լ<EFBFBD>
|
|
|
|
|
cExecCheck "Bijou_KarasianRegen"
|
|
|
|
|
----cDebugLog "Bijou_KarasianRegen"
|
|
|
|
|
-- <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> <EFBFBD>Լ<EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
|
|
|
|
Bijou_SummonKarasian(Var, Karasian_WaitInvader)
|
|
|
|
|
-- <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> Karasian_WaitInvader<EFBFBD>ൿ<EFBFBD><EFBFBD> <EFBFBD>ϵ<EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
|
|
|
|
Var.StepFunc = Common_Nothing -- <EFBFBD>ƹ<EFBFBD><EFBFBD>͵<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<EFBFBD><EFBFBD><EFBFBD><EFBFBD> ī<EFBFBD><EFBFBD><EFBFBD>þȵ鿡 <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD>)
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
function Bijou_BuffToHelga(Var) -- <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD> ī<EFBFBD><EFBFBD><EFBFBD>þȿ<EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
cExecCheck "Bijou_BuffToHelga"
|
|
|
|
|
--cDebugLog("Bijou[" .. Var.Handle .. "] Buff To Helga")
|
|
|
|
|
|
|
|
|
|
-- <EFBFBD><EFBFBD> ī<EFBFBD><EFBFBD><EFBFBD>þȵ<EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD><EFBFBD><EFBFBD> Ȯ<EFBFBD><EFBFBD>
|
|
|
|
|
local karanum = 0
|
|
|
|
|
for k = 1, 3 do
|
|
|
|
|
if cIsObjectDead(Var.KarasianInfo[k].Handle) == nil then -- <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> karanum <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
karanum = karanum + 1
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
if karanum > 0 then -- <EFBFBD>ϳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
local HelgaInfo = Var.HelgaInfo -- <EFBFBD><EFBFBD><EFBFBD>ΰ<EFBFBD><EFBFBD><EFBFBD> <EFBFBD>ﰡ<EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD>̺<EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD>
|
|
|
|
|
HelgaInfo.BuffCharge = HelgaInfo.BuffCharge + 1 -- <EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> 40<EFBFBD><EFBFBD> <EFBFBD>Ǹ<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<EFBFBD><EFBFBD><EFBFBD><EFBFBD> 4<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> 10<EFBFBD><EFBFBD>)
|
|
|
|
|
--cDebugLog("Bijou_BuffToHelga : Buffing " .. HelgaInfo.BuffCharge)
|
|
|
|
|
|
|
|
|
|
-- 1<EFBFBD>ʿ<EFBFBD> <EFBFBD>ѹ<EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϱ<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
Var.Wait = {}
|
|
|
|
|
Var.Wait.Second = cCurSec() + 1
|
|
|
|
|
Var.Wait.NextFunc = Bijou_BuffToHelga
|
|
|
|
|
Var.Wait.Rtn = ReturnAI.END
|
|
|
|
|
|
|
|
|
|
Var.StepFunc = Common_Wait
|
|
|
|
|
--cDebugLog("Common_Wait - Bijou_BuffToHelga")
|
|
|
|
|
else -- 60<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>ٽ<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŵ
|
|
|
|
|
--cDebugLog("Bijou_BuffToHelga : Regen " .. Var.Handle)
|
|
|
|
|
-- 60<EFBFBD><EFBFBD> <EFBFBD><EFBFBD> ī<EFBFBD><EFBFBD><EFBFBD>þȵ<EFBFBD><EFBFBD><EFBFBD> <EFBFBD>ٽ<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ű<EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
Var.Wait = {}
|
|
|
|
|
Var.Wait.Second = cCurSec() + KarasianRegenSec
|
|
|
|
|
Var.Wait.NextFunc = Bijou_KarasianReRegen
|
|
|
|
|
Var.Wait.Rtn = ReturnAI.END
|
|
|
|
|
|
|
|
|
|
Var.StepFunc = Common_Wait
|
|
|
|
|
--cDebugLog("Common_Wait - Bijou_BuffToHelga")
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
function Bijou_KarasianReRegen(Var)
|
|
|
|
|
cExecCheck "Bijou_KarasianReRegen"
|
|
|
|
|
--cDebugLog("Bijou_KarasianReRegen " .. Var.Handle)
|
|
|
|
|
Bijou_SummonKarasian(Var, Karasian_BuffToBijou)
|
|
|
|
|
-- <EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD>꿡 <EFBFBD>Ҵ<EFBFBD><EFBFBD><EFBFBD> ī<EFBFBD><EFBFBD><EFBFBD>þȵ<EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ű<EFBFBD><EFBFBD> Karasian_BuffToBijouȰ<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>ϵ<EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
Var.StepFunc = Bijou_WaitBuffing -- ī<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><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
function Bijou_WaitBuffing(Var)
|
|
|
|
|
cExecCheck "Bijou_WaitBuffing"
|
|
|
|
|
--cDebugLog("Bijou_WaitBuffing " .. Var.Handle)
|
|
|
|
|
if cAbstateRestTime(Var.Handle, BijouBuffByKarasian) ~= nil then -- <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ð<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>, nil<EFBFBD≯<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̻<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
Var.StepFunc = Bijou_BuffToHelga
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
|
|
|
|
|
|
|
|
|
|
function Bijou_SummonKarasian(Var, Func)
|
|
|
|
|
cExecCheck "Bijou_SummonKarasian"
|
|
|
|
|
----cDebugLog("Karasian Regen from " .. Var.Handle)
|
|
|
|
|
|
|
|
|
|
-- ī<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 Var.KarasianInfo ~= nil then
|
|
|
|
|
for k = 1, 3 do
|
|
|
|
|
local OldKarahnd = Var.KarasianInfo[k].Handle
|
|
|
|
|
MemBlock[OldKarahnd] = nil -- <EFBFBD><EFBFBD> Var.KarasianInfo<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>
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
Var.KarasianInfo = {} -- <EFBFBD><EFBFBD><EFBFBD>⼭ <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
|
|
|
|
local type = cRandomInt(1, 2)
|
|
|
|
|
for k = 1, 3 do
|
|
|
|
|
local slot = Var.KarasianOffset + k - 1
|
|
|
|
|
local locate = KarasianLocate[slot]
|
|
|
|
|
local KHnd = cMobRegen_XY(Var.MapIndex, KarasianIndex[type], locate.X, locate.Y, locate.D)
|
|
|
|
|
----cDebugLog("Karasian Regen : " .. KHnd)
|
|
|
|
|
|
|
|
|
|
local KInfo = {}
|
|
|
|
|
MemBlock[KHnd] = KInfo
|
|
|
|
|
Var.KarasianInfo[k] = KInfo
|
|
|
|
|
|
|
|
|
|
KInfo.Me = "Karasian"
|
|
|
|
|
KInfo.Handle = KHnd
|
|
|
|
|
KInfo.BijouInfo = Var
|
|
|
|
|
KInfo.StepFunc = Func
|
|
|
|
|
|
|
|
|
|
cAIScriptSet(KHnd, Var.Handle) -- ī<EFBFBD><EFBFBD><EFBFBD>þ<EFBFBD><EFBFBD><EFBFBD> AI<EFBFBD><EFBFBD>ũ<EFBFBD><EFBFBD>Ʈ<EFBFBD><EFBFBD> Var.Handle(<EFBFBD><EFBFBD><EFBFBD><EFBFBD>)<EFBFBD><EFBFBD> AI<EFBFBD><EFBFBD>ũ<EFBFBD><EFBFBD>Ʈ<EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
cSetAbstate(KHnd, KarasianSelfBuff, 1, 2000000000)
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
---------------------------------------------------------------------
|
|
|
|
|
----------------------- Karasian Part --------------------------
|
|
|
|
|
---------------------------------------------------------------------
|
|
|
|
|
function BH_KaraTemplerAC(Handle, MapIndex)
|
|
|
|
|
return Karasian_Main(Handle, MapIndex)
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
function BH_KaraTemplerMR(Handle, MapIndex)
|
|
|
|
|
return Karasian_Main(Handle, MapIndex)
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
function Karasian_Main(Handle, MapIndex)
|
|
|
|
|
cExecCheck "Karasian_Main"
|
|
|
|
|
local Var = MemBlock[Handle]
|
|
|
|
|
if Var == nil then
|
|
|
|
|
----cDebugLog("Karasian Handle Error:" .. Handle)
|
|
|
|
|
return
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
Var.StepFunc(Var)
|
|
|
|
|
|
|
|
|
|
return ReturnAI.END
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
function Karasian_WaitInvader(Var)
|
|
|
|
|
cExecCheck "Karasian_WaitInvader"
|
|
|
|
|
------cDebugLog("Karasian_WaitInvader")
|
|
|
|
|
-- <EFBFBD>ڽ<EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD>ظ<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
if cIsObjectDead(Var.Handle) ~= nil or cTargetHandle(Var.Handle) ~= nil then
|
|
|
|
|
------cDebugLog("Warn")
|
|
|
|
|
Var.StepFunc = Karasian_Warning1 -- <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>ø<EFBFBD>
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
function Karasian_Warning1(Var)
|
|
|
|
|
cExecCheck "Karasian_Warning1"
|
|
|
|
|
----cDebugLog("Karasian_Warning1")
|
|
|
|
|
if cIsObjectDead(Var.Handle) ~= nil then
|
|
|
|
|
Karasian_BattleStart(Var)
|
|
|
|
|
else
|
|
|
|
|
Helga_AllKarasianStepFunc(Var.BijouInfo.HelgaInfo, Common_Nothing)
|
|
|
|
|
|
|
|
|
|
cNPCChat(Var.Handle, "BH_Helga_Alert")
|
|
|
|
|
|
|
|
|
|
Var.Wait = {}
|
|
|
|
|
Var.Wait.Second = cCurSec() + 2
|
|
|
|
|
Var.Wait.NextFunc = Karasian_Warning2
|
|
|
|
|
Var.Wait.Rtn = ReturnAI.END
|
|
|
|
|
|
|
|
|
|
Var.StepFunc = Common_Wait
|
|
|
|
|
cDebugLog("Common_Wait - Karasian_Warning1")
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
function Karasian_Warning2(Var)
|
|
|
|
|
cExecCheck "Karasian_Warning2"
|
|
|
|
|
------cDebugLog("Karasian_Warning2")
|
|
|
|
|
cNPCChat(Var.Handle, "BH_Helga_Wake")
|
|
|
|
|
Karasian_BattleStart(Var)
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
function Karasian_BuffToBijou(Var)
|
|
|
|
|
cExecCheck "Karasian_BuffToBijou"
|
|
|
|
|
Var.Wait = {}
|
|
|
|
|
Var.Wait.Second = cCurSec() + 1
|
|
|
|
|
Var.Wait.NextFunc = Karasian_BuffToBijou2
|
|
|
|
|
Var.Wait.Rtn = ReturnAI.END
|
|
|
|
|
|
|
|
|
|
Var.StepFunc = Common_Wait
|
|
|
|
|
--cDebugLog("Common_Wait - Karasian_BuffToBijou")
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
function Karasian_BuffToBijou2(Var)
|
|
|
|
|
cExecCheck "Karasian_BuffToBijou2"
|
|
|
|
|
|
|
|
|
|
if cIsObjectDead(Var.Handle) == nil then
|
|
|
|
|
cSetAbstate(Var.BijouInfo.Handle, BijouBuffByKarasian, 1, 1500)
|
|
|
|
|
cSetAbstate(Var.BijouInfo.HelgaInfo.Handle, HelgaBufByKarasian, 1, 1500)
|
|
|
|
|
----cDebugLog("Karasian[" .. Var.Handle .. "] Buff Bijou[" .. Var.BijouInfo.Handle .. "] at " .. cCurSec())
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
Var.StepFunc = Karasian_BuffToBijou
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
|
|
|
|
|
|
|
|
|
|
function Karasian_BattleStart(Var)
|
|
|
|
|
cExecCheck "Karasian_BattleStart"
|
|
|
|
|
----cDebugLog "Karasian_BattleStart"
|
|
|
|
|
Var.BijouInfo.HelgaInfo.StepFunc = Helga_Awake
|
|
|
|
|
----cDebugLog "Karasian_BattleStart 1"
|
|
|
|
|
Helga_AllKarasianStepFunc(Var.BijouInfo.HelgaInfo, Karasian_BuffToBijou)
|
|
|
|
|
----cDebugLog "Karasian_BattleStart 2"
|
|
|
|
|
Helga_AllBijouStepFunc(Var.BijouInfo.HelgaInfo, Bijou_WaitBuffing)
|
|
|
|
|
----cDebugLog "Karasian_BattleStart 3"
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-------------------------------------------------------------------------
|
|
|
|
|
----------------------- InvisibleMan Part --------------------------
|
|
|
|
|
-------------------------------------------------------------------------
|
|
|
|
|
-- <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʈ
|
|
|
|
|
|
|
|
|
|
function InvisibleMan(Handle, MapIndex)
|
|
|
|
|
cExecCheck "InvisibleMan"
|
|
|
|
|
local Var = MemBlock[Handle]
|
|
|
|
|
if Var == nil then
|
|
|
|
|
----cDebugLog("InvisibleMan Handle Error:" .. Handle)
|
|
|
|
|
return
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
Var.StepFunc(Var)
|
|
|
|
|
|
|
|
|
|
return ReturnAI.END
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
function Invisible_Init(Var)
|
|
|
|
|
cExecCheck "Invisible_Init"
|
|
|
|
|
cDebugLog "Invisible_Init"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
----------------------------------------------------------------------
|
|
|
|
|
-- Mantis 8164
|
|
|
|
|
-- <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>
|
|
|
|
|
for i = 1, #BH_HelgaBox
|
|
|
|
|
do
|
|
|
|
|
local BoxHandle = cMobRegen_Circle( Var["MapIndex"], BH_HelgaBox[i]["Index"], BH_HelgaBox[i]["x"], BH_HelgaBox[i]["y"], BH_HelgaBox[i]["Radius"] )
|
|
|
|
|
if BoxHandle ~= nil
|
|
|
|
|
then
|
|
|
|
|
cSetItemDropMobID( BoxHandle, BH_HelgaBox[i]["ItemDropMobIndex"] )
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
----------------------------------------------------------------------
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
cGroupRegen("BH_Helga", "BH_HelgaBox") -- <EFBFBD><EFBFBD><EFBFBD>ڰ<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
|
|
|
|
Var.Wait = {}
|
|
|
|
|
Var.Wait.Second = cCurSec() + 57600
|
|
|
|
|
Var.Wait.NextFunc = Invisible_AllVanish
|
|
|
|
|
Var.Wait.Rtn = ReturnAI.END
|
|
|
|
|
Var.StepFunc = Common_Wait
|
|
|
|
|
cDebugLog("Common_Wait - Invisible_Init")
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
function Invisible_AllVanish(Var)
|
|
|
|
|
cExecCheck "Invisible_AllVanish"
|
|
|
|
|
cDebugLog "Invisible_AllVanish"
|
|
|
|
|
|
|
|
|
|
Common_RemoveTreasure(Var.MapIndex)
|
|
|
|
|
cNPCVanish(Var.Handle)
|
|
|
|
|
|
|
|
|
|
Var.StepFunc = Common_Nothing
|
|
|
|
|
end
|