summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorkdx <kikoodx@paranoici.org>2023-03-23 21:28:39 +0100
committerkdx <kikoodx@paranoici.org>2023-03-23 21:28:39 +0100
commit5404057af3ee9f8a6f3475c20e768fe56f9fc83c (patch)
tree228b4951f01a56f50f55eac97f09d8125fec3888
parent65a36b0fc457c9c755cf54237e58f10167afa0cb (diff)
downloadhyperultra-5404057af3ee9f8a6f3475c20e768fe56f9fc83c.tar.gz
polish title screen
-rw-r--r--src/background.c4
-rw-r--r--src/main.c18
2 files changed, 16 insertions, 6 deletions
diff --git a/src/background.c b/src/background.c
index f0991e4..48501c1 100644
--- a/src/background.c
+++ b/src/background.c
@@ -15,7 +15,7 @@ draw_square(double size, double angle)
void
background_update(Game *g)
{
- if (game_entity_count(g, entity_type("player")) > 0)
+ if (g != NULL && game_entity_count(g, entity_type("player")) > 0)
tick += 1.0;
else
tick += 0.25;
@@ -24,6 +24,8 @@ background_update(Game *g)
void
background_draw(void)
{
+ if (!tick)
+ return;
LZY_DrawSetColor(BLACK);
draw_square(300 * sin(tick / 50), tick / 40);
draw_square(300 * sin(tick / 40), tick / 30);
diff --git a/src/main.c b/src/main.c
index 2ae18d2..2b4bd3c 100644
--- a/src/main.c
+++ b/src/main.c
@@ -23,17 +23,24 @@ int main(void)
}
game_init(game);
- int hold = 0;
+ double hold = 0;
int stage = 0;
while (!LZY_ShouldQuit()) {
+ extern double tick;
LZY_CycleEvents();
input_update();
- if (input_down(K_O))
+ if (input_down(K_O)) {
hold += 1;
- else
- hold -= 3;
- if (hold < 0)
+ tick += 1;
+ } else {
+ hold *= 0.9;
+ tick *= 0.9;
+ }
+ if (hold < 1.0 / 128) {
hold = 0;
+ tick = 0;
+ }
+ LZY_Log("%f %f", hold, tick);
if (hold > 50) {
if (stage == 1)
break;
@@ -61,6 +68,7 @@ int main(void)
LZY_DrawText(48, y += 48, "hold SHIFT to continue");
if (hold)
LZY_DrawFillRect(0, DISPLAY_HEIGHT - 24, hold * 8, 24);
+ background_draw();
LZY_DrawEnd();
}