static int TriggerEvent(IntPtr L) { try { int count = LuaDLL.lua_gettop(L); if (count == 1) { string arg0 = ToLua.CheckString(L, 1); UserEventManager.TriggerEvent(arg0); return(0); } else if (count == 2) { string arg0 = ToLua.CheckString(L, 1); object arg1 = ToLua.ToVarObject(L, 2); UserEventManager.TriggerEvent(arg0, arg1); return(0); } else { return(LuaDLL.luaL_throw(L, "invalid arguments to method: UserEventManager.TriggerEvent")); } } catch (Exception e) { return(LuaDLL.toluaL_exception(L, e)); } }
public override void OnClose() { base.OnClose(); Scheduler.Instance.Stop("ChangeMatchingText"); //注销事件 UserEventManager.UnRegisterEvent("rep_message_match_success"); }
public static void EnterGame() { //加载TableUI UIManager.OpenUI("Prefabs/TableUI", UIManager.Instance.BaseUIRoot, (GameObject obj) => { UserEventManager.TriggerEvent("LoginGame"); Debug.Log("CommonMethod.EnterGame Open TableUI Success!"); }); }
public override void OnClose() { base.OnClose(); if (null != playBase) { playBase.Close(); } Scheduler.Instance.Stop("UIPlay.SetCountdownTime"); UserEventManager.UnRegisterEvent("rep_message_updata_opponent_grade"); UserEventManager.UnRegisterEvent("rep_message_innings_end"); }
//注册监听 void RegisterEvent() { UserEventManager.RegisterEvent("LoginGame", (param) => { UIManager.CloseUI("Prefabs/LoginUI"); }); UserEventManager.RegisterEvent("rep_message_player_info", (param) => { rep_message_player_info repMsg = Client.Deserialize(rep_message_player_info.Parser, (byte[])param) as rep_message_player_info; PlayerData.UpdatePlayerData(repMsg.PlayerInfo); }); }
static int UnRegisterEvent(IntPtr L) { try { ToLua.CheckArgsCount(L, 1); string arg0 = ToLua.CheckString(L, 1); UserEventManager.UnRegisterEvent(arg0); return(0); } catch (Exception e) { return(LuaDLL.toluaL_exception(L, e)); } }
static int RegisterEvent(IntPtr L) { try { ToLua.CheckArgsCount(L, 2); string arg0 = ToLua.CheckString(L, 1); EventCallback arg1 = (EventCallback)ToLua.CheckDelegate <EventCallback>(L, 2); UserEventManager.RegisterEvent(arg0, arg1); return(0); } catch (Exception e) { return(LuaDLL.toluaL_exception(L, e)); } }
public override void OnOpen() { base.OnOpen(); //注册匹配成功推送 UserEventManager.RegisterEvent("rep_message_match_success", (param) => { rep_message_match_success repMsg = Client.Deserialize(rep_message_match_success.Parser, (byte[])param) as rep_message_match_success; //设置对手信息 SetPlayerInfo(repMsg.PlayerInfo, bottomInfo); //六边形 SetHexagon(repMsg.PlayerInfo, false); //状态切换 SetMatchState(1); }); //设置自己的信息 SetPlayerInfo(PlayerData.playerInfo, topInfo); //六边形 SetHexagon(PlayerData.playerInfo, true); //设置状态 SetMatchState(0); }
private void receiveData(byte[] data) { root_proto proto = new root_proto(); proto = Deserialize(root_proto.Parser, data) as root_proto; Debug.Log("Client.receiveData messageName = " + proto.MessageName); //校正服务器时间 Function.SetServerTime((long)proto.ServerTime); //数据 byte[] byteData = proto.MessageData.ToByteArray(); //取消菊花 if (0 != proto.MessageID && true == RequestLoadDict[proto.MessageID]) { //0是推送协议 LoadLayerManager.Instance.RemoveLoad(); } RequestLoadDict.Remove(proto.MessageID); //事件 UserEventManager.TriggerEvent(proto.MessageName, byteData); //激活回调函数 if (CallbackDict.ContainsKey(proto.MessageID)) { try { RequestCallback callback = CallbackDict[proto.MessageID]; if (null != callback) { callback(byteData); } CallbackDict.Remove(proto.MessageID); } catch (Exception e) { Debug.LogError(e); } } }
public override void OnOpen() { base.OnOpen(); //重设分数 leftGrade = 0; rightGrade = 0; SetGrade(0, 0); //注册对手分数变更事件 UserEventManager.RegisterEvent("rep_message_updata_opponent_grade", (param) => { rep_message_updata_opponent_grade repMsg = Client.Deserialize(rep_message_updata_opponent_grade.Parser, (byte[])param) as rep_message_updata_opponent_grade; SetGrade(0, repMsg.Grade - rightGrade); }); //注册局结束事件 UserEventManager.RegisterEvent("rep_message_innings_end", (param) => { rep_message_innings_end repMsg = Client.Deserialize(rep_message_innings_end.Parser, (byte[])param) as rep_message_innings_end; if (repMsg.HasInnings) { CommonRequest.ReqSatrtReady(); } }); //注册游戏结束事件 UserEventManager.RegisterEvent("rep_message_game_end", (param) => { rep_message_game_end repMsg = Client.Deserialize(rep_message_game_end.Parser, (byte[])param) as rep_message_game_end; UIManager.OpenUI("Prefabs/GameEndUI", UIManager.Instance.GameUIRoot, (uiObj) => { UIGameEnd uiGameEnd = uiObj.transform.GetComponent <UIGameEnd>(); uiGameEnd.RefreshUI(repMsg); //关闭UIPlay this.Close(); }); }); }