protected override void CollisionAfter(Collidable <MonkeyBoard> otherCollidable, CollisionStatus direction)
        {
            if (!(otherCollidable is Monkey) && !(otherCollidable is BasicWeapon) && otherCollidable is Collidable <MonkeyBoard> )
            {
                RemoveMovement(PreviousMovement);

                if (direction == CollisionStatus.CollisionFromRight)
                {
                    PreviousMovement = new SlideLeftRight(Board.CalculateFineness(-MovementSpeedProportion));
                }
                else if (direction == CollisionStatus.CollisionFromLeft)
                {
                    PreviousMovement = new SlideLeftRight(Board.CalculateFineness(MovementSpeedProportion));
                }

                // changes the direction to reverse
                AddMovement(PreviousMovement);
            }

            base.CollisionAfter(otherCollidable, direction);
        }
 protected override void InitializeMovement()
 {
     base.InitializeMovement();
     PreviousMovement = new SlideLeftRight(Board.CalculateFineness(MovementSpeedProportion));
     AddMovement(PreviousMovement);
 }