Пример #1
0
        void Robot_Spawn(Robot sender)
        {
            List<Player> temp = new List<Player>(Players);
            foreach (Player P in temp) {
                P.PlayerJoins(sender);
            }

            Spacecraft.Log("Bot " + sender.name + " has booted");
            MessageAll(Color.Announce + "Bot " + Spacecraft.StripColors(sender.name) + " has joined!");
        }
Пример #2
0
 void Robot_Disconnect(Robot Player)
 {
     byte ID = Player.playerID;
     Robots.Remove(Player);
     List<Player> temp = new List<Player>(Players);
     foreach (Player P in temp) {
         P.PlayerDisconnects(ID);
     }
     Spacecraft.Log("Bot " + Player.name + " has shut down");
     MessageAll(Color.Announce + "Bot " + Spacecraft.StripColors(Player.name) + " has left");
 }
Пример #3
0
 void Robot_Move(Robot sender, Position dest, byte heading, byte pitch)
 {
     List<Player> temp = new List<Player>(Players);
     foreach (Player P in temp) {
         P.PlayerMoves(sender, dest, heading, pitch);
     }
 }
Пример #4
0
        public Robot SpawnRobot(Position pos, string name)
        {
            Robot Robot = new Robot(name);
            Robot.pos = pos;

            Robot.Spawn += new Robot.RobotSpawnHandler(Robot_Spawn);
            //Robot.Message += new Player.PlayerMsgHandler(Player_Message);
            Robot.Move += new Robot.RobotMoveHandler(Robot_Move);
            //Robot.BlockChange += new Player.PlayerBlockChangeHandler(Player_BlockChange);
            Robot.Disconnect += new Robot.RobotDisconnectHandler(Robot_Disconnect);

            Robots.Add(Robot);
            Robot.Start();
            return Robot;
        }
Пример #5
0
 public virtual void PlayerMoves(Robot Player, Position dest, byte heading, byte pitch)
 {
     conn.SendPlayerMovement(Player, dest, heading, pitch, false);
 }
Пример #6
0
 public virtual void PlayerJoins(Robot Player)
 {
     conn.HandlePlayerSpawn(Player);
 }
Пример #7
0
        public void SendPlayerMovement(Robot player, Position dest, byte heading, byte pitch, bool self)
        {
            PlayerMovePacket packet = new PlayerMovePacket();
            packet.PlayerID = player.playerID;
            if (self)
                packet.PlayerID = 255;
            packet.X = player.pos.x;
            packet.Y = player.pos.y;
            packet.Z = player.pos.z;
            packet.Heading = heading;
            packet.Pitch = pitch;

            SendPacket(packet);
        }
Пример #8
0
 public void HandlePlayerSpawn(Robot Player)
 {
     PlayerSpawnPacket packet = new PlayerSpawnPacket();
     packet.PlayerID = Player.playerID;
     packet.Name = Player.name;
     packet.X = Player.pos.x;
     packet.Y = Player.pos.y;
     packet.Z = Player.pos.z;
     packet.Heading = Player.heading;
     packet.Pitch = Player.pitch;
     SendPacket(packet);
 }