internal bool DispatchPeerMsg(RoomPeer peer, int id, object msg) { if (peer == null) { return false; } peer.InsertLogicMsg(id, msg); return true; }
internal User() { peer_ = new RoomPeer(); dispatcher_ = new Dispatcher(); IsEntered = false; IsDebug = false; m_UserControlState = (int)DashFire.UserControlState.User; }
internal User() { peer_ = new RoomPeer(); dispatcher_ = new Dispatcher(); IsEntered = false; IsDebug = false; IsReady = false; m_UserControlState = (int)GameFramework.UserControlState.User; }
internal static void Execute(object msg, RoomPeer peer) { Msg_CRC_GfxControlMoveStop _msg = msg as Msg_CRC_GfxControlMoveStop; if (null == _msg) { return; } peer.BroadCastMsgToRoom(_msg); }
internal static void Execute(object msg, RoomPeer peer) { Msg_CRC_StopGfxImpact _msg = msg as Msg_CRC_StopGfxImpact; if (null == _msg) { return; } peer.BroadCastMsgToRoom(_msg); }
internal static void Execute(object msg, RoomPeer peer) { Msg_CRC_SendImpactToEntity _msg = msg as Msg_CRC_SendImpactToEntity; if (null == _msg) { return; } peer.BroadCastMsgToRoom(_msg); }
internal static void Execute(object msg, RoomPeer peer) { Msg_CRC_MoveMeetObstacle obstacle_msg = msg as Msg_CRC_MoveMeetObstacle; if (null == obstacle_msg) { return; } obstacle_msg.role_id = peer.RoleId; peer.BroadCastMsgToRoom(obstacle_msg); }
internal static void Execute(object msg, RoomPeer peer) { Msg_CRC_Skill skill_msg = msg as Msg_CRC_Skill; if (null == skill_msg) { return; } skill_msg.role_id = peer.RoleId; peer.BroadCastMsgToRoom(skill_msg); }
internal static void OnMoveStart(object msg, RoomPeer peer) { Msg_CRC_MoveStart move_msg = msg as Msg_CRC_MoveStart; if (null == move_msg) { return; } move_msg.role_id = peer.RoleId; peer.BroadCastMsgToCareList(move_msg); }
internal static void Execute(object msg, RoomPeer peer) { Msg_CRC_Face face_msg = msg as Msg_CRC_Face; if (null == face_msg) { return; } Msg_CRC_Face bd = face_msg; bd.role_id = peer.RoleId; peer.BroadCastMsgToRoom(bd); }
internal static void OnMoveStop(object msg, RoomPeer peer) { Msg_CRC_MoveStop move_msg = msg as Msg_CRC_MoveStop; if (null == move_msg) { return; } Msg_CRC_MoveStop bd = move_msg; bd.role_id = peer.RoleId; peer.BroadCastMsgToCareList(bd); }
internal static void Execute(object msg, RoomPeer peer) { Msg_CRC_InteractObject _msg = msg as Msg_CRC_InteractObject; if (null == _msg) { return; } Msg_CRC_InteractObject bd = _msg; bd.initiator_id = peer.RoleId; peer.BroadCastMsgToRoom(bd); }
internal void OnPeerDestroy(RoomPeer peer) { if (peer == null) { return; } RoomPeer dummy = null; if (m_KeyPeer.TryRemove(peer.GetKey(), out dummy)) { if (peer.GetConnection() != null) { if (!m_DicPeer.TryRemove(peer.GetConnection(), out dummy)) { AddToNeedDelete(peer.GetConnection()); } } } else { AddToNeedDelete(peer.GetKey()); } }
internal static void Execute(object msg, RoomPeer peer) { Msg_Ping ping = msg as Msg_Ping; if (ping == null) { LogSys.Log(LOG_TYPE.DEBUG, "warning: convert to ping message failed!"); return; } LogSys.Log(LOG_TYPE.DEBUG, "got {0} ping msg send ping time = {1}", peer.Guid, ping.send_ping_time); Msg_Pong pongBuilder = new Msg_Pong(); long curtime = TimeUtility.GetLocalMilliseconds(); pongBuilder.send_ping_time = ping.send_ping_time; pongBuilder.send_pong_time = curtime; peer.SetLastPingTime(curtime); Msg_Pong msg_pong = pongBuilder; peer.SendMessage(RoomMessageDefine.Msg_Pong, msg_pong); }
public static void Execute(object msg, RoomPeer peer) { Msg_Ping ping = msg as Msg_Ping; if (ping == null) { LogSys.Log(LOG_TYPE.DEBUG, "warning: convert to ping message failed!"); return; } LogSys.Log(LOG_TYPE.DEBUG, "got {0} ping msg send ping time = {1}", peer.Guid, ping.send_ping_time); Msg_Pong pongBuilder = new Msg_Pong(); long curtime = TimeUtility.GetLocalMilliseconds(); pongBuilder.send_ping_time = ping.send_ping_time; pongBuilder.send_pong_time = curtime; peer.SetLastPingTime(curtime); Msg_Pong msg_pong = pongBuilder; peer.SendMessage(RoomMessageDefine.Msg_Pong, msg_pong); }
internal Observer() { peer_ = new RoomPeer(); is_entered_ = false; is_idle_ = true; }
internal static void Execute(object msg, RoomPeer peer) { peer.BroadCastMsgToRoom(msg); }
internal void SendPeerMessage(RoomPeer peer, RoomMessageDefine id, object msg) { try { NetOutgoingMessage om = m_NetServer.CreateMessage(); om.Write(Serialize.Encode(msg, (int)id)); if (null != peer.GetConnection()) { NetSendResult res = m_NetServer.SendMessage(om, peer.GetConnection(), NetDeliveryMethod.ReliableOrdered, 0); if (res == NetSendResult.Dropped) { LogSys.Log(LOG_TYPE.ERROR, "SendPeerMessage {0} failed:dropped, User:{1}({2})", msg.ToString(), peer.Guid, peer.GetKey()); } } } catch (Exception ex) { LogSys.Log(LOG_TYPE.ERROR, "Exception {0}\n{1}", ex.Message, ex.StackTrace); } }
private void AddToNeedAdd(NetConnection conn, RoomPeer peer) { lock (m_LockObj) { if (!m_NeedAddConnection2Peers.ContainsKey(conn)) { m_NeedAddConnection2Peers.Add(conn, peer); } } }
private void AddToNeedAdd(uint key, RoomPeer peer) { lock (m_LockObj) { if (!m_NeedAddKey2Peers.ContainsKey(key)) { m_NeedAddKey2Peers.Add(key, peer); } } }
internal bool OnUpdateKey(uint newKey, RoomPeer peer) { bool ret = false; uint oldKey = peer.GetKey(); RoomPeer dummy; if (m_KeyPeer.TryGetValue(oldKey, out dummy)) { if (peer==dummy && m_KeyPeer.TryRemove(oldKey, out dummy)) { if (m_KeyPeer.TryAdd(newKey, peer)) { ret = true; } } } return ret; }
internal bool OnSetKey(uint key, RoomPeer peer) { if (m_KeyPeer.ContainsKey(key)) { return false; } if (!m_KeyPeer.TryAdd(key, peer)) { AddToNeedAdd(key, peer); } return true; }