コード例 #1
0
ファイル: MapBase.cs プロジェクト: XCBOSA/ForgetiveServer
        /// <summary>
        /// 使玩家进入地图
        /// </summary>
        /// <param name="player">玩家的 <see cref="UserSocketState"/></param>
        /// <returns></returns>
        public Player JoinMap(UserSocketState player)
        {
            Player p = null;

            try
            {
                player.ReadedData = new List_String(new List <string>()
                {
                    "map", "noneUpdate"
                });
                p             = new Player();
                p.SocketState = player;
                p.Name        = player.NickName;
                p.OnPlayerDied.Reg(OnPlayerDied);
                p.MapContext = this;
                players.Add(p);
                player.PlayerContext = p;
                p.Init();
            }
            catch (Exception e)
            {
                Logger.LogError(e);
            }
            Logger.WriteLine("{0}加入了地图{1}", player.NickName, MapName);
            return(p);
        }
コード例 #2
0
ファイル: MapBase.cs プロジェクト: XCBOSA/ForgetiveServer
 void OnPlayerQuit(UserSocketState sock)
 {
     for (int i = 0; i < players.Count; i++)
     {
         if (players[i].SocketState == sock)
         {
             QuitMap(players[i]);
         }
     }
 }
コード例 #3
0
ファイル: MapBase.cs プロジェクト: XCBOSA/ForgetiveServer
 Player SocketToPlayer(UserSocketState socket)
 {
     for (int i = 0; i < players.Count; i++)
     {
         if (players[i].SocketState == socket)
         {
             return(players[i]);
         }
     }
     return(null);
 }
コード例 #4
0
ファイル: List.cs プロジェクト: XCBOSA/ForgetiveServer
 public override void OnInvoke(CommandObject[] obj)
 {
     Print("当前共 " + ForgetiveServer.UserCount + " 人在线。");
     for (int i = 0; i < ForgetiveServer.UserCount; i++)
     {
         UserSocketState user = ForgetiveServer.Users[i];
         if (user.NickName == null)
         {
             Print("没有设置名字的神秘玩家");
         }
         else
         {
             Print(i + "; " + user.NickName);
         }
     }
 }