diff options
Diffstat (limited to 'Space Invaders/GameEngine')
-rw-r--r-- | Space Invaders/GameEngine/GameEngine.cs | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/Space Invaders/GameEngine/GameEngine.cs b/Space Invaders/GameEngine/GameEngine.cs index 6c5c5b0..019b0aa 100644 --- a/Space Invaders/GameEngine/GameEngine.cs +++ b/Space Invaders/GameEngine/GameEngine.cs @@ -12,6 +12,8 @@ namespace GameEngine { public List<GameObject> GameObjects = new List<GameObject>(); public Thread _listnerThread = new Thread(Input.Listner); + public Random Rand = new Random(); + private Graphics _graphics; private bool _running; @@ -132,6 +134,16 @@ namespace GameEngine { // This method is called after the frame is rendered } + public bool CollidingWith(GameObject other) { + // This method checks if 'this' collides with another GameObject + // TODO Make this check if the position contains '\0', if so we are not colliding. This will make hitboxes more natural + int x1 = other.xPos; + int x2 = other.xPos + other.Sprite.GetLength(1); + int y1 = other.yPos; + int y2 = other.yPos + other.Sprite.GetLength(0); + return (x1 <= xPos && xPos < x2 && y1 <= yPos && yPos <= y2); + } + public void ScaleSprite() { // This is called after the Update method, and scales the sprite if it has changed if (RenderedSprite == Sprite) { return; } |