private void Tick(object sender, EventArgs e)
        {
            if (Status != (EntityStatus)Api.Player.Status)
            {
                Status = (EntityStatus)Api.Player.Status;
                StatusChanged(this, new StatusChangedEventArgs {
                    Status = Status
                });
            }
            if (Zone != CurrentZone)
            {
                Zone = CurrentZone;
                ZoneChanged(this, EventArgs.Empty);
            }
            CastCheck();
            if (OldPosition.Equals(CurrentPosition))
            {
                IsMoving = false;
            }
            else if (!OldPosition.Equals(CurrentPosition))
            {
                IsMoving = true;

                OldPosition = CurrentPosition;
                if (Tasks.Huntertask.Options.RecordWaypoints)
                {
                    Navi.LearnRoutine();
                }
            }
        }
Exemplo n.º 2
0
        private void Save(SideButton sideButton)
        {
            if (!Position.HasErrors)
            {
                switch (sideButton)
                {
                case SideButton.Add:
                    Position.Insert();
                    Positions.Add(Position);
                    break;

                case SideButton.Edit:
                    Position.Update();
                    OldPosition.Copy(Position);
                    break;
                }
                ReturnState(sideButton);
            }
            else
            {
                RadWindow.Alert(new DialogParameters
                {
                    Content = "Ada data yg masih kosong",
                    Owner   = Application.Current.MainWindow
                });
            }
        }
Exemplo n.º 3
0
 public override string ToString()
 {
     return(Piece.Type.ToNotationLetter() +
            OldPosition.ToString() + " " +
            (PieceCaptured ? "x " : "") +
            NewPosition.ToString());
 }
Exemplo n.º 4
0
 public void OnPositionChanged(object sender, RoutedEventArgs e)
 {
     if (!OldPosition.Equals(Position))
     {
         OnPropertyChanged("Position");
         OldPosition.Set(Position);
     }
 }
Exemplo n.º 5
0
        public virtual void MoveState()
        {
            //OldX = X;
            //OldY = Y;

            OldPosition.Clear();

            foreach (var item in Position)
            {
                OldPosition.Add(new Coordinate(item));
            }
        }
Exemplo n.º 6
0
        public virtual void Draw()
        {
            // If the GameObject's position has changed since the last frame, that GameObject is drawn.
            if (!OldPosition.Equals(Position))
            {
                // To prevent 2 enemies from magically pathing into each other, we must make sure they don't.
                if (this is Enemy)
                {
                    for (int x = -2; x < 3; ++x)
                    {
                        for (int y = -2; y < 3; ++y)
                        {
                            if (Game.GameObjects[Position.X + x, Position.Y + y] == null)
                            {
                                continue;
                            }
                            if (!(Game.GameObjects[Position.X + x, Position.Y + y] == this))
                            {
                                if (Game.GameObjects[Position.X + x, Position.Y + y].Position.Equals(Position))
                                {
                                    Position = OldPosition;
                                }
                            }
                        }
                    }
                }
                Game.GameObjects[OldPosition.X, OldPosition.Y] = null;
                Game.GameObjects[Position.X, Position.Y]       = this;

                Erase();
                Console.ForegroundColor = Color;
                for (int i = 0; i < Game.BoxSize.X; ++i)
                {
                    for (int j = 0; j < Game.BoxSize.Y; ++j)
                    {
                        Console.SetCursorPosition(Game.BoxSize.X * Position.X + i + offset.X, Game.BoxSize.Y * Position.Y + j + offset.Y);
                        Console.Write("█");
                        Statistics.Stats["Boxes"].Add(1);
                    }
                }
            }
        }
Exemplo n.º 7
0
 public override string ToString()
 {
     return(OldPosition.ToString() + NewPosition.ToString());
 }