diff --git a/.idea/artifacts/ModuleComputers.xml b/.idea/artifacts/ModuleComputers.xml index 25275cd23..a8b97b9b9 100644 --- a/.idea/artifacts/ModuleComputers.xml +++ b/.idea/artifacts/ModuleComputers.xml @@ -5,10 +5,13 @@ - - - - + + + + + + + \ No newline at end of file diff --git a/.idea/artifacts/SpriteAssemblerApp.xml b/.idea/artifacts/SpriteAssemblerApp.xml index 5d7b9dcef..df5956686 100644 --- a/.idea/artifacts/SpriteAssemblerApp.xml +++ b/.idea/artifacts/SpriteAssemblerApp.xml @@ -9,43 +9,6 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -54,18 +17,72 @@ - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/artifacts/TerrarumBuild.xml b/.idea/artifacts/TerrarumBuild.xml index b1b085a26..132031bbe 100644 --- a/.idea/artifacts/TerrarumBuild.xml +++ b/.idea/artifacts/TerrarumBuild.xml @@ -15,7 +15,6 @@ - @@ -83,6 +82,11 @@ + + + + + \ No newline at end of file diff --git a/.idea/kotlinc.xml b/.idea/kotlinc.xml index ae8a33732..22dcb880f 100644 --- a/.idea/kotlinc.xml +++ b/.idea/kotlinc.xml @@ -1,9 +1,9 @@ - - + + \ No newline at end of file diff --git a/.idea/libraries/KotlinJavaRuntime.xml b/.idea/libraries/KotlinJavaRuntime.xml index 1a7265de2..3e44d76d2 100644 --- a/.idea/libraries/KotlinJavaRuntime.xml +++ b/.idea/libraries/KotlinJavaRuntime.xml @@ -1,19 +1,26 @@ - + + - - - - - + + + + + - + + + + + + + - - - - - + + + + + \ No newline at end of file diff --git a/.idea/libraries/jetbrains_kotlin_reflect.xml b/.idea/libraries/jetbrains_kotlin_reflect.xml new file mode 100644 index 000000000..24059866a --- /dev/null +++ b/.idea/libraries/jetbrains_kotlin_reflect.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/libraries/jetbrains_kotlin_test.xml b/.idea/libraries/jetbrains_kotlin_test.xml new file mode 100644 index 000000000..6842add80 --- /dev/null +++ b/.idea/libraries/jetbrains_kotlin_test.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/libraries/jetbrains_kotlinx_coroutines_core.xml b/.idea/libraries/jetbrains_kotlinx_coroutines_core.xml deleted file mode 100644 index 870f06ca8..000000000 --- a/.idea/libraries/jetbrains_kotlinx_coroutines_core.xml +++ /dev/null @@ -1,23 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ModuleComputers/ModuleComputers.iml b/ModuleComputers/ModuleComputers.iml index 7c20b41bc..f89613265 100644 --- a/ModuleComputers/ModuleComputers.iml +++ b/ModuleComputers/ModuleComputers.iml @@ -10,9 +10,11 @@ - + + + \ No newline at end of file diff --git a/ModuleComputers/src/module-info.java.wtf b/ModuleComputers/src/module-info.java.wtf index 711867a06..d4a3ec01a 100644 --- a/ModuleComputers/src/module-info.java.wtf +++ b/ModuleComputers/src/module-info.java.wtf @@ -6,6 +6,6 @@ module ModuleComputers { requires Terrarum; requires TerrarumSansBitmap; requires kotlin.stdlib; - requires kotlinx.coroutines.core; + requires kotlin.coroutines.core; requires TerrarumTSVM; } \ No newline at end of file diff --git a/ModuleComputers/src/net/torvald/terrarum/modulecomputers/gameactors/FixtureHomeComputer.kt b/ModuleComputers/src/net/torvald/terrarum/modulecomputers/gameactors/FixtureHomeComputer.kt index a6c1a6e1b..27e5f0610 100644 --- a/ModuleComputers/src/net/torvald/terrarum/modulecomputers/gameactors/FixtureHomeComputer.kt +++ b/ModuleComputers/src/net/torvald/terrarum/modulecomputers/gameactors/FixtureHomeComputer.kt @@ -6,10 +6,7 @@ import com.badlogic.gdx.graphics.* import com.badlogic.gdx.graphics.g2d.SpriteBatch import com.badlogic.gdx.graphics.glutils.FrameBuffer import com.badlogic.gdx.utils.Disposable -import kotlinx.coroutines.GlobalScope -import kotlinx.coroutines.Job -import kotlinx.coroutines.cancel -import kotlinx.coroutines.launch +import kotlin.coroutines.* import net.torvald.terrarum.* import net.torvald.terrarum.TerrarumAppConfiguration.TILE_SIZE import net.torvald.terrarum.gameactors.AVKey @@ -35,7 +32,7 @@ class FixtureHomeComputer : FixtureBase { VMProgramRom(ModMgr.getGdxFile("dwarventech", "bios/tsvmbios.js").path()) )) @Transient private lateinit var vmRunner: VMRunner - @Transient private lateinit var coroutineJob: Job +// @Transient private lateinit var coroutineJob: Job @Transient private var vmStarted = false @Transient private lateinit var disposableObj: Disposable @@ -76,7 +73,7 @@ class FixtureHomeComputer : FixtureBase { } fun startVM() { - if (!vmStarted) { + /*if (!vmStarted) { vmStarted = true coroutineJob = GlobalScope.launch { @@ -89,11 +86,11 @@ class FixtureHomeComputer : FixtureBase { vm.dispose() } INGAME.disposables.add(disposableObj) - } + }*/ } fun stopVM() { - if (vmStarted) { + /*if (vmStarted) { vmStarted = false vmRunner.close() @@ -101,7 +98,7 @@ class FixtureHomeComputer : FixtureBase { vm.dispose() INGAME.disposables.remove(disposableObj) - } + }*/ } override fun reload() { diff --git a/ModuleComputers/src/net/torvald/terrarum/modulecomputers/gameitems/ItemWearableWorldRadar.kt b/ModuleComputers/src/net/torvald/terrarum/modulecomputers/gameitems/ItemWearableWorldRadar.kt index d345c4f99..72a5d5a51 100644 --- a/ModuleComputers/src/net/torvald/terrarum/modulecomputers/gameitems/ItemWearableWorldRadar.kt +++ b/ModuleComputers/src/net/torvald/terrarum/modulecomputers/gameitems/ItemWearableWorldRadar.kt @@ -5,10 +5,6 @@ import com.badlogic.gdx.graphics.Color import com.badlogic.gdx.graphics.g2d.SpriteBatch import com.badlogic.gdx.graphics.g2d.TextureRegion import com.badlogic.gdx.utils.Disposable -import kotlinx.coroutines.GlobalScope -import kotlinx.coroutines.Job -import kotlinx.coroutines.cancel -import kotlinx.coroutines.launch import net.torvald.terrarum.* import net.torvald.terrarum.gameactors.ActorWithBody import net.torvald.terrarum.gameitems.GameItem @@ -26,8 +22,9 @@ import net.torvald.tsvm.peripheral.VMProgramRom /** * Created by minjaesong on 2021-12-03. */ -class ItemWearableWorldRadar(originalID: String) : GameItem(originalID) { +class ItemWearableWorldRadar(originalID: String) {// : GameItem(originalID) { + /* override var dynamicID: ItemID = originalID override val originalName = "ITEM_COMPUTER_DIRTBOARD_FAKETM" override var baseMass = 2.0 @@ -106,6 +103,9 @@ class ItemWearableWorldRadar(originalID: String) : GameItem(originalID) { (Terrarum.ingame!! as TerrarumIngame).wearableDeviceUI = null closeVM() } + + + */ } class WearableWorldRadarUI(val device: VM) : UICanvas() { diff --git a/TerrarumBuild.iml b/TerrarumBuild.iml index 9fcb8d490..4c90f370e 100644 --- a/TerrarumBuild.iml +++ b/TerrarumBuild.iml @@ -22,5 +22,7 @@ + + \ No newline at end of file diff --git a/buildapp/instructions.md b/buildapp/instructions.md index f13a095c4..44a684365 100644 --- a/buildapp/instructions.md +++ b/buildapp/instructions.md @@ -56,6 +56,10 @@ Terrarum.*.app Hide the `.jar` within the subdirectory; users will think this file is the main executable and will try to execute it using whatever JVM they may (or may not) have. +#### Some Notes + +- Windows EXE creation is not there yet. Maybe use one of [these?](https://sourceforge.net/projects/batch-compiler/) + ### Notes to Terrarum Programmers By self-containing everything in one file, it is not possible to modify the base game easily. Modloading scheme must be extended to load from mutable directory such as `%APPDATA%/Terrarum/mods`. diff --git a/lib/annotations-13.0-javadoc.jar b/lib/annotations-13.0-javadoc.jar deleted file mode 100644 index 2c57f97d4..000000000 Binary files a/lib/annotations-13.0-javadoc.jar and /dev/null differ diff --git a/lib/annotations-13.0-sources.jar b/lib/annotations-13.0-sources.jar deleted file mode 100644 index 233ba85ed..000000000 Binary files a/lib/annotations-13.0-sources.jar and /dev/null differ diff --git a/lib/annotations-13.0.jar b/lib/annotations-13.0.jar deleted file mode 100644 index fb794be91..000000000 Binary files a/lib/annotations-13.0.jar and /dev/null differ diff --git a/lib/kotlin-stdlib-1.4.0-javadoc.jar b/lib/kotlin-stdlib-1.4.0-javadoc.jar deleted file mode 100644 index e3f3a9579..000000000 Binary files a/lib/kotlin-stdlib-1.4.0-javadoc.jar and /dev/null differ diff --git a/lib/kotlin-stdlib-1.4.0-sources.jar b/lib/kotlin-stdlib-1.4.0-sources.jar deleted file mode 100644 index c2401f71a..000000000 Binary files a/lib/kotlin-stdlib-1.4.0-sources.jar and /dev/null differ diff --git a/lib/kotlin-stdlib-1.4.0.jar b/lib/kotlin-stdlib-1.4.0.jar deleted file mode 100644 index fe545d7eb..000000000 Binary files a/lib/kotlin-stdlib-1.4.0.jar and /dev/null differ diff --git a/lib/kotlin-stdlib-common-1.4.0-javadoc.jar b/lib/kotlin-stdlib-common-1.4.0-javadoc.jar deleted file mode 100644 index e3f3a9579..000000000 Binary files a/lib/kotlin-stdlib-common-1.4.0-javadoc.jar and /dev/null differ diff --git a/lib/kotlin-stdlib-common-1.4.0-sources.jar b/lib/kotlin-stdlib-common-1.4.0-sources.jar deleted file mode 100644 index 42bd99637..000000000 Binary files a/lib/kotlin-stdlib-common-1.4.0-sources.jar and /dev/null differ diff --git a/lib/kotlin-stdlib-common-1.4.0.jar b/lib/kotlin-stdlib-common-1.4.0.jar deleted file mode 100644 index 2ea93b451..000000000 Binary files a/lib/kotlin-stdlib-common-1.4.0.jar and /dev/null differ diff --git a/lib/kotlinx-coroutines-core-1.4.1-javadoc.jar b/lib/kotlinx-coroutines-core-1.4.1-javadoc.jar deleted file mode 100644 index ee61e9e10..000000000 Binary files a/lib/kotlinx-coroutines-core-1.4.1-javadoc.jar and /dev/null differ diff --git a/lib/kotlinx-coroutines-core-1.4.1-sources.jar b/lib/kotlinx-coroutines-core-1.4.1-sources.jar deleted file mode 100644 index 97dcbc1ad..000000000 Binary files a/lib/kotlinx-coroutines-core-1.4.1-sources.jar and /dev/null differ diff --git a/lib/kotlinx-coroutines-core-1.4.1.jar b/lib/kotlinx-coroutines-core-1.4.1.jar deleted file mode 100644 index 1d51c980f..000000000 Binary files a/lib/kotlinx-coroutines-core-1.4.1.jar and /dev/null differ diff --git a/src/net/torvald/terrarum/Yaml.kt b/src/net/torvald/terrarum/Yaml.kt index e180cd343..335835ff5 100644 --- a/src/net/torvald/terrarum/Yaml.kt +++ b/src/net/torvald/terrarum/Yaml.kt @@ -50,7 +50,8 @@ import java.util.* * * Created by minjaesong on 2018-12-08. */ -inline class Yaml(val text: String) { +@JvmInline +value class Yaml(val text: String) { companion object { val SEPARATOR = Regex(" : ") diff --git a/src/net/torvald/terrarum/gameworld/GameWorld.kt b/src/net/torvald/terrarum/gameworld/GameWorld.kt index 6ce2dc91a..7281363c1 100644 --- a/src/net/torvald/terrarum/gameworld/GameWorld.kt +++ b/src/net/torvald/terrarum/gameworld/GameWorld.kt @@ -716,7 +716,8 @@ infix fun Long.fmod(other: Long) = Math.floorMod(this, other) infix fun Float.fmod(other: Float) = if (this >= 0f) this % other else (this % other) + other infix fun Double.fmod(other: Double) = if (this >= 0.0) this % other else (this % other) + other -inline class FluidType(val value: Int) { +@JvmInline +value class FluidType(val value: Int) { infix fun sameAs(other: FluidType) = this.value.absoluteValue == other.value.absoluteValue fun abs() = this.value.absoluteValue } diff --git a/src/net/torvald/terrarum/modulebasegame/gameactors/FixtureBase.kt b/src/net/torvald/terrarum/modulebasegame/gameactors/FixtureBase.kt index 68533c821..437a13767 100644 --- a/src/net/torvald/terrarum/modulebasegame/gameactors/FixtureBase.kt +++ b/src/net/torvald/terrarum/modulebasegame/gameactors/FixtureBase.kt @@ -360,7 +360,8 @@ interface CuedByWireChange { * * In the savegame's JSON, this flag set should be stored as signed integer. */ -inline class BlockBoxProps(val flags: Int) { +@JvmInline +value class BlockBoxProps(val flags: Int) { } diff --git a/src/net/torvald/terrarum/modulebasegame/icongen/IconGenMesh.kt b/src/net/torvald/terrarum/modulebasegame/icongen/IconGenMesh.kt index 45e99b843..0f3609844 100644 --- a/src/net/torvald/terrarum/modulebasegame/icongen/IconGenMesh.kt +++ b/src/net/torvald/terrarum/modulebasegame/icongen/IconGenMesh.kt @@ -15,7 +15,8 @@ import net.torvald.terrarum.Point2d * * Created by minjaesong on 2020-02-11. */ -inline class IconGenMesh(val datapoints: Array) { +@JvmInline +value class IconGenMesh(val datapoints: Array) { operator fun times(other: PerturbMesh) { @@ -23,6 +24,7 @@ inline class IconGenMesh(val datapoints: Array) { } -inline class PerturbMesh(val datapoints: Array) { +@JvmInline +value class PerturbMesh(val datapoints: Array) { } \ No newline at end of file