From 5730d7aca110ec1547aa8ba153d6834a515fbd62 Mon Sep 17 00:00:00 2001 From: Evan Debenham Date: Sat, 10 Sep 2022 13:07:29 -0400 Subject: [PATCH] v1.4.0: further initial tutorial improvements --- build.gradle | 4 +-- .../items/journal/Guidebook.java | 2 +- .../journal/Document.java | 2 +- .../scenes/WelcomeScene.java | 15 ++++++++--- .../ui/changelist/v1_X_Changes.java | 25 +++++++++++++++++++ 5 files changed, 41 insertions(+), 7 deletions(-) diff --git a/build.gradle b/build.gradle index fb9275e57..607ae7f0b 100644 --- a/build.gradle +++ b/build.gradle @@ -14,8 +14,8 @@ allprojects { appName = 'Shattered Pixel Dungeon' appPackageName = 'com.shatteredpixel.shatteredpixeldungeon' - appVersionCode = 651 - appVersionName = '1.4.0-ALPHA-1' + appVersionCode = 652 + appVersionName = '1.4.0-ALPHA-2' appJavaCompatibility = JavaVersion.VERSION_1_8 diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/journal/Guidebook.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/journal/Guidebook.java index ae5d1299c..295990573 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/journal/Guidebook.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/journal/Guidebook.java @@ -42,12 +42,12 @@ public class Guidebook extends Item { public final boolean doPickUp(Hero hero, int pos) { GameScene.pickUpJournal(this, pos); //we do this here so it appears before the tutorial text + GameLog.wipe(); GLog.i( Messages.capitalize(Messages.get(Hero.class, "you_now_have", name())) ); GLog.p(Messages.get(GameScene.class, "tutorial_guidebook")); GameScene.flashForDocument(Document.ADVENTURERS_GUIDE, Document.GUIDE_INTRO); Sample.INSTANCE.play( Assets.Sounds.ITEM ); hero.spendAndNext( TIME_TO_PICK_UP ); - GameLog.wipe(); return true; } diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/journal/Document.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/journal/Document.java index 1623ea9f8..4b24444af 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/journal/Document.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/journal/Document.java @@ -249,7 +249,7 @@ public enum Document { ALCHEMY_GUIDE.pagesStates.put("Brews_Elixirs", debug ? READ : NOT_FOUND); ALCHEMY_GUIDE.pagesStates.put("Spells", debug ? READ : NOT_FOUND); - INTROS.pagesStates.put("Dungeon", debug ? READ : NOT_FOUND); + INTROS.pagesStates.put("Dungeon", READ); INTROS.pagesStates.put("Sewers", debug ? READ : NOT_FOUND); INTROS.pagesStates.put("Prison", debug ? READ : NOT_FOUND); INTROS.pagesStates.put("Caves", debug ? READ : NOT_FOUND); diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/scenes/WelcomeScene.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/scenes/WelcomeScene.java index 4183415c3..eaa983d0a 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/scenes/WelcomeScene.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/scenes/WelcomeScene.java @@ -147,10 +147,20 @@ public class WelcomeScene extends PixelScene { protected void onClick() { super.onClick(); if (previousVersion == 0 || SPDSettings.intro()){ + + //TODO for testers + if (previousVersion > 0){ + updateVersion(previousVersion); + } + SPDSettings.version(ShatteredPixelDungeon.versionCode); GamesInProgress.selectedClass = null; - GamesInProgress.curSlot = 1; - ShatteredPixelDungeon.switchScene(HeroSelectScene.class); + GamesInProgress.curSlot = GamesInProgress.firstEmpty(); + if (GamesInProgress.curSlot == -1){ + ShatteredPixelDungeon.switchScene(StartScene.class); + } else { + ShatteredPixelDungeon.switchScene(HeroSelectScene.class); + } } else { updateVersion(previousVersion); ShatteredPixelDungeon.switchScene(TitleScene.class); @@ -202,7 +212,6 @@ public class WelcomeScene extends PixelScene { } else { message = Messages.get(this, "what_msg"); } - Document.INTROS.readPage(0); message = "Greetings Alpha Testers!\n\nAll of the gameplay changes for v1.4.0 are in place, but there's still a bit of UI/UX work and lore to finish up.\n\nKeep in mind that this is an early release, so bugs are to be expected. Please let me know if you encounter any!"; diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/ui/changelist/v1_X_Changes.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/ui/changelist/v1_X_Changes.java index 39e1f8c0a..f5d00a47d 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/ui/changelist/v1_X_Changes.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/ui/changelist/v1_X_Changes.java @@ -91,6 +91,31 @@ public class v1_X_Changes { changes.hardlight(Window.TITLE_COLOR); changeInfos.add(changes); + changes = new ChangeInfo("", false, null); + changes.hardlight(Window.TITLE_COLOR); + changeInfos.add(changes); + + changes = new ChangeInfo("ALPHA-2", false, null); + changes.hardlight(Window.TITLE_COLOR); + changeInfos.add(changes); + + changes.addButton(new ChangeButton(new ItemSprite(ItemSpriteSheet.MASTERY), "Expanded Tutorial", + "The game now starts with a very short guided tutorial that explains game movement, highlights the interface, and encourages reading the game log / guidebook.\n\n" + + "Alpha/Beta players will get the tutorial on their first play session, in order to test it and give feedback.")); + + changes.addButton(new ChangeButton(new ItemSprite(ItemSpriteSheet.GUIDE_PAGE), "Lore Additions", + "Most of the code for per-region lore has been implemented, but the lore pages themselves have not been put in the game yet, so these new lore documents are not yet findable.")); + + changes.addButton(new ChangeButton(new Image(Assets.Sprites.SPINNER, 144, 0, 16, 16), Messages.get(ChangesScene.class, "bugfixes"), + "Fixed (caused by ALPHA):\n" + + "_-_ Crash bugs in boss floors\n" + + "_-_ Ring of Arcana missing from the item catalog\n" + + "_-_ Distortion traps only summoning piranhas\n" + + "_-_ Dungeon introduction text not being set as found\n" + + "_-_ Various minor textual errors\n\n" + + "Fixed (existed prior to ALPHA):\n" + + "_-_ Giant necromancers summoning skeletons into doorways")); + changes = new ChangeInfo(Messages.get(ChangesScene.class, "new"), false, null); changes.hardlight(Window.TITLE_COLOR); changeInfos.add(changes);