diff --git a/assets/graphics/fonts/terrarum-sans-bitmap/LatinExtA_variable.tga b/assets/graphics/fonts/terrarum-sans-bitmap/LatinExtA_variable.tga index 759c376f9..6755d836c 100644 --- a/assets/graphics/fonts/terrarum-sans-bitmap/LatinExtA_variable.tga +++ b/assets/graphics/fonts/terrarum-sans-bitmap/LatinExtA_variable.tga @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:fa7ae9e01fb6d6d5566fce7430c28399499e9c6f4f3991df2299e3b5f4cf7d73 +oid sha256:7ad81f568f8da5f28566564a52b027d3d3f693bfc37e0f073e3bdb4c99345a51 size 163884 diff --git a/assets/graphics/fonts/terrarum-sans-bitmap/LatinExtB_variable.tga b/assets/graphics/fonts/terrarum-sans-bitmap/LatinExtB_variable.tga index c8de6a8b7..d8693e859 100644 --- a/assets/graphics/fonts/terrarum-sans-bitmap/LatinExtB_variable.tga +++ b/assets/graphics/fonts/terrarum-sans-bitmap/LatinExtB_variable.tga @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:5f8e9a4dfaeee8f617f076b0f738c49ffb07e9804c4a8a68f3981d9871775c81 +oid sha256:48d3097b87c98ce1aeb0eb27ce526db98f30c059d86067dde3daf74f4d9ad850 size 266284 diff --git a/assets/graphics/fonts/terrarum-sans-bitmap/LatinExtC_variable.tga b/assets/graphics/fonts/terrarum-sans-bitmap/LatinExtC_variable.tga new file mode 100644 index 000000000..3090be097 --- /dev/null +++ b/assets/graphics/fonts/terrarum-sans-bitmap/LatinExtC_variable.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8ff3c20c7cc0536542243f3f492a7272159d1f44c11a635f6782c86907676d98 +size 41004 diff --git a/assets/graphics/fonts/terrarum-sans-bitmap/ascii_variable.tga b/assets/graphics/fonts/terrarum-sans-bitmap/ascii_variable.tga index 6efe916c6..7a144bfec 100644 --- a/assets/graphics/fonts/terrarum-sans-bitmap/ascii_variable.tga +++ b/assets/graphics/fonts/terrarum-sans-bitmap/ascii_variable.tga @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f03516c86ddde0b73c7242a37b941d80e6eee88df3f8868bfcde8c61cad1cb89 +oid sha256:1d112198baad1679f4f209db9803ca9273b777cb044dc15fb45e801476c06930 size 327724 diff --git a/assets/graphics/fonts/terrarum-sans-bitmap/cyrilic_bulgarian_variable.tga b/assets/graphics/fonts/terrarum-sans-bitmap/cyrilic_bulgarian_variable.tga index b7c503dbe..fc5cb4476 100644 --- a/assets/graphics/fonts/terrarum-sans-bitmap/cyrilic_bulgarian_variable.tga +++ b/assets/graphics/fonts/terrarum-sans-bitmap/cyrilic_bulgarian_variable.tga @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e822a1af84fab5ae35878b834a5d75a368b9c3eb9ad5360e4b41baa85c906991 +oid sha256:d016c1d6a4eb6ddc106d06ee9659c6efcafdc3534c7c56765895d5918999cb29 size 122924 diff --git a/assets/graphics/fonts/terrarum-sans-bitmap/cyrilic_serbian_variable.tga b/assets/graphics/fonts/terrarum-sans-bitmap/cyrilic_serbian_variable.tga index e2e5bb78b..9000cefca 100644 --- a/assets/graphics/fonts/terrarum-sans-bitmap/cyrilic_serbian_variable.tga +++ b/assets/graphics/fonts/terrarum-sans-bitmap/cyrilic_serbian_variable.tga @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e1d62f47acd0ecad148612ed07b732f50bdcc0e21e9dfaa0bc35eae8390dc346 +oid sha256:24272cce69265edbf59b8b5df965a04166b5e78a8309c2cad7ad0eb9fc60d759 size 122924 diff --git a/assets/graphics/fonts/terrarum-sans-bitmap/cyrilic_variable.tga b/assets/graphics/fonts/terrarum-sans-bitmap/cyrilic_variable.tga index f70516d5a..a4fac9230 100644 --- a/assets/graphics/fonts/terrarum-sans-bitmap/cyrilic_variable.tga +++ b/assets/graphics/fonts/terrarum-sans-bitmap/cyrilic_variable.tga @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:1345ff1d34e23f1bc3adcf4de2079f893b73719c10b4bce2b79140f3f4546224 +oid sha256:c5bac4524b9ba6bdddb9a8edb67d88fa93eb1810e5916987338a0cc7e294d99d size 389164 diff --git a/assets/graphics/fonts/terrarum-sans-bitmap/devanagari_bengali_variable.tga b/assets/graphics/fonts/terrarum-sans-bitmap/devanagari_bengali_variable.tga new file mode 100644 index 000000000..a52e5488e --- /dev/null +++ b/assets/graphics/fonts/terrarum-sans-bitmap/devanagari_bengali_variable.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d37909b3f2aff411c64451801de0c371cb4a887c65598aede170502510e32314 +size 327724 diff --git a/assets/graphics/fonts/terrarum-sans-bitmap/diacritical_marks_variable.tga b/assets/graphics/fonts/terrarum-sans-bitmap/diacritical_marks_variable.tga new file mode 100644 index 000000000..87d066ca5 --- /dev/null +++ b/assets/graphics/fonts/terrarum-sans-bitmap/diacritical_marks_variable.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:61987f85e21adef4a742859e42b25b2fc4fafca6fd96a33e2b08f73fc0bf18c5 +size 143404 diff --git a/assets/graphics/fonts/terrarum-sans-bitmap/greek_polytonic_xyswap_variable.tga b/assets/graphics/fonts/terrarum-sans-bitmap/greek_polytonic_xyswap_variable.tga new file mode 100644 index 000000000..9a0e2e51e --- /dev/null +++ b/assets/graphics/fonts/terrarum-sans-bitmap/greek_polytonic_xyswap_variable.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5534fa8df364497953db38f57dd859984bc07b1ce1989cefb7832008aefcdafc +size 327724 diff --git a/assets/graphics/fonts/terrarum-sans-bitmap/greek_variable.tga b/assets/graphics/fonts/terrarum-sans-bitmap/greek_variable.tga index ed3e0b3b5..d07496743 100644 --- a/assets/graphics/fonts/terrarum-sans-bitmap/greek_variable.tga +++ b/assets/graphics/fonts/terrarum-sans-bitmap/greek_variable.tga @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:7d6729341ff9915847dd7f7ed8432f317cbeab3ceea8e4cde094c343f8f5a9b5 +oid sha256:27c4527668d89125e2ac0b7d5b4efd251753e57a02a852fe3cf3a49093cf48f8 size 122924 diff --git a/assets/graphics/fonts/terrarum-sans-bitmap/hangul_johab.tga b/assets/graphics/fonts/terrarum-sans-bitmap/hangul_johab.tga index fa9cd79d9..c9176b5ea 100644 --- a/assets/graphics/fonts/terrarum-sans-bitmap/hangul_johab.tga +++ b/assets/graphics/fonts/terrarum-sans-bitmap/hangul_johab.tga @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:0ae96ae14d2a6379ee7e0e6226aefe71addcf234e34f862815109e2227831818 -size 268844 +oid sha256:085aadc691d63d7b46d27e2d6322e05ff9003726e6658d57a1df04c04f9b07e7 +size 1324844 diff --git a/assets/graphics/fonts/terrarum-sans-bitmap/hayeren_variable.tga b/assets/graphics/fonts/terrarum-sans-bitmap/hayeren_variable.tga index c140c460b..03c634aab 100644 --- a/assets/graphics/fonts/terrarum-sans-bitmap/hayeren_variable.tga +++ b/assets/graphics/fonts/terrarum-sans-bitmap/hayeren_variable.tga @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:20cf1ff531ee5804d82b449bb1aa44b3f84b735d7f692c1375d938766f0b0f00 +oid sha256:da63fefa41f5f6ec9152f52d8be2696c412ec754e5b3015f904d6672c5a52f92 size 122924 diff --git a/assets/graphics/fonts/terrarum-sans-bitmap/insular_variable.tga b/assets/graphics/fonts/terrarum-sans-bitmap/insular_variable.tga index e97acfb87..8875779dc 100644 --- a/assets/graphics/fonts/terrarum-sans-bitmap/insular_variable.tga +++ b/assets/graphics/fonts/terrarum-sans-bitmap/insular_variable.tga @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a5ee21a0973a60feb3fb8132c9a838b56e197bdab1418deab55b4a9beb2ced14 -size 40978 +oid sha256:f3f8ec0c997fa61418d5af157b57b370675d2807fd8c10558da3335321c7f68e +size 41004 diff --git a/assets/graphics/fonts/terrarum-sans-bitmap/ipa_ext_variable.tga b/assets/graphics/fonts/terrarum-sans-bitmap/ipa_ext_variable.tga index 8225c4c7e..0632cce73 100644 --- a/assets/graphics/fonts/terrarum-sans-bitmap/ipa_ext_variable.tga +++ b/assets/graphics/fonts/terrarum-sans-bitmap/ipa_ext_variable.tga @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:2be447fc79f9897de0c58eec7feebcd5fd9d9d3bd3b7b0c1d29a667fdc4802c6 -size 122924 +oid sha256:50a71931cb504e872390c7616d584b9144368653c95f713069afd88ecde42ccc +size 225324 diff --git a/assets/graphics/fonts/terrarum-sans-bitmap/kana.tga b/assets/graphics/fonts/terrarum-sans-bitmap/kana.tga index 48399e6f5..731ea056c 100644 --- a/assets/graphics/fonts/terrarum-sans-bitmap/kana.tga +++ b/assets/graphics/fonts/terrarum-sans-bitmap/kana.tga @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d8281abd7bfa9996e4d6059111e9e90c05f0ae64f5d4ae517ee77dbb4d58fe63 -size 184364 +oid sha256:47daea174f65d99034c62bb1108ff2b2ba46cb6578649aeb3783aeb81747a44a +size 215084 diff --git a/assets/graphics/fonts/terrarum-sans-bitmap/kartuli_allcaps_variable.tga b/assets/graphics/fonts/terrarum-sans-bitmap/kartuli_allcaps_variable.tga new file mode 100644 index 000000000..008b93297 --- /dev/null +++ b/assets/graphics/fonts/terrarum-sans-bitmap/kartuli_allcaps_variable.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bbe04851dbdb8b2afc42496f449b58f95b74724b919c0f6aa7591d3afeb221b1 +size 61484 diff --git a/assets/graphics/fonts/terrarum-sans-bitmap/latinExt_additional_variable.tga b/assets/graphics/fonts/terrarum-sans-bitmap/latinExt_additional_variable.tga index 370f06d47..ee6de7860 100644 --- a/assets/graphics/fonts/terrarum-sans-bitmap/latinExt_additional_variable.tga +++ b/assets/graphics/fonts/terrarum-sans-bitmap/latinExt_additional_variable.tga @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:552cb0759613eb9dd72b672974f06d1969b037669abb5350869d08a8c0482cc8 +oid sha256:d11e2c82c75061720d338e2fa8095462bfe5b20d6e71ff28a68041fb064222ab size 327724 diff --git a/assets/graphics/fonts/terrarum-sans-bitmap/richtext_furigana.tga b/assets/graphics/fonts/terrarum-sans-bitmap/richtext_furigana.tga new file mode 100644 index 000000000..f8abe556b --- /dev/null +++ b/assets/graphics/fonts/terrarum-sans-bitmap/richtext_furigana.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9ded39ee5d160e197c59aa5342d01f08c4a8b69b2f822e97079931ea8f1ddb3d +size 24620 diff --git a/assets/graphics/fonts/terrarum-sans-bitmap/thai_variable.tga b/assets/graphics/fonts/terrarum-sans-bitmap/thai_variable.tga index aa1fcb984..2fa0dfc6c 100644 --- a/assets/graphics/fonts/terrarum-sans-bitmap/thai_variable.tga +++ b/assets/graphics/fonts/terrarum-sans-bitmap/thai_variable.tga @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:42aa0e6c5c5fa0371ec64a9ebb7d78969b886235d63dbe307bba4e03ed1a23c2 +oid sha256:197b8c8e97d96dbf0d647fe710e7dc4622f6738f2fc01f7bf4fee6a666662e7e size 122924 diff --git a/assets/graphics/fonts/terrarum-sans-bitmap/unipunct_variable.tga b/assets/graphics/fonts/terrarum-sans-bitmap/unipunct_variable.tga index 2413c9f1e..f86e5e68e 100644 --- a/assets/graphics/fonts/terrarum-sans-bitmap/unipunct_variable.tga +++ b/assets/graphics/fonts/terrarum-sans-bitmap/unipunct_variable.tga @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:31e139dde40617e1328c49f3d4adc82983f007f011001e35450037318c28d922 -size 122924 +oid sha256:1a40eba4bf4a3a895e828a6dd6b6cc0b152ea39337888c0866d9932ebe7cc1c1 +size 204844 diff --git a/lib/TerrarumSansBitmap.jar b/lib/TerrarumSansBitmap.jar index 396a142c1..38021e14e 100644 Binary files a/lib/TerrarumSansBitmap.jar and b/lib/TerrarumSansBitmap.jar differ diff --git a/src/net/torvald/random/HQRNG.kt b/src/net/torvald/random/HQRNG.kt index b30448ab3..9304e5c34 100644 --- a/src/net/torvald/random/HQRNG.kt +++ b/src/net/torvald/random/HQRNG.kt @@ -1,5 +1,6 @@ package net.torvald.random +import net.torvald.terrarum.serialise.toLittle import net.torvald.terrarum.serialise.toLittleLong import org.apache.commons.codec.digest.DigestUtils import java.util.Random @@ -12,6 +13,11 @@ class HQRNG @JvmOverloads constructor(seed: Long = System.nanoTime()) : Random() private var s0: Long private var s1: Long + constructor(s0: Long, s1: Long) : this() { + this.s0 = s0 + this.s1 = s1 + } + init { if (seed == 0L) throw IllegalArgumentException("Invalid seed: cannot be zero") @@ -30,4 +36,11 @@ class HQRNG @JvmOverloads constructor(seed: Long = System.nanoTime()) : Random() s1 = x xor y xor (x ushr 17) xor (y ushr 26) return s1 + y } + + fun serialize() = s0.toLittle() + s1.toLittle() + + fun reseed(s0: Long, s1: Long) { + this.s0 = s0 + this.s1 = s1 + } } \ No newline at end of file diff --git a/src/net/torvald/terrarum/AppLoader.java b/src/net/torvald/terrarum/AppLoader.java index 98f8fe55b..a4361bc15 100644 --- a/src/net/torvald/terrarum/AppLoader.java +++ b/src/net/torvald/terrarum/AppLoader.java @@ -179,7 +179,7 @@ public class AppLoader implements ApplicationListener { TextureRegionPack.Companion.setGlobalFlipY(true); - fontGame = new GameFontBase("assets/graphics/fonts/terrarum-sans-bitmap", false, true, Texture.TextureFilter.Nearest, Texture.TextureFilter.Nearest); + fontGame = new GameFontBase("assets/graphics/fonts/terrarum-sans-bitmap", false, true, Texture.TextureFilter.Nearest, Texture.TextureFilter.Nearest, false); } @Override diff --git a/src/net/torvald/terrarum/langpack/Lang.kt b/src/net/torvald/terrarum/langpack/Lang.kt index 57132dde6..038a93007 100644 --- a/src/net/torvald/terrarum/langpack/Lang.kt +++ b/src/net/torvald/terrarum/langpack/Lang.kt @@ -121,9 +121,9 @@ object Lang { return ret2.replace('>', Terrarum.joypadLabelStart).capitalize() return if (key.getEndTag().contains("bg")) - "${AppLoader.fontGame.charsetOverrideBulgarian}${ret2.capitalize()}${AppLoader.fontGame.charsetOverrideNormal}" + "${AppLoader.fontGame.charsetOverrideBulgarian}${ret2.capitalize()}${AppLoader.fontGame.charsetOverrideDefault}" else if (key.getEndTag().contains("sr")) - "${AppLoader.fontGame.charsetOverrideSerbian}${ret2.capitalize()}${AppLoader.fontGame.charsetOverrideNormal}" + "${AppLoader.fontGame.charsetOverrideSerbian}${ret2.capitalize()}${AppLoader.fontGame.charsetOverrideDefault}" else ret2.capitalize() } diff --git a/src/net/torvald/terrarum/modulebasegame/Ingame.kt b/src/net/torvald/terrarum/modulebasegame/Ingame.kt index d2a06b994..bee09e7bc 100644 --- a/src/net/torvald/terrarum/modulebasegame/Ingame.kt +++ b/src/net/torvald/terrarum/modulebasegame/Ingame.kt @@ -176,10 +176,10 @@ open class Ingame(batch: SpriteBatch) : IngameInstance(batch) { val world: GameWorldExtension, val historicalFigureIDBucket: ArrayList, val realGamePlayer: IngamePlayer, - val rogueseed: Long, - val rogueiter: Int, - val weatherseed: Long, - val weatheriter: Int + val rogueS0: Long, + val rogueS1: Long, + val weatherS0: Long, + val weatherS1: Long ) data class NewWorldParameters( @@ -209,8 +209,8 @@ open class Ingame(batch: SpriteBatch) : IngameInstance(batch) { // set the randomisers right - RoguelikeRandomiser.loadFromSave(gameSaveData.rogueseed, gameSaveData.rogueiter) - WeatherMixer.loadFromSave(gameSaveData.weatherseed, gameSaveData.weatheriter) + RoguelikeRandomiser.loadFromSave(gameSaveData.rogueS0, gameSaveData.rogueS1) + WeatherMixer.loadFromSave(gameSaveData.weatherS0, gameSaveData.weatherS1) //initGame() @@ -242,8 +242,6 @@ open class Ingame(batch: SpriteBatch) : IngameInstance(batch) { historicalFigureIDBucket = ArrayList() - RoguelikeRandomiser.seed = HQRNG().nextLong() - // add new player and put it to actorContainer //playableActorDelegate = PlayableActorDelegate(PlayerBuilderSigrid()) diff --git a/src/net/torvald/terrarum/modulebasegame/RNGConsumer.kt b/src/net/torvald/terrarum/modulebasegame/RNGConsumer.kt index 18bd9b745..1c6f17dff 100644 --- a/src/net/torvald/terrarum/modulebasegame/RNGConsumer.kt +++ b/src/net/torvald/terrarum/modulebasegame/RNGConsumer.kt @@ -1,29 +1,14 @@ package net.torvald.terrarum.modulebasegame +import net.torvald.random.HQRNG import java.util.* internal interface RNGConsumer { - val RNG: Random - var seed: Long - var iterations: Int + val RNG: HQRNG - fun loadFromSave(seed: Long, iterations: Int) { - this.seed = seed - this.iterations = iterations - - repeat(iterations, { RNG.nextInt() }) - } - - private fun incIterations() { - iterations++ - - if (iterations < 0) iterations = 0 - } - - fun getRandomLong(): Long { - iterations++ - return RNG.nextLong() + fun loadFromSave(s0: Long, s1: Long) { + RNG.reseed(s0, s1) } } diff --git a/src/net/torvald/terrarum/modulebasegame/ui/UIItemSavegameInfoCell.kt b/src/net/torvald/terrarum/modulebasegame/ui/UIItemSavegameInfoCell.kt new file mode 100644 index 000000000..9082ded7d --- /dev/null +++ b/src/net/torvald/terrarum/modulebasegame/ui/UIItemSavegameInfoCell.kt @@ -0,0 +1,32 @@ +package net.torvald.terrarum.modulebasegame.ui + +import com.badlogic.gdx.graphics.Camera +import com.badlogic.gdx.graphics.g2d.SpriteBatch +import net.torvald.terrarum.Terrarum +import net.torvald.terrarum.ui.UICanvas +import net.torvald.terrarum.ui.UIItem +import java.io.File + +/** + * @param savefile TEVd file + * + * Created by minjaesong on 2018-09-15. + */ +class UIItemSavegameInfoCell( + parent: UICanvas, + savefile: File, + override val width: Int, + override var posX: Int, + override var posY: Int +) : UIItem(parent) { + + override val height: Int = Terrarum.fontGame.lineHeight.toInt() * 2 + + override fun render(batch: SpriteBatch, camera: Camera) { + + } + + override fun dispose() { + + } +} \ No newline at end of file diff --git a/src/net/torvald/terrarum/modulebasegame/ui/UITitleCharactersList.kt b/src/net/torvald/terrarum/modulebasegame/ui/UITitleCharactersList.kt new file mode 100644 index 000000000..1f6c0998d --- /dev/null +++ b/src/net/torvald/terrarum/modulebasegame/ui/UITitleCharactersList.kt @@ -0,0 +1,77 @@ +package net.torvald.terrarum.modulebasegame.ui + +import com.badlogic.gdx.graphics.Camera +import com.badlogic.gdx.graphics.Color +import com.badlogic.gdx.graphics.g2d.SpriteBatch +import net.torvald.terrarum.Second +import net.torvald.terrarum.Terrarum +import net.torvald.terrarum.blendNormal +import net.torvald.terrarum.serialise.SavegameLedger +import net.torvald.terrarum.ui.UICanvas +import net.torvald.terrarum.ui.UIItemList + +/** + * Created by minjaesong on 2018-09-15. + */ +class UITitleCharactersList : UICanvas() { + + override var openCloseTime: Second = 0f + + + + private val moduleAreaHMargin = 48 + + private val moduleAreaBorder = 8 + + override var width = (Terrarum.WIDTH * 0.75).toInt() - moduleAreaHMargin + override var height = Terrarum.HEIGHT - moduleAreaHMargin * 2 + + private val moduleInfoCells = ArrayList() + // build module list + init { + SavegameLedger.getSavefileList()?.forEachIndexed { index, file -> + + } + } + + private val mouduleArea = UIItemList( + this, + moduleInfoCells, + (Terrarum.WIDTH * 0.25f).toInt(), moduleAreaHMargin, + width, + height, + inactiveCol = Color.WHITE, + border = moduleAreaBorder + ) + + + init { + uiItems.add(mouduleArea) + } + + override fun updateUI(delta: Float) { + mouduleArea.update(delta) + } + + override fun renderUI(batch: SpriteBatch, camera: Camera) { + batch.color = Color.WHITE + blendNormal() + mouduleArea.render(batch, camera) + } + + override fun doOpening(delta: Float) { + } + + override fun doClosing(delta: Float) { + } + + override fun endOpening(delta: Float) { + } + + override fun endClosing(delta: Float) { + } + + override fun dispose() { + } + +} \ No newline at end of file diff --git a/src/net/torvald/terrarum/modulebasegame/ui/UITitleRemoConYaml.kt b/src/net/torvald/terrarum/modulebasegame/ui/UITitleRemoConYaml.kt index 6936b4027..a053e1500 100644 --- a/src/net/torvald/terrarum/modulebasegame/ui/UITitleRemoConYaml.kt +++ b/src/net/torvald/terrarum/modulebasegame/ui/UITitleRemoConYaml.kt @@ -1,5 +1,6 @@ package net.torvald.terrarum.modulebasegame.ui +import net.torvald.terrarum.AppLoader import java.util.* @@ -33,10 +34,14 @@ object UITitleRemoConYaml { val debugTools = """ - Development Tools $ - - Building Maker + - Building Maker + - Start New Random Game """.trimIndent() - operator fun invoke() = parseYamlList(menus) + operator fun invoke() = if (AppLoader.IS_DEVELOPMENT_BUILD) + parseYamlList(menus + "\n" + debugTools) + else + parseYamlList(menus) fun parseYamlList(yaml: String): QNDTreeNode { var currentIndentLevel = -1 diff --git a/src/net/torvald/terrarum/modulebasegame/weather/WeatherMixer.kt b/src/net/torvald/terrarum/modulebasegame/weather/WeatherMixer.kt index a4b297a5d..801ce5a41 100644 --- a/src/net/torvald/terrarum/modulebasegame/weather/WeatherMixer.kt +++ b/src/net/torvald/terrarum/modulebasegame/weather/WeatherMixer.kt @@ -35,8 +35,6 @@ import java.util.* internal object WeatherMixer : RNGConsumer { override val RNG = HQRNG() - override var seed = 0L - override var iterations = 0 var weatherList: HashMap> diff --git a/src/net/torvald/terrarum/modulebasegame/worldgenerator/RoguelikeRandomiser.kt b/src/net/torvald/terrarum/modulebasegame/worldgenerator/RoguelikeRandomiser.kt index 372437668..4affe3f4a 100644 --- a/src/net/torvald/terrarum/modulebasegame/worldgenerator/RoguelikeRandomiser.kt +++ b/src/net/torvald/terrarum/modulebasegame/worldgenerator/RoguelikeRandomiser.kt @@ -20,7 +20,6 @@ object RoguelikeRandomiser : RNGConsumer { val coloursTaken: ArrayList = ArrayList() override val RNG = HQRNG() - override var seed = 0L private val POTION_HEAL_TIER1 = 0x00 private val POTION_HEAL_TIRE2 = 0x01 @@ -29,7 +28,6 @@ object RoguelikeRandomiser : RNGConsumer { private val POTION_BERSERK_TIER1 = 0x20 - override var iterations = 0 fun setupColours() { @@ -55,13 +53,11 @@ object RoguelikeRandomiser : RNGConsumer { fun shuffleArrayInt(ar: IntArray, rnd: Random) { for (i in ar.size - 1 downTo 0) { - val index = rnd.nextInt(i + 1); + val index = rnd.nextInt(i + 1) // Simple swap - val a = ar[index]; - ar[index] = ar[i]; - ar[i] = a; - - iterations++ + val a = ar[index] + ar[index] = ar[i] + ar[i] = a } } } \ No newline at end of file diff --git a/src/net/torvald/terrarum/modulecomputers/virtualcomputer/terminal/TeletypeTerminal.kt b/src/net/torvald/terrarum/modulecomputers/virtualcomputer/terminal/TeletypeTerminal.kt index d546c8234..388e3c6a2 100644 --- a/src/net/torvald/terrarum/modulecomputers/virtualcomputer/terminal/TeletypeTerminal.kt +++ b/src/net/torvald/terrarum/modulecomputers/virtualcomputer/terminal/TeletypeTerminal.kt @@ -1,6 +1,5 @@ package net.torvald.terrarum.modulecomputers.virtualcomputer.terminal -import net.torvald.terrarumsansbitmap.slick2d.GameFontBase import net.torvald.terrarum.blendMul import net.torvald.terrarum.blendNormal import java.util.* diff --git a/src/net/torvald/terrarum/serialise/WriteMeta.kt b/src/net/torvald/terrarum/serialise/WriteMeta.kt index f452836a9..19aa758de 100644 --- a/src/net/torvald/terrarum/serialise/WriteMeta.kt +++ b/src/net/torvald/terrarum/serialise/WriteMeta.kt @@ -19,10 +19,7 @@ internal object WriteMeta { val BYTE_NULL: Byte = 0 val terraseed: Long = WorldGenerator.SEED - val rogueseed: Long = RoguelikeRandomiser.seed - val rogueiter: Int = RoguelikeRandomiser.iterations - val weatherseed: Long = WeatherMixer.seed - val weatheriter: Int = WeatherMixer.iterations + /** * Write save meta to specified directory. Returns false if something went wrong. diff --git a/tmp_wenquanyi.tga b/tmp_wenquanyi.tga new file mode 100644 index 000000000..eece48ad7 --- /dev/null +++ b/tmp_wenquanyi.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cf27e854dd3c311e5eaded800a4e157eada963ebafb75dc95a53c14c57359c8e +size 28311596 diff --git a/work_files/DataFormats/Savegame metadata.txt b/work_files/DataFormats/Savegame metadata.txt index ae42c8f7c..b92c0e4a6 100644 --- a/work_files/DataFormats/Savegame metadata.txt +++ b/work_files/DataFormats/Savegame metadata.txt @@ -14,10 +14,10 @@ Ord Hex Description ... 00 String terminator ... Terrain seed (8 bytes) -... Randomiser seed (8 bytes) -... Randomiser iterations (4 bytes) -... Weather seed (8 bytes) -... Weather iterations (4 bytes) +... Randomiser s0 (8 bytes) +... Randomiser s1 (4 bytes) +... Weather s0 (8 bytes) +... Weather s1 (4 bytes) ... SHA-256 hash of worldinfo1 when not compressed (32 bytes) ... SHA-256 hash of worldinfo2 when not compressed (32 bytes)