示例#1
0
 public Client(Server server, Socket socket, byte playerId)
 {
     Socket = socket;
     Server = server;
     PlayerId = playerId;
     Leprechaun = new Leprechaun(this);
 }
        public PigAI(Server server)
        {
            Server = server;
            gravity = new Vector3(0, -Config.PhysicsGravity, 0);

            Pig = new Pig { Scale = new Vector3(Config.PigScale) };
        }
        public ItemsManager(Server server)
        {
            Server = server;
            items = new DrawableGameComponent[Config.ItemsMaxCount];

            for (byte i = 0; i < Config.ItemsMaxCount; ++i)
                CreateItem(i);

             random = new Random();
        }
        public void OnClientFinish(Server server, Client client)
        {
            lock (this)
            {
                int i = 0;
                while (i < trapList.Count)
                {
                    if (trapList[i].PlayerId == client.PlayerId)
                        trapList.RemoveAt(i);
                    else
                        ++i;
                }

                playerTrapIdPool.Remove(client.PlayerId);
            }
        }
        public MushroomAI(Server server)
            : base(server)
        {
            Mushrooms = new List<Mushroom>();

            for (int i = 0; i < Config.MushroomCount; i++)
            {
                var mushroom = new Mushroom(i, Server.Terrain)
                {
                    PrevWaypoint = (i * 2) % waypoints.Length,
                    NextWaypoint = (i * 2 + 1) % waypoints.Length
                };

                mushroom.Position = Server.Terrain.GetHeight(waypoints[mushroom.PrevWaypoint][0]);

                Mushrooms.Add(mushroom);
            }
        }
 public BasicAI(Server server)
 {
     Server = server;
 }