From a4d5658a066418c6e83798a2f397d63b0e6c58df Mon Sep 17 00:00:00 2001 From: Kim Date: Tue, 8 Jun 2021 11:37:56 +0200 Subject: [PATCH] [ADD] Commented main_character h and cpp files --- src/entities/main_character.cpp | 45 ++++++++++++++++++++------------- src/entities/main_character.h | 30 ++++++++++++++++++---- 2 files changed, 52 insertions(+), 23 deletions(-) diff --git a/src/entities/main_character.cpp b/src/entities/main_character.cpp index f123f24..f57959f 100644 --- a/src/entities/main_character.cpp +++ b/src/entities/main_character.cpp @@ -7,53 +7,62 @@ #include"../renderEngine/loader.h" namespace entities { - main_character::main_character(const models::TexturedModel& model, const glm::vec3& position, + MainCharacter::MainCharacter(const models::TexturedModel& model, const glm::vec3& position, const glm::vec3& rotation, float scale, const collision::Box& bounding_box) - : CollisionEntity(model, position, rotation, scale, bounding_box) { + : CollisionEntity(model, position, rotation, scale, bounding_box) + {} - } - glm::vec3 main_character::move(GLFWwindow* window) + glm::vec3 MainCharacter::Move(GLFWwindow* window) { - float movement_speed = -1.0f; - float up_down_speed = -0.2f; - float side_speed = 0; + float movement_speed = -1.0f; //Forward speed adjustment, bee is moving at a standard speedrate + float down_speed = -1.0f; //Down speed adjustment, downspeed is difference between down_speed and UP_SPEED + float side_speed = 0; //Side speed adjustment + //For gameplay with use of keyboard keys: W, A, S, D + //W: Go forward + //A: Go left + //S: Go backwards + //D: Go right + //TODO Implement CV actions if (glfwGetKey(window, GLFW_KEY_W) == GLFW_PRESS) { - movement_speed -= SPEED; + movement_speed -= SIDE_SPEED; } if (glfwGetKey(window, GLFW_KEY_S) == GLFW_PRESS) { - movement_speed += SPEED; + movement_speed += SIDE_SPEED; } if (glfwGetKey(window, GLFW_KEY_D) == GLFW_PRESS) { - side_speed += SPEED; + side_speed += SIDE_SPEED; } if (glfwGetKey(window, GLFW_KEY_A) == GLFW_PRESS) { - side_speed -= SPEED; + side_speed -= SIDE_SPEED; } if (glfwGetKey(window, GLFW_KEY_SPACE) == GLFW_PRESS) { - up_down_speed += UP_SPEED; + down_speed += UP_SPEED; } if (glfwGetKey(window, GLFW_KEY_LEFT_SHIFT) == GLFW_PRESS) { - up_down_speed -= UP_SPEED; + down_speed -= UP_SPEED; } - IncreasePosition(glm::vec3(side_speed, up_down_speed, movement_speed)); + IncreasePosition(glm::vec3(side_speed, down_speed, movement_speed)); + + //Use only for binding bee to house, such that it doesn't go outside of the room. + //TODO delete when boundingbox is implemented! if (position.x > 190) position.x = 190; else if (position.x < -190) position.x = -190; if (position.y > 350) position.y = 350; else if (position.y < -40) position.y = -40; + + //Move player bounding box according to the position on screen MoveCollisionBox(); - return glm::vec3(side_speed, up_down_speed, movement_speed ); + return glm::vec3(side_speed, down_speed, movement_speed ); } -} - - +} \ No newline at end of file diff --git a/src/entities/main_character.h b/src/entities/main_character.h index 7d7f9af..a44e268 100644 --- a/src/entities/main_character.h +++ b/src/entities/main_character.h @@ -5,12 +5,32 @@ namespace entities { - class main_character : public CollisionEntity { - const float SPEED = 1.0f; - const float UP_SPEED = 0.6f; + /* + * This class contains the information about the player model + */ + class MainCharacter : public CollisionEntity { + const float SIDE_SPEED = 0.8f; //Standard movement speed for left/right movement + const float UP_SPEED = 2.0f; //Standard movement speed for up movement public: - main_character(const models::TexturedModel& model, const glm::vec3& position, + /* + * @brief: Constructor for the main character model + * + * @param model: Model to load in as the player model + * @param position: Position of the model inside the game window + * @param rotation: Rotation of the model inside the game window + * @param scale: Size of the model + * @param bounding_box: Collision box around the player model + */ + MainCharacter(const models::TexturedModel& model, const glm::vec3& position, const glm::vec3& rotation, float scale, const collision::Box& bounding_box); - glm::vec3 move(GLFWwindow* window); + + /* + * @brief: A function to move the character inside the window + * + * @param window: The game window + * + * @return: Vector with the adjusted side_speed, down_speed, and movement_speed + */ + glm::vec3 Move(GLFWwindow* window); }; }