root/src/AIDemos/GameClasses/GameActor.cs

User picture

Author: conkerjo

Revision: 30 («Previous)


File Size: 1.12 KB

(July 01, 2009 23:06 UTC) Almost 3 years ago

Refactoring

 
Show/hide line numbers
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Brains.Framework;
using AIRendering;
using Microsoft.Xna.Framework;

namespace AIDemos.GameClasses
{
    public class GameActor:DrawableActor
    {
        public GameActor(Vector2 position,float radius):base(position,radius)
        {
        }

        public override void Update(Microsoft.Xna.Framework.GameTime gameTime)
        {
            base.Update(gameTime);
            WrapAround();
        }

        private void WrapAround()
        {
            Vector2 newPosition=Position;
            Vector2 topLeft = ParentWorld.Map.TopLeft;
            Vector2 bottomRight=ParentWorld.Map.BottomRight;

            if (Position.X < 0)
                newPosition.X = bottomRight.X;
            if (Position.X > bottomRight.X)
                newPosition.X = topLeft.X;
            
            if (Position.Y < 0)
                newPosition.Y = bottomRight.Y;
            if (Position.Y > bottomRight.Y)
                newPosition.Y = topLeft.Y;
            Position = newPosition;
        }
    }
}