From 07615060da6c211e08a3d7f2e1bb9e99ffc05364 Mon Sep 17 00:00:00 2001
From: JAROWMR <jarorutjes07@gmail.com>
Date: Mon, 6 Jan 2025 17:49:39 +0100
Subject: moved and updated files

---
 game/menus/mainmenu/ITransitionScript.h | 13 +++++++++++++
 1 file changed, 13 insertions(+)
 create mode 100644 game/menus/mainmenu/ITransitionScript.h

(limited to 'game/menus/mainmenu/ITransitionScript.h')

diff --git a/game/menus/mainmenu/ITransitionScript.h b/game/menus/mainmenu/ITransitionScript.h
new file mode 100644
index 0000000..78f1016
--- /dev/null
+++ b/game/menus/mainmenu/ITransitionScript.h
@@ -0,0 +1,13 @@
+#pragma once
+
+#include <crepe/api/Script.h>
+
+class ITransitionScript : public virtual crepe::Script {
+public:
+	void frame_update(crepe::duration_t delta_time) override;
+	virtual const char* get_scene_name() const = 0;
+private:
+	float velocity = 20;
+protected:
+	bool transition = false;
+};
-- 
cgit v1.2.3


From 93aa94921e027e05d7cb9908305af225c64b1ff2 Mon Sep 17 00:00:00 2001
From: Max-001 <maxsmits21@kpnmail.nl>
Date: Wed, 8 Jan 2025 09:03:30 +0100
Subject: Make format

---
 game/Config.h                                      |  18 +-
 game/GameScene.cpp                                 |   4 +-
 game/coins/CoinPoolSubScene.cpp                    |   4 +-
 game/coins/CoinPoolSubScene.h                      |   2 +-
 game/coins/CoinScript.cpp                          |  26 ++-
 game/coins/CoinScript.h                            |   1 +
 game/coins/CoinSubScene.cpp                        |  37 ++--
 game/coins/CoinSubScene.h                          |   2 +-
 game/coins/CoinSystemScript.cpp                    | 127 +++++------
 game/coins/CoinSystemScript.h                      |  92 ++++----
 game/hud/HudConfig.h                               |  27 ++-
 game/hud/HudScript.cpp                             |  65 +++---
 game/hud/HudScript.h                               |   3 +-
 game/hud/HudSubScene.cpp                           |  67 ++++--
 game/hud/HudSubScene.h                             |   3 +-
 game/hud/SpeedScript.cpp                           |  24 +--
 game/hud/SpeedScript.h                             |   3 +-
 game/main.cpp                                      |   1 -
 game/menus/BannerSubScene.cpp                      |  53 +++--
 game/menus/BannerSubScene.h                        |   9 +-
 game/menus/ButtonNextMainMenuSubScript.cpp         |  28 +--
 game/menus/ButtonNextMainMenuSubScript.h           |   4 +-
 game/menus/ButtonSetMainMenuSubScript.cpp          |  14 +-
 game/menus/ButtonSetMainMenuSubScript.h            |   4 +-
 game/menus/ButtonSetShopSubScript.cpp              |   9 +-
 game/menus/ButtonSetShopSubScript.h                |   4 +-
 game/menus/ButtonSubScene.cpp                      | 227 ++++++++++++--------
 game/menus/ButtonSubScene.h                        |  33 +--
 game/menus/FloatingWindowSubScene.cpp              | 238 ++++++++++++---------
 game/menus/FloatingWindowSubScene.h                |  11 +-
 game/menus/IButtonScript.cpp                       |  27 +--
 game/menus/IButtonScript.h                         |   6 +-
 game/menus/IFloatingWindowScript.cpp               |  12 +-
 game/menus/IFloatingWindowScript.h                 |   3 +-
 game/menus/MenusConfig.h                           |  20 +-
 game/menus/endgame/EndGameSubScene.cpp             |  95 ++++----
 game/menus/endgame/EndGameSubScene.h               |   2 +-
 game/menus/endgame/EndGameSubScript.cpp            |  26 +--
 game/menus/endgame/EndGameSubScript.h              |   4 +-
 .../mainmenu/ButtonTransitionPreviewSubScript.cpp  |  16 +-
 .../mainmenu/ButtonTransitionPreviewSubScript.h    |   4 +-
 game/menus/mainmenu/ITransitionScript.cpp          |  21 +-
 game/menus/mainmenu/ITransitionScript.h            |   4 +-
 game/menus/mainmenu/MainMenuConfig.h               |  17 +-
 game/menus/mainmenu/MainMenuScene.cpp              | 123 ++++++-----
 game/menus/mainmenu/TransitionStartSubScript.cpp   |  11 +-
 game/menus/mainmenu/TransitionStartSubScript.h     |   2 +-
 game/menus/shop/ShopMenuScene.cpp                  |  59 ++---
 game/player/PlayerEndScript.cpp                    |   2 +-
 49 files changed, 894 insertions(+), 700 deletions(-)

(limited to 'game/menus/mainmenu/ITransitionScript.h')

diff --git a/game/Config.h b/game/Config.h
index c09a965..665b94a 100644
--- a/game/Config.h
+++ b/game/Config.h
@@ -26,20 +26,20 @@ static constexpr int VIEWPORT_X = 1100; // In game units
 static constexpr int VIEWPORT_Y = 500; // In game units
 
 // Font settings
-static constexpr const char* FONT = "Jetpackia";
-static constexpr crepe::vec2 FONTOFFSET = {0,0};
+static constexpr const char * FONT = "Jetpackia";
+static constexpr crepe::vec2 FONTOFFSET = {0, 0};
 
-// Amount of coins in game 
-static constexpr const char* TOTAL_COINS_GAME = "total_coins_game";
+// Amount of coins in game
+static constexpr const char * TOTAL_COINS_GAME = "total_coins_game";
 
-// Amount of coins in current run 
-static constexpr const char* TOTAL_COINS_RUN = "total_coins_run";
+// Amount of coins in current run
+static constexpr const char * TOTAL_COINS_RUN = "total_coins_run";
 
 // Distance
-static constexpr const char* DISTANCE_GAME = "distance_game";
-static constexpr const char* DISTANCE_RUN = "distance_run";
+static constexpr const char * DISTANCE_GAME = "distance_game";
+static constexpr const char * DISTANCE_RUN = "distance_run";
 
 // Player config
-static constexpr const char* PLAYER_NAME = "player";
+static constexpr const char * PLAYER_NAME = "player";
 static constexpr int PLAYER_SPEED = 7500; // In game units
 static constexpr int PLAYER_GRAVITY_SCALE = 60; // In game units
diff --git a/game/GameScene.cpp b/game/GameScene.cpp
index 38ac4b1..6ff2ea4 100644
--- a/game/GameScene.cpp
+++ b/game/GameScene.cpp
@@ -46,8 +46,8 @@ void GameScene::load_scene() {
 	camera.add_component<BehaviorScript>().set_script<CoinSystemScript>();
 	camera.add_component<BehaviorScript>().set_script<HudScript>();
 	camera.add_component<BehaviorScript>().set_script<SpeedScript>();
-	
-	camera.add_component<Rigidbody>(Rigidbody::Data{});
+
+	camera.add_component<Rigidbody>(Rigidbody::Data {});
 
 	PlayerSubScene player(*this);
 
diff --git a/game/coins/CoinPoolSubScene.cpp b/game/coins/CoinPoolSubScene.cpp
index 05f6bfc..f8b5b70 100644
--- a/game/coins/CoinPoolSubScene.cpp
+++ b/game/coins/CoinPoolSubScene.cpp
@@ -7,7 +7,7 @@ using namespace std;
 void CoinPoolSubScene::create_coins(crepe::Scene & scn) {
 	int amount = 0;
 	CoinSubScene coin;
-	while(amount < this->MAXIMUM_AMOUNT){
-		amount = coin.create(scn,amount);
+	while (amount < this->MAXIMUM_AMOUNT) {
+		amount = coin.create(scn, amount);
 	}
 }
diff --git a/game/coins/CoinPoolSubScene.h b/game/coins/CoinPoolSubScene.h
index 7360051..07626d6 100644
--- a/game/coins/CoinPoolSubScene.h
+++ b/game/coins/CoinPoolSubScene.h
@@ -5,7 +5,7 @@
 class CoinPoolSubScene {
 public:
 	void create_coins(crepe::Scene & scn);
+
 private:
 	static constexpr int MAXIMUM_AMOUNT = 100;
 };
-
diff --git a/game/coins/CoinScript.cpp b/game/coins/CoinScript.cpp
index 3d18780..3a2b5b0 100644
--- a/game/coins/CoinScript.cpp
+++ b/game/coins/CoinScript.cpp
@@ -11,25 +11,35 @@
 using namespace crepe;
 using namespace std;
 
-bool CoinScript::on_collision(const CollisionEvent & collisionData){
-	if(collisionData.info.other.metadata.tag != "coin") return false;
-	this->get_components_by_name<Sprite>(collisionData.info.other.metadata.name).front().get().active = false;
-	this->get_components_by_name<CircleCollider>(collisionData.info.other.metadata.name).front().get().active = false;
+bool CoinScript::on_collision(const CollisionEvent & collisionData) {
+	if (collisionData.info.other.metadata.tag != "coin") return false;
+	this->get_components_by_name<Sprite>(collisionData.info.other.metadata.name)
+		.front()
+		.get()
+		.active
+		= false;
+	this->get_components_by_name<CircleCollider>(collisionData.info.other.metadata.name)
+		.front()
+		.get()
+		.active
+		= false;
 	this->amount++;
 	return false;
 }
 
-void CoinScript::init(){
-	this->subscribe<CollisionEvent>([this](const CollisionEvent & ev) -> bool { return this->on_collision(ev); });
+void CoinScript::init() {
+	this->subscribe<CollisionEvent>([this](const CollisionEvent & ev) -> bool {
+		return this->on_collision(ev);
+	});
 }
 
 void CoinScript::fixed_update(crepe::duration_t dt) {
-	this->trigger_event(GetCoinEvent{
+	this->trigger_event(GetCoinEvent {
 		.amount_of_coins = this->amount,
 	});
 }
 
-bool CoinScript::save(){
+bool CoinScript::save() {
 	SaveManager & savemgr = this->get_save_manager();
 	savemgr.set(TOTAL_COINS_RUN, this->amount);
 	return false;
diff --git a/game/coins/CoinScript.h b/game/coins/CoinScript.h
index 6fcb64e..5718025 100644
--- a/game/coins/CoinScript.h
+++ b/game/coins/CoinScript.h
@@ -8,6 +8,7 @@ public:
 	void fixed_update(crepe::duration_t dt) override;
 	bool on_collision(const crepe::CollisionEvent & collisionData);
 	bool save();
+
 private:
 	int amount = 0;
 };
diff --git a/game/coins/CoinSubScene.cpp b/game/coins/CoinSubScene.cpp
index 63f9e89..2c9feb6 100644
--- a/game/coins/CoinSubScene.cpp
+++ b/game/coins/CoinSubScene.cpp
@@ -3,37 +3,42 @@
 #include "../Config.h"
 
 #include <crepe/api/Animator.h>
+#include <crepe/api/AudioSource.h>
 #include <crepe/api/CircleCollider.h>
 #include <crepe/api/Rigidbody.h>
 #include <crepe/api/Scene.h>
-#include <crepe/api/AudioSource.h>
 
 using namespace crepe;
 using namespace std;
 
-int CoinSubScene::create(Scene & scn,int coin_counter){
+int CoinSubScene::create(Scene & scn, int coin_counter) {
 	vec2 size = {20, 20};
 
 	string unique_name = "coin_" + to_string(coin_counter++);
 
-	GameObject coin = scn.new_object(unique_name.c_str(),"coin",vec2{650,0},0,1);
-	coin.add_component<Rigidbody>(Rigidbody::Data{
+	GameObject coin = scn.new_object(unique_name.c_str(), "coin", vec2 {650, 0}, 0, 1);
+	coin.add_component<Rigidbody>(Rigidbody::Data {
 		.body_type = Rigidbody::BodyType::KINEMATIC,
 		.kinematic_collision = false,
 		.collision_layers = {COLL_LAY_PLAYER},
 	});
-	coin.add_component<CircleCollider>((size.x / 2)-3).active = false;
-	crepe::OptionalRef<crepe::Sprite> coin_sprite = coin.add_component<Sprite>(Asset{"asset/coin/coin1_TVOS.png"}, Sprite::Data{
-																   .sorting_in_layer = SORT_IN_LAY_COINS,
-																	 .order_in_layer = 0,
-																   .size = size,
-															   });
+	coin.add_component<CircleCollider>((size.x / 2) - 3).active = false;
+	crepe::OptionalRef<crepe::Sprite> coin_sprite = coin.add_component<Sprite>(
+		Asset {"asset/coin/coin1_TVOS.png"},
+		Sprite::Data {
+			.sorting_in_layer = SORT_IN_LAY_COINS,
+			.order_in_layer = 0,
+			.size = size,
+		}
+	);
 	coin_sprite->active = false;
-	coin.add_component<Animator>(coin_sprite, ivec2{32, 32}, uvec2{8, 1},
-								 Animator::Data{
-									 .fps = 15, 
-									 .looping = true,
-								 }); 
-	coin.add_component<AudioSource>(Asset{"asset/sfx/coin_pickup_1.ogg"});
+	coin.add_component<Animator>(
+		coin_sprite, ivec2 {32, 32}, uvec2 {8, 1},
+		Animator::Data {
+			.fps = 15,
+			.looping = true,
+		}
+	);
+	coin.add_component<AudioSource>(Asset {"asset/sfx/coin_pickup_1.ogg"});
 	return coin_counter;
 }
diff --git a/game/coins/CoinSubScene.h b/game/coins/CoinSubScene.h
index ddb6450..7a1c60a 100644
--- a/game/coins/CoinSubScene.h
+++ b/game/coins/CoinSubScene.h
@@ -8,5 +8,5 @@ class Scene;
 
 class CoinSubScene {
 public:
-	int create(crepe::Scene & scn,int coin_counter);
+	int create(crepe::Scene & scn, int coin_counter);
 };
diff --git a/game/coins/CoinSystemScript.cpp b/game/coins/CoinSystemScript.cpp
index a58e3fd..1634aa9 100644
--- a/game/coins/CoinSystemScript.cpp
+++ b/game/coins/CoinSystemScript.cpp
@@ -10,17 +10,13 @@
 using namespace crepe;
 using namespace std;
 
+void CoinSystemScript::init() { engine.seed(rd()); }
 
-
-void CoinSystemScript::init() {
-	engine.seed(rd());
-}
-
-void CoinSystemScript::add_location(const crepe::vec2& location){
+void CoinSystemScript::add_location(const crepe::vec2 & location) {
 	coin_locations.push_back(CoinData(location));
 }
 
-float CoinSystemScript::preset_1(const vec2 & begin_position){
+float CoinSystemScript::preset_1(const vec2 & begin_position) {
 	vec2 top = {begin_position.x, begin_position.y - (this->ROW_OFFSET_1)};
 	vec2 bottom = {begin_position.x, begin_position.y + (this->ROW_OFFSET_1)};
 
@@ -31,7 +27,7 @@ float CoinSystemScript::preset_1(const vec2 & begin_position){
 	}
 
 	// Add locations for the bottom row
-	bottom.x +=this->COLUM_OFFSET_1 * COLUM_AMOUNT_1;
+	bottom.x += this->COLUM_OFFSET_1 * COLUM_AMOUNT_1;
 	for (int i = 0; i < COLUM_AMOUNT_1; ++i) {
 		add_location(bottom);
 		bottom.x += this->COLUM_OFFSET_1;
@@ -45,22 +41,24 @@ float CoinSystemScript::preset_1(const vec2 & begin_position){
 	}
 
 	// Add locations for the next set of the bottom row
-	bottom.x +=this->COLUM_OFFSET_1 * COLUM_AMOUNT_1;
+	bottom.x += this->COLUM_OFFSET_1 * COLUM_AMOUNT_1;
 	for (int i = 0; i < COLUM_AMOUNT_1; ++i) {
 		add_location(bottom);
 		bottom.x += this->COLUM_OFFSET_1;
 	}
 
-	return bottom.x-begin_position.x;
+	return bottom.x - begin_position.x;
 }
 
-float CoinSystemScript::preset_2(const vec2 & begin_position){
-	vec2 top = {begin_position.x+this->COLUM_OFFSET_2, begin_position.y - this->ROW_OFFSET_2};
+float CoinSystemScript::preset_2(const vec2 & begin_position) {
+	vec2 top
+		= {begin_position.x + this->COLUM_OFFSET_2, begin_position.y - this->ROW_OFFSET_2};
 	vec2 middle = begin_position;
-	vec2 bottom = {begin_position.x+this->COLUM_OFFSET_2, begin_position.y + this->ROW_OFFSET_2};
+	vec2 bottom
+		= {begin_position.x + this->COLUM_OFFSET_2, begin_position.y + this->ROW_OFFSET_2};
 
 	// Add locations for the next set of the bottom row
-	for (int i = 0; i < COLUM_AMOUNT_2-2; ++i) {
+	for (int i = 0; i < COLUM_AMOUNT_2 - 2; ++i) {
 		add_location(bottom);
 		bottom.x += this->COLUM_OFFSET_2;
 	}
@@ -72,18 +70,17 @@ float CoinSystemScript::preset_2(const vec2 & begin_position){
 	}
 
 	// Add locations for the next set of the top row
-	for (int i = 0; i < COLUM_AMOUNT_2-2; ++i) {
+	for (int i = 0; i < COLUM_AMOUNT_2 - 2; ++i) {
 		add_location(top);
 		top.x += this->COLUM_OFFSET_2;
 	}
 
-	return middle.x-begin_position.x;
+	return middle.x - begin_position.x;
 }
 
-float CoinSystemScript::preset_3(const vec2 & begin_position){
+float CoinSystemScript::preset_3(const vec2 & begin_position) {
 	vec2 location = {begin_position.x, begin_position.y - (this->ROW_OFFSET_3)};
 
-
 	// Add locations for the top row
 	for (int i = 0; i < COLUM_AMOUNT_3; ++i) {
 		add_location(location);
@@ -91,7 +88,7 @@ float CoinSystemScript::preset_3(const vec2 & begin_position){
 	}
 
 	// Add locations for the bottom row
-	location.y +=this->ROW_OFFSET_3;
+	location.y += this->ROW_OFFSET_3;
 	location.x += this->COLUM_OFFSET_3;
 	for (int i = 0; i < COLUM_AMOUNT_3; ++i) {
 		add_location(location);
@@ -99,20 +96,19 @@ float CoinSystemScript::preset_3(const vec2 & begin_position){
 	}
 
 	// Add locations for the next set of the top row
-	location.y +=this->ROW_OFFSET_3;
+	location.y += this->ROW_OFFSET_3;
 	location.x += this->COLUM_OFFSET_3;
 	for (int i = 0; i < COLUM_AMOUNT_3; ++i) {
 		add_location(location);
 		location.x += this->COLUM_OFFSET_3;
 	}
 
-	return location.x-begin_position.x;
+	return location.x - begin_position.x;
 }
 
-float CoinSystemScript::preset_4(const vec2 & begin_position){
+float CoinSystemScript::preset_4(const vec2 & begin_position) {
 	vec2 location = {begin_position.x, begin_position.y + (this->ROW_OFFSET_4)};
 
-
 	// Add locations for the top row
 	for (int i = 0; i < COLUM_AMOUNT_4; ++i) {
 		add_location(location);
@@ -120,7 +116,7 @@ float CoinSystemScript::preset_4(const vec2 & begin_position){
 	}
 
 	// Add locations for the bottom row
-	location.y -=this->ROW_OFFSET_4;
+	location.y -= this->ROW_OFFSET_4;
 	location.x += this->COLUM_OFFSET_4;
 	for (int i = 0; i < COLUM_AMOUNT_4; ++i) {
 		add_location(location);
@@ -128,32 +124,29 @@ float CoinSystemScript::preset_4(const vec2 & begin_position){
 	}
 
 	// Add locations for the next set of the top row
-	location.y -=this->ROW_OFFSET_4;
+	location.y -= this->ROW_OFFSET_4;
 	location.x += this->COLUM_OFFSET_4;
 	for (int i = 0; i < COLUM_AMOUNT_4; ++i) {
 		add_location(location);
 		location.x += this->COLUM_OFFSET_4;
 	}
 
-	return location.x-begin_position.x;
+	return location.x - begin_position.x;
 }
 
-float CoinSystemScript::preset_5(const vec2 & begin_position){
-	vec2 location = {begin_position.x, begin_position.y-ROW_OFFSET_5/2};
-	for (int i = 0; i < COLUM_AMOUNT_5; ++i){
+float CoinSystemScript::preset_5(const vec2 & begin_position) {
+	vec2 location = {begin_position.x, begin_position.y - ROW_OFFSET_5 / 2};
+	for (int i = 0; i < COLUM_AMOUNT_5; ++i) {
 		add_location(location);
 		location.x += this->COLUM_OFFSET_5;
 	}
-	return location.x-begin_position.x;
+	return location.x - begin_position.x;
 }
 
-
-
-void CoinSystemScript::frame_update(crepe::duration_t dt)
-{
+void CoinSystemScript::frame_update(crepe::duration_t dt) {
 	this->despawn_coins();
 	this->generate_locations();
-	this->spawn_coins();	
+	this->spawn_coins();
 }
 
 void CoinSystemScript::despawn_coins() {
@@ -163,22 +156,26 @@ void CoinSystemScript::despawn_coins() {
 	// Retrieve all active coin sprites tagged as "coin"
 	RefVector<Sprite> coin_sprites = this->get_components_by_tag<Sprite>("coin");
 
-	for (Sprite& coin_sprite : coin_sprites) {
+	for (Sprite & coin_sprite : coin_sprites) {
 		if (!coin_sprite.active) continue; // Skip inactive sprites
 
 		// Retrieve the corresponding Transform, Metadata, and CircleCollider components
-		Transform& coin_transform = this->get_components_by_id<Transform>(coin_sprite.game_object_id).front().get();
-		Metadata& coin_metadata = this->get_components_by_id<Metadata>(coin_sprite.game_object_id).front().get();
-		CircleCollider& coin_collider = this->get_components_by_id<CircleCollider>(coin_sprite.game_object_id).front().get();
+		Transform & coin_transform
+			= this->get_components_by_id<Transform>(coin_sprite.game_object_id).front().get();
+		Metadata & coin_metadata
+			= this->get_components_by_id<Metadata>(coin_sprite.game_object_id).front().get();
+		CircleCollider & coin_collider
+			= this->get_components_by_id<CircleCollider>(coin_sprite.game_object_id)
+				  .front()
+				  .get();
 
 		// Check if the coin is out of bounds based on DESPAWN_DISTANCE
 		if (coin_transform.position.x < position - this->DESPAWN_DISTANCE) {
 			// Find the coin in the coin_locations vector using its name
 			auto it = std::find_if(
-				coin_locations.begin(),
-				coin_locations.end(),
-				[&coin_metadata](const CoinData& data) {
-						return data.name == coin_metadata.name;
+				coin_locations.begin(), coin_locations.end(),
+				[&coin_metadata](const CoinData & data) {
+					return data.name == coin_metadata.name;
 				}
 			);
 
@@ -192,31 +189,42 @@ void CoinSystemScript::despawn_coins() {
 	}
 }
 
-void CoinSystemScript::spawn_coins(){
+void CoinSystemScript::spawn_coins() {
 	// Get the current x-position of the CoinSystem's Transform component
 	float position = this->get_component<Transform>().position.x;
 
 	// Iterate through the list of coin locations
-	for (auto& coin : coin_locations) {
+	for (auto & coin : coin_locations) {
 		// Skip this coin if it is already active
-		if (coin.active)continue;
+		if (coin.active) continue;
 		// Skip this coin if it is not within the defined spawn area
-		if (coin.start_location.x < this->SPAWN_DISTANCE + position || coin.start_location.x > this->SPAWN_AREA + this->SPAWN_DISTANCE + position) continue;
-		
+		if (coin.start_location.x < this->SPAWN_DISTANCE + position
+			|| coin.start_location.x > this->SPAWN_AREA + this->SPAWN_DISTANCE + position)
+			continue;
+
 		// Retrieve all sprites tagged as "coin"
 		RefVector<Sprite> coin_sprites = this->get_components_by_tag<Sprite>("coin");
 
 		// Check for an available (inactive) coin sprite
-		for (Sprite& coin_sprite : coin_sprites) {
+		for (Sprite & coin_sprite : coin_sprites) {
 			// Skip this sprite if it is already active
 			if (coin_sprite.active) continue;
 
 			// Found an available (inactive) coin sprite
 			// Retrieve its associated components
-			Transform & coin_transform = this->get_components_by_id<Transform>(coin_sprite.game_object_id).front().get();
-			Metadata & coin_metadata = this->get_components_by_id<Metadata>(coin_sprite.game_object_id).front().get();
-			CircleCollider & coin_collider = this->get_components_by_id<CircleCollider>(coin_sprite.game_object_id).front().get();
-			
+			Transform & coin_transform
+				= this->get_components_by_id<Transform>(coin_sprite.game_object_id)
+					  .front()
+					  .get();
+			Metadata & coin_metadata
+				= this->get_components_by_id<Metadata>(coin_sprite.game_object_id)
+					  .front()
+					  .get();
+			CircleCollider & coin_collider
+				= this->get_components_by_id<CircleCollider>(coin_sprite.game_object_id)
+					  .front()
+					  .get();
+
 			// Assign data and set active
 			coin.name = coin_metadata.name;
 			coin.active = true;
@@ -224,26 +232,23 @@ void CoinSystemScript::spawn_coins(){
 			coin_collider.active = true;
 			coin_transform.position = coin.start_location;
 
-			// Break out of the inner loop since we've assigned this coin to an available sprite	
+			// Break out of the inner loop since we've assigned this coin to an available sprite
 			break;
 		}
 	}
 }
 
-void CoinSystemScript::generate_locations(){
+void CoinSystemScript::generate_locations() {
 	float position = this->get_component<Transform>().position.x;
-	if(position + SPAWN_DISTANCE + SYSTEM_POSITION_OFFSET < this->system_position) return;
+	if (position + SPAWN_DISTANCE + SYSTEM_POSITION_OFFSET < this->system_position) return;
 
 	std::discrete_distribution<int> dist(weights.begin(), weights.end());
 	int selected_index = dist(engine);
 
 	std::uniform_real_distribution<float> space_dist(SPAWN_SPACING_MIN, SPAWN_SPACING_MAX);
 	float spacing = space_dist(engine);
-	
+
 	// Call the corresponding function and return the new x position
-	this->system_position += functions[selected_index]({this->system_position,0});
+	this->system_position += functions[selected_index]({this->system_position, 0});
 	this->system_position += spacing;
 }
-
-
-
diff --git a/game/coins/CoinSystemScript.h b/game/coins/CoinSystemScript.h
index 6422807..5c94273 100644
--- a/game/coins/CoinSystemScript.h
+++ b/game/coins/CoinSystemScript.h
@@ -1,28 +1,33 @@
 #pragma once
 
-#include <string>
 #include <random>
+#include <string>
 
-#include <crepe/types.h>
 #include <crepe/api/CircleCollider.h>
 #include <crepe/api/Script.h>
 #include <crepe/api/Sprite.h>
 #include <crepe/api/Transform.h>
+#include <crepe/types.h>
 
 class CoinSystemScript : public crepe::Script {
 private:
-	struct CoinData{
-		crepe::vec2 start_location = {0,0};
+	struct CoinData {
+		crepe::vec2 start_location = {0, 0};
 		std::string name = "";
 		bool active = false;
-		CoinData(crepe::vec2 start_location) : start_location(start_location),name(""), active(false) {}
+		CoinData(crepe::vec2 start_location)
+			: start_location(start_location),
+			  name(""),
+			  active(false) {}
 	};
+
 public:
 	CoinSystemScript() {};
 	void init() override;
 	void frame_update(crepe::duration_t dt) override;
+
 private:
-	void add_location(const crepe::vec2& location);
+	void add_location(const crepe::vec2 & location);
 	void despawn_coins();
 	void spawn_coins();
 	void generate_locations();
@@ -31,19 +36,20 @@ private:
 	float preset_3(const crepe::vec2 & begin_position);
 	float preset_4(const crepe::vec2 & begin_position);
 	float preset_5(const crepe::vec2 & begin_position);
+
 private:
-	std::vector<std::function<float(const crepe::vec2&)>> functions = {
-		[this](const crepe::vec2& pos) { return preset_1(pos); },
-		[this](const crepe::vec2& pos) { return preset_2(pos); },
-		[this](const crepe::vec2& pos) { return preset_3(pos); },
-		[this](const crepe::vec2& pos) { return preset_4(pos); },
-		[this](const crepe::vec2& pos) { return preset_5(pos); }
-	};
-	std::vector<int> weights = {20, 20,20,20, 20};
+	std::vector<std::function<float(const crepe::vec2 &)>> functions
+		= {[this](const crepe::vec2 & pos) { return preset_1(pos); },
+		   [this](const crepe::vec2 & pos) { return preset_2(pos); },
+		   [this](const crepe::vec2 & pos) { return preset_3(pos); },
+		   [this](const crepe::vec2 & pos) { return preset_4(pos); },
+		   [this](const crepe::vec2 & pos) { return preset_5(pos); }};
+	std::vector<int> weights = {20, 20, 20, 20, 20};
 	std::random_device rd;
 	std::default_random_engine engine;
 	float system_position = 1400;
 	static constexpr float SYSTEM_POSITION_OFFSET = 200;
+
 private:
 	static constexpr float SPAWN_SPACING_MIN = 400;
 	static constexpr float SPAWN_SPACING_MAX = 1000;
@@ -51,48 +57,50 @@ private:
 	static constexpr float DESPAWN_DISTANCE = 600;
 	static constexpr float SPAWN_AREA = 50;
 	std::vector<CoinData> coin_locations;
+
 private:
-// preset one settings
-// *****				*****
-//
-//
-//
-//				*****				*****
+	// preset one settings
+	// *****				*****
+	//
+	//
+	//
+	//				*****				*****
 	static constexpr float ROW_OFFSET_1 = 100;
 	static constexpr float COLUM_OFFSET_1 = 25;
 	static constexpr int COLUM_AMOUNT_1 = 5;
+
 private:
-// preset two settings
-// 
-//  ********
-// **********
-//  ********
-// 
+	// preset two settings
+	//
+	//  ********
+	// **********
+	//  ********
+	//
 	static constexpr float ROW_OFFSET_2 = 25;
 	static constexpr float COLUM_OFFSET_2 = 25;
 	static constexpr int COLUM_AMOUNT_2 = 10;
-// preset three settings
-// ***
-//   
-//     ***
-// 
-//         *** 
+	// preset three settings
+	// ***
+	//
+	//     ***
+	//
+	//         ***
 	static constexpr float ROW_OFFSET_3 = 100;
 	static constexpr float COLUM_OFFSET_3 = 25;
 	static constexpr int COLUM_AMOUNT_3 = 3;
-// preset four settings
-//         ***
-//   
-//     ***
-// 
-// *** 
+	// preset four settings
+	//         ***
+	//
+	//     ***
+	//
+	// ***
 	static constexpr float ROW_OFFSET_4 = 100;
 	static constexpr float COLUM_OFFSET_4 = 25;
 	static constexpr int COLUM_AMOUNT_4 = 3;
-// preset five settings
-//
-//			***
-//	
+	// preset five settings
+	//
+	//			***
+	//
 	static constexpr float ROW_OFFSET_5 = 25;
 	static constexpr float COLUM_OFFSET_5 = 25;
 	static constexpr int COLUM_AMOUNT_5 = 3;
diff --git a/game/hud/HudConfig.h b/game/hud/HudConfig.h
index 2da3b66..facc298 100644
--- a/game/hud/HudConfig.h
+++ b/game/hud/HudConfig.h
@@ -1,34 +1,33 @@
 #pragma once
 #include <crepe/types.h>
 
-static constexpr crepe::vec2 TOP_LEFT = {-530,-230};
-static constexpr const char* HUD_DISTANCE = "hud_distance";
-static constexpr const char* HUD_BEST = "hud_best";	
-static constexpr const char* HUD_COINS = "hud_coins";	
-static constexpr const char* HUD_FPS = "hud_fps";	
+static constexpr crepe::vec2 TOP_LEFT = {-530, -230};
+static constexpr const char * HUD_DISTANCE = "hud_distance";
+static constexpr const char * HUD_BEST = "hud_best";
+static constexpr const char * HUD_COINS = "hud_coins";
+static constexpr const char * HUD_FPS = "hud_fps";
 
 // Distance
-static constexpr const char* DISTANCE_PLACEHOLDER = "0000m";
-static constexpr const char* DISTANCE_UNIT = "m";
+static constexpr const char * DISTANCE_PLACEHOLDER = "0000m";
+static constexpr const char * DISTANCE_UNIT = "m";
 static constexpr int DISTANCE_LENGTH = 5;
 static constexpr float DISTANCE_CHAR_WIDTH = 12;
 static constexpr float STEP_SIZE_DISTANCE = 100;
 
 // BEST
-static constexpr const char* BEST = "BEST:";
+static constexpr const char * BEST = "BEST:";
 static constexpr int BEST_LENGTH = 5;
 static constexpr float BEST_CHAR_WIDTH = 10;
-static constexpr crepe::vec2 BEST_OFFSET = {0,25};
+static constexpr crepe::vec2 BEST_OFFSET = {0, 25};
 
 // COINS
-static constexpr const char* COINS = "0000";
+static constexpr const char * COINS = "0000";
 static constexpr int COINS_LENGTH = 4;
 static constexpr float COINS_CHAR_WIDTH = 10;
-static constexpr crepe::vec2 COINS_OFFSET = {0,50};
+static constexpr crepe::vec2 COINS_OFFSET = {0, 50};
 
 // FPS
-static constexpr const char* FPS = "00";
+static constexpr const char * FPS = "00";
 static constexpr int FPS_LENGTH = 2;
 static constexpr float FPS_CHAR_WIDTH = 10;
-static constexpr crepe::vec2 FPS_OFFSET = {1030,0};
-	
\ No newline at end of file
+static constexpr crepe::vec2 FPS_OFFSET = {1030, 0};
diff --git a/game/hud/HudScript.cpp b/game/hud/HudScript.cpp
index 4aca15e..8f77706 100644
--- a/game/hud/HudScript.cpp
+++ b/game/hud/HudScript.cpp
@@ -15,70 +15,79 @@ using namespace std;
 
 void HudScript::init() {
 	savemgr = &this->get_save_manager();
-	savemgr->set(TOTAL_COINS_RUN,0);
+	savemgr->set(TOTAL_COINS_RUN, 0);
 	Text & txt = this->get_components_by_name<Text>(HUD_BEST).front();
-	string record = BEST+to_string(savemgr->get<int>(DISTANCE_GAME,0).get())+DISTANCE_UNIT;
+	string record
+		= BEST + to_string(savemgr->get<int>(DISTANCE_GAME, 0).get()) + DISTANCE_UNIT;
 	txt.text = record;
-	txt.dimensions = {BEST_CHAR_WIDTH*record.size(),(BEST_CHAR_WIDTH)*2};
-	txt.offset = TOP_LEFT+FONTOFFSET+BEST_OFFSET + vec2{record.size() * BEST_CHAR_WIDTH/2,0};
-	
-	this->subscribe<GetCoinEvent>([this](const GetCoinEvent e)-> bool { return this->get_coin(e); });
-	this->subscribe<KeyPressEvent>([this](const KeyPressEvent & ev) -> bool { return this->toggle_fps(ev);});
-	this->subscribe<EndGameEvent>([this](const EndGameEvent e)-> bool { return this->save(); });
+	txt.dimensions = {BEST_CHAR_WIDTH * record.size(), (BEST_CHAR_WIDTH) * 2};
+	txt.offset
+		= TOP_LEFT + FONTOFFSET + BEST_OFFSET + vec2 {record.size() * BEST_CHAR_WIDTH / 2, 0};
+
+	this->subscribe<GetCoinEvent>([this](const GetCoinEvent e) -> bool {
+		return this->get_coin(e);
+	});
+	this->subscribe<KeyPressEvent>([this](const KeyPressEvent & ev) -> bool {
+		return this->toggle_fps(ev);
+	});
+	this->subscribe<EndGameEvent>([this](const EndGameEvent e) -> bool {
+		return this->save();
+	});
 }
 
-bool HudScript::toggle_fps(crepe::KeyPressEvent ev){
-	if(ev.key != Keycode::END) return false;
+bool HudScript::toggle_fps(crepe::KeyPressEvent ev) {
+	if (ev.key != Keycode::END) return false;
 	Text & txt_fps = this->get_components_by_name<Text>(HUD_FPS).front();
 	this->show_fps = !this->show_fps;
-	if(this->show_fps)
-	{
+	if (this->show_fps) {
 		txt_fps.active = true;
-	}
-	else {
+	} else {
 		txt_fps.active = false;
 	}
 	return true;
 }
 
 void HudScript::frame_update(crepe::duration_t dt) {
-	
+
 	// Distance
 	Text & txt_dt = this->get_components_by_name<Text>(HUD_DISTANCE).front();
 	Transform & tf = this->get_components_by_name<Transform>(PLAYER_NAME).front();
-	string distance = to_string(static_cast<int>(tf.position.x/STEP_SIZE_DISTANCE)) + DISTANCE_UNIT;
+	string distance
+		= to_string(static_cast<int>(tf.position.x / STEP_SIZE_DISTANCE)) + DISTANCE_UNIT;
 	this->distance_st = distance;
 	txt_dt.text = distance;
-	txt_dt.dimensions = {DISTANCE_CHAR_WIDTH*distance.size(),(DISTANCE_CHAR_WIDTH)*2};
-	txt_dt.offset = TOP_LEFT+FONTOFFSET + vec2{distance.size() * DISTANCE_CHAR_WIDTH/2,0};
+	txt_dt.dimensions = {DISTANCE_CHAR_WIDTH * distance.size(), (DISTANCE_CHAR_WIDTH) * 2};
+	txt_dt.offset
+		= TOP_LEFT + FONTOFFSET + vec2 {distance.size() * DISTANCE_CHAR_WIDTH / 2, 0};
 
 	// Coins
 	Text & txt_co = this->get_components_by_name<Text>(HUD_COINS).front();
 	string amount_of_coins = to_string(this->coin_amount);
 	this->coin_amount_st = amount_of_coins;
 	txt_co.text = amount_of_coins;
-	txt_co.dimensions = {COINS_CHAR_WIDTH*amount_of_coins.size(),(COINS_CHAR_WIDTH)*2};
-	txt_co.offset = TOP_LEFT+FONTOFFSET+COINS_OFFSET + vec2{amount_of_coins.size() * COINS_CHAR_WIDTH/2,0};
+	txt_co.dimensions = {COINS_CHAR_WIDTH * amount_of_coins.size(), (COINS_CHAR_WIDTH) * 2};
+	txt_co.offset = TOP_LEFT + FONTOFFSET + COINS_OFFSET
+					+ vec2 {amount_of_coins.size() * COINS_CHAR_WIDTH / 2, 0};
 
 	// FPS
 	Text & txt_fps = this->get_components_by_name<Text>(HUD_FPS).front();
 	float fps = this->get_loop_timer().get_fps();
 	string fps_amount = to_string(this->get_loop_timer().get_fps());
 	txt_fps.text = fps_amount;
-	txt_fps.dimensions = {FPS_CHAR_WIDTH*fps_amount.size(),(FPS_CHAR_WIDTH)*2};
-	txt_fps.offset = TOP_LEFT+FONTOFFSET+FPS_OFFSET + vec2{fps_amount.size() * FPS_CHAR_WIDTH/2,0};
-	if(fps >= 30) txt_fps.data.text_color = Color::YELLOW;
-	if(fps >= 50) txt_fps.data.text_color = Color::GREEN;
-	if(fps < 30) txt_fps.data.text_color = Color::RED;
+	txt_fps.dimensions = {FPS_CHAR_WIDTH * fps_amount.size(), (FPS_CHAR_WIDTH) * 2};
+	txt_fps.offset = TOP_LEFT + FONTOFFSET + FPS_OFFSET
+					 + vec2 {fps_amount.size() * FPS_CHAR_WIDTH / 2, 0};
+	if (fps >= 30) txt_fps.data.text_color = Color::YELLOW;
+	if (fps >= 50) txt_fps.data.text_color = Color::GREEN;
+	if (fps < 30) txt_fps.data.text_color = Color::RED;
 }
 
-
-bool HudScript::get_coin(const GetCoinEvent e){
+bool HudScript::get_coin(const GetCoinEvent e) {
 	this->coin_amount = e.amount_of_coins;
 	return true;
 }
 
-bool HudScript::save(){
+bool HudScript::save() {
 	SaveManager & savemgr = this->get_save_manager();
 	savemgr.set(TOTAL_COINS_RUN, this->coin_amount);
 	savemgr.set(DISTANCE_RUN, this->distance_st);
diff --git a/game/hud/HudScript.h b/game/hud/HudScript.h
index 5b9ec17..2b789db 100644
--- a/game/hud/HudScript.h
+++ b/game/hud/HudScript.h
@@ -15,8 +15,9 @@ public:
 	bool get_coin(const GetCoinEvent e);
 	bool toggle_fps(crepe::KeyPressEvent ev);
 	bool save();
+
 private:
-	crepe::SaveManager* savemgr;
+	crepe::SaveManager * savemgr;
 	bool show_fps = false;
 	int coin_amount = 0;
 	std::string coin_amount_st = "";
diff --git a/game/hud/HudSubScene.cpp b/game/hud/HudSubScene.cpp
index 8b87a2e..ca81614 100644
--- a/game/hud/HudSubScene.cpp
+++ b/game/hud/HudSubScene.cpp
@@ -6,42 +6,63 @@
 #include <crepe/api/GameObject.h>
 #include <crepe/api/Text.h>
 
-
 using namespace crepe;
 using namespace std;
 
-void HudSubScene::create(Scene & scn){
-	
+void HudSubScene::create(Scene & scn) {
+
 	// Distance
 	GameObject hud_dis = scn.new_object(HUD_DISTANCE);
 
-	crepe::vec2 size_distance = {DISTANCE_CHAR_WIDTH*DISTANCE_LENGTH,(DISTANCE_CHAR_WIDTH)*2};
-	hud_dis.add_component<Text>(size_distance, FONT,Text::Data{
-		.world_space = false,
-		.text_color = Color::WHITE,
-	}, TOP_LEFT+FONTOFFSET + vec2{DISTANCE_LENGTH * DISTANCE_CHAR_WIDTH/2,0}, DISTANCE_PLACEHOLDER);
+	crepe::vec2 size_distance
+		= {DISTANCE_CHAR_WIDTH * DISTANCE_LENGTH, (DISTANCE_CHAR_WIDTH) * 2};
+	hud_dis.add_component<Text>(
+		size_distance, FONT,
+		Text::Data {
+			.world_space = false,
+			.text_color = Color::WHITE,
+		},
+		TOP_LEFT + FONTOFFSET + vec2 {DISTANCE_LENGTH * DISTANCE_CHAR_WIDTH / 2, 0},
+		DISTANCE_PLACEHOLDER
+	);
 
 	// Best
 	GameObject hud_best = scn.new_object(HUD_BEST);
-	crepe::vec2 size_best = {BEST_CHAR_WIDTH*BEST_LENGTH,(BEST_CHAR_WIDTH)*2};
-	hud_best.add_component<Text>(size_best, FONT,Text::Data{
-		.world_space = false,
-		.text_color = Color::GREY,
-	}, TOP_LEFT+FONTOFFSET+BEST_OFFSET + vec2{BEST_LENGTH * BEST_CHAR_WIDTH/2,0}, BEST);
+	crepe::vec2 size_best = {BEST_CHAR_WIDTH * BEST_LENGTH, (BEST_CHAR_WIDTH) * 2};
+	hud_best.add_component<Text>(
+		size_best, FONT,
+		Text::Data {
+			.world_space = false,
+			.text_color = Color::GREY,
+		},
+		TOP_LEFT + FONTOFFSET + BEST_OFFSET + vec2 {BEST_LENGTH * BEST_CHAR_WIDTH / 2, 0}, BEST
+	);
 
 	// Coins
 	GameObject hud_coin = scn.new_object(HUD_COINS);
-	crepe::vec2 size_coin = {COINS_CHAR_WIDTH*COINS_LENGTH,(COINS_CHAR_WIDTH)*2};
-	hud_coin.add_component<Text>(size_coin, FONT,Text::Data{
-		.world_space = false,
-		.text_color = Color::YELLOW,
-	}, TOP_LEFT+FONTOFFSET+COINS_OFFSET + vec2{COINS_LENGTH * COINS_CHAR_WIDTH/2,0}, COINS);
+	crepe::vec2 size_coin = {COINS_CHAR_WIDTH * COINS_LENGTH, (COINS_CHAR_WIDTH) * 2};
+	hud_coin.add_component<Text>(
+		size_coin, FONT,
+		Text::Data {
+			.world_space = false,
+			.text_color = Color::YELLOW,
+		},
+		TOP_LEFT + FONTOFFSET + COINS_OFFSET + vec2 {COINS_LENGTH * COINS_CHAR_WIDTH / 2, 0},
+		COINS
+	);
 
 	// Fps
 	GameObject hud_fps = scn.new_object(HUD_FPS);
-	crepe::vec2 size_fps = {FPS_CHAR_WIDTH*FPS_LENGTH,(FPS_CHAR_WIDTH)*2};
-	hud_fps.add_component<Text>(size_fps, FONT,Text::Data{
-		.world_space = false,
-		.text_color = Color::GREEN,
-	}, TOP_LEFT+FONTOFFSET+FPS_OFFSET + vec2{FPS_LENGTH * FPS_CHAR_WIDTH/2,0}, FPS).active = false;
+	crepe::vec2 size_fps = {FPS_CHAR_WIDTH * FPS_LENGTH, (FPS_CHAR_WIDTH) * 2};
+	hud_fps
+		.add_component<Text>(
+			size_fps, FONT,
+			Text::Data {
+				.world_space = false,
+				.text_color = Color::GREEN,
+			},
+			TOP_LEFT + FONTOFFSET + FPS_OFFSET + vec2 {FPS_LENGTH * FPS_CHAR_WIDTH / 2, 0}, FPS
+		)
+		.active
+		= false;
 }
diff --git a/game/hud/HudSubScene.h b/game/hud/HudSubScene.h
index be696e9..0cd368e 100644
--- a/game/hud/HudSubScene.h
+++ b/game/hud/HudSubScene.h
@@ -2,8 +2,7 @@
 
 #include <crepe/api/Scene.h>
 
-class HudSubScene
-{
+class HudSubScene {
 public:
 	void create(crepe::Scene & scn);
 };
diff --git a/game/hud/SpeedScript.cpp b/game/hud/SpeedScript.cpp
index c9f7188..d0a4dfe 100644
--- a/game/hud/SpeedScript.cpp
+++ b/game/hud/SpeedScript.cpp
@@ -9,15 +9,13 @@ using namespace std;
 
 void SpeedScript::init() {
 	this->subscribe<KeyPressEvent>([this](const KeyPressEvent & ev) -> bool {
-		if(ev.key != Keycode::HOME) return false;
-		LoopTimerManager & lp =  this->get_loop_timer();
+		if (ev.key != Keycode::HOME) return false;
+		LoopTimerManager & lp = this->get_loop_timer();
 		this->toggle = !this->toggle;
-		if(this->toggle)
-		{
-			this->timescale = lp.get_time_scale(); 
+		if (this->toggle) {
+			this->timescale = lp.get_time_scale();
 			lp.set_time_scale(0);
-		}
-		else {
+		} else {
 			lp.set_time_scale(this->timescale);
 		}
 
@@ -25,12 +23,12 @@ void SpeedScript::init() {
 	});
 }
 
-void SpeedScript::fixed_update(crepe::duration_t dt){
-	LoopTimerManager & lp =  this->get_loop_timer();
-	if(this->get_key_state(Keycode::PAGE_UP)){
-		lp.set_time_scale(lp.get_time_scale()+0.1);
+void SpeedScript::fixed_update(crepe::duration_t dt) {
+	LoopTimerManager & lp = this->get_loop_timer();
+	if (this->get_key_state(Keycode::PAGE_UP)) {
+		lp.set_time_scale(lp.get_time_scale() + 0.1);
 	}
-	if(this->get_key_state(Keycode::PAGE_DOWN)){
-		lp.set_time_scale(lp.get_time_scale()-0.1);
+	if (this->get_key_state(Keycode::PAGE_DOWN)) {
+		lp.set_time_scale(lp.get_time_scale() - 0.1);
 	}
 }
diff --git a/game/hud/SpeedScript.h b/game/hud/SpeedScript.h
index 76ada4f..6c15a89 100644
--- a/game/hud/SpeedScript.h
+++ b/game/hud/SpeedScript.h
@@ -7,8 +7,9 @@ class SpeedScript : public crepe::Script {
 public:
 	void init() override;
 	void fixed_update(crepe::duration_t dt) override;
+
 private:
-	crepe::SaveManager* savemgr;
+	crepe::SaveManager * savemgr;
 	bool toggle = true;
 	float timescale = 1;
 };
diff --git a/game/main.cpp b/game/main.cpp
index b9bebfb..e341353 100644
--- a/game/main.cpp
+++ b/game/main.cpp
@@ -5,7 +5,6 @@
 #include "menus/mainmenu/MainMenuScene.h"
 #include "menus/shop/ShopMenuScene.h"
 
-
 using namespace crepe;
 
 int main() {
diff --git a/game/menus/BannerSubScene.cpp b/game/menus/BannerSubScene.cpp
index ea43c69..006a829 100644
--- a/game/menus/BannerSubScene.cpp
+++ b/game/menus/BannerSubScene.cpp
@@ -3,40 +3,47 @@
 
 #include "../Config.h"
 
-#include <crepe/api/Sprite.h>
 #include <crepe/api/Scene.h>
+#include <crepe/api/Sprite.h>
 #include <crepe/api/Text.h>
 
 using namespace crepe;
 using namespace std;
 
-void BannerSubScene::create(Scene & scn,const Data & data){
-	GameObject menu_banner = scn.new_object("menu_banner","", {0,-414});
+void BannerSubScene::create(Scene & scn, const Data & data) {
+	GameObject menu_banner = scn.new_object("menu_banner", "", {0, -414});
 	menu_banner.add_component<Sprite>(
 		Asset("asset/ui/settings_container/top_middle_setting.png"),
-		Sprite::Data{
-		.sorting_in_layer = STARTING_SORTING_IN_LAYER+1,
-		.size = {1100,88},
-		});
+		Sprite::Data {
+			.sorting_in_layer = STARTING_SORTING_IN_LAYER + 1,
+			.size = {1100, 88},
+		}
+	);
 	menu_banner.add_component<Sprite>(
 		Asset("asset/ui/settings_container/top_2_middle_setting.png"),
-		Sprite::Data{
-		.sorting_in_layer = STARTING_SORTING_IN_LAYER+1,
-		.size = {1100,66},
-		.position_offset {0,77},
-		});
+		Sprite::Data {
+			.sorting_in_layer = STARTING_SORTING_IN_LAYER + 1,
+			.size = {1100, 66},
+			.position_offset {0, 77},
+		}
+	);
 	menu_banner.add_component<Sprite>(
 		Asset("asset/ui/settings_container/banner_bottom.png"),
-		Sprite::Data{
-		.sorting_in_layer = STARTING_SORTING_IN_LAYER+1,
-		.size = {1100,7},
-		.position_offset {0,113},
-		});
-	crepe::vec2 size = {data.banner_title_width,(data.banner_title_width/data.banner_title.size())*2};
-
-	menu_banner.add_component<Text>( size, FONT, Text::Data{
-		.world_space = true,
-		.text_color = Color::WHITE,
-		}, data.banner_title_offset + FONTOFFSET,   data.banner_title);
+		Sprite::Data {
+			.sorting_in_layer = STARTING_SORTING_IN_LAYER + 1,
+			.size = {1100, 7},
+			.position_offset {0, 113},
+		}
+	);
+	crepe::vec2 size
+		= {data.banner_title_width, (data.banner_title_width / data.banner_title.size()) * 2};
 
+	menu_banner.add_component<Text>(
+		size, FONT,
+		Text::Data {
+			.world_space = true,
+			.text_color = Color::WHITE,
+		},
+		data.banner_title_offset + FONTOFFSET, data.banner_title
+	);
 }
diff --git a/game/menus/BannerSubScene.h b/game/menus/BannerSubScene.h
index 888897d..c194dfc 100644
--- a/game/menus/BannerSubScene.h
+++ b/game/menus/BannerSubScene.h
@@ -1,7 +1,7 @@
 #pragma once
 
-#include <crepe/types.h>
 #include <crepe/api/GameObject.h>
+#include <crepe/types.h>
 
 namespace crepe {
 class Scene;
@@ -9,11 +9,12 @@ class Scene;
 
 class BannerSubScene {
 public:
-struct Data{
+	struct Data {
 		const std::string & banner_title = "NODATA";
 		const float banner_title_width = 100;
-		const crepe::vec2 & banner_title_offset = {0,0};
+		const crepe::vec2 & banner_title_offset = {0, 0};
 	};
+
 public:
-	void create(crepe::Scene & scn,const Data & data);
+	void create(crepe::Scene & scn, const Data & data);
 };
diff --git a/game/menus/ButtonNextMainMenuSubScript.cpp b/game/menus/ButtonNextMainMenuSubScript.cpp
index d6e315e..e03a34a 100644
--- a/game/menus/ButtonNextMainMenuSubScript.cpp
+++ b/game/menus/ButtonNextMainMenuSubScript.cpp
@@ -12,29 +12,31 @@
 using namespace crepe;
 using namespace std;
 
-void ButtonNextMainMenuSubScript::init(){
+void ButtonNextMainMenuSubScript::init() {
 	IButtonScript::init();
-	this->subscribe<ButtonPressEvent>([this](const ButtonPressEvent& e) { return this->on_button_press(e); });
+	this->subscribe<ButtonPressEvent>([this](const ButtonPressEvent & e) {
+		return this->on_button_press(e);
+	});
 }
 
-bool ButtonNextMainMenuSubScript::on_button_press(const ButtonPressEvent& e){
-	RefVector<AudioSource> audios = this->get_components_by_name<AudioSource>("background_music");
-	
+bool ButtonNextMainMenuSubScript::on_button_press(const ButtonPressEvent & e) {
+	RefVector<AudioSource> audios
+		= this->get_components_by_name<AudioSource>("background_music");
+
 	for (AudioSource & audio : audios) {
 		audio.stop();
 	}
 
 	SaveManager & savemgr = this->get_save_manager();
 
-	ValueBroker<int> coins = savemgr.get<int>(TOTAL_COINS_RUN,0);
-	ValueBroker<int> coins_game = savemgr.get<int>(TOTAL_COINS_GAME,0);
-	savemgr.set(TOTAL_COINS_GAME, coins_game.get()+coins.get());
-	
-	ValueBroker<int> distance = savemgr.get<int>(DISTANCE_RUN,0);
-	ValueBroker<int> distance_game = savemgr.get<int>(DISTANCE_GAME,0);
-	if(distance.get() > distance_game.get()) savemgr.set(DISTANCE_GAME, distance.get());
+	ValueBroker<int> coins = savemgr.get<int>(TOTAL_COINS_RUN, 0);
+	ValueBroker<int> coins_game = savemgr.get<int>(TOTAL_COINS_GAME, 0);
+	savemgr.set(TOTAL_COINS_GAME, coins_game.get() + coins.get());
+
+	ValueBroker<int> distance = savemgr.get<int>(DISTANCE_RUN, 0);
+	ValueBroker<int> distance_game = savemgr.get<int>(DISTANCE_GAME, 0);
+	if (distance.get() > distance_game.get()) savemgr.set(DISTANCE_GAME, distance.get());
 
 	this->set_next_scene(MAINMENU_SCENE);
 	return false;
 }
-
diff --git a/game/menus/ButtonNextMainMenuSubScript.h b/game/menus/ButtonNextMainMenuSubScript.h
index cb5c8ca..0603111 100644
--- a/game/menus/ButtonNextMainMenuSubScript.h
+++ b/game/menus/ButtonNextMainMenuSubScript.h
@@ -7,9 +7,11 @@
 class ButtonNextMainMenuSubScript : public IButtonScript {
 public:
 	void init() override;
-	bool on_button_press(const crepe::ButtonPressEvent& e);
+	bool on_button_press(const crepe::ButtonPressEvent & e);
+
 private:
 	float velocity = 20;
+
 protected:
 	bool transition = false;
 };
diff --git a/game/menus/ButtonSetMainMenuSubScript.cpp b/game/menus/ButtonSetMainMenuSubScript.cpp
index 2181f44..1c6bcb2 100644
--- a/game/menus/ButtonSetMainMenuSubScript.cpp
+++ b/game/menus/ButtonSetMainMenuSubScript.cpp
@@ -7,15 +7,17 @@
 using namespace crepe;
 using namespace std;
 
-void ButtonSetMainMenuSubScript::init(){
+void ButtonSetMainMenuSubScript::init() {
 	IButtonScript::init();
-	this->subscribe<ButtonPressEvent>([this](const ButtonPressEvent& e) { return this->on_button_press(e); });
+	this->subscribe<ButtonPressEvent>([this](const ButtonPressEvent & e) {
+		return this->on_button_press(e);
+	});
 }
 
-bool ButtonSetMainMenuSubScript::on_button_press(const ButtonPressEvent& e){
-	RefVector<AudioSource> audios = this->get_components_by_name<AudioSource>("background_music");
-	
+bool ButtonSetMainMenuSubScript::on_button_press(const ButtonPressEvent & e) {
+	RefVector<AudioSource> audios
+		= this->get_components_by_name<AudioSource>("background_music");
+
 	this->set_next_scene(MAINMENU_SCENE);
 	return false;
 }
-
diff --git a/game/menus/ButtonSetMainMenuSubScript.h b/game/menus/ButtonSetMainMenuSubScript.h
index 40e2c11..8891538 100644
--- a/game/menus/ButtonSetMainMenuSubScript.h
+++ b/game/menus/ButtonSetMainMenuSubScript.h
@@ -7,9 +7,11 @@
 class ButtonSetMainMenuSubScript : public IButtonScript {
 public:
 	void init() override;
-	bool on_button_press(const crepe::ButtonPressEvent& e);
+	bool on_button_press(const crepe::ButtonPressEvent & e);
+
 private:
 	float velocity = 20;
+
 protected:
 	bool transition = false;
 };
diff --git a/game/menus/ButtonSetShopSubScript.cpp b/game/menus/ButtonSetShopSubScript.cpp
index 67005a7..4f395eb 100644
--- a/game/menus/ButtonSetShopSubScript.cpp
+++ b/game/menus/ButtonSetShopSubScript.cpp
@@ -4,13 +4,14 @@
 using namespace crepe;
 using namespace std;
 
-void ButtonSetShopSubScript::init(){
+void ButtonSetShopSubScript::init() {
 	IButtonScript::init();
-	this->subscribe<ButtonPressEvent>([this](const ButtonPressEvent& e) { return this->on_button_press(e); });
+	this->subscribe<ButtonPressEvent>([this](const ButtonPressEvent & e) {
+		return this->on_button_press(e);
+	});
 }
 
-bool ButtonSetShopSubScript::on_button_press(const ButtonPressEvent& e){
+bool ButtonSetShopSubScript::on_button_press(const ButtonPressEvent & e) {
 	this->set_next_scene(SHOP_SCENE);
 	return false;
 }
-
diff --git a/game/menus/ButtonSetShopSubScript.h b/game/menus/ButtonSetShopSubScript.h
index 8edc7bf..7a96cdf 100644
--- a/game/menus/ButtonSetShopSubScript.h
+++ b/game/menus/ButtonSetShopSubScript.h
@@ -7,9 +7,11 @@
 class ButtonSetShopSubScript : public IButtonScript {
 public:
 	void init() override;
-	bool on_button_press(const crepe::ButtonPressEvent& e);
+	bool on_button_press(const crepe::ButtonPressEvent & e);
+
 private:
 	float velocity = 20;
+
 protected:
 	bool transition = false;
 };
diff --git a/game/menus/ButtonSubScene.cpp b/game/menus/ButtonSubScene.cpp
index 5f7f2b0..e41c798 100644
--- a/game/menus/ButtonSubScene.cpp
+++ b/game/menus/ButtonSubScene.cpp
@@ -10,45 +10,53 @@
 #include "../Config.h"
 
 #include <crepe/api/BehaviorScript.h>
-#include <crepe/api/Sprite.h>
-#include <crepe/api/Scene.h>
 #include <crepe/api/Button.h>
-#include <crepe/api/Text.h>
 #include <crepe/api/Color.h>
+#include <crepe/api/Scene.h>
+#include <crepe/api/Sprite.h>
+#include <crepe/api/Text.h>
 
 using namespace crepe;
 using namespace std;
 
-void ButtonSubScene::create(Scene & scn,const Data & data){
-	GameObject button_object = scn.new_object("button",data.tag,data.position,0,data.scale);
-	this->set_button_overlay(button_object,data);
-	this->btn_text(button_object,data);
-	this->set_script(button_object,data);
-	this->set_icon(button_object,data);
+void ButtonSubScene::create(Scene & scn, const Data & data) {
+	GameObject button_object
+		= scn.new_object("button", data.tag, data.position, 0, data.scale);
+	this->set_button_overlay(button_object, data);
+	this->btn_text(button_object, data);
+	this->set_script(button_object, data);
+	this->set_icon(button_object, data);
 }
 
-void ButtonSubScene::btn_text(crepe::GameObject & button_object,const Data & data){
+void ButtonSubScene::btn_text(crepe::GameObject & button_object, const Data & data) {
 
-	crepe::vec2 size = {data.text_width,(data.text_width/data.text.size())*2};
-	button_object.add_component<Text>(size, FONT,Text::Data{
-		.world_space = data.worldspace,
-		.text_color = Color::WHITE,
-	}, data.text_offset+FONTOFFSET, data.text);
+	crepe::vec2 size = {data.text_width, (data.text_width / data.text.size()) * 2};
+	button_object.add_component<Text>(
+		size, FONT,
+		Text::Data {
+			.world_space = data.worldspace,
+			.text_color = Color::WHITE,
+		},
+		data.text_offset + FONTOFFSET, data.text
+	);
 }
 
-void ButtonSubScene::set_script(crepe::GameObject & button_object,const Data & data){
+void ButtonSubScene::set_script(crepe::GameObject & button_object, const Data & data) {
 	switch (data.script_type) {
 		case ScriptSelect::PREVIEW:
-			button_object.add_component<BehaviorScript>().set_script<ButtonTransitionPreviewSubScript>();
+			button_object.add_component<BehaviorScript>()
+				.set_script<ButtonTransitionPreviewSubScript>();
 			break;
 		case ScriptSelect::SHOP:
 			button_object.add_component<BehaviorScript>().set_script<ButtonSetShopSubScript>();
 			break;
 		case ScriptSelect::MAINMENU:
-			button_object.add_component<BehaviorScript>().set_script<ButtonSetMainMenuSubScript>();
+			button_object.add_component<BehaviorScript>()
+				.set_script<ButtonSetMainMenuSubScript>();
 			break;
 		case ScriptSelect::NEXT:
-			button_object.add_component<BehaviorScript>().set_script<ButtonNextMainMenuSubScript>();
+			button_object.add_component<BehaviorScript>()
+				.set_script<ButtonNextMainMenuSubScript>();
 			break;
 		case ScriptSelect::NONE:
 			button_object.add_component<BehaviorScript>().set_script<IButtonScript>();
@@ -56,100 +64,141 @@ void ButtonSubScene::set_script(crepe::GameObject & button_object,const Data & d
 	}
 }
 
-void ButtonSubScene::set_icon(crepe::GameObject & button_object,const Data & data){
+void ButtonSubScene::set_icon(crepe::GameObject & button_object, const Data & data) {
 	switch (data.icon_type) {
 		case IconSelect::SHOP:
-			button_object.add_component<Sprite>(Asset("asset/ui/buttonCoinsSmall.png"),Sprite::Data{
-				.sorting_in_layer = STARTING_SORTING_IN_LAYER+3 + data.sorting_layer_offset,
-				.size = ICON_SIZE,
-				.position_offset = data.icon_offset,
-				.world_space = data.worldspace,
-			});
+			button_object.add_component<Sprite>(
+				Asset("asset/ui/buttonCoinsSmall.png"),
+				Sprite::Data {
+					.sorting_in_layer
+					= STARTING_SORTING_IN_LAYER + 3 + data.sorting_layer_offset,
+					.size = ICON_SIZE,
+					.position_offset = data.icon_offset,
+					.world_space = data.worldspace,
+				}
+			);
 			break;
 		case IconSelect::COINS:
-			button_object.add_component<Sprite>(Asset("asset/ui/buttonCoinsSmall.png"),Sprite::Data{
-				.sorting_in_layer = STARTING_SORTING_IN_LAYER+3 + data.sorting_layer_offset,
-				.size = ICON_SIZE,
-				.position_offset = data.icon_offset,
-				.world_space = data.worldspace,
-			});
+			button_object.add_component<Sprite>(
+				Asset("asset/ui/buttonCoinsSmall.png"),
+				Sprite::Data {
+					.sorting_in_layer
+					= STARTING_SORTING_IN_LAYER + 3 + data.sorting_layer_offset,
+					.size = ICON_SIZE,
+					.position_offset = data.icon_offset,
+					.world_space = data.worldspace,
+				}
+			);
 			break;
 		case IconSelect::NONE:
 			break;
 	}
 }
 
-void ButtonSubScene::set_button_overlay(crepe::GameObject & button_object,const Data & data){
+void ButtonSubScene::set_button_overlay(crepe::GameObject & button_object, const Data & data) {
 	switch (data.button_type) {
 		case ButtonSelect::LARGE:
-			this->large_btn_overlay(button_object,data);
+			this->large_btn_overlay(button_object, data);
 			break;
 		case ButtonSelect::BACK:
-			this->back_btn_overlay(button_object,data);
+			this->back_btn_overlay(button_object, data);
 			break;
 		case ButtonSelect::NEXT:
-			this->next_btn_overlay(button_object,data);
+			this->next_btn_overlay(button_object, data);
 			break;
 	}
 }
 
-void ButtonSubScene::large_btn_overlay(crepe::GameObject & button_object,const Data & data){
-	button_object.add_component<Sprite>(Asset("asset/ui/buttonBacking.png"),Sprite::Data{
-		.sorting_in_layer = STARTING_SORTING_IN_LAYER+1 + data.sorting_layer_offset,
-		.size = LARGE_OVERLAY_SIZE,
-		.world_space = data.worldspace,
-	});
-	button_object.add_component<Button>(LARGE_OVERLAY_SIZE,Button::Data{});
-	if(!data.color_side) return;
-	this->btn_color_side(button_object,SIDE_PANEL_OFFSET,data);
+void ButtonSubScene::large_btn_overlay(crepe::GameObject & button_object, const Data & data) {
+	button_object.add_component<Sprite>(
+		Asset("asset/ui/buttonBacking.png"),
+		Sprite::Data {
+			.sorting_in_layer = STARTING_SORTING_IN_LAYER + 1 + data.sorting_layer_offset,
+			.size = LARGE_OVERLAY_SIZE,
+			.world_space = data.worldspace,
+		}
+	);
+	button_object.add_component<Button>(LARGE_OVERLAY_SIZE, Button::Data {});
+	if (!data.color_side) return;
+	this->btn_color_side(button_object, SIDE_PANEL_OFFSET, data);
 }
 
-void ButtonSubScene::back_btn_overlay(crepe::GameObject & button_object,const Data & data){
-	button_object.add_component<Sprite>(Asset("asset/ui/backbuttonright.png"),Sprite::Data{
-		.sorting_in_layer = STARTING_SORTING_IN_LAYER+1+ data.sorting_layer_offset,
-		.size = SMALL_OVERLAY_SIZE_RIGHT,
-		.position_offset = {20,0},
-		.world_space = data.worldspace,
-	});
-	button_object.add_component<Sprite>(Asset("asset/ui/backbuttonleft.png"),Sprite::Data{
-		.sorting_in_layer = STARTING_SORTING_IN_LAYER+1+ data.sorting_layer_offset,
-		.size = SMALL_OVERLAY_SIZE_LEFT,
-		.position_offset = {-80,0},
-		.world_space = data.worldspace,
-	});
-	button_object.add_component<Button>(vec2{SMALL_OVERLAY_SIZE_LEFT.x+SMALL_OVERLAY_SIZE_RIGHT.x,SMALL_OVERLAY_SIZE_LEFT.y},Button::Data{});
+void ButtonSubScene::back_btn_overlay(crepe::GameObject & button_object, const Data & data) {
+	button_object.add_component<Sprite>(
+		Asset("asset/ui/backbuttonright.png"),
+		Sprite::Data {
+			.sorting_in_layer = STARTING_SORTING_IN_LAYER + 1 + data.sorting_layer_offset,
+			.size = SMALL_OVERLAY_SIZE_RIGHT,
+			.position_offset = {20, 0},
+			.world_space = data.worldspace,
+		}
+	);
+	button_object.add_component<Sprite>(
+		Asset("asset/ui/backbuttonleft.png"),
+		Sprite::Data {
+			.sorting_in_layer = STARTING_SORTING_IN_LAYER + 1 + data.sorting_layer_offset,
+			.size = SMALL_OVERLAY_SIZE_LEFT,
+			.position_offset = {-80, 0},
+			.world_space = data.worldspace,
+		}
+	);
+	button_object.add_component<Button>(
+		vec2 {
+			SMALL_OVERLAY_SIZE_LEFT.x + SMALL_OVERLAY_SIZE_RIGHT.x, SMALL_OVERLAY_SIZE_LEFT.y
+		},
+		Button::Data {}
+	);
 }
 
-void ButtonSubScene::next_btn_overlay(crepe::GameObject & button_object,const Data & data){
-	button_object.add_component<Sprite>(Asset("asset/ui/backbuttonright.png"),Sprite::Data{
-		.flip = {true,false},
-		.sorting_in_layer = STARTING_SORTING_IN_LAYER+1+ data.sorting_layer_offset,
-		.size = SMALL_OVERLAY_SIZE_RIGHT,
-		.position_offset = {-20,0},
-		.world_space = data.worldspace,
-	});
-	button_object.add_component<Sprite>(Asset("asset/ui/backbuttonleft.png"),Sprite::Data{
-		.flip = {true,false},
-		.sorting_in_layer = STARTING_SORTING_IN_LAYER+1+ data.sorting_layer_offset,
-		.size = SMALL_OVERLAY_SIZE_LEFT,
-		.position_offset = {80,0},
-		.world_space = data.worldspace,
-	});
-	button_object.add_component<Button>(vec2{SMALL_OVERLAY_SIZE_LEFT.x+SMALL_OVERLAY_SIZE_RIGHT.x,SMALL_OVERLAY_SIZE_LEFT.y},Button::Data{});
+void ButtonSubScene::next_btn_overlay(crepe::GameObject & button_object, const Data & data) {
+	button_object.add_component<Sprite>(
+		Asset("asset/ui/backbuttonright.png"),
+		Sprite::Data {
+			.flip = {true, false},
+			.sorting_in_layer = STARTING_SORTING_IN_LAYER + 1 + data.sorting_layer_offset,
+			.size = SMALL_OVERLAY_SIZE_RIGHT,
+			.position_offset = {-20, 0},
+			.world_space = data.worldspace,
+		}
+	);
+	button_object.add_component<Sprite>(
+		Asset("asset/ui/backbuttonleft.png"),
+		Sprite::Data {
+			.flip = {true, false},
+			.sorting_in_layer = STARTING_SORTING_IN_LAYER + 1 + data.sorting_layer_offset,
+			.size = SMALL_OVERLAY_SIZE_LEFT,
+			.position_offset = {80, 0},
+			.world_space = data.worldspace,
+		}
+	);
+	button_object.add_component<Button>(
+		vec2 {
+			SMALL_OVERLAY_SIZE_LEFT.x + SMALL_OVERLAY_SIZE_RIGHT.x, SMALL_OVERLAY_SIZE_LEFT.y
+		},
+		Button::Data {}
+	);
 }
 
-void ButtonSubScene::btn_color_side(crepe::GameObject & button_object,const vec2 & offset,const Data & data){
-	button_object.add_component<Sprite>(Asset("asset/ui/buttonSmallBlue.png"),Sprite::Data{
-		.sorting_in_layer = STARTING_SORTING_IN_LAYER + 2 + data.sorting_layer_offset,
-		.size = SIDE_PANEL_SIZE,
-		.position_offset = offset,
-		.world_space = data.worldspace,
-	});
-	button_object.add_component<Sprite>(Asset("asset/ui/buttonSmallBlue.png"),Sprite::Data{
-		.flip = {true,false},
-		.sorting_in_layer = STARTING_SORTING_IN_LAYER+2 + data.sorting_layer_offset,
-		.size = SIDE_PANEL_SIZE,
-		.position_offset = {-offset.x,offset.y},
-		.world_space = data.worldspace,
-	});
+void ButtonSubScene::btn_color_side(
+	crepe::GameObject & button_object, const vec2 & offset, const Data & data
+) {
+	button_object.add_component<Sprite>(
+		Asset("asset/ui/buttonSmallBlue.png"),
+		Sprite::Data {
+			.sorting_in_layer = STARTING_SORTING_IN_LAYER + 2 + data.sorting_layer_offset,
+			.size = SIDE_PANEL_SIZE,
+			.position_offset = offset,
+			.world_space = data.worldspace,
+		}
+	);
+	button_object.add_component<Sprite>(
+		Asset("asset/ui/buttonSmallBlue.png"),
+		Sprite::Data {
+			.flip = {true, false},
+			.sorting_in_layer = STARTING_SORTING_IN_LAYER + 2 + data.sorting_layer_offset,
+			.size = SIDE_PANEL_SIZE,
+			.position_offset = {-offset.x, offset.y},
+			.world_space = data.worldspace,
+		}
+	);
 }
diff --git a/game/menus/ButtonSubScene.h b/game/menus/ButtonSubScene.h
index 09c2fcd..c1c6de8 100644
--- a/game/menus/ButtonSubScene.h
+++ b/game/menus/ButtonSubScene.h
@@ -31,13 +31,13 @@ public:
 		LARGE,
 	};
 	//data struct
-	struct Data{
+	struct Data {
 		const std::string & text = "NODATA";
-		const crepe::vec2 & text_offset = {0,0};
+		const crepe::vec2 & text_offset = {0, 0};
 		const float text_width = 200;
-		const crepe::vec2 & icon_offset = {0,0};
+		const crepe::vec2 & icon_offset = {0, 0};
 		const IconSelect icon_type = IconSelect::NONE;
-		const crepe::vec2 & position = {0,0};
+		const crepe::vec2 & position = {0, 0};
 		const ScriptSelect script_type = ScriptSelect::NONE;
 		const ButtonSelect button_type = ButtonSelect::LARGE;
 		const float scale = 1;
@@ -46,17 +46,22 @@ public:
 		const std::string & tag = "";
 		const int sorting_layer_offset = 0;
 	};
+
 public:
-	void create(crepe::Scene & scn,const Data & data);
+	void create(crepe::Scene & scn, const Data & data);
+
 private:
-	void large_btn_overlay(crepe::GameObject & button_object,const Data & data);
-	void back_btn_overlay(crepe::GameObject & button_object,const Data & data);
-	void next_btn_overlay(crepe::GameObject & button_object,const Data & data);
-	void btn_color_side(crepe::GameObject & button_object,const crepe::vec2 & offset,const Data & data);
-	void btn_text(crepe::GameObject & button_object,const Data & data);
-	void set_script(crepe::GameObject & button_object,const Data & data);
-	void set_icon(crepe::GameObject & button_object,const Data & data);
-	void set_button_overlay(crepe::GameObject & button_object,const Data & data);
+	void large_btn_overlay(crepe::GameObject & button_object, const Data & data);
+	void back_btn_overlay(crepe::GameObject & button_object, const Data & data);
+	void next_btn_overlay(crepe::GameObject & button_object, const Data & data);
+	void btn_color_side(
+		crepe::GameObject & button_object, const crepe::vec2 & offset, const Data & data
+	);
+	void btn_text(crepe::GameObject & button_object, const Data & data);
+	void set_script(crepe::GameObject & button_object, const Data & data);
+	void set_icon(crepe::GameObject & button_object, const Data & data);
+	void set_button_overlay(crepe::GameObject & button_object, const Data & data);
+
 private:
-	static constexpr crepe::vec2 SIDE_PANEL_OFFSET = {113,0};
+	static constexpr crepe::vec2 SIDE_PANEL_OFFSET = {113, 0};
 };
diff --git a/game/menus/FloatingWindowSubScene.cpp b/game/menus/FloatingWindowSubScene.cpp
index 640d151..4420bfa 100644
--- a/game/menus/FloatingWindowSubScene.cpp
+++ b/game/menus/FloatingWindowSubScene.cpp
@@ -2,18 +2,18 @@
 #include "FloatingWindowSubScene.h"
 #include "MenusConfig.h"
 
-#include <crepe/types.h>
+#include <crepe/api/Camera.h>
 #include <crepe/api/GameObject.h>
 #include <crepe/api/Scene.h>
 #include <crepe/api/Sprite.h>
-#include <crepe/api/Camera.h>
+#include <crepe/types.h>
 
 using namespace crepe;
 using namespace std;
 
-void FloatingWindowSubScene::create(Scene & scn,const Data & data){
-	const vec2 SIZE = {data.width,data.width*0.75f};
-	const vec2 POSITION_CORRECTION = vec2{0,-SIZE.y/2} + data.offset;
+void FloatingWindowSubScene::create(Scene & scn, const Data & data) {
+	const vec2 SIZE = {data.width, data.width * 0.75f};
+	const vec2 POSITION_CORRECTION = vec2 {0, -SIZE.y / 2} + data.offset;
 	const float THICKNESS_BANNER = 34;
 	const float MIDDLE_OFFSET_FACTOR_TICKNESS = 0.83;
 	const float MIDDLE_OFFSET_FACTOR_OFFSET = 1.2;
@@ -22,157 +22,199 @@ void FloatingWindowSubScene::create(Scene & scn,const Data & data){
 	const float BOTTOM_OFFSET_X = 3;
 	const float BOTTOM_OFFSET_Y = -3;
 
-	GameObject floatingwindow = scn.new_object("FloatingWindow",data.group_tag);
+	GameObject floatingwindow = scn.new_object("FloatingWindow", data.group_tag);
 
 	// Top_middle
 	floatingwindow.add_component<Sprite>(
 		Asset("asset/ui/settings_container/top_middle_setting.png"),
-		Sprite::Data{
-		.sorting_in_layer = STARTING_SORTING_IN_LAYER+8,
-		.size = {SIZE.x,THICKNESS_BANNER},
-		.position_offset = POSITION_CORRECTION + vec2{0,0},
-		.world_space = false,
-		});
+		Sprite::Data {
+			.sorting_in_layer = STARTING_SORTING_IN_LAYER + 8,
+			.size = {SIZE.x, THICKNESS_BANNER},
+			.position_offset = POSITION_CORRECTION + vec2 {0, 0},
+			.world_space = false,
+		}
+	);
 
 	// Top_Left
 	floatingwindow.add_component<Sprite>(
 		Asset("asset/ui/settings_container/top_left_setting.png"),
-		Sprite::Data{
-		.sorting_in_layer = STARTING_SORTING_IN_LAYER+8,
-		.size = {THICKNESS_BANNER,THICKNESS_BANNER},
-		.position_offset = POSITION_CORRECTION + vec2{-SIZE.x/2-THICKNESS_BANNER/2,0},
-		.world_space = false,
-		});
+		Sprite::Data {
+			.sorting_in_layer = STARTING_SORTING_IN_LAYER + 8,
+			.size = {THICKNESS_BANNER, THICKNESS_BANNER},
+			.position_offset
+			= POSITION_CORRECTION + vec2 {-SIZE.x / 2 - THICKNESS_BANNER / 2, 0},
+			.world_space = false,
+		}
+	);
 
 	// Top_Right
 	floatingwindow.add_component<Sprite>(
 		Asset("asset/ui/settings_container/top_right_setting.png"),
-		Sprite::Data{
-		.sorting_in_layer = STARTING_SORTING_IN_LAYER+8,
-		.size = {THICKNESS_BANNER,THICKNESS_BANNER},
-		.position_offset = POSITION_CORRECTION + vec2{SIZE.x/2+THICKNESS_BANNER/2,0},
-		.world_space = false,
-		});
+		Sprite::Data {
+			.sorting_in_layer = STARTING_SORTING_IN_LAYER + 8,
+			.size = {THICKNESS_BANNER, THICKNESS_BANNER},
+			.position_offset
+			= POSITION_CORRECTION + vec2 {SIZE.x / 2 + THICKNESS_BANNER / 2, 0},
+			.world_space = false,
+		}
+	);
 
 	// Top_middle_2
 	floatingwindow.add_component<Sprite>(
 		Asset("asset/ui/settings_container/top_2_middle_setting.png"),
-		Sprite::Data{
-		.sorting_in_layer = STARTING_SORTING_IN_LAYER+8,
-		.size = {SIZE.x,THICKNESS_BANNER},
-		.position_offset = POSITION_CORRECTION + vec2{0,THICKNESS_BANNER},
-		.world_space = false,
-		});
+		Sprite::Data {
+			.sorting_in_layer = STARTING_SORTING_IN_LAYER + 8,
+			.size = {SIZE.x, THICKNESS_BANNER},
+			.position_offset = POSITION_CORRECTION + vec2 {0, THICKNESS_BANNER},
+			.world_space = false,
+		}
+	);
 
 	// Top_Left_2
 	floatingwindow.add_component<Sprite>(
 		Asset("asset/ui/settings_container/top_2_left_setting.png"),
-		Sprite::Data{
-		.sorting_in_layer = STARTING_SORTING_IN_LAYER+8,
-		.size = {THICKNESS_BANNER,THICKNESS_BANNER},
-		.position_offset = POSITION_CORRECTION + vec2{-SIZE.x/2-THICKNESS_BANNER/2,THICKNESS_BANNER},
-		.world_space = false,
-		});
+		Sprite::Data {
+			.sorting_in_layer = STARTING_SORTING_IN_LAYER + 8,
+			.size = {THICKNESS_BANNER, THICKNESS_BANNER},
+			.position_offset = POSITION_CORRECTION
+							   + vec2 {-SIZE.x / 2 - THICKNESS_BANNER / 2, THICKNESS_BANNER},
+			.world_space = false,
+		}
+	);
 
 	// Top_Right_2
 	floatingwindow.add_component<Sprite>(
 		Asset("asset/ui/settings_container/top_2_right_setting.png"),
-		Sprite::Data{
-		.sorting_in_layer = STARTING_SORTING_IN_LAYER+8,
-		.size = {THICKNESS_BANNER,THICKNESS_BANNER},
-		.position_offset = POSITION_CORRECTION + vec2{SIZE.x/2+THICKNESS_BANNER/2,THICKNESS_BANNER},
-		.world_space = false,
-		});
+		Sprite::Data {
+			.sorting_in_layer = STARTING_SORTING_IN_LAYER + 8,
+			.size = {THICKNESS_BANNER, THICKNESS_BANNER},
+			.position_offset
+			= POSITION_CORRECTION + vec2 {SIZE.x / 2 + THICKNESS_BANNER / 2, THICKNESS_BANNER},
+			.world_space = false,
+		}
+	);
 
 	// Top_middle_3
 	floatingwindow.add_component<Sprite>(
 		Asset("asset/ui/settings_container/top_3_middle_setting.png"),
-		Sprite::Data{
-		.sorting_in_layer = STARTING_SORTING_IN_LAYER+8,
-		.size = {SIZE.x,THICKNESS_BANNER},
-		.position_offset = POSITION_CORRECTION + vec2{0,THICKNESS_BANNER*2},
-		.world_space = false,
-		});
+		Sprite::Data {
+			.sorting_in_layer = STARTING_SORTING_IN_LAYER + 8,
+			.size = {SIZE.x, THICKNESS_BANNER},
+			.position_offset = POSITION_CORRECTION + vec2 {0, THICKNESS_BANNER * 2},
+			.world_space = false,
+		}
+	);
 
 	// Top_Left_3
 	floatingwindow.add_component<Sprite>(
 		Asset("asset/ui/settings_container/top_3_left_setting.png"),
-		Sprite::Data{
-		.sorting_in_layer = STARTING_SORTING_IN_LAYER+8,
-		.size = {THICKNESS_BANNER,THICKNESS_BANNER},
-		.position_offset = POSITION_CORRECTION + vec2{-SIZE.x/2-THICKNESS_BANNER/2,THICKNESS_BANNER*2},
-		.world_space = false,
-		});
+		Sprite::Data {
+			.sorting_in_layer = STARTING_SORTING_IN_LAYER + 8,
+			.size = {THICKNESS_BANNER, THICKNESS_BANNER},
+			.position_offset
+			= POSITION_CORRECTION
+			  + vec2 {-SIZE.x / 2 - THICKNESS_BANNER / 2, THICKNESS_BANNER * 2},
+			.world_space = false,
+		}
+	);
 
 	// Top_Right_3
 	floatingwindow.add_component<Sprite>(
 		Asset("asset/ui/settings_container/top_3_right_setting.png"),
-		Sprite::Data{
-		.sorting_in_layer = STARTING_SORTING_IN_LAYER+8,
-		.size = {THICKNESS_BANNER,THICKNESS_BANNER},
-		.position_offset = POSITION_CORRECTION + vec2{SIZE.x/2+THICKNESS_BANNER/2,THICKNESS_BANNER*2},
-		.world_space = false,
-		});
+		Sprite::Data {
+			.sorting_in_layer = STARTING_SORTING_IN_LAYER + 8,
+			.size = {THICKNESS_BANNER, THICKNESS_BANNER},
+			.position_offset
+			= POSITION_CORRECTION
+			  + vec2 {SIZE.x / 2 + THICKNESS_BANNER / 2, THICKNESS_BANNER * 2},
+			.world_space = false,
+		}
+	);
 
 	// Middle_Mid
 	floatingwindow.add_component<Sprite>(
 		Asset("asset/ui/settings_container/middle_mid_setting.png"),
-		Sprite::Data{
-		.sorting_in_layer = STARTING_SORTING_IN_LAYER+7,
-		.size = {SIZE.x*MIDDLE_OFFSET_FACTOR_OFFSET*MIDDLE_OFFSET_FACTOR_MIDDLE_WIDTH+data.width_middle_offset,SIZE.y},
-		.position_offset = POSITION_CORRECTION + vec2{0,THICKNESS_BANNER*3+SIZE.y/2-THICKNESS_BANNER/2},
-		.world_space = false,
-		});
+		Sprite::Data {
+			.sorting_in_layer = STARTING_SORTING_IN_LAYER + 7,
+			.size
+			= {SIZE.x * MIDDLE_OFFSET_FACTOR_OFFSET * MIDDLE_OFFSET_FACTOR_MIDDLE_WIDTH
+				   + data.width_middle_offset,
+			   SIZE.y},
+			.position_offset
+			= POSITION_CORRECTION
+			  + vec2 {0, THICKNESS_BANNER * 3 + SIZE.y / 2 - THICKNESS_BANNER / 2},
+			.world_space = false,
+		}
+	);
 
 	// Middle_Left
 	floatingwindow.add_component<Sprite>(
 		Asset("asset/ui/settings_container/middle_left_setting.png"),
-		Sprite::Data{
-		.sorting_in_layer = STARTING_SORTING_IN_LAYER+8,
-		.size = {THICKNESS_BANNER*MIDDLE_OFFSET_FACTOR_TICKNESS,SIZE.y},
-		.position_offset = POSITION_CORRECTION + vec2{-SIZE.x/2-THICKNESS_BANNER/2*MIDDLE_OFFSET_FACTOR_OFFSET-MIDDLE_OFFSET_OFFSET_ADDITION,THICKNESS_BANNER*3+SIZE.y/2-THICKNESS_BANNER/2},
-		.world_space = false,
-		});
+		Sprite::Data {
+			.sorting_in_layer = STARTING_SORTING_IN_LAYER + 8,
+			.size = {THICKNESS_BANNER * MIDDLE_OFFSET_FACTOR_TICKNESS, SIZE.y},
+			.position_offset
+			= POSITION_CORRECTION
+			  + vec2 {-SIZE.x / 2 - THICKNESS_BANNER / 2 * MIDDLE_OFFSET_FACTOR_OFFSET - MIDDLE_OFFSET_OFFSET_ADDITION, THICKNESS_BANNER * 3 + SIZE.y / 2 - THICKNESS_BANNER / 2},
+			.world_space = false,
+		}
+	);
 
 	// Middle_Right
 	floatingwindow.add_component<Sprite>(
 		Asset("asset/ui/settings_container/middle_right_setting.png"),
-		Sprite::Data{
-		.sorting_in_layer = STARTING_SORTING_IN_LAYER+8,
-		.size = {THICKNESS_BANNER*MIDDLE_OFFSET_FACTOR_TICKNESS,SIZE.y},
-		.position_offset = POSITION_CORRECTION + vec2{SIZE.x/2+THICKNESS_BANNER/2*MIDDLE_OFFSET_FACTOR_OFFSET+MIDDLE_OFFSET_OFFSET_ADDITION,THICKNESS_BANNER*3+SIZE.y/2-THICKNESS_BANNER/2},
-		.world_space = false,
-		});
+		Sprite::Data {
+			.sorting_in_layer = STARTING_SORTING_IN_LAYER + 8,
+			.size = {THICKNESS_BANNER * MIDDLE_OFFSET_FACTOR_TICKNESS, SIZE.y},
+			.position_offset
+			= POSITION_CORRECTION
+			  + vec2 {SIZE.x / 2 + THICKNESS_BANNER / 2 * MIDDLE_OFFSET_FACTOR_OFFSET + MIDDLE_OFFSET_OFFSET_ADDITION, THICKNESS_BANNER * 3 + SIZE.y / 2 - THICKNESS_BANNER / 2},
+			.world_space = false,
+		}
+	);
 
 	// Bot_Middle
 	floatingwindow.add_component<Sprite>(
 		Asset("asset/ui/settings_container/bot_middle_setting.png"),
-		Sprite::Data{
-		.sorting_in_layer = STARTING_SORTING_IN_LAYER+7,
-		.size = {SIZE.x*MIDDLE_OFFSET_FACTOR_OFFSET*MIDDLE_OFFSET_FACTOR_MIDDLE_WIDTH+data.width_middle_offset,THICKNESS_BANNER*MIDDLE_OFFSET_FACTOR_TICKNESS},
-		.position_offset = POSITION_CORRECTION + vec2{0,THICKNESS_BANNER*3+SIZE.y+BOTTOM_OFFSET_Y},
-		.world_space = false,
-		});
+		Sprite::Data {
+			.sorting_in_layer = STARTING_SORTING_IN_LAYER + 7,
+			.size
+			= {SIZE.x * MIDDLE_OFFSET_FACTOR_OFFSET * MIDDLE_OFFSET_FACTOR_MIDDLE_WIDTH
+				   + data.width_middle_offset,
+			   THICKNESS_BANNER * MIDDLE_OFFSET_FACTOR_TICKNESS},
+			.position_offset
+			= POSITION_CORRECTION + vec2 {0, THICKNESS_BANNER * 3 + SIZE.y + BOTTOM_OFFSET_Y},
+			.world_space = false,
+		}
+	);
 
 	// Bot_Left
 	floatingwindow.add_component<Sprite>(
 		Asset("asset/ui/settings_container/bot_left_setting.png"),
-		Sprite::Data{
-		.sorting_in_layer = STARTING_SORTING_IN_LAYER+8,
-		.size = {THICKNESS_BANNER*MIDDLE_OFFSET_FACTOR_TICKNESS,THICKNESS_BANNER*MIDDLE_OFFSET_FACTOR_TICKNESS},
-		.position_offset = POSITION_CORRECTION + vec2{-SIZE.x/2-THICKNESS_BANNER/2-BOTTOM_OFFSET_X,THICKNESS_BANNER*3+SIZE.y+BOTTOM_OFFSET_Y},
-		.world_space = false,
-		});
+		Sprite::Data {
+			.sorting_in_layer = STARTING_SORTING_IN_LAYER + 8,
+			.size
+			= {THICKNESS_BANNER * MIDDLE_OFFSET_FACTOR_TICKNESS,
+			   THICKNESS_BANNER * MIDDLE_OFFSET_FACTOR_TICKNESS},
+			.position_offset
+			= POSITION_CORRECTION
+			  + vec2 {-SIZE.x / 2 - THICKNESS_BANNER / 2 - BOTTOM_OFFSET_X, THICKNESS_BANNER * 3 + SIZE.y + BOTTOM_OFFSET_Y},
+			.world_space = false,
+		}
+	);
 
 	// Bot_Right
 	floatingwindow.add_component<Sprite>(
 		Asset("asset/ui/settings_container/bot_right_setting.png"),
-		Sprite::Data{
-		.sorting_in_layer = STARTING_SORTING_IN_LAYER+8,
-		.size = {THICKNESS_BANNER*MIDDLE_OFFSET_FACTOR_TICKNESS,THICKNESS_BANNER*MIDDLE_OFFSET_FACTOR_TICKNESS},
-		.position_offset = POSITION_CORRECTION + vec2{SIZE.x/2+THICKNESS_BANNER/2+BOTTOM_OFFSET_X,THICKNESS_BANNER*3+SIZE.y+BOTTOM_OFFSET_Y},
-		.world_space = false,
-		});
+		Sprite::Data {
+			.sorting_in_layer = STARTING_SORTING_IN_LAYER + 8,
+			.size
+			= {THICKNESS_BANNER * MIDDLE_OFFSET_FACTOR_TICKNESS,
+			   THICKNESS_BANNER * MIDDLE_OFFSET_FACTOR_TICKNESS},
+			.position_offset
+			= POSITION_CORRECTION
+			  + vec2 {SIZE.x / 2 + THICKNESS_BANNER / 2 + BOTTOM_OFFSET_X, THICKNESS_BANNER * 3 + SIZE.y + BOTTOM_OFFSET_Y},
+			.world_space = false,
+		}
+	);
 }
-
-
diff --git a/game/menus/FloatingWindowSubScene.h b/game/menus/FloatingWindowSubScene.h
index 1ce7c38..7b9de96 100644
--- a/game/menus/FloatingWindowSubScene.h
+++ b/game/menus/FloatingWindowSubScene.h
@@ -1,16 +1,17 @@
 #pragma once
 
-#include <crepe/types.h>
 #include <crepe/api/Scene.h>
+#include <crepe/types.h>
 
-class FloatingWindowSubScene  {
+class FloatingWindowSubScene {
 public:
-	struct Data{
+	struct Data {
 		const std::string group_tag = "";
 		float width = 200;
-		crepe::vec2 offset = {0,0};
+		crepe::vec2 offset = {0, 0};
 		float width_middle_offset = 0;
 	};
+
 public:
-	void create(crepe::Scene & scn,const Data & data);
+	void create(crepe::Scene & scn, const Data & data);
 };
diff --git a/game/menus/IButtonScript.cpp b/game/menus/IButtonScript.cpp
index da535ca..34efbd0 100644
--- a/game/menus/IButtonScript.cpp
+++ b/game/menus/IButtonScript.cpp
@@ -2,30 +2,31 @@
 
 #include "system/InputSystem.h"
 
-#include <crepe/types.h>
 #include <crepe/api/Sprite.h>
+#include <crepe/types.h>
 
 using namespace crepe;
 using namespace std;
 
-void IButtonScript::init(){
-	this->subscribe<ButtonExitEvent>([this](const ButtonExitEvent& e) { return this->on_button_exit(e); });
-	this->subscribe<ButtonEnterEvent>([this](const ButtonEnterEvent& e) { return this->on_button_enter(e); });
+void IButtonScript::init() {
+	this->subscribe<ButtonExitEvent>([this](const ButtonExitEvent & e) {
+		return this->on_button_exit(e);
+	});
+	this->subscribe<ButtonEnterEvent>([this](const ButtonEnterEvent & e) {
+		return this->on_button_enter(e);
+	});
 }
-bool IButtonScript::on_button_exit(const ButtonExitEvent& e){
+bool IButtonScript::on_button_exit(const ButtonExitEvent & e) {
 	RefVector<Sprite> sprites = this->get_components<Sprite>();
-	for(Sprite & sprite : sprites)
-	{
-		sprite.data.color = Color{255,255,255,255};
+	for (Sprite & sprite : sprites) {
+		sprite.data.color = Color {255, 255, 255, 255};
 	}
 	return false;
 }
-bool IButtonScript::on_button_enter(const ButtonEnterEvent& e){
+bool IButtonScript::on_button_enter(const ButtonEnterEvent & e) {
 	RefVector<Sprite> sprites = this->get_components<Sprite>();
-	for(Sprite & sprite : sprites)
-	{
-		sprite.data.color = Color{200,200,200,255};
+	for (Sprite & sprite : sprites) {
+		sprite.data.color = Color {200, 200, 200, 255};
 	}
 	return false;
 }
-
diff --git a/game/menus/IButtonScript.h b/game/menus/IButtonScript.h
index 10b57bf..e45375b 100644
--- a/game/menus/IButtonScript.h
+++ b/game/menus/IButtonScript.h
@@ -5,8 +5,6 @@
 class IButtonScript : public virtual crepe::Script {
 public:
 	virtual void init();
-	virtual bool on_button_exit(const crepe::ButtonExitEvent& e);
-	virtual bool on_button_enter(const crepe::ButtonEnterEvent& e);
+	virtual bool on_button_exit(const crepe::ButtonExitEvent & e);
+	virtual bool on_button_enter(const crepe::ButtonEnterEvent & e);
 };
-
-
diff --git a/game/menus/IFloatingWindowScript.cpp b/game/menus/IFloatingWindowScript.cpp
index 8d6c838..4b538ef 100644
--- a/game/menus/IFloatingWindowScript.cpp
+++ b/game/menus/IFloatingWindowScript.cpp
@@ -5,20 +5,18 @@
 
 using namespace crepe;
 
-void IFloatingWindowScript::init(){
- this->disable_all_sprites();
-}
+void IFloatingWindowScript::init() { this->disable_all_sprites(); }
 
-void IFloatingWindowScript::disable_all_sprites(){
+void IFloatingWindowScript::disable_all_sprites() {
 	RefVector<Sprite> sprites = this->get_components_by_tag<Sprite>(this->tag);
-	for(Sprite & sprite : sprites){
+	for (Sprite & sprite : sprites) {
 		sprite.active = false;
 	}
 }
 
-void IFloatingWindowScript::enable_all_sprites(){
+void IFloatingWindowScript::enable_all_sprites() {
 	RefVector<Sprite> sprites = this->get_components_by_tag<Sprite>(this->tag);
-	for(Sprite & sprite : sprites){
+	for (Sprite & sprite : sprites) {
 		sprite.active = true;
 	}
 }
diff --git a/game/menus/IFloatingWindowScript.h b/game/menus/IFloatingWindowScript.h
index dff4091..e39378f 100644
--- a/game/menus/IFloatingWindowScript.h
+++ b/game/menus/IFloatingWindowScript.h
@@ -9,8 +9,7 @@ public:
 	virtual void init();
 	void disable_all_sprites();
 	void enable_all_sprites();
+
 protected:
 	std::string tag = "";
 };
-
-
diff --git a/game/menus/MenusConfig.h b/game/menus/MenusConfig.h
index 9e0c99b..6ec5689 100644
--- a/game/menus/MenusConfig.h
+++ b/game/menus/MenusConfig.h
@@ -3,15 +3,15 @@
 
 //generic menu config
 static constexpr int STARTING_SORTING_IN_LAYER = 7;
-static constexpr const char* CAMERA_NAME = "camera";
+static constexpr const char * CAMERA_NAME = "camera";
 //Scene names
-static constexpr const char* START_SCENE = "scene1";
-static constexpr const char* PREVIEW_SCENE = "scene1";
-static constexpr const char* SHOP_SCENE = "shopmenu";
-static constexpr const char* MAINMENU_SCENE = "mainmenu";
+static constexpr const char * START_SCENE = "scene1";
+static constexpr const char * PREVIEW_SCENE = "scene1";
+static constexpr const char * SHOP_SCENE = "shopmenu";
+static constexpr const char * MAINMENU_SCENE = "mainmenu";
 //button config
-static constexpr crepe::vec2 LARGE_OVERLAY_SIZE = {250,100};
-static constexpr crepe::vec2 SMALL_OVERLAY_SIZE_RIGHT = {150,100};
-static constexpr crepe::vec2 SMALL_OVERLAY_SIZE_LEFT = {50,100};
-static constexpr crepe::vec2 SIDE_PANEL_SIZE = {50,150};
-static constexpr crepe::vec2 ICON_SIZE = {50,50};
+static constexpr crepe::vec2 LARGE_OVERLAY_SIZE = {250, 100};
+static constexpr crepe::vec2 SMALL_OVERLAY_SIZE_RIGHT = {150, 100};
+static constexpr crepe::vec2 SMALL_OVERLAY_SIZE_LEFT = {50, 100};
+static constexpr crepe::vec2 SIDE_PANEL_SIZE = {50, 150};
+static constexpr crepe::vec2 ICON_SIZE = {50, 50};
diff --git a/game/menus/endgame/EndGameSubScene.cpp b/game/menus/endgame/EndGameSubScene.cpp
index c97ce52..3ef0f9a 100644
--- a/game/menus/endgame/EndGameSubScene.cpp
+++ b/game/menus/endgame/EndGameSubScene.cpp
@@ -2,21 +2,21 @@
 #include "EndGameSubScene.h"
 #include "EndGameSubScript.h"
 
-#include "../FloatingWindowSubScene.h"
-#include "../ButtonSubScene.h"
 #include "../../Config.h"
+#include "../ButtonSubScene.h"
+#include "../FloatingWindowSubScene.h"
 
 #include <string>
 
-#include <crepe/api/GameObject.h>
 #include <crepe/api/BehaviorScript.h>
+#include <crepe/api/GameObject.h>
 #include <crepe/api/Text.h>
 #include <crepe/types.h>
 
 using namespace crepe;
 using namespace std;
 
-void EndGameSubScene::create(Scene & scn){
+void EndGameSubScene::create(Scene & scn) {
 
 	const std::string TAG = "end_game_tag";
 	GameObject script = scn.new_object("script");
@@ -24,50 +24,59 @@ void EndGameSubScene::create(Scene & scn){
 
 	// Window
 	FloatingWindowSubScene window;
-	window.create(scn, FloatingWindowSubScene::Data{
-		.group_tag = TAG,
-		.width = 500,
-		.offset = {0,-50},
-		.width_middle_offset = -2,
-	});
+	window.create(
+		scn,
+		FloatingWindowSubScene::Data {
+			.group_tag = TAG,
+			.width = 500,
+			.offset = {0, -50},
+			.width_middle_offset = -2,
+		}
+	);
 
 	// Titel
 	const string TITEL_STRING = "GAME OVER";
-	GameObject titel = scn.new_object("titel",TAG);
-	crepe::vec2 size = {200,(200.0f/TITEL_STRING.size())*2};
-	titel.add_component<Text>(size, FONT,Text::Data{
-		.world_space = false,
-		.text_color = Color::WHITE,
-	}, vec2{0,-207}+FONTOFFSET, TITEL_STRING);
-
+	GameObject titel = scn.new_object("titel", TAG);
+	crepe::vec2 size = {200, (200.0f / TITEL_STRING.size()) * 2};
+	titel.add_component<Text>(
+		size, FONT,
+		Text::Data {
+			.world_space = false,
+			.text_color = Color::WHITE,
+		},
+		vec2 {0, -207} + FONTOFFSET, TITEL_STRING
+	);
 
 	// Buttons
-	vec2 button_position = {190,190};
+	vec2 button_position = {190, 190};
 	ButtonSubScene button;
-	button.create(scn,ButtonSubScene::Data{
-		.text = "NEXT",
-		.text_width = 100,
-		.position = button_position,
-		.script_type = ButtonSubScene::ScriptSelect::NEXT,
-		.button_type = ButtonSubScene::ButtonSelect::NEXT,
-		.scale = 0.6,
-		.worldspace = false,
-		.tag = TAG,
-		.sorting_layer_offset = 20,
-	});
-
-	button.create(scn,ButtonSubScene::Data{
-		.text = "REPLAY",
-		.text_width = 150,
-		.position = {-button_position.x,button_position.y},
-		// .script_type = ButtonSubScene::ScriptSelect::MAINMENU,
-		.button_type = ButtonSubScene::ButtonSelect::BACK,
-		.scale = 0.6,
-		.worldspace = false,
-		.tag = TAG,
-		.sorting_layer_offset = 20,
-	});
+	button.create(
+		scn,
+		ButtonSubScene::Data {
+			.text = "NEXT",
+			.text_width = 100,
+			.position = button_position,
+			.script_type = ButtonSubScene::ScriptSelect::NEXT,
+			.button_type = ButtonSubScene::ButtonSelect::NEXT,
+			.scale = 0.6,
+			.worldspace = false,
+			.tag = TAG,
+			.sorting_layer_offset = 20,
+		}
+	);
 
+	button.create(
+		scn,
+		ButtonSubScene::Data {
+			.text = "REPLAY",
+			.text_width = 150,
+			.position = {-button_position.x, button_position.y},
+			// .script_type = ButtonSubScene::ScriptSelect::MAINMENU,
+			.button_type = ButtonSubScene::ButtonSelect::BACK,
+			.scale = 0.6,
+			.worldspace = false,
+			.tag = TAG,
+			.sorting_layer_offset = 20,
+		}
+	);
 }
-
-
diff --git a/game/menus/endgame/EndGameSubScene.h b/game/menus/endgame/EndGameSubScene.h
index aa60a49..204f3b7 100644
--- a/game/menus/endgame/EndGameSubScene.h
+++ b/game/menus/endgame/EndGameSubScene.h
@@ -2,7 +2,7 @@
 
 #include <crepe/api/Scene.h>
 
-class EndGameSubScene  {
+class EndGameSubScene {
 
 public:
 	void create(crepe::Scene & scn);
diff --git a/game/menus/endgame/EndGameSubScript.cpp b/game/menus/endgame/EndGameSubScript.cpp
index 2204df0..f120e2d 100644
--- a/game/menus/endgame/EndGameSubScript.cpp
+++ b/game/menus/endgame/EndGameSubScript.cpp
@@ -1,7 +1,7 @@
 #include "EndGameSubScript.h"
 
-#include "../IFloatingWindowScript.h"
 #include "../../Events.h"
+#include "../IFloatingWindowScript.h"
 
 #include <string>
 
@@ -12,43 +12,43 @@
 
 using namespace crepe;
 
-EndGameSubScript::EndGameSubScript(const std::string & tag){
-	this->tag = tag;
-}
+EndGameSubScript::EndGameSubScript(const std::string & tag) { this->tag = tag; }
 
-void EndGameSubScript::init(){
+void EndGameSubScript::init() {
 	this->disable_all();
 	this->subscribe<EndGameEvent>([this](const EndGameEvent e) { return this->enable_all(); });
-	this->subscribe<EndGameEvent>([this](const EndGameEvent e) { return this->reset_timescale(); });
+	this->subscribe<EndGameEvent>([this](const EndGameEvent e) {
+		return this->reset_timescale();
+	});
 }
 
-bool EndGameSubScript::disable_all(){
+bool EndGameSubScript::disable_all() {
 	IFloatingWindowScript::disable_all_sprites();
 	RefVector<Button> buttons = this->get_components_by_tag<Button>(this->tag);
-	for(Button & button : buttons){
+	for (Button & button : buttons) {
 		button.active = false;
 	}
 	RefVector<Text> texts = this->get_components_by_tag<Text>(this->tag);
-	for(Text & text : texts){
+	for (Text & text : texts) {
 		text.active = false;
 	}
 	return false;
 }
 
-bool EndGameSubScript::enable_all(){
+bool EndGameSubScript::enable_all() {
 	IFloatingWindowScript::enable_all_sprites();
 	RefVector<Button> buttons = this->get_components_by_tag<Button>(this->tag);
-	for(Button & button : buttons){
+	for (Button & button : buttons) {
 		button.active = true;
 	}
 	RefVector<Text> texts = this->get_components_by_tag<Text>(this->tag);
-	for(Text & text : texts){
+	for (Text & text : texts) {
 		text.active = true;
 	}
 	return false;
 }
 
-bool EndGameSubScript::reset_timescale(){
+bool EndGameSubScript::reset_timescale() {
 	this->get_loop_timer().set_time_scale(1);
 	return false;
 }
diff --git a/game/menus/endgame/EndGameSubScript.h b/game/menus/endgame/EndGameSubScript.h
index 4b63a4e..62a2f0c 100644
--- a/game/menus/endgame/EndGameSubScript.h
+++ b/game/menus/endgame/EndGameSubScript.h
@@ -8,10 +8,8 @@
 class EndGameSubScript : public IFloatingWindowScript {
 public:
 	EndGameSubScript(const std::string & tag);
- 	void init() override;
+	void init() override;
 	bool disable_all();
 	bool enable_all();
 	bool reset_timescale();
 };
-
-
diff --git a/game/menus/mainmenu/ButtonTransitionPreviewSubScript.cpp b/game/menus/mainmenu/ButtonTransitionPreviewSubScript.cpp
index 8c055ec..4c4dfc1 100644
--- a/game/menus/mainmenu/ButtonTransitionPreviewSubScript.cpp
+++ b/game/menus/mainmenu/ButtonTransitionPreviewSubScript.cpp
@@ -5,17 +5,19 @@
 using namespace crepe;
 using namespace std;
 
-void ButtonTransitionPreviewSubScript::init(){
+void ButtonTransitionPreviewSubScript::init() {
 	IButtonScript::init();
-	this->subscribe<ButtonPressEvent>([this](const ButtonPressEvent& e) { return this->on_button_press(e); });
+	this->subscribe<ButtonPressEvent>([this](const ButtonPressEvent & e) {
+		return this->on_button_press(e);
+	});
 }
 
-bool ButtonTransitionPreviewSubScript::on_button_press(const ButtonPressEvent& e){
-	if(!this->transition)	this->transition = true;
+bool ButtonTransitionPreviewSubScript::on_button_press(const ButtonPressEvent & e) {
+	if (!this->transition) this->transition = true;
 	return false;
 }
 
-const char* ButtonTransitionPreviewSubScript::get_scene_name() const {
-    // Provide the next scene defined in MainMenuConfig
-    return PREVIEW_SCENE;
+const char * ButtonTransitionPreviewSubScript::get_scene_name() const {
+	// Provide the next scene defined in MainMenuConfig
+	return PREVIEW_SCENE;
 }
diff --git a/game/menus/mainmenu/ButtonTransitionPreviewSubScript.h b/game/menus/mainmenu/ButtonTransitionPreviewSubScript.h
index 6e6b0b2..d6d8149 100644
--- a/game/menus/mainmenu/ButtonTransitionPreviewSubScript.h
+++ b/game/menus/mainmenu/ButtonTransitionPreviewSubScript.h
@@ -7,6 +7,6 @@
 class ButtonTransitionPreviewSubScript : public ITransitionScript, public IButtonScript {
 public:
 	void init() override;
-	bool on_button_press(const crepe::ButtonPressEvent& e);
-	const char* get_scene_name() const override;
+	bool on_button_press(const crepe::ButtonPressEvent & e);
+	const char * get_scene_name() const override;
 };
diff --git a/game/menus/mainmenu/ITransitionScript.cpp b/game/menus/mainmenu/ITransitionScript.cpp
index 9e547e6..cd929a0 100644
--- a/game/menus/mainmenu/ITransitionScript.cpp
+++ b/game/menus/mainmenu/ITransitionScript.cpp
@@ -3,30 +3,27 @@
 
 #include "../MenusConfig.h"
 
-#include <crepe/types.h>
-#include <crepe/api/Transform.h>
 #include <crepe/api/Camera.h>
+#include <crepe/api/Transform.h>
+#include <crepe/types.h>
 
 using namespace crepe;
 using namespace std;
 
-void ITransitionScript::frame_update(crepe::duration_t delta_time){
-	if(this->transition)
-	{
+void ITransitionScript::frame_update(crepe::duration_t delta_time) {
+	if (this->transition) {
 		// cout << "transition:" << velocity << std::endl;
 		Transform & cam = this->get_components_by_name<Transform>(CAMERA_NAME).front();
 		RefVector<Transform> info_tf = this->get_components_by_tag<Transform>(MENU_INFO_TAG);
 		for (Transform & tf : info_tf) {
 			tf.position.y -= VELOCITY_INFO_UP * delta_time.count();
 		}
-		if(velocity < VELOCITY_MAX && cam.position.x < SLOW_DOWN) velocity += VELOCITY_STEP * delta_time.count();
-		else if(velocity > 20) velocity -= VELOCITY_STEP * delta_time.count();
-		if(cam.position.x < END)	cam.position.x += (velocity * delta_time.count());
-		if(cam.position.x >= END) 
-		{
+		if (velocity < VELOCITY_MAX && cam.position.x < SLOW_DOWN)
+			velocity += VELOCITY_STEP * delta_time.count();
+		else if (velocity > 20) velocity -= VELOCITY_STEP * delta_time.count();
+		if (cam.position.x < END) cam.position.x += (velocity * delta_time.count());
+		if (cam.position.x >= END) {
 			this->set_next_scene(this->get_scene_name());
 		}
-
 	}
 }
-
diff --git a/game/menus/mainmenu/ITransitionScript.h b/game/menus/mainmenu/ITransitionScript.h
index 78f1016..9a2ef90 100644
--- a/game/menus/mainmenu/ITransitionScript.h
+++ b/game/menus/mainmenu/ITransitionScript.h
@@ -5,9 +5,11 @@
 class ITransitionScript : public virtual crepe::Script {
 public:
 	void frame_update(crepe::duration_t delta_time) override;
-	virtual const char* get_scene_name() const = 0;
+	virtual const char * get_scene_name() const = 0;
+
 private:
 	float velocity = 20;
+
 protected:
 	bool transition = false;
 };
diff --git a/game/menus/mainmenu/MainMenuConfig.h b/game/menus/mainmenu/MainMenuConfig.h
index 01995f0..f4ca5a6 100644
--- a/game/menus/mainmenu/MainMenuConfig.h
+++ b/game/menus/mainmenu/MainMenuConfig.h
@@ -3,20 +3,17 @@
 
 //main menu config
 static constexpr float STARTMAP_OFFSET = 50;
-static constexpr crepe::vec2 MENU_OFFSET = {0,0};
+static constexpr crepe::vec2 MENU_OFFSET = {0, 0};
 static constexpr float MENU_BUTTON_SPACING = 10;
-static constexpr const char* MENU_BUTTON_NAME = "menu_button_background";
-static constexpr crepe::vec2 MENU_OFFSET_BUTTON = {-400,-200};
-static constexpr crepe::vec2 MENU_OFFSET_BUTTON_BACKGROUND = {-400,0};
-static constexpr const char* MENU_INFO_TAG = "menu_info";
-static constexpr crepe::vec2 MENU_OFFSET_INFO = {350,-365};
-static constexpr crepe::vec2 MENU_OFFSET_INFO_BACKGROUND = {350,-365}; //375
+static constexpr const char * MENU_BUTTON_NAME = "menu_button_background";
+static constexpr crepe::vec2 MENU_OFFSET_BUTTON = {-400, -200};
+static constexpr crepe::vec2 MENU_OFFSET_BUTTON_BACKGROUND = {-400, 0};
+static constexpr const char * MENU_INFO_TAG = "menu_info";
+static constexpr crepe::vec2 MENU_OFFSET_INFO = {350, -365};
+static constexpr crepe::vec2 MENU_OFFSET_INFO_BACKGROUND = {350, -365}; //375
 //Moving to new scene (Start and Preview)
 static constexpr float SLOW_DOWN = 200;
 static constexpr float END = 300;
 static constexpr float VELOCITY_MAX = 200;
 static constexpr float VELOCITY_STEP = 200;
 static constexpr float VELOCITY_INFO_UP = 40;
-
-	
-
diff --git a/game/menus/mainmenu/MainMenuScene.cpp b/game/menus/mainmenu/MainMenuScene.cpp
index e0dfbee..43418e3 100644
--- a/game/menus/mainmenu/MainMenuScene.cpp
+++ b/game/menus/mainmenu/MainMenuScene.cpp
@@ -1,104 +1,115 @@
 
 #include "MainMenuScene.h"
-#include "TransitionStartSubScript.h"
 #include "MainMenuConfig.h"
+#include "TransitionStartSubScript.h"
 
 #include "../ButtonSubScene.h"
 #include "../MenusConfig.h"
 
-#include "../../background/StartSubScene.h"
-#include "../../background/HallwaySubScene.h"
 #include "../../Config.h"
+#include "../../background/HallwaySubScene.h"
+#include "../../background/StartSubScene.h"
 
 #include "../endgame/EndGameSubScene.h"
 
 #include <crepe/api/BehaviorScript.h>
+#include <crepe/api/Camera.h>
 #include <crepe/api/GameObject.h>
 #include <crepe/api/Sprite.h>
-#include <crepe/api/Camera.h>
 #include <crepe/manager/SaveManager.h>
 
 using namespace crepe;
 using namespace std;
 
-void MainMenuScene::load_scene(){
+void MainMenuScene::load_scene() {
 	ButtonSubScene button;
 
 	GameObject camera_object = this->new_object(CAMERA_NAME);
-	camera_object.add_component<Camera>(ivec2(990, 720), vec2(1100, 800),
-	Camera::Data{
-		.bg_color = Color::RED,
-	});
+	camera_object.add_component<Camera>(
+		ivec2(990, 720), vec2(1100, 800),
+		Camera::Data {
+			.bg_color = Color::RED,
+		}
+	);
 	camera_object.add_component<BehaviorScript>().set_script<TransitionStartSubScript>();
 
-
 	//Button menu
-	GameObject menu_button = this->new_object(MENU_BUTTON_NAME,MENU_BUTTON_NAME,MENU_OFFSET);
+	GameObject menu_button = this->new_object(MENU_BUTTON_NAME, MENU_BUTTON_NAME, MENU_OFFSET);
 	menu_button.add_component<Sprite>(
 		Asset("asset/ui/background.png"),
-		Sprite::Data{
-		.sorting_in_layer = STARTING_SORTING_IN_LAYER+0,
-		.size = {300,860},
-		.position_offset = MENU_OFFSET_BUTTON_BACKGROUND,
-		});
+		Sprite::Data {
+			.sorting_in_layer = STARTING_SORTING_IN_LAYER + 0,
+			.size = {300, 860},
+			.position_offset = MENU_OFFSET_BUTTON_BACKGROUND,
+		}
+	);
 
 	vec2 pos_btn = MENU_OFFSET_BUTTON;
-	
+
 	//Preview btn
-	button.create(*this,ButtonSubScene::Data{
-		.text = "PREVIEW",
-		.text_width = 200,
-		.position = pos_btn,
-		.script_type = ButtonSubScene::ScriptSelect::PREVIEW,
-	});
+	button.create(
+		*this,
+		ButtonSubScene::Data {
+			.text = "PREVIEW",
+			.text_width = 200,
+			.position = pos_btn,
+			.script_type = ButtonSubScene::ScriptSelect::PREVIEW,
+		}
+	);
 
 	//Shop btn
 	pos_btn.y += MENU_BUTTON_SPACING + LARGE_OVERLAY_SIZE.y;
-	button.create(*this,ButtonSubScene::Data{
-		.text = "SHOP",
-		.text_offset = {-20,0},
-		.text_width = 115,
-		.icon_offset = {60,0},
-		.icon_type = ButtonSubScene::IconSelect::SHOP,
-		.position = pos_btn,
-		.script_type = ButtonSubScene::ScriptSelect::SHOP,
-	});
-	
+	button.create(
+		*this,
+		ButtonSubScene::Data {
+			.text = "SHOP",
+			.text_offset = {-20, 0},
+			.text_width = 115,
+			.icon_offset = {60, 0},
+			.icon_type = ButtonSubScene::IconSelect::SHOP,
+			.position = pos_btn,
+			.script_type = ButtonSubScene::ScriptSelect::SHOP,
+		}
+	);
+
 	//Start of map
 	StartSubScene start;
 	HallwaySubScene hallway;
 	float begin_x = start.create(*this, STARTMAP_OFFSET);
 	begin_x = hallway.create(*this, begin_x, 1, Color::YELLOW);
 
-
 	//INFO menu
-	GameObject menu_info = this->new_object("MENU_INFO_BACKGROUND",MENU_INFO_TAG,MENU_OFFSET);
+	GameObject menu_info
+		= this->new_object("MENU_INFO_BACKGROUND", MENU_INFO_TAG, MENU_OFFSET);
 	menu_info.add_component<Sprite>(
 		Asset("asset/ui/itemsButtonBlankDark.png"),
-		Sprite::Data{
-		.sorting_in_layer = STARTING_SORTING_IN_LAYER+0,
-		.size = {250,80},
-		.position_offset = MENU_OFFSET_INFO,
-		.world_space = false,
-		});
+		Sprite::Data {
+			.sorting_in_layer = STARTING_SORTING_IN_LAYER + 0,
+			.size = {250, 80},
+			.position_offset = MENU_OFFSET_INFO,
+			.world_space = false,
+		}
+	);
 	SaveManager & savemgr = this->get_save_manager();
-	string number = std::to_string(savemgr.get<int>(TOTAL_COINS_GAME,0).get());
+	string number = std::to_string(savemgr.get<int>(TOTAL_COINS_GAME, 0).get());
 	float amount_number = static_cast<float>(number.size());
 	// savemgr.set(COIN_GAME_AMOUNT, amount);
-	button.create(*this,ButtonSubScene::Data{
-		.text = number,
-		.text_offset = {-10-(amount_number-1)*10,0},
-		.text_width = amount_number*20,
-		.icon_offset = {60,0},
-		.icon_type = ButtonSubScene::IconSelect::COINS,
-		.position = MENU_OFFSET_INFO,
-		.script_type = ButtonSubScene::ScriptSelect::SHOP,
-		.scale = 0.6,
-		.worldspace = false,
-		.color_side = false,
-		.tag = MENU_INFO_TAG,
-	});
-
+	button.create(
+		*this,
+		ButtonSubScene::Data {
+			.text = number,
+			.text_offset = {-10 - (amount_number - 1) * 10, 0},
+			.text_width = amount_number * 20,
+			.icon_offset = {60, 0},
+			.icon_type = ButtonSubScene::IconSelect::COINS,
+			.position = MENU_OFFSET_INFO,
+			.script_type = ButtonSubScene::ScriptSelect::SHOP,
+			.scale = 0.6,
+			.worldspace = false,
+			.color_side = false,
+			.tag = MENU_INFO_TAG,
+		}
+	);
 }
 
 string MainMenuScene::get_name() const { return MAINMENU_SCENE; }
diff --git a/game/menus/mainmenu/TransitionStartSubScript.cpp b/game/menus/mainmenu/TransitionStartSubScript.cpp
index 6ad4673..63723cf 100644
--- a/game/menus/mainmenu/TransitionStartSubScript.cpp
+++ b/game/menus/mainmenu/TransitionStartSubScript.cpp
@@ -5,11 +5,12 @@
 using namespace crepe;
 using namespace std;
 
-void TransitionStartSubScript::fixed_update(crepe::duration_t dt){
-	if(this->get_key_state(Keycode::ENTER) && this->transition == false) this->transition = true;
+void TransitionStartSubScript::fixed_update(crepe::duration_t dt) {
+	if (this->get_key_state(Keycode::ENTER) && this->transition == false)
+		this->transition = true;
 }
 
-const char* TransitionStartSubScript::get_scene_name() const {
-    // Provide the next scene defined in MainMenuConfig
-    return START_SCENE;
+const char * TransitionStartSubScript::get_scene_name() const {
+	// Provide the next scene defined in MainMenuConfig
+	return START_SCENE;
 }
diff --git a/game/menus/mainmenu/TransitionStartSubScript.h b/game/menus/mainmenu/TransitionStartSubScript.h
index b41360d..f9862ea 100644
--- a/game/menus/mainmenu/TransitionStartSubScript.h
+++ b/game/menus/mainmenu/TransitionStartSubScript.h
@@ -5,5 +5,5 @@
 class TransitionStartSubScript : public ITransitionScript {
 public:
 	void fixed_update(crepe::duration_t dt) override;
-	const char* get_scene_name() const override;
+	const char * get_scene_name() const override;
 };
diff --git a/game/menus/shop/ShopMenuScene.cpp b/game/menus/shop/ShopMenuScene.cpp
index 6c88dc8..21e3f02 100644
--- a/game/menus/shop/ShopMenuScene.cpp
+++ b/game/menus/shop/ShopMenuScene.cpp
@@ -1,9 +1,9 @@
 
 #include "ShopMenuScene.h"
 
+#include "../BannerSubScene.h"
 #include "../ButtonSubScene.h"
 #include "../MenusConfig.h"
-#include "../BannerSubScene.h"
 
 #include <crepe/api/Camera.h>
 #include <crepe/api/Sprite.h>
@@ -11,36 +11,45 @@
 using namespace crepe;
 using namespace std;
 
-void ShopMenuScene::load_scene(){
+void ShopMenuScene::load_scene() {
 	GameObject camera_object = this->new_object(CAMERA_NAME);
-	camera_object.add_component<Camera>(ivec2(990, 720), vec2(1100, 800),
-	Camera::Data{
-		.bg_color = Color::RED,
-	});
+	camera_object.add_component<Camera>(
+		ivec2(990, 720), vec2(1100, 800),
+		Camera::Data {
+			.bg_color = Color::RED,
+		}
+	);
 	BannerSubScene banner;
-	banner.create(*this,{
-		.banner_title = "SHOP",
-		.banner_title_width = 200,
-		.banner_title_offset = {0,65},
-	});
+	banner.create(
+		*this,
+		{
+			.banner_title = "SHOP",
+			.banner_title_width = 200,
+			.banner_title_offset = {0, 65},
+		}
+	);
 	GameObject menu_background = this->new_object("menu_background");
 	menu_background.add_component<Sprite>(
 		Asset("asset/ui/background.png"),
-		Sprite::Data{
-		.sorting_in_layer = STARTING_SORTING_IN_LAYER+0,
-		.size = {1100,860},
-		.position_offset {0},
-		});
-		
+		Sprite::Data {
+			.sorting_in_layer = STARTING_SORTING_IN_LAYER + 0,
+			.size = {1100, 860},
+			.position_offset {0},
+		}
+	);
+
 	ButtonSubScene button;
-	button.create(*this,ButtonSubScene::Data{
-		.text = "BACK",
-		.text_width = 115,
-		.position = {-400,-350},
-		.script_type = ButtonSubScene::ScriptSelect::MAINMENU,
-		.button_type = ButtonSubScene::ButtonSelect::BACK,
-		.scale = 0.8
-	});
+	button.create(
+		*this,
+		ButtonSubScene::Data {
+			.text = "BACK",
+			.text_width = 115,
+			.position = {-400, -350},
+			.script_type = ButtonSubScene::ScriptSelect::MAINMENU,
+			.button_type = ButtonSubScene::ButtonSelect::BACK,
+			.scale = 0.8
+		}
+	);
 }
 
 string ShopMenuScene::get_name() const { return SHOP_SCENE; }
diff --git a/game/player/PlayerEndScript.cpp b/game/player/PlayerEndScript.cpp
index f3d9aad..fb18f2f 100644
--- a/game/player/PlayerEndScript.cpp
+++ b/game/player/PlayerEndScript.cpp
@@ -90,7 +90,7 @@ bool PlayerEndScript::on_collision(const crepe::CollisionEvent & ev) {
 			jump++;
 		}
 
-		if(rb_player.data.linear_velocity.x < 5){
+		if (rb_player.data.linear_velocity.x < 5) {
 			this->trigger_event<EndGameEvent>();
 		}
 
-- 
cgit v1.2.3