示例#1
0
 /// <summary>
 /// Bounces the Sprite off the wall of the LimitBox
 /// </summary>
 /// <param name="limitObject"> The LimitObject holding data for Limiting </param>
 public static void Bounce(LimitObject limitObject)
 {
     if (limitObject.Direction == Direction.North || limitObject.Direction == Direction.South)
         limitObject.LimitingSprite.Velocity.Y *= -1;
     else if (limitObject.Direction == Direction.East || limitObject.Direction == Direction.West)
         limitObject.LimitingSprite.Velocity.X *= -1;
 }
示例#2
0
 /// <summary>
 /// Wraps the Sprite round its LimitBox by moving to other side 
 /// </summary>
 /// <param name="limitObject"> The LimitObject holding data for Limiting </param>
 public static void Wrap(LimitObject limitObject)
 {
     if (limitObject.Direction == Direction.North)
         limitObject.LimitingSprite.Position.Y += (limitObject.LimitingSprite.LimitBox.Height + limitObject.LimitingSprite.Size.Y);
     else if (limitObject.Direction == Direction.South)
         limitObject.LimitingSprite.Position.Y -= (limitObject.LimitingSprite.LimitBox.Height + limitObject.LimitingSprite.Size.Y);
     else if (limitObject.Direction == Direction.East)
         limitObject.LimitingSprite.Position.X -= (limitObject.LimitingSprite.LimitBox.Width + limitObject.LimitingSprite.Size.X);
     else if (limitObject.Direction == Direction.West)
         limitObject.LimitingSprite.Position.X += (limitObject.LimitingSprite.LimitBox.Width + limitObject.LimitingSprite.Size.X);
 }