diff --git a/core/src/main/assets/interfaces/icons.png b/core/src/main/assets/interfaces/icons.png index bc9bcc8c6..8cb582a53 100644 Binary files a/core/src/main/assets/interfaces/icons.png and b/core/src/main/assets/interfaces/icons.png differ diff --git a/core/src/main/assets/messages/scenes/scenes.properties b/core/src/main/assets/messages/scenes/scenes.properties index f44f10cab..be2085256 100644 --- a/core/src/main/assets/messages/scenes/scenes.properties +++ b/core/src/main/assets/messages/scenes/scenes.properties @@ -98,9 +98,9 @@ scenes.titlescene$changesbutton.changes=Current Changes Screen scenes.titlescene.patreon_body=Shattered Pixel Dungeon is a completely free game, which means that I depend on support from generous players in order to keep making it.\n\nIf you're interested in supporting me, the best way to do so is through Patreon. Patreon gives me a consistent income source, and allows me to give something back to those who support me!\n\nPatrons get exclusive blog posts every week which let them know about what I'm working on before anyone else!\n\nYou can take a look at my Patreon page for the most up to date information about benefits, Thank you for your consideration!\n\n(Patreon rewards are only available in English) scenes.titlescene.patreon_button=Patreon Page -scenes.welcomescene.welcome_msg=Shattered Pixel Dungeon is a roguelike RPG, with randomly generated enemies, levels, items, and traps!\n\nEach run is a new challenging experience, but be careful, death is permanent!\n\nHappy Dungeoneering! +scenes.welcomescene.welcome_msg=Welcome to Shattered Pixel Dungeon!\n\nEach run through the dungeon is a new challenging experience, and be careful, death is permanent! Getting started is simple, but strategy is required if you want to win!\n\nHappy Dungeoneering! scenes.welcomescene.update_intro=Shattered Pixel Dungeon has been updated! -scenes.welcomescene.update_msg=v0.9.3 redesigns hero armor abilities and adds a fourth tier to the talent system! There are 13 abilities and 40 new talents in total.\n\nThere's also a new challenge, balance changes, bugfixes and various smaller tweaks.\n\nBe sure to check the changes screen for full details. +scenes.welcomescene.update_msg=v0.9.4 contains a variety of content additions and refinements. There is new music, support for new platforms, new alchemy recipes, and a few other odds and ends.\n\nI've also made a bunch of balance changes to hero abilities and various items.\n\nBe 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/AboutScene.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/scenes/AboutScene.java index 5c045a58c..1df22b87f 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/scenes/AboutScene.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/scenes/AboutScene.java @@ -23,6 +23,7 @@ package com.shatteredpixel.shatteredpixeldungeon.scenes; import com.shatteredpixel.shatteredpixeldungeon.ShatteredPixelDungeon; import com.shatteredpixel.shatteredpixeldungeon.effects.Flare; +import com.shatteredpixel.shatteredpixeldungeon.ui.Archs; import com.shatteredpixel.shatteredpixeldungeon.ui.ExitButton; import com.shatteredpixel.shatteredpixeldungeon.ui.Icons; import com.shatteredpixel.shatteredpixeldungeon.ui.RenderedTextBlock; @@ -49,6 +50,13 @@ public class AboutScene extends PixelScene { int w = Camera.main.width; int h = Camera.main.height; + Archs archs = new Archs(); + archs.setSize( w, h ); + add( archs ); + + //darkens the arches + add(new ColorBlock(w, h, 0x88000000)); + ScrollPane list = new ScrollPane( new Component() ); add( list ); @@ -69,7 +77,11 @@ public class AboutScene extends PixelScene { "Developed by: _Evan Debenham_\nBased on Pixel Dungeon's open source", "ShatteredPixel.com", shpxLink); - shpx.setRect((w - fullWidth)/2f, 6, 120, 0); + if (landscape()){ + shpx.setRect((w - fullWidth)/2f - 6, 10, 120, 0); + } else { + shpx.setRect((w - fullWidth)/2f, 6, 120, 0); + } content.add(shpx); CreditsBlock alex = new CreditsBlock(false, Window.SHPX_COLOR, @@ -80,7 +92,7 @@ public class AboutScene extends PixelScene { "https://www.alekskomitov.com"); alex.setSize(colWidth/2f, 0); if (landscape()){ - alex.setPos(shpx.right(), shpx.top() + (shpx.height() - alex.height())/2f); + alex.setPos(shpx.right(), shpx.top() + (shpx.height() - alex.height()*2)/2f); } else { alex.setPos(w/2f - colWidth/2f, shpx.bottom()+5); } @@ -95,6 +107,15 @@ public class AboutScene extends PixelScene { charlie.setRect(alex.right(), alex.top(), colWidth/2f, 0); content.add(charlie); + CreditsBlock kristjan = new CreditsBlock(false, Window.SHPX_COLOR, + "Music:", + Icons.KRISTJAN.get(), + "Kristjan Haaristo", + "youtube.com/c/Kristjan", + "https://www.youtube.com/channel/UCL1e7SgzSWbD_DQxB_5YcLA"); + kristjan.setRect(alex.right() - colWidth/4f, alex.bottom() + 5, colWidth/2f, 0); + content.add(kristjan); + //*** Pixel Dungeon Credits *** final int WATA_COLOR = 0x55AAFF; @@ -105,9 +126,9 @@ public class AboutScene extends PixelScene { "pixeldungeon.watabou.ru", "http://pixeldungeon.watabou.ru"); if (landscape()){ - wata.setRect(shpx.left(), shpx.bottom() + 8, colWidth, 0); + wata.setRect(shpx.left(), kristjan.bottom() + 8, colWidth, 0); } else { - wata.setRect(shpx.left(), alex.bottom() + 8, colWidth, 0); + wata.setRect(shpx.left(), kristjan.bottom() + 8, colWidth, 0); } content.add(wata); @@ -121,9 +142,9 @@ public class AboutScene extends PixelScene { null); cube.setSize(colWidth/2f, 0); if (landscape()){ - cube.setPos(wata.right(), wata.top() + (wata.height() - cube.height())/2f); + cube.setPos(wata.right() + colWidth/4f, wata.top() + (wata.height() - cube.height())/2f); } else { - cube.setPos(alex.left(), wata.bottom()+5); + cube.setPos(alex.left() + colWidth/4f, wata.bottom()+5); } content.add(cube); @@ -132,7 +153,7 @@ public class AboutScene extends PixelScene { final int GDX_COLOR = 0xE44D3C; CreditsBlock gdx = new CreditsBlock(true, GDX_COLOR, - null, + "libGDX", Icons.LIBGDX.get(), "ShatteredPD is powered by _libGDX_!", "libGDX.com", @@ -146,12 +167,6 @@ public class AboutScene extends PixelScene { addLine(gdx.top() - 4, content); - //blocks the rays from the LibGDX icon going above the line - ColorBlock blocker = new ColorBlock(w, 8, 0xFF000000); - blocker.y = gdx.top() - 12; - content.addToBack(blocker); - content.sendToBack(gdx); - CreditsBlock arcnor = new CreditsBlock(false, GDX_COLOR, "Pixel Dungeon GDX:", Icons.ARCNOR.get(), @@ -184,7 +199,7 @@ public class AboutScene extends PixelScene { "ShatteredPD is community-translated via _Transifex_! Thank you so much to all of Shattered's volunteer translators!", "www.transifex.com/shattered-pixel/", "https://www.transifex.com/shattered-pixel/shattered-pixel-dungeon/"); - transifex.setRect((Camera.main.width - colWidth)/2f, purigro.bottom() + 8, colWidth, 0); + transifex.setRect((Camera.main.width - colWidth)/2f, purigro.bottom() + 12, colWidth, 0); content.add(transifex); addLine(transifex.top() - 4, content); @@ -233,7 +248,7 @@ public class AboutScene extends PixelScene { btnExit.setPos( Camera.main.width - btnExit.width(), 0 ); add( btnExit ); - fadeIn(); + //fadeIn(); } @Override 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 fb4ecd210..345b3d5a4 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/scenes/WelcomeScene.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/scenes/WelcomeScene.java @@ -21,6 +21,7 @@ package com.shatteredpixel.shatteredpixeldungeon.scenes; +import com.shatteredpixel.shatteredpixeldungeon.Assets; import com.shatteredpixel.shatteredpixeldungeon.Badges; import com.shatteredpixel.shatteredpixeldungeon.Challenges; import com.shatteredpixel.shatteredpixeldungeon.Chrome; @@ -29,15 +30,19 @@ import com.shatteredpixel.shatteredpixeldungeon.Rankings; import com.shatteredpixel.shatteredpixeldungeon.SPDSettings; import com.shatteredpixel.shatteredpixeldungeon.ShatteredPixelDungeon; import com.shatteredpixel.shatteredpixeldungeon.effects.BannerSprites; +import com.shatteredpixel.shatteredpixeldungeon.effects.Fireball; import com.shatteredpixel.shatteredpixeldungeon.messages.Languages; import com.shatteredpixel.shatteredpixeldungeon.messages.Messages; +import com.shatteredpixel.shatteredpixeldungeon.ui.Archs; import com.shatteredpixel.shatteredpixeldungeon.ui.Icons; import com.shatteredpixel.shatteredpixeldungeon.ui.RenderedTextBlock; import com.shatteredpixel.shatteredpixeldungeon.ui.StyledButton; import com.watabou.glwrap.Blending; import com.watabou.noosa.Camera; +import com.watabou.noosa.ColorBlock; import com.watabou.noosa.Game; import com.watabou.noosa.Image; +import com.watabou.noosa.audio.Music; import com.watabou.utils.FileUtils; import java.util.ArrayList; @@ -68,8 +73,14 @@ public class WelcomeScene extends PixelScene { int w = Camera.main.width; int h = Camera.main.height; + Archs archs = new Archs(); + archs.setSize( w, h ); + add( archs ); + + //darkens the arches + add(new ColorBlock(w, h, 0x88000000)); + Image title = BannerSprites.get( BannerSprites.Type.PIXEL_DUNGEON ); - title.brightness(0.6f); add( title ); float topRegion = Math.max(title.height - 6, h*0.45f); @@ -79,6 +90,9 @@ public class WelcomeScene extends PixelScene { align(title); + placeTorch(title.x + 22, title.y + 46); + placeTorch(title.x + title.width - 22, title.y + 46); + Image signs = new Image( BannerSprites.get( BannerSprites.Type.PIXEL_DUNGEON_SIGNS ) ) { private float time = 0; @Override @@ -165,6 +179,12 @@ public class WelcomeScene extends PixelScene { } + private void placeTorch( float x, float y ) { + Fireball fb = new Fireball(); + fb.setPos( x, y ); + add( fb ); + } + private void updateVersion(int previousVersion){ //update rankings, to update any data which may be outdated diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/ui/Icons.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/ui/Icons.java index a989c34e0..0373a40fa 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/ui/Icons.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/ui/Icons.java @@ -79,9 +79,12 @@ public enum Icons { WATA, WARNING, - //32x32 icons for credits + //credits icons: + //16x16 ALEKS, + //32x32 CHARLIE, + KRISTJAN, CUBE_CODE, PURIGRO, ARCNOR; @@ -220,12 +223,15 @@ public enum Icons { icon.frame( icon.texture.uvRect( 34, 81, 48, 95 ) ); break; - //32*32 icons are scaled down to match game's size case ALEKS: + icon.frame( icon.texture.uvRect( 48, 80, 64, 96 ) ); + break; + //32*32 icons are scaled down to match game's size + case CHARLIE: icon.frame( icon.texture.uvRect( 0, 96, 32, 128 ) ); icon.scale.set(PixelScene.align(0.49f)); break; - case CHARLIE: + case KRISTJAN: icon.frame( icon.texture.uvRect( 32, 96, 64, 128 ) ); icon.scale.set(PixelScene.align(0.49f)); break;