diff options
Diffstat (limited to 'game/GameScene.cpp')
-rw-r--r-- | game/GameScene.cpp | 32 |
1 files changed, 24 insertions, 8 deletions
diff --git a/game/GameScene.cpp b/game/GameScene.cpp index bb64d08..551f4f1 100644 --- a/game/GameScene.cpp +++ b/game/GameScene.cpp @@ -1,5 +1,5 @@ #include "GameScene.h" -#include "BackgroundSubScene.h" +#include "Config.h" #include "MoveCameraManualyScript.h" #include "PlayerSubScene.h" #include "StartGameScript.h" @@ -7,6 +7,8 @@ #include "coins/CoinPool.h" #include "coins/CoinSystemScript.h" +#include "background/BackgroundSubScene.h" + #include <cmath> #include <crepe/api/Animator.h> #include <crepe/api/Asset.h> @@ -22,7 +24,6 @@ #include <crepe/api/Sprite.h> #include <crepe/api/Transform.h> #include <crepe/types.h> -#include <iostream> using namespace crepe; using namespace std; @@ -31,10 +32,12 @@ void GameScene::load_scene() { BackgroundSubScene background(*this); GameObject camera = new_object("camera", "camera", vec2(650, 0)); - camera.add_component<Camera>(ivec2(990, 720), vec2(1100, 800), - Camera::Data{ - .bg_color = Color::RED, - }); + camera.add_component<Camera>( + ivec2(990, 720), vec2(VIEWPORT_X, VIEWPORT_Y), + Camera::Data { + .bg_color = Color::RED, + } + ); camera.add_component<BehaviorScript>().set_script<MoveCameraManualyScript>(); camera.add_component<BehaviorScript>().set_script<CoinSystemScript>(); camera.add_component<Rigidbody>(Rigidbody::Data{}); @@ -42,13 +45,26 @@ void GameScene::load_scene() { PlayerSubScene player(*this); GameObject floor = new_object("floor", "game_world", vec2(0, 325)); - floor.add_component<Rigidbody>(Rigidbody::Data{ + floor.add_component<Rigidbody>(Rigidbody::Data { .body_type = Rigidbody::BodyType::STATIC, + .collision_layer = COLL_LAY_BOT_TOP, }); floor.add_component<BoxCollider>(vec2(INFINITY, 200)); + GameObject floor_low = new_object("floor_low", "game_world", vec2(0, 350)); + floor_low.add_component<Rigidbody>(Rigidbody::Data { + .body_type = Rigidbody::BodyType::STATIC, + .collision_layer = COLL_LAY_BOT_LOW, + }); + floor_low.add_component<BoxCollider>(vec2(INFINITY, 200)); + GameObject floor_high = new_object("floor_high", "game_world", vec2(0, 300)); + floor_high.add_component<Rigidbody>(Rigidbody::Data { + .body_type = Rigidbody::BodyType::STATIC, + .collision_layer = COLL_LAY_BOT_HIGH, + }); GameObject ceiling = new_object("ceiling", "game_world", vec2(0, -325)); - ceiling.add_component<Rigidbody>(Rigidbody::Data{ + ceiling.add_component<Rigidbody>(Rigidbody::Data { .body_type = Rigidbody::BodyType::STATIC, + .collision_layer = COLL_LAY_BOT_TOP, }); ceiling.add_component<BoxCollider>(vec2(INFINITY, 200)); |