From ee26c346bd2bf214d0d2ef1f9765dd3f0b5de23e Mon Sep 17 00:00:00 2001 From: Evan Debenham Date: Thu, 15 Aug 2024 14:32:55 -0400 Subject: [PATCH] v2.5.0: added a little dot progressing vfx to interlevelscene --- .../assets/messages/scenes/scenes.properties | 16 +++++++------- .../scenes/InterlevelScene.java | 22 +++++++++++++++++-- 2 files changed, 28 insertions(+), 10 deletions(-) diff --git a/core/src/main/assets/messages/scenes/scenes.properties b/core/src/main/assets/messages/scenes/scenes.properties index 6a4a22850..91c697eef 100644 --- a/core/src/main/assets/messages/scenes/scenes.properties +++ b/core/src/main/assets/messages/scenes/scenes.properties @@ -70,13 +70,13 @@ scenes.heroselectscene.custom_seed_duplicate=You already have a regular game in scenes.heroselectscene.custom_seed_set=Set scenes.heroselectscene.custom_seed_clear=Clear -scenes.interlevelscene$mode.descend=Descending... -scenes.interlevelscene$mode.ascend=Ascending... -scenes.interlevelscene$mode.continue=Loading... -scenes.interlevelscene$mode.resurrect=Resurrecting... -scenes.interlevelscene$mode.return=Returning... -scenes.interlevelscene$mode.fall=Falling!... -scenes.interlevelscene$mode.reset=Resetting... +scenes.interlevelscene$mode.descend=Descending +scenes.interlevelscene$mode.ascend=Ascending +scenes.interlevelscene$mode.continue=Loading +scenes.interlevelscene$mode.resurrect=Resurrecting +scenes.interlevelscene$mode.return=Returning +scenes.interlevelscene$mode.fall=Falling! +scenes.interlevelscene$mode.reset=Resetting scenes.interlevelscene.file_not_found=Save file not found. If this error persists after restarting, it may mean this save game is corrupted. Sorry about that. scenes.interlevelscene.io_error=Cannot read save file. If this error persists after restarting, it may mean this save game is corrupted. Sorry about that. @@ -127,7 +127,7 @@ scenes.titlescene.patreon_body=Shattered Pixel Dungeon is a completely free game scenes.titlescene.patreon_button=Patreon Page scenes.welcomescene.update_intro=Shattered Pixel Dungeon has been updated! -scenes.welcomescene.update_msg=v2.4.0 features a new category of item: trinkets! They are more about tweaking gameplay variables than giving direct power or utility.\n\nThere are also a bunch of smaller additions and tweaks, most notably to the Duelist and to Alchemy. Be sure to check the changes screen for full details. +scenes.welcomescene.update_msg=v2.5.0 includes a total overhaul to the journal, some new trinkets, and tonnes of smaller tweaks and balance changes.\n\nThere are also new splash arts for each of the dungeons regions, viewable during loading screens! Be sure to check the changes screen for full details. scenes.welcomescene.patch_intro=Shattered Pixel Dungeon has been patched! scenes.welcomescene.patch_bugfixes=This patch contains bugfixes. scenes.welcomescene.patch_translations=This patch contains translation updates. diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/scenes/InterlevelScene.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/scenes/InterlevelScene.java index 28cf981b9..9eda5b727 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/scenes/InterlevelScene.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/scenes/InterlevelScene.java @@ -306,12 +306,30 @@ public class InterlevelScene extends PixelScene { } waitingTime = 0f; } - + + private int dots = 0; + @Override public void update() { super.update(); waitingTime += Game.elapsed; + + if (mode != Mode.FALL && dots != Math.ceil(waitingTime / ((2*fadeTime)/3f))) { + String text = Messages.get(Mode.class, mode.name()); + dots = (int)Math.ceil(waitingTime / ((2*fadeTime)/3f))%3; + switch (dots){ + case 1: default: + message.text(text + "."); + break; + case 2: + message.text(text + ".."); + break; + case 0: + message.text(text + "..."); + break; + } + } switch (phase) { @@ -378,7 +396,7 @@ public class InterlevelScene extends PixelScene { if (mode == Mode.FALL) { message.setPos( - (Camera.main.width - message.width() - 6) + Random.NormalFloat(-1, 1), + (Camera.main.width - message.width() - 4) + Random.NormalFloat(-1, 1), (Camera.main.height - message.height() - 6) + Random.NormalFloat(-1, 1) ); align(message);