Example #1
0
        void MakeMove()
        {
            oldPos = new Pos2D();
            newPos = new Pos2D();
            oldPos = Game.Player.position;
            switch (InputHandler.mods[0])
            {
            case "u":
            case "up":
                newPos = new Pos2D(oldPos.x, oldPos.y - 1);
                break;

            case "d":
            case "down":
                newPos = new Pos2D(oldPos.x, oldPos.y + 1);
                break;

            case "l":
            case "left":
                newPos = new Pos2D(oldPos.x - 1, oldPos.y);
                break;

            case "r":
            case "right":
                newPos = new Pos2D(oldPos.x + 1, oldPos.y);
                break;

            default:
                newPos = oldPos;
                break;
            }
            if (CollisionHandler.CheckForObjInWorld(newPos, out Gameobjekt gameobjektHit))
            {
                if (gameobjektHit.hasCollision)
                {
                    moveObstruckted = true;
                }
                else
                {
                    moveObstruckted      = false;
                    Game.Player.position = newPos;
                }
            }
            else
            {
                moveObstruckted      = false;
                Game.Player.position = newPos;
            }
        }