From 50eac69e3eb6a427210a6d8b75c993d5a0439a73 Mon Sep 17 00:00:00 2001 From: minjaesong Date: Mon, 4 Sep 2023 22:16:51 +0900 Subject: [PATCH] working invitation code for new character --- .../gameactors/FixtureSwingingDoorBase.kt | 2 +- .../terrarum/modulebasegame/ui/UINewWorld.kt | 14 +++++++++++++- 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/src/net/torvald/terrarum/modulebasegame/gameactors/FixtureSwingingDoorBase.kt b/src/net/torvald/terrarum/modulebasegame/gameactors/FixtureSwingingDoorBase.kt index a3d32cc2d..dd38b9abc 100644 --- a/src/net/torvald/terrarum/modulebasegame/gameactors/FixtureSwingingDoorBase.kt +++ b/src/net/torvald/terrarum/modulebasegame/gameactors/FixtureSwingingDoorBase.kt @@ -126,7 +126,7 @@ open class FixtureSwingingDoorBase : FixtureBase { (if (isOpacityActuallyLuminosity) lightBoxList else shadeBoxList)[0].light = opacity // define physical size - setHitboxDimension(TILE_SIZE * tilewiseHitboxWidth, TILE_SIZE * tilewiseHitboxHeight, 0, 1) + setHitboxDimension(TILE_SIZE * tilewiseHitboxWidth, TILE_SIZE * tilewiseHitboxHeight, 0, 0) blockBox = BlockBox(BlockBox.FULL_COLLISION, tilewiseHitboxWidth, tilewiseHitboxHeight) doorHoldLength = hashMapOf( diff --git a/src/net/torvald/terrarum/modulebasegame/ui/UINewWorld.kt b/src/net/torvald/terrarum/modulebasegame/ui/UINewWorld.kt index 7d728e085..63515f9a8 100644 --- a/src/net/torvald/terrarum/modulebasegame/ui/UINewWorld.kt +++ b/src/net/torvald/terrarum/modulebasegame/ui/UINewWorld.kt @@ -14,6 +14,7 @@ import net.torvald.terrarum.modulebasegame.TerrarumIngame import net.torvald.terrarum.modulebasegame.TerrarumIngame.Companion.NEW_WORLD_SIZE import net.torvald.terrarum.modulebasegame.WorldgenLoadScreen import net.torvald.terrarum.modulebasegame.gameactors.IngamePlayer +import net.torvald.terrarum.modulebasegame.serialise.LoadSavegame import net.torvald.terrarum.savegame.ByteArray64Reader import net.torvald.terrarum.savegame.VirtualDisk import net.torvald.terrarum.serialise.Common @@ -206,13 +207,24 @@ class UINewWorld(val remoCon: UIRemoCon) : UICanvas() { importReturnCode = 1 } else { - TODO() // after the save is complete, proceed to importing if (existingPlayer == null) { newPlayerCreationThread.start() newPlayerCreationThread.join() } + + val playerDisk = existingPlayer ?: App.savegamePlayers[UILoadGovernor.playerUUID]!!.loadable() + val player = ReadActor.invoke( + playerDisk, + ByteArray64Reader(playerDisk.getFile(SAVEGAMEINFO)!!.bytes, Common.CHARSET) + ) as IngamePlayer + + + LoadSavegame( + App.savegamePlayers[player.uuid]!!.files[0], + world.loadable() + ) } } }