aboutsummaryrefslogtreecommitdiff
path: root/game/background/ForestParallaxScript.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'game/background/ForestParallaxScript.cpp')
-rw-r--r--game/background/ForestParallaxScript.cpp26
1 files changed, 26 insertions, 0 deletions
diff --git a/game/background/ForestParallaxScript.cpp b/game/background/ForestParallaxScript.cpp
index c72f85d..7470da2 100644
--- a/game/background/ForestParallaxScript.cpp
+++ b/game/background/ForestParallaxScript.cpp
@@ -1,5 +1,7 @@
#include "ForestParallaxScript.h"
+#include "../Config.h"
+
using namespace crepe;
using namespace std;
@@ -26,4 +28,28 @@ void ForestParallaxScript::fixed_update(crepe::duration_t dt) {
t.position.x = begin_x - 400;
}
}
+
+ //Move whole background 12000 to the right
+ Transform & trans_cam = this->get_components_by_name<Transform>("camera").front();
+
+ float cam_left_x = trans_cam.position.x - VIEWPORT_X / 2;
+
+ if (cam_left_x > this->start_x + this->lenght) {
+ //Move whole background 12000 to the right
+ RefVector<Transform> trans
+ = this->get_components_by_tag<Transform>("background_forest");
+ for (Transform & tran : trans) {
+ tran.position.x += 12000;
+ }
+ this->start_x += 12000;
+
+ RefVector<Transform> trans_back
+ = this->get_components_by_tag<Transform>("forest_background");
+ for (Transform & tran : trans_back) {
+ tran.position.x += 12000;
+ }
+
+ begin_x += 12000;
+ end_x += 12000;
+ }
}