savegame to save with the thumbnail

This commit is contained in:
minjaesong
2021-09-08 20:36:49 +09:00
parent 966e7ce26f
commit fc40ec48f1
6 changed files with 93 additions and 67 deletions

View File

@@ -8,23 +8,22 @@ import com.badlogic.gdx.graphics.g2d.TextureRegion
import com.badlogic.gdx.graphics.glutils.FrameBuffer
import com.badlogic.gdx.graphics.glutils.ShaderProgram
import com.badlogic.gdx.utils.Disposable
import com.badlogic.gdx.utils.ScreenUtils
import net.torvald.gdx.graphics.PixmapIO2
import net.torvald.terrarum.*
import net.torvald.terrarum.AppLoader.measureDebugTime
import net.torvald.terrarum.AppLoader.printdbg
import net.torvald.terrarum.TerrarumAppConfiguration.TILE_SIZE
import net.torvald.terrarum.TerrarumAppConfiguration.TILE_SIZEF
import net.torvald.terrarum.gameactors.ActorWithBody
import net.torvald.terrarum.gamecontroller.KeyToggler
import net.torvald.terrarum.gameparticles.ParticleBase
import net.torvald.terrarum.gameworld.GameWorld
import net.torvald.terrarum.gameworld.fmod
import net.torvald.terrarum.gameparticles.ParticleBase
import net.torvald.terrarum.weather.WeatherMixer
import net.torvald.terrarum.ui.UICanvas
import net.torvald.terrarum.worlddrawer.*
import net.torvald.terrarum.weather.WeatherMixer
import net.torvald.terrarum.worlddrawer.BlocksDrawer
import net.torvald.terrarum.worlddrawer.FeaturesDrawer
import net.torvald.terrarum.worlddrawer.LightmapRenderer
import net.torvald.terrarum.worlddrawer.WorldCamera
import net.torvald.util.CircularArray
import javax.swing.JFileChooser
import kotlin.system.exitProcess
/**
@@ -335,11 +334,7 @@ object IngameRenderer : Disposable {
if (fboRGBexportRequested) {
fboRGBexportRequested = false
try {
val w = 960
val h = 640
val p = Pixmap.createFromFrameBuffer((fboRGB.width - w).ushr(1), (fboRGB.height - h).ushr(1), w, h)
PixmapIO2.writeTGA(Gdx.files.absolute(fboRGBexportPath), p, true)
p.dispose()
fboRGBexportCallback(fboRGB)
}
catch (e: Throwable) {
e.printStackTrace()
@@ -383,7 +378,7 @@ object IngameRenderer : Disposable {
}
internal var fboRGBexportRequested = false
internal var fboRGBexportPath = ""
internal var fboRGBexportCallback: (FrameBuffer) -> Unit = {}
private fun drawToRGB(
actorsRenderBehind: List<ActorWithBody>?,

View File

@@ -1,6 +1,9 @@
package net.torvald.terrarum.modulebasegame.console
import net.torvald.terrarum.*
import net.torvald.terrarum.AppLoader
import net.torvald.terrarum.CommonResourcePool
import net.torvald.terrarum.ReferencingRanges
import net.torvald.terrarum.Terrarum
import net.torvald.terrarum.console.ConsoleCommand
import net.torvald.terrarum.console.Echo
import net.torvald.terrarum.gameactors.Actor
@@ -39,9 +42,8 @@ object Save : ConsoleCommand {
val disk = VDUtil.createNewDisk(1L shl 60, savename, Common.CHARSET)
val file = File(AppLoader.defaultDir + "/Exports/${args[1]}")
WriteSavegame(disk, file, ingame)
Echo ("${ccW}Saved with size of $ccG${file.length()}$ccW bytes")
}
catch (e: IOException) {
Echo("Save: IOException raised.")