#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include "GameScene.h" #include "Config.h" #include "MoveCameraManualyScript.h" #include "StartGameScript.h" #include "background/BackgroundSubScene.h" #include "prefab/PlayerObject.h" using namespace crepe; using namespace std; void GameScene::load_scene() { logf(Log::DEBUG, "Loading (main) GameScene..."); BackgroundSubScene background(*this); GameObject camera = new_object("camera", "camera", vec2(650, 0)); camera.add_component( ivec2(990, 720), vec2(VIEWPORT_X, VIEWPORT_Y), Camera::Data { .bg_color = Color::RED, } ); camera.add_component().set_script(); camera.add_component(Rigidbody::Data {}); PlayerObject player {new_object("player", "player", vec2(-100, 200))}; GameObject floor = new_object("floor", "game_world", vec2(0, 325)); floor.add_component(Rigidbody::Data { .body_type = Rigidbody::BodyType::STATIC, .collision_layer = COLL_LAY_BOT_TOP, }); floor.add_component(vec2(INFINITY, 200)); GameObject floor_low = new_object("floor_low", "game_world", vec2(0, 350)); floor_low.add_component(Rigidbody::Data { .body_type = Rigidbody::BodyType::STATIC, .collision_layer = COLL_LAY_BOT_LOW, }); floor_low.add_component(vec2(INFINITY, 200)); GameObject floor_high = new_object("floor_high", "game_world", vec2(0, 300)); floor_high.add_component(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::Data { .body_type = Rigidbody::BodyType::STATIC, .collision_layer = COLL_LAY_BOT_TOP, }); ceiling.add_component(vec2(INFINITY, 200)); GameObject start_game_script = new_object("start_game_script", "script", vec2(0, 0)); start_game_script.add_component().set_script(); } string GameScene::get_name() const { return "scene1"; }