├── .gitignore ├── LICENSE.txt ├── README.md ├── SPD-classes ├── build.gradle └── src │ └── main │ └── java │ └── com │ └── watabou │ ├── glscripts │ └── Script.java │ ├── gltextures │ ├── Atlas.java │ ├── SmartTexture.java │ └── TextureCache.java │ ├── glwrap │ ├── Attribute.java │ ├── Blending.java │ ├── Framebuffer.java │ ├── Matrix.java │ ├── Program.java │ ├── Quad.java │ ├── Renderbuffer.java │ ├── Shader.java │ ├── Texture.java │ ├── Uniform.java │ └── Vertexbuffer.java │ ├── input │ ├── ControllerHandler.java │ ├── GameAction.java │ ├── InputHandler.java │ ├── KeyBindings.java │ ├── KeyEvent.java │ ├── PointerEvent.java │ └── ScrollEvent.java │ ├── noosa │ ├── BitmapText.java │ ├── Camera.java │ ├── ColorBlock.java │ ├── Game.java │ ├── Gizmo.java │ ├── Group.java │ ├── Halo.java │ ├── Image.java │ ├── MovieClip.java │ ├── NinePatch.java │ ├── NoosaScript.java │ ├── NoosaScriptNoLighting.java │ ├── PointerArea.java │ ├── PseudoPixel.java │ ├── RenderedText.java │ ├── Resizable.java │ ├── Scene.java │ ├── ScrollArea.java │ ├── SkinnedBlock.java │ ├── TextInput.java │ ├── TextureFilm.java │ ├── Tilemap.java │ ├── Visual.java │ ├── audio │ │ ├── Music.java │ │ └── Sample.java │ ├── particles │ │ ├── BitmaskEmitter.java │ │ ├── Emitter.java │ │ └── PixelParticle.java │ ├── tweeners │ │ ├── AlphaTweener.java │ │ ├── CameraScrollTweener.java │ │ ├── Delayer.java │ │ ├── PosTweener.java │ │ ├── ScaleTweener.java │ │ └── Tweener.java │ └── ui │ │ ├── Component.java │ │ └── Cursor.java │ └── utils │ ├── BArray.java │ ├── BitmapCache.java │ ├── BitmapFilm.java │ ├── Bundlable.java │ ├── Bundle.java │ ├── Callback.java │ ├── ColorMath.java │ ├── DeviceCompat.java │ ├── FileUtils.java │ ├── GameMath.java │ ├── GameSettings.java │ ├── Graph.java │ ├── PathFinder.java │ ├── PlatformSupport.java │ ├── Point.java │ ├── PointF.java │ ├── Random.java │ ├── Rect.java │ ├── RectF.java │ ├── Reflection.java │ ├── Signal.java │ └── SparseArray.java ├── android ├── .gitignore ├── build.gradle ├── proguard-rules.pro └── src │ ├── debug │ └── res │ │ ├── mipmap-anydpi-v26 │ │ └── ic_launcher.xml │ │ ├── mipmap-hdpi │ │ ├── ic_launcher.png │ │ ├── ic_launcher_background.png │ │ ├── ic_launcher_foreground.png │ │ └── ic_launcher_monochrome.png │ │ ├── mipmap-ldpi │ │ └── ic_launcher.png │ │ ├── mipmap-mdpi │ │ ├── ic_launcher.png │ │ ├── ic_launcher_background.png │ │ ├── ic_launcher_foreground.png │ │ └── ic_launcher_monochrome.png │ │ ├── mipmap-xhdpi │ │ ├── ic_launcher.png │ │ ├── ic_launcher_background.png │ │ ├── ic_launcher_foreground.png │ │ └── ic_launcher_monochrome.png │ │ ├── mipmap-xxhdpi │ │ ├── ic_launcher.png │ │ ├── ic_launcher_background.png │ │ ├── ic_launcher_foreground.png │ │ └── ic_launcher_monochrome.png │ │ └── mipmap-xxxhdpi │ │ ├── ic_launcher.png │ │ ├── ic_launcher_background.png │ │ ├── ic_launcher_foreground.png │ │ └── ic_launcher_monochrome.png │ └── main │ ├── AndroidManifest.xml │ ├── java │ └── com │ │ └── shatteredpixel │ │ └── shatteredpixeldungeon │ │ └── android │ │ ├── AndroidBackupHandler.java │ │ ├── AndroidLauncher.java │ │ ├── AndroidMissingNativesHandler.java │ │ └── AndroidPlatformSupport.java │ └── res │ ├── mipmap-anydpi-v26 │ └── ic_launcher.xml │ ├── mipmap-hdpi │ ├── ic_launcher.png │ ├── ic_launcher_background.png │ ├── ic_launcher_foreground.png │ └── ic_launcher_monochrome.png │ ├── mipmap-ldpi │ └── ic_launcher.png │ ├── mipmap-mdpi │ ├── ic_launcher.png │ ├── ic_launcher_background.png │ ├── ic_launcher_foreground.png │ └── ic_launcher_monochrome.png │ ├── mipmap-xhdpi │ ├── ic_launcher.png │ ├── ic_launcher_background.png │ ├── ic_launcher_foreground.png │ └── ic_launcher_monochrome.png │ ├── mipmap-xxhdpi │ ├── ic_launcher.png │ ├── ic_launcher_background.png │ ├── ic_launcher_foreground.png │ └── ic_launcher_monochrome.png │ └── mipmap-xxxhdpi │ ├── ic_launcher.png │ ├── ic_launcher_background.png │ ├── ic_launcher_foreground.png │ └── ic_launcher_monochrome.png ├── build.gradle ├── core ├── build.gradle └── src │ └── main │ ├── assets │ ├── effects │ │ ├── effects.png │ │ ├── fireball-short.png │ │ ├── fireball-tall.png │ │ ├── specks.png │ │ ├── spell_icons.png │ │ └── text_icons.png │ ├── environment │ │ ├── custom_tiles │ │ │ ├── caves_boss.png │ │ │ ├── caves_quest.png │ │ │ ├── city_boss.png │ │ │ ├── halls_special.png │ │ │ ├── prison_exit.png │ │ │ ├── prison_quest.png │ │ │ ├── sewer_boss.png │ │ │ └── weak_floor.png │ │ ├── terrain_features.png │ │ ├── tiles_caves.png │ │ ├── tiles_caves_crystal.png │ │ ├── tiles_caves_gnoll.png │ │ ├── tiles_city.png │ │ ├── tiles_halls.png │ │ ├── tiles_prison.png │ │ ├── tiles_sewers.png │ │ ├── visual_grid.png │ │ ├── wall_blocking.png │ │ ├── water0.png │ │ ├── water1.png │ │ ├── water2.png │ │ ├── water3.png │ │ └── water4.png │ ├── fonts │ │ ├── pixel_font.png │ │ └── pixel_font.ttf │ ├── gdx │ │ ├── cursor_controller.png │ │ ├── cursor_mouse.png │ │ ├── textfield.atlas │ │ ├── textfield.json │ │ └── textfield.png │ ├── interfaces │ │ ├── arcs1.png │ │ ├── arcs2.png │ │ ├── badges.png │ │ ├── banners.png │ │ ├── boss_hp.png │ │ ├── buffs.png │ │ ├── chrome.png │ │ ├── hero_icons.png │ │ ├── icons.png │ │ ├── large_buffs.png │ │ ├── locked_badge.png │ │ ├── menu_button.png │ │ ├── menu_pane.png │ │ ├── radial_menu.png │ │ ├── shadow.png │ │ ├── status_pane.png │ │ ├── surface.png │ │ ├── talent_button.png │ │ ├── talent_icons.png │ │ └── toolbar.png │ ├── messages │ │ ├── actors │ │ │ ├── actors.properties │ │ │ ├── actors_be.properties │ │ │ ├── actors_cs.properties │ │ │ ├── actors_de.properties │ │ │ ├── actors_el.properties │ │ │ ├── actors_eo.properties │ │ │ ├── actors_es.properties │ │ │ ├── actors_fr.properties │ │ │ ├── actors_hu.properties │ │ │ ├── actors_in.properties │ │ │ ├── actors_it.properties │ │ │ ├── actors_ja.properties │ │ │ ├── actors_ko.properties │ │ │ ├── actors_nl.properties │ │ │ ├── actors_pl.properties │ │ │ ├── actors_pt.properties │ │ │ ├── actors_ru.properties │ │ │ ├── actors_tr.properties │ │ │ ├── actors_uk.properties │ │ │ ├── actors_vi.properties │ │ │ └── actors_zh.properties │ │ ├── items │ │ │ ├── items.properties │ │ │ ├── items_be.properties │ │ │ ├── items_cs.properties │ │ │ ├── items_de.properties │ │ │ ├── items_el.properties │ │ │ ├── items_eo.properties │ │ │ ├── items_es.properties │ │ │ ├── items_fr.properties │ │ │ ├── items_hu.properties │ │ │ ├── items_in.properties │ │ │ ├── items_it.properties │ │ │ ├── items_ja.properties │ │ │ ├── items_ko.properties │ │ │ ├── items_nl.properties │ │ │ ├── items_pl.properties │ │ │ ├── items_pt.properties │ │ │ ├── items_ru.properties │ │ │ ├── items_tr.properties │ │ │ ├── items_uk.properties │ │ │ ├── items_vi.properties │ │ │ └── items_zh.properties │ │ ├── journal │ │ │ ├── journal.properties │ │ │ ├── journal_be.properties │ │ │ ├── journal_cs.properties │ │ │ ├── journal_de.properties │ │ │ ├── journal_el.properties │ │ │ ├── journal_eo.properties │ │ │ ├── journal_es.properties │ │ │ ├── journal_fr.properties │ │ │ ├── journal_hu.properties │ │ │ ├── journal_in.properties │ │ │ ├── journal_it.properties │ │ │ ├── journal_ja.properties │ │ │ ├── journal_ko.properties │ │ │ ├── journal_nl.properties │ │ │ ├── journal_pl.properties │ │ │ ├── journal_pt.properties │ │ │ ├── journal_ru.properties │ │ │ ├── journal_tr.properties │ │ │ ├── journal_uk.properties │ │ │ ├── journal_vi.properties │ │ │ └── journal_zh.properties │ │ ├── levels │ │ │ ├── levels.properties │ │ │ ├── levels_be.properties │ │ │ ├── levels_cs.properties │ │ │ ├── levels_de.properties │ │ │ ├── levels_el.properties │ │ │ ├── levels_eo.properties │ │ │ ├── levels_es.properties │ │ │ ├── levels_fr.properties │ │ │ ├── levels_hu.properties │ │ │ ├── levels_in.properties │ │ │ ├── levels_it.properties │ │ │ ├── levels_ja.properties │ │ │ ├── levels_ko.properties │ │ │ ├── levels_nl.properties │ │ │ ├── levels_pl.properties │ │ │ ├── levels_pt.properties │ │ │ ├── levels_ru.properties │ │ │ ├── levels_tr.properties │ │ │ ├── levels_uk.properties │ │ │ ├── levels_vi.properties │ │ │ └── levels_zh.properties │ │ ├── misc │ │ │ ├── misc.properties │ │ │ ├── misc_be.properties │ │ │ ├── misc_cs.properties │ │ │ ├── misc_de.properties │ │ │ ├── misc_el.properties │ │ │ ├── misc_eo.properties │ │ │ ├── misc_es.properties │ │ │ ├── misc_fr.properties │ │ │ ├── misc_hu.properties │ │ │ ├── misc_in.properties │ │ │ ├── misc_it.properties │ │ │ ├── misc_ja.properties │ │ │ ├── misc_ko.properties │ │ │ ├── misc_nl.properties │ │ │ ├── misc_pl.properties │ │ │ ├── misc_pt.properties │ │ │ ├── misc_ru.properties │ │ │ ├── misc_tr.properties │ │ │ ├── misc_uk.properties │ │ │ ├── misc_vi.properties │ │ │ └── misc_zh.properties │ │ ├── plants │ │ │ ├── plants.properties │ │ │ ├── plants_be.properties │ │ │ ├── plants_cs.properties │ │ │ ├── plants_de.properties │ │ │ ├── plants_el.properties │ │ │ ├── plants_eo.properties │ │ │ ├── plants_es.properties │ │ │ ├── plants_fr.properties │ │ │ ├── plants_hu.properties │ │ │ ├── plants_in.properties │ │ │ ├── plants_it.properties │ │ │ ├── plants_ja.properties │ │ │ ├── plants_ko.properties │ │ │ ├── plants_nl.properties │ │ │ ├── plants_pl.properties │ │ │ ├── plants_pt.properties │ │ │ ├── plants_ru.properties │ │ │ ├── plants_tr.properties │ │ │ ├── plants_uk.properties │ │ │ ├── plants_vi.properties │ │ │ └── plants_zh.properties │ │ ├── private │ │ │ ├── private_be.properties │ │ │ └── private_eo.properties │ │ ├── scenes │ │ │ ├── scenes.properties │ │ │ ├── scenes_be.properties │ │ │ ├── scenes_cs.properties │ │ │ ├── scenes_de.properties │ │ │ ├── scenes_el.properties │ │ │ ├── scenes_eo.properties │ │ │ ├── scenes_es.properties │ │ │ ├── scenes_fr.properties │ │ │ ├── scenes_hu.properties │ │ │ ├── scenes_in.properties │ │ │ ├── scenes_it.properties │ │ │ ├── scenes_ja.properties │ │ │ ├── scenes_ko.properties │ │ │ ├── scenes_nl.properties │ │ │ ├── scenes_pl.properties │ │ │ ├── scenes_pt.properties │ │ │ ├── scenes_ru.properties │ │ │ ├── scenes_tr.properties │ │ │ ├── scenes_uk.properties │ │ │ ├── scenes_vi.properties │ │ │ └── scenes_zh.properties │ │ ├── ui │ │ │ ├── ui.properties │ │ │ ├── ui_be.properties │ │ │ ├── ui_cs.properties │ │ │ ├── ui_de.properties │ │ │ ├── ui_el.properties │ │ │ ├── ui_eo.properties │ │ │ ├── ui_es.properties │ │ │ ├── ui_fr.properties │ │ │ ├── ui_hu.properties │ │ │ ├── ui_in.properties │ │ │ ├── ui_it.properties │ │ │ ├── ui_ja.properties │ │ │ ├── ui_ko.properties │ │ │ ├── ui_nl.properties │ │ │ ├── ui_pl.properties │ │ │ ├── ui_pt.properties │ │ │ ├── ui_ru.properties │ │ │ ├── ui_tr.properties │ │ │ ├── ui_uk.properties │ │ │ ├── ui_vi.properties │ │ │ └── ui_zh.properties │ │ └── windows │ │ │ ├── windows.properties │ │ │ ├── windows_be.properties │ │ │ ├── windows_cs.properties │ │ │ ├── windows_de.properties │ │ │ ├── windows_el.properties │ │ │ ├── windows_eo.properties │ │ │ ├── windows_es.properties │ │ │ ├── windows_fr.properties │ │ │ ├── windows_hu.properties │ │ │ ├── windows_in.properties │ │ │ ├── windows_it.properties │ │ │ ├── windows_ja.properties │ │ │ ├── windows_ko.properties │ │ │ ├── windows_nl.properties │ │ │ ├── windows_pl.properties │ │ │ ├── windows_pt.properties │ │ │ ├── windows_ru.properties │ │ │ ├── windows_tr.properties │ │ │ ├── windows_uk.properties │ │ │ ├── windows_vi.properties │ │ │ └── windows_zh.properties │ ├── music │ │ ├── caves_1.ogg │ │ ├── caves_2.ogg │ │ ├── caves_3.ogg │ │ ├── caves_boss.ogg │ │ ├── caves_boss_finale.ogg │ │ ├── caves_tense.ogg │ │ ├── city_1.ogg │ │ ├── city_2.ogg │ │ ├── city_3.ogg │ │ ├── city_boss.ogg │ │ ├── city_boss_finale.ogg │ │ ├── city_tense.ogg │ │ ├── halls_1.ogg │ │ ├── halls_2.ogg │ │ ├── halls_3.ogg │ │ ├── halls_boss.ogg │ │ ├── halls_boss_finale.ogg │ │ ├── halls_tense.ogg │ │ ├── prison_1.ogg │ │ ├── prison_2.ogg │ │ ├── prison_3.ogg │ │ ├── prison_boss.ogg │ │ ├── prison_tense.ogg │ │ ├── sewers_1.ogg │ │ ├── sewers_2.ogg │ │ ├── sewers_3.ogg │ │ ├── sewers_boss.ogg │ │ ├── sewers_tense.ogg │ │ ├── theme_1.ogg │ │ ├── theme_2.ogg │ │ └── theme_finale.ogg │ ├── sounds │ │ ├── alert.mp3 │ │ ├── atk_crossbow.mp3 │ │ ├── atk_spiritbow.mp3 │ │ ├── badge.mp3 │ │ ├── beacon.mp3 │ │ ├── bee.mp3 │ │ ├── blast.mp3 │ │ ├── bones.mp3 │ │ ├── boss.mp3 │ │ ├── burning.mp3 │ │ ├── chains.mp3 │ │ ├── challenge.mp3 │ │ ├── chargeup.mp3 │ │ ├── charms.mp3 │ │ ├── click.mp3 │ │ ├── cursed.mp3 │ │ ├── death.mp3 │ │ ├── debuff.mp3 │ │ ├── degrade.mp3 │ │ ├── descend.mp3 │ │ ├── dewdrop.mp3 │ │ ├── door_open.mp3 │ │ ├── drink.mp3 │ │ ├── eat.mp3 │ │ ├── evoke.mp3 │ │ ├── falling.mp3 │ │ ├── gas.mp3 │ │ ├── ghost.mp3 │ │ ├── gold.mp3 │ │ ├── grass.mp3 │ │ ├── health_critical.mp3 │ │ ├── health_warn.mp3 │ │ ├── hit.mp3 │ │ ├── hit_arrow.mp3 │ │ ├── hit_crush.mp3 │ │ ├── hit_magic.mp3 │ │ ├── hit_parry.mp3 │ │ ├── hit_slash.mp3 │ │ ├── hit_stab.mp3 │ │ ├── hit_strong.mp3 │ │ ├── item.mp3 │ │ ├── levelup.mp3 │ │ ├── lightning.mp3 │ │ ├── lullaby.mp3 │ │ ├── mastery.mp3 │ │ ├── meld.mp3 │ │ ├── mimic.mp3 │ │ ├── mine.mp3 │ │ ├── miss.mp3 │ │ ├── plant.mp3 │ │ ├── puff.mp3 │ │ ├── ray.mp3 │ │ ├── read.mp3 │ │ ├── rocks.mp3 │ │ ├── scan.mp3 │ │ ├── secret.mp3 │ │ ├── shatter.mp3 │ │ ├── sheep.mp3 │ │ ├── step.mp3 │ │ ├── sturdy.mp3 │ │ ├── teleport.mp3 │ │ ├── tomb.mp3 │ │ ├── trample.mp3 │ │ ├── trap.mp3 │ │ ├── unlock.mp3 │ │ ├── water.mp3 │ │ └── zap.mp3 │ ├── splashes │ │ ├── caves.jpg │ │ ├── city.jpg │ │ ├── cleric.jpg │ │ ├── duelist.jpg │ │ ├── halls.jpg │ │ ├── huntress.jpg │ │ ├── mage.jpg │ │ ├── prison.jpg │ │ ├── rogue.jpg │ │ ├── sewers.jpg │ │ └── warrior.jpg │ └── sprites │ │ ├── amulet.png │ │ ├── avatars.png │ │ ├── bat.png │ │ ├── bee.png │ │ ├── blacksmith.png │ │ ├── brute.png │ │ ├── cleric.png │ │ ├── crab.png │ │ ├── crystal_guardian.png │ │ ├── crystal_spire.png │ │ ├── crystal_wisp.png │ │ ├── demon.png │ │ ├── dm100.png │ │ ├── dm200.png │ │ ├── dm300.png │ │ ├── duelist.png │ │ ├── elemental.png │ │ ├── eye.png │ │ ├── fungal_core.png │ │ ├── fungal_sentry.png │ │ ├── fungal_spinner.png │ │ ├── ghost.png │ │ ├── ghoul.png │ │ ├── gnoll.png │ │ ├── gnoll_geomancer.png │ │ ├── gnoll_guard.png │ │ ├── gnoll_sapper.png │ │ ├── golem.png │ │ ├── goo.png │ │ ├── guard.png │ │ ├── guardian.png │ │ ├── huntress.png │ │ ├── item_icons.png │ │ ├── items.png │ │ ├── king.png │ │ ├── larva.png │ │ ├── lotus.png │ │ ├── mage.png │ │ ├── mimic.png │ │ ├── monk.png │ │ ├── necromancer.png │ │ ├── ninja_log.png │ │ ├── pet.png │ │ ├── piranha.png │ │ ├── pylon.png │ │ ├── rat.png │ │ ├── ratking.png │ │ ├── red_sentry.png │ │ ├── ripper.png │ │ ├── rogue.png │ │ ├── rot_heart.png │ │ ├── rot_lasher.png │ │ ├── scorpio.png │ │ ├── shaman.png │ │ ├── sheep.png │ │ ├── shopkeeper.png │ │ ├── skeleton.png │ │ ├── slime.png │ │ ├── snake.png │ │ ├── spawner.png │ │ ├── spinner.png │ │ ├── spirit_hawk.png │ │ ├── statue.png │ │ ├── succubus.png │ │ ├── swarm.png │ │ ├── tengu.png │ │ ├── thief.png │ │ ├── undead.png │ │ ├── wandmaker.png │ │ ├── wards.png │ │ ├── warlock.png │ │ ├── warrior.png │ │ ├── wraith.png │ │ ├── yog.png │ │ └── yog_fists.png │ └── java │ └── com │ └── shatteredpixel │ └── shatteredpixeldungeon │ ├── Assets.java │ ├── Badges.java │ ├── Bones.java │ ├── Challenges.java │ ├── Chrome.java │ ├── Dungeon.java │ ├── GamesInProgress.java │ ├── QuickSlot.java │ ├── Rankings.java │ ├── SPDAction.java │ ├── SPDSettings.java │ ├── ShatteredPixelDungeon.java │ ├── Statistics.java │ ├── actors │ ├── Actor.java │ ├── Char.java │ ├── blobs │ │ ├── Alchemy.java │ │ ├── Blizzard.java │ │ ├── Blob.java │ │ ├── ConfusionGas.java │ │ ├── CorrosiveGas.java │ │ ├── Electricity.java │ │ ├── Fire.java │ │ ├── Foliage.java │ │ ├── Freezing.java │ │ ├── GooWarn.java │ │ ├── Inferno.java │ │ ├── ParalyticGas.java │ │ ├── Regrowth.java │ │ ├── SacrificialFire.java │ │ ├── SmokeScreen.java │ │ ├── StenchGas.java │ │ ├── StormCloud.java │ │ ├── ToxicGas.java │ │ ├── WaterOfAwareness.java │ │ ├── WaterOfHealth.java │ │ ├── Web.java │ │ └── WellWater.java │ ├── buffs │ │ ├── Adrenaline.java │ │ ├── AdrenalineSurge.java │ │ ├── AllyBuff.java │ │ ├── Amok.java │ │ ├── ArcaneArmor.java │ │ ├── ArtifactRecharge.java │ │ ├── AscensionChallenge.java │ │ ├── Awareness.java │ │ ├── Barkskin.java │ │ ├── Barrier.java │ │ ├── Berserk.java │ │ ├── Bleeding.java │ │ ├── Bless.java │ │ ├── Blindness.java │ │ ├── BlobImmunity.java │ │ ├── Buff.java │ │ ├── Burning.java │ │ ├── ChampionEnemy.java │ │ ├── Charm.java │ │ ├── Chill.java │ │ ├── Combo.java │ │ ├── Corrosion.java │ │ ├── Corruption.java │ │ ├── CounterBuff.java │ │ ├── Cripple.java │ │ ├── Daze.java │ │ ├── Degrade.java │ │ ├── Doom.java │ │ ├── Dread.java │ │ ├── Drowsy.java │ │ ├── EnhancedRings.java │ │ ├── FireImbue.java │ │ ├── FlavourBuff.java │ │ ├── Foresight.java │ │ ├── Frost.java │ │ ├── FrostImbue.java │ │ ├── Fury.java │ │ ├── GravityChaosTracker.java │ │ ├── GreaterHaste.java │ │ ├── Haste.java │ │ ├── Healing.java │ │ ├── HeroDisguise.java │ │ ├── Hex.java │ │ ├── HoldFast.java │ │ ├── Hunger.java │ │ ├── Invisibility.java │ │ ├── Invulnerability.java │ │ ├── Levitation.java │ │ ├── LifeLink.java │ │ ├── Light.java │ │ ├── LockedFloor.java │ │ ├── LostInventory.java │ │ ├── MagicImmune.java │ │ ├── MagicalSight.java │ │ ├── MagicalSleep.java │ │ ├── MindVision.java │ │ ├── Momentum.java │ │ ├── MonkEnergy.java │ │ ├── Ooze.java │ │ ├── Paralysis.java │ │ ├── PhysicalEmpower.java │ │ ├── PinCushion.java │ │ ├── Poison.java │ │ ├── Preparation.java │ │ ├── PrismaticGuard.java │ │ ├── Recharging.java │ │ ├── Regeneration.java │ │ ├── RevealedArea.java │ │ ├── Roots.java │ │ ├── ScrollEmpower.java │ │ ├── Shadows.java │ │ ├── ShieldBuff.java │ │ ├── Sleep.java │ │ ├── Slow.java │ │ ├── SnipersMark.java │ │ ├── SoulMark.java │ │ ├── Speed.java │ │ ├── Stamina.java │ │ ├── SuperNovaTracker.java │ │ ├── Terror.java │ │ ├── TimeStasis.java │ │ ├── ToxicImbue.java │ │ ├── Vertigo.java │ │ ├── Vulnerable.java │ │ ├── WandEmpower.java │ │ ├── Weakness.java │ │ └── WellFed.java │ ├── hero │ │ ├── Belongings.java │ │ ├── Hero.java │ │ ├── HeroAction.java │ │ ├── HeroClass.java │ │ ├── HeroSubClass.java │ │ ├── Talent.java │ │ ├── abilities │ │ │ ├── ArmorAbility.java │ │ │ ├── Ratmogrify.java │ │ │ ├── cleric │ │ │ │ ├── AscendedForm.java │ │ │ │ ├── PowerOfMany.java │ │ │ │ └── Trinity.java │ │ │ ├── duelist │ │ │ │ ├── Challenge.java │ │ │ │ ├── ElementalStrike.java │ │ │ │ └── Feint.java │ │ │ ├── huntress │ │ │ │ ├── NaturesPower.java │ │ │ │ ├── SpectralBlades.java │ │ │ │ └── SpiritHawk.java │ │ │ ├── mage │ │ │ │ ├── ElementalBlast.java │ │ │ │ ├── WarpBeacon.java │ │ │ │ └── WildMagic.java │ │ │ ├── rogue │ │ │ │ ├── DeathMark.java │ │ │ │ ├── ShadowClone.java │ │ │ │ └── SmokeBomb.java │ │ │ └── warrior │ │ │ │ ├── Endure.java │ │ │ │ ├── HeroicLeap.java │ │ │ │ └── Shockwave.java │ │ └── spells │ │ │ ├── AuraOfProtection.java │ │ │ ├── BeamingRay.java │ │ │ ├── BlessSpell.java │ │ │ ├── BodyForm.java │ │ │ ├── Cleanse.java │ │ │ ├── ClericSpell.java │ │ │ ├── DivineIntervention.java │ │ │ ├── DivineSense.java │ │ │ ├── Flash.java │ │ │ ├── GuidingLight.java │ │ │ ├── HallowedGround.java │ │ │ ├── HolyIntuition.java │ │ │ ├── HolyLance.java │ │ │ ├── HolyWard.java │ │ │ ├── HolyWeapon.java │ │ │ ├── InventoryClericSpell.java │ │ │ ├── Judgement.java │ │ │ ├── LayOnHands.java │ │ │ ├── LifeLinkSpell.java │ │ │ ├── MindForm.java │ │ │ ├── MnemonicPrayer.java │ │ │ ├── Radiance.java │ │ │ ├── RecallInscription.java │ │ │ ├── ShieldOfLight.java │ │ │ ├── Smite.java │ │ │ ├── SpiritForm.java │ │ │ ├── Stasis.java │ │ │ ├── Sunray.java │ │ │ ├── TargetedClericSpell.java │ │ │ └── WallOfLight.java │ └── mobs │ │ ├── Acidic.java │ │ ├── Albino.java │ │ ├── ArmoredBrute.java │ │ ├── ArmoredStatue.java │ │ ├── Bandit.java │ │ ├── Bat.java │ │ ├── Bee.java │ │ ├── Brute.java │ │ ├── CausticSlime.java │ │ ├── Crab.java │ │ ├── CrystalGuardian.java │ │ ├── CrystalMimic.java │ │ ├── CrystalSpire.java │ │ ├── CrystalWisp.java │ │ ├── DM100.java │ │ ├── DM200.java │ │ ├── DM201.java │ │ ├── DM300.java │ │ ├── DelayedRockFall.java │ │ ├── DemonSpawner.java │ │ ├── DwarfKing.java │ │ ├── EbonyMimic.java │ │ ├── Elemental.java │ │ ├── Eye.java │ │ ├── FetidRat.java │ │ ├── FungalCore.java │ │ ├── FungalSentry.java │ │ ├── FungalSpinner.java │ │ ├── Ghoul.java │ │ ├── Gnoll.java │ │ ├── GnollGeomancer.java │ │ ├── GnollGuard.java │ │ ├── GnollSapper.java │ │ ├── GnollTrickster.java │ │ ├── GoldenMimic.java │ │ ├── Golem.java │ │ ├── Goo.java │ │ ├── GreatCrab.java │ │ ├── Guard.java │ │ ├── Mimic.java │ │ ├── Mob.java │ │ ├── MobSpawner.java │ │ ├── Monk.java │ │ ├── Necromancer.java │ │ ├── PhantomPiranha.java │ │ ├── Piranha.java │ │ ├── Pylon.java │ │ ├── Rat.java │ │ ├── RipperDemon.java │ │ ├── RotHeart.java │ │ ├── RotLasher.java │ │ ├── Scorpio.java │ │ ├── Senior.java │ │ ├── Shaman.java │ │ ├── Skeleton.java │ │ ├── Slime.java │ │ ├── Snake.java │ │ ├── SpectralNecromancer.java │ │ ├── Spinner.java │ │ ├── Statue.java │ │ ├── Succubus.java │ │ ├── Swarm.java │ │ ├── Tengu.java │ │ ├── Thief.java │ │ ├── TormentedSpirit.java │ │ ├── Warlock.java │ │ ├── Wraith.java │ │ ├── YogDzewa.java │ │ ├── YogFist.java │ │ └── npcs │ │ ├── Blacksmith.java │ │ ├── DirectableAlly.java │ │ ├── Ghost.java │ │ ├── Imp.java │ │ ├── ImpShopkeeper.java │ │ ├── MirrorImage.java │ │ ├── NPC.java │ │ ├── PrismaticImage.java │ │ ├── RatKing.java │ │ ├── Sheep.java │ │ ├── Shopkeeper.java │ │ └── Wandmaker.java │ ├── effects │ ├── BadgeBanner.java │ ├── BannerSprites.java │ ├── Beam.java │ ├── BlobEmitter.java │ ├── CellEmitter.java │ ├── Chains.java │ ├── CheckedCell.java │ ├── CircleArc.java │ ├── DarkBlock.java │ ├── Degradation.java │ ├── Effects.java │ ├── EmoIcon.java │ ├── Enchanting.java │ ├── Fireball.java │ ├── Flare.java │ ├── FloatingText.java │ ├── GlowBlock.java │ ├── IceBlock.java │ ├── Identification.java │ ├── Lightning.java │ ├── MagicMissile.java │ ├── Pushing.java │ ├── Ripple.java │ ├── ShadowBox.java │ ├── ShieldHalo.java │ ├── Speck.java │ ├── SpellSprite.java │ ├── Splash.java │ ├── Surprise.java │ ├── Swap.java │ ├── TargetedCell.java │ ├── TorchHalo.java │ ├── Transmuting.java │ ├── Wound.java │ └── particles │ │ ├── BlastParticle.java │ │ ├── BloodParticle.java │ │ ├── ChallengeParticle.java │ │ ├── CorrosionParticle.java │ │ ├── EarthParticle.java │ │ ├── ElmoParticle.java │ │ ├── EnergyParticle.java │ │ ├── FlameParticle.java │ │ ├── FlowParticle.java │ │ ├── LeafParticle.java │ │ ├── PitfallParticle.java │ │ ├── PoisonParticle.java │ │ ├── PurpleParticle.java │ │ ├── RainbowParticle.java │ │ ├── SacrificialParticle.java │ │ ├── ShadowParticle.java │ │ ├── ShaftParticle.java │ │ ├── SmokeParticle.java │ │ ├── SnowParticle.java │ │ ├── SparkParticle.java │ │ ├── WebParticle.java │ │ ├── WindParticle.java │ │ └── WoolParticle.java │ ├── items │ ├── Amulet.java │ ├── Ankh.java │ ├── ArcaneResin.java │ ├── BrokenSeal.java │ ├── Dewdrop.java │ ├── EnergyCrystal.java │ ├── EquipableItem.java │ ├── Generator.java │ ├── Gold.java │ ├── Heap.java │ ├── Honeypot.java │ ├── Item.java │ ├── ItemStatusHandler.java │ ├── KindOfWeapon.java │ ├── KindofMisc.java │ ├── KingsCrown.java │ ├── LiquidMetal.java │ ├── LostBackpack.java │ ├── Recipe.java │ ├── Stylus.java │ ├── TengusMask.java │ ├── Torch.java │ ├── Waterskin.java │ ├── armor │ │ ├── Armor.java │ │ ├── ClassArmor.java │ │ ├── ClericArmor.java │ │ ├── ClothArmor.java │ │ ├── DuelistArmor.java │ │ ├── HuntressArmor.java │ │ ├── LeatherArmor.java │ │ ├── MageArmor.java │ │ ├── MailArmor.java │ │ ├── PlateArmor.java │ │ ├── RogueArmor.java │ │ ├── ScaleArmor.java │ │ ├── WarriorArmor.java │ │ ├── curses │ │ │ ├── AntiEntropy.java │ │ │ ├── Bulk.java │ │ │ ├── Corrosion.java │ │ │ ├── Displacement.java │ │ │ ├── Metabolism.java │ │ │ ├── Multiplicity.java │ │ │ ├── Overgrowth.java │ │ │ └── Stench.java │ │ └── glyphs │ │ │ ├── Affection.java │ │ │ ├── AntiMagic.java │ │ │ ├── Brimstone.java │ │ │ ├── Camouflage.java │ │ │ ├── Entanglement.java │ │ │ ├── Flow.java │ │ │ ├── Obfuscation.java │ │ │ ├── Potential.java │ │ │ ├── Repulsion.java │ │ │ ├── Stone.java │ │ │ ├── Swiftness.java │ │ │ ├── Thorns.java │ │ │ └── Viscosity.java │ ├── artifacts │ │ ├── AlchemistsToolkit.java │ │ ├── Artifact.java │ │ ├── CapeOfThorns.java │ │ ├── ChaliceOfBlood.java │ │ ├── CloakOfShadows.java │ │ ├── DriedRose.java │ │ ├── EtherealChains.java │ │ ├── HolyTome.java │ │ ├── HornOfPlenty.java │ │ ├── LloydsBeacon.java │ │ ├── MasterThievesArmband.java │ │ ├── SandalsOfNature.java │ │ ├── TalismanOfForesight.java │ │ ├── TimekeepersHourglass.java │ │ └── UnstableSpellbook.java │ ├── bags │ │ ├── Bag.java │ │ ├── MagicalHolster.java │ │ ├── PotionBandolier.java │ │ ├── ScrollHolder.java │ │ └── VelvetPouch.java │ ├── bombs │ │ ├── ArcaneBomb.java │ │ ├── Bomb.java │ │ ├── Firebomb.java │ │ ├── FlashBangBomb.java │ │ ├── FrostBomb.java │ │ ├── HolyBomb.java │ │ ├── Noisemaker.java │ │ ├── RegrowthBomb.java │ │ ├── ShrapnelBomb.java │ │ ├── SmokeBomb.java │ │ └── WoollyBomb.java │ ├── food │ │ ├── Berry.java │ │ ├── Blandfruit.java │ │ ├── ChargrilledMeat.java │ │ ├── Food.java │ │ ├── FrozenCarpaccio.java │ │ ├── MeatPie.java │ │ ├── MysteryMeat.java │ │ ├── Pasty.java │ │ ├── PhantomMeat.java │ │ ├── SmallRation.java │ │ ├── StewedMeat.java │ │ └── SupplyRation.java │ ├── journal │ │ ├── AlchemyPage.java │ │ ├── DocumentPage.java │ │ ├── GuidePage.java │ │ ├── Guidebook.java │ │ └── RegionLorePage.java │ ├── keys │ │ ├── CrystalKey.java │ │ ├── GoldenKey.java │ │ ├── IronKey.java │ │ ├── Key.java │ │ └── SkeletonKey.java │ ├── potions │ │ ├── Potion.java │ │ ├── PotionOfExperience.java │ │ ├── PotionOfFrost.java │ │ ├── PotionOfHaste.java │ │ ├── PotionOfHealing.java │ │ ├── PotionOfInvisibility.java │ │ ├── PotionOfLevitation.java │ │ ├── PotionOfLiquidFlame.java │ │ ├── PotionOfMindVision.java │ │ ├── PotionOfParalyticGas.java │ │ ├── PotionOfPurity.java │ │ ├── PotionOfStrength.java │ │ ├── PotionOfToxicGas.java │ │ ├── brews │ │ │ ├── AquaBrew.java │ │ │ ├── BlizzardBrew.java │ │ │ ├── Brew.java │ │ │ ├── CausticBrew.java │ │ │ ├── InfernalBrew.java │ │ │ ├── ShockingBrew.java │ │ │ └── UnstableBrew.java │ │ ├── elixirs │ │ │ ├── Elixir.java │ │ │ ├── ElixirOfAquaticRejuvenation.java │ │ │ ├── ElixirOfArcaneArmor.java │ │ │ ├── ElixirOfDragonsBlood.java │ │ │ ├── ElixirOfFeatherFall.java │ │ │ ├── ElixirOfHoneyedHealing.java │ │ │ ├── ElixirOfIcyTouch.java │ │ │ ├── ElixirOfMight.java │ │ │ └── ElixirOfToxicEssence.java │ │ └── exotic │ │ │ ├── ExoticPotion.java │ │ │ ├── PotionOfCleansing.java │ │ │ ├── PotionOfCorrosiveGas.java │ │ │ ├── PotionOfDivineInspiration.java │ │ │ ├── PotionOfDragonsBreath.java │ │ │ ├── PotionOfEarthenArmor.java │ │ │ ├── PotionOfMagicalSight.java │ │ │ ├── PotionOfMastery.java │ │ │ ├── PotionOfShielding.java │ │ │ ├── PotionOfShroudingFog.java │ │ │ ├── PotionOfSnapFreeze.java │ │ │ ├── PotionOfStamina.java │ │ │ └── PotionOfStormClouds.java │ ├── quest │ │ ├── CeremonialCandle.java │ │ ├── CorpseDust.java │ │ ├── DarkGold.java │ │ ├── DwarfToken.java │ │ ├── Embers.java │ │ ├── GooBlob.java │ │ ├── MetalShard.java │ │ └── Pickaxe.java │ ├── remains │ │ ├── BowFragment.java │ │ ├── BrokenHilt.java │ │ ├── BrokenStaff.java │ │ ├── CloakScrap.java │ │ ├── RemainsItem.java │ │ ├── SealShard.java │ │ └── TornPage.java │ ├── rings │ │ ├── Ring.java │ │ ├── RingOfAccuracy.java │ │ ├── RingOfArcana.java │ │ ├── RingOfElements.java │ │ ├── RingOfEnergy.java │ │ ├── RingOfEvasion.java │ │ ├── RingOfForce.java │ │ ├── RingOfFuror.java │ │ ├── RingOfHaste.java │ │ ├── RingOfMight.java │ │ ├── RingOfSharpshooting.java │ │ ├── RingOfTenacity.java │ │ └── RingOfWealth.java │ ├── scrolls │ │ ├── InventoryScroll.java │ │ ├── Scroll.java │ │ ├── ScrollOfIdentify.java │ │ ├── ScrollOfLullaby.java │ │ ├── ScrollOfMagicMapping.java │ │ ├── ScrollOfMirrorImage.java │ │ ├── ScrollOfRage.java │ │ ├── ScrollOfRecharging.java │ │ ├── ScrollOfRemoveCurse.java │ │ ├── ScrollOfRetribution.java │ │ ├── ScrollOfTeleportation.java │ │ ├── ScrollOfTerror.java │ │ ├── ScrollOfTransmutation.java │ │ ├── ScrollOfUpgrade.java │ │ └── exotic │ │ │ ├── ExoticScroll.java │ │ │ ├── ScrollOfAntiMagic.java │ │ │ ├── ScrollOfChallenge.java │ │ │ ├── ScrollOfDivination.java │ │ │ ├── ScrollOfDread.java │ │ │ ├── ScrollOfEnchantment.java │ │ │ ├── ScrollOfForesight.java │ │ │ ├── ScrollOfMetamorphosis.java │ │ │ ├── ScrollOfMysticalEnergy.java │ │ │ ├── ScrollOfPassage.java │ │ │ ├── ScrollOfPrismaticImage.java │ │ │ ├── ScrollOfPsionicBlast.java │ │ │ └── ScrollOfSirensSong.java │ ├── spells │ │ ├── Alchemize.java │ │ ├── BeaconOfReturning.java │ │ ├── CurseInfusion.java │ │ ├── InventorySpell.java │ │ ├── MagicalInfusion.java │ │ ├── PhaseShift.java │ │ ├── ReclaimTrap.java │ │ ├── Recycle.java │ │ ├── Spell.java │ │ ├── SummonElemental.java │ │ ├── TargetedSpell.java │ │ ├── TelekineticGrab.java │ │ ├── UnstableSpell.java │ │ └── WildEnergy.java │ ├── stones │ │ ├── InventoryStone.java │ │ ├── Runestone.java │ │ ├── StoneOfAggression.java │ │ ├── StoneOfAugmentation.java │ │ ├── StoneOfBlast.java │ │ ├── StoneOfBlink.java │ │ ├── StoneOfClairvoyance.java │ │ ├── StoneOfDeepSleep.java │ │ ├── StoneOfDetectMagic.java │ │ ├── StoneOfDisarming.java │ │ ├── StoneOfEnchantment.java │ │ ├── StoneOfFear.java │ │ ├── StoneOfFlock.java │ │ ├── StoneOfIntuition.java │ │ └── StoneOfShock.java │ ├── trinkets │ │ ├── ChaoticCenser.java │ │ ├── DimensionalSundial.java │ │ ├── ExoticCrystals.java │ │ ├── EyeOfNewt.java │ │ ├── MimicTooth.java │ │ ├── MossyClump.java │ │ ├── ParchmentScrap.java │ │ ├── PetrifiedSeed.java │ │ ├── RatSkull.java │ │ ├── SaltCube.java │ │ ├── ShardOfOblivion.java │ │ ├── ThirteenLeafClover.java │ │ ├── TrapMechanism.java │ │ ├── Trinket.java │ │ ├── TrinketCatalyst.java │ │ ├── VialOfBlood.java │ │ └── WondrousResin.java │ ├── wands │ │ ├── CursedWand.java │ │ ├── DamageWand.java │ │ ├── Wand.java │ │ ├── WandOfBlastWave.java │ │ ├── WandOfCorrosion.java │ │ ├── WandOfCorruption.java │ │ ├── WandOfDisintegration.java │ │ ├── WandOfFireblast.java │ │ ├── WandOfFrost.java │ │ ├── WandOfLightning.java │ │ ├── WandOfLivingEarth.java │ │ ├── WandOfMagicMissile.java │ │ ├── WandOfPrismaticLight.java │ │ ├── WandOfRegrowth.java │ │ ├── WandOfTransfusion.java │ │ └── WandOfWarding.java │ └── weapon │ │ ├── SpiritBow.java │ │ ├── Weapon.java │ │ ├── curses │ │ ├── Annoying.java │ │ ├── Dazzling.java │ │ ├── Displacing.java │ │ ├── Explosive.java │ │ ├── Friendly.java │ │ ├── Polarized.java │ │ ├── Sacrificial.java │ │ └── Wayward.java │ │ ├── enchantments │ │ ├── Blazing.java │ │ ├── Blocking.java │ │ ├── Blooming.java │ │ ├── Chilling.java │ │ ├── Corrupting.java │ │ ├── Elastic.java │ │ ├── Grim.java │ │ ├── Kinetic.java │ │ ├── Lucky.java │ │ ├── Projecting.java │ │ ├── Shocking.java │ │ ├── Unstable.java │ │ └── Vampiric.java │ │ ├── melee │ │ ├── AssassinsBlade.java │ │ ├── BattleAxe.java │ │ ├── Crossbow.java │ │ ├── Cudgel.java │ │ ├── Dagger.java │ │ ├── Dirk.java │ │ ├── Flail.java │ │ ├── Gauntlet.java │ │ ├── Glaive.java │ │ ├── Gloves.java │ │ ├── Greataxe.java │ │ ├── Greatshield.java │ │ ├── Greatsword.java │ │ ├── HandAxe.java │ │ ├── Katana.java │ │ ├── Longsword.java │ │ ├── Mace.java │ │ ├── MagesStaff.java │ │ ├── MeleeWeapon.java │ │ ├── Quarterstaff.java │ │ ├── Rapier.java │ │ ├── RoundShield.java │ │ ├── RunicBlade.java │ │ ├── Sai.java │ │ ├── Scimitar.java │ │ ├── Shortsword.java │ │ ├── Sickle.java │ │ ├── Spear.java │ │ ├── Sword.java │ │ ├── WarHammer.java │ │ ├── WarScythe.java │ │ ├── Whip.java │ │ └── WornShortsword.java │ │ └── missiles │ │ ├── Bolas.java │ │ ├── FishingSpear.java │ │ ├── ForceCube.java │ │ ├── HeavyBoomerang.java │ │ ├── Javelin.java │ │ ├── Kunai.java │ │ ├── MissileWeapon.java │ │ ├── Shuriken.java │ │ ├── ThrowingClub.java │ │ ├── ThrowingHammer.java │ │ ├── ThrowingKnife.java │ │ ├── ThrowingSpear.java │ │ ├── ThrowingSpike.java │ │ ├── ThrowingStone.java │ │ ├── Tomahawk.java │ │ ├── Trident.java │ │ └── darts │ │ ├── AdrenalineDart.java │ │ ├── BlindingDart.java │ │ ├── ChillingDart.java │ │ ├── CleansingDart.java │ │ ├── Dart.java │ │ ├── DisplacingDart.java │ │ ├── HealingDart.java │ │ ├── HolyDart.java │ │ ├── IncendiaryDart.java │ │ ├── ParalyticDart.java │ │ ├── PoisonDart.java │ │ ├── RotDart.java │ │ ├── ShockingDart.java │ │ └── TippedDart.java │ ├── journal │ ├── Bestiary.java │ ├── Catalog.java │ ├── Document.java │ ├── Journal.java │ └── Notes.java │ ├── levels │ ├── CavesBossLevel.java │ ├── CavesLevel.java │ ├── CityBossLevel.java │ ├── CityLevel.java │ ├── DeadEndLevel.java │ ├── HallsBossLevel.java │ ├── HallsLevel.java │ ├── LastLevel.java │ ├── LastShopLevel.java │ ├── Level.java │ ├── MiningLevel.java │ ├── Patch.java │ ├── PrisonBossLevel.java │ ├── PrisonLevel.java │ ├── RegularLevel.java │ ├── SewerBossLevel.java │ ├── SewerLevel.java │ ├── Terrain.java │ ├── builders │ │ ├── BranchesBuilder.java │ │ ├── Builder.java │ │ ├── FigureEightBuilder.java │ │ ├── LineBuilder.java │ │ ├── LoopBuilder.java │ │ └── RegularBuilder.java │ ├── features │ │ ├── Chasm.java │ │ ├── Door.java │ │ ├── HighGrass.java │ │ ├── LevelTransition.java │ │ └── Maze.java │ ├── painters │ │ ├── CavesPainter.java │ │ ├── CityPainter.java │ │ ├── HallsPainter.java │ │ ├── MiningLevelPainter.java │ │ ├── Painter.java │ │ ├── PrisonPainter.java │ │ ├── RegularPainter.java │ │ └── SewerPainter.java │ ├── rooms │ │ ├── Room.java │ │ ├── connection │ │ │ ├── BridgeRoom.java │ │ │ ├── ConnectionRoom.java │ │ │ ├── MazeConnectionRoom.java │ │ │ ├── PerimeterRoom.java │ │ │ ├── RingBridgeRoom.java │ │ │ ├── RingTunnelRoom.java │ │ │ ├── TunnelRoom.java │ │ │ └── WalkwayRoom.java │ │ ├── quest │ │ │ ├── BlacksmithRoom.java │ │ │ ├── MassGraveRoom.java │ │ │ ├── MineEntrance.java │ │ │ ├── MineGiantRoom.java │ │ │ ├── MineLargeRoom.java │ │ │ ├── MineSecretRoom.java │ │ │ ├── MineSmallRoom.java │ │ │ ├── RitualSiteRoom.java │ │ │ └── RotGardenRoom.java │ │ ├── secret │ │ │ ├── RatKingRoom.java │ │ │ ├── SecretArtilleryRoom.java │ │ │ ├── SecretChestChasmRoom.java │ │ │ ├── SecretGardenRoom.java │ │ │ ├── SecretHoardRoom.java │ │ │ ├── SecretHoneypotRoom.java │ │ │ ├── SecretLaboratoryRoom.java │ │ │ ├── SecretLarderRoom.java │ │ │ ├── SecretLibraryRoom.java │ │ │ ├── SecretMazeRoom.java │ │ │ ├── SecretRoom.java │ │ │ ├── SecretRunestoneRoom.java │ │ │ ├── SecretSummoningRoom.java │ │ │ └── SecretWellRoom.java │ │ ├── sewerboss │ │ │ ├── DiamondGooRoom.java │ │ │ ├── GooBossRoom.java │ │ │ ├── SewerBossEntranceRoom.java │ │ │ ├── SewerBossExitRoom.java │ │ │ ├── ThickPillarsGooRoom.java │ │ │ ├── ThinPillarsGooRoom.java │ │ │ └── WalledGooRoom.java │ │ ├── special │ │ │ ├── ArmoryRoom.java │ │ │ ├── CryptRoom.java │ │ │ ├── CrystalChoiceRoom.java │ │ │ ├── CrystalPathRoom.java │ │ │ ├── CrystalVaultRoom.java │ │ │ ├── DemonSpawnerRoom.java │ │ │ ├── GardenRoom.java │ │ │ ├── LaboratoryRoom.java │ │ │ ├── LibraryRoom.java │ │ │ ├── MagicWellRoom.java │ │ │ ├── MagicalFireRoom.java │ │ │ ├── PitRoom.java │ │ │ ├── PoolRoom.java │ │ │ ├── RunestoneRoom.java │ │ │ ├── SacrificeRoom.java │ │ │ ├── SentryRoom.java │ │ │ ├── ShopRoom.java │ │ │ ├── SpecialRoom.java │ │ │ ├── StatueRoom.java │ │ │ ├── StorageRoom.java │ │ │ ├── ToxicGasRoom.java │ │ │ ├── TrapsRoom.java │ │ │ ├── TreasuryRoom.java │ │ │ └── WeakFloorRoom.java │ │ └── standard │ │ │ ├── AquariumRoom.java │ │ │ ├── BurnedRoom.java │ │ │ ├── CaveRoom.java │ │ │ ├── CavesFissureRoom.java │ │ │ ├── CellBlockRoom.java │ │ │ ├── ChasmBridgeRoom.java │ │ │ ├── ChasmRoom.java │ │ │ ├── CircleBasinRoom.java │ │ │ ├── CirclePitRoom.java │ │ │ ├── CircleWallRoom.java │ │ │ ├── EmptyRoom.java │ │ │ ├── FissureRoom.java │ │ │ ├── GrassyGraveRoom.java │ │ │ ├── HallwayRoom.java │ │ │ ├── ImpShopRoom.java │ │ │ ├── LibraryRingRoom.java │ │ │ ├── MinefieldRoom.java │ │ │ ├── PatchRoom.java │ │ │ ├── PillarsRoom.java │ │ │ ├── PlantsRoom.java │ │ │ ├── PlatformRoom.java │ │ │ ├── RingRoom.java │ │ │ ├── RitualRoom.java │ │ │ ├── RuinsRoom.java │ │ │ ├── SegmentedLibraryRoom.java │ │ │ ├── SegmentedRoom.java │ │ │ ├── SewerPipeRoom.java │ │ │ ├── SkullsRoom.java │ │ │ ├── StandardBridgeRoom.java │ │ │ ├── StandardRoom.java │ │ │ ├── StatuesRoom.java │ │ │ ├── StripedRoom.java │ │ │ ├── StudyRoom.java │ │ │ ├── SuspiciousChestRoom.java │ │ │ ├── WaterBridgeRoom.java │ │ │ ├── entrance │ │ │ ├── CaveEntranceRoom.java │ │ │ ├── CavesFissureEntranceRoom.java │ │ │ ├── ChasmBridgeEntranceRoom.java │ │ │ ├── ChasmEntranceRoom.java │ │ │ ├── CircleBasinEntranceRoom.java │ │ │ ├── EntranceRoom.java │ │ │ ├── HallwayEntranceRoom.java │ │ │ ├── PillarsEntranceRoom.java │ │ │ ├── RitualEntranceRoom.java │ │ │ ├── StatuesEntranceRoom.java │ │ │ └── WaterBridgeEntranceRoom.java │ │ │ └── exit │ │ │ ├── CaveExitRoom.java │ │ │ ├── CavesFissureExitRoom.java │ │ │ ├── ChasmBridgeExitRoom.java │ │ │ ├── ChasmExitRoom.java │ │ │ ├── CircleBasinExitRoom.java │ │ │ ├── ExitRoom.java │ │ │ ├── HallwayExitRoom.java │ │ │ ├── PillarsExitRoom.java │ │ │ ├── RitualExitRoom.java │ │ │ ├── StatuesExitRoom.java │ │ │ └── WaterBridgeExitRoom.java │ └── traps │ │ ├── AlarmTrap.java │ │ ├── BlazingTrap.java │ │ ├── BurningTrap.java │ │ ├── ChillingTrap.java │ │ ├── ConfusionTrap.java │ │ ├── CorrosionTrap.java │ │ ├── CursingTrap.java │ │ ├── DisarmingTrap.java │ │ ├── DisintegrationTrap.java │ │ ├── DistortionTrap.java │ │ ├── ExplosiveTrap.java │ │ ├── FlashingTrap.java │ │ ├── FlockTrap.java │ │ ├── FrostTrap.java │ │ ├── GatewayTrap.java │ │ ├── GeyserTrap.java │ │ ├── GnollRockfallTrap.java │ │ ├── GrimTrap.java │ │ ├── GrippingTrap.java │ │ ├── GuardianTrap.java │ │ ├── OozeTrap.java │ │ ├── PitfallTrap.java │ │ ├── PoisonDartTrap.java │ │ ├── RockfallTrap.java │ │ ├── ShockingTrap.java │ │ ├── StormTrap.java │ │ ├── SummoningTrap.java │ │ ├── TeleportationTrap.java │ │ ├── TenguDartTrap.java │ │ ├── ToxicTrap.java │ │ ├── Trap.java │ │ ├── WarpingTrap.java │ │ ├── WeakeningTrap.java │ │ └── WornDartTrap.java │ ├── mechanics │ ├── Ballistica.java │ ├── ConeAOE.java │ └── ShadowCaster.java │ ├── messages │ ├── Languages.java │ └── Messages.java │ ├── plants │ ├── BlandfruitBush.java │ ├── Blindweed.java │ ├── Earthroot.java │ ├── Fadeleaf.java │ ├── Firebloom.java │ ├── Icecap.java │ ├── Mageroyal.java │ ├── Plant.java │ ├── Rotberry.java │ ├── Sorrowmoss.java │ ├── Starflower.java │ ├── Stormvine.java │ ├── Sungrass.java │ └── Swiftthistle.java │ ├── scenes │ ├── AboutScene.java │ ├── AlchemyScene.java │ ├── AmuletScene.java │ ├── CellSelector.java │ ├── ChangesScene.java │ ├── GameScene.java │ ├── HeroSelectScene.java │ ├── InterlevelScene.java │ ├── JournalScene.java │ ├── NewsScene.java │ ├── PixelScene.java │ ├── RankingsScene.java │ ├── StartScene.java │ ├── SupporterScene.java │ ├── SurfaceScene.java │ ├── TitleScene.java │ └── WelcomeScene.java │ ├── services │ ├── news │ │ └── News.java │ └── updates │ │ └── Updates.java │ ├── sprites │ ├── AcidicSprite.java │ ├── AlbinoSprite.java │ ├── BanditSprite.java │ ├── BatSprite.java │ ├── BeeSprite.java │ ├── BlacksmithSprite.java │ ├── BruteSprite.java │ ├── CausticSlimeSprite.java │ ├── CharSprite.java │ ├── CrabSprite.java │ ├── CrystalGuardianSprite.java │ ├── CrystalSpireSprite.java │ ├── CrystalWispSprite.java │ ├── DM100Sprite.java │ ├── DM200Sprite.java │ ├── DM201Sprite.java │ ├── DM300Sprite.java │ ├── DiscardedItemSprite.java │ ├── EarthGuardianSprite.java │ ├── ElementalSprite.java │ ├── EyeSprite.java │ ├── FetidRatSprite.java │ ├── FistSprite.java │ ├── FungalCoreSprite.java │ ├── FungalSentrySprite.java │ ├── FungalSpinnerSprite.java │ ├── GhostSprite.java │ ├── GhoulSprite.java │ ├── GnollGeomancerSprite.java │ ├── GnollGuardSprite.java │ ├── GnollSapperSprite.java │ ├── GnollSprite.java │ ├── GnollTricksterSprite.java │ ├── GolemSprite.java │ ├── GooSprite.java │ ├── GreatCrabSprite.java │ ├── GuardSprite.java │ ├── HeroSprite.java │ ├── ImpSprite.java │ ├── ItemSprite.java │ ├── ItemSpriteSheet.java │ ├── KingSprite.java │ ├── LarvaSprite.java │ ├── LotusSprite.java │ ├── MimicSprite.java │ ├── MirrorSprite.java │ ├── MissileSprite.java │ ├── MobSprite.java │ ├── MonkSprite.java │ ├── NecromancerSprite.java │ ├── NewbornElementalSprite.java │ ├── PhantomPiranhaSprite.java │ ├── PiranhaSprite.java │ ├── PrismaticSprite.java │ ├── PylonSprite.java │ ├── RatKingSprite.java │ ├── RatSprite.java │ ├── RipperSprite.java │ ├── RotHeartSprite.java │ ├── RotLasherSprite.java │ ├── ScorpioSprite.java │ ├── SeniorSprite.java │ ├── ShamanSprite.java │ ├── SheepSprite.java │ ├── ShieldedSprite.java │ ├── ShopkeeperSprite.java │ ├── SkeletonSprite.java │ ├── SlimeSprite.java │ ├── SnakeSprite.java │ ├── SpawnerSprite.java │ ├── SpectralNecromancerSprite.java │ ├── SpinnerSprite.java │ ├── StatueSprite.java │ ├── SuccubusSprite.java │ ├── SwarmSprite.java │ ├── TenguSprite.java │ ├── ThiefSprite.java │ ├── TormentedSpiritSprite.java │ ├── UndeadSprite.java │ ├── WandmakerSprite.java │ ├── WardSprite.java │ ├── WarlockSprite.java │ ├── WraithSprite.java │ └── YogSprite.java │ ├── tiles │ ├── CustomTilemap.java │ ├── DungeonTerrainTilemap.java │ ├── DungeonTileSheet.java │ ├── DungeonTilemap.java │ ├── DungeonWallsTilemap.java │ ├── FogOfWar.java │ ├── GridTileMap.java │ ├── RaisedTerrainTilemap.java │ ├── TerrainFeaturesTilemap.java │ └── WallBlockingTilemap.java │ ├── ui │ ├── ActionIndicator.java │ ├── Archs.java │ ├── AttackIndicator.java │ ├── BadgesGrid.java │ ├── BadgesList.java │ ├── Banner.java │ ├── BossHealthBar.java │ ├── BuffIcon.java │ ├── BuffIndicator.java │ ├── BusyIndicator.java │ ├── Button.java │ ├── CharHealthIndicator.java │ ├── CheckBox.java │ ├── Compass.java │ ├── CurrencyIndicator.java │ ├── CustomNoteButton.java │ ├── DangerIndicator.java │ ├── ExitButton.java │ ├── GameLog.java │ ├── HealthBar.java │ ├── HeroIcon.java │ ├── IconButton.java │ ├── Icons.java │ ├── InventoryPane.java │ ├── InventorySlot.java │ ├── ItemButton.java │ ├── ItemSlot.java │ ├── KeyDisplay.java │ ├── LootIndicator.java │ ├── MenuPane.java │ ├── OptionSlider.java │ ├── QuickRecipe.java │ ├── QuickSlotButton.java │ ├── RadialMenu.java │ ├── RedButton.java │ ├── RenderedTextBlock.java │ ├── ResumeIndicator.java │ ├── RightClickMenu.java │ ├── ScrollPane.java │ ├── ScrollingGridPane.java │ ├── ScrollingListPane.java │ ├── StatusPane.java │ ├── StyledButton.java │ ├── Tag.java │ ├── TalentButton.java │ ├── TalentIcon.java │ ├── TalentsPane.java │ ├── TargetHealthIndicator.java │ ├── Toast.java │ ├── Toolbar.java │ ├── Tooltip.java │ ├── Window.java │ └── changelist │ │ ├── ChangeButton.java │ │ ├── ChangeInfo.java │ │ ├── WndChanges.java │ │ ├── WndChangesTabbed.java │ │ ├── v0_1_X_Changes.java │ │ ├── v0_2_X_Changes.java │ │ ├── v0_3_X_Changes.java │ │ ├── v0_4_X_Changes.java │ │ ├── v0_5_X_Changes.java │ │ ├── v0_6_X_Changes.java │ │ ├── v0_7_X_Changes.java │ │ ├── v0_8_X_Changes.java │ │ ├── v0_9_X_Changes.java │ │ ├── v1_X_Changes.java │ │ ├── v2_X_Changes.java │ │ └── v3_X_Changes.java │ ├── utils │ ├── DungeonSeed.java │ ├── GLog.java │ └── Holiday.java │ └── windows │ ├── IconTitle.java │ ├── WndBadge.java │ ├── WndBag.java │ ├── WndBlacksmith.java │ ├── WndChallenges.java │ ├── WndChooseAbility.java │ ├── WndChooseSubclass.java │ ├── WndClericSpells.java │ ├── WndCombo.java │ ├── WndDailies.java │ ├── WndDocument.java │ ├── WndEnergizeItem.java │ ├── WndError.java │ ├── WndGame.java │ ├── WndGameInProgress.java │ ├── WndHardNotification.java │ ├── WndHero.java │ ├── WndHeroInfo.java │ ├── WndImp.java │ ├── WndInfoArmorAbility.java │ ├── WndInfoBuff.java │ ├── WndInfoCell.java │ ├── WndInfoItem.java │ ├── WndInfoMob.java │ ├── WndInfoPlant.java │ ├── WndInfoSubclass.java │ ├── WndInfoTalent.java │ ├── WndInfoTrap.java │ ├── WndJournal.java │ ├── WndJournalItem.java │ ├── WndKeyBindings.java │ ├── WndList.java │ ├── WndMessage.java │ ├── WndMonkAbilities.java │ ├── WndOptions.java │ ├── WndOptionsCondensed.java │ ├── WndQuest.java │ ├── WndQuickBag.java │ ├── WndRanking.java │ ├── WndResurrect.java │ ├── WndSadGhost.java │ ├── WndScoreBreakdown.java │ ├── WndSettings.java │ ├── WndStory.java │ ├── WndSupportPrompt.java │ ├── WndTabbed.java │ ├── WndTextInput.java │ ├── WndTitledMessage.java │ ├── WndTradeItem.java │ ├── WndUpgrade.java │ ├── WndUseItem.java │ ├── WndVictoryCongrats.java │ └── WndWandmaker.java ├── desktop ├── build.gradle ├── macos-entitlements.plist ├── notarize.sh └── src │ └── main │ ├── assets │ ├── fonts │ │ └── droid_sans.ttf │ └── icons │ │ ├── icon_128.png │ │ ├── icon_16.png │ │ ├── icon_256.png │ │ ├── icon_32.png │ │ ├── icon_48.png │ │ ├── icon_64.png │ │ ├── mac.icns │ │ └── windows.ico │ └── java │ └── com │ └── shatteredpixel │ └── shatteredpixeldungeon │ └── desktop │ ├── DesktopLaunchValidator.java │ ├── DesktopLauncher.java │ ├── DesktopPlatformSupport.java │ └── DesktopWindowListener.java ├── docs ├── FUNDING.yml ├── PULL_REQUEST_TEMPLATE.md ├── getting-started-android.md ├── getting-started-desktop.md ├── getting-started-ios.md └── recommended-changes.md ├── gradle.properties ├── gradle └── wrapper │ ├── gradle-wrapper.jar │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── ios ├── .gitignore ├── Info.plist ├── assets │ ├── Assets.xcassets │ │ ├── AppIcon.appiconset │ │ │ ├── Contents.json │ │ │ ├── Icon-1024.png │ │ │ ├── Icon-20.png │ │ │ ├── Icon-20@2x.png │ │ │ ├── Icon-20@3x.png │ │ │ ├── Icon-29.png │ │ │ ├── Icon-29@2x.png │ │ │ ├── Icon-29@3x.png │ │ │ ├── Icon-40.png │ │ │ ├── Icon-40@2x.png │ │ │ ├── Icon-40@3x.png │ │ │ ├── Icon-60@2x.png │ │ │ ├── Icon-60@3x.png │ │ │ ├── Icon-76.png │ │ │ ├── Icon-76@2x.png │ │ │ └── Icon-83.5@2x.png │ │ ├── Banner.imageset │ │ │ ├── Banner.png │ │ │ ├── Banner@2x.png │ │ │ ├── Banner@3x.png │ │ │ └── Contents.json │ │ └── BannerWide.imageset │ │ │ ├── BannerWide.png │ │ │ ├── BannerWide@2x.png │ │ │ ├── BannerWide@3x.png │ │ │ └── Contents.json │ ├── LaunchScreen.storyboard │ ├── PrivacyInfo.xcprivacy │ └── music │ │ ├── caves_1.mp3 │ │ ├── caves_2.mp3 │ │ ├── caves_3.mp3 │ │ ├── caves_boss.mp3 │ │ ├── caves_boss_finale.mp3 │ │ ├── caves_tense.mp3 │ │ ├── city_1.mp3 │ │ ├── city_2.mp3 │ │ ├── city_3.mp3 │ │ ├── city_boss.mp3 │ │ ├── city_boss_finale.mp3 │ │ ├── city_tense.mp3 │ │ ├── halls_1.mp3 │ │ ├── halls_2.mp3 │ │ ├── halls_3.mp3 │ │ ├── halls_boss.mp3 │ │ ├── halls_boss_finale.mp3 │ │ ├── halls_tense.mp3 │ │ ├── prison_1.mp3 │ │ ├── prison_2.mp3 │ │ ├── prison_3.mp3 │ │ ├── prison_boss.mp3 │ │ ├── prison_tense.mp3 │ │ ├── sewers_1.mp3 │ │ ├── sewers_2.mp3 │ │ ├── sewers_3.mp3 │ │ ├── sewers_boss.mp3 │ │ ├── sewers_tense.mp3 │ │ ├── theme_1.mp3 │ │ ├── theme_2.mp3 │ │ └── theme_finale.mp3 ├── build.gradle ├── robovm.xml └── src │ └── main │ └── java │ └── com │ └── shatteredpixel │ └── shatteredpixeldungeon │ └── ios │ ├── IOSLauncher.java │ └── IOSPlatformSupport.java ├── services ├── build.gradle ├── news │ ├── debugNews │ │ ├── build.gradle │ │ └── src │ │ │ └── main │ │ │ └── java │ │ │ └── com │ │ │ └── shatteredpixel │ │ │ └── shatteredpixeldungeon │ │ │ └── services │ │ │ └── news │ │ │ ├── DebugNews.java │ │ │ └── NewsImpl.java │ └── shatteredNews │ │ ├── build.gradle │ │ └── src │ │ └── main │ │ └── java │ │ └── com │ │ └── shatteredpixel │ │ └── shatteredpixeldungeon │ │ └── services │ │ └── news │ │ ├── NewsImpl.java │ │ └── ShatteredNews.java ├── src │ └── main │ │ └── java │ │ └── com │ │ └── shatteredpixel │ │ └── shatteredpixeldungeon │ │ └── services │ │ ├── news │ │ ├── NewsArticle.java │ │ └── NewsService.java │ │ └── updates │ │ ├── AvailableUpdateData.java │ │ └── UpdateService.java └── updates │ ├── debugUpdates │ ├── build.gradle │ └── src │ │ └── main │ │ └── java │ │ └── com │ │ └── shatteredpixel │ │ └── shatteredpixeldungeon │ │ └── services │ │ └── updates │ │ ├── DebugUpdates.java │ │ └── UpdateImpl.java │ └── githubUpdates │ ├── build.gradle │ └── src │ └── main │ └── java │ └── com │ └── shatteredpixel │ └── shatteredpixeldungeon │ └── services │ └── updates │ ├── GitHubUpdates.java │ └── UpdateImpl.java └── settings.gradle /.gitignore: -------------------------------------------------------------------------------- 1 | # Built application files 2 | *.apk 3 | 4 | # Files for the Dalvik VM 5 | *.dex 6 | 7 | # Java class files 8 | *.class 9 | 10 | # Gradle build files 11 | .gradle/ 12 | build/ 13 | release/ 14 | 15 | # Local configuration file (sdk path, etc) 16 | local.properties 17 | 18 | #intellij project files 19 | *.iml 20 | *.idea 21 | -------------------------------------------------------------------------------- /SPD-classes/build.gradle: -------------------------------------------------------------------------------- 1 | apply plugin: 'java-library' 2 | 3 | [compileJava, compileTestJava]*.options*.encoding = 'UTF-8' 4 | sourceCompatibility = targetCompatibility = appJavaCompatibility 5 | 6 | dependencies { 7 | api "com.badlogicgames.gdx:gdx:$gdxVersion" 8 | api "com.badlogicgames.gdx-controllers:gdx-controllers-core:$gdxControllersVersion" 9 | implementation "com.badlogicgames.gdx:gdx-freetype:$gdxVersion" 10 | 11 | //noinspection GradleDependency , later JSON versions cause crashes on old versions of android 12 | implementation "org.json:json:20170516" 13 | } 14 | -------------------------------------------------------------------------------- /SPD-classes/src/main/java/com/watabou/noosa/ColorBlock.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Pixel Dungeon 3 | * Copyright (C) 2012-2015 Oleg Dolya 4 | * 5 | * Shattered Pixel Dungeon 6 | * Copyright (C) 2014-2024 Evan Debenham 7 | * 8 | * This program is free software: you can redistribute it and/or modify 9 | * it under the terms of the GNU General Public License as published by 10 | * the Free Software Foundation, either version 3 of the License, or 11 | * (at your option) any later version. 12 | * 13 | * This program is distributed in the hope that it will be useful, 14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 | * GNU General Public License for more details. 17 | * 18 | * You should have received a copy of the GNU General Public License 19 | * along with this program. If not, see 20 | */ 21 | 22 | package com.watabou.noosa; 23 | 24 | import com.watabou.gltextures.TextureCache; 25 | 26 | public class ColorBlock extends Image implements Resizable { 27 | 28 | public ColorBlock( float width, float height, int color ) { 29 | super( TextureCache.createSolid( color ) ); 30 | scale.set( width, height ); 31 | origin.set( 0, 0 ); 32 | } 33 | 34 | @Override 35 | public void size( float width, float height ) { 36 | scale.set( width, height ); 37 | } 38 | 39 | @Override 40 | public float width() { 41 | return scale.x; 42 | } 43 | 44 | @Override 45 | public float height() { 46 | return scale.y; 47 | } 48 | } 49 | -------------------------------------------------------------------------------- /SPD-classes/src/main/java/com/watabou/noosa/PseudoPixel.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Pixel Dungeon 3 | * Copyright (C) 2012-2015 Oleg Dolya 4 | * 5 | * Shattered Pixel Dungeon 6 | * Copyright (C) 2014-2024 Evan Debenham 7 | * 8 | * This program is free software: you can redistribute it and/or modify 9 | * it under the terms of the GNU General Public License as published by 10 | * the Free Software Foundation, either version 3 of the License, or 11 | * (at your option) any later version. 12 | * 13 | * This program is distributed in the hope that it will be useful, 14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 | * GNU General Public License for more details. 17 | * 18 | * You should have received a copy of the GNU General Public License 19 | * along with this program. If not, see 20 | */ 21 | 22 | package com.watabou.noosa; 23 | 24 | import com.watabou.gltextures.TextureCache; 25 | 26 | public class PseudoPixel extends Image { 27 | 28 | public PseudoPixel() { 29 | super( TextureCache.createSolid( 0xFFFFFFFF ) ); 30 | } 31 | 32 | public PseudoPixel( float x, float y, int color ) { 33 | 34 | this(); 35 | 36 | this.x = x; 37 | this.y = y; 38 | color( color ); 39 | } 40 | 41 | public void size( float w, float h ) { 42 | scale.set( w, h ); 43 | } 44 | 45 | public void size( float value ) { 46 | scale.set( value ); 47 | } 48 | } 49 | -------------------------------------------------------------------------------- /SPD-classes/src/main/java/com/watabou/noosa/Resizable.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Pixel Dungeon 3 | * Copyright (C) 2012-2015 Oleg Dolya 4 | * 5 | * Shattered Pixel Dungeon 6 | * Copyright (C) 2014-2024 Evan Debenham 7 | * 8 | * This program is free software: you can redistribute it and/or modify 9 | * it under the terms of the GNU General Public License as published by 10 | * the Free Software Foundation, either version 3 of the License, or 11 | * (at your option) any later version. 12 | * 13 | * This program is distributed in the hope that it will be useful, 14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 | * GNU General Public License for more details. 17 | * 18 | * You should have received a copy of the GNU General Public License 19 | * along with this program. If not, see 20 | */ 21 | 22 | package com.watabou.noosa; 23 | 24 | public interface Resizable { 25 | 26 | public void size( float width, float height ); 27 | public float width(); 28 | public float height(); 29 | 30 | } 31 | -------------------------------------------------------------------------------- /SPD-classes/src/main/java/com/watabou/noosa/tweeners/AlphaTweener.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Pixel Dungeon 3 | * Copyright (C) 2012-2015 Oleg Dolya 4 | * 5 | * Shattered Pixel Dungeon 6 | * Copyright (C) 2014-2024 Evan Debenham 7 | * 8 | * This program is free software: you can redistribute it and/or modify 9 | * it under the terms of the GNU General Public License as published by 10 | * the Free Software Foundation, either version 3 of the License, or 11 | * (at your option) any later version. 12 | * 13 | * This program is distributed in the hope that it will be useful, 14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 | * GNU General Public License for more details. 17 | * 18 | * You should have received a copy of the GNU General Public License 19 | * along with this program. If not, see 20 | */ 21 | 22 | package com.watabou.noosa.tweeners; 23 | 24 | import com.watabou.noosa.Visual; 25 | 26 | public class AlphaTweener extends Tweener { 27 | 28 | public Visual image; 29 | 30 | public float start; 31 | public float delta; 32 | 33 | public AlphaTweener( Visual image, float alpha, float time ) { 34 | super( image, time ); 35 | 36 | this.image = image; 37 | start = image.alpha(); 38 | delta = alpha - start; 39 | } 40 | 41 | @Override 42 | protected void updateValues( float progress ) { 43 | image.alpha( start + delta * progress ); 44 | } 45 | } 46 | -------------------------------------------------------------------------------- /SPD-classes/src/main/java/com/watabou/noosa/tweeners/CameraScrollTweener.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Pixel Dungeon 3 | * Copyright (C) 2012-2015 Oleg Dolya 4 | * 5 | * Shattered Pixel Dungeon 6 | * Copyright (C) 2014-2024 Evan Debenham 7 | * 8 | * This program is free software: you can redistribute it and/or modify 9 | * it under the terms of the GNU General Public License as published by 10 | * the Free Software Foundation, either version 3 of the License, or 11 | * (at your option) any later version. 12 | * 13 | * This program is distributed in the hope that it will be useful, 14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 | * GNU General Public License for more details. 17 | * 18 | * You should have received a copy of the GNU General Public License 19 | * along with this program. If not, see 20 | */ 21 | 22 | package com.watabou.noosa.tweeners; 23 | 24 | import com.watabou.noosa.Camera; 25 | import com.watabou.utils.PointF; 26 | 27 | public class CameraScrollTweener extends Tweener { 28 | 29 | public Camera camera; 30 | 31 | public PointF start; 32 | public PointF end; 33 | 34 | public CameraScrollTweener( Camera camera, PointF pos, float time ) { 35 | super( camera, time ); 36 | 37 | this.camera = camera; 38 | start = camera.scroll; 39 | end = pos; 40 | } 41 | 42 | @Override 43 | protected void updateValues( float progress ) { 44 | camera.scroll = PointF.inter( start, end, progress ); 45 | } 46 | } 47 | -------------------------------------------------------------------------------- /SPD-classes/src/main/java/com/watabou/noosa/tweeners/Delayer.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Pixel Dungeon 3 | * Copyright (C) 2012-2015 Oleg Dolya 4 | * 5 | * Shattered Pixel Dungeon 6 | * Copyright (C) 2014-2024 Evan Debenham 7 | * 8 | * This program is free software: you can redistribute it and/or modify 9 | * it under the terms of the GNU General Public License as published by 10 | * the Free Software Foundation, either version 3 of the License, or 11 | * (at your option) any later version. 12 | * 13 | * This program is distributed in the hope that it will be useful, 14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 | * GNU General Public License for more details. 17 | * 18 | * You should have received a copy of the GNU General Public License 19 | * along with this program. If not, see 20 | */ 21 | 22 | package com.watabou.noosa.tweeners; 23 | 24 | public class Delayer extends Tweener { 25 | 26 | public Delayer() { 27 | super( null, 0 ); 28 | } 29 | 30 | public Delayer( float time ) { 31 | super( null, time ); 32 | } 33 | 34 | @Override 35 | protected void updateValues( float progress ) { 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /SPD-classes/src/main/java/com/watabou/noosa/tweeners/PosTweener.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Pixel Dungeon 3 | * Copyright (C) 2012-2015 Oleg Dolya 4 | * 5 | * Shattered Pixel Dungeon 6 | * Copyright (C) 2014-2024 Evan Debenham 7 | * 8 | * This program is free software: you can redistribute it and/or modify 9 | * it under the terms of the GNU General Public License as published by 10 | * the Free Software Foundation, either version 3 of the License, or 11 | * (at your option) any later version. 12 | * 13 | * This program is distributed in the hope that it will be useful, 14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 | * GNU General Public License for more details. 17 | * 18 | * You should have received a copy of the GNU General Public License 19 | * along with this program. If not, see 20 | */ 21 | 22 | package com.watabou.noosa.tweeners; 23 | 24 | import com.watabou.noosa.Visual; 25 | import com.watabou.utils.PointF; 26 | 27 | public class PosTweener extends Tweener { 28 | 29 | public Visual visual; 30 | 31 | public PointF start; 32 | public PointF end; 33 | 34 | public PosTweener( Visual visual, PointF pos, float time ) { 35 | super( visual, time ); 36 | 37 | this.visual = visual; 38 | start = visual.point(); 39 | end = pos; 40 | } 41 | 42 | @Override 43 | protected void updateValues( float progress ) { 44 | visual.point( PointF.inter( start, end, progress ) ); 45 | } 46 | } 47 | -------------------------------------------------------------------------------- /SPD-classes/src/main/java/com/watabou/noosa/tweeners/ScaleTweener.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Pixel Dungeon 3 | * Copyright (C) 2012-2015 Oleg Dolya 4 | * 5 | * Shattered Pixel Dungeon 6 | * Copyright (C) 2014-2024 Evan Debenham 7 | * 8 | * This program is free software: you can redistribute it and/or modify 9 | * it under the terms of the GNU General Public License as published by 10 | * the Free Software Foundation, either version 3 of the License, or 11 | * (at your option) any later version. 12 | * 13 | * This program is distributed in the hope that it will be useful, 14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 | * GNU General Public License for more details. 17 | * 18 | * You should have received a copy of the GNU General Public License 19 | * along with this program. If not, see 20 | */ 21 | 22 | package com.watabou.noosa.tweeners; 23 | 24 | import com.watabou.noosa.Visual; 25 | import com.watabou.utils.PointF; 26 | 27 | public class ScaleTweener extends Tweener { 28 | 29 | public Visual visual; 30 | 31 | public PointF start; 32 | public PointF end; 33 | 34 | public ScaleTweener( Visual visual, PointF scale, float time ) { 35 | super( visual, time ); 36 | 37 | this.visual = visual; 38 | start = visual.scale; 39 | end = scale; 40 | } 41 | 42 | @Override 43 | protected void updateValues( float progress ) { 44 | visual.scale = PointF.inter( start, end, progress ); 45 | } 46 | } 47 | -------------------------------------------------------------------------------- /SPD-classes/src/main/java/com/watabou/utils/Bundlable.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Pixel Dungeon 3 | * Copyright (C) 2012-2015 Oleg Dolya 4 | * 5 | * Shattered Pixel Dungeon 6 | * Copyright (C) 2014-2024 Evan Debenham 7 | * 8 | * This program is free software: you can redistribute it and/or modify 9 | * it under the terms of the GNU General Public License as published by 10 | * the Free Software Foundation, either version 3 of the License, or 11 | * (at your option) any later version. 12 | * 13 | * This program is distributed in the hope that it will be useful, 14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 | * GNU General Public License for more details. 17 | * 18 | * You should have received a copy of the GNU General Public License 19 | * along with this program. If not, see 20 | */ 21 | 22 | package com.watabou.utils; 23 | 24 | public interface Bundlable { 25 | 26 | void restoreFromBundle( Bundle bundle ); 27 | void storeInBundle( Bundle bundle ); 28 | 29 | } 30 | -------------------------------------------------------------------------------- /SPD-classes/src/main/java/com/watabou/utils/Callback.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Pixel Dungeon 3 | * Copyright (C) 2012-2015 Oleg Dolya 4 | * 5 | * Shattered Pixel Dungeon 6 | * Copyright (C) 2014-2024 Evan Debenham 7 | * 8 | * This program is free software: you can redistribute it and/or modify 9 | * it under the terms of the GNU General Public License as published by 10 | * the Free Software Foundation, either version 3 of the License, or 11 | * (at your option) any later version. 12 | * 13 | * This program is distributed in the hope that it will be useful, 14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 | * GNU General Public License for more details. 17 | * 18 | * You should have received a copy of the GNU General Public License 19 | * along with this program. If not, see 20 | */ 21 | 22 | package com.watabou.utils; 23 | 24 | public interface Callback { 25 | 26 | void call(); 27 | 28 | } 29 | -------------------------------------------------------------------------------- /SPD-classes/src/main/java/com/watabou/utils/GameMath.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Pixel Dungeon 3 | * Copyright (C) 2012-2015 Oleg Dolya 4 | * 5 | * Shattered Pixel Dungeon 6 | * Copyright (C) 2014-2024 Evan Debenham 7 | * 8 | * This program is free software: you can redistribute it and/or modify 9 | * it under the terms of the GNU General Public License as published by 10 | * the Free Software Foundation, either version 3 of the License, or 11 | * (at your option) any later version. 12 | * 13 | * This program is distributed in the hope that it will be useful, 14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 | * GNU General Public License for more details. 17 | * 18 | * You should have received a copy of the GNU General Public License 19 | * along with this program. If not, see 20 | */ 21 | 22 | package com.watabou.utils; 23 | 24 | import com.watabou.noosa.Game; 25 | 26 | public class GameMath { 27 | 28 | public static float speed( float speed, float acc ) { 29 | 30 | if (acc != 0) { 31 | speed += acc * Game.elapsed; 32 | } 33 | 34 | return speed; 35 | } 36 | 37 | public static float gate( float min, float value, float max ) { 38 | if (value < min) { 39 | return min; 40 | } else if (value > max) { 41 | return max; 42 | } else { 43 | return value; 44 | } 45 | } 46 | } 47 | -------------------------------------------------------------------------------- /android/.gitignore: -------------------------------------------------------------------------------- 1 | #libGDX native dependancies 2 | libgdx.so 3 | libgdx-freetype.so -------------------------------------------------------------------------------- /android/src/debug/res/mipmap-anydpi-v26/ic_launcher.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /android/src/debug/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/android/src/debug/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /android/src/debug/res/mipmap-hdpi/ic_launcher_background.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/android/src/debug/res/mipmap-hdpi/ic_launcher_background.png -------------------------------------------------------------------------------- /android/src/debug/res/mipmap-hdpi/ic_launcher_foreground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/android/src/debug/res/mipmap-hdpi/ic_launcher_foreground.png -------------------------------------------------------------------------------- /android/src/debug/res/mipmap-hdpi/ic_launcher_monochrome.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/android/src/debug/res/mipmap-hdpi/ic_launcher_monochrome.png -------------------------------------------------------------------------------- /android/src/debug/res/mipmap-ldpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/android/src/debug/res/mipmap-ldpi/ic_launcher.png -------------------------------------------------------------------------------- /android/src/debug/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/android/src/debug/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /android/src/debug/res/mipmap-mdpi/ic_launcher_background.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/android/src/debug/res/mipmap-mdpi/ic_launcher_background.png -------------------------------------------------------------------------------- /android/src/debug/res/mipmap-mdpi/ic_launcher_foreground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/android/src/debug/res/mipmap-mdpi/ic_launcher_foreground.png -------------------------------------------------------------------------------- /android/src/debug/res/mipmap-mdpi/ic_launcher_monochrome.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/android/src/debug/res/mipmap-mdpi/ic_launcher_monochrome.png -------------------------------------------------------------------------------- /android/src/debug/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/android/src/debug/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /android/src/debug/res/mipmap-xhdpi/ic_launcher_background.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/android/src/debug/res/mipmap-xhdpi/ic_launcher_background.png -------------------------------------------------------------------------------- /android/src/debug/res/mipmap-xhdpi/ic_launcher_foreground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/android/src/debug/res/mipmap-xhdpi/ic_launcher_foreground.png -------------------------------------------------------------------------------- /android/src/debug/res/mipmap-xhdpi/ic_launcher_monochrome.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/android/src/debug/res/mipmap-xhdpi/ic_launcher_monochrome.png -------------------------------------------------------------------------------- /android/src/debug/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/android/src/debug/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /android/src/debug/res/mipmap-xxhdpi/ic_launcher_background.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/android/src/debug/res/mipmap-xxhdpi/ic_launcher_background.png -------------------------------------------------------------------------------- /android/src/debug/res/mipmap-xxhdpi/ic_launcher_foreground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/android/src/debug/res/mipmap-xxhdpi/ic_launcher_foreground.png -------------------------------------------------------------------------------- /android/src/debug/res/mipmap-xxhdpi/ic_launcher_monochrome.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/android/src/debug/res/mipmap-xxhdpi/ic_launcher_monochrome.png -------------------------------------------------------------------------------- /android/src/debug/res/mipmap-xxxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/android/src/debug/res/mipmap-xxxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /android/src/debug/res/mipmap-xxxhdpi/ic_launcher_background.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/android/src/debug/res/mipmap-xxxhdpi/ic_launcher_background.png -------------------------------------------------------------------------------- /android/src/debug/res/mipmap-xxxhdpi/ic_launcher_foreground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/android/src/debug/res/mipmap-xxxhdpi/ic_launcher_foreground.png -------------------------------------------------------------------------------- /android/src/debug/res/mipmap-xxxhdpi/ic_launcher_monochrome.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/android/src/debug/res/mipmap-xxxhdpi/ic_launcher_monochrome.png -------------------------------------------------------------------------------- /android/src/main/res/mipmap-anydpi-v26/ic_launcher.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /android/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/android/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /android/src/main/res/mipmap-hdpi/ic_launcher_background.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/android/src/main/res/mipmap-hdpi/ic_launcher_background.png -------------------------------------------------------------------------------- /android/src/main/res/mipmap-hdpi/ic_launcher_foreground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/android/src/main/res/mipmap-hdpi/ic_launcher_foreground.png -------------------------------------------------------------------------------- /android/src/main/res/mipmap-hdpi/ic_launcher_monochrome.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/android/src/main/res/mipmap-hdpi/ic_launcher_monochrome.png -------------------------------------------------------------------------------- /android/src/main/res/mipmap-ldpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/android/src/main/res/mipmap-ldpi/ic_launcher.png -------------------------------------------------------------------------------- /android/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/android/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /android/src/main/res/mipmap-mdpi/ic_launcher_background.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/android/src/main/res/mipmap-mdpi/ic_launcher_background.png -------------------------------------------------------------------------------- /android/src/main/res/mipmap-mdpi/ic_launcher_foreground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/android/src/main/res/mipmap-mdpi/ic_launcher_foreground.png -------------------------------------------------------------------------------- /android/src/main/res/mipmap-mdpi/ic_launcher_monochrome.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/android/src/main/res/mipmap-mdpi/ic_launcher_monochrome.png -------------------------------------------------------------------------------- /android/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/android/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /android/src/main/res/mipmap-xhdpi/ic_launcher_background.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/android/src/main/res/mipmap-xhdpi/ic_launcher_background.png -------------------------------------------------------------------------------- /android/src/main/res/mipmap-xhdpi/ic_launcher_foreground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/android/src/main/res/mipmap-xhdpi/ic_launcher_foreground.png -------------------------------------------------------------------------------- /android/src/main/res/mipmap-xhdpi/ic_launcher_monochrome.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/android/src/main/res/mipmap-xhdpi/ic_launcher_monochrome.png -------------------------------------------------------------------------------- /android/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/android/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /android/src/main/res/mipmap-xxhdpi/ic_launcher_background.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/android/src/main/res/mipmap-xxhdpi/ic_launcher_background.png -------------------------------------------------------------------------------- /android/src/main/res/mipmap-xxhdpi/ic_launcher_foreground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/android/src/main/res/mipmap-xxhdpi/ic_launcher_foreground.png -------------------------------------------------------------------------------- /android/src/main/res/mipmap-xxhdpi/ic_launcher_monochrome.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/android/src/main/res/mipmap-xxhdpi/ic_launcher_monochrome.png -------------------------------------------------------------------------------- /android/src/main/res/mipmap-xxxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/android/src/main/res/mipmap-xxxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /android/src/main/res/mipmap-xxxhdpi/ic_launcher_background.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/android/src/main/res/mipmap-xxxhdpi/ic_launcher_background.png -------------------------------------------------------------------------------- /android/src/main/res/mipmap-xxxhdpi/ic_launcher_foreground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/android/src/main/res/mipmap-xxxhdpi/ic_launcher_foreground.png -------------------------------------------------------------------------------- /android/src/main/res/mipmap-xxxhdpi/ic_launcher_monochrome.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/android/src/main/res/mipmap-xxxhdpi/ic_launcher_monochrome.png -------------------------------------------------------------------------------- /build.gradle: -------------------------------------------------------------------------------- 1 | buildscript { 2 | repositories { 3 | google() 4 | mavenCentral() 5 | maven { 6 | url = uri("https://storage.googleapis.com/r8-releases/raw") 7 | } 8 | } 9 | dependencies { 10 | classpath 'com.android.tools.build:gradle:8.7.1' 11 | } 12 | } 13 | 14 | allprojects { 15 | 16 | ext { 17 | appName = 'Shattered Pixel Dungeon' 18 | appPackageName = 'com.shatteredpixel.shatteredpixeldungeon' 19 | 20 | appVersionCode = 833 21 | appVersionName = '3.0.2' 22 | 23 | appJavaCompatibility = JavaVersion.VERSION_1_8 24 | 25 | appAndroidCompileSDK = 34 26 | appAndroidMinSDK = 14 27 | appAndroidTargetSDK = 34 28 | 29 | gdxVersion = '1.12.1' 30 | gdxControllersVersion = '2.2.4-SNAPSHOT' 31 | robovmVersion = '2.3.21' 32 | } 33 | version = appVersionName 34 | 35 | repositories { 36 | google() 37 | mavenCentral() 38 | maven { url 'https://oss.sonatype.org/content/repositories/snapshots' } 39 | } 40 | 41 | } -------------------------------------------------------------------------------- /core/build.gradle: -------------------------------------------------------------------------------- 1 | apply plugin: 'java-library' 2 | 3 | [compileJava, compileTestJava]*.options*.encoding = 'UTF-8' 4 | sourceCompatibility = targetCompatibility = appJavaCompatibility 5 | 6 | dependencies { 7 | api project(':SPD-classes') 8 | implementation project(':services') 9 | } 10 | -------------------------------------------------------------------------------- /core/src/main/assets/effects/effects.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/effects/effects.png -------------------------------------------------------------------------------- /core/src/main/assets/effects/fireball-short.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/effects/fireball-short.png -------------------------------------------------------------------------------- /core/src/main/assets/effects/fireball-tall.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/effects/fireball-tall.png -------------------------------------------------------------------------------- /core/src/main/assets/effects/specks.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/effects/specks.png -------------------------------------------------------------------------------- /core/src/main/assets/effects/spell_icons.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/effects/spell_icons.png -------------------------------------------------------------------------------- /core/src/main/assets/effects/text_icons.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/effects/text_icons.png -------------------------------------------------------------------------------- /core/src/main/assets/environment/custom_tiles/caves_boss.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/environment/custom_tiles/caves_boss.png -------------------------------------------------------------------------------- /core/src/main/assets/environment/custom_tiles/caves_quest.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/environment/custom_tiles/caves_quest.png -------------------------------------------------------------------------------- /core/src/main/assets/environment/custom_tiles/city_boss.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/environment/custom_tiles/city_boss.png -------------------------------------------------------------------------------- /core/src/main/assets/environment/custom_tiles/halls_special.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/environment/custom_tiles/halls_special.png -------------------------------------------------------------------------------- /core/src/main/assets/environment/custom_tiles/prison_exit.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/environment/custom_tiles/prison_exit.png -------------------------------------------------------------------------------- /core/src/main/assets/environment/custom_tiles/prison_quest.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/environment/custom_tiles/prison_quest.png -------------------------------------------------------------------------------- /core/src/main/assets/environment/custom_tiles/sewer_boss.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/environment/custom_tiles/sewer_boss.png -------------------------------------------------------------------------------- /core/src/main/assets/environment/custom_tiles/weak_floor.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/environment/custom_tiles/weak_floor.png -------------------------------------------------------------------------------- /core/src/main/assets/environment/terrain_features.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/environment/terrain_features.png -------------------------------------------------------------------------------- /core/src/main/assets/environment/tiles_caves.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/environment/tiles_caves.png -------------------------------------------------------------------------------- /core/src/main/assets/environment/tiles_caves_crystal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/environment/tiles_caves_crystal.png -------------------------------------------------------------------------------- /core/src/main/assets/environment/tiles_caves_gnoll.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/environment/tiles_caves_gnoll.png -------------------------------------------------------------------------------- /core/src/main/assets/environment/tiles_city.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/environment/tiles_city.png -------------------------------------------------------------------------------- /core/src/main/assets/environment/tiles_halls.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/environment/tiles_halls.png -------------------------------------------------------------------------------- /core/src/main/assets/environment/tiles_prison.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/environment/tiles_prison.png -------------------------------------------------------------------------------- /core/src/main/assets/environment/tiles_sewers.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/environment/tiles_sewers.png -------------------------------------------------------------------------------- /core/src/main/assets/environment/visual_grid.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/environment/visual_grid.png -------------------------------------------------------------------------------- /core/src/main/assets/environment/wall_blocking.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/environment/wall_blocking.png -------------------------------------------------------------------------------- /core/src/main/assets/environment/water0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/environment/water0.png -------------------------------------------------------------------------------- /core/src/main/assets/environment/water1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/environment/water1.png -------------------------------------------------------------------------------- /core/src/main/assets/environment/water2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/environment/water2.png -------------------------------------------------------------------------------- /core/src/main/assets/environment/water3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/environment/water3.png -------------------------------------------------------------------------------- /core/src/main/assets/environment/water4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/environment/water4.png -------------------------------------------------------------------------------- /core/src/main/assets/fonts/pixel_font.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/fonts/pixel_font.png -------------------------------------------------------------------------------- /core/src/main/assets/fonts/pixel_font.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/fonts/pixel_font.ttf -------------------------------------------------------------------------------- /core/src/main/assets/gdx/cursor_controller.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/gdx/cursor_controller.png -------------------------------------------------------------------------------- /core/src/main/assets/gdx/cursor_mouse.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/gdx/cursor_mouse.png -------------------------------------------------------------------------------- /core/src/main/assets/gdx/textfield.atlas: -------------------------------------------------------------------------------- 1 | 2 | textfield.png 3 | size: 4,4 4 | format: RGBA8888 5 | filter: Nearest,Nearest 6 | repeat: none 7 | cursor 8 | rotate: false 9 | xy: 0, 0 10 | size: 3, 3 11 | split: 1, 1, 1, 1 12 | orig: 3, 3 13 | offset: 0, 0 14 | index: -1 15 | selection 16 | rotate: false 17 | xy: 3, 3 18 | size: 1, 1 19 | orig: 1, 1 20 | offset: 0, 0 21 | index: -1 -------------------------------------------------------------------------------- /core/src/main/assets/gdx/textfield.json: -------------------------------------------------------------------------------- 1 | { 2 | Color: { 3 | black: { a: 1, b: 0, g: 0, r: 0 }, 4 | }, 5 | TextFieldStyle: { 6 | default: { selection: selection, fontColor: black, cursor: cursor } 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /core/src/main/assets/gdx/textfield.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/gdx/textfield.png -------------------------------------------------------------------------------- /core/src/main/assets/interfaces/arcs1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/interfaces/arcs1.png -------------------------------------------------------------------------------- /core/src/main/assets/interfaces/arcs2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/interfaces/arcs2.png -------------------------------------------------------------------------------- /core/src/main/assets/interfaces/badges.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/interfaces/badges.png -------------------------------------------------------------------------------- /core/src/main/assets/interfaces/banners.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/interfaces/banners.png -------------------------------------------------------------------------------- /core/src/main/assets/interfaces/boss_hp.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/interfaces/boss_hp.png -------------------------------------------------------------------------------- /core/src/main/assets/interfaces/buffs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/interfaces/buffs.png -------------------------------------------------------------------------------- /core/src/main/assets/interfaces/chrome.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/interfaces/chrome.png -------------------------------------------------------------------------------- /core/src/main/assets/interfaces/hero_icons.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/interfaces/hero_icons.png -------------------------------------------------------------------------------- /core/src/main/assets/interfaces/icons.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/interfaces/icons.png -------------------------------------------------------------------------------- /core/src/main/assets/interfaces/large_buffs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/interfaces/large_buffs.png -------------------------------------------------------------------------------- /core/src/main/assets/interfaces/locked_badge.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/interfaces/locked_badge.png -------------------------------------------------------------------------------- /core/src/main/assets/interfaces/menu_button.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/interfaces/menu_button.png -------------------------------------------------------------------------------- /core/src/main/assets/interfaces/menu_pane.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/interfaces/menu_pane.png -------------------------------------------------------------------------------- /core/src/main/assets/interfaces/radial_menu.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/interfaces/radial_menu.png -------------------------------------------------------------------------------- /core/src/main/assets/interfaces/shadow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/interfaces/shadow.png -------------------------------------------------------------------------------- /core/src/main/assets/interfaces/status_pane.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/interfaces/status_pane.png -------------------------------------------------------------------------------- /core/src/main/assets/interfaces/surface.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/interfaces/surface.png -------------------------------------------------------------------------------- /core/src/main/assets/interfaces/talent_button.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/interfaces/talent_button.png -------------------------------------------------------------------------------- /core/src/main/assets/interfaces/talent_icons.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/interfaces/talent_icons.png -------------------------------------------------------------------------------- /core/src/main/assets/interfaces/toolbar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/interfaces/toolbar.png -------------------------------------------------------------------------------- /core/src/main/assets/music/caves_1.ogg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/music/caves_1.ogg -------------------------------------------------------------------------------- /core/src/main/assets/music/caves_2.ogg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/music/caves_2.ogg -------------------------------------------------------------------------------- /core/src/main/assets/music/caves_3.ogg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/music/caves_3.ogg -------------------------------------------------------------------------------- /core/src/main/assets/music/caves_boss.ogg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/music/caves_boss.ogg -------------------------------------------------------------------------------- /core/src/main/assets/music/caves_boss_finale.ogg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/music/caves_boss_finale.ogg -------------------------------------------------------------------------------- /core/src/main/assets/music/caves_tense.ogg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/music/caves_tense.ogg -------------------------------------------------------------------------------- /core/src/main/assets/music/city_1.ogg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/music/city_1.ogg -------------------------------------------------------------------------------- /core/src/main/assets/music/city_2.ogg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/music/city_2.ogg -------------------------------------------------------------------------------- /core/src/main/assets/music/city_3.ogg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/music/city_3.ogg -------------------------------------------------------------------------------- /core/src/main/assets/music/city_boss.ogg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/music/city_boss.ogg -------------------------------------------------------------------------------- /core/src/main/assets/music/city_boss_finale.ogg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/music/city_boss_finale.ogg -------------------------------------------------------------------------------- /core/src/main/assets/music/city_tense.ogg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/music/city_tense.ogg -------------------------------------------------------------------------------- /core/src/main/assets/music/halls_1.ogg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/music/halls_1.ogg -------------------------------------------------------------------------------- /core/src/main/assets/music/halls_2.ogg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/music/halls_2.ogg -------------------------------------------------------------------------------- /core/src/main/assets/music/halls_3.ogg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/music/halls_3.ogg -------------------------------------------------------------------------------- /core/src/main/assets/music/halls_boss.ogg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/music/halls_boss.ogg -------------------------------------------------------------------------------- /core/src/main/assets/music/halls_boss_finale.ogg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/music/halls_boss_finale.ogg -------------------------------------------------------------------------------- /core/src/main/assets/music/halls_tense.ogg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/music/halls_tense.ogg -------------------------------------------------------------------------------- /core/src/main/assets/music/prison_1.ogg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/music/prison_1.ogg -------------------------------------------------------------------------------- /core/src/main/assets/music/prison_2.ogg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/music/prison_2.ogg -------------------------------------------------------------------------------- /core/src/main/assets/music/prison_3.ogg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/music/prison_3.ogg -------------------------------------------------------------------------------- /core/src/main/assets/music/prison_boss.ogg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/music/prison_boss.ogg -------------------------------------------------------------------------------- /core/src/main/assets/music/prison_tense.ogg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/music/prison_tense.ogg -------------------------------------------------------------------------------- /core/src/main/assets/music/sewers_1.ogg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/music/sewers_1.ogg -------------------------------------------------------------------------------- /core/src/main/assets/music/sewers_2.ogg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/music/sewers_2.ogg -------------------------------------------------------------------------------- /core/src/main/assets/music/sewers_3.ogg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/music/sewers_3.ogg -------------------------------------------------------------------------------- /core/src/main/assets/music/sewers_boss.ogg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/music/sewers_boss.ogg -------------------------------------------------------------------------------- /core/src/main/assets/music/sewers_tense.ogg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/music/sewers_tense.ogg -------------------------------------------------------------------------------- /core/src/main/assets/music/theme_1.ogg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/music/theme_1.ogg -------------------------------------------------------------------------------- /core/src/main/assets/music/theme_2.ogg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/music/theme_2.ogg -------------------------------------------------------------------------------- /core/src/main/assets/music/theme_finale.ogg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/music/theme_finale.ogg -------------------------------------------------------------------------------- /core/src/main/assets/sounds/alert.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sounds/alert.mp3 -------------------------------------------------------------------------------- /core/src/main/assets/sounds/atk_crossbow.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sounds/atk_crossbow.mp3 -------------------------------------------------------------------------------- /core/src/main/assets/sounds/atk_spiritbow.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sounds/atk_spiritbow.mp3 -------------------------------------------------------------------------------- /core/src/main/assets/sounds/badge.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sounds/badge.mp3 -------------------------------------------------------------------------------- /core/src/main/assets/sounds/beacon.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sounds/beacon.mp3 -------------------------------------------------------------------------------- /core/src/main/assets/sounds/bee.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sounds/bee.mp3 -------------------------------------------------------------------------------- /core/src/main/assets/sounds/blast.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sounds/blast.mp3 -------------------------------------------------------------------------------- /core/src/main/assets/sounds/bones.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sounds/bones.mp3 -------------------------------------------------------------------------------- /core/src/main/assets/sounds/boss.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sounds/boss.mp3 -------------------------------------------------------------------------------- /core/src/main/assets/sounds/burning.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sounds/burning.mp3 -------------------------------------------------------------------------------- /core/src/main/assets/sounds/chains.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sounds/chains.mp3 -------------------------------------------------------------------------------- /core/src/main/assets/sounds/challenge.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sounds/challenge.mp3 -------------------------------------------------------------------------------- /core/src/main/assets/sounds/chargeup.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sounds/chargeup.mp3 -------------------------------------------------------------------------------- /core/src/main/assets/sounds/charms.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sounds/charms.mp3 -------------------------------------------------------------------------------- /core/src/main/assets/sounds/click.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sounds/click.mp3 -------------------------------------------------------------------------------- /core/src/main/assets/sounds/cursed.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sounds/cursed.mp3 -------------------------------------------------------------------------------- /core/src/main/assets/sounds/death.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sounds/death.mp3 -------------------------------------------------------------------------------- /core/src/main/assets/sounds/debuff.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sounds/debuff.mp3 -------------------------------------------------------------------------------- /core/src/main/assets/sounds/degrade.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sounds/degrade.mp3 -------------------------------------------------------------------------------- /core/src/main/assets/sounds/descend.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sounds/descend.mp3 -------------------------------------------------------------------------------- /core/src/main/assets/sounds/dewdrop.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sounds/dewdrop.mp3 -------------------------------------------------------------------------------- /core/src/main/assets/sounds/door_open.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sounds/door_open.mp3 -------------------------------------------------------------------------------- /core/src/main/assets/sounds/drink.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sounds/drink.mp3 -------------------------------------------------------------------------------- /core/src/main/assets/sounds/eat.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sounds/eat.mp3 -------------------------------------------------------------------------------- /core/src/main/assets/sounds/evoke.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sounds/evoke.mp3 -------------------------------------------------------------------------------- /core/src/main/assets/sounds/falling.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sounds/falling.mp3 -------------------------------------------------------------------------------- /core/src/main/assets/sounds/gas.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sounds/gas.mp3 -------------------------------------------------------------------------------- /core/src/main/assets/sounds/ghost.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sounds/ghost.mp3 -------------------------------------------------------------------------------- /core/src/main/assets/sounds/gold.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sounds/gold.mp3 -------------------------------------------------------------------------------- /core/src/main/assets/sounds/grass.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sounds/grass.mp3 -------------------------------------------------------------------------------- /core/src/main/assets/sounds/health_critical.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sounds/health_critical.mp3 -------------------------------------------------------------------------------- /core/src/main/assets/sounds/health_warn.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sounds/health_warn.mp3 -------------------------------------------------------------------------------- /core/src/main/assets/sounds/hit.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sounds/hit.mp3 -------------------------------------------------------------------------------- /core/src/main/assets/sounds/hit_arrow.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sounds/hit_arrow.mp3 -------------------------------------------------------------------------------- /core/src/main/assets/sounds/hit_crush.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sounds/hit_crush.mp3 -------------------------------------------------------------------------------- /core/src/main/assets/sounds/hit_magic.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sounds/hit_magic.mp3 -------------------------------------------------------------------------------- /core/src/main/assets/sounds/hit_parry.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sounds/hit_parry.mp3 -------------------------------------------------------------------------------- /core/src/main/assets/sounds/hit_slash.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sounds/hit_slash.mp3 -------------------------------------------------------------------------------- /core/src/main/assets/sounds/hit_stab.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sounds/hit_stab.mp3 -------------------------------------------------------------------------------- /core/src/main/assets/sounds/hit_strong.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sounds/hit_strong.mp3 -------------------------------------------------------------------------------- /core/src/main/assets/sounds/item.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sounds/item.mp3 -------------------------------------------------------------------------------- /core/src/main/assets/sounds/levelup.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sounds/levelup.mp3 -------------------------------------------------------------------------------- /core/src/main/assets/sounds/lightning.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sounds/lightning.mp3 -------------------------------------------------------------------------------- /core/src/main/assets/sounds/lullaby.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sounds/lullaby.mp3 -------------------------------------------------------------------------------- /core/src/main/assets/sounds/mastery.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sounds/mastery.mp3 -------------------------------------------------------------------------------- /core/src/main/assets/sounds/meld.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sounds/meld.mp3 -------------------------------------------------------------------------------- /core/src/main/assets/sounds/mimic.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sounds/mimic.mp3 -------------------------------------------------------------------------------- /core/src/main/assets/sounds/mine.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sounds/mine.mp3 -------------------------------------------------------------------------------- /core/src/main/assets/sounds/miss.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sounds/miss.mp3 -------------------------------------------------------------------------------- /core/src/main/assets/sounds/plant.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sounds/plant.mp3 -------------------------------------------------------------------------------- /core/src/main/assets/sounds/puff.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sounds/puff.mp3 -------------------------------------------------------------------------------- /core/src/main/assets/sounds/ray.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sounds/ray.mp3 -------------------------------------------------------------------------------- /core/src/main/assets/sounds/read.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sounds/read.mp3 -------------------------------------------------------------------------------- /core/src/main/assets/sounds/rocks.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sounds/rocks.mp3 -------------------------------------------------------------------------------- /core/src/main/assets/sounds/scan.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sounds/scan.mp3 -------------------------------------------------------------------------------- /core/src/main/assets/sounds/secret.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sounds/secret.mp3 -------------------------------------------------------------------------------- /core/src/main/assets/sounds/shatter.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sounds/shatter.mp3 -------------------------------------------------------------------------------- /core/src/main/assets/sounds/sheep.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sounds/sheep.mp3 -------------------------------------------------------------------------------- /core/src/main/assets/sounds/step.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sounds/step.mp3 -------------------------------------------------------------------------------- /core/src/main/assets/sounds/sturdy.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sounds/sturdy.mp3 -------------------------------------------------------------------------------- /core/src/main/assets/sounds/teleport.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sounds/teleport.mp3 -------------------------------------------------------------------------------- /core/src/main/assets/sounds/tomb.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sounds/tomb.mp3 -------------------------------------------------------------------------------- /core/src/main/assets/sounds/trample.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sounds/trample.mp3 -------------------------------------------------------------------------------- /core/src/main/assets/sounds/trap.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sounds/trap.mp3 -------------------------------------------------------------------------------- /core/src/main/assets/sounds/unlock.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sounds/unlock.mp3 -------------------------------------------------------------------------------- /core/src/main/assets/sounds/water.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sounds/water.mp3 -------------------------------------------------------------------------------- /core/src/main/assets/sounds/zap.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sounds/zap.mp3 -------------------------------------------------------------------------------- /core/src/main/assets/splashes/caves.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/splashes/caves.jpg -------------------------------------------------------------------------------- /core/src/main/assets/splashes/city.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/splashes/city.jpg -------------------------------------------------------------------------------- /core/src/main/assets/splashes/cleric.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/splashes/cleric.jpg -------------------------------------------------------------------------------- /core/src/main/assets/splashes/duelist.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/splashes/duelist.jpg -------------------------------------------------------------------------------- /core/src/main/assets/splashes/halls.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/splashes/halls.jpg -------------------------------------------------------------------------------- /core/src/main/assets/splashes/huntress.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/splashes/huntress.jpg -------------------------------------------------------------------------------- /core/src/main/assets/splashes/mage.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/splashes/mage.jpg -------------------------------------------------------------------------------- /core/src/main/assets/splashes/prison.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/splashes/prison.jpg -------------------------------------------------------------------------------- /core/src/main/assets/splashes/rogue.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/splashes/rogue.jpg -------------------------------------------------------------------------------- /core/src/main/assets/splashes/sewers.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/splashes/sewers.jpg -------------------------------------------------------------------------------- /core/src/main/assets/splashes/warrior.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/splashes/warrior.jpg -------------------------------------------------------------------------------- /core/src/main/assets/sprites/amulet.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sprites/amulet.png -------------------------------------------------------------------------------- /core/src/main/assets/sprites/avatars.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sprites/avatars.png -------------------------------------------------------------------------------- /core/src/main/assets/sprites/bat.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sprites/bat.png -------------------------------------------------------------------------------- /core/src/main/assets/sprites/bee.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sprites/bee.png -------------------------------------------------------------------------------- /core/src/main/assets/sprites/blacksmith.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sprites/blacksmith.png -------------------------------------------------------------------------------- /core/src/main/assets/sprites/brute.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sprites/brute.png -------------------------------------------------------------------------------- /core/src/main/assets/sprites/cleric.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sprites/cleric.png -------------------------------------------------------------------------------- /core/src/main/assets/sprites/crab.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sprites/crab.png -------------------------------------------------------------------------------- /core/src/main/assets/sprites/crystal_guardian.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sprites/crystal_guardian.png -------------------------------------------------------------------------------- /core/src/main/assets/sprites/crystal_spire.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sprites/crystal_spire.png -------------------------------------------------------------------------------- /core/src/main/assets/sprites/crystal_wisp.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sprites/crystal_wisp.png -------------------------------------------------------------------------------- /core/src/main/assets/sprites/demon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sprites/demon.png -------------------------------------------------------------------------------- /core/src/main/assets/sprites/dm100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sprites/dm100.png -------------------------------------------------------------------------------- /core/src/main/assets/sprites/dm200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sprites/dm200.png -------------------------------------------------------------------------------- /core/src/main/assets/sprites/dm300.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sprites/dm300.png -------------------------------------------------------------------------------- /core/src/main/assets/sprites/duelist.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sprites/duelist.png -------------------------------------------------------------------------------- /core/src/main/assets/sprites/elemental.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sprites/elemental.png -------------------------------------------------------------------------------- /core/src/main/assets/sprites/eye.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sprites/eye.png -------------------------------------------------------------------------------- /core/src/main/assets/sprites/fungal_core.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sprites/fungal_core.png -------------------------------------------------------------------------------- /core/src/main/assets/sprites/fungal_sentry.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sprites/fungal_sentry.png -------------------------------------------------------------------------------- /core/src/main/assets/sprites/fungal_spinner.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sprites/fungal_spinner.png -------------------------------------------------------------------------------- /core/src/main/assets/sprites/ghost.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sprites/ghost.png -------------------------------------------------------------------------------- /core/src/main/assets/sprites/ghoul.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sprites/ghoul.png -------------------------------------------------------------------------------- /core/src/main/assets/sprites/gnoll.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sprites/gnoll.png -------------------------------------------------------------------------------- /core/src/main/assets/sprites/gnoll_geomancer.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sprites/gnoll_geomancer.png -------------------------------------------------------------------------------- /core/src/main/assets/sprites/gnoll_guard.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sprites/gnoll_guard.png -------------------------------------------------------------------------------- /core/src/main/assets/sprites/gnoll_sapper.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sprites/gnoll_sapper.png -------------------------------------------------------------------------------- /core/src/main/assets/sprites/golem.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sprites/golem.png -------------------------------------------------------------------------------- /core/src/main/assets/sprites/goo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sprites/goo.png -------------------------------------------------------------------------------- /core/src/main/assets/sprites/guard.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sprites/guard.png -------------------------------------------------------------------------------- /core/src/main/assets/sprites/guardian.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sprites/guardian.png -------------------------------------------------------------------------------- /core/src/main/assets/sprites/huntress.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sprites/huntress.png -------------------------------------------------------------------------------- /core/src/main/assets/sprites/item_icons.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sprites/item_icons.png -------------------------------------------------------------------------------- /core/src/main/assets/sprites/items.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sprites/items.png -------------------------------------------------------------------------------- /core/src/main/assets/sprites/king.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sprites/king.png -------------------------------------------------------------------------------- /core/src/main/assets/sprites/larva.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sprites/larva.png -------------------------------------------------------------------------------- /core/src/main/assets/sprites/lotus.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sprites/lotus.png -------------------------------------------------------------------------------- /core/src/main/assets/sprites/mage.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sprites/mage.png -------------------------------------------------------------------------------- /core/src/main/assets/sprites/mimic.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sprites/mimic.png -------------------------------------------------------------------------------- /core/src/main/assets/sprites/monk.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sprites/monk.png -------------------------------------------------------------------------------- /core/src/main/assets/sprites/necromancer.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sprites/necromancer.png -------------------------------------------------------------------------------- /core/src/main/assets/sprites/ninja_log.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sprites/ninja_log.png -------------------------------------------------------------------------------- /core/src/main/assets/sprites/pet.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sprites/pet.png -------------------------------------------------------------------------------- /core/src/main/assets/sprites/piranha.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sprites/piranha.png -------------------------------------------------------------------------------- /core/src/main/assets/sprites/pylon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sprites/pylon.png -------------------------------------------------------------------------------- /core/src/main/assets/sprites/rat.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sprites/rat.png -------------------------------------------------------------------------------- /core/src/main/assets/sprites/ratking.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sprites/ratking.png -------------------------------------------------------------------------------- /core/src/main/assets/sprites/red_sentry.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sprites/red_sentry.png -------------------------------------------------------------------------------- /core/src/main/assets/sprites/ripper.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sprites/ripper.png -------------------------------------------------------------------------------- /core/src/main/assets/sprites/rogue.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sprites/rogue.png -------------------------------------------------------------------------------- /core/src/main/assets/sprites/rot_heart.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sprites/rot_heart.png -------------------------------------------------------------------------------- /core/src/main/assets/sprites/rot_lasher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sprites/rot_lasher.png -------------------------------------------------------------------------------- /core/src/main/assets/sprites/scorpio.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sprites/scorpio.png -------------------------------------------------------------------------------- /core/src/main/assets/sprites/shaman.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sprites/shaman.png -------------------------------------------------------------------------------- /core/src/main/assets/sprites/sheep.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sprites/sheep.png -------------------------------------------------------------------------------- /core/src/main/assets/sprites/shopkeeper.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sprites/shopkeeper.png -------------------------------------------------------------------------------- /core/src/main/assets/sprites/skeleton.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sprites/skeleton.png -------------------------------------------------------------------------------- /core/src/main/assets/sprites/slime.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sprites/slime.png -------------------------------------------------------------------------------- /core/src/main/assets/sprites/snake.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sprites/snake.png -------------------------------------------------------------------------------- /core/src/main/assets/sprites/spawner.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sprites/spawner.png -------------------------------------------------------------------------------- /core/src/main/assets/sprites/spinner.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sprites/spinner.png -------------------------------------------------------------------------------- /core/src/main/assets/sprites/spirit_hawk.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sprites/spirit_hawk.png -------------------------------------------------------------------------------- /core/src/main/assets/sprites/statue.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sprites/statue.png -------------------------------------------------------------------------------- /core/src/main/assets/sprites/succubus.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sprites/succubus.png -------------------------------------------------------------------------------- /core/src/main/assets/sprites/swarm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sprites/swarm.png -------------------------------------------------------------------------------- /core/src/main/assets/sprites/tengu.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sprites/tengu.png -------------------------------------------------------------------------------- /core/src/main/assets/sprites/thief.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sprites/thief.png -------------------------------------------------------------------------------- /core/src/main/assets/sprites/undead.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sprites/undead.png -------------------------------------------------------------------------------- /core/src/main/assets/sprites/wandmaker.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sprites/wandmaker.png -------------------------------------------------------------------------------- /core/src/main/assets/sprites/wards.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sprites/wards.png -------------------------------------------------------------------------------- /core/src/main/assets/sprites/warlock.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sprites/warlock.png -------------------------------------------------------------------------------- /core/src/main/assets/sprites/warrior.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sprites/warrior.png -------------------------------------------------------------------------------- /core/src/main/assets/sprites/wraith.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sprites/wraith.png -------------------------------------------------------------------------------- /core/src/main/assets/sprites/yog.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sprites/yog.png -------------------------------------------------------------------------------- /core/src/main/assets/sprites/yog_fists.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/core/src/main/assets/sprites/yog_fists.png -------------------------------------------------------------------------------- /core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/blobs/SmokeScreen.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Pixel Dungeon 3 | * Copyright (C) 2012-2015 Oleg Dolya 4 | * 5 | * Shattered Pixel Dungeon 6 | * Copyright (C) 2014-2024 Evan Debenham 7 | * 8 | * This program is free software: you can redistribute it and/or modify 9 | * it under the terms of the GNU General Public License as published by 10 | * the Free Software Foundation, either version 3 of the License, or 11 | * (at your option) any later version. 12 | * 13 | * This program is distributed in the hope that it will be useful, 14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 | * GNU General Public License for more details. 17 | * 18 | * You should have received a copy of the GNU General Public License 19 | * along with this program. If not, see 20 | */ 21 | 22 | package com.shatteredpixel.shatteredpixeldungeon.actors.blobs; 23 | 24 | import com.shatteredpixel.shatteredpixeldungeon.effects.BlobEmitter; 25 | import com.shatteredpixel.shatteredpixeldungeon.effects.Speck; 26 | import com.shatteredpixel.shatteredpixeldungeon.messages.Messages; 27 | 28 | public class SmokeScreen extends Blob { 29 | 30 | @Override 31 | public void use( BlobEmitter emitter ) { 32 | super.use( emitter ); 33 | emitter.pour( Speck.factory( Speck.SMOKE ), 0.1f ); 34 | } 35 | 36 | @Override 37 | public String tileDesc() { 38 | return Messages.get(this, "desc"); 39 | } 40 | 41 | } 42 | -------------------------------------------------------------------------------- /core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/buffs/Awareness.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Pixel Dungeon 3 | * Copyright (C) 2012-2015 Oleg Dolya 4 | * 5 | * Shattered Pixel Dungeon 6 | * Copyright (C) 2014-2024 Evan Debenham 7 | * 8 | * This program is free software: you can redistribute it and/or modify 9 | * it under the terms of the GNU General Public License as published by 10 | * the Free Software Foundation, either version 3 of the License, or 11 | * (at your option) any later version. 12 | * 13 | * This program is distributed in the hope that it will be useful, 14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 | * GNU General Public License for more details. 17 | * 18 | * You should have received a copy of the GNU General Public License 19 | * along with this program. If not, see 20 | */ 21 | 22 | package com.shatteredpixel.shatteredpixeldungeon.actors.buffs; 23 | 24 | import com.shatteredpixel.shatteredpixeldungeon.Dungeon; 25 | import com.shatteredpixel.shatteredpixeldungeon.scenes.GameScene; 26 | 27 | public class Awareness extends FlavourBuff { 28 | 29 | { 30 | type = buffType.POSITIVE; 31 | } 32 | 33 | public static final float DURATION = 2f; 34 | 35 | @Override 36 | public void detach() { 37 | super.detach(); 38 | Dungeon.observe(); 39 | GameScene.updateFog(); 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/buffs/Bless.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Pixel Dungeon 3 | * Copyright (C) 2012-2015 Oleg Dolya 4 | * 5 | * Shattered Pixel Dungeon 6 | * Copyright (C) 2014-2024 Evan Debenham 7 | * 8 | * This program is free software: you can redistribute it and/or modify 9 | * it under the terms of the GNU General Public License as published by 10 | * the Free Software Foundation, either version 3 of the License, or 11 | * (at your option) any later version. 12 | * 13 | * This program is distributed in the hope that it will be useful, 14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 | * GNU General Public License for more details. 17 | * 18 | * You should have received a copy of the GNU General Public License 19 | * along with this program. If not, see 20 | */ 21 | 22 | package com.shatteredpixel.shatteredpixeldungeon.actors.buffs; 23 | 24 | import com.shatteredpixel.shatteredpixeldungeon.ui.BuffIndicator; 25 | 26 | public class Bless extends FlavourBuff { 27 | 28 | public static final float DURATION = 30f; 29 | 30 | { 31 | type = buffType.POSITIVE; 32 | announced = true; 33 | } 34 | 35 | @Override 36 | public int icon() { 37 | return BuffIndicator.BLESS; 38 | } 39 | 40 | @Override 41 | public float iconFadePercent() { 42 | return Math.max(0, (DURATION - visualcooldown()) / DURATION); 43 | } 44 | 45 | } 46 | -------------------------------------------------------------------------------- /core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/buffs/Cripple.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Pixel Dungeon 3 | * Copyright (C) 2012-2015 Oleg Dolya 4 | * 5 | * Shattered Pixel Dungeon 6 | * Copyright (C) 2014-2024 Evan Debenham 7 | * 8 | * This program is free software: you can redistribute it and/or modify 9 | * it under the terms of the GNU General Public License as published by 10 | * the Free Software Foundation, either version 3 of the License, or 11 | * (at your option) any later version. 12 | * 13 | * This program is distributed in the hope that it will be useful, 14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 | * GNU General Public License for more details. 17 | * 18 | * You should have received a copy of the GNU General Public License 19 | * along with this program. If not, see 20 | */ 21 | 22 | package com.shatteredpixel.shatteredpixeldungeon.actors.buffs; 23 | 24 | import com.shatteredpixel.shatteredpixeldungeon.ui.BuffIndicator; 25 | 26 | public class Cripple extends FlavourBuff { 27 | 28 | public static final float DURATION = 10f; 29 | 30 | { 31 | type = buffType.NEGATIVE; 32 | announced = true; 33 | } 34 | 35 | @Override 36 | public int icon() { 37 | return BuffIndicator.CRIPPLE; 38 | } 39 | 40 | @Override 41 | public float iconFadePercent() { 42 | return Math.max(0, (DURATION - visualcooldown()) / DURATION); 43 | } 44 | } 45 | -------------------------------------------------------------------------------- /core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/buffs/Daze.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Pixel Dungeon 3 | * Copyright (C) 2012-2015 Oleg Dolya 4 | * 5 | * Shattered Pixel Dungeon 6 | * Copyright (C) 2014-2024 Evan Debenham 7 | * 8 | * This program is free software: you can redistribute it and/or modify 9 | * it under the terms of the GNU General Public License as published by 10 | * the Free Software Foundation, either version 3 of the License, or 11 | * (at your option) any later version. 12 | * 13 | * This program is distributed in the hope that it will be useful, 14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 | * GNU General Public License for more details. 17 | * 18 | * You should have received a copy of the GNU General Public License 19 | * along with this program. If not, see 20 | */ 21 | 22 | package com.shatteredpixel.shatteredpixeldungeon.actors.buffs; 23 | 24 | import com.shatteredpixel.shatteredpixeldungeon.ui.BuffIndicator; 25 | 26 | public class Daze extends FlavourBuff { 27 | 28 | public static final float DURATION = 5f; 29 | 30 | { 31 | type = buffType.NEGATIVE; 32 | announced = true; 33 | } 34 | 35 | @Override 36 | public int icon() { 37 | return BuffIndicator.DAZE; 38 | } 39 | 40 | @Override 41 | public float iconFadePercent() { 42 | return Math.max(0, (DURATION - visualcooldown()) / DURATION); 43 | } 44 | 45 | } 46 | -------------------------------------------------------------------------------- /core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/buffs/Doom.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Pixel Dungeon 3 | * Copyright (C) 2012-2015 Oleg Dolya 4 | * 5 | * Shattered Pixel Dungeon 6 | * Copyright (C) 2014-2024 Evan Debenham 7 | * 8 | * This program is free software: you can redistribute it and/or modify 9 | * it under the terms of the GNU General Public License as published by 10 | * the Free Software Foundation, either version 3 of the License, or 11 | * (at your option) any later version. 12 | * 13 | * This program is distributed in the hope that it will be useful, 14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 | * GNU General Public License for more details. 17 | * 18 | * You should have received a copy of the GNU General Public License 19 | * along with this program. If not, see 20 | */ 21 | 22 | package com.shatteredpixel.shatteredpixeldungeon.actors.buffs; 23 | 24 | import com.shatteredpixel.shatteredpixeldungeon.sprites.CharSprite; 25 | import com.shatteredpixel.shatteredpixeldungeon.ui.BuffIndicator; 26 | 27 | public class Doom extends Buff { 28 | 29 | { 30 | type = buffType.NEGATIVE; 31 | announced = true; 32 | } 33 | 34 | @Override 35 | public void fx(boolean on) { 36 | if (on) target.sprite.add( CharSprite.State.DARKENED ); 37 | else if (target.invisible == 0) target.sprite.remove( CharSprite.State.DARKENED ); 38 | } 39 | 40 | @Override 41 | public int icon() { 42 | return BuffIndicator.CORRUPT; 43 | } 44 | } 45 | -------------------------------------------------------------------------------- /core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/buffs/Fury.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Pixel Dungeon 3 | * Copyright (C) 2012-2015 Oleg Dolya 4 | * 5 | * Shattered Pixel Dungeon 6 | * Copyright (C) 2014-2024 Evan Debenham 7 | * 8 | * This program is free software: you can redistribute it and/or modify 9 | * it under the terms of the GNU General Public License as published by 10 | * the Free Software Foundation, either version 3 of the License, or 11 | * (at your option) any later version. 12 | * 13 | * This program is distributed in the hope that it will be useful, 14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 | * GNU General Public License for more details. 17 | * 18 | * You should have received a copy of the GNU General Public License 19 | * along with this program. If not, see 20 | */ 21 | 22 | package com.shatteredpixel.shatteredpixeldungeon.actors.buffs; 23 | 24 | import com.shatteredpixel.shatteredpixeldungeon.ui.BuffIndicator; 25 | 26 | public class Fury extends Buff { 27 | 28 | public static float LEVEL = 0.5f; 29 | 30 | { 31 | type = buffType.POSITIVE; 32 | announced = true; 33 | } 34 | 35 | @Override 36 | public boolean act() { 37 | if (target.HP > target.HT * LEVEL) { 38 | detach(); 39 | } 40 | 41 | spend( TICK ); 42 | 43 | return true; 44 | } 45 | 46 | @Override 47 | public int icon() { 48 | return BuffIndicator.FURY; 49 | } 50 | } 51 | -------------------------------------------------------------------------------- /core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/buffs/Hex.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Pixel Dungeon 3 | * Copyright (C) 2012-2015 Oleg Dolya 4 | * 5 | * Shattered Pixel Dungeon 6 | * Copyright (C) 2014-2024 Evan Debenham 7 | * 8 | * This program is free software: you can redistribute it and/or modify 9 | * it under the terms of the GNU General Public License as published by 10 | * the Free Software Foundation, either version 3 of the License, or 11 | * (at your option) any later version. 12 | * 13 | * This program is distributed in the hope that it will be useful, 14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 | * GNU General Public License for more details. 17 | * 18 | * You should have received a copy of the GNU General Public License 19 | * along with this program. If not, see 20 | */ 21 | 22 | package com.shatteredpixel.shatteredpixeldungeon.actors.buffs; 23 | 24 | import com.shatteredpixel.shatteredpixeldungeon.ui.BuffIndicator; 25 | 26 | public class Hex extends FlavourBuff { 27 | 28 | public static final float DURATION = 30f; 29 | 30 | { 31 | type = buffType.NEGATIVE; 32 | announced = true; 33 | } 34 | 35 | @Override 36 | public int icon() { 37 | return BuffIndicator.HEX; 38 | } 39 | 40 | @Override 41 | public float iconFadePercent() { 42 | return Math.max(0, (DURATION - visualcooldown()) / DURATION); 43 | } 44 | } 45 | -------------------------------------------------------------------------------- /core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/buffs/Sleep.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Pixel Dungeon 3 | * Copyright (C) 2012-2015 Oleg Dolya 4 | * 5 | * Shattered Pixel Dungeon 6 | * Copyright (C) 2014-2024 Evan Debenham 7 | * 8 | * This program is free software: you can redistribute it and/or modify 9 | * it under the terms of the GNU General Public License as published by 10 | * the Free Software Foundation, either version 3 of the License, or 11 | * (at your option) any later version. 12 | * 13 | * This program is distributed in the hope that it will be useful, 14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 | * GNU General Public License for more details. 17 | * 18 | * You should have received a copy of the GNU General Public License 19 | * along with this program. If not, see 20 | */ 21 | 22 | package com.shatteredpixel.shatteredpixeldungeon.actors.buffs; 23 | 24 | public class Sleep extends FlavourBuff { 25 | 26 | @Override 27 | public void fx(boolean on) { 28 | if (on) target.sprite.idle(); 29 | } 30 | 31 | public static final float SWS = 1.5f; 32 | 33 | } 34 | -------------------------------------------------------------------------------- /core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/buffs/Speed.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Pixel Dungeon 3 | * Copyright (C) 2012-2015 Oleg Dolya 4 | * 5 | * Shattered Pixel Dungeon 6 | * Copyright (C) 2014-2024 Evan Debenham 7 | * 8 | * This program is free software: you can redistribute it and/or modify 9 | * it under the terms of the GNU General Public License as published by 10 | * the Free Software Foundation, either version 3 of the License, or 11 | * (at your option) any later version. 12 | * 13 | * This program is distributed in the hope that it will be useful, 14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 | * GNU General Public License for more details. 17 | * 18 | * You should have received a copy of the GNU General Public License 19 | * along with this program. If not, see 20 | */ 21 | 22 | package com.shatteredpixel.shatteredpixeldungeon.actors.buffs; 23 | 24 | public class Speed extends FlavourBuff { 25 | 26 | public static final float DURATION = 10f; 27 | 28 | } 29 | -------------------------------------------------------------------------------- /core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/buffs/Vertigo.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Pixel Dungeon 3 | * Copyright (C) 2012-2015 Oleg Dolya 4 | * 5 | * Shattered Pixel Dungeon 6 | * Copyright (C) 2014-2024 Evan Debenham 7 | * 8 | * This program is free software: you can redistribute it and/or modify 9 | * it under the terms of the GNU General Public License as published by 10 | * the Free Software Foundation, either version 3 of the License, or 11 | * (at your option) any later version. 12 | * 13 | * This program is distributed in the hope that it will be useful, 14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 | * GNU General Public License for more details. 17 | * 18 | * You should have received a copy of the GNU General Public License 19 | * along with this program. If not, see 20 | */ 21 | 22 | package com.shatteredpixel.shatteredpixeldungeon.actors.buffs; 23 | 24 | import com.shatteredpixel.shatteredpixeldungeon.ui.BuffIndicator; 25 | 26 | public class Vertigo extends FlavourBuff { 27 | 28 | public static final float DURATION = 10f; 29 | 30 | { 31 | type = buffType.NEGATIVE; 32 | announced = true; 33 | } 34 | 35 | @Override 36 | public int icon() { 37 | return BuffIndicator.VERTIGO; 38 | } 39 | 40 | @Override 41 | public float iconFadePercent() { 42 | return Math.max(0, (DURATION - visualcooldown()) / DURATION); 43 | } 44 | 45 | } 46 | -------------------------------------------------------------------------------- /core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/buffs/Vulnerable.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Pixel Dungeon 3 | * Copyright (C) 2012-2015 Oleg Dolya 4 | * 5 | * Shattered Pixel Dungeon 6 | * Copyright (C) 2014-2024 Evan Debenham 7 | * 8 | * This program is free software: you can redistribute it and/or modify 9 | * it under the terms of the GNU General Public License as published by 10 | * the Free Software Foundation, either version 3 of the License, or 11 | * (at your option) any later version. 12 | * 13 | * This program is distributed in the hope that it will be useful, 14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 | * GNU General Public License for more details. 17 | * 18 | * You should have received a copy of the GNU General Public License 19 | * along with this program. If not, see 20 | */ 21 | 22 | package com.shatteredpixel.shatteredpixeldungeon.actors.buffs; 23 | 24 | import com.shatteredpixel.shatteredpixeldungeon.ui.BuffIndicator; 25 | 26 | public class Vulnerable extends FlavourBuff { 27 | 28 | public static final float DURATION = 20f; 29 | 30 | { 31 | type = buffType.NEGATIVE; 32 | announced = true; 33 | } 34 | 35 | @Override 36 | public int icon() { 37 | return BuffIndicator.VULNERABLE; 38 | } 39 | 40 | @Override 41 | public float iconFadePercent() { 42 | return Math.max(0, (DURATION - visualcooldown()) / DURATION); 43 | } 44 | } 45 | -------------------------------------------------------------------------------- /core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/buffs/Weakness.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Pixel Dungeon 3 | * Copyright (C) 2012-2015 Oleg Dolya 4 | * 5 | * Shattered Pixel Dungeon 6 | * Copyright (C) 2014-2024 Evan Debenham 7 | * 8 | * This program is free software: you can redistribute it and/or modify 9 | * it under the terms of the GNU General Public License as published by 10 | * the Free Software Foundation, either version 3 of the License, or 11 | * (at your option) any later version. 12 | * 13 | * This program is distributed in the hope that it will be useful, 14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 | * GNU General Public License for more details. 17 | * 18 | * You should have received a copy of the GNU General Public License 19 | * along with this program. If not, see 20 | */ 21 | 22 | package com.shatteredpixel.shatteredpixeldungeon.actors.buffs; 23 | 24 | import com.shatteredpixel.shatteredpixeldungeon.ui.BuffIndicator; 25 | 26 | public class Weakness extends FlavourBuff { 27 | 28 | public static final float DURATION = 20f; 29 | 30 | { 31 | type = buffType.NEGATIVE; 32 | announced = true; 33 | } 34 | 35 | @Override 36 | public int icon() { 37 | return BuffIndicator.WEAKNESS; 38 | } 39 | 40 | @Override 41 | public float iconFadePercent() { 42 | return Math.max(0, (DURATION - visualcooldown()) / DURATION); 43 | } 44 | } 45 | -------------------------------------------------------------------------------- /core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/armor/ClericArmor.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Pixel Dungeon 3 | * Copyright (C) 2012-2015 Oleg Dolya 4 | * 5 | * Shattered Pixel Dungeon 6 | * Copyright (C) 2014-2024 Evan Debenham 7 | * 8 | * This program is free software: you can redistribute it and/or modify 9 | * it under the terms of the GNU General Public License as published by 10 | * the Free Software Foundation, either version 3 of the License, or 11 | * (at your option) any later version. 12 | * 13 | * This program is distributed in the hope that it will be useful, 14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 | * GNU General Public License for more details. 17 | * 18 | * You should have received a copy of the GNU General Public License 19 | * along with this program. If not, see 20 | */ 21 | 22 | package com.shatteredpixel.shatteredpixeldungeon.items.armor; 23 | 24 | import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet; 25 | 26 | public class ClericArmor extends ClassArmor { 27 | 28 | { 29 | image = ItemSpriteSheet.ARMOR_CLERIC; 30 | } 31 | 32 | } 33 | -------------------------------------------------------------------------------- /core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/armor/ClothArmor.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Pixel Dungeon 3 | * Copyright (C) 2012-2015 Oleg Dolya 4 | * 5 | * Shattered Pixel Dungeon 6 | * Copyright (C) 2014-2024 Evan Debenham 7 | * 8 | * This program is free software: you can redistribute it and/or modify 9 | * it under the terms of the GNU General Public License as published by 10 | * the Free Software Foundation, either version 3 of the License, or 11 | * (at your option) any later version. 12 | * 13 | * This program is distributed in the hope that it will be useful, 14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 | * GNU General Public License for more details. 17 | * 18 | * You should have received a copy of the GNU General Public License 19 | * along with this program. If not, see 20 | */ 21 | 22 | package com.shatteredpixel.shatteredpixeldungeon.items.armor; 23 | 24 | import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet; 25 | 26 | public class ClothArmor extends Armor { 27 | 28 | { 29 | image = ItemSpriteSheet.ARMOR_CLOTH; 30 | 31 | bones = false; //Finding them in bones would be semi-frequent and disappointing. 32 | } 33 | 34 | public ClothArmor() { 35 | super( 1 ); 36 | } 37 | 38 | } 39 | -------------------------------------------------------------------------------- /core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/armor/DuelistArmor.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Pixel Dungeon 3 | * Copyright (C) 2012-2015 Oleg Dolya 4 | * 5 | * Shattered Pixel Dungeon 6 | * Copyright (C) 2014-2024 Evan Debenham 7 | * 8 | * This program is free software: you can redistribute it and/or modify 9 | * it under the terms of the GNU General Public License as published by 10 | * the Free Software Foundation, either version 3 of the License, or 11 | * (at your option) any later version. 12 | * 13 | * This program is distributed in the hope that it will be useful, 14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 | * GNU General Public License for more details. 17 | * 18 | * You should have received a copy of the GNU General Public License 19 | * along with this program. If not, see 20 | */ 21 | 22 | package com.shatteredpixel.shatteredpixeldungeon.items.armor; 23 | 24 | import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet; 25 | 26 | public class DuelistArmor extends ClassArmor { 27 | 28 | { 29 | image = ItemSpriteSheet.ARMOR_DUELIST; 30 | } 31 | 32 | } 33 | -------------------------------------------------------------------------------- /core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/armor/HuntressArmor.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Pixel Dungeon 3 | * Copyright (C) 2012-2015 Oleg Dolya 4 | * 5 | * Shattered Pixel Dungeon 6 | * Copyright (C) 2014-2024 Evan Debenham 7 | * 8 | * This program is free software: you can redistribute it and/or modify 9 | * it under the terms of the GNU General Public License as published by 10 | * the Free Software Foundation, either version 3 of the License, or 11 | * (at your option) any later version. 12 | * 13 | * This program is distributed in the hope that it will be useful, 14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 | * GNU General Public License for more details. 17 | * 18 | * You should have received a copy of the GNU General Public License 19 | * along with this program. If not, see 20 | */ 21 | 22 | package com.shatteredpixel.shatteredpixeldungeon.items.armor; 23 | 24 | import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet; 25 | 26 | public class HuntressArmor extends ClassArmor { 27 | 28 | { 29 | image = ItemSpriteSheet.ARMOR_HUNTRESS; 30 | } 31 | 32 | } -------------------------------------------------------------------------------- /core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/armor/LeatherArmor.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Pixel Dungeon 3 | * Copyright (C) 2012-2015 Oleg Dolya 4 | * 5 | * Shattered Pixel Dungeon 6 | * Copyright (C) 2014-2024 Evan Debenham 7 | * 8 | * This program is free software: you can redistribute it and/or modify 9 | * it under the terms of the GNU General Public License as published by 10 | * the Free Software Foundation, either version 3 of the License, or 11 | * (at your option) any later version. 12 | * 13 | * This program is distributed in the hope that it will be useful, 14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 | * GNU General Public License for more details. 17 | * 18 | * You should have received a copy of the GNU General Public License 19 | * along with this program. If not, see 20 | */ 21 | 22 | package com.shatteredpixel.shatteredpixeldungeon.items.armor; 23 | 24 | import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet; 25 | 26 | public class LeatherArmor extends Armor { 27 | 28 | { 29 | image = ItemSpriteSheet.ARMOR_LEATHER; 30 | } 31 | 32 | public LeatherArmor() { 33 | super( 2 ); 34 | } 35 | 36 | } 37 | -------------------------------------------------------------------------------- /core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/armor/MageArmor.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Pixel Dungeon 3 | * Copyright (C) 2012-2015 Oleg Dolya 4 | * 5 | * Shattered Pixel Dungeon 6 | * Copyright (C) 2014-2024 Evan Debenham 7 | * 8 | * This program is free software: you can redistribute it and/or modify 9 | * it under the terms of the GNU General Public License as published by 10 | * the Free Software Foundation, either version 3 of the License, or 11 | * (at your option) any later version. 12 | * 13 | * This program is distributed in the hope that it will be useful, 14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 | * GNU General Public License for more details. 17 | * 18 | * You should have received a copy of the GNU General Public License 19 | * along with this program. If not, see 20 | */ 21 | 22 | package com.shatteredpixel.shatteredpixeldungeon.items.armor; 23 | 24 | import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet; 25 | 26 | public class MageArmor extends ClassArmor { 27 | 28 | { 29 | image = ItemSpriteSheet.ARMOR_MAGE; 30 | } 31 | 32 | } -------------------------------------------------------------------------------- /core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/armor/MailArmor.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Pixel Dungeon 3 | * Copyright (C) 2012-2015 Oleg Dolya 4 | * 5 | * Shattered Pixel Dungeon 6 | * Copyright (C) 2014-2024 Evan Debenham 7 | * 8 | * This program is free software: you can redistribute it and/or modify 9 | * it under the terms of the GNU General Public License as published by 10 | * the Free Software Foundation, either version 3 of the License, or 11 | * (at your option) any later version. 12 | * 13 | * This program is distributed in the hope that it will be useful, 14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 | * GNU General Public License for more details. 17 | * 18 | * You should have received a copy of the GNU General Public License 19 | * along with this program. If not, see 20 | */ 21 | 22 | package com.shatteredpixel.shatteredpixeldungeon.items.armor; 23 | 24 | import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet; 25 | 26 | public class MailArmor extends Armor { 27 | 28 | { 29 | image = ItemSpriteSheet.ARMOR_MAIL; 30 | } 31 | 32 | public MailArmor() { 33 | super( 3 ); 34 | } 35 | 36 | } 37 | -------------------------------------------------------------------------------- /core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/armor/PlateArmor.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Pixel Dungeon 3 | * Copyright (C) 2012-2015 Oleg Dolya 4 | * 5 | * Shattered Pixel Dungeon 6 | * Copyright (C) 2014-2024 Evan Debenham 7 | * 8 | * This program is free software: you can redistribute it and/or modify 9 | * it under the terms of the GNU General Public License as published by 10 | * the Free Software Foundation, either version 3 of the License, or 11 | * (at your option) any later version. 12 | * 13 | * This program is distributed in the hope that it will be useful, 14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 | * GNU General Public License for more details. 17 | * 18 | * You should have received a copy of the GNU General Public License 19 | * along with this program. If not, see 20 | */ 21 | 22 | package com.shatteredpixel.shatteredpixeldungeon.items.armor; 23 | 24 | import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet; 25 | 26 | public class PlateArmor extends Armor { 27 | 28 | { 29 | image = ItemSpriteSheet.ARMOR_PLATE; 30 | } 31 | 32 | public PlateArmor() { 33 | super( 5 ); 34 | } 35 | 36 | } 37 | -------------------------------------------------------------------------------- /core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/armor/RogueArmor.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Pixel Dungeon 3 | * Copyright (C) 2012-2015 Oleg Dolya 4 | * 5 | * Shattered Pixel Dungeon 6 | * Copyright (C) 2014-2024 Evan Debenham 7 | * 8 | * This program is free software: you can redistribute it and/or modify 9 | * it under the terms of the GNU General Public License as published by 10 | * the Free Software Foundation, either version 3 of the License, or 11 | * (at your option) any later version. 12 | * 13 | * This program is distributed in the hope that it will be useful, 14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 | * GNU General Public License for more details. 17 | * 18 | * You should have received a copy of the GNU General Public License 19 | * along with this program. If not, see 20 | */ 21 | 22 | package com.shatteredpixel.shatteredpixeldungeon.items.armor; 23 | 24 | import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet; 25 | 26 | public class RogueArmor extends ClassArmor { 27 | 28 | { 29 | image = ItemSpriteSheet.ARMOR_ROGUE; 30 | } 31 | 32 | } -------------------------------------------------------------------------------- /core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/armor/ScaleArmor.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Pixel Dungeon 3 | * Copyright (C) 2012-2015 Oleg Dolya 4 | * 5 | * Shattered Pixel Dungeon 6 | * Copyright (C) 2014-2024 Evan Debenham 7 | * 8 | * This program is free software: you can redistribute it and/or modify 9 | * it under the terms of the GNU General Public License as published by 10 | * the Free Software Foundation, either version 3 of the License, or 11 | * (at your option) any later version. 12 | * 13 | * This program is distributed in the hope that it will be useful, 14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 | * GNU General Public License for more details. 17 | * 18 | * You should have received a copy of the GNU General Public License 19 | * along with this program. If not, see 20 | */ 21 | 22 | package com.shatteredpixel.shatteredpixeldungeon.items.armor; 23 | 24 | import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet; 25 | 26 | public class ScaleArmor extends Armor { 27 | 28 | { 29 | image = ItemSpriteSheet.ARMOR_SCALE; 30 | } 31 | 32 | public ScaleArmor() { 33 | super( 4 ); 34 | } 35 | 36 | } 37 | -------------------------------------------------------------------------------- /core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/armor/WarriorArmor.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Pixel Dungeon 3 | * Copyright (C) 2012-2015 Oleg Dolya 4 | * 5 | * Shattered Pixel Dungeon 6 | * Copyright (C) 2014-2024 Evan Debenham 7 | * 8 | * This program is free software: you can redistribute it and/or modify 9 | * it under the terms of the GNU General Public License as published by 10 | * the Free Software Foundation, either version 3 of the License, or 11 | * (at your option) any later version. 12 | * 13 | * This program is distributed in the hope that it will be useful, 14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 | * GNU General Public License for more details. 17 | * 18 | * You should have received a copy of the GNU General Public License 19 | * along with this program. If not, see 20 | */ 21 | 22 | package com.shatteredpixel.shatteredpixeldungeon.items.armor; 23 | 24 | import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet; 25 | 26 | public class WarriorArmor extends ClassArmor { 27 | 28 | { 29 | image = ItemSpriteSheet.ARMOR_WARRIOR; 30 | } 31 | 32 | } -------------------------------------------------------------------------------- /core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/food/ChargrilledMeat.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Pixel Dungeon 3 | * Copyright (C) 2012-2015 Oleg Dolya 4 | * 5 | * Shattered Pixel Dungeon 6 | * Copyright (C) 2014-2024 Evan Debenham 7 | * 8 | * This program is free software: you can redistribute it and/or modify 9 | * it under the terms of the GNU General Public License as published by 10 | * the Free Software Foundation, either version 3 of the License, or 11 | * (at your option) any later version. 12 | * 13 | * This program is distributed in the hope that it will be useful, 14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 | * GNU General Public License for more details. 17 | * 18 | * You should have received a copy of the GNU General Public License 19 | * along with this program. If not, see 20 | */ 21 | 22 | package com.shatteredpixel.shatteredpixeldungeon.items.food; 23 | 24 | import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Hunger; 25 | import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet; 26 | 27 | public class ChargrilledMeat extends Food { 28 | 29 | { 30 | image = ItemSpriteSheet.STEAK; 31 | energy = Hunger.HUNGRY/2f; 32 | } 33 | 34 | @Override 35 | public int value() { 36 | return 8 * quantity; 37 | } 38 | 39 | public static Food cook( int quantity ) { 40 | ChargrilledMeat result = new ChargrilledMeat(); 41 | result.quantity = quantity; 42 | return result; 43 | } 44 | } 45 | -------------------------------------------------------------------------------- /core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/food/SmallRation.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Pixel Dungeon 3 | * Copyright (C) 2012-2015 Oleg Dolya 4 | * 5 | * Shattered Pixel Dungeon 6 | * Copyright (C) 2014-2024 Evan Debenham 7 | * 8 | * This program is free software: you can redistribute it and/or modify 9 | * it under the terms of the GNU General Public License as published by 10 | * the Free Software Foundation, either version 3 of the License, or 11 | * (at your option) any later version. 12 | * 13 | * This program is distributed in the hope that it will be useful, 14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 | * GNU General Public License for more details. 17 | * 18 | * You should have received a copy of the GNU General Public License 19 | * along with this program. If not, see 20 | */ 21 | 22 | package com.shatteredpixel.shatteredpixeldungeon.items.food; 23 | 24 | import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Hunger; 25 | import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet; 26 | 27 | public class SmallRation extends Food { 28 | 29 | { 30 | image = ItemSpriteSheet.OVERPRICED; 31 | energy = Hunger.HUNGRY/2f; 32 | } 33 | 34 | @Override 35 | public int value() { 36 | return 10 * quantity; 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/journal/AlchemyPage.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Pixel Dungeon 3 | * Copyright (C) 2012-2015 Oleg Dolya 4 | * 5 | * Shattered Pixel Dungeon 6 | * Copyright (C) 2014-2024 Evan Debenham 7 | * 8 | * This program is free software: you can redistribute it and/or modify 9 | * it under the terms of the GNU General Public License as published by 10 | * the Free Software Foundation, either version 3 of the License, or 11 | * (at your option) any later version. 12 | * 13 | * This program is distributed in the hope that it will be useful, 14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 | * GNU General Public License for more details. 17 | * 18 | * You should have received a copy of the GNU General Public License 19 | * along with this program. If not, see 20 | */ 21 | 22 | package com.shatteredpixel.shatteredpixeldungeon.items.journal; 23 | 24 | import com.shatteredpixel.shatteredpixeldungeon.journal.Document; 25 | import com.shatteredpixel.shatteredpixeldungeon.messages.Messages; 26 | import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet; 27 | 28 | public class AlchemyPage extends DocumentPage { 29 | 30 | { 31 | image = ItemSpriteSheet.ALCH_PAGE; 32 | } 33 | 34 | @Override 35 | public Document document() { 36 | return Document.ALCHEMY_GUIDE; 37 | } 38 | 39 | @Override 40 | public String desc() { 41 | return Messages.get(this, "desc", document().pageTitle(page())); 42 | } 43 | } 44 | -------------------------------------------------------------------------------- /core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/journal/GuidePage.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Pixel Dungeon 3 | * Copyright (C) 2012-2015 Oleg Dolya 4 | * 5 | * Shattered Pixel Dungeon 6 | * Copyright (C) 2014-2024 Evan Debenham 7 | * 8 | * This program is free software: you can redistribute it and/or modify 9 | * it under the terms of the GNU General Public License as published by 10 | * the Free Software Foundation, either version 3 of the License, or 11 | * (at your option) any later version. 12 | * 13 | * This program is distributed in the hope that it will be useful, 14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 | * GNU General Public License for more details. 17 | * 18 | * You should have received a copy of the GNU General Public License 19 | * along with this program. If not, see 20 | */ 21 | 22 | package com.shatteredpixel.shatteredpixeldungeon.items.journal; 23 | 24 | import com.shatteredpixel.shatteredpixeldungeon.journal.Document; 25 | import com.shatteredpixel.shatteredpixeldungeon.messages.Messages; 26 | import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet; 27 | 28 | public class GuidePage extends DocumentPage { 29 | 30 | { 31 | image = ItemSpriteSheet.GUIDE_PAGE; 32 | } 33 | 34 | @Override 35 | public Document document() { 36 | return Document.ADVENTURERS_GUIDE; 37 | } 38 | 39 | @Override 40 | public String desc() { 41 | return Messages.get(this, "desc", document().pageTitle(page())); 42 | } 43 | } 44 | -------------------------------------------------------------------------------- /core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/keys/CrystalKey.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Pixel Dungeon 3 | * Copyright (C) 2012-2015 Oleg Dolya 4 | * 5 | * Shattered Pixel Dungeon 6 | * Copyright (C) 2014-2024 Evan Debenham 7 | * 8 | * This program is free software: you can redistribute it and/or modify 9 | * it under the terms of the GNU General Public License as published by 10 | * the Free Software Foundation, either version 3 of the License, or 11 | * (at your option) any later version. 12 | * 13 | * This program is distributed in the hope that it will be useful, 14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 | * GNU General Public License for more details. 17 | * 18 | * You should have received a copy of the GNU General Public License 19 | * along with this program. If not, see 20 | */ 21 | 22 | package com.shatteredpixel.shatteredpixeldungeon.items.keys; 23 | 24 | import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet; 25 | 26 | public class CrystalKey extends Key { 27 | 28 | { 29 | image = ItemSpriteSheet.CRYSTAL_KEY; 30 | } 31 | 32 | public CrystalKey() { 33 | this( 0 ); 34 | } 35 | 36 | public CrystalKey( int depth ) { 37 | super(); 38 | this.depth = depth; 39 | } 40 | 41 | } 42 | -------------------------------------------------------------------------------- /core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/keys/GoldenKey.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Pixel Dungeon 3 | * Copyright (C) 2012-2015 Oleg Dolya 4 | * 5 | * Shattered Pixel Dungeon 6 | * Copyright (C) 2014-2024 Evan Debenham 7 | * 8 | * This program is free software: you can redistribute it and/or modify 9 | * it under the terms of the GNU General Public License as published by 10 | * the Free Software Foundation, either version 3 of the License, or 11 | * (at your option) any later version. 12 | * 13 | * This program is distributed in the hope that it will be useful, 14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 | * GNU General Public License for more details. 17 | * 18 | * You should have received a copy of the GNU General Public License 19 | * along with this program. If not, see 20 | */ 21 | 22 | package com.shatteredpixel.shatteredpixeldungeon.items.keys; 23 | 24 | import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet; 25 | 26 | public class GoldenKey extends Key { 27 | 28 | { 29 | image = ItemSpriteSheet.GOLDEN_KEY; 30 | } 31 | 32 | public GoldenKey() { 33 | this( 0 ); 34 | } 35 | 36 | public GoldenKey( int depth ) { 37 | super(); 38 | this.depth = depth; 39 | } 40 | 41 | } 42 | -------------------------------------------------------------------------------- /core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/keys/IronKey.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Pixel Dungeon 3 | * Copyright (C) 2012-2015 Oleg Dolya 4 | * 5 | * Shattered Pixel Dungeon 6 | * Copyright (C) 2014-2024 Evan Debenham 7 | * 8 | * This program is free software: you can redistribute it and/or modify 9 | * it under the terms of the GNU General Public License as published by 10 | * the Free Software Foundation, either version 3 of the License, or 11 | * (at your option) any later version. 12 | * 13 | * This program is distributed in the hope that it will be useful, 14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 | * GNU General Public License for more details. 17 | * 18 | * You should have received a copy of the GNU General Public License 19 | * along with this program. If not, see 20 | */ 21 | 22 | package com.shatteredpixel.shatteredpixeldungeon.items.keys; 23 | 24 | import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet; 25 | 26 | public class IronKey extends Key { 27 | 28 | { 29 | image = ItemSpriteSheet.IRON_KEY; 30 | } 31 | 32 | public IronKey() { 33 | this( 0 ); 34 | } 35 | 36 | public IronKey( int depth ) { 37 | super(); 38 | this.depth = depth; 39 | } 40 | 41 | } 42 | -------------------------------------------------------------------------------- /core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/potions/elixirs/Elixir.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Pixel Dungeon 3 | * Copyright (C) 2012-2015 Oleg Dolya 4 | * 5 | * Shattered Pixel Dungeon 6 | * Copyright (C) 2014-2024 Evan Debenham 7 | * 8 | * This program is free software: you can redistribute it and/or modify 9 | * it under the terms of the GNU General Public License as published by 10 | * the Free Software Foundation, either version 3 of the License, or 11 | * (at your option) any later version. 12 | * 13 | * This program is distributed in the hope that it will be useful, 14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 | * GNU General Public License for more details. 17 | * 18 | * You should have received a copy of the GNU General Public License 19 | * along with this program. If not, see 20 | */ 21 | 22 | package com.shatteredpixel.shatteredpixeldungeon.items.potions.elixirs; 23 | 24 | import com.shatteredpixel.shatteredpixeldungeon.actors.hero.Hero; 25 | import com.shatteredpixel.shatteredpixeldungeon.items.potions.Potion; 26 | 27 | public abstract class Elixir extends Potion { 28 | 29 | public abstract void apply( Hero hero ); 30 | 31 | @Override 32 | public boolean isKnown() { 33 | return true; 34 | } 35 | 36 | @Override 37 | public int value() { 38 | return quantity * 60; 39 | } 40 | 41 | @Override 42 | public int energyVal() { 43 | return quantity * 12; 44 | } 45 | } 46 | -------------------------------------------------------------------------------- /core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/potions/exotic/PotionOfEarthenArmor.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Pixel Dungeon 3 | * Copyright (C) 2012-2015 Oleg Dolya 4 | * 5 | * Shattered Pixel Dungeon 6 | * Copyright (C) 2014-2024 Evan Debenham 7 | * 8 | * This program is free software: you can redistribute it and/or modify 9 | * it under the terms of the GNU General Public License as published by 10 | * the Free Software Foundation, either version 3 of the License, or 11 | * (at your option) any later version. 12 | * 13 | * This program is distributed in the hope that it will be useful, 14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 | * GNU General Public License for more details. 17 | * 18 | * You should have received a copy of the GNU General Public License 19 | * along with this program. If not, see 20 | */ 21 | 22 | package com.shatteredpixel.shatteredpixeldungeon.items.potions.exotic; 23 | 24 | import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Barkskin; 25 | import com.shatteredpixel.shatteredpixeldungeon.actors.hero.Hero; 26 | import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet; 27 | 28 | public class PotionOfEarthenArmor extends ExoticPotion { 29 | 30 | { 31 | icon = ItemSpriteSheet.Icons.POTION_EARTHARMR; 32 | } 33 | 34 | @Override 35 | public void apply( Hero hero ) { 36 | identify(); 37 | 38 | Barkskin.conditionallyAppend( hero, 2 + hero.lvl/3, 50 ); 39 | } 40 | 41 | } 42 | -------------------------------------------------------------------------------- /core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/quest/DarkGold.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Pixel Dungeon 3 | * Copyright (C) 2012-2015 Oleg Dolya 4 | * 5 | * Shattered Pixel Dungeon 6 | * Copyright (C) 2014-2024 Evan Debenham 7 | * 8 | * This program is free software: you can redistribute it and/or modify 9 | * it under the terms of the GNU General Public License as published by 10 | * the Free Software Foundation, either version 3 of the License, or 11 | * (at your option) any later version. 12 | * 13 | * This program is distributed in the hope that it will be useful, 14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 | * GNU General Public License for more details. 17 | * 18 | * You should have received a copy of the GNU General Public License 19 | * along with this program. If not, see 20 | */ 21 | 22 | package com.shatteredpixel.shatteredpixeldungeon.items.quest; 23 | 24 | import com.shatteredpixel.shatteredpixeldungeon.items.Item; 25 | import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet; 26 | 27 | public class DarkGold extends Item { 28 | 29 | { 30 | image = ItemSpriteSheet.ORE; 31 | 32 | stackable = true; 33 | unique = true; 34 | } 35 | 36 | @Override 37 | public boolean isUpgradable() { 38 | return false; 39 | } 40 | 41 | @Override 42 | public boolean isIdentified() { 43 | return true; 44 | } 45 | } 46 | -------------------------------------------------------------------------------- /core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/quest/DwarfToken.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Pixel Dungeon 3 | * Copyright (C) 2012-2015 Oleg Dolya 4 | * 5 | * Shattered Pixel Dungeon 6 | * Copyright (C) 2014-2024 Evan Debenham 7 | * 8 | * This program is free software: you can redistribute it and/or modify 9 | * it under the terms of the GNU General Public License as published by 10 | * the Free Software Foundation, either version 3 of the License, or 11 | * (at your option) any later version. 12 | * 13 | * This program is distributed in the hope that it will be useful, 14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 | * GNU General Public License for more details. 17 | * 18 | * You should have received a copy of the GNU General Public License 19 | * along with this program. If not, see 20 | */ 21 | 22 | package com.shatteredpixel.shatteredpixeldungeon.items.quest; 23 | 24 | import com.shatteredpixel.shatteredpixeldungeon.items.Item; 25 | import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet; 26 | 27 | public class DwarfToken extends Item { 28 | 29 | { 30 | image = ItemSpriteSheet.TOKEN; 31 | 32 | stackable = true; 33 | unique = true; 34 | } 35 | 36 | @Override 37 | public boolean isUpgradable() { 38 | return false; 39 | } 40 | 41 | @Override 42 | public boolean isIdentified() { 43 | return true; 44 | } 45 | } 46 | -------------------------------------------------------------------------------- /core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/stones/StoneOfBlast.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Pixel Dungeon 3 | * Copyright (C) 2012-2015 Oleg Dolya 4 | * 5 | * Shattered Pixel Dungeon 6 | * Copyright (C) 2014-2024 Evan Debenham 7 | * 8 | * This program is free software: you can redistribute it and/or modify 9 | * it under the terms of the GNU General Public License as published by 10 | * the Free Software Foundation, either version 3 of the License, or 11 | * (at your option) any later version. 12 | * 13 | * This program is distributed in the hope that it will be useful, 14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 | * GNU General Public License for more details. 17 | * 18 | * You should have received a copy of the GNU General Public License 19 | * along with this program. If not, see 20 | */ 21 | 22 | package com.shatteredpixel.shatteredpixeldungeon.items.stones; 23 | 24 | import com.shatteredpixel.shatteredpixeldungeon.items.bombs.Bomb; 25 | import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet; 26 | 27 | public class StoneOfBlast extends Runestone { 28 | 29 | { 30 | image = ItemSpriteSheet.STONE_BLAST; 31 | } 32 | 33 | @Override 34 | protected void activate(int cell) { 35 | new Bomb.ConjuredBomb().explode(cell); 36 | } 37 | 38 | } 39 | -------------------------------------------------------------------------------- /core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/weapon/missiles/Javelin.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Pixel Dungeon 3 | * Copyright (C) 2012-2015 Oleg Dolya 4 | * 5 | * Shattered Pixel Dungeon 6 | * Copyright (C) 2014-2024 Evan Debenham 7 | * 8 | * This program is free software: you can redistribute it and/or modify 9 | * it under the terms of the GNU General Public License as published by 10 | * the Free Software Foundation, either version 3 of the License, or 11 | * (at your option) any later version. 12 | * 13 | * This program is distributed in the hope that it will be useful, 14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 | * GNU General Public License for more details. 17 | * 18 | * You should have received a copy of the GNU General Public License 19 | * along with this program. If not, see 20 | */ 21 | 22 | package com.shatteredpixel.shatteredpixeldungeon.items.weapon.missiles; 23 | 24 | import com.shatteredpixel.shatteredpixeldungeon.Assets; 25 | import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet; 26 | 27 | public class Javelin extends MissileWeapon { 28 | 29 | { 30 | image = ItemSpriteSheet.JAVELIN; 31 | hitSound = Assets.Sounds.HIT_STAB; 32 | hitSoundPitch = 1f; 33 | 34 | tier = 4; 35 | } 36 | 37 | } 38 | -------------------------------------------------------------------------------- /core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/weapon/missiles/ThrowingSpear.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Pixel Dungeon 3 | * Copyright (C) 2012-2015 Oleg Dolya 4 | * 5 | * Shattered Pixel Dungeon 6 | * Copyright (C) 2014-2024 Evan Debenham 7 | * 8 | * This program is free software: you can redistribute it and/or modify 9 | * it under the terms of the GNU General Public License as published by 10 | * the Free Software Foundation, either version 3 of the License, or 11 | * (at your option) any later version. 12 | * 13 | * This program is distributed in the hope that it will be useful, 14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 | * GNU General Public License for more details. 17 | * 18 | * You should have received a copy of the GNU General Public License 19 | * along with this program. If not, see 20 | */ 21 | 22 | package com.shatteredpixel.shatteredpixeldungeon.items.weapon.missiles; 23 | 24 | import com.shatteredpixel.shatteredpixeldungeon.Assets; 25 | import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet; 26 | 27 | public class ThrowingSpear extends MissileWeapon { 28 | 29 | { 30 | image = ItemSpriteSheet.THROWING_SPEAR; 31 | hitSound = Assets.Sounds.HIT_STAB; 32 | hitSoundPitch = 1f; 33 | 34 | tier = 3; 35 | } 36 | 37 | } 38 | -------------------------------------------------------------------------------- /core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/weapon/missiles/ThrowingSpike.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Pixel Dungeon 3 | * Copyright (C) 2012-2015 Oleg Dolya 4 | * 5 | * Shattered Pixel Dungeon 6 | * Copyright (C) 2014-2024 Evan Debenham 7 | * 8 | * This program is free software: you can redistribute it and/or modify 9 | * it under the terms of the GNU General Public License as published by 10 | * the Free Software Foundation, either version 3 of the License, or 11 | * (at your option) any later version. 12 | * 13 | * This program is distributed in the hope that it will be useful, 14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 | * GNU General Public License for more details. 17 | * 18 | * You should have received a copy of the GNU General Public License 19 | * along with this program. If not, see 20 | */ 21 | 22 | package com.shatteredpixel.shatteredpixeldungeon.items.weapon.missiles; 23 | 24 | import com.shatteredpixel.shatteredpixeldungeon.Assets; 25 | import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet; 26 | 27 | public class ThrowingSpike extends MissileWeapon { 28 | 29 | { 30 | image = ItemSpriteSheet.THROWING_SPIKE; 31 | hitSound = Assets.Sounds.HIT_STAB; 32 | hitSoundPitch = 1.2f; 33 | 34 | bones = false; 35 | 36 | tier = 1; 37 | } 38 | 39 | } 40 | -------------------------------------------------------------------------------- /core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/weapon/missiles/ThrowingStone.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Pixel Dungeon 3 | * Copyright (C) 2012-2015 Oleg Dolya 4 | * 5 | * Shattered Pixel Dungeon 6 | * Copyright (C) 2014-2024 Evan Debenham 7 | * 8 | * This program is free software: you can redistribute it and/or modify 9 | * it under the terms of the GNU General Public License as published by 10 | * the Free Software Foundation, either version 3 of the License, or 11 | * (at your option) any later version. 12 | * 13 | * This program is distributed in the hope that it will be useful, 14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 | * GNU General Public License for more details. 17 | * 18 | * You should have received a copy of the GNU General Public License 19 | * along with this program. If not, see 20 | */ 21 | 22 | package com.shatteredpixel.shatteredpixeldungeon.items.weapon.missiles; 23 | 24 | import com.shatteredpixel.shatteredpixeldungeon.Assets; 25 | import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet; 26 | 27 | public class ThrowingStone extends MissileWeapon { 28 | 29 | { 30 | image = ItemSpriteSheet.THROWING_STONE; 31 | hitSound = Assets.Sounds.HIT; 32 | hitSoundPitch = 1.1f; 33 | 34 | bones = false; 35 | 36 | tier = 1; 37 | baseUses = 5; 38 | sticky = false; 39 | } 40 | 41 | @Override 42 | public int value() { 43 | return super.value()/2; //half normal value 44 | } 45 | } 46 | -------------------------------------------------------------------------------- /core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/weapon/missiles/Trident.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Pixel Dungeon 3 | * Copyright (C) 2012-2015 Oleg Dolya 4 | * 5 | * Shattered Pixel Dungeon 6 | * Copyright (C) 2014-2024 Evan Debenham 7 | * 8 | * This program is free software: you can redistribute it and/or modify 9 | * it under the terms of the GNU General Public License as published by 10 | * the Free Software Foundation, either version 3 of the License, or 11 | * (at your option) any later version. 12 | * 13 | * This program is distributed in the hope that it will be useful, 14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 | * GNU General Public License for more details. 17 | * 18 | * You should have received a copy of the GNU General Public License 19 | * along with this program. If not, see 20 | */ 21 | 22 | package com.shatteredpixel.shatteredpixeldungeon.items.weapon.missiles; 23 | 24 | import com.shatteredpixel.shatteredpixeldungeon.Assets; 25 | import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet; 26 | 27 | public class Trident extends MissileWeapon { 28 | 29 | { 30 | image = ItemSpriteSheet.TRIDENT; 31 | hitSound = Assets.Sounds.HIT_SLASH; 32 | hitSoundPitch = 0.9f; 33 | 34 | tier = 5; 35 | } 36 | 37 | } 38 | -------------------------------------------------------------------------------- /core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/rooms/standard/ChasmBridgeRoom.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Pixel Dungeon 3 | * Copyright (C) 2012-2015 Oleg Dolya 4 | * 5 | * Shattered Pixel Dungeon 6 | * Copyright (C) 2014-2024 Evan Debenham 7 | * 8 | * This program is free software: you can redistribute it and/or modify 9 | * it under the terms of the GNU General Public License as published by 10 | * the Free Software Foundation, either version 3 of the License, or 11 | * (at your option) any later version. 12 | * 13 | * This program is distributed in the hope that it will be useful, 14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 | * GNU General Public License for more details. 17 | * 18 | * You should have received a copy of the GNU General Public License 19 | * along with this program. If not, see 20 | */ 21 | 22 | package com.shatteredpixel.shatteredpixeldungeon.levels.rooms.standard; 23 | 24 | import com.shatteredpixel.shatteredpixeldungeon.levels.Terrain; 25 | 26 | public class ChasmBridgeRoom extends StandardBridgeRoom { 27 | 28 | protected int maxBridgeWidth( int roomDimension ) { 29 | return roomDimension >= 7 ? 2 : 1; 30 | } 31 | 32 | protected int spaceTile(){ 33 | return Terrain.CHASM; 34 | } 35 | 36 | } 37 | -------------------------------------------------------------------------------- /core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/rooms/standard/EmptyRoom.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Pixel Dungeon 3 | * Copyright (C) 2012-2015 Oleg Dolya 4 | * 5 | * Shattered Pixel Dungeon 6 | * Copyright (C) 2014-2024 Evan Debenham 7 | * 8 | * This program is free software: you can redistribute it and/or modify 9 | * it under the terms of the GNU General Public License as published by 10 | * the Free Software Foundation, either version 3 of the License, or 11 | * (at your option) any later version. 12 | * 13 | * This program is distributed in the hope that it will be useful, 14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 | * GNU General Public License for more details. 17 | * 18 | * You should have received a copy of the GNU General Public License 19 | * along with this program. If not, see 20 | */ 21 | 22 | package com.shatteredpixel.shatteredpixeldungeon.levels.rooms.standard; 23 | 24 | import com.shatteredpixel.shatteredpixeldungeon.levels.Level; 25 | import com.shatteredpixel.shatteredpixeldungeon.levels.Terrain; 26 | import com.shatteredpixel.shatteredpixeldungeon.levels.painters.Painter; 27 | 28 | public class EmptyRoom extends StandardRoom { 29 | 30 | @Override 31 | public void paint(Level level) { 32 | Painter.fill( level, this, Terrain.WALL ); 33 | Painter.fill( level, this, 1 , Terrain.EMPTY ); 34 | 35 | for (Door door : connected.values()) { 36 | door.set( Door.Type.REGULAR ); 37 | } 38 | } 39 | } 40 | -------------------------------------------------------------------------------- /core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/rooms/standard/WaterBridgeRoom.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Pixel Dungeon 3 | * Copyright (C) 2012-2015 Oleg Dolya 4 | * 5 | * Shattered Pixel Dungeon 6 | * Copyright (C) 2014-2024 Evan Debenham 7 | * 8 | * This program is free software: you can redistribute it and/or modify 9 | * it under the terms of the GNU General Public License as published by 10 | * the Free Software Foundation, either version 3 of the License, or 11 | * (at your option) any later version. 12 | * 13 | * This program is distributed in the hope that it will be useful, 14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 | * GNU General Public License for more details. 17 | * 18 | * You should have received a copy of the GNU General Public License 19 | * along with this program. If not, see 20 | */ 21 | 22 | package com.shatteredpixel.shatteredpixeldungeon.levels.rooms.standard; 23 | 24 | import com.shatteredpixel.shatteredpixeldungeon.levels.Terrain; 25 | import com.watabou.utils.Point; 26 | 27 | public class WaterBridgeRoom extends StandardBridgeRoom { 28 | 29 | protected int maxBridgeWidth( int roomDimension ) { 30 | return roomDimension >= 8 ? 3 : 2; 31 | } 32 | 33 | protected int spaceTile(){ 34 | return Terrain.WATER; 35 | } 36 | 37 | @Override 38 | public boolean canPlaceWater(Point p) { 39 | return false; 40 | } 41 | 42 | } 43 | -------------------------------------------------------------------------------- /core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/traps/ExplosiveTrap.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Pixel Dungeon 3 | * Copyright (C) 2012-2015 Oleg Dolya 4 | * 5 | * Shattered Pixel Dungeon 6 | * Copyright (C) 2014-2024 Evan Debenham 7 | * 8 | * This program is free software: you can redistribute it and/or modify 9 | * it under the terms of the GNU General Public License as published by 10 | * the Free Software Foundation, either version 3 of the License, or 11 | * (at your option) any later version. 12 | * 13 | * This program is distributed in the hope that it will be useful, 14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 | * GNU General Public License for more details. 17 | * 18 | * You should have received a copy of the GNU General Public License 19 | * along with this program. If not, see 20 | */ 21 | 22 | package com.shatteredpixel.shatteredpixeldungeon.levels.traps; 23 | 24 | import com.shatteredpixel.shatteredpixeldungeon.Badges; 25 | import com.shatteredpixel.shatteredpixeldungeon.Dungeon; 26 | import com.shatteredpixel.shatteredpixeldungeon.items.bombs.Bomb; 27 | 28 | public class ExplosiveTrap extends Trap { 29 | 30 | { 31 | color = ORANGE; 32 | shape = DIAMOND; 33 | } 34 | 35 | @Override 36 | public void activate() { 37 | new Bomb().explode(pos); 38 | if (reclaimed && !Dungeon.hero.isAlive()) { 39 | Badges.validateDeathFromFriendlyMagic(); 40 | } 41 | } 42 | 43 | } 44 | -------------------------------------------------------------------------------- /core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/plants/BlandfruitBush.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Pixel Dungeon 3 | * Copyright (C) 2012-2015 Oleg Dolya 4 | * 5 | * Shattered Pixel Dungeon 6 | * Copyright (C) 2014-2024 Evan Debenham 7 | * 8 | * This program is free software: you can redistribute it and/or modify 9 | * it under the terms of the GNU General Public License as published by 10 | * the Free Software Foundation, either version 3 of the License, or 11 | * (at your option) any later version. 12 | * 13 | * This program is distributed in the hope that it will be useful, 14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 | * GNU General Public License for more details. 17 | * 18 | * You should have received a copy of the GNU General Public License 19 | * along with this program. If not, see 20 | */ 21 | 22 | package com.shatteredpixel.shatteredpixeldungeon.plants; 23 | 24 | import com.shatteredpixel.shatteredpixeldungeon.Dungeon; 25 | import com.shatteredpixel.shatteredpixeldungeon.actors.Char; 26 | import com.shatteredpixel.shatteredpixeldungeon.items.food.Blandfruit; 27 | 28 | public class BlandfruitBush extends Plant { 29 | 30 | { 31 | image = 12; 32 | } 33 | 34 | @Override 35 | public void activate( Char ch ) { 36 | Dungeon.level.drop( new Blandfruit(), pos ).sprite.drop(); 37 | } 38 | 39 | //seed is never dropped 40 | public static class Seed extends Plant.Seed { 41 | { 42 | plantClass = BlandfruitBush.class; 43 | } 44 | 45 | } 46 | } 47 | -------------------------------------------------------------------------------- /core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/ui/BusyIndicator.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Pixel Dungeon 3 | * Copyright (C) 2012-2015 Oleg Dolya 4 | * 5 | * Shattered Pixel Dungeon 6 | * Copyright (C) 2014-2024 Evan Debenham 7 | * 8 | * This program is free software: you can redistribute it and/or modify 9 | * it under the terms of the GNU General Public License as published by 10 | * the Free Software Foundation, either version 3 of the License, or 11 | * (at your option) any later version. 12 | * 13 | * This program is distributed in the hope that it will be useful, 14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 | * GNU General Public License for more details. 17 | * 18 | * You should have received a copy of the GNU General Public License 19 | * along with this program. If not, see 20 | */ 21 | 22 | package com.shatteredpixel.shatteredpixeldungeon.ui; 23 | 24 | import com.shatteredpixel.shatteredpixeldungeon.Dungeon; 25 | import com.watabou.noosa.Image; 26 | 27 | public class BusyIndicator extends Image { 28 | 29 | public BusyIndicator() { 30 | super(); 31 | copy( Icons.BUSY.get() ); 32 | 33 | origin.set( width / 2, height / 2 ); 34 | angularSpeed = 720; 35 | } 36 | 37 | @Override 38 | public void update() { 39 | super.update(); 40 | visible = Dungeon.hero.isAlive() && !Dungeon.hero.ready; 41 | } 42 | } 43 | -------------------------------------------------------------------------------- /core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/ui/RedButton.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Pixel Dungeon 3 | * Copyright (C) 2012-2015 Oleg Dolya 4 | * 5 | * Shattered Pixel Dungeon 6 | * Copyright (C) 2014-2024 Evan Debenham 7 | * 8 | * This program is free software: you can redistribute it and/or modify 9 | * it under the terms of the GNU General Public License as published by 10 | * the Free Software Foundation, either version 3 of the License, or 11 | * (at your option) any later version. 12 | * 13 | * This program is distributed in the hope that it will be useful, 14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 | * GNU General Public License for more details. 17 | * 18 | * You should have received a copy of the GNU General Public License 19 | * along with this program. If not, see 20 | */ 21 | 22 | package com.shatteredpixel.shatteredpixeldungeon.ui; 23 | 24 | import com.shatteredpixel.shatteredpixeldungeon.Chrome; 25 | 26 | public class RedButton extends StyledButton { 27 | 28 | public RedButton( String label ) { 29 | this(label, 9); 30 | } 31 | 32 | public RedButton( String label, int size ){ 33 | super( Chrome.Type.RED_BUTTON, label, size); 34 | } 35 | 36 | } 37 | -------------------------------------------------------------------------------- /core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/windows/WndError.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Pixel Dungeon 3 | * Copyright (C) 2012-2015 Oleg Dolya 4 | * 5 | * Shattered Pixel Dungeon 6 | * Copyright (C) 2014-2024 Evan Debenham 7 | * 8 | * This program is free software: you can redistribute it and/or modify 9 | * it under the terms of the GNU General Public License as published by 10 | * the Free Software Foundation, either version 3 of the License, or 11 | * (at your option) any later version. 12 | * 13 | * This program is distributed in the hope that it will be useful, 14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 | * GNU General Public License for more details. 17 | * 18 | * You should have received a copy of the GNU General Public License 19 | * along with this program. If not, see 20 | */ 21 | 22 | package com.shatteredpixel.shatteredpixeldungeon.windows; 23 | 24 | import com.shatteredpixel.shatteredpixeldungeon.messages.Messages; 25 | import com.shatteredpixel.shatteredpixeldungeon.ui.Icons; 26 | 27 | public class WndError extends WndTitledMessage { 28 | 29 | public WndError( String message ) { 30 | super( Icons.WARNING.get(), Messages.get(WndError.class, "title"), message ); 31 | } 32 | 33 | } 34 | -------------------------------------------------------------------------------- /core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/windows/WndInfoPlant.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Pixel Dungeon 3 | * Copyright (C) 2012-2015 Oleg Dolya 4 | * 5 | * Shattered Pixel Dungeon 6 | * Copyright (C) 2014-2024 Evan Debenham 7 | * 8 | * This program is free software: you can redistribute it and/or modify 9 | * it under the terms of the GNU General Public License as published by 10 | * the Free Software Foundation, either version 3 of the License, or 11 | * (at your option) any later version. 12 | * 13 | * This program is distributed in the hope that it will be useful, 14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 | * GNU General Public License for more details. 17 | * 18 | * You should have received a copy of the GNU General Public License 19 | * along with this program. If not, see 20 | */ 21 | 22 | package com.shatteredpixel.shatteredpixeldungeon.windows; 23 | 24 | import com.shatteredpixel.shatteredpixeldungeon.Dungeon; 25 | import com.shatteredpixel.shatteredpixeldungeon.messages.Messages; 26 | import com.shatteredpixel.shatteredpixeldungeon.plants.Plant; 27 | import com.shatteredpixel.shatteredpixeldungeon.tiles.TerrainFeaturesTilemap; 28 | 29 | public class WndInfoPlant extends WndTitledMessage { 30 | 31 | public WndInfoPlant( Plant plant ) { 32 | 33 | super(TerrainFeaturesTilemap.tile( plant.pos, Dungeon.level.map[plant.pos]), 34 | Messages.titleCase(plant.name()), plant.desc()); 35 | 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/windows/WndQuest.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Pixel Dungeon 3 | * Copyright (C) 2012-2015 Oleg Dolya 4 | * 5 | * Shattered Pixel Dungeon 6 | * Copyright (C) 2014-2024 Evan Debenham 7 | * 8 | * This program is free software: you can redistribute it and/or modify 9 | * it under the terms of the GNU General Public License as published by 10 | * the Free Software Foundation, either version 3 of the License, or 11 | * (at your option) any later version. 12 | * 13 | * This program is distributed in the hope that it will be useful, 14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 | * GNU General Public License for more details. 17 | * 18 | * You should have received a copy of the GNU General Public License 19 | * along with this program. If not, see 20 | */ 21 | 22 | package com.shatteredpixel.shatteredpixeldungeon.windows; 23 | 24 | import com.shatteredpixel.shatteredpixeldungeon.actors.mobs.npcs.NPC; 25 | import com.shatteredpixel.shatteredpixeldungeon.messages.Messages; 26 | 27 | public class WndQuest extends WndTitledMessage { 28 | 29 | public WndQuest( NPC questgiver, String text ) { 30 | super( questgiver.sprite(), Messages.titleCase( questgiver.name() ), text ); 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /desktop/macos-entitlements.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | com.apple.security.cs.allow-jit 6 | 7 | com.apple.security.cs.allow-unsigned-executable-memory 8 | 9 | com.apple.security.cs.disable-library-validation 10 | 11 | com.apple.security.cs.allow-dyld-environment-variables 12 | 13 | 14 | -------------------------------------------------------------------------------- /desktop/src/main/assets/fonts/droid_sans.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/desktop/src/main/assets/fonts/droid_sans.ttf -------------------------------------------------------------------------------- /desktop/src/main/assets/icons/icon_128.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/desktop/src/main/assets/icons/icon_128.png -------------------------------------------------------------------------------- /desktop/src/main/assets/icons/icon_16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/desktop/src/main/assets/icons/icon_16.png -------------------------------------------------------------------------------- /desktop/src/main/assets/icons/icon_256.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/desktop/src/main/assets/icons/icon_256.png -------------------------------------------------------------------------------- /desktop/src/main/assets/icons/icon_32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/desktop/src/main/assets/icons/icon_32.png -------------------------------------------------------------------------------- /desktop/src/main/assets/icons/icon_48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/desktop/src/main/assets/icons/icon_48.png -------------------------------------------------------------------------------- /desktop/src/main/assets/icons/icon_64.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/desktop/src/main/assets/icons/icon_64.png -------------------------------------------------------------------------------- /desktop/src/main/assets/icons/mac.icns: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/desktop/src/main/assets/icons/mac.icns -------------------------------------------------------------------------------- /desktop/src/main/assets/icons/windows.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/desktop/src/main/assets/icons/windows.ico -------------------------------------------------------------------------------- /docs/FUNDING.yml: -------------------------------------------------------------------------------- 1 | patreon: ShatteredPixel 2 | liberapay: Shattered_Pixel -------------------------------------------------------------------------------- /docs/PULL_REQUEST_TEMPLATE.md: -------------------------------------------------------------------------------- 1 | Note that **this repository does not accept pull requests!** The code here is provided in hopes that others may find it useful for their own projects, not to allow community contribution. Issue reports of all kinds (bug reports, feature requests, etc.) are welcome. -------------------------------------------------------------------------------- /gradle.properties: -------------------------------------------------------------------------------- 1 | ## For more details on how to configure your build environment visit 2 | # http://www.gradle.org/docs/current/userguide/build_environment.html 3 | # 4 | # Specifies the JVM arguments used for the daemon process. 5 | # The setting is particularly useful for tweaking memory settings. 6 | # Default value: -Xmx512m -XX:MaxMetaspaceSize=256m 7 | org.gradle.jvmargs=-Xmx2048m -XX:MaxMetaspaceSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8 8 | # 9 | # When configured, Gradle will run in incubating parallel mode. 10 | # This option should only be used with decoupled projects. More details, visit 11 | # http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects 12 | org.gradle.parallel=true 13 | 14 | # Necessary to turn off certain R8 optimizations that would otherwise cause Shattered to crash 15 | android.enableR8.fullMode=false -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | distributionBase=GRADLE_USER_HOME 2 | distributionPath=wrapper/dists 3 | distributionUrl=https\://services.gradle.org/distributions/gradle-8.10.2-bin.zip 4 | zipStoreBase=GRADLE_USER_HOME 5 | zipStorePath=wrapper/dists 6 | -------------------------------------------------------------------------------- /ios/.gitignore: -------------------------------------------------------------------------------- 1 | #RoboVM build folders 2 | robovm-build/ 3 | 4 | #RoboVM config (we dynamically generate it) 5 | robovm.properties -------------------------------------------------------------------------------- /ios/assets/Assets.xcassets/AppIcon.appiconset/Icon-1024.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/ios/assets/Assets.xcassets/AppIcon.appiconset/Icon-1024.png -------------------------------------------------------------------------------- /ios/assets/Assets.xcassets/AppIcon.appiconset/Icon-20.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/ios/assets/Assets.xcassets/AppIcon.appiconset/Icon-20.png -------------------------------------------------------------------------------- /ios/assets/Assets.xcassets/AppIcon.appiconset/Icon-20@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/ios/assets/Assets.xcassets/AppIcon.appiconset/Icon-20@2x.png -------------------------------------------------------------------------------- /ios/assets/Assets.xcassets/AppIcon.appiconset/Icon-20@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/ios/assets/Assets.xcassets/AppIcon.appiconset/Icon-20@3x.png -------------------------------------------------------------------------------- /ios/assets/Assets.xcassets/AppIcon.appiconset/Icon-29.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/ios/assets/Assets.xcassets/AppIcon.appiconset/Icon-29.png -------------------------------------------------------------------------------- /ios/assets/Assets.xcassets/AppIcon.appiconset/Icon-29@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/ios/assets/Assets.xcassets/AppIcon.appiconset/Icon-29@2x.png -------------------------------------------------------------------------------- /ios/assets/Assets.xcassets/AppIcon.appiconset/Icon-29@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/ios/assets/Assets.xcassets/AppIcon.appiconset/Icon-29@3x.png -------------------------------------------------------------------------------- /ios/assets/Assets.xcassets/AppIcon.appiconset/Icon-40.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/ios/assets/Assets.xcassets/AppIcon.appiconset/Icon-40.png -------------------------------------------------------------------------------- /ios/assets/Assets.xcassets/AppIcon.appiconset/Icon-40@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/ios/assets/Assets.xcassets/AppIcon.appiconset/Icon-40@2x.png -------------------------------------------------------------------------------- /ios/assets/Assets.xcassets/AppIcon.appiconset/Icon-40@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/ios/assets/Assets.xcassets/AppIcon.appiconset/Icon-40@3x.png -------------------------------------------------------------------------------- /ios/assets/Assets.xcassets/AppIcon.appiconset/Icon-60@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/ios/assets/Assets.xcassets/AppIcon.appiconset/Icon-60@2x.png -------------------------------------------------------------------------------- /ios/assets/Assets.xcassets/AppIcon.appiconset/Icon-60@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/ios/assets/Assets.xcassets/AppIcon.appiconset/Icon-60@3x.png -------------------------------------------------------------------------------- /ios/assets/Assets.xcassets/AppIcon.appiconset/Icon-76.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/ios/assets/Assets.xcassets/AppIcon.appiconset/Icon-76.png -------------------------------------------------------------------------------- /ios/assets/Assets.xcassets/AppIcon.appiconset/Icon-76@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/ios/assets/Assets.xcassets/AppIcon.appiconset/Icon-76@2x.png -------------------------------------------------------------------------------- /ios/assets/Assets.xcassets/AppIcon.appiconset/Icon-83.5@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/ios/assets/Assets.xcassets/AppIcon.appiconset/Icon-83.5@2x.png -------------------------------------------------------------------------------- /ios/assets/Assets.xcassets/Banner.imageset/Banner.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/ios/assets/Assets.xcassets/Banner.imageset/Banner.png -------------------------------------------------------------------------------- /ios/assets/Assets.xcassets/Banner.imageset/Banner@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/ios/assets/Assets.xcassets/Banner.imageset/Banner@2x.png -------------------------------------------------------------------------------- /ios/assets/Assets.xcassets/Banner.imageset/Banner@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/ios/assets/Assets.xcassets/Banner.imageset/Banner@3x.png -------------------------------------------------------------------------------- /ios/assets/Assets.xcassets/Banner.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "filename" : "Banner.png", 5 | "idiom" : "universal", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "filename" : "Banner@2x.png", 10 | "idiom" : "universal", 11 | "scale" : "2x" 12 | }, 13 | { 14 | "filename" : "Banner@3x.png", 15 | "idiom" : "universal", 16 | "scale" : "3x" 17 | } 18 | ], 19 | "info" : { 20 | "author" : "xcode", 21 | "version" : 1 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /ios/assets/Assets.xcassets/BannerWide.imageset/BannerWide.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/ios/assets/Assets.xcassets/BannerWide.imageset/BannerWide.png -------------------------------------------------------------------------------- /ios/assets/Assets.xcassets/BannerWide.imageset/BannerWide@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/ios/assets/Assets.xcassets/BannerWide.imageset/BannerWide@2x.png -------------------------------------------------------------------------------- /ios/assets/Assets.xcassets/BannerWide.imageset/BannerWide@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/ios/assets/Assets.xcassets/BannerWide.imageset/BannerWide@3x.png -------------------------------------------------------------------------------- /ios/assets/Assets.xcassets/BannerWide.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "filename" : "BannerWide.png", 5 | "idiom" : "universal", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "filename" : "BannerWide@2x.png", 10 | "idiom" : "universal", 11 | "scale" : "2x" 12 | }, 13 | { 14 | "filename" : "BannerWide@3x.png", 15 | "idiom" : "universal", 16 | "scale" : "3x" 17 | } 18 | ], 19 | "info" : { 20 | "author" : "xcode", 21 | "version" : 1 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /ios/assets/music/caves_1.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/ios/assets/music/caves_1.mp3 -------------------------------------------------------------------------------- /ios/assets/music/caves_2.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/ios/assets/music/caves_2.mp3 -------------------------------------------------------------------------------- /ios/assets/music/caves_3.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/ios/assets/music/caves_3.mp3 -------------------------------------------------------------------------------- /ios/assets/music/caves_boss.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/ios/assets/music/caves_boss.mp3 -------------------------------------------------------------------------------- /ios/assets/music/caves_boss_finale.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/ios/assets/music/caves_boss_finale.mp3 -------------------------------------------------------------------------------- /ios/assets/music/caves_tense.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/ios/assets/music/caves_tense.mp3 -------------------------------------------------------------------------------- /ios/assets/music/city_1.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/ios/assets/music/city_1.mp3 -------------------------------------------------------------------------------- /ios/assets/music/city_2.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/ios/assets/music/city_2.mp3 -------------------------------------------------------------------------------- /ios/assets/music/city_3.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/ios/assets/music/city_3.mp3 -------------------------------------------------------------------------------- /ios/assets/music/city_boss.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/ios/assets/music/city_boss.mp3 -------------------------------------------------------------------------------- /ios/assets/music/city_boss_finale.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/ios/assets/music/city_boss_finale.mp3 -------------------------------------------------------------------------------- /ios/assets/music/city_tense.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/ios/assets/music/city_tense.mp3 -------------------------------------------------------------------------------- /ios/assets/music/halls_1.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/ios/assets/music/halls_1.mp3 -------------------------------------------------------------------------------- /ios/assets/music/halls_2.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/ios/assets/music/halls_2.mp3 -------------------------------------------------------------------------------- /ios/assets/music/halls_3.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/ios/assets/music/halls_3.mp3 -------------------------------------------------------------------------------- /ios/assets/music/halls_boss.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/ios/assets/music/halls_boss.mp3 -------------------------------------------------------------------------------- /ios/assets/music/halls_boss_finale.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/ios/assets/music/halls_boss_finale.mp3 -------------------------------------------------------------------------------- /ios/assets/music/halls_tense.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/ios/assets/music/halls_tense.mp3 -------------------------------------------------------------------------------- /ios/assets/music/prison_1.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/ios/assets/music/prison_1.mp3 -------------------------------------------------------------------------------- /ios/assets/music/prison_2.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/ios/assets/music/prison_2.mp3 -------------------------------------------------------------------------------- /ios/assets/music/prison_3.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/ios/assets/music/prison_3.mp3 -------------------------------------------------------------------------------- /ios/assets/music/prison_boss.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/ios/assets/music/prison_boss.mp3 -------------------------------------------------------------------------------- /ios/assets/music/prison_tense.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/ios/assets/music/prison_tense.mp3 -------------------------------------------------------------------------------- /ios/assets/music/sewers_1.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/ios/assets/music/sewers_1.mp3 -------------------------------------------------------------------------------- /ios/assets/music/sewers_2.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/ios/assets/music/sewers_2.mp3 -------------------------------------------------------------------------------- /ios/assets/music/sewers_3.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/ios/assets/music/sewers_3.mp3 -------------------------------------------------------------------------------- /ios/assets/music/sewers_boss.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/ios/assets/music/sewers_boss.mp3 -------------------------------------------------------------------------------- /ios/assets/music/sewers_tense.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/ios/assets/music/sewers_tense.mp3 -------------------------------------------------------------------------------- /ios/assets/music/theme_1.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/ios/assets/music/theme_1.mp3 -------------------------------------------------------------------------------- /ios/assets/music/theme_2.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/ios/assets/music/theme_2.mp3 -------------------------------------------------------------------------------- /ios/assets/music/theme_finale.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/00-Evan/shattered-pixel-dungeon/44546b1d72b5963f7cdf1f67f9bc6e96b2cfa190/ios/assets/music/theme_finale.mp3 -------------------------------------------------------------------------------- /services/build.gradle: -------------------------------------------------------------------------------- 1 | apply plugin: 'java-library' 2 | 3 | [compileJava, compileTestJava]*.options*.encoding = 'UTF-8' 4 | sourceCompatibility = targetCompatibility = appJavaCompatibility -------------------------------------------------------------------------------- /services/news/debugNews/build.gradle: -------------------------------------------------------------------------------- 1 | apply plugin: 'java-library' 2 | 3 | [compileJava, compileTestJava]*.options*.encoding = 'UTF-8' 4 | sourceCompatibility = targetCompatibility = appJavaCompatibility 5 | 6 | dependencies { 7 | implementation project(':SPD-classes') 8 | api project(':services') 9 | } 10 | -------------------------------------------------------------------------------- /services/news/debugNews/src/main/java/com/shatteredpixel/shatteredpixeldungeon/services/news/NewsImpl.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Pixel Dungeon 3 | * Copyright (C) 2012-2015 Oleg Dolya 4 | * 5 | * Shattered Pixel Dungeon 6 | * Copyright (C) 2014-2024 Evan Debenham 7 | * 8 | * This program is free software: you can redistribute it and/or modify 9 | * it under the terms of the GNU General Public License as published by 10 | * the Free Software Foundation, either version 3 of the License, or 11 | * (at your option) any later version. 12 | * 13 | * This program is distributed in the hope that it will be useful, 14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 | * GNU General Public License for more details. 17 | * 18 | * You should have received a copy of the GNU General Public License 19 | * along with this program. If not, see 20 | */ 21 | 22 | package com.shatteredpixel.shatteredpixeldungeon.services.news; 23 | 24 | public class NewsImpl { 25 | 26 | private static NewsService newsChecker = new DebugNews(); 27 | 28 | public static NewsService getNewsService(){ 29 | return newsChecker; 30 | } 31 | 32 | public static boolean supportsNews(){ 33 | return true; 34 | } 35 | 36 | } 37 | -------------------------------------------------------------------------------- /services/news/shatteredNews/build.gradle: -------------------------------------------------------------------------------- 1 | apply plugin: 'java-library' 2 | 3 | [compileJava, compileTestJava]*.options*.encoding = 'UTF-8' 4 | sourceCompatibility = targetCompatibility = appJavaCompatibility 5 | 6 | dependencies { 7 | implementation project(':SPD-classes') 8 | api project(':services') 9 | } 10 | -------------------------------------------------------------------------------- /services/news/shatteredNews/src/main/java/com/shatteredpixel/shatteredpixeldungeon/services/news/NewsImpl.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Pixel Dungeon 3 | * Copyright (C) 2012-2015 Oleg Dolya 4 | * 5 | * Shattered Pixel Dungeon 6 | * Copyright (C) 2014-2024 Evan Debenham 7 | * 8 | * This program is free software: you can redistribute it and/or modify 9 | * it under the terms of the GNU General Public License as published by 10 | * the Free Software Foundation, either version 3 of the License, or 11 | * (at your option) any later version. 12 | * 13 | * This program is distributed in the hope that it will be useful, 14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 | * GNU General Public License for more details. 17 | * 18 | * You should have received a copy of the GNU General Public License 19 | * along with this program. If not, see 20 | */ 21 | 22 | package com.shatteredpixel.shatteredpixeldungeon.services.news; 23 | 24 | public class NewsImpl { 25 | 26 | private static NewsService newsChecker = new ShatteredNews(); 27 | 28 | public static NewsService getNewsService(){ 29 | return newsChecker; 30 | } 31 | 32 | public static boolean supportsNews(){ 33 | return true; 34 | } 35 | 36 | } -------------------------------------------------------------------------------- /services/src/main/java/com/shatteredpixel/shatteredpixeldungeon/services/news/NewsArticle.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Pixel Dungeon 3 | * Copyright (C) 2012-2015 Oleg Dolya 4 | * 5 | * Shattered Pixel Dungeon 6 | * Copyright (C) 2014-2024 Evan Debenham 7 | * 8 | * This program is free software: you can redistribute it and/or modify 9 | * it under the terms of the GNU General Public License as published by 10 | * the Free Software Foundation, either version 3 of the License, or 11 | * (at your option) any later version. 12 | * 13 | * This program is distributed in the hope that it will be useful, 14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 | * GNU General Public License for more details. 17 | * 18 | * You should have received a copy of the GNU General Public License 19 | * along with this program. If not, see 20 | */ 21 | 22 | package com.shatteredpixel.shatteredpixeldungeon.services.news; 23 | 24 | import java.util.Date; 25 | 26 | public class NewsArticle { 27 | 28 | public String title; 29 | public Date date; 30 | public String summary; 31 | 32 | public String URL; 33 | 34 | //the icon is stored as a string here so it can be decoded to an image later 35 | //See News.java for supported formats 36 | public String icon; 37 | } 38 | -------------------------------------------------------------------------------- /services/src/main/java/com/shatteredpixel/shatteredpixeldungeon/services/news/NewsService.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Pixel Dungeon 3 | * Copyright (C) 2012-2015 Oleg Dolya 4 | * 5 | * Shattered Pixel Dungeon 6 | * Copyright (C) 2014-2024 Evan Debenham 7 | * 8 | * This program is free software: you can redistribute it and/or modify 9 | * it under the terms of the GNU General Public License as published by 10 | * the Free Software Foundation, either version 3 of the License, or 11 | * (at your option) any later version. 12 | * 13 | * This program is distributed in the hope that it will be useful, 14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 | * GNU General Public License for more details. 17 | * 18 | * You should have received a copy of the GNU General Public License 19 | * along with this program. If not, see 20 | */ 21 | 22 | package com.shatteredpixel.shatteredpixeldungeon.services.news; 23 | 24 | import java.util.ArrayList; 25 | 26 | public abstract class NewsService { 27 | 28 | public static abstract class NewsResultCallback { 29 | public abstract void onArticlesFound(ArrayList articles); 30 | public abstract void onConnectionFailed(); 31 | } 32 | 33 | public abstract void checkForArticles(boolean useMetered, boolean forceHTTPS, NewsResultCallback callback); 34 | 35 | } 36 | -------------------------------------------------------------------------------- /services/src/main/java/com/shatteredpixel/shatteredpixeldungeon/services/updates/AvailableUpdateData.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Pixel Dungeon 3 | * Copyright (C) 2012-2015 Oleg Dolya 4 | * 5 | * Shattered Pixel Dungeon 6 | * Copyright (C) 2014-2024 Evan Debenham 7 | * 8 | * This program is free software: you can redistribute it and/or modify 9 | * it under the terms of the GNU General Public License as published by 10 | * the Free Software Foundation, either version 3 of the License, or 11 | * (at your option) any later version. 12 | * 13 | * This program is distributed in the hope that it will be useful, 14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 | * GNU General Public License for more details. 17 | * 18 | * You should have received a copy of the GNU General Public License 19 | * along with this program. If not, see 20 | */ 21 | 22 | package com.shatteredpixel.shatteredpixeldungeon.services.updates; 23 | 24 | public class AvailableUpdateData { 25 | 26 | public String versionName; 27 | public int versionCode; 28 | 29 | public String desc; 30 | 31 | public String URL; 32 | 33 | } 34 | -------------------------------------------------------------------------------- /services/updates/debugUpdates/build.gradle: -------------------------------------------------------------------------------- 1 | apply plugin: 'java-library' 2 | 3 | [compileJava, compileTestJava]*.options*.encoding = 'UTF-8' 4 | sourceCompatibility = targetCompatibility = appJavaCompatibility 5 | 6 | dependencies { 7 | implementation project(':SPD-classes') 8 | api project(':services') 9 | } 10 | -------------------------------------------------------------------------------- /services/updates/debugUpdates/src/main/java/com/shatteredpixel/shatteredpixeldungeon/services/updates/UpdateImpl.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Pixel Dungeon 3 | * Copyright (C) 2012-2015 Oleg Dolya 4 | * 5 | * Shattered Pixel Dungeon 6 | * Copyright (C) 2014-2024 Evan Debenham 7 | * 8 | * This program is free software: you can redistribute it and/or modify 9 | * it under the terms of the GNU General Public License as published by 10 | * the Free Software Foundation, either version 3 of the License, or 11 | * (at your option) any later version. 12 | * 13 | * This program is distributed in the hope that it will be useful, 14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 | * GNU General Public License for more details. 17 | * 18 | * You should have received a copy of the GNU General Public License 19 | * along with this program. If not, see 20 | */ 21 | 22 | package com.shatteredpixel.shatteredpixeldungeon.services.updates; 23 | 24 | import com.watabou.noosa.Game; 25 | 26 | public class UpdateImpl { 27 | 28 | private static UpdateService updateChecker = new DebugUpdates(); 29 | 30 | public static UpdateService getUpdateService(){ 31 | return updateChecker; 32 | } 33 | 34 | public static boolean supportsUpdates(){ 35 | return Game.version.contains("INDEV"); 36 | } 37 | 38 | } 39 | -------------------------------------------------------------------------------- /services/updates/githubUpdates/build.gradle: -------------------------------------------------------------------------------- 1 | apply plugin: 'java-library' 2 | 3 | [compileJava, compileTestJava]*.options*.encoding = 'UTF-8' 4 | sourceCompatibility = targetCompatibility = appJavaCompatibility 5 | 6 | dependencies { 7 | implementation project(':SPD-classes') 8 | api project(':services') 9 | } -------------------------------------------------------------------------------- /services/updates/githubUpdates/src/main/java/com/shatteredpixel/shatteredpixeldungeon/services/updates/UpdateImpl.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Pixel Dungeon 3 | * Copyright (C) 2012-2015 Oleg Dolya 4 | * 5 | * Shattered Pixel Dungeon 6 | * Copyright (C) 2014-2024 Evan Debenham 7 | * 8 | * This program is free software: you can redistribute it and/or modify 9 | * it under the terms of the GNU General Public License as published by 10 | * the Free Software Foundation, either version 3 of the License, or 11 | * (at your option) any later version. 12 | * 13 | * This program is distributed in the hope that it will be useful, 14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 | * GNU General Public License for more details. 17 | * 18 | * You should have received a copy of the GNU General Public License 19 | * along with this program. If not, see 20 | */ 21 | 22 | package com.shatteredpixel.shatteredpixeldungeon.services.updates; 23 | 24 | public class UpdateImpl { 25 | 26 | private static UpdateService updateChecker = new GitHubUpdates(); 27 | 28 | public static UpdateService getUpdateService(){ 29 | return updateChecker; 30 | } 31 | 32 | public static boolean supportsUpdates(){ 33 | return true; 34 | } 35 | 36 | } 37 | -------------------------------------------------------------------------------- /settings.gradle: -------------------------------------------------------------------------------- 1 | //core game code modules 2 | include ':SPD-classes' 3 | include ':core' 4 | 5 | //platform modules 6 | include ':android' 7 | include ':ios' 8 | include ':desktop' 9 | 10 | //service modules 11 | include ':services' 12 | //updates 13 | include ':services:updates:debugUpdates' 14 | include ':services:updates:githubUpdates' 15 | //news 16 | include ':services:news:debugNews' 17 | include ':services:news:shatteredNews' --------------------------------------------------------------------------------