private void RpcSelect(PlayerCtrlState ctrlState) { //得到玩家方向 switch (ctrlState) { case PlayerCtrlState.Left: mapID--; break; case PlayerCtrlState.Right: mapID++; break; } }
/// <summary> /// 选择地图 /// </summary> private void SelectMap(object obj) { if (readyToBegin) { return; } if (!isLocalPlayer) { return; } //获得玩家方向 PlayerCtrlState ctrlState = (PlayerCtrlState)obj; CmdSelect(ctrlState); }
private void SelectBtn(object obj) { PlayerCtrlState state = (PlayerCtrlState)obj; switch (state) { case PlayerCtrlState.Left: index--; break; case PlayerCtrlState.Right: index++; break; } index = Mathf.Clamp(index, 0, 1); startPanel.UpdateBtnStyle(Color.white, Color.black, Color.black, Color.white, index); }
/// <summary> /// 玩家选择 /// </summary> /// <param name="obj">玩家选择的方向</param> private void PlayerSelecting(object obj) { PlayerCtrlState ctrlState = (PlayerCtrlState)obj; //获取玩家选择的方向 Notify(GameEventType.PlayerSelecting, ctrlState); //广播玩家的选择 }
private void CmdSelect(PlayerCtrlState ctrlState) { RpcSelect(ctrlState); }
/// <summary> /// 广播事件 /// </summary> /// <param name="state">事件ID</param> /// <param name="obj">事件参数</param> public void NotifyEvent(PlayerCtrlState state, object obj) { eventMan.Notify((int)state, obj); }
/// <summary> /// 解注册 /// </summary> /// <param name="state">事件ID</param> /// <param name="fun">需解注册的事件</param> public void UnRegisterEvent(PlayerCtrlState state, EventFun <object> fun) { eventMan.UnRegisterEvent((int)state, fun); }