diff options
author | Treeki <treeki@gmail.com> | 2013-02-12 23:40:37 +0100 |
---|---|---|
committer | Treeki <treeki@gmail.com> | 2013-02-12 23:40:37 +0100 |
commit | 9f244e88204491e85f1c086bc8d3478ea9c34770 (patch) | |
tree | 343ee00c5c90c8e0172ea6afa13b424f484a6cdd /src/levelspecial.cpp | |
parent | 1c1521acafbef0a024bfeb3d7408e5d7c8123dda (diff) | |
download | kamek-9f244e88204491e85f1c086bc8d3478ea9c34770.tar.gz kamek-9f244e88204491e85f1c086bc8d3478ea9c34770.zip |
gigantic background hack
Diffstat (limited to 'src/levelspecial.cpp')
-rw-r--r-- | src/levelspecial.cpp | 24 |
1 files changed, 21 insertions, 3 deletions
diff --git a/src/levelspecial.cpp b/src/levelspecial.cpp index 3432002..962b87f 100644 --- a/src/levelspecial.cpp +++ b/src/levelspecial.cpp @@ -39,13 +39,18 @@ extern char SizerOn; extern char ZOrderOn; extern int GlobalStarsCollected; +extern VEC2 BGScaleFront; +extern VEC2 BGScaleBack; +extern char BGScaleEnabled; + extern u32 GameTimer; #define time *(u32*)((GameTimer) + 0x4) -float GlobalSizeFloatModifications [] = {1, 0.25, 0.5, 0.75, 1.25, 1.5, 1.75, 2, 2.5, 3, 4, 5, 6, 7, 8, 10 }; -float GlobalRiderFloatModifications [] = {1, 0.6, 0.7, 0.9, 1, 1, 1, 1.1, 1.25, 1.5, 2, 2.5, 3, 3.5, 4, 5}; +static const float GlobalSizeFloatModifications [] = {1, 0.25, 0.5, 0.75, 1.25, 1.5, 1.75, 2, 2.5, 3, 4, 5, 6, 7, 8, 10 }; +static const float GlobalRiderFloatModifications [] = {1, 0.6, 0.7, 0.9, 1, 1, 1, 1.1, 1.25, 1.5, 2, 2.5, 3, 3.5, 4, 5}; +static const float BGScaleChoices[] = {0.1f, 0.15f, 0.25f, 0.375f, 0.5f, 0.625f, 0.75f, 0.9f, 1.0f, 1.125f, 1.25f, 1.5f, 1.75f, 2.0f, 2.25f, 2.5f}; bool NoMichaelBuble = false; @@ -85,6 +90,7 @@ bool ResetAfterLevel(bool didItWork) { NoMichaelBuble = false; for (int i = 0; i < 4; i++) Player_Flags[i] &= ~4; + BGScaleEnabled = 0; return didItWork; } @@ -193,7 +199,15 @@ void LevelSpecial_Update(LevelSpecial *self) { case 8: NoMichaelBuble = true; break; - + + case 9: + BGScaleEnabled = true; + BGScaleFront.x = BGScaleChoices[(self->settings >> 20) & 15]; + BGScaleFront.y = BGScaleChoices[(self->settings >> 16) & 15]; + BGScaleBack.x = BGScaleChoices[(self->settings >> 12) & 15]; + BGScaleBack.y = BGScaleChoices[(self->settings >> 8) & 15]; + break; + default: break; } @@ -248,6 +262,10 @@ void LevelSpecial_Update(LevelSpecial *self) { case 8: NoMichaelBuble = false; break; + + case 9: + BGScaleEnabled = false; + break; default: break; |