|
|
require("game.proto.414.Require414")
|
|
require("game.empower.EmpowerModel")
|
|
require("game.empower.EmpowerConst")
|
|
require("game.empower.EmpowerBaseView")
|
|
require("game.empower.EmpowerShopView")
|
|
require("game.empower.EmpowerShopItem")
|
|
require("game.empower.EmpowerExchangeView")
|
|
require("game.empower.EmpowerTreasureView")
|
|
require("game.empower.EmpowerTipsView")
|
|
require("game.empower.EmpowerGridWalkView")
|
|
require("game.empower.EmpowerResetTipView")
|
|
require("game.empower.EmpowerDoubleItem")
|
|
|
|
EmpowerController = EmpowerController or BaseClass(BaseController, true)
|
|
local EmpowerController = EmpowerController
|
|
|
|
function EmpowerController:__init()
|
|
EmpowerController.Instance = self
|
|
self.model = EmpowerModel:GetInstance()
|
|
self.mainVo = RoleManager.Instance.mainRoleInfo
|
|
self:AddEvents()
|
|
self:RegisterProtocals()
|
|
end
|
|
|
|
function EmpowerController:__delete()
|
|
|
|
end
|
|
|
|
function EmpowerController:RegisterProtocals( )
|
|
self:RegisterProtocal(41400, "on41400")
|
|
self:RegisterProtocal(41401, "on41401")
|
|
self:RegisterProtocal(41402, "on41402")
|
|
self:RegisterProtocal(41403, "on41403")
|
|
self:RegisterProtocal(41404, "on41404")
|
|
self:RegisterProtocal(41405, "on41405")
|
|
self:RegisterProtocal(41406, "on41406")
|
|
self:RegisterProtocal(41407, "on41407")
|
|
self:RegisterProtocal(41408, "on41408")
|
|
self:RegisterProtocal(41409, "on41409")
|
|
self:RegisterProtocal(41410, "on41410")
|
|
self:RegisterProtocal(41411, "on41411")
|
|
|
|
end
|
|
|
|
function EmpowerController:AddEvents()
|
|
-- local function on_game_start()
|
|
-- -- self.model:Fire(EmpowerConst.EMPOWER_REQ_EVENT, 41400)
|
|
-- -- self.model:Fire(EmpowerConst.EMPOWER_REQ_EVENT, 41401)
|
|
-- -- self.model:Fire(EmpowerConst.EMPOWER_REQ_EVENT, 41402,1)
|
|
-- self.model:Fire(EmpowerConst.EMPOWER_REQ_EVENT, 41400)
|
|
-- self.model:Fire(EmpowerConst.EMPOWER_REQ_EVENT, 41405)
|
|
-- end
|
|
-- EventSystem.Bind(GlobalEventSystem,EventName.GAME_START, on_game_start)
|
|
|
|
|
|
local function init_open_day( )--开服天数初始化
|
|
if self.mainVo.level >= Config.Moduleid[414].open_lv then
|
|
self.model:Fire(EmpowerConst.EMPOWER_REQ_EVENT, 41400)
|
|
self.model:Fire(EmpowerConst.EMPOWER_REQ_EVENT, 41405)
|
|
self.model:Fire(EmpowerConst.EMPOWER_REQ_EVENT, 41409)
|
|
ActivityIconManager:getInstance():addIcon(414, -1)
|
|
end
|
|
end
|
|
GlobalEventSystem:Bind(EventName.OPEN_DAY_INIT,init_open_day)
|
|
|
|
--升级
|
|
local function onLevelUp(level)
|
|
if level == Config.Moduleid[414].open_lv then
|
|
self.model:Fire(EmpowerConst.EMPOWER_REQ_EVENT, 41400)
|
|
self.model:Fire(EmpowerConst.EMPOWER_REQ_EVENT, 41405)
|
|
self.model:Fire(EmpowerConst.EMPOWER_REQ_EVENT, 41409)
|
|
ActivityIconManager:getInstance():addIcon(414, -1)
|
|
end
|
|
end
|
|
RoleManager.Instance.mainRoleInfo:Bind(EventName.CHANGE_LEVEL, onLevelUp)
|
|
|
|
local func_update_red_dot = function(id)
|
|
-- Message.show("EMPOWER_TREASURE_RED_DOT",tab_id)
|
|
--if not tab_id then
|
|
self.model:IsNeedRed(id)
|
|
--else
|
|
-- self.model:IsNeedRed(tab_id)
|
|
--end
|
|
end
|
|
self.model:Bind(EmpowerConst.EMPOWER_RED_DOT,func_update_red_dot)
|
|
|
|
-- 打开open_ranTest_baseView
|
|
local function open_ranTest_baseView(show,index)
|
|
print("============>>> YiRan:EmpowerController [start:79] show:",show,"index:",index)
|
|
if show then
|
|
if self.ranTest_base_view == nil then
|
|
self.ranTest_base_view = EmpowerBaseView.New()
|
|
end
|
|
if not self.ranTest_base_view:HasOpen() then
|
|
self.ranTest_base_view:Open(index or 1)
|
|
else
|
|
self.ranTest_base_view:SwitchTab(index or 1)
|
|
end
|
|
else
|
|
if self.ranTest_base_view then
|
|
self.ranTest_base_view:Close()
|
|
end
|
|
end
|
|
end
|
|
self.model:Bind(EmpowerConst.OPEN_SHOP_BASE_VIEW,open_ranTest_baseView)
|
|
|
|
-- 打开升品寻宝界面
|
|
local function open_emTreasure_baseView(show)
|
|
if show then
|
|
if self.emTreasureView == nil then
|
|
self.emTreasureView = EmpowerGridWalkView.New() --EmpowerTreasureView 这个弹珠台感觉要消失= =、先顶掉
|
|
if not self.emTreasureView:HasOpen() then
|
|
self.emTreasureView:Open()
|
|
end
|
|
end
|
|
else
|
|
if self.emTreasureView then
|
|
self.emTreasureView:Close()
|
|
end
|
|
end
|
|
end
|
|
self.model:Bind(EmpowerConst.OPEN_EMPOWER_TREASURE_VIEW,open_emTreasure_baseView)
|
|
|
|
---打开走格子界面
|
|
--local function open_GridWalkView(show)
|
|
-- if show then
|
|
-- if self.emWalkView == nil then
|
|
-- self.emWalkView = EmpowerGridWalkView.New()
|
|
-- if not self.emWalkView:HasOpen() then
|
|
-- self.emWalkView:Open()
|
|
-- end
|
|
-- end
|
|
--- else
|
|
-- if self.emWalkView then
|
|
-- self.emWalkView:Close()
|
|
-- end
|
|
-- end
|
|
--end
|
|
--self.model:Bind(EmpowerConst.OPEN_EMPOWER_GRIDWALK_VIEW,open_GridWalkView)
|
|
|
|
-- 打开Tips界面
|
|
local function open_emTips_baseView(show,txt,callback)
|
|
if show then
|
|
if self.emTipsView == nil then
|
|
self.emTipsView = EmpowerTipsView.New()
|
|
if not self.emTipsView:HasOpen() then
|
|
self.emTipsView:Open(txt,callback)
|
|
end
|
|
end
|
|
else
|
|
if self.emTipsView then
|
|
self.emTipsView:Close()
|
|
end
|
|
end
|
|
end
|
|
self.model:Bind(EmpowerConst.OPEN_EMPOWER_TIPS_VIEW,open_emTips_baseView)
|
|
|
|
---
|
|
local function func_OPEN_RESET_TIPVIEW_VIEW(vo)
|
|
if self.EmpowerResetTipView == nil then
|
|
self.EmpowerResetTipView = EmpowerResetTipView.New()
|
|
end
|
|
self.EmpowerResetTipView:Open(vo)
|
|
end
|
|
self.model:Bind(EmpowerConst.OPEN_RESET_TIPVIEW_VIEW,func_OPEN_RESET_TIPVIEW_VIEW)
|
|
|
|
--请求协议
|
|
local function ON_REQUEST_EVENT(...)
|
|
local args = {...}
|
|
if args[1] == 41401 then
|
|
self:SendFmtToGame(args[1],"cci", args[2], args[3],args[4])
|
|
elseif args[1] == 41402 then
|
|
self:SendFmtToGame(args[1], "chs", args[2], args[3], args[4])
|
|
elseif args[1] == 41403 or args[1] == 41406 then
|
|
self:SendFmtToGame(args[1],"h",args[2])
|
|
elseif args[1] == 41408 then
|
|
self:SendFmtToGame(args[1],"ih",args[2], args[3])
|
|
elseif args[1] == 41410 then
|
|
self:SendFmtToGame(args[1],"c",args[2])
|
|
else
|
|
self:SendFmtToGame(args[1])
|
|
end
|
|
end
|
|
self.model:Bind(EmpowerConst.EMPOWER_REQ_EVENT, ON_REQUEST_EVENT)
|
|
end
|
|
|
|
----请求基本信息
|
|
function EmpowerController:on41400( )
|
|
local vo = SCMD41400.New(true)
|
|
--print("=============>>> YiRan:EmpowerController [start:153] vo SCMD41400------------------------------------------")
|
|
--PrintTable(vo)
|
|
--print("=============>>> YiRan:EmpowerController [end] ------------------------------------------")
|
|
if not vo then return end
|
|
self.model:SetVo41400(vo)
|
|
self.model:Fire(EmpowerConst.UPDATA_EMTREASURE_VIEW_INFO, vo)
|
|
self.model:Fire(EmpowerConst.EMPOWER_RED_DOT,EmpowerConst.EmpowerViewType.EmpowerTreasure)
|
|
self.model:Fire(EmpowerConst.UPDATA_EMTREASURE_QUALITYS_INFO) -- 在收到协议再刷新质量
|
|
-- if vo then
|
|
-- ErrorCodeShow(vo.errcode)
|
|
-- end
|
|
end
|
|
|
|
function EmpowerController:on41401( )
|
|
local vo = SCMD41401.New(true)
|
|
if not vo then return end
|
|
--print("=============>>> YiRan:EmpowerController [start:118] vo41401 ------------------------------------------")
|
|
--PrintTable(vo)
|
|
--print("=============>>> YiRan:EmpowerController [end] ------------------------------------------")
|
|
if vo.errcode == 1 then
|
|
Message.show("发射成功","success")
|
|
else
|
|
ErrorCodeShow(vo.errcode)
|
|
end
|
|
|
|
end
|
|
|
|
function EmpowerController:on41402( )
|
|
local vo = SCMD41402.New(true)
|
|
--Message.show("vo.result:",vo.result)
|
|
--print("=============>>> YiRan:EmpowerController [start:118] vo41402 ------------------------------------------")
|
|
--PrintTable(vo)
|
|
--print("=============>>> YiRan:EmpowerController [end] ------------------------------------------")
|
|
if vo.errcode == 1 then
|
|
--Message.show("发送41400")
|
|
self.model:Fire(EmpowerConst.EMPOWER_REQ_EVENT, 41400)
|
|
else
|
|
ErrorCodeShow(vo.errcode)
|
|
end
|
|
end
|
|
|
|
--[[
|
|
################ 领取充能节点奖励 #################
|
|
protocol=41403
|
|
{
|
|
c2s{}
|
|
s2c{
|
|
errcode:int32 // 返回结果
|
|
goods_list:array{
|
|
goods_type :int8
|
|
goods_id :int32
|
|
num :int16
|
|
}
|
|
}
|
|
}
|
|
]]
|
|
|
|
function EmpowerController:on41403( )
|
|
local vo = SCMD41403.New(true)
|
|
if vo.errcode == 1 then
|
|
|
|
local list = {}--vo.goods_list
|
|
|
|
for k,v in pairs( vo.goods_list) do
|
|
local list_s = {}
|
|
list_s[1] = v.goods_type
|
|
list_s[2] = v.goods_id
|
|
list_s[3] = v.num
|
|
|
|
table.insert(list,list_s)
|
|
end
|
|
|
|
data.award = list
|
|
data.not_show_anim = true
|
|
print("=============>>> YiRan:EmpowerController [start:256] data ------------------------------------------")
|
|
PrintTable(data)
|
|
print("=============>>> YiRan:EmpowerController [end] ------------------------------------------")
|
|
GlobalEventSystem:Fire(EventName.OPEN_COM_AWARD_RESULT_VIEW,data)
|
|
else
|
|
ErrorCodeShow(vo.errcode)
|
|
end
|
|
-- print("=============>>> YiRan:EmpowerController [start:172] vo41403 ------------------------------------------")
|
|
-- PrintTable(vo)
|
|
-- print("=============>>> YiRan:EmpowerController [end] ------------------------------------------")
|
|
end
|
|
|
|
function EmpowerController:on41404( )
|
|
local vo = SCMD41404.New(true)
|
|
if vo.errcode == 1 then
|
|
self.model:Fire(EmpowerConst.EMPOWER_REQ_EVENT, 41400)
|
|
|
|
elseif vo.errcode == 4140006 then
|
|
local function ok()
|
|
OpenFun.Open(450,1)
|
|
end
|
|
Alert.show("重置次数不足,是否前往提升VIP等级?",Alert.Type.Two,ok)
|
|
else
|
|
ErrorCodeShow(vo.errcode)
|
|
end
|
|
--print("=============>>> YiRan:EmpowerController [start:172] vo41404 ------------------------------------------")
|
|
--PrintTable(vo)
|
|
--print("=============>>> YiRan:EmpowerController [end] ------------------------------------------")
|
|
end
|
|
|
|
--[[
|
|
|
|
################ 附能商店 #################
|
|
protocol=41405
|
|
{
|
|
c2s{}
|
|
s2c{
|
|
reset_count:int16 // 商店刷新次数
|
|
shop_list:array{
|
|
index:int16 // 商店条目
|
|
state:int8 // 0未领|1已领
|
|
}
|
|
time:int32 // 结束时间
|
|
}
|
|
}
|
|
]]
|
|
function EmpowerController:on41405( )
|
|
local vo = SCMD41405.New(true)
|
|
if vo and vo.shop_list then
|
|
self.model:SetEquipShopList(vo)
|
|
self.model:Fire(EmpowerConst.UPDATA_EMTREASURE_SHOP_INFO) -- 刷新商店状态
|
|
self.model:Fire(EmpowerConst.EMPOWER_RED_DOT,EmpowerConst.EmpowerViewType.EmpowerShop)
|
|
end
|
|
--print("=============>>> YiRan:EmpowerController [start:224] vo41405 ------------------------------------------")
|
|
--PrintTable(vo)
|
|
--print("=============>>> YiRan:EmpowerController [end] ------------------------------------------")
|
|
end
|
|
|
|
function EmpowerController:on41406( )
|
|
local vo = SCMD41406.New(true)
|
|
--print("=============>>> YiRan:EmpowerController [start:224] on41406 ------------------------------------------")
|
|
--PrintTable(vo)
|
|
--print("=============>>> YiRan:EmpowerController [end] ------------------------------------------")
|
|
if vo.errcode == 1 then
|
|
Message.show("购买成功","success")
|
|
self.model:Fire(EmpowerConst.EMPOWER_REQ_EVENT, 41405)
|
|
else
|
|
ErrorCodeShow(vo.errcode)
|
|
end
|
|
end
|
|
|
|
function EmpowerController:on41407( )
|
|
local vo = SCMD41407.New(true)
|
|
--print("=============>>> YiRan:EmpowerController [start:224] on41407 ------------------------------------------")
|
|
--PrintTable(vo)
|
|
--print("=============>>> YiRan:EmpowerController [end] ------------------------------------------")
|
|
if vo.errcode == 1 then
|
|
Message.show("刷新成功")
|
|
self.model:Fire(EmpowerConst.EMPOWER_REQ_EVENT, 41405)
|
|
else
|
|
ErrorCodeShow(vo.errcode)
|
|
end
|
|
end
|
|
|
|
function EmpowerController:on41408( )
|
|
local vo = SCMD41408.New(true)
|
|
--print('Msh:EmpowerController.lua[351] vo', vo.errcode)
|
|
if vo.errcode == 1 then
|
|
Message.show("兑换成功","success")
|
|
self.model:Fire(EmpowerConst.UPDATE_EXCHANGE_VIEW)
|
|
else
|
|
ErrorCodeShow(vo.errcode)
|
|
end
|
|
end
|
|
|
|
--[[
|
|
############# 格子界面 ##############
|
|
protocol=41409
|
|
{
|
|
c2s{}
|
|
s2c{
|
|
turn :int8 // 轮次
|
|
step :int16 // 当前步数
|
|
reset_count:int8 // 重置次数
|
|
free_count :int8 // 剩余免费次数
|
|
show_reward:array{ // 奖励展示
|
|
step_id:int16
|
|
is_double:int8 // 1单倍 2双倍
|
|
step_reward:array{
|
|
good_id:int32
|
|
good_num:int32
|
|
}
|
|
}
|
|
}
|
|
}
|
|
]]
|
|
function EmpowerController:on41409( )
|
|
local vo = SCMD41409.New(true)
|
|
--print("=============>>> YiRan:EmpowerController [start:224] on41409 ------------------------------------------")
|
|
--PrintTable(vo)
|
|
--print("=============>>> YiRan:EmpowerController [end] ------------------------------------------")
|
|
if vo.errcode == 1 then
|
|
self.model:SetGridGameInfo(vo)
|
|
self.model:Fire(EmpowerConst.UPDATA_EMGRIDWALK_INFO)
|
|
self.model:SetIsDoubleTime(vo.times)
|
|
self.model:UpdateMainIconState()
|
|
else
|
|
ErrorCodeShow(vo.errcode)
|
|
end
|
|
end
|
|
|
|
--[[
|
|
############## 走格子 ###############
|
|
protocol=41410
|
|
{
|
|
c2s{
|
|
type:int8 // 是否使用代金券 0不使用|1使用
|
|
}
|
|
s2c{
|
|
res:int32 // 1成功 0失败
|
|
walk:int8 // 随机的步数
|
|
new_step:int16 // 走之后的步数
|
|
}
|
|
}]]
|
|
function EmpowerController:on41410( )
|
|
local vo = SCMD41410.New(true)
|
|
--print("=============>>> YiRan:EmpowerController [start:224] on41410 ------------------------------------------")
|
|
--PrintTable(vo)
|
|
--print("=============>>> YiRan:EmpowerController [end] ------------------------------------------")
|
|
if vo.res == 1 then
|
|
self.model:Fire(EmpowerConst.EMPOWER_REQ_EVENT, 41409)
|
|
|
|
self.model:Fire(EmpowerConst.UPDATA_EMGRIDWALK_INFO41410,vo)
|
|
--self.model.41410_INFO = vo
|
|
else
|
|
ErrorCodeShow(vo.res)
|
|
end
|
|
end
|
|
|
|
--[[
|
|
############### 重置 ###############
|
|
protocol=41411
|
|
{
|
|
c2s{}
|
|
s2c{
|
|
res:int32 //1成功 0失败 另外会推40500和40501
|
|
}
|
|
}]]
|
|
function EmpowerController:on41411( )
|
|
local vo = SCMD41411.New(true)
|
|
print("=============>>> YiRan:EmpowerController [start:224] on41411 ------------------------------------------")
|
|
PrintTable(vo)
|
|
print("=============>>> YiRan:EmpowerController [end] ------------------------------------------")
|
|
if vo.res == 1 then
|
|
self.model:Fire(EmpowerConst.RESET_EMGRIDWALK_SUCCESS)
|
|
else
|
|
ErrorCodeShow(vo.res)
|
|
end
|
|
end
|