源战役客户端
Nelze vybrat více než 25 témat Téma musí začínat písmenem nebo číslem, může obsahovat pomlčky („-“) a může být dlouhé až 35 znaků.
 
 
 
 
 

133 řádky
5.4 KiB

require("game.KfBossTreasure.KfBossTreasureConst")
require("game.KfBossTreasure.KfBossTreasureModel")
require("game.KfBossTreasure.view.KfBossTreasureView")
require("game.KfBossTreasure.view.KfBossTreasureLvItem")
require("game.KfBossTreasure.view.KfBossTreasureTaskView")
require("game.KfBossTreasure.view.KfBossTreasureTaskItem")
require("game.KfBossTreasure.view.KfBossTreasureBuyUnlockView")
require("game.KfBossTreasure.view.KfBossTreasurePreLookView")
require("game.KfBossTreasure.view.KFBossTreasureRewardView")
KfBossTreasureController = KfBossTreasureController or BaseClass(BaseController, true)
local KfBossTreasureController = KfBossTreasureController
function KfBossTreasureController:__init()
KfBossTreasureController.Instance = self
self.model = KfBossTreasureModel:getInstance()
self:AddEvents()
self:RegisterAllProtocal()
end
function KfBossTreasureController:__delete()
end
function KfBossTreasureController:RegisterAllProtocal( )
local register_cfg = {
[33238] = {--基础信息
req_event_data = {KfBossTreasureConst.REQ_BASIC_DATA,"h"},req_func = false,
handler = function(self,scmd)-- handler_manual
if scmd.errcode == 1 then
self.model:SetBasicData(scmd)
self:CheckRedDot()
self.model:Fire(KfBossTreasureConst.ANS_BASIC_DATA)
else
ErrorCodeShow(scmd.errcode)
end
end,
},
[33239] = {--领取等级奖励
-- // 1等级奖励领取|2等级奖励一键领取
-- // 等级|一键时为0
req_event_data = {KfBossTreasureConst.REQ_GET_REWARD,"hcc"},req_func = false,
handler = function(self,scmd)-- handler_manual
if scmd.result == 1 then
GlobalEventSystem:Fire(EventName.PLAY_UI_EFFECT_SOUND,LuaSoundManager.SOUND_UI.SUCCESS)
self.model:Fire(KfBossTreasureConst.SHOW_REWARD_RESULT,scmd)
self.model:Fire(KfBossTreasureConst.REQ_BASIC_DATA,scmd.sub_type)
else
ErrorCodeShow(scmd.result)
end
end,
},
[33240] = {--购买王牌宝典
req_event_data = {KfBossTreasureConst.REQ_PAY_FOR_UNLOCK, "h"},req_func = false,
handler = function(self,scmd)-- handler_manual
if scmd.result == 1 then
Message.show("购买成功!")
GlobalEventSystem:Fire(EventName.PLAY_UI_EFFECT_SOUND,LuaSoundManager.SOUND_UI.SUCCESS)
self.model:RefreshBasicPayStatus(scmd.sub_type,scmd.pay_state)
self:CheckRedDot()
self.model:Fire(KfBossTreasureConst.ANS_PAY_FOR_UNLOCK)
self.model:Fire(KfBossTreasureConst.ANS_BASIC_DATA)
self.model:Fire(KfBossTreasureConst.SHOW_REWARD_LIST,scmd.sub_type,"after_buy")
else
ErrorCodeShow(scmd.result)
end
end,
},
[33241] = {--奖励信息
req_event_data = {KfBossTreasureConst.REQ_REWARD_INFO,"h"},req_func = false,
handler = function(self,scmd)-- handler_manual
if scmd.result == 1 then
self.model:SetRewardInfo(scmd.sub_type, scmd.reward_list)
self.model:Fire(KfBossTreasureConst.ANS_REWARD_INFO)
else
ErrorCodeShow(scmd.result)
end
end,
},
[33242] = {--任务完成进度
req_event_data = {KfBossTreasureConst.REQ_TASK_PROCESS,"h"},req_func = false,
handler = function(self,scmd)-- handler_manual
if scmd.result == 1 then
self.model:SetTaskProcessInfo(scmd)
self.model:Fire(KfBossTreasureConst.ANS_TASK_PROCESS)
else
ErrorCodeShow(scmd.result)
end
end,
},
}
self:RegisterProtocalByCFG(register_cfg)
end
function KfBossTreasureController:AddEvents()
local function on_game_start()
self.model:Reset()
end
GlobalEventSystem:Bind(EventName.GAME_START, on_game_start)
local function OPEN_TASK_VIEW( sub_type )
self.kfbosstreasuretaskview = self.kfbosstreasuretaskview or KfBossTreasureTaskView.New()
self.kfbosstreasuretaskview:Open(sub_type)
end
self.model:Bind(KfBossTreasureConst.OPEN_TASK_VIEW,OPEN_TASK_VIEW)
local function SHOW_REWARD_LIST( sub_type,tag )
self.kfbosstreasureprelookview = self.kfbosstreasureprelookview or KfBossTreasurePreLookView.New()
self.kfbosstreasureprelookview:Open(sub_type,tag)
end
self.model:Bind(KfBossTreasureConst.SHOW_REWARD_LIST,SHOW_REWARD_LIST)
local function OPEN_UNLOCK_VIEW( sub_type )
self.kfbosstreasurebuyunlockview = self.kfbosstreasurebuyunlockview or KfBossTreasureBuyUnlockView.New()
self.kfbosstreasurebuyunlockview:Open(sub_type)
end
self.model:Bind(KfBossTreasureConst.OPEN_UNLOCK_VIEW,OPEN_UNLOCK_VIEW)
local function SHOW_REWARD_RESULT( data )
self.kfbosstreasurerewardview = self.kfbosstreasurerewardview or KFBossTreasureRewardView.New()
self.kfbosstreasurerewardview:Open(data)
end
self.model:Bind(KfBossTreasureConst.SHOW_REWARD_RESULT,SHOW_REWARD_RESULT)
end
function KfBossTreasureController:CheckRedDot( )
local function call_backack( )
self.model:GetAllRed(true)
self.model:Fire(KfBossTreasureConst.REFRESH_RED_DOT)
end
TimeManager.GetInstance():StartTime("ContractController_CheckRedDot", 0.5, call_backack)
end