|
|
|
|
require( "common" )
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
------------------------------------------------------------------------------------------------------
|
|
|
|
|
--
|
|
|
|
|
-- DATA
|
|
|
|
|
--
|
|
|
|
|
------------------------------------------------------------------------------------------------------
|
|
|
|
|
EVENT_INFO = -- [<EFBFBD>̺<EFBFBD>Ʈ <EFBFBD><EFBFBD><EFBFBD><EFBFBD>]
|
|
|
|
|
{
|
|
|
|
|
MapIndex = "E_Olympic", -- <EFBFBD><EFBFBD> <EFBFBD>ε<EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
QuestNPC = "E_Ski_QuestNPC", -- <EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʈ NPC
|
|
|
|
|
NPCDirect = 180,
|
|
|
|
|
|
|
|
|
|
MaxRanking = 20, -- <EFBFBD><EFBFBD>ŷ <EFBFBD>ִ밪
|
|
|
|
|
MaxPlayer = 200, -- <EFBFBD>÷<EFBFBD><EFBFBD>̾<EFBFBD> <EFBFBD>ִ밪
|
|
|
|
|
|
|
|
|
|
SeasonProcressSec = 3000, -- <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>ð<EFBFBD>
|
|
|
|
|
SeasonRestSec = 600, -- <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>ð<EFBFBD>
|
|
|
|
|
|
|
|
|
|
GameResultLogType = 2026, -- <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD>ӷα<EFBFBD> Ÿ<EFBFBD><EFBFBD>
|
|
|
|
|
SeasonbRewardLogType = 2027, -- <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD>ӷα<EFBFBD> Ÿ<EFBFBD><EFBFBD>
|
|
|
|
|
|
|
|
|
|
GameResultType = -- <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> Ÿ<EFBFBD><EFBFBD>
|
|
|
|
|
{
|
|
|
|
|
GRT_SeasonEnd = 1, -- <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> : <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
GRT_StanbyTimeout = 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>
|
|
|
|
|
GRT_RunTimeout = 3, -- <EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>ð<EFBFBD><EFBFBD>ȿ<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> : <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
GRT_Goal = 4, -- <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
GoalNPCLink = -- <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> NPC <EFBFBD><EFBFBD>ũ <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
{
|
|
|
|
|
MapIndex = "E_Olympic",
|
|
|
|
|
x = 5463,
|
|
|
|
|
y = 22711,
|
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
TimerDeleteSec = 20, -- Ÿ<EFBFBD≯<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>ð<EFBFBD>
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
GAME_INFO = -- [<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>]
|
|
|
|
|
{
|
|
|
|
|
StanbyTimeout = 60, -- <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>ð<EFBFBD>
|
|
|
|
|
RunTimeout = 300, -- <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>ð<EFBFBD>
|
|
|
|
|
PointTimeout = 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> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʈ <EFBFBD><EFBFBD><EFBFBD><EFBFBD> )
|
|
|
|
|
|
|
|
|
|
PointIncPerSec = 2, -- <EFBFBD>ʴ<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʈ
|
|
|
|
|
PointDecPerSec = 2, -- <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʈ
|
|
|
|
|
|
|
|
|
|
StartLineArea = "Area_Start", -- <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD≯<EFBFBD>
|
|
|
|
|
GoalLineArea = "Area_Finish", -- <EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD≯<EFBFBD>
|
|
|
|
|
|
|
|
|
|
StartEffectMsg = EFFECT_MSG_TYPE["EMT_START_OLYMPIC"], -- <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʈ <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
GoalEffectMsg = EFFECT_MSG_TYPE["EMT_GOAL_OLYMPIC"], -- <EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʈ <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
FailEffectMsg = EFFECT_MSG_TYPE["EMT_FAIL"], -- <EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<EFBFBD>ǰ<EFBFBD>) <EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʈ <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-- ij<EFBFBD><EFBFBD><EFBFBD><EFBFBD> Ÿ<EFBFBD><EFBFBD>Ʋ <EFBFBD><EFBFBD>ȣ<EFBFBD><EFBFBD>, <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʈ<EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɼ<EFBFBD> <EFBFBD>ִ<EFBFBD> <EFBFBD>κ<EFBFBD><EFBFBD>Դϴ<EFBFBD>.
|
|
|
|
|
RankingReward = -- <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
{
|
|
|
|
|
{ TitleType = 117, ElementNo = 0 }, -- <EFBFBD><EFBFBD>
|
|
|
|
|
{ TitleType = 118, ElementNo = 0 }, -- <EFBFBD><EFBFBD>
|
|
|
|
|
{ TitleType = 119, ElementNo = 0 }, -- <EFBFBD><EFBFBD>
|
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
GoalReward =
|
|
|
|
|
{
|
|
|
|
|
AbsIndex = "StaE_Ski_Reward",
|
|
|
|
|
AbsStr = 1,
|
|
|
|
|
AbsKeepTime = 3600000,
|
|
|
|
|
},
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
MSG_INFO = -- [<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>]
|
|
|
|
|
{
|
|
|
|
|
GoalMsg_Point = "E_Olympic_A01", -- %s<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD> %sPoint<EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ͽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD>.
|
|
|
|
|
GoalMsg_RankingFail1 = "E_Olympic_A02", -- <EFBFBD>ƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, 20<EFBFBD><EFBFBD> <EFBFBD>ǿ<EFBFBD> <EFBFBD>Ի<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD>Ͽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD>.
|
|
|
|
|
GoalMsg_RankingFail2 = "E_Olympic_A08", -- <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>ʽ<EFBFBD><EFBFBD>ϴ<EFBFBD>.
|
|
|
|
|
GoalMsg_RankingSuc = "E_Olympic_A03", -- <EFBFBD><EFBFBD><EFBFBD>ϵ帳<EFBFBD>ϴ<EFBFBD>. %d<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>Ի<EFBFBD><EFBFBD>ϼ̽<EFBFBD><EFBFBD>ϴ<EFBFBD>.
|
|
|
|
|
|
|
|
|
|
Season_Start = "E_Olympic_A04", -- ī<EFBFBD><EFBFBD> <EFBFBD><EFBFBD>Ű<EFBFBD><EFBFBD>ȸ <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>մϴ<EFBFBD>.
|
|
|
|
|
Season_End = "E_Olympic_A05", -- ī<EFBFBD><EFBFBD> <EFBFBD><EFBFBD>Ű<EFBFBD><EFBFBD>ȸ <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>մϴ<EFBFBD>.
|
|
|
|
|
Season_Ranking = "E_Olympic_A06", -- <EFBFBD>̹<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> 1<EFBFBD><EFBFBD><EFBFBD><EFBFBD> %s<EFBFBD><EFBFBD>, 2<EFBFBD><EFBFBD><EFBFBD><EFBFBD> %s<EFBFBD><EFBFBD>, 3<EFBFBD><EFBFBD><EFBFBD><EFBFBD> %s<EFBFBD><EFBFBD> <EFBFBD>Դϴ<EFBFBD>.
|
|
|
|
|
Season_RankingEmpty = "E_Olympic_A07", -- <EFBFBD>̹<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 1,2,3<EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڰ<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>ʽ<EFBFBD><EFBFBD>ϴ<EFBFBD>.
|
|
|
|
|
|
|
|
|
|
Error_SeasonEnd = "E_Olympic_F01", -- <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ǿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD>. <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>ٽ<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>ּ<EFBFBD><EFBFBD><EFBFBD>.
|
|
|
|
|
Error_SeasonRest = "E_Olympic_F02", -- <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Դϴ<EFBFBD>. <EFBFBD><EFBFBD><EFBFBD>ο<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD>۵Ǹ<EFBFBD> <EFBFBD>ٽ<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>ּ<EFBFBD><EFBFBD><EFBFBD>.
|
|
|
|
|
Error_JoinPlayer = "E_Olympic_F03", -- <EFBFBD>̹<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD>ܿ<EFBFBD> <EFBFBD><EFBFBD><EFBFBD>ϵǼ̽<EFBFBD><EFBFBD>ϴ<EFBFBD>. <EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>ּ<EFBFBD><EFBFBD><EFBFBD>.
|
|
|
|
|
Error_StanbyTimeout = "E_Olympic_F07", --
|
|
|
|
|
Error_RunTimeout = "E_Olympic_F07", -- <EFBFBD><EFBFBD><EFBFBD>ѽð<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> Finish<EFBFBD><EFBFBD><EFBFBD>ο<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD>ϼ̳<EFBFBD>. <EFBFBD>ƽ<EFBFBD><EFBFBD>Ե<EFBFBD> <EFBFBD>ǰ<EFBFBD><EFBFBD>Դϴ<EFBFBD>.
|
|
|
|
|
|
|
|
|
|
NPCChat = -- NPC ä<EFBFBD><EFBFBD>
|
|
|
|
|
{
|
|
|
|
|
{ Index = "E_Olympic_MC01", Interval = 20, }, -- ī<EFBFBD><EFBFBD> <EFBFBD><EFBFBD>Ű<EFBFBD><EFBFBD>ȸ <EFBFBD><EFBFBD><EFBFBD><EFBFBD> 1<EFBFBD><EFBFBD><EFBFBD><EFBFBD> %s<EFBFBD><EFBFBD> <EFBFBD>Դϴ<EFBFBD>.
|
|
|
|
|
{ Index = "E_Olympic_MC02", Interval = 20, }, -- <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!! <EFBFBD> 1<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>~
|
|
|
|
|
{ Index = "E_Olympic_MC03", Interval = 20, }, -- <EFBFBD><EFBFBD>~ <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>~ <EFBFBD><EFBFBD>Ű<EFBFBD><EFBFBD>ȸ<EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ͻð<EFBFBD> Ǫ<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD>ǰ<EFBFBD><EFBFBD> <EFBFBD>ư<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>~
|
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
Game_Guide = -- <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD>û <EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD>µǴ<EFBFBD> <EFBFBD><EFBFBD><EFBFBD>̵<EFBFBD>
|
|
|
|
|
{
|
|
|
|
|
{ Index = "E_Olympic_F04", Interval = 10 }, -- <EFBFBD><EFBFBD><EFBFBD>ѽð<EFBFBD> 5<EFBFBD>оȿ<EFBFBD> Finish<EFBFBD><EFBFBD><EFBFBD>ο<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϼž<EFBFBD> <EFBFBD>մϴ<EFBFBD>. <EFBFBD><EFBFBD><EFBFBD>ѽð<EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ּ<EFBFBD><EFBFBD><EFBFBD>.
|
|
|
|
|
{ Index = "E_Olympic_F05", Interval = 10 }, -- Finish <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>ð<EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƚ<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>մϴ<EFBFBD>.
|
|
|
|
|
{ Index = "E_Olympic_F06", Interval = 10 }, -- <EFBFBD><EFBFBD><EFBFBD>ֹ<EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD>ӽð<EFBFBD> 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><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ͻô°<EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>մϴ<EFBFBD>.
|
|
|
|
|
},
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
FLAG_DOOR_INFO = -- [<EFBFBD>]
|
|
|
|
|
{
|
|
|
|
|
Type = -- <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
{
|
|
|
|
|
{ Index = "E_SkiFlag_Red", Point = 50, AbsIndex = "StaE_Ski_SpeedUp", AbsStr = 1, AbsKeepTime = 3000, SkillIndex = "E_SkiFlag_Red_Skill01_N" },
|
|
|
|
|
{ Index = "E_SkiFlag_Blue", Point = 25, AbsIndex = "StaE_Ski_SpeedUp", AbsStr = 1, AbsKeepTime = 3000, SkillIndex = "E_SkiFlag_Red_Skill01_N" },
|
|
|
|
|
{ Index = "E_SkiFlag_Gold", Point = 10, AbsIndex = "StaE_Ski_SpeedUp", AbsStr = 1, AbsKeepTime = 3000, SkillIndex = "E_SkiFlag_Red_Skill01_N" },
|
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
Location = -- <EFBFBD><EFBFBD>ġ <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
{
|
|
|
|
|
{ { x = 3782, y = 21659 }, { x = 4082, y = 21659 }, { x = 3582, y = 21659 }, }, -- 1
|
|
|
|
|
{ { x = 3604, y = 20531 }, { x = 3604, y = 20531 }, { x = 3604, y = 20531 }, }, -- 2
|
|
|
|
|
{ { x = 4320, y = 19844 }, { x = 3920, y = 19844 }, { x = 4520, y = 19844 }, }, -- 3
|
|
|
|
|
{ { x = 3591, y = 19028 }, { x = 3291, y = 19028 }, { x = 3791, y = 19028 }, }, -- 4
|
|
|
|
|
{ { x = 4558, y = 18491 }, { x = 4708, y = 18491 }, { x = 4358, y = 18491 }, }, -- 5
|
|
|
|
|
{ { x = 3829, y = 17885 }, { x = 3629, y = 17885 }, { x = 4000, y = 17885 }, }, -- 6
|
|
|
|
|
{ { x = 4464, y = 17585 }, { x = 4264, y = 17585 }, { x = 4664, y = 17585 }, }, -- 7
|
|
|
|
|
{ { x = 3864, y = 16568 }, { x = 3164, y = 16468 }, { x = 3664, y = 16368 }, }, -- 8
|
|
|
|
|
{ { x = 3530, y = 15708 }, { x = 4730, y = 15708 }, { x = 4030, y = 15708 }, }, -- 9
|
|
|
|
|
{ { x = 4322, y = 15240 }, { x = 4122, y = 15240 }, { x = 4522, y = 15240 }, }, -- 10
|
|
|
|
|
|
|
|
|
|
{ { x = 3773, y = 14346 }, { x = 3973, y = 14346 }, { x = 4173, y = 14346 }, }, -- 11
|
|
|
|
|
{ { x = 4164, y = 13314 }, { x = 3964, y = 13314 }, }, -- 12
|
|
|
|
|
{ { x = 3704, y = 12899 }, { x = 4004, y = 12899 }, { x = 3505, y = 12899 }, }, -- 13
|
|
|
|
|
{ { x = 3845, y = 12255 }, { x = 3545, y = 12255 }, { x = 3245, y = 12255 }, }, -- 14
|
|
|
|
|
{ { x = 3139, y = 11496 }, { x = 3339, y = 11496 }, { x = 3539, y = 11496 }, }, -- 15
|
|
|
|
|
{ { x = 3827, y = 10808 }, { x = 3527, y = 10808 }, { x = 3227, y = 10808 }, }, -- 16
|
|
|
|
|
{ { x = 3287, y = 9869 }, { x = 3287, y = 9869 }, { x = 3287, y = 9869 }, }, -- 17
|
|
|
|
|
{ { x = 3733, y = 9043 }, { x = 3433, y = 9043 }, { x = 3133, y = 9043 }, }, -- 18
|
|
|
|
|
{ { x = 3397, y = 8387 }, { x = 2997, y = 8387 }, { x = 3697, y = 8387 }, }, -- 19
|
|
|
|
|
{ { x = 4142, y = 7860 }, { x = 3742, y = 7860 }, { x = 4342, y = 7860 }, }, -- 20
|
|
|
|
|
|
|
|
|
|
{ { x = 4049, y = 6588 }, { x = 4349, y = 6588 }, { x = 3849, y = 6588 }, }, -- 21
|
|
|
|
|
{ { x = 5082, y = 5945 }, { x = 4482, y = 6045 }, { x = 4882, y = 5945 }, }, -- 22
|
|
|
|
|
{ { x = 5119, y = 5023 }, { x = 5319, y = 5023 }, { x = 5519, y = 5023 }, }, -- 23
|
|
|
|
|
{ { x = 6049, y = 4353 }, { x = 6349, y = 4353 }, { x = 5749, y = 4353 }, }, -- 24
|
|
|
|
|
{ { x = 6826, y = 3842 }, { x = 6651, y = 4035 }, { x = 6670, y = 3628 }, }, -- 25
|
|
|
|
|
{ { x = 7405, y = 3445 }, { x = 7583, y = 3621 }, { x = 7405, y = 3145 }, }, -- 26
|
|
|
|
|
{ { x = 8078, y = 3749 }, { x = 8078, y = 3549 }, { x = 7878, y = 3749 }, }, -- 27
|
|
|
|
|
{ { x = 8619, y = 3684 }, { x = 8619, y = 3884 }, { x = 8619, y = 4184 }, }, -- 28
|
|
|
|
|
{ { x = 9417, y = 3928 }, { x = 9417, y = 4584 }, { x = 9619, y = 4384 }, }, -- 29
|
|
|
|
|
{ { x = 10363, y = 4339 }, { x = 10172, y = 4487 }, { x = 10183, y = 4741 }, }, -- 30
|
|
|
|
|
|
|
|
|
|
{ { x = 10928, y = 4593 }, { x = 10786, y = 4829 }, { x = 10599, y = 4992 }, }, -- 31
|
|
|
|
|
{ { x = 11449, y = 5122 }, { x = 11449, y = 5422 }, { x = 11148, y = 5665 }, }, -- 32
|
|
|
|
|
{ { x = 2894, y = 7960 }, { x = 2594, y = 7960 }, { x = 2194, y = 7960 }, }, -- 33
|
|
|
|
|
{ { x = 2309, y = 7386 }, { x = 2099, y = 7276 }, { x = 1907, y = 7197 }, }, -- 34
|
|
|
|
|
{ { x = 2007, y = 6727 }, { x = 1847, y = 6689 }, { x = 1745, y = 6509 }, }, -- 35
|
|
|
|
|
{ { x = 1974, y = 6029 }, { x = 2094, y = 6106 }, { x = 1864, y = 5929 }, }, -- 36
|
|
|
|
|
{ { x = 2238, y = 5317 }, { x = 2038, y = 5317 }, { x = 2438, y = 5317 }, }, -- 37
|
|
|
|
|
{ { x = 2198, y = 4508 }, { x = 2333, y = 4553 }, { x = 2061, y = 4326 }, }, -- 38
|
|
|
|
|
{ { x = 2500, y = 3923 }, { x = 2814, y = 3820 }, { x = 2563, y = 3261 }, }, -- 39
|
|
|
|
|
{ { x = 3276, y = 2777 }, { x = 3518, y = 2810 }, { x = 3294, y = 2382 }, }, -- 40
|
|
|
|
|
|
|
|
|
|
{ { x = 4215, y = 2400 }, { x = 4086, y = 2155 }, { x = 4360, y = 2518 }, }, -- 41
|
|
|
|
|
{ { x = 4805, y = 1883 }, { x = 4988, y = 2126 }, { x = 5151, y = 2284 }, }, -- 42
|
|
|
|
|
{ { x = 5817, y = 1694 }, { x = 5776, y = 1998 }, { x = 5996, y = 1532 }, }, -- 43
|
|
|
|
|
{ { x = 6713, y = 1892 }, { x = 6922, y = 1876 }, { x = 6662, y = 2151 }, }, -- 44
|
|
|
|
|
{ { x = 7233, y = 2166 }, { x = 7046, y = 2546 }, { x = 7630, y = 2240 }, }, -- 45
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-- <EFBFBD><EFBFBD><EFBFBD>ֹ<EFBFBD> : <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
SNOWMAN_INFO =
|
|
|
|
|
{
|
|
|
|
|
-- 1
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 4002, y = 16760, Range = 700, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 4002, y = 16760, Range = 700, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 4002, y = 16760, Range = 700, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 4002, y = 16760, Range = 700, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 4002, y = 16760, Range = 700, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 4002, y = 16760, Range = 700, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 4002, y = 16760, Range = 700, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 4002, y = 16760, Range = 700, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 4002, y = 16760, Range = 700, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 4002, y = 16760, Range = 700, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 4002, y = 16760, Range = 700, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 4002, y = 16760, Range = 700, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 4002, y = 16760, Range = 700, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 4002, y = 16760, Range = 700, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 4002, y = 16760, Range = 700, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 4002, y = 16760, Range = 700, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-- 2
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 4252, y = 14499, Range = 700, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 4252, y = 14499, Range = 700, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 4252, y = 14499, Range = 700, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 4252, y = 14499, Range = 700, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 4252, y = 14499, Range = 700, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 4252, y = 14499, Range = 700, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 4252, y = 14499, Range = 700, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 4252, y = 14499, Range = 700, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 4252, y = 14499, Range = 700, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 4252, y = 14499, Range = 700, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 4252, y = 14499, Range = 700, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 4252, y = 14499, Range = 700, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 4252, y = 14499, Range = 700, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 4252, y = 14499, Range = 700, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 4252, y = 14499, Range = 700, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
|
|
|
|
|
-- 3
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 3352, y = 8311, Range = 500, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 3352, y = 8311, Range = 500, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 3352, y = 8311, Range = 500, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 3352, y = 8311, Range = 500, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 3352, y = 8311, Range = 500, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 3352, y = 8311, Range = 500, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 3352, y = 8311, Range = 500, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 3352, y = 8311, Range = 500, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 3352, y = 8311, Range = 500, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 3352, y = 8311, Range = 500, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 3352, y = 8311, Range = 500, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 3352, y = 8311, Range = 500, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 3352, y = 8311, Range = 500, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 3352, y = 8311, Range = 500, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 3352, y = 8311, Range = 500, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 3352, y = 8311, Range = 500, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
|
|
|
|
|
-- 4
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 7526, y = 3079, Range = 1000, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 7526, y = 3079, Range = 1000, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 7526, y = 3079, Range = 1000, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 7526, y = 3079, Range = 1000, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 7526, y = 3079, Range = 1000, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 7526, y = 3079, Range = 1000, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 7526, y = 3079, Range = 1000, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 7526, y = 3079, Range = 1000, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 7526, y = 3079, Range = 1000, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 7526, y = 3079, Range = 1000, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 7526, y = 3079, Range = 1000, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 7526, y = 3079, Range = 1000, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 7526, y = 3079, Range = 1000, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
|
|
|
|
|
-- 5
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 4843, y = 5813, Range = 500, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 4843, y = 5813, Range = 500, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 4843, y = 5813, Range = 500, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 4843, y = 5813, Range = 500, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 4843, y = 5813, Range = 500, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 4843, y = 5813, Range = 500, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 4843, y = 5813, Range = 500, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 4843, y = 5813, Range = 500, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 4843, y = 5813, Range = 500, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 4843, y = 5813, Range = 500, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 4843, y = 5813, Range = 500, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 4843, y = 5813, Range = 500, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
|
|
|
|
|
-- 6
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 3247, y = 2931, Range = 500, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 3247, y = 2931, Range = 500, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 3247, y = 2931, Range = 500, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 3247, y = 2931, Range = 500, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 3247, y = 2931, Range = 500, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 3247, y = 2931, Range = 500, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 3247, y = 2931, Range = 500, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 3247, y = 2931, Range = 500, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 3247, y = 2931, Range = 500, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 3247, y = 2931, Range = 500, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 3247, y = 2931, Range = 500, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 3247, y = 2931, Range = 500, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
|
|
|
|
|
-- 7
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 10177, y = 4518, Range = 500, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 10177, y = 4518, Range = 500, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 10177, y = 4518, Range = 500, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 10177, y = 4518, Range = 500, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 10177, y = 4518, Range = 500, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 10177, y = 4518, Range = 500, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 10177, y = 4518, Range = 500, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 10177, y = 4518, Range = 500, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 10177, y = 4518, Range = 500, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 10177, y = 4518, Range = 500, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 10177, y = 4518, Range = 500, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 10177, y = 4518, Range = 500, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 10177, y = 4518, Range = 500, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
{ Index = "E_Ski_Snowman", Point = 5, x = 10177, y = 4518, Range = 500, LifeTime_Min = 1, LifeTime_Max = 3, RegenInterval = 1 },
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
-- <EFBFBD><EFBFBD><EFBFBD>ֹ<EFBFBD> : <EFBFBD>ϴ<EFBFBD>
|
|
|
|
|
HONEYING_INFO =
|
|
|
|
|
{
|
|
|
|
|
Index = "E_Ski_IDHoneying",
|
|
|
|
|
MoveCheckInterval = 0.1,
|
|
|
|
|
GoalDistInterval = 10,
|
|
|
|
|
AbsIndex = "StaE_Ski_Stun",
|
|
|
|
|
AbsStr = 1,
|
|
|
|
|
AbsKeepTime = 3000,
|
|
|
|
|
SkillIndex = "E_SkiFlag_Red_Skill01_N",
|
|
|
|
|
|
|
|
|
|
-- 1
|
|
|
|
|
{ Speed = 2000, { x = 1931, y = 4980 }, { x = 2502, y = 5738 } },
|
|
|
|
|
{ Speed = 2000, { x = 1875, y = 5412 }, { x = 2406, y = 4954 } },
|
|
|
|
|
|
|
|
|
|
-- 2
|
|
|
|
|
{ Speed = 2000, { x = 4320, y = 2671 }, { x = 4150, y = 1846 } },
|
|
|
|
|
{ Speed = 2000, { x = 4231, y = 1766 }, { x = 4516, y = 2530 } },
|
|
|
|
|
|
|
|
|
|
-- 3
|
|
|
|
|
{ Speed = 2000, { x = 9257, y = 4697 }, { x = 9075, y = 3774 } },
|
|
|
|
|
{ Speed = 3000, { x = 9472, y = 4026 }, { x = 8728, y = 4510 } },
|
|
|
|
|
|
|
|
|
|
-- 4
|
|
|
|
|
{ Speed = 3000, { x = 4025, y = 6381 }, { x = 4494, y = 6500 }, { x = 4171, y = 6137 }, { x = 4416, y = 6870 } },
|
|
|
|
|
|
|
|
|
|
-- 5
|
|
|
|
|
{ Speed = 2000, { x = 3425, y = 12405 }, { x = 3924, y = 12177 } },
|
|
|
|
|
{ Speed = 2000, { x = 3457, y = 12818 }, { x = 4161, y = 12742 } },
|
|
|
|
|
|
|
|
|
|
-- 6
|
|
|
|
|
{ Speed = 2000, { x = 3458, y = 12773 }, { x = 3925, y = 12187 } },
|
|
|
|
|
{ Speed = 2000, { x = 3388, y = 12428 }, { x = 4140, y = 12778 } },
|
|
|
|
|
|
|
|
|
|
-- 7
|
|
|
|
|
{ Speed = 2000, { x = 2897, y = 10075 }, { x = 4055, y = 10314 } },
|
|
|
|
|
{ Speed = 2000, { x = 3036, y = 10831 }, { x = 3917, y = 10550 } },
|
|
|
|
|
|
|
|
|
|
-- 8
|
|
|
|
|
{ Speed = 2000, { x = 8418, y = 3376 }, { x = 8229, y = 4197 } },
|
|
|
|
|
{ Speed = 2000, { x = 8099, y = 3970 }, { x = 8945, y = 3701 } },
|
|
|
|
|
|
|
|
|
|
-- 9
|
|
|
|
|
{ Speed = 3000, { x = 7994, y = 4004 }, { x = 4055, y = 3017 } },
|
|
|
|
|
{ Speed = 3000, { x = 4055, y = 3017 }, { x = 7075, y = 3100 } },
|
|
|
|
|
{ Speed = 3000, { x = 7075, y = 3100 }, { x = 8105, y = 2860 } },
|
|
|
|
|
|
|
|
|
|
-- 10
|
|
|
|
|
{ Speed = 2000, { x = 5084, y = 6205 }, { x = 4756, y = 5125 } },
|
|
|
|
|
{ Speed = 2000, { x = 5474, y = 5833 }, { x = 4370, y = 5635 } },
|
|
|
|
|
|
|
|
|
|
-- 11
|
|
|
|
|
{ Speed = 2000, { x = 2296, y = 5815 }, { x = 1656, y = 5806 }, { x = 2057, y = 6336} },
|
|
|
|
|
|
|
|
|
|
-- 12
|
|
|
|
|
{ Speed = 2000, { x = 9825, y = 4692 }, { x = 10608, y = 4428 }, { x = 10670, y = 5122}, { x = 11437, y = 5053} , { x = 11168, y = 5751} , { x = 11838, y = 6131}, { x = 11263, y = 6616} },
|
|
|
|
|
|
|
|
|
|
-- 13
|
|
|
|
|
{ Speed = 2000, { x = 9972, y = 4111 }, { x = 10056, y = 4748 }, { x = 10989, y = 4525}, { x = 10877, y = 5412} , { x = 11633, y = 5477} , { x = 11288, y = 5983}, { x = 11888, y = 6412} },
|
|
|
|
|
|
|
|
|
|
-- 14
|
|
|
|
|
{ Speed = 2000, { x = 10852, y = 4508 }, { x = 10475, y = 4928 } },
|
|
|
|
|
{ Speed = 2000, { x = 11471, y = 5153 }, { x = 10978, y = 5519 } },
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
-- <EFBFBD>̵<EFBFBD><EFBFBD>ӵ<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
SLOW_AREA =
|
|
|
|
|
{
|
|
|
|
|
{ AreaName = "SlowArea01", AbsIndex = "StaE_Ski_ICE", AbsStr = 1, AbsKeepTime = 1000 },
|
|
|
|
|
{ AreaName = "SlowArea02", AbsIndex = "StaE_Ski_ICE", AbsStr = 1, AbsKeepTime = 1000 },
|
|
|
|
|
{ AreaName = "SlowArea03", AbsIndex = "StaE_Ski_ICE", AbsStr = 1, AbsKeepTime = 1000 },
|
|
|
|
|
{ AreaName = "SlowArea04", AbsIndex = "StaE_Ski_ICE", AbsStr = 1, AbsKeepTime = 1000 },
|
|
|
|
|
{ AreaName = "SlowArea05", AbsIndex = "StaE_Ski_ICE", AbsStr = 1, AbsKeepTime = 1000 },
|
|
|
|
|
{ AreaName = "SlowArea06", AbsIndex = "StaE_Ski_ICE", AbsStr = 1, AbsKeepTime = 1000 },
|
|
|
|
|
{ AreaName = "SlowArea07", AbsIndex = "StaE_Ski_ICE", AbsStr = 1, AbsKeepTime = 1000 },
|
|
|
|
|
{ AreaName = "SlowArea08", AbsIndex = "StaE_Ski_ICE", AbsStr = 1, AbsKeepTime = 1000 },
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
------------------------------------------------------------------------------------------------------
|
|
|
|
|
--
|
|
|
|
|
-- GLOBAL VARIABLES
|
|
|
|
|
--
|
|
|
|
|
------------------------------------------------------------------------------------------------------
|
|
|
|
|
gEventMain = nil -- [<EFBFBD>̺<EFBFBD>Ʈ <EFBFBD><EFBFBD><EFBFBD><EFBFBD>]
|
|
|
|
|
--{
|
|
|
|
|
-- NPCHandle = 0, -- NPC <EFBFBD>ڵ<EFBFBD>
|
|
|
|
|
-- FunctionCallSec = 0, -- <EFBFBD>Լ<EFBFBD> ȣ<EFBFBD><EFBFBD> <EFBFBD>ð<EFBFBD>
|
|
|
|
|
-- Function = 0, -- <EFBFBD>Լ<EFBFBD>
|
|
|
|
|
-- ChatIndex = 0, -- ä<EFBFBD><EFBFBD> <EFBFBD>ε<EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
-- ChatSec - 0, -- ä<EFBFBD><EFBFBD> <EFBFBD>ð<EFBFBD>
|
|
|
|
|
--}
|
|
|
|
|
|
|
|
|
|
gSeasonTime = -- [<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>ð<EFBFBD>]
|
|
|
|
|
{
|
|
|
|
|
StartSec = 0, -- <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>ð<EFBFBD>
|
|
|
|
|
EndSec = 0, -- <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>ð<EFBFBD>
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
gPlayerCnt = 0 -- <EFBFBD>÷<EFBFBD><EFBFBD>̾<EFBFBD> <EFBFBD><EFBFBD>
|
|
|
|
|
gPlayerList = nil -- [<EFBFBD>÷<EFBFBD><EFBFBD>̾<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʈ]
|
|
|
|
|
--{
|
|
|
|
|
-- {
|
|
|
|
|
-- CharNo = 0, -- ij<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD>ȣ
|
|
|
|
|
-- Handle = 0, -- <EFBFBD>ڵ<EFBFBD>
|
|
|
|
|
-- Score = 0, -- <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
-- RegistSec = 0, -- <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>ð<EFBFBD>
|
|
|
|
|
-- StartSec = 0, -- <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>ð<EFBFBD>
|
|
|
|
|
-- GuideIndex = 0, -- <EFBFBD><EFBFBD><EFBFBD>̵<EFBFBD> <EFBFBD>ε<EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
-- GuideSec = 0, -- <EFBFBD><EFBFBD><EFBFBD>̵<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>ð<EFBFBD>
|
|
|
|
|
-- CheckFlagDoorList = {} -- <EFBFBD><EFBFBD><EFBFBD><EFBFBD> ȹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʈ
|
|
|
|
|
-- }
|
|
|
|
|
--}
|
|
|
|
|
|
|
|
|
|
gRankingList = nil -- [<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD>ŷ <EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʈ]
|
|
|
|
|
gPreviousankingList = nil -- [<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD>ŷ <EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʈ]
|
|
|
|
|
--{
|
|
|
|
|
-- {
|
|
|
|
|
-- nRanking = 0, -- <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
-- nCharNo = 0, -- ij<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD>ȣ
|
|
|
|
|
-- sCharID = "", -- ij<EFBFBD><EFBFBD><EFBFBD><EFBFBD> ID
|
|
|
|
|
-- nScore = 0, -- <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
-- }
|
|
|
|
|
--}
|
|
|
|
|
|
|
|
|
|
gFlagDoorIndexList = nil -- <EFBFBD> <EFBFBD>ε<EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʈ
|
|
|
|
|
gFlagDoorList = nil -- [<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʈ]
|
|
|
|
|
--{
|
|
|
|
|
-- {
|
|
|
|
|
-- Handle = 0, -- <EFBFBD>ڵ<EFBFBD>
|
|
|
|
|
-- TypeInfo = FLAG_DOOR_INFO["Type"][1],-- <EFBFBD> Ÿ<EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
-- }
|
|
|
|
|
--}
|
|
|
|
|
|
|
|
|
|
gSnowManIndexList = nil
|
|
|
|
|
gSnowManList = nil
|
|
|
|
|
--{
|
|
|
|
|
-- {
|
|
|
|
|
-- Handle
|
|
|
|
|
-- RegenSec
|
|
|
|
|
-- LifeTime
|
|
|
|
|
-- }
|
|
|
|
|
--}
|
|
|
|
|
|
|
|
|
|
gHoneyingIndexList = nil
|
|
|
|
|
gHoneyingList = nil
|
|
|
|
|
--{
|
|
|
|
|
--- {
|
|
|
|
|
-- Handle
|
|
|
|
|
-- MoveInfo
|
|
|
|
|
-- MoveCheckSec
|
|
|
|
|
-- MoveIndex
|
|
|
|
|
-- MoveBack
|
|
|
|
|
-- }
|
|
|
|
|
--}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
------------------------------------------------------------------------------------------------------
|
|
|
|
|
--
|
|
|
|
|
-- FUNCTION : CPP -> LUA
|
|
|
|
|
--
|
|
|
|
|
------------------------------------------------------------------------------------------------------
|
|
|
|
|
function DummyFunction()
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
function E_Ski_CongressNPC( Handle, MapIndex )
|
|
|
|
|
cExecCheck( "E_Ski_CongressNPC" )
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-- <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>ð<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
local nCurSec = cCurrentSecond()
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-- <EFBFBD>̺<EFBFBD>Ʈ <EFBFBD>ʱ<EFBFBD>ȭ
|
|
|
|
|
if gEventMain == nil
|
|
|
|
|
then
|
|
|
|
|
-- <EFBFBD><EFBFBD> Ȯ<EFBFBD><EFBFBD>
|
|
|
|
|
if MapIndex ~= EVENT_INFO["MapIndex"]
|
|
|
|
|
then
|
|
|
|
|
cAIScriptSet( Handle )
|
|
|
|
|
return ReturnAI["END"]
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-- <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>ð<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
local CurLocalTime = os.date( "*t", os.time() )
|
|
|
|
|
|
|
|
|
|
-- <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>ð<EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
gSeasonTime["StartSec"] = nCurSec-- + ((60 - CurLocalTime["min"]) * 60) - CurLocalTime["sec"] -- ó<EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD>۽<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵ<EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
gSeasonTime["EndSec"] = nCurSec
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-- AISctipt Function <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
cAIScriptFunc( Handle, "NPCClick", "WinterOlympic_Click" )
|
|
|
|
|
cAIScriptFunc( Handle, "NPCMenu", "WinterOlympic_Menu" )
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-- EventNPC <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
gEventMain = {}
|
|
|
|
|
gEventMain["NPCHandle"] = Handle
|
|
|
|
|
gEventMain["FunctionCallSec"] = nCurSec
|
|
|
|
|
gEventMain["Function"] = Season_Start
|
|
|
|
|
gEventMain["ChatIndex"] = 1
|
|
|
|
|
gEventMain["ChatSec"] = nCurSec
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-- <EFBFBD><EFBFBD>Ÿ <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>ʱ<EFBFBD>ȭ
|
|
|
|
|
gPlayerCnt = 0
|
|
|
|
|
gPlayerList = {}
|
|
|
|
|
|
|
|
|
|
gRankingList = {}
|
|
|
|
|
gPreviousankingList = {}
|
|
|
|
|
|
|
|
|
|
gFlagDoorIndexList = {}
|
|
|
|
|
gFlagDoorList = {}
|
|
|
|
|
|
|
|
|
|
gSnowManIndexList = {}
|
|
|
|
|
gSnowManList = {}
|
|
|
|
|
|
|
|
|
|
gHoneyingIndexList = {}
|
|
|
|
|
gHoneyingList = {}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-- <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
cSetObjectDirect( Handle, EVENT_INFO["NPCDirect"] )
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-- QuestNPC
|
|
|
|
|
local QuestHandle = cGetNPCHandle( EVENT_INFO["MapIndex"], EVENT_INFO["QuestNPC"] )
|
|
|
|
|
if QuestHandle ~= nil
|
|
|
|
|
then
|
|
|
|
|
cAIScriptSet( QuestHandle, Handle )
|
|
|
|
|
cAIScriptFunc( QuestHandle, "Entrance", "DummyFunction" )
|
|
|
|
|
cAIScriptFunc( QuestHandle, "NPCMenu", "E_Ski_QuestNPC_Menu" )
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-- <EFBFBD>ڵ<EFBFBD> Ȯ<EFBFBD><EFBFBD>
|
|
|
|
|
if gEventMain["NPCHandle"] ~= Handle
|
|
|
|
|
then
|
|
|
|
|
cAIScriptSet( Handle )
|
|
|
|
|
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>
|
|
|
|
|
if cIsObjectDead( Handle ) == 1
|
|
|
|
|
then
|
|
|
|
|
cAIScriptSet( Handle )
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
FlagDoor_Delete()
|
|
|
|
|
SnowMan_Delete()
|
|
|
|
|
Honeying_Delete()
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
gEventMain = nil
|
|
|
|
|
gPlayerCnt = 0
|
|
|
|
|
gPlayerList = nil
|
|
|
|
|
|
|
|
|
|
gRankingList = nil
|
|
|
|
|
gPreviousankingList = nil
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
cSetFieldScript( EVENT_INFO["MapIndex"] )
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
return ReturnAI["END"]
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-- NPC ä<EFBFBD><EFBFBD>
|
|
|
|
|
if nCurSec >= gEventMain["ChatSec"]
|
|
|
|
|
then
|
|
|
|
|
local NPCChatInfo = MSG_INFO["NPCChat"][gEventMain["ChatIndex"]]
|
|
|
|
|
|
|
|
|
|
if gEventMain["ChatIndex"] == 1
|
|
|
|
|
then
|
|
|
|
|
if gRankingList[1] ~= nil
|
|
|
|
|
then
|
|
|
|
|
cScriptMsg( EVENT_INFO["MapIndex"], gEventMain["NPCHandle"], NPCChatInfo["Index"], gRankingList[1]["sCharID"] )
|
|
|
|
|
end
|
|
|
|
|
else
|
|
|
|
|
cScriptMsg( EVENT_INFO["MapIndex"], gEventMain["NPCHandle"], NPCChatInfo["Index"] )
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
gEventMain["ChatIndex"] = gEventMain["ChatIndex"] + 1
|
|
|
|
|
gEventMain["ChatSec"] = nCurSec + NPCChatInfo["Interval"]
|
|
|
|
|
|
|
|
|
|
if gEventMain["ChatIndex"] > #MSG_INFO["NPCChat"]
|
|
|
|
|
then
|
|
|
|
|
gEventMain["ChatIndex"] = 1
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-- <EFBFBD>̺<EFBFBD>Ʈ <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>Լ<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
if nCurSec >= gEventMain["FunctionCallSec"]
|
|
|
|
|
then
|
|
|
|
|
gEventMain["Function"]( nCurSec )
|
|
|
|
|
gEventMain["FunctionCallSec"] = nCurSec + 0.1
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
return ReturnAI["END"]
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
function WinterOlympic_Click( NPCHandle, PlyHandle, PlyCharNo )
|
|
|
|
|
cExecCheck( "WinterOlympic_Click" )
|
|
|
|
|
|
|
|
|
|
-- <EFBFBD><EFBFBD><EFBFBD>̾<EFBFBD><EFBFBD>α<EFBFBD> <EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
cNPCMenuOpen( NPCHandle, PlyHandle )
|
|
|
|
|
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
function WinterOlympic_Menu( NPCHandle, PlyHandle, PlyCharNo, Value )
|
|
|
|
|
cExecCheck( "WinterOlympic_Menu" )
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-- <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>ð<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
local nCurSec = cCurrentSecond()
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-- <EFBFBD><EFBFBD>ȸ <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
if Value == 1
|
|
|
|
|
then
|
|
|
|
|
-- <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> Ȯ<EFBFBD><EFBFBD>
|
|
|
|
|
if nCurSec >= gSeasonTime["EndSec"]
|
|
|
|
|
then
|
|
|
|
|
cScriptMsg( PlyHandle, nil, MSG_INFO["Error_SeasonRest"] )
|
|
|
|
|
return
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
-- <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϰ<EFBFBD> <EFBFBD>ִ<EFBFBD> <EFBFBD>÷<EFBFBD><EFBFBD>̾<EFBFBD> <EFBFBD><EFBFBD> Ȯ<EFBFBD><EFBFBD>
|
|
|
|
|
if gPlayerCnt >= EVENT_INFO["MaxPlayer"]
|
|
|
|
|
then
|
|
|
|
|
return
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
-- <EFBFBD>÷<EFBFBD><EFBFBD>̾<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD><EFBFBD><EFBFBD> Ȯ<EFBFBD><EFBFBD>
|
|
|
|
|
if gPlayerList[PlyCharNo] ~= nil
|
|
|
|
|
then
|
|
|
|
|
cScriptMsg( PlyHandle, nil, MSG_INFO["Error_JoinPlayer"] )
|
|
|
|
|
return
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-- <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>÷<EFBFBD><EFBFBD>̾<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>ʱ<EFBFBD>ȭ
|
|
|
|
|
gPlayerList[PlyCharNo] = {}
|
|
|
|
|
gPlayerList[PlyCharNo]["CharNo"] = PlyCharNo
|
|
|
|
|
gPlayerList[PlyCharNo]["Handle"] = PlyHandle
|
|
|
|
|
gPlayerList[PlyCharNo]["Score"] = 0
|
|
|
|
|
gPlayerList[PlyCharNo]["RegistSec"] = nCurSec
|
|
|
|
|
gPlayerList[PlyCharNo]["StartSec"] = 0
|
|
|
|
|
gPlayerList[PlyCharNo]["GuideIndex"] = 1
|
|
|
|
|
gPlayerList[PlyCharNo]["GuideSec"] = nCurSec
|
|
|
|
|
gPlayerList[PlyCharNo]["CheckFlagDoorList"] = {}
|
|
|
|
|
|
|
|
|
|
gPlayerCnt = gPlayerCnt + 1
|
|
|
|
|
|
|
|
|
|
-- <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
elseif Value == 2
|
|
|
|
|
then
|
|
|
|
|
-- <EFBFBD><EFBFBD>ŷ <EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʈ UI <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
cSendRankingList( PlyHandle, gPreviousankingList, gRankingList )
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
function E_Ski_QuestNPC_Menu( NPCHandle, PlyHandle, PlyCharNo, Value )
|
|
|
|
|
cExecCheck( "E_Ski_QuestNPC_Menu" )
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-- <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>ð<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
local nCurSec = cCurrentSecond()
|
|
|
|
|
|
|
|
|
|
if Value == 1
|
|
|
|
|
then
|
|
|
|
|
-- <EFBFBD><EFBFBD>ŷ <EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʈ UI <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
cSendRankingList( PlyHandle, gPreviousankingList, gRankingList )
|
|
|
|
|
elseif Value == 2
|
|
|
|
|
then
|
|
|
|
|
cLinkTo( PlyHandle, EVENT_INFO["GoalNPCLink"]["MapIndex"], EVENT_INFO["GoalNPCLink"]["x"], EVENT_INFO["GoalNPCLink"]["y"] )
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
function FlagDoor_NPCAction( MapIndex, NPCHandle, PlyHandle, PlyCharNo )
|
|
|
|
|
cExecCheck( "FlagDoor_NPCAction" )
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-- <EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
local nFlagInx = gFlagDoorIndexList[NPCHandle]
|
|
|
|
|
if nFlagInx == nil
|
|
|
|
|
then
|
|
|
|
|
cAssertLog( "FlagDoor_NPCAction:gFlagDoorIndexList[NPCHandle] nil" );
|
|
|
|
|
cNPCVanish( NPCHandle )
|
|
|
|
|
return
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
if gFlagDoorList[nFlagInx] == nil
|
|
|
|
|
then
|
|
|
|
|
cAssertLog( "FlagDoor_NPCAction:gFlagDoorList[FlagInx] nil" );
|
|
|
|
|
cNPCVanish( NPCHandle )
|
|
|
|
|
return
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
local TypeInfo = gFlagDoorList[nFlagInx]["TypeInfo"]
|
|
|
|
|
if TypeInfo == nil
|
|
|
|
|
then
|
|
|
|
|
cAssertLog( "FlagDoor_NPCAction:gFlagDoorList[nFlagInx][TypeInfo] nil" );
|
|
|
|
|
cNPCVanish( NPCHandle )
|
|
|
|
|
return
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-- <EFBFBD>÷<EFBFBD><EFBFBD>̾<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
local PlyInfo = gPlayerList[PlyCharNo]
|
|
|
|
|
if PlyInfo == nil
|
|
|
|
|
then
|
|
|
|
|
-- cAssertLog( "FlagDoor_NPCAction:gPlayerList[PlyCharNo] nil" );
|
|
|
|
|
return
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-- <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
if PlyInfo["CheckFlagDoorList"][nFlagInx] == nil
|
|
|
|
|
then
|
|
|
|
|
PlyInfo["Score"] = PlyInfo["Score"] + TypeInfo["Point"]
|
|
|
|
|
PlyInfo["CheckFlagDoorList"][nFlagInx] = true
|
|
|
|
|
|
|
|
|
|
cSetAbstate( PlyHandle, TypeInfo["AbsIndex"], TypeInfo["AbsStr"], TypeInfo["AbsKeepTime"], NPCHandle )
|
|
|
|
|
cSkillBlast( NPCHandle, PlyHandle, TypeInfo["SkillIndex"] )
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
function SnowMan_NPCAction( MapIndex, NPCHandle, PlyHandle, PlyCharNo )
|
|
|
|
|
cExecCheck( "SnowMan_NPCAction" )
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
local nCurSec = cCurrentSecond()
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-- <EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
local nSnowManInx = gSnowManIndexList[NPCHandle]
|
|
|
|
|
if nSnowManInx == nil
|
|
|
|
|
then
|
|
|
|
|
cAssertLog( "SnowMan_NPCAction:gSnowManIndexList[NPCHandle] nil" );
|
|
|
|
|
cNPCVanish( NPCHandle )
|
|
|
|
|
return
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
if gSnowManList[nSnowManInx] == nil
|
|
|
|
|
then
|
|
|
|
|
cAssertLog( "SnowMan_NPCAction:gSnowManList[nSnowManInx] nil" );
|
|
|
|
|
cNPCVanish( NPCHandle )
|
|
|
|
|
return
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
local SnowManInfo = SNOWMAN_INFO[nSnowManInx]
|
|
|
|
|
if SnowManInfo == nil
|
|
|
|
|
then
|
|
|
|
|
cAssertLog( "SnowMan_NPCAction:SNOWMAN_INFO[nSnowManInx] nil" );
|
|
|
|
|
cNPCVanish( NPCHandle )
|
|
|
|
|
|
|
|
|
|
gSnowManList[nSnowManInx] = nil
|
|
|
|
|
gSnowManIndexList[NPCHandle] = nil
|
|
|
|
|
return
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-- <EFBFBD>÷<EFBFBD><EFBFBD>̾<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
local PlyInfo = gPlayerList[PlyCharNo]
|
|
|
|
|
if PlyInfo == nil
|
|
|
|
|
then
|
|
|
|
|
-- cAssertLog( "SnowMan_NPCAction:gPlayerList[PlyCharNo] nil" );
|
|
|
|
|
return
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-- <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
PlyInfo["Score"] = PlyInfo["Score"] - SnowManInfo["Point"]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-- SnowMan <EFBFBD><EFBFBD><EFBFBD><EFBFBD> / <EFBFBD>ʱ<EFBFBD>ȭ
|
|
|
|
|
cNPCVanish( NPCHandle )
|
|
|
|
|
|
|
|
|
|
gSnowManList[nSnowManInx]["Handle"] = nil
|
|
|
|
|
gSnowManList[nSnowManInx]["RegenSec"] = nCurSec + SnowManInfo["RegenInterval"]
|
|
|
|
|
gSnowManList[nSnowManInx]["LifeTime"] = 0
|
|
|
|
|
|
|
|
|
|
gSnowManIndexList[NPCHandle] = nil
|
|
|
|
|
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
function Honeying_Routine( Handle, MapIndex )
|
|
|
|
|
cExecCheck( "Honeying_Routine" )
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-- <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>ð<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
local nCurSec = cCurrentSecond()
|
|
|
|
|
|
|
|
|
|
local nHoneyingInx = gHoneyingIndexList[Handle]
|
|
|
|
|
if nHoneyingInx == nil
|
|
|
|
|
then
|
|
|
|
|
cAssertLog( "Honeying_Routine:gHoneyingIndexList[Handle] nil" );
|
|
|
|
|
cNPCVanish( Handle )
|
|
|
|
|
return ReturnAI["END"]
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
if gHoneyingList[nHoneyingInx] == nil
|
|
|
|
|
then
|
|
|
|
|
cAssertLog( "Honeying_Routine:gHoneyingList[nHoneyingInx] nil" );
|
|
|
|
|
cNPCVanish( Handle )
|
|
|
|
|
return ReturnAI["END"]
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
if gHoneyingList[nHoneyingInx]["MoveCheckSec"] > nCurSec
|
|
|
|
|
then
|
|
|
|
|
return ReturnAI["END"]
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-- <EFBFBD>ϴ<EFBFBD> <EFBFBD>̵<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
local MoveInfo = gHoneyingList[nHoneyingInx]["MoveInfo"]
|
|
|
|
|
local MoveInx = gHoneyingList[nHoneyingInx]["MoveIndex"]
|
|
|
|
|
local MaxMoveInx = #gHoneyingList[nHoneyingInx]["MoveInfo"]
|
|
|
|
|
local CurX, CurY = cObjectLocate( Handle )
|
|
|
|
|
|
|
|
|
|
if cDistanceSquar( CurX, CurY, MoveInfo[MoveInx]["x"], MoveInfo[MoveInx]["y"] ) < (HONEYING_INFO["GoalDistInterval"] * HONEYING_INFO["GoalDistInterval"])
|
|
|
|
|
then
|
|
|
|
|
if gHoneyingList[nHoneyingInx]["MoveBack"] == false
|
|
|
|
|
then
|
|
|
|
|
MoveInx = MoveInx + 1
|
|
|
|
|
|
|
|
|
|
if MoveInx > MaxMoveInx
|
|
|
|
|
then
|
|
|
|
|
MoveInx = MaxMoveInx - 1
|
|
|
|
|
gHoneyingList[nHoneyingInx]["MoveBack"] = true
|
|
|
|
|
end
|
|
|
|
|
else
|
|
|
|
|
MoveInx = MoveInx- 1
|
|
|
|
|
|
|
|
|
|
if MoveInx < 1
|
|
|
|
|
then
|
|
|
|
|
MoveInx = 2
|
|
|
|
|
gHoneyingList[nHoneyingInx]["MoveBack"] = false
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
cRunTo( Handle, MoveInfo[MoveInx]["x"], MoveInfo[MoveInx]["y"], MoveInfo["Speed"] )
|
|
|
|
|
|
|
|
|
|
gHoneyingList[nHoneyingInx]["MoveIndex"] = MoveInx
|
|
|
|
|
else
|
|
|
|
|
if cGetMoveState( Handle ) == 0
|
|
|
|
|
then
|
|
|
|
|
cRunTo( Handle, MoveInfo[MoveInx]["x"], MoveInfo[MoveInx]["y"], MoveInfo["Speed"] )
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
gHoneyingList[nHoneyingInx]["MoveCheckSec"] = gHoneyingList[nHoneyingInx]["MoveCheckSec"] + HONEYING_INFO["MoveCheckInterval"]
|
|
|
|
|
return ReturnAI["END"]
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
function Honeying_NPCAction( MapIndex, NPCHandle, PlyHandle, PlyCharNo )
|
|
|
|
|
cExecCheck( "Honeying_NPCAction" )
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-- <EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
local nHoneyingInx = gHoneyingIndexList[NPCHandle]
|
|
|
|
|
if nHoneyingInx == nil
|
|
|
|
|
then
|
|
|
|
|
cAssertLog( "Honeying_NPCAction:gHoneyingIndexList[NPCHandle] nil" );
|
|
|
|
|
cNPCVanish( NPCHandle )
|
|
|
|
|
return
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
if gHoneyingList[nHoneyingInx] == nil
|
|
|
|
|
then
|
|
|
|
|
cAssertLog( "Honeying_NPCAction:gHoneyingList[nHoneyingInx] nil" );
|
|
|
|
|
cNPCVanish( NPCHandle )
|
|
|
|
|
return
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-- <EFBFBD>÷<EFBFBD><EFBFBD>̾<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
if gPlayerList[PlyCharNo] == nil
|
|
|
|
|
then
|
|
|
|
|
-- cAssertLog( "SnowMan_NPCAction:gPlayerList[PlyCharNo] nil" );
|
|
|
|
|
return
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
cSetAbstate( PlyHandle, HONEYING_INFO["AbsIndex"], HONEYING_INFO["AbsStr"], HONEYING_INFO["AbsKeepTime"], NPCHandle )
|
|
|
|
|
cSkillBlast( NPCHandle, NPCHandle, HONEYING_INFO["SkillIndex"] )
|
|
|
|
|
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
------------------------------------------------------------------------------------------------------
|
|
|
|
|
--
|
|
|
|
|
-- FUNCTION : LUA -> LUA
|
|
|
|
|
--
|
|
|
|
|
------------------------------------------------------------------------------------------------------
|
|
|
|
|
function Season_Start( nCurSec )
|
|
|
|
|
cExecCheck( "Season_Start" )
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-- <EFBFBD>̺<EFBFBD>Ʈ <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>ð<EFBFBD> Ȯ<EFBFBD><EFBFBD>
|
|
|
|
|
if nCurSec < gSeasonTime["StartSec"]
|
|
|
|
|
then
|
|
|
|
|
return
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-- <EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
for i = 1, #FLAG_DOOR_INFO["Location"]
|
|
|
|
|
do
|
|
|
|
|
-- <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϰ<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϱ<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <EFBFBD><EFBFBD>ġ <EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
local nTypeInx = cRandomInt( 1, #FLAG_DOOR_INFO["Type"] )
|
|
|
|
|
local nLocationInx = cRandomInt( 1, #FLAG_DOOR_INFO["Location"][i] )
|
|
|
|
|
|
|
|
|
|
-- <EFBFBD><EFBFBD>ȯ<EFBFBD><EFBFBD> <EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
local TypeInfo = FLAG_DOOR_INFO["Type"][nTypeInx]
|
|
|
|
|
local LocationInfo = FLAG_DOOR_INFO["Location"][i][nLocationInx]
|
|
|
|
|
|
|
|
|
|
-- <EFBFBD> <EFBFBD><EFBFBD>ȯ
|
|
|
|
|
local FlagHandle = cMobRegen_XY( EVENT_INFO["MapIndex"], TypeInfo["Index"], LocationInfo["x"], LocationInfo["y"], 0 )
|
|
|
|
|
|
|
|
|
|
if FlagHandle ~= nil
|
|
|
|
|
then
|
|
|
|
|
gFlagDoorList[i] = {}
|
|
|
|
|
gFlagDoorList[i]["Handle"] = FlagHandle
|
|
|
|
|
gFlagDoorList[i]["TypeInfo"] = TypeInfo
|
|
|
|
|
|
|
|
|
|
gFlagDoorIndexList[FlagHandle] = i
|
|
|
|
|
|
|
|
|
|
cAIScriptSet( FlagHandle, gEventMain["NPCHandle"] )
|
|
|
|
|
cAIScriptFunc( FlagHandle, "Entrance", "DummyFunction" )
|
|
|
|
|
cAIScriptFunc( FlagHandle, "NPCAction", "FlagDoor_NPCAction" )
|
|
|
|
|
else
|
|
|
|
|
cAssertLog( "FlagDoor regen fail : "..i.." X : "..LocationInfo["x"].." Y : "..LocationInfo["y"] )
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-- <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD>ȯ
|
|
|
|
|
for i = 1, #HONEYING_INFO
|
|
|
|
|
do
|
|
|
|
|
local HoneyingHandle = cMobRegen_XY( EVENT_INFO["MapIndex"], HONEYING_INFO["Index"], HONEYING_INFO[i][1]["x"], HONEYING_INFO[i][1]["y"], 0 )
|
|
|
|
|
|
|
|
|
|
if HoneyingHandle ~= nil
|
|
|
|
|
then
|
|
|
|
|
gHoneyingList[i] = {}
|
|
|
|
|
gHoneyingList[i]["Handle"] = HoneyingHandle
|
|
|
|
|
gHoneyingList[i]["MoveInfo"] = HONEYING_INFO[i]
|
|
|
|
|
gHoneyingList[i]["MoveCheckSec"] = nCurSec
|
|
|
|
|
gHoneyingList[i]["MoveIndex"] = 1
|
|
|
|
|
gHoneyingList[i]["MoveBack"] = false
|
|
|
|
|
|
|
|
|
|
gHoneyingIndexList[HoneyingHandle] = i
|
|
|
|
|
|
|
|
|
|
cAIScriptSet( HoneyingHandle, gEventMain["NPCHandle"] )
|
|
|
|
|
cAIScriptFunc( HoneyingHandle, "Entrance", "Honeying_Routine" )
|
|
|
|
|
cAIScriptFunc( HoneyingHandle, "NPCAction", "Honeying_NPCAction" )
|
|
|
|
|
else
|
|
|
|
|
cAssertLog( "Honeying regen fail : "..i.." X : "..HONEYING_INFO[i][1]["x"].." Y : "..HONEYING_INFO[i][1]["y"] )
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-- <EFBFBD><EFBFBD>ŷ <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
gPreviousankingList = gRankingList
|
|
|
|
|
gRankingList = nil
|
|
|
|
|
gRankingList = {}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-- <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>ð<EFBFBD>
|
|
|
|
|
gSeasonTime["EndSec"] = nCurSec + EVENT_INFO["SeasonProcressSec"]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-- <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
cScriptMsg_World( nil, MSG_INFO["Season_Start"] )
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-- <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>ܰ<EFBFBD> <EFBFBD>Լ<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
gEventMain["Function"] = Season_Doing
|
|
|
|
|
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
function Season_Doing( nCurSec )
|
|
|
|
|
cExecCheck( "Season_Doing" )
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-- <EFBFBD>̺<EFBFBD>Ʈ <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>ð<EFBFBD> Ȯ<EFBFBD><EFBFBD>
|
|
|
|
|
if nCurSec >= gSeasonTime["EndSec"]
|
|
|
|
|
then
|
|
|
|
|
gEventMain["Function"] = Season_End
|
|
|
|
|
return
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-- <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD> Ȯ<EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
Player_Manager()
|
|
|
|
|
SnowMan_Manager()
|
|
|
|
|
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
function Season_End( nCurSec )
|
|
|
|
|
cExecCheck( "Season_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>ȭ
|
|
|
|
|
for nPlyInx, PlyValue in pairs( gPlayerList )
|
|
|
|
|
do
|
|
|
|
|
cEffectMsg( PlyValue["Handle"], EFFECT_MSG_TYPE["EMT_FAIL"] )
|
|
|
|
|
cScriptMsg( PlyValue["Handle"], MSG_INFO["Error_SeasonEnd"] )
|
|
|
|
|
cTimerEnd( PlyValue["Handle"], EVENT_INFO["TimerDeleteSec"] )
|
|
|
|
|
|
|
|
|
|
cSendGameLogDataType_4( EVENT_INFO["GameResultLogType"], PlyValue["CharNo"], "", 0, 0, EVENT_INFO["GameResultType"]["GRT_SeasonEnd"],
|
|
|
|
|
0, 0, PlyValue["Score"] )
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
gPlayerCnt = 0
|
|
|
|
|
gPlayerList = nil
|
|
|
|
|
gPlayerList = {}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-- 1, 2, 3 <EFBFBD><EFBFBD> <EFBFBD≯<EFBFBD>
|
|
|
|
|
local TopPlayerNameList = {}
|
|
|
|
|
|
|
|
|
|
-- <EFBFBD><EFBFBD>ŷ <EFBFBD><EFBFBD><EFBFBD><EFBFBD> ó<EFBFBD><EFBFBD>
|
|
|
|
|
for i = 1, #gRankingList
|
|
|
|
|
do
|
|
|
|
|
local nRanking = gRankingList[i]["nRanking"]
|
|
|
|
|
local RewardInfo = GAME_INFO["RankingReward"][nRanking]
|
|
|
|
|
|
|
|
|
|
if RewardInfo ~= nil
|
|
|
|
|
then
|
|
|
|
|
cAddCharacterTitle( gRankingList[i]["nCharNo"], RewardInfo["TitleType"], RewardInfo["ElementNo"] )
|
|
|
|
|
cSendGameLogDataType_4( EVENT_INFO["SeasonbRewardLogType"], gRankingList[i]["nCharNo"], "", 0, 0, 0, nRanking, RewardInfo["TitleType"], RewardInfo["ElementNo"] )
|
|
|
|
|
|
|
|
|
|
if TopPlayerNameList[nRanking] == nil
|
|
|
|
|
then
|
|
|
|
|
TopPlayerNameList[nRanking] = gRankingList[i]["sCharID"]
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-- <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʈ <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
FlagDoor_Delete()
|
|
|
|
|
SnowMan_Delete()
|
|
|
|
|
Honeying_Delete()
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-- <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
cScriptMsg_World( nil, MSG_INFO["Season_End"] )
|
|
|
|
|
|
|
|
|
|
if #gRankingList > 0
|
|
|
|
|
then
|
|
|
|
|
for i = 1, 3
|
|
|
|
|
do
|
|
|
|
|
if TopPlayerNameList[i] == nil
|
|
|
|
|
then
|
|
|
|
|
TopPlayerNameList[i] = " "
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
cScriptMsg_World( nil, MSG_INFO["Season_Ranking"], TopPlayerNameList[1], TopPlayerNameList[2], TopPlayerNameList[3] )
|
|
|
|
|
else
|
|
|
|
|
cScriptMsg_World( nil, MSG_INFO["Season_RankingEmpty"] )
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-- <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
gSeasonTime["StartSec"] = nCurSec + EVENT_INFO["SeasonRestSec"]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-- <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>ܰ<EFBFBD> <EFBFBD>Լ<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
gEventMain["Function"] = Season_Start
|
|
|
|
|
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
function Player_Manager()
|
|
|
|
|
cExecCheck( "Player_Manager" )
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-- <EFBFBD>ȳ<EFBFBD> <EFBFBD><EFBFBD><EFBFBD>̾<EFBFBD><EFBFBD>α<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
local GameGuideInfo = MSG_INFO["Game_Guide"]
|
|
|
|
|
local nGameGuideCnt = #MSG_INFO["Game_Guide"]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-- <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>÷<EFBFBD><EFBFBD>̾<EFBFBD> ó<EFBFBD><EFBFBD>
|
|
|
|
|
for nPlyInx, PlyValue in pairs( gPlayerList )
|
|
|
|
|
do
|
|
|
|
|
|
|
|
|
|
-- <EFBFBD>÷<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 cPlayerExist( PlyValue["Handle"] ) == nil
|
|
|
|
|
then
|
|
|
|
|
gPlayerList[nPlyInx] = nil
|
|
|
|
|
gPlayerCnt = gPlayerCnt - 1
|
|
|
|
|
|
|
|
|
|
else
|
|
|
|
|
local nCurSec = cCurSec()
|
|
|
|
|
local PlyMapIndex = cGetCurMapIndex( PlyValue["Handle"] )
|
|
|
|
|
local PlyCharNo = cGetCharNo( PlyValue["Handle"] )
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-- <EFBFBD>ʿ<EFBFBD> <EFBFBD><EFBFBD><EFBFBD>ų<EFBFBD> ij<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 PlyMapIndex ~= EVENT_INFO["MapIndex"] or
|
|
|
|
|
PlyCharNo ~= PlyValue["CharNo"]
|
|
|
|
|
then
|
|
|
|
|
gPlayerList[nPlyInx] = nil
|
|
|
|
|
gPlayerCnt = gPlayerCnt - 1
|
|
|
|
|
|
|
|
|
|
-- <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD>
|
|
|
|
|
elseif PlyValue["StartSec"] == 0
|
|
|
|
|
then
|
|
|
|
|
-- <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>ð<EFBFBD> <EFBFBD>ѱ<EFBFBD> <EFBFBD>÷<EFBFBD><EFBFBD>̾<EFBFBD> <EFBFBD>ǰ<EFBFBD> ó<EFBFBD><EFBFBD>
|
|
|
|
|
if (nCurSec - PlyValue["RegistSec"]) >= GAME_INFO["StanbyTimeout"]
|
|
|
|
|
then
|
|
|
|
|
gPlayerList[nPlyInx] = nil
|
|
|
|
|
gPlayerCnt = gPlayerCnt - 1
|
|
|
|
|
|
|
|
|
|
cScriptMsg( PlyValue["Handle"], nil, MSG_INFO["Error_StanbyTimeout"] )
|
|
|
|
|
cEffectMsg( PlyValue["Handle"], GAME_INFO["FailEffectMsg"] )
|
|
|
|
|
cSendGameLogDataType_4( EVENT_INFO["GameResultLogType"], PlyValue["CharNo"], "", 0, 0, EVENT_INFO["GameResultType"]["GRT_StanbyTimeout"],
|
|
|
|
|
0, (nCurSec - PlyValue["RegistSec"]), PlyValue["Score"] )
|
|
|
|
|
|
|
|
|
|
-- <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>ð<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>÷<EFBFBD><EFBFBD>̾<EFBFBD>
|
|
|
|
|
else
|
|
|
|
|
-- StartLine <EFBFBD>Ѿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> Ȯ<EFBFBD><EFBFBD>
|
|
|
|
|
if cIsInArea( PlyValue["Handle"], EVENT_INFO["MapIndex"], GAME_INFO["StartLineArea"] ) == true
|
|
|
|
|
then
|
|
|
|
|
PlyValue["StartSec"] = nCurSec
|
|
|
|
|
|
|
|
|
|
cEffectMsg( PlyValue["Handle"], GAME_INFO["StartEffectMsg"] )
|
|
|
|
|
cTimerStart( PlyValue["Handle"] )
|
|
|
|
|
|
|
|
|
|
else
|
|
|
|
|
-- <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD>̵<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
if nCurSec >= PlyValue["GuideSec"] and PlyValue["GuideIndex"] <= nGameGuideCnt
|
|
|
|
|
then
|
|
|
|
|
local GameGuideMsg = GameGuideInfo[PlyValue["GuideIndex"]]
|
|
|
|
|
cScriptMsg( PlyValue["Handle"], nil, GameGuideMsg["Index"] )
|
|
|
|
|
|
|
|
|
|
PlyValue["GuideSec"] = nCurSec + GameGuideMsg["Interval"]
|
|
|
|
|
PlyValue["GuideIndex"] = PlyValue["GuideIndex"] + 1
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
-- <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD>
|
|
|
|
|
else
|
|
|
|
|
-- <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>ð<EFBFBD> <EFBFBD>ѱ<EFBFBD> <EFBFBD>÷<EFBFBD><EFBFBD>̾<EFBFBD> <EFBFBD>ǰ<EFBFBD> ó<EFBFBD><EFBFBD>
|
|
|
|
|
if (nCurSec - PlyValue["StartSec"]) >= GAME_INFO["RunTimeout"]
|
|
|
|
|
then
|
|
|
|
|
gPlayerList[nPlyInx] = nil
|
|
|
|
|
gPlayerCnt = gPlayerCnt - 1
|
|
|
|
|
|
|
|
|
|
cEffectMsg( PlyValue["Handle"], GAME_INFO["FailEffectMsg"] )
|
|
|
|
|
cScriptMsg( PlyValue["Handle"], nil, MSG_INFO["Error_RunTimeout"] )
|
|
|
|
|
cTimerEnd( PlyValue["Handle"], EVENT_INFO["TimerDeleteSec"] )
|
|
|
|
|
|
|
|
|
|
cSendGameLogDataType_4( EVENT_INFO["GameResultLogType"], PlyValue["CharNo"], "", 0, 0, EVENT_INFO["GameResultType"]["GRT_RunTimeout"],
|
|
|
|
|
0, (nCurSec - PlyValue["StartSec"]), PlyValue["Score"] )
|
|
|
|
|
|
|
|
|
|
-- <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>ð<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>÷<EFBFBD><EFBFBD>̾<EFBFBD>
|
|
|
|
|
else
|
|
|
|
|
|
|
|
|
|
-- <EFBFBD>̵<EFBFBD><EFBFBD>ӵ<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> Ȯ<EFBFBD><EFBFBD>
|
|
|
|
|
for i = 1, #SLOW_AREA
|
|
|
|
|
do
|
|
|
|
|
if cIsInArea( PlyValue["Handle"], EVENT_INFO["MapIndex"], SLOW_AREA[i]["AreaName"] ) == true
|
|
|
|
|
then
|
|
|
|
|
cSetAbstate( PlyValue["Handle"], SLOW_AREA[i]["AbsIndex"], SLOW_AREA[i]["AbsStr"], SLOW_AREA[i]["AbsKeepTime"], PlyValue["Handle"] )
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-- GoalLine <EFBFBD>Ѿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> Ȯ<EFBFBD><EFBFBD>
|
|
|
|
|
if cIsInArea( PlyValue["Handle"], EVENT_INFO["MapIndex"], GAME_INFO["GoalLineArea"] ) == true
|
|
|
|
|
then
|
|
|
|
|
-- <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>ɸ<EFBFBD> <EFBFBD>ð<EFBFBD>
|
|
|
|
|
local nRunSec = (nCurSec - PlyValue["StartSec"])
|
|
|
|
|
local TimeScore = 0
|
|
|
|
|
|
|
|
|
|
-- <EFBFBD>ð<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
if nRunSec < GAME_INFO["PointTimeout"]
|
|
|
|
|
then
|
|
|
|
|
TimeScore = ((GAME_INFO["PointTimeout"] - nRunSec) * GAME_INFO["PointIncPerSec"])
|
|
|
|
|
TimeScore = ((TimeScore * TimeScore) * 4)
|
|
|
|
|
|
|
|
|
|
elseif nRunSec > GAME_INFO["PointTimeout"]
|
|
|
|
|
then
|
|
|
|
|
TimeScore = ((GAME_INFO["PointTimeout"] - nRunSec) * GAME_INFO["PointIncPerSec"])
|
|
|
|
|
TimeScore = (TimeScore * 20)
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
PlyValue["Score"] = PlyValue["Score"] + TimeScore
|
|
|
|
|
if PlyValue["Score"] < 0
|
|
|
|
|
then
|
|
|
|
|
PlyValue["Score"] = 0
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-- <EFBFBD>߰<EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD>ŷ <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
local InsertRanking = {}
|
|
|
|
|
InsertRanking["nRanking"] = 0
|
|
|
|
|
InsertRanking["nCharNo"] = PlyValue["CharNo"]
|
|
|
|
|
InsertRanking["sCharID"] = cGetPlayerName( PlyValue["Handle"] )
|
|
|
|
|
InsertRanking["nScore"] = PlyValue["Score"]
|
|
|
|
|
|
|
|
|
|
cScriptMsg( PlyValue["Handle"], nil, MSG_INFO["GoalMsg_Point"], InsertRanking["sCharID"], tostring(InsertRanking["nScore"]) )
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-- <EFBFBD><EFBFBD>ŷ <EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʈ<EFBFBD><EFBFBD> <EFBFBD>߰<EFBFBD>
|
|
|
|
|
local nRankingInx, nRankingScore = GetPlayerRankingScore( PlyValue["CharNo"], -1 )
|
|
|
|
|
|
|
|
|
|
if nRankingScore < PlyValue["Score"]
|
|
|
|
|
then
|
|
|
|
|
-- <EFBFBD><EFBFBD>ŷ <EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʈ<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
if nRankingInx ~= 0
|
|
|
|
|
then
|
|
|
|
|
PlayerRankingDelete( nRankingInx )
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
-- <EFBFBD><EFBFBD>ŷ <EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʈ<EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>߰<EFBFBD>
|
|
|
|
|
if PlayerRankingInsert( InsertRanking ) == true
|
|
|
|
|
then
|
|
|
|
|
cScriptMsg( PlyValue["Handle"], nil, MSG_INFO["GoalMsg_RankingSuc"], tostring(InsertRanking["nRanking"]) )
|
|
|
|
|
else
|
|
|
|
|
cScriptMsg( PlyValue["Handle"], nil, MSG_INFO["GoalMsg_RankingFail1"] )
|
|
|
|
|
end
|
|
|
|
|
else
|
|
|
|
|
cScriptMsg( PlyValue["Handle"], nil, MSG_INFO["GoalMsg_RankingFail2"] )
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-- <EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
cSetAbstate( PlyValue["Handle"], GAME_INFO["GoalReward"]["AbsIndex"], GAME_INFO["GoalReward"]["AbsStr"], GAME_INFO["GoalReward"]["AbsKeepTime"], PlyValue["Handle"] )
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-- <EFBFBD>÷<EFBFBD><EFBFBD>̾<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʈ<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
gPlayerList[nPlyInx] = nil
|
|
|
|
|
gPlayerCnt = gPlayerCnt - 1
|
|
|
|
|
|
|
|
|
|
cEffectMsg( PlyValue["Handle"], GAME_INFO["GoalEffectMsg"] )
|
|
|
|
|
cTimerEnd( PlyValue["Handle"], EVENT_INFO["TimerDeleteSec"] )
|
|
|
|
|
|
|
|
|
|
cSendGameLogDataType_4( EVENT_INFO["GameResultLogType"], InsertRanking["nCharNo"], "", 0, 0, EVENT_INFO["GameResultType"]["GRT_Goal"],
|
|
|
|
|
InsertRanking["nRanking"], nRunSec, InsertRanking["nScore"] )
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
function SnowMan_Manager()
|
|
|
|
|
cExecCheck( "SnowMan_Manager" )
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
for i = 1, #SNOWMAN_INFO
|
|
|
|
|
do
|
|
|
|
|
-- <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>ð<EFBFBD>(<EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
|
|
|
|
|
local nCurSec = cCurrentSecond()
|
|
|
|
|
local SnowManInfo = SNOWMAN_INFO[i]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-- <EFBFBD>⺻ <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
if gSnowManList[i] == nil
|
|
|
|
|
then
|
|
|
|
|
gSnowManList[i] = {}
|
|
|
|
|
gSnowManList[i]["Handle"] = nil
|
|
|
|
|
gSnowManList[i]["RegenSec"] = nCurSec + SnowManInfo["RegenInterval"]
|
|
|
|
|
gSnowManList[i]["LifeTime"] = 0
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-- SnowMan<EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
if gSnowManList[i]["Handle"] ~= nil
|
|
|
|
|
then
|
|
|
|
|
if cIsObjectDead( gSnowManList[i]["Handle"] )
|
|
|
|
|
then
|
|
|
|
|
local SnowManHandle = gSnowManList[i]["Handle"]
|
|
|
|
|
|
|
|
|
|
gSnowManList[i]["Handle"] = nil
|
|
|
|
|
gSnowManList[i]["RegenSec"] = nCurSec + SnowManInfo["RegenInterval"]
|
|
|
|
|
gSnowManList[i]["LifeTime"] = 0
|
|
|
|
|
|
|
|
|
|
gSnowManIndexList[SnowManHandle] = nil
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-- <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>ð<EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
if gSnowManList[i]["LifeTime"] ~= 0 and
|
|
|
|
|
gSnowManList[i]["LifeTime"] <= nCurSec
|
|
|
|
|
then
|
|
|
|
|
local SnowManHandle = gSnowManList[i]["Handle"]
|
|
|
|
|
|
|
|
|
|
cNPCVanish( SnowManHandle )
|
|
|
|
|
|
|
|
|
|
gSnowManList[i]["Handle"] = nil
|
|
|
|
|
gSnowManList[i]["RegenSec"] = nCurSec + SnowManInfo["RegenInterval"]
|
|
|
|
|
gSnowManList[i]["LifeTime"] = 0
|
|
|
|
|
|
|
|
|
|
gSnowManIndexList[SnowManHandle] = nil
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-- SnowMan <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
if gSnowManList[i]["RegenSec"] ~= 0 and
|
|
|
|
|
gSnowManList[i]["RegenSec"] <= nCurSec
|
|
|
|
|
then
|
|
|
|
|
local SnowManHandle = cMobRegen_Circle( EVENT_INFO["MapIndex"], SnowManInfo["Index"], SnowManInfo["x"], SnowManInfo["y"], SnowManInfo["Range"] )
|
|
|
|
|
|
|
|
|
|
if SnowManHandle ~= nil
|
|
|
|
|
then
|
|
|
|
|
gSnowManList[i]["Handle"] = SnowManHandle
|
|
|
|
|
gSnowManList[i]["LifeTime"] = nCurSec + cRandomInt( SnowManInfo["LifeTime_Min"], SnowManInfo["LifeTime_Max"] )
|
|
|
|
|
gSnowManList[i]["RegenSec"] = 0
|
|
|
|
|
|
|
|
|
|
gSnowManIndexList[gSnowManList[i]["Handle"]] = i
|
|
|
|
|
|
|
|
|
|
cAIScriptSet( gSnowManList[i]["Handle"], gEventMain["NPCHandle"] )
|
|
|
|
|
cAIScriptFunc( gSnowManList[i]["Handle"], "Entrance", "DummyFunction" )
|
|
|
|
|
cAIScriptFunc( gSnowManList[i]["Handle"], "NPCAction", "SnowMan_NPCAction" )
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
function FlagDoor_Delete()
|
|
|
|
|
cExecCheck( "FlagDoor_Delete" )
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
for i = 1, #FLAG_DOOR_INFO["Location"]
|
|
|
|
|
do
|
|
|
|
|
if gFlagDoorList[i] ~= nil
|
|
|
|
|
then
|
|
|
|
|
if gFlagDoorList[i]["Handle"] ~= nil
|
|
|
|
|
then
|
|
|
|
|
cNPCVanish( gFlagDoorList[i]["Handle"] )
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
gFlagDoorList = nil
|
|
|
|
|
gFlagDoorIndexList = nil
|
|
|
|
|
gFlagDoorList = {}
|
|
|
|
|
gFlagDoorIndexList = {}
|
|
|
|
|
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
function SnowMan_Delete()
|
|
|
|
|
cExecCheck( "SnowMan_Delete" )
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
for i = 1, #SNOWMAN_INFO
|
|
|
|
|
do
|
|
|
|
|
if gSnowManList[i] ~= nil
|
|
|
|
|
then
|
|
|
|
|
if gSnowManList[i]["Handle"] ~= nil
|
|
|
|
|
then
|
|
|
|
|
cNPCVanish( gSnowManList[i]["Handle"] )
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
gSnowManList = nil
|
|
|
|
|
gSnowManIndexList = nil
|
|
|
|
|
gSnowManList = {}
|
|
|
|
|
gSnowManIndexList = {}
|
|
|
|
|
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
function Honeying_Delete()
|
|
|
|
|
cExecCheck( "Honeying_Delete" )
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
for i = 1, #HONEYING_INFO
|
|
|
|
|
do
|
|
|
|
|
if gHoneyingList[i] ~= nil
|
|
|
|
|
then
|
|
|
|
|
if gHoneyingList[i]["Handle"] ~= nil
|
|
|
|
|
then
|
|
|
|
|
cNPCVanish( gHoneyingList[i]["Handle"] )
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
gHoneyingList = nil
|
|
|
|
|
gHoneyingIndexList = nil
|
|
|
|
|
gHoneyingList = {}
|
|
|
|
|
gHoneyingIndexList = {}
|
|
|
|
|
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
------------------------------------------------------------
|
|
|
|
|
-- GetPlayerRankingScore( CharNo, DefaultValue )
|
|
|
|
|
-- gRankingList <EFBFBD><EFBFBD> <EFBFBD>ִ<EFBFBD> <EFBFBD>÷<EFBFBD><EFBFBD>̾<EFBFBD> <EFBFBD>ε<EFBFBD><EFBFBD><EFBFBD>(nIndex), <EFBFBD><EFBFBD><EFBFBD><EFBFBD>(nScore) <EFBFBD><EFBFBD>ȯ
|
|
|
|
|
-- <EFBFBD>÷<EFBFBD><EFBFBD>̾ <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD>쿡<EFBFBD><EFBFBD> DefaultValue <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD>ȯ
|
|
|
|
|
------------------------------------------------------------
|
|
|
|
|
function GetPlayerRankingScore( CharNo, DefaultValue )
|
|
|
|
|
cExecCheck( "GetPlayerRankingScore" )
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
local nScore = DefaultValue
|
|
|
|
|
local nIndex = 0
|
|
|
|
|
|
|
|
|
|
for i = 1, #gRankingList
|
|
|
|
|
do
|
|
|
|
|
if gRankingList[i]["nCharNo"] == CharNo
|
|
|
|
|
then
|
|
|
|
|
nScore = gRankingList[i]["nScore"]
|
|
|
|
|
nIndex = i
|
|
|
|
|
break
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
return nIndex, nScore
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
------------------------------------------------------------
|
|
|
|
|
-- PlayerRankingDelete( nIndex )
|
|
|
|
|
-- gRankingList <EFBFBD><EFBFBD> <EFBFBD>ִ<EFBFBD> <EFBFBD>÷<EFBFBD><EFBFBD>̾<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
------------------------------------------------------------
|
|
|
|
|
function PlayerRankingDelete( nIndex )
|
|
|
|
|
cExecCheck( "PlayerRankingDelete" )
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if nIndex == nil
|
|
|
|
|
then
|
|
|
|
|
return
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
if nIndex > #gRankingList
|
|
|
|
|
then
|
|
|
|
|
return
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
local bSameRanking = false
|
|
|
|
|
|
|
|
|
|
-- gRankingList <EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> Ranking <EFBFBD><EFBFBD> <EFBFBD>ִ<EFBFBD><EFBFBD><EFBFBD> Ȯ<EFBFBD><EFBFBD>
|
|
|
|
|
for i = 1, #gRankingList
|
|
|
|
|
do
|
|
|
|
|
if i ~= nIndex
|
|
|
|
|
then
|
|
|
|
|
if gRankingList[i]["nRanking"] == gRankingList[nIndex]["nRanking"]
|
|
|
|
|
then
|
|
|
|
|
bSameRanking = true
|
|
|
|
|
break
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-- gRankingList <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
if nIndex == #gRankingList
|
|
|
|
|
then
|
|
|
|
|
gRankingList[nIndex] = nil
|
|
|
|
|
else
|
|
|
|
|
for i = (nIndex + 1), #gRankingList
|
|
|
|
|
do
|
|
|
|
|
if bSameRanking == false
|
|
|
|
|
then
|
|
|
|
|
gRankingList[i]["nRanking"] = gRankingList[i]["nRanking"] - 1
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
gRankingList[i - 1] = gRankingList[i]
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
gRankingList[#gRankingList] = nil
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
------------------------------------------------------------
|
|
|
|
|
-- PlayerRankingInsert( RankingInfo )
|
|
|
|
|
-- gRankingList <EFBFBD><EFBFBD> <EFBFBD>÷<EFBFBD><EFBFBD>̾<EFBFBD> <EFBFBD>߰<EFBFBD>
|
|
|
|
|
-- <EFBFBD><EFBFBD>ȯ<EFBFBD><EFBFBD>
|
|
|
|
|
-- true : <EFBFBD>÷<EFBFBD><EFBFBD>̾<EFBFBD> <EFBFBD>߰<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
-- false : <EFBFBD>÷<EFBFBD><EFBFBD>̾<EFBFBD> <EFBFBD>߰<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
------------------------------------------------------------
|
|
|
|
|
function PlayerRankingInsert( RankingInfo )
|
|
|
|
|
cExecCheck( "PlayerRankingInsert" )
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
local nInsertInx = 1
|
|
|
|
|
local nRankingCnt = #gRankingList
|
|
|
|
|
local nRankingPlus = 1
|
|
|
|
|
|
|
|
|
|
RankingInfo["nRanking"] = 0
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-- gRankingList <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>߰<EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD>ġ ã<EFBFBD><EFBFBD>
|
|
|
|
|
for i = 1, nRankingCnt
|
|
|
|
|
do
|
|
|
|
|
-- <EFBFBD>߰<EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <EFBFBD><EFBFBD> <EFBFBD><EFBFBD>ġ<EFBFBD><EFBFBD> RankingInfo <EFBFBD>߰<EFBFBD>
|
|
|
|
|
if gRankingList[i]["nScore"] < RankingInfo["nScore"]
|
|
|
|
|
then
|
|
|
|
|
-- <EFBFBD><EFBFBD>ŷ <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>ȵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <EFBFBD><EFBFBD>ŷ <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
if RankingInfo["nRanking"] == 0
|
|
|
|
|
then
|
|
|
|
|
RankingInfo["nRanking"] = gRankingList[i]["nRanking"]
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
nInsertInx = i
|
|
|
|
|
break
|
|
|
|
|
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>.
|
|
|
|
|
if gRankingList[i]["nScore"] == RankingInfo["nScore"]
|
|
|
|
|
then
|
|
|
|
|
RankingInfo["nRanking"] = gRankingList[i]["nRanking"]
|
|
|
|
|
nRankingPlus = 0
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
nInsertInx = i + 1
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-- nInsertInx Ȯ<EFBFBD><EFBFBD>
|
|
|
|
|
if nInsertInx > EVENT_INFO["MaxRanking"]
|
|
|
|
|
then
|
|
|
|
|
-- <EFBFBD>÷<EFBFBD><EFBFBD>̾<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>߰<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
return false
|
|
|
|
|
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>
|
|
|
|
|
if nRankingCnt == nInsertInx
|
|
|
|
|
then
|
|
|
|
|
if nInsertInx < EVENT_INFO["MaxRanking"]
|
|
|
|
|
then
|
|
|
|
|
gRankingList[nInsertInx]["nRanking"] = gRankingList[nInsertInx]["nRanking"] + nRankingPlus
|
|
|
|
|
gRankingList[nInsertInx + 1] = gRankingList[nInsertInx]
|
|
|
|
|
end
|
|
|
|
|
elseif nRankingCnt > nInsertInx
|
|
|
|
|
then
|
|
|
|
|
for i = nRankingCnt, nInsertInx, -1
|
|
|
|
|
do
|
|
|
|
|
if (i + 1) <= EVENT_INFO["MaxRanking"]
|
|
|
|
|
then
|
|
|
|
|
gRankingList[i]["nRanking"] = gRankingList[i]["nRanking"] + nRankingPlus
|
|
|
|
|
gRankingList[i + 1] = gRankingList[i]
|
|
|
|
|
end
|
|
|
|
|
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>
|
|
|
|
|
if RankingInfo["nRanking"] == 0
|
|
|
|
|
then
|
|
|
|
|
if nRankingCnt == 0
|
|
|
|
|
then
|
|
|
|
|
RankingInfo["nRanking"] = 1
|
|
|
|
|
else
|
|
|
|
|
RankingInfo["nRanking"] = gRankingList[nInsertInx - 1]["nRanking"] + 1
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-- <EFBFBD>÷<EFBFBD><EFBFBD>̾<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>߰<EFBFBD>
|
|
|
|
|
gRankingList[nInsertInx] = RankingInfo
|
|
|
|
|
return true
|
|
|
|
|
end
|