Exemple #1
0
        public static void Kick(MineProxy.Control.Player player, string reason)
        {
            ControlMessage cm = new ControlMessage();

            cm.Kick          = new Kick();
            cm.Kick.Username = player.Username;
            cm.Kick.Reason   = reason;
            Send(cm);
        }
        /*
         *      void ShowHistory (object sender, EventArgs e)
         *      {
         *              main.History.Load (SelectedUsername, main.datePick.Value);
         *      }
         */

        void TpNuxasTo(object sender, EventArgs e)
        {
            if (SelectedItem == null)
            {
                return;
            }

            MineProxy.Control.Player p = ((PlayerListItem)SelectedItem).Item;
            //player.Session.World.Send("tp nuxas " + p.Username);
        }
        void FollowPlayer(object sender, EventArgs e)
        {
            if (SelectedItem == null)
            {
                return;
            }

            MineProxy.Control.Player p = ((PlayerListItem)SelectedItem).Item;
            main.Map.Follow(p);
        }
 public static HistoryItem[] GetHistory(MineProxy.Control.Player player)
 {
     lock (list) {
         if (list.ContainsKey(player.Username) == false)
         {
             return(null);
         }
         else
         {
             return(list [player.Username].History);
         }
     }
 }
        public static void Update(MineProxy.Control.Player player)
        {
            if (player.Position == null)
            {
                return;
            }
            PlayerHistory ph;

            lock (list) {
                if (list.ContainsKey(player.Username) == false)
                {
                    ph = new PlayerHistory();
                    list.Add(player.Username, ph);
                }
                else
                {
                    ph = list [player.Username];
                }
            }
            ph.UpdateHistory(player);
        }
        void UpdateHistory(MineProxy.Control.Player player)
        {
            long step = DateTime.Now.Ticks / StepSize.Ticks;

            if (lastStep != step)
            {
                lastStep = step;

                for (int n = History.Length - 1; n > 0; n--)
                {
                    History [n] = History [n - 1];
                }
                History [0] = new HistoryItem();
            }
            if (History [0] == null)
            {
                History [0] = new HistoryItem();
            }
            History [0].Position  = player.Position.Clone();
            History [0].Dimension = player.Dimension;
            History [0].Attached  = player.AttachedTo;
        }
Exemple #7
0
        void DrawPlayer(Graphics g, StatusControl.PlayerListItem i)
        {
            MineProxy.Control.Player p = i.Item;
            if (p.Position == null)
            {
                return;
            }

            CoordDouble np = p.Position.ToMapDimensions((Dimensions)p.Dimension);
            Point       pp = FromCoord(np);

            //Röd Cirkel
            int r = 2;

            if (i.Selected)
            {
                g.DrawEllipse(Pens.Red, pp.X - r, pp.Y - r, r * 2, r * 2);

                //Historik
                var hist = PlayerHistory.GetHistory(p);
                foreach (var hi in hist)
                {
                    if (hi == null)
                    {
                        continue;
                    }
                    Point hp = FromCoord(hi.Position.ToMapDimensions((Dimensions)hi.Dimension));
                    g.DrawEllipse(Pens.Red, hp.X - r, hp.Y - r, r * 2, r * 2);
                }
            }
            //Namnbricka
            Size  size = g.MeasureString(p.Username, Font, 500).ToSize();
            Color back = Color.White;

            if (p.Dimension == -1)
            {
                back = Color.Red;
            }
            if (p.Dimension == 1)
            {
                back = Color.Yellow;
            }
            if (p.Session != "RealSession" && p.Session != "VanillaSession")
            {
                back = Color.Gray;
            }
            using (Brush b = new SolidBrush(System.Drawing.Color.FromArgb(128, back)))
                g.FillRectangle(b, pp.X, pp.Y, size.Width, size.Height);
            if (i.Selected)
            {
                g.DrawRectangle(Pens.White, pp.X, pp.Y, size.Width, size.Height);
            }



            g.DrawString(p.Username, this.Font, Brushes.Black, pp.X, pp.Y);

            //Höjd
            int h = (int)(p.Position.Y / 8);

            g.DrawRectangle(Pens.Black, pp.X, pp.Y - 32, r, 32);
            using (Brush b = new SolidBrush(back))
                g.FillRectangle(b, pp.X, pp.Y - h, r, h);


            //g.DrawLine (Pens.Red, Width / 2, Height / 2, (float)x, (float)y);
        }
Exemple #8
0
 public void Follow(MineProxy.Control.Player p)
 {
     FollowUser = p.Username;
 }
Exemple #9
0
 public static void Ban(MineProxy.Control.Player player, DateTime until, string reason)
 {
     Ban(player.Username, until, reason);
 }