|
require("game.proto.459.Require459")
|
|
require("game.jumpone.JumpOneModel")
|
|
require("game.jumpone.view.JumpOneMainView")
|
|
require("game.jumpone.view.JumpOneSceneView")
|
|
require("game.jumpone.view.JumpOneRoleIconOne")
|
|
require("game.jumpone.view.JumpOneRoleIconTwo")
|
|
require("game.jumpone.view.JumpOneResultView")
|
|
require("game.jumpone.view.JumpOneResultItem")
|
|
|
|
|
|
JumpOneController = JumpOneController or BaseClass(BaseController)
|
|
function JumpOneController:__init()
|
|
JumpOneController.Instance = self
|
|
self.model = JumpOneModel:getInstance()
|
|
self:RegisterAllProtocals()
|
|
self:AddAllEvents()
|
|
end
|
|
|
|
function JumpOneController:__delete()
|
|
|
|
end
|
|
|
|
function JumpOneController:AddAllEvents()
|
|
local function game_start_func()
|
|
|
|
end
|
|
GlobalEventSystem:Bind(EventName.GAME_START,game_start_func)
|
|
|
|
|
|
-- local updateInfo = function (base_type,sub_type)
|
|
-- if base_type == CustomActivityModel.CustomActBaseType.HOPE_GIFT then
|
|
-- self.model:Fire(HopeGiftModel.REQUEST_INFO,33136,sub_type)
|
|
-- end
|
|
-- end
|
|
-- CustomActivityModel:getInstance():Bind(CustomActivityModel.UPDATE_ACTIVITY_INFO,updateInfo)
|
|
|
|
|
|
--请求协议
|
|
local function onRequestProtocal(...)
|
|
|
|
local args = {...}
|
|
if args[1] == 45901 or args[1] == 45919 then
|
|
self:SendFmtToGame(args[1], "h", args[2])
|
|
elseif args[1] == 45902 then
|
|
self:SendFmtToGame(args[1], "hc", args[2], args[3])
|
|
elseif args[1] == 45909 then
|
|
self:SendFmtToGame(args[1], "ich", args[2], args[3],args[4])
|
|
elseif args[1] == 45910 then
|
|
self:SendFmtToGame(args[1], "iiichsh", args[2], args[3],args[4],args[5],args[6],args[7],args[8])
|
|
else
|
|
self:SendFmtToGame(args[1])
|
|
end
|
|
end
|
|
self.model:Bind(JumpOneModel.REQUEST_INFO, onRequestProtocal)
|
|
|
|
--升级
|
|
local function onLevelUp(level)
|
|
if Config.Modulesub["331@121"] and level == Config.Modulesub["331@121"].open_lv then
|
|
|
|
end
|
|
end
|
|
RoleManager.Instance.mainRoleInfo:Bind(EventName.CHANGE_LEVEL, onLevelUp)
|
|
|
|
|
|
--打开跳一跳主界面
|
|
local function OPEN_JUMP_ONE_MAIN_VIEW()
|
|
OpenFun.Open(331,121)
|
|
end
|
|
self.model:Bind(JumpOneModel.OPEN_JUMP_ONE_MAIN_VIEW,OPEN_JUMP_ONE_MAIN_VIEW)
|
|
|
|
local function onSceneStartHandler()
|
|
self:ChangeScene()
|
|
end
|
|
GlobalEventSystem:Bind(EventName.SCENE_LOAD_VIEW_COMPLETE,onSceneStartHandler)
|
|
|
|
--打开跳一跳场景界面
|
|
local function onOpenJumpOneSceneView(flag)
|
|
self:OpenView("JumpOneSceneView", flag)
|
|
end
|
|
self.model:Bind(JumpOneModel.OPEN_JUMP_ONE_SCENE_VIEW, onOpenJumpOneSceneView)
|
|
|
|
--打开跳一跳结算界面
|
|
local function onOpenJumpOneResultView(flag)
|
|
self:OpenView("JumpOneResultView", flag)
|
|
end
|
|
self.model:Bind(JumpOneModel.OPEN_JUMP_ONE_RESULT_VIEW, onOpenJumpOneResultView)
|
|
end
|
|
|
|
function JumpOneController:RegisterAllProtocals()
|
|
self:RegisterProtocal(45900, "Handler45900") -- 跳一跳:活动状态
|
|
self:RegisterProtocal(45901, "Handler45901") -- 跳一跳:活动数据
|
|
self:RegisterProtocal(45902, "Handler45902") -- 跳一跳:匹配状态
|
|
self:RegisterProtocal(45903, "Handler45903") -- 跳一跳:匹配队伍数据:每次全量:广播
|
|
self:RegisterProtocal(45904, "Handler45904") -- 跳一跳:倒计时开始:广播
|
|
self:RegisterProtocal(45905, "Handler45905") -- 跳一跳:比赛入场:广播
|
|
self:RegisterProtocal(45906, "Handler45906") -- 跳一跳:新生成一个台子:广播
|
|
self:RegisterProtocal(45907, "Handler45907") -- 跳一跳:当前操作玩家:广播
|
|
|
|
--self:RegisterProtocal(45908, "Handler45908") -- 跳一跳:跳跃状态:广播
|
|
|
|
self:RegisterProtocal(45909, "Handler45909") -- 跳一跳:跳跃状态:广播
|
|
self:RegisterProtocal(45910, "Handler45910") -- 跳一跳:跳跃:广播
|
|
self:RegisterProtocal(45911, "Handler45911") -- 跳一跳:积分变化:单播
|
|
self:RegisterProtocal(45912, "Handler45912") -- 跳一跳:玩家命数减1:广播
|
|
self:RegisterProtocal(45913, "Handler45913") -- 跳一跳:退出活动
|
|
self:RegisterProtocal(45914, "Handler45914") -- 跳一跳:结算信息
|
|
self:RegisterProtocal(45915, "Handler45915") -- 跳一跳:玩家离线
|
|
self:RegisterProtocal(45916, "Handler45916") -- 跳一跳:玩家入场
|
|
self:RegisterProtocal(45917, "Handler45917") -- 跳一跳:玩家离场
|
|
self:RegisterProtocal(45918, "Handler45918") -- 跳一跳:游戏结束
|
|
self:RegisterProtocal(45919, "Handler45919") -- 跳一跳:单人进入
|
|
end
|
|
|
|
--切换场景,打开对应的副本界面
|
|
function JumpOneController:ChangeScene()
|
|
local scene_mgr = SceneManager.Instance
|
|
-- 判断社团驻地情况
|
|
if scene_mgr:IsJumpOneScene(scene_mgr.last_scene_id) and not scene_mgr:IsJumpOneScene() then
|
|
self:SetMainUIVisible(true)
|
|
GlobalEventSystem:Fire(EventName.SHOW_MAIN_VIP_ROOT, false, MainUIModel.ACTIVITY_MODE) --vip充值入口
|
|
if self.model.result_info then
|
|
self.model:Fire(JumpOneModel.OPEN_JUMP_ONE_RESULT_VIEW, true)
|
|
end
|
|
elseif scene_mgr:IsJumpOneScene() then
|
|
self:SetMainUIVisible(false)
|
|
self.model:Fire(JumpOneModel.OPEN_JUMP_ONE_SCENE_VIEW, true)
|
|
GlobalEventSystem:Fire(EventName.SHOW_MAIN_VIP_ROOT, false, MainUIModel.ACTIVITY_MODE) --vip充值入口
|
|
end
|
|
|
|
if not scene_mgr:IsJumpOneScene() then
|
|
self.model:Fire(JumpOneModel.OPEN_JUMP_ONE_SCENE_VIEW, false)
|
|
self.model:ClearAllStep()
|
|
end
|
|
end
|
|
|
|
function JumpOneController:SetMainUIVisible( value ,mode)
|
|
mode = mode or MainUIModel.ACTIVITY_MODE
|
|
self:Fire(EventName.HIDE_TASK_TEAM_VIEW, not value, mode)--任务栏
|
|
-- GlobalEventSystem:Fire(EventName.SHOW_MAIN_TASK_ANNOUNCE_ROOT, not value, mode) --功能预告
|
|
GlobalEventSystem:Fire(EventName.CHANGE_RIGHT_TIP_ICON, not value, mode) --菜单伸展
|
|
|
|
GlobalEventSystem:Fire(EventName.HIDE_MINI_MAP_VIEW, not value, mode) --地图
|
|
GlobalEventSystem:Fire(EventName.HIDE_RIGHT_BOTTOM_VIEW, not value, mode) --技能
|
|
GlobalEventSystem:Fire(EventName.HIDE_MAINROLE_HEAD_VIEW, not value, mode) --角色信息
|
|
GlobalEventSystem:Fire(EventName.HIDE_MAIN_CHAT_VIEW, not value, mode) --聊天
|
|
GlobalEventSystem:Fire(EventName.HIDE_LEFT_BOTTOM_VIEW, not value, mode) --背包
|
|
GlobalEventSystem:Fire(EventName.HIDE_JOY_STICK_VIEW, not value, mode) --摇杆
|
|
end
|
|
|
|
--########### 跳一跳:活动状态 ##############
|
|
function JumpOneController:Handler45900( )
|
|
local vo = SCMD45900.New(true)
|
|
self.model:SetOpenInfo(vo)
|
|
end
|
|
|
|
--########### 跳一跳: ##############
|
|
function JumpOneController:Handler45901( )
|
|
local vo = SCMD45901.New(true)
|
|
PrintTable(vo)
|
|
self.model:SetJumoOneInfo(vo)
|
|
end
|
|
|
|
--########### 跳一跳:匹配状态 ##############
|
|
function JumpOneController:Handler45902( )
|
|
local vo = SCMD45902.New(true)
|
|
if vo.res == 1 then
|
|
self.model:SetJumoOneMatchInfo(vo)
|
|
else
|
|
ErrorCodeShow(vo.res)
|
|
end
|
|
|
|
end
|
|
|
|
--########### 跳一跳:匹配队伍数据:每次全量:广播 ##############
|
|
function JumpOneController:Handler45903( )
|
|
local vo = SCMD45903.New(true)
|
|
self.model:SetJumoOneMatchMembers(vo)
|
|
end
|
|
|
|
--########### 跳一跳:倒计时开始:广播 ##############
|
|
function JumpOneController:Handler45904( )
|
|
local vo = SCMD45904.New(true)
|
|
self.model:SetJumpOneReadyTIme(vo)
|
|
end
|
|
|
|
--########### 跳一跳:比赛入场:广播 ##############
|
|
function JumpOneController:Handler45905( )
|
|
local vo = SCMD45905.New(true)
|
|
self.model:SetJumpOneGameInfo(vo)
|
|
end
|
|
|
|
--########### 跳一跳:新生成一个台子:广播 ##############
|
|
function JumpOneController:Handler45906( )
|
|
local vo = SCMD45906.New(true)
|
|
if vo.picture ~= 0 then
|
|
PrintTable(vo)
|
|
self.model:JumpOneAddNewStep(vo)
|
|
end
|
|
end
|
|
|
|
--########### 跳一跳:当前操作玩家:广播 ##############
|
|
function JumpOneController:Handler45907( )
|
|
local vo = SCMD45907.New(true)
|
|
if vo.role_id ~= 0 then
|
|
self.model:StartJump(vo)
|
|
end
|
|
end
|
|
|
|
--########### 跳一跳:跳跃状态:广播 ##############
|
|
function JumpOneController:Handler45909( )
|
|
local vo = SCMD45909.New(true)
|
|
if vo.status == 1 then
|
|
self.model:JumpOneReadyJumpHandleFromServer(vo.role_id)
|
|
end
|
|
end
|
|
|
|
--########### 跳一跳:跳跃:广播 ##############
|
|
function JumpOneController:Handler45910( )
|
|
local vo = SCMD45910.New(true)
|
|
self.model:JumpOneDoJumpHandleFromServer(vo.role_id, vo.time,vo.status, vo.x, vo.y)
|
|
end
|
|
|
|
--########### 跳一跳:积分变化:单播 ##############
|
|
function JumpOneController:Handler45911( )
|
|
local vo = SCMD45911.New(true)
|
|
PrintTable(vo)
|
|
self.model:UpdateMemberInfo(vo)
|
|
end
|
|
|
|
--########### 跳一跳:下一个出生点 ##############
|
|
function JumpOneController:Handler45912( )
|
|
local vo = SCMD45912.New(true)
|
|
|
|
self.model:SyncGameScene(vo)
|
|
end
|
|
|
|
--########### 跳一跳:退出活动 ##############
|
|
function JumpOneController:Handler45913( )
|
|
local vo = SCMD45913.New(true)
|
|
|
|
end
|
|
|
|
--########### 跳一跳:结算信息 ##############
|
|
function JumpOneController:Handler45914( )
|
|
local vo = SCMD45914.New(true)
|
|
self.model:SetResultInfo(vo)
|
|
self.model:ResetJumoOneMatchInfo()
|
|
end
|
|
|
|
--########### 跳一跳:玩家离线 ##############
|
|
function JumpOneController:Handler45915( )
|
|
local vo = SCMD45915.New(true)
|
|
self.model:SetOffLinePlayer(vo)
|
|
end
|
|
|
|
--########### 跳一跳:玩家入场 ##############
|
|
function JumpOneController:Handler45916( )
|
|
local vo = SCMD45916.New(true)
|
|
self.model:SetOnLinePlayer(vo)
|
|
end
|
|
|
|
--########### 跳一跳:玩家离场 ##############
|
|
function JumpOneController:Handler45917( )
|
|
local vo = SCMD45917.New(true)
|
|
if vo.name ~= "" and not self.model.is_quit_game then
|
|
Message.show(string.format("%s 已退赛,轮到下一位玩家!", vo.name))
|
|
end
|
|
end
|
|
|
|
--########### 跳一跳:游戏结束 ##############
|
|
function JumpOneController:Handler45918( )
|
|
local vo = SCMD45918.New(true)
|
|
self.model:SetGameEnd(vo)
|
|
end
|
|
|
|
--########### 跳一跳:单人进入 ##############
|
|
function JumpOneController:Handler45919( )
|
|
local vo = SCMD45919.New(true)
|
|
if vo.res ~= 0 then
|
|
ErrorCodeShow(vo.res)
|
|
end
|
|
end
|