From c3c5832587bfd36d12790537c5acb36c02574ddb Mon Sep 17 00:00:00 2001
From: Indrajith K L
Date: Tue, 3 Aug 2021 23:06:26 +0530
Subject: Failed attempt to build collision detection

---
 entities/player_entity.wren | 32 +++++++++++++++++++++++++++-----
 1 file changed, 27 insertions(+), 5 deletions(-)

(limited to 'entities')

diff --git a/entities/player_entity.wren b/entities/player_entity.wren
index 194bb5f..c547e4e 100644
--- a/entities/player_entity.wren
+++ b/entities/player_entity.wren
@@ -2,26 +2,48 @@ import "graphics" for ImageData, Canvas
 import "./controls" for Controls
 import "./config" for Config
 class Player {
-    construct new(x,y) {
+    construct new(x,y, gameState) {
+        __gameState = gameState
         _x = x
         _y = y
 
         _playerSprite = ImageData.loadFromFile("assets/sprites/player.png")
     }
 
+    x { _x }
+    y { _y }
+    w { 16 }
+    h {  16 }
+
     update() {
-        if(Controls.isKeyDown(Config.KeyboardConstants["UP"])) {
+
+        var collided = __gameState.checkCollision(this)
+       
+        if(Controls.isKeyDown(Config.KeyboardConstants["UP"]) && !collided) {
             _y = _y - 1
+        } else if(Controls.isKeyDown(Config.KeyboardConstants["UP"]) && collided){
+            _y = _y + 1
         }
-        if(Controls.isKeyDown(Config.KeyboardConstants["DOWN"])) {
+
+        if(Controls.isKeyDown(Config.KeyboardConstants["DOWN"]) && !collided) {
             _y = _y + 1
+        } else if(Controls.isKeyDown(Config.KeyboardConstants["DOWN"]) && collided){
+            _y = _y - 1
         }
-        if(Controls.isKeyDown(Config.KeyboardConstants["LEFT"])) {
+
+        if(Controls.isKeyDown(Config.KeyboardConstants["LEFT"]) && !collided) {
             _x = _x - 1
+        } else if(Controls.isKeyDown(Config.KeyboardConstants["LEFT"]) && collided){
+            _x = _x + 1
         }
-        if(Controls.isKeyDown(Config.KeyboardConstants["RIGHT"])) {
+
+        if(Controls.isKeyDown(Config.KeyboardConstants["RIGHT"]) && !collided) {
             _x = _x + 1
+        } else if(Controls.isKeyDown(Config.KeyboardConstants["RIGHT"]) && collided){
+            _x = _x - 1
         }
+
+
     }
 
     draw(dt) {
-- 
cgit v1.2.3