[Editor] Apply the Entity/Character changes
This commit is contained in:
@@ -4,7 +4,7 @@ import com.bartlomiejpluta.base.editor.animation.asset.AnimationAsset
|
||||
import com.bartlomiejpluta.base.editor.asset.model.Asset
|
||||
import com.bartlomiejpluta.base.editor.asset.model.AssetCategory
|
||||
import com.bartlomiejpluta.base.editor.audio.asset.SoundAsset
|
||||
import com.bartlomiejpluta.base.editor.entityset.asset.EntitySet
|
||||
import com.bartlomiejpluta.base.editor.characterset.asset.CharacterSet
|
||||
import com.bartlomiejpluta.base.editor.gui.font.asset.FontAsset
|
||||
import com.bartlomiejpluta.base.editor.gui.widget.asset.WidgetAsset
|
||||
import com.bartlomiejpluta.base.editor.iconset.asset.IconSetAsset
|
||||
@@ -74,7 +74,7 @@ class AssetTreeCell(renameAsset: (asset: Asset, name: String) -> Asset, deleteAs
|
||||
is GameMapAsset -> FontIcon("fa-map")
|
||||
is TileSetAsset -> FontIcon("fa-th")
|
||||
is ImageAsset -> FontIcon("fa-image")
|
||||
is EntitySet -> FontIcon("fa-male")
|
||||
is CharacterSet -> FontIcon("fa-male")
|
||||
is AnimationAsset -> FontIcon("fa-film")
|
||||
is IconSetAsset -> FontIcon("fa-file-image-o")
|
||||
is FontAsset -> FontIcon("fa-font")
|
||||
|
||||
@@ -29,8 +29,8 @@ class AssetsListView : View() {
|
||||
menuitem("Import Image...") { mainController.importImage() }
|
||||
}
|
||||
|
||||
private val entitySet = AssetCategory("Entity Sets").apply {
|
||||
menuitem("Import Entity Set...") { mainController.importEntitySet() }
|
||||
private val characterSet = AssetCategory("Character Sets").apply {
|
||||
menuitem("Import Character Set...") { mainController.importCharacterSet() }
|
||||
}
|
||||
|
||||
private val animations = AssetCategory("Animations").apply {
|
||||
@@ -58,7 +58,7 @@ class AssetsListView : View() {
|
||||
maps,
|
||||
tileSets,
|
||||
images,
|
||||
entitySet,
|
||||
characterSet,
|
||||
animations,
|
||||
iconSets,
|
||||
fonts,
|
||||
@@ -74,7 +74,7 @@ class AssetsListView : View() {
|
||||
bindContent(maps.items, it.maps)
|
||||
bindContent(tileSets.items, it.tileSets)
|
||||
bindContent(images.items, it.images)
|
||||
bindContent(entitySet.items, it.entitySets)
|
||||
bindContent(characterSet.items, it.characterSets)
|
||||
bindContent(animations.items, it.animations)
|
||||
bindContent(iconSets.items, it.iconSets)
|
||||
bindContent(fonts.items, it.fonts)
|
||||
|
||||
@@ -0,0 +1,7 @@
|
||||
package com.bartlomiejpluta.base.editor.characterset.asset
|
||||
|
||||
import com.bartlomiejpluta.base.editor.asset.model.Asset
|
||||
import com.bartlomiejpluta.base.editor.project.model.Project
|
||||
|
||||
class CharacterSet(project: Project, uid: String, source: String, name: String, val rows: Int, val columns: Int) :
|
||||
Asset(project.characterSetsDirectoryProperty, uid, source, name)
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.bartlomiejpluta.base.editor.entityset.asset
|
||||
package com.bartlomiejpluta.base.editor.characterset.asset
|
||||
|
||||
import javafx.beans.property.SimpleIntegerProperty
|
||||
import javafx.beans.property.SimpleObjectProperty
|
||||
@@ -7,7 +7,7 @@ import tornadofx.getValue
|
||||
import tornadofx.setValue
|
||||
import java.io.File
|
||||
|
||||
class EntitySetAssetData {
|
||||
class CharacterSetAssetData {
|
||||
val nameProperty = SimpleStringProperty()
|
||||
var name by nameProperty
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
package com.bartlomiejpluta.base.editor.entityset.view.importing
|
||||
package com.bartlomiejpluta.base.editor.characterset.view.importing
|
||||
|
||||
import com.bartlomiejpluta.base.editor.entityset.asset.EntitySetAssetData
|
||||
import com.bartlomiejpluta.base.editor.entityset.viewmodel.EntitySetAssetDataVM
|
||||
import com.bartlomiejpluta.base.editor.characterset.asset.CharacterSetAssetData
|
||||
import com.bartlomiejpluta.base.editor.characterset.viewmodel.CharacterSetAssetDataVM
|
||||
import com.bartlomiejpluta.base.editor.util.fx.TextFieldUtil
|
||||
import javafx.beans.property.SimpleObjectProperty
|
||||
import javafx.scene.Cursor
|
||||
@@ -9,11 +9,11 @@ import javafx.scene.image.Image
|
||||
import javafx.stage.FileChooser
|
||||
import tornadofx.*
|
||||
|
||||
class ImportEntitySetFragment : Fragment("Import Entity Set") {
|
||||
private val dataVM = find<EntitySetAssetDataVM>()
|
||||
class ImportCharacterSetFragment : Fragment("Import Character Set") {
|
||||
private val dataVM = find<CharacterSetAssetDataVM>()
|
||||
private val imagePreview = SimpleObjectProperty<Image?>()
|
||||
|
||||
private var onCompleteConsumer: ((EntitySetAssetData) -> Unit)? = null
|
||||
private var onCompleteConsumer: ((CharacterSetAssetData) -> Unit)? = null
|
||||
|
||||
init {
|
||||
dataVM.fileProperty.addListener { _, _, file ->
|
||||
@@ -24,26 +24,26 @@ class ImportEntitySetFragment : Fragment("Import Entity Set") {
|
||||
}
|
||||
}
|
||||
|
||||
fun onComplete(consumer: (EntitySetAssetData) -> Unit) {
|
||||
fun onComplete(consumer: (CharacterSetAssetData) -> Unit) {
|
||||
this.onCompleteConsumer = consumer
|
||||
}
|
||||
|
||||
override val root = form {
|
||||
prefHeight = 480.0
|
||||
|
||||
fieldset("Import Entity Set") {
|
||||
fieldset("Import Character Set") {
|
||||
hbox {
|
||||
vbox {
|
||||
scrollpane {
|
||||
prefWidth = 300.0
|
||||
prefHeightProperty().bind(this@form.heightProperty())
|
||||
imageview(imagePreview)
|
||||
tooltip = tooltip("Click to choose Entity Set file")
|
||||
tooltip = tooltip("Click to choose Character Set file")
|
||||
cursor = Cursor.HAND
|
||||
|
||||
setOnMouseClicked {
|
||||
dataVM.file = chooseFile(
|
||||
title = "Select Entity Set",
|
||||
title = "Select Character Set",
|
||||
filters = arrayOf(FileChooser.ExtensionFilter("PNG Images (*.png)", "*.png"))
|
||||
).getOrNull(0)
|
||||
}
|
||||
@@ -61,21 +61,21 @@ class ImportEntitySetFragment : Fragment("Import Entity Set") {
|
||||
vbox {
|
||||
paddingLeft = 20.0
|
||||
|
||||
field("Entity Set Name") {
|
||||
field("Character Set Name") {
|
||||
textfield(dataVM.nameProperty) {
|
||||
required()
|
||||
trimWhitespace()
|
||||
}
|
||||
}
|
||||
|
||||
field("Entity Set Rows") {
|
||||
field("Character Set Rows") {
|
||||
spinner(min = 1, max = Integer.MAX_VALUE, property = dataVM.rowsProperty, editable = true) {
|
||||
required()
|
||||
editor.textFormatter = TextFieldUtil.integerFormatter(dataVM.rows)
|
||||
}
|
||||
}
|
||||
|
||||
field("Entity Set Columns") {
|
||||
field("Character Set Columns") {
|
||||
spinner(min = 1, max = Integer.MAX_VALUE, property = dataVM.columnsProperty, editable = true) {
|
||||
required()
|
||||
editor.textFormatter = TextFieldUtil.integerFormatter(dataVM.columns)
|
||||
@@ -0,0 +1,20 @@
|
||||
package com.bartlomiejpluta.base.editor.characterset.viewmodel
|
||||
|
||||
import com.bartlomiejpluta.base.editor.characterset.asset.CharacterSetAssetData
|
||||
import tornadofx.ItemViewModel
|
||||
import tornadofx.getValue
|
||||
import tornadofx.setValue
|
||||
|
||||
class CharacterSetAssetDataVM : ItemViewModel<CharacterSetAssetData>(CharacterSetAssetData()) {
|
||||
val nameProperty = bind(CharacterSetAssetData::nameProperty)
|
||||
var name by nameProperty
|
||||
|
||||
val fileProperty = bind(CharacterSetAssetData::fileProperty)
|
||||
var file by fileProperty
|
||||
|
||||
val rowsProperty = bind(CharacterSetAssetData::rowsProperty)
|
||||
var rows by rowsProperty
|
||||
|
||||
val columnsProperty = bind(CharacterSetAssetData::columnsProperty)
|
||||
var columns by columnsProperty
|
||||
}
|
||||
@@ -22,7 +22,7 @@ class AssetMapCodeGenerator : CodeGenerator {
|
||||
listOf(
|
||||
generateAssetClass("maps", project.maps),
|
||||
generateAssetClass("tilesets", project.tileSets),
|
||||
generateAssetClass("entsets", project.entitySets),
|
||||
generateAssetClass("charsets", project.characterSets),
|
||||
generateAssetClass("images", project.images),
|
||||
generateAssetClass("animations", project.animations),
|
||||
generateAssetClass("iconsets", project.iconSets),
|
||||
|
||||
@@ -27,7 +27,7 @@ class DefaultProjectAssembler : ProjectAssembler {
|
||||
packager.pack(project.mapsDirectory, targetJar, "BOOT-INF/classes/project/maps")
|
||||
packager.pack(project.tileSetsDirectory, targetJar, "BOOT-INF/classes/project/tilesets")
|
||||
packager.pack(project.imagesDirectory, targetJar, "BOOT-INF/classes/project/images")
|
||||
packager.pack(project.entitySetsDirectory, targetJar, "BOOT-INF/classes/project/entsets")
|
||||
packager.pack(project.characterSetsDirectory, targetJar, "BOOT-INF/classes/project/charsets")
|
||||
packager.pack(project.animationsDirectory, targetJar, "BOOT-INF/classes/project/animations")
|
||||
packager.pack(project.fontsDirectory, targetJar, "BOOT-INF/classes/project/fonts")
|
||||
packager.pack(project.widgetsDirectory, targetJar, "BOOT-INF/classes/project/widgets")
|
||||
|
||||
@@ -1,7 +0,0 @@
|
||||
package com.bartlomiejpluta.base.editor.entityset.asset
|
||||
|
||||
import com.bartlomiejpluta.base.editor.asset.model.Asset
|
||||
import com.bartlomiejpluta.base.editor.project.model.Project
|
||||
|
||||
class EntitySet(project: Project, uid: String, source: String, name: String, val rows: Int, val columns: Int) :
|
||||
Asset(project.entitySetsDirectoryProperty, uid, source, name)
|
||||
@@ -1,20 +0,0 @@
|
||||
package com.bartlomiejpluta.base.editor.entityset.viewmodel
|
||||
|
||||
import com.bartlomiejpluta.base.editor.entityset.asset.EntitySetAssetData
|
||||
import tornadofx.ItemViewModel
|
||||
import tornadofx.getValue
|
||||
import tornadofx.setValue
|
||||
|
||||
class EntitySetAssetDataVM : ItemViewModel<EntitySetAssetData>(EntitySetAssetData()) {
|
||||
val nameProperty = bind(EntitySetAssetData::nameProperty)
|
||||
var name by nameProperty
|
||||
|
||||
val fileProperty = bind(EntitySetAssetData::fileProperty)
|
||||
var file by fileProperty
|
||||
|
||||
val rowsProperty = bind(EntitySetAssetData::rowsProperty)
|
||||
var rows by rowsProperty
|
||||
|
||||
val columnsProperty = bind(EntitySetAssetData::columnsProperty)
|
||||
var columns by columnsProperty
|
||||
}
|
||||
@@ -10,8 +10,8 @@ import com.bartlomiejpluta.base.editor.code.viewmodel.CodeVM
|
||||
import com.bartlomiejpluta.base.editor.command.context.UndoableScope
|
||||
import com.bartlomiejpluta.base.editor.database.model.data.Query
|
||||
import com.bartlomiejpluta.base.editor.database.viewmodel.QueryVM
|
||||
import com.bartlomiejpluta.base.editor.entityset.view.importing.ImportEntitySetFragment
|
||||
import com.bartlomiejpluta.base.editor.entityset.viewmodel.EntitySetAssetDataVM
|
||||
import com.bartlomiejpluta.base.editor.characterset.view.importing.ImportCharacterSetFragment
|
||||
import com.bartlomiejpluta.base.editor.characterset.viewmodel.CharacterSetAssetDataVM
|
||||
import com.bartlomiejpluta.base.editor.event.SelectMainViewTabEvent
|
||||
import com.bartlomiejpluta.base.editor.file.model.FileNode
|
||||
import com.bartlomiejpluta.base.editor.file.model.ScriptAssetFileNode
|
||||
@@ -203,14 +203,14 @@ class MainController : Controller() {
|
||||
}
|
||||
}
|
||||
|
||||
fun importEntitySet() {
|
||||
val vm = EntitySetAssetDataVM()
|
||||
fun importCharacterSet() {
|
||||
val vm = CharacterSetAssetDataVM()
|
||||
val scope = Scope()
|
||||
setInScope(vm, scope)
|
||||
|
||||
find<ImportEntitySetFragment>(scope).apply {
|
||||
find<ImportCharacterSetFragment>(scope).apply {
|
||||
onComplete {
|
||||
projectContext.importEntitySet(it)
|
||||
projectContext.importCharacterSet(it)
|
||||
}
|
||||
|
||||
openModal(block = true, resizable = false)
|
||||
|
||||
@@ -58,9 +58,9 @@ class MainMenuView : View() {
|
||||
}
|
||||
}
|
||||
|
||||
item("Entity Set...") {
|
||||
item("Character Set...") {
|
||||
action {
|
||||
mainController.importEntitySet()
|
||||
mainController.importCharacterSet()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -8,8 +8,8 @@ import com.bartlomiejpluta.base.editor.audio.asset.SoundAssetData
|
||||
import com.bartlomiejpluta.base.editor.code.model.Code
|
||||
import com.bartlomiejpluta.base.editor.code.model.CodeType
|
||||
import com.bartlomiejpluta.base.editor.code.service.JavaClassService
|
||||
import com.bartlomiejpluta.base.editor.entityset.asset.EntitySet
|
||||
import com.bartlomiejpluta.base.editor.entityset.asset.EntitySetAssetData
|
||||
import com.bartlomiejpluta.base.editor.characterset.asset.CharacterSet
|
||||
import com.bartlomiejpluta.base.editor.characterset.asset.CharacterSetAssetData
|
||||
import com.bartlomiejpluta.base.editor.file.model.FileNode
|
||||
import com.bartlomiejpluta.base.editor.gui.font.asset.FontAsset
|
||||
import com.bartlomiejpluta.base.editor.gui.font.asset.FontAssetData
|
||||
@@ -200,13 +200,13 @@ class DefaultProjectContext : ProjectContext {
|
||||
File(it.imagesDirectory, asset.source).inputStream().use { fis -> Image(fis) }
|
||||
} ?: throw IllegalStateException("There is no open project in the context")
|
||||
|
||||
override fun importEntitySet(data: EntitySetAssetData) {
|
||||
override fun importCharacterSet(data: CharacterSetAssetData) {
|
||||
project?.let {
|
||||
UID.next(it.entitySets.map(Asset::uid)).let { uid ->
|
||||
UID.next(it.characterSets.map(Asset::uid)).let { uid ->
|
||||
val source = "$uid.${data.file.extension}"
|
||||
val targetFile = File(it.entitySetsDirectory, source)
|
||||
val targetFile = File(it.characterSetsDirectory, source)
|
||||
data.file.copyTo(targetFile)
|
||||
it.entitySets += EntitySet(it, uid, source, data.name, data.rows, data.columns)
|
||||
it.characterSets += CharacterSet(it, uid, source, data.name, data.rows, data.columns)
|
||||
|
||||
save()
|
||||
}
|
||||
|
||||
@@ -4,7 +4,7 @@ import com.bartlomiejpluta.base.editor.animation.asset.AnimationAssetData
|
||||
import com.bartlomiejpluta.base.editor.asset.model.Asset
|
||||
import com.bartlomiejpluta.base.editor.audio.asset.SoundAssetData
|
||||
import com.bartlomiejpluta.base.editor.code.model.Code
|
||||
import com.bartlomiejpluta.base.editor.entityset.asset.EntitySetAssetData
|
||||
import com.bartlomiejpluta.base.editor.characterset.asset.CharacterSetAssetData
|
||||
import com.bartlomiejpluta.base.editor.file.model.FileNode
|
||||
import com.bartlomiejpluta.base.editor.gui.font.asset.FontAssetData
|
||||
import com.bartlomiejpluta.base.editor.gui.widget.asset.WidgetAsset
|
||||
@@ -40,7 +40,7 @@ interface ProjectContext {
|
||||
fun findImageAsset(uid: String): ImageAsset
|
||||
fun loadImage(uid: String): Image
|
||||
|
||||
fun importEntitySet(data: EntitySetAssetData)
|
||||
fun importCharacterSet(data: CharacterSetAssetData)
|
||||
|
||||
fun importAnimation(data: AnimationAssetData)
|
||||
|
||||
|
||||
@@ -3,7 +3,7 @@ package com.bartlomiejpluta.base.editor.project.model
|
||||
import com.bartlomiejpluta.base.editor.animation.asset.AnimationAsset
|
||||
import com.bartlomiejpluta.base.editor.audio.asset.SoundAsset
|
||||
import com.bartlomiejpluta.base.editor.database.source.DataSource
|
||||
import com.bartlomiejpluta.base.editor.entityset.asset.EntitySet
|
||||
import com.bartlomiejpluta.base.editor.characterset.asset.CharacterSet
|
||||
import com.bartlomiejpluta.base.editor.file.model.FileSystemNode
|
||||
import com.bartlomiejpluta.base.editor.gui.font.asset.FontAsset
|
||||
import com.bartlomiejpluta.base.editor.gui.widget.asset.WidgetAsset
|
||||
@@ -38,14 +38,14 @@ class Project {
|
||||
val maps = observableListOf<GameMapAsset>()
|
||||
val tileSets = observableListOf<TileSetAsset>()
|
||||
val images = observableListOf<ImageAsset>()
|
||||
val entitySets = observableListOf<EntitySet>()
|
||||
val characterSets = observableListOf<CharacterSet>()
|
||||
val animations = observableListOf<AnimationAsset>()
|
||||
val iconSets = observableListOf<IconSetAsset>()
|
||||
val fonts = observableListOf<FontAsset>()
|
||||
val widgets = observableListOf<WidgetAsset>()
|
||||
val sounds = observableListOf<SoundAsset>()
|
||||
|
||||
val assetLists = listOf(maps, tileSets, images, entitySets, animations, iconSets, fonts, widgets, sounds)
|
||||
val assetLists = listOf(maps, tileSets, images, characterSets, animations, iconSets, fonts, widgets, sounds)
|
||||
|
||||
val mapsDirectoryProperty = SimpleObjectProperty<File>()
|
||||
var mapsDirectory by mapsDirectoryProperty
|
||||
@@ -59,8 +59,8 @@ class Project {
|
||||
var imagesDirectory by imagesDirectoryProperty
|
||||
private set
|
||||
|
||||
val entitySetsDirectoryProperty = SimpleObjectProperty<File>()
|
||||
var entitySetsDirectory by entitySetsDirectoryProperty
|
||||
val characterSetsDirectoryProperty = SimpleObjectProperty<File>()
|
||||
var characterSetsDirectory by characterSetsDirectoryProperty
|
||||
private set
|
||||
|
||||
val animationsDirectoryProperty = SimpleObjectProperty<File>()
|
||||
@@ -130,7 +130,7 @@ class Project {
|
||||
mapsDirectory = File(it, MAPS_DIR)
|
||||
tileSetsDirectory = File(it, TILE_SETS_DIR)
|
||||
imagesDirectory = File(it, IMAGES_DIR)
|
||||
entitySetsDirectory = File(it, ENTITY_SETS_DIR)
|
||||
characterSetsDirectory = File(it, CHARACTER_SETS_DIR)
|
||||
animationsDirectory = File(it, ANIMATIONS_DIR)
|
||||
iconSetsDirectory = File(it, ICONSETS_DIR)
|
||||
fontsDirectory = File(it, FONTS_DIR)
|
||||
@@ -161,7 +161,7 @@ class Project {
|
||||
mapsDirectory?.mkdirs()
|
||||
tileSetsDirectory?.mkdirs()
|
||||
imagesDirectory?.mkdirs()
|
||||
entitySetsDirectory?.mkdirs()
|
||||
characterSetsDirectory?.mkdirs()
|
||||
animationsDirectory?.mkdirs()
|
||||
iconSetsDirectory?.mkdirs()
|
||||
fontsDirectory?.mkdirs()
|
||||
@@ -179,7 +179,7 @@ class Project {
|
||||
const val MAPS_DIR = "maps"
|
||||
const val TILE_SETS_DIR = "tilesets"
|
||||
const val IMAGES_DIR = "images"
|
||||
const val ENTITY_SETS_DIR = "entsets"
|
||||
const val CHARACTER_SETS_DIR = "charsets"
|
||||
const val ANIMATIONS_DIR = "animations"
|
||||
const val ICONSETS_DIR = "iconsets"
|
||||
const val FONTS_DIR = "fonts"
|
||||
|
||||
@@ -2,7 +2,7 @@ package com.bartlomiejpluta.base.editor.project.serial
|
||||
|
||||
import com.bartlomiejpluta.base.editor.animation.asset.AnimationAsset
|
||||
import com.bartlomiejpluta.base.editor.audio.asset.SoundAsset
|
||||
import com.bartlomiejpluta.base.editor.entityset.asset.EntitySet
|
||||
import com.bartlomiejpluta.base.editor.characterset.asset.CharacterSet
|
||||
import com.bartlomiejpluta.base.editor.gui.font.asset.FontAsset
|
||||
import com.bartlomiejpluta.base.editor.gui.widget.asset.WidgetAsset
|
||||
import com.bartlomiejpluta.base.editor.iconset.asset.IconSetAsset
|
||||
@@ -26,7 +26,7 @@ class ProtobufProjectDeserializer : ProjectDeserializer {
|
||||
maps.addAll(proto.mapsList.map { deserializeMap(this, it) })
|
||||
tileSets.addAll(proto.tileSetsList.map { deserializeTileSet(this, it) })
|
||||
images.addAll(proto.imagesList.map { deserializeImage(this, it) })
|
||||
entitySets.addAll(proto.entitySetsList.map { deserializeEntitySet(this, it) })
|
||||
characterSets.addAll(proto.entitySetsList.map { deserializeCharacterSet(this, it) })
|
||||
animations.addAll(proto.animationsList.map { deserializeAnimation(this, it) })
|
||||
iconSets.addAll(proto.iconSetsList.map { deserializeIconSet(this, it) })
|
||||
fonts.addAll(proto.fontsList.map { deserializeFont(this, it) })
|
||||
@@ -57,13 +57,13 @@ class ProtobufProjectDeserializer : ProjectDeserializer {
|
||||
name = image.name
|
||||
)
|
||||
|
||||
private fun deserializeEntitySet(project: Project, entitySetAsset: ProjectProto.EntitySetAsset) = EntitySet(
|
||||
private fun deserializeCharacterSet(project: Project, characterSetAsset: ProjectProto.EntitySetAsset) = CharacterSet(
|
||||
project = project,
|
||||
uid = entitySetAsset.uid,
|
||||
source = entitySetAsset.source,
|
||||
name = entitySetAsset.name,
|
||||
rows = entitySetAsset.rows,
|
||||
columns = entitySetAsset.columns
|
||||
uid = characterSetAsset.uid,
|
||||
source = characterSetAsset.source,
|
||||
name = characterSetAsset.name,
|
||||
rows = characterSetAsset.rows,
|
||||
columns = characterSetAsset.columns
|
||||
)
|
||||
|
||||
private fun deserializeAnimation(project: Project, animationAsset: ProjectProto.AnimationAsset) = AnimationAsset(
|
||||
|
||||
@@ -2,7 +2,7 @@ package com.bartlomiejpluta.base.editor.project.serial
|
||||
|
||||
import com.bartlomiejpluta.base.editor.animation.asset.AnimationAsset
|
||||
import com.bartlomiejpluta.base.editor.audio.asset.SoundAsset
|
||||
import com.bartlomiejpluta.base.editor.entityset.asset.EntitySet
|
||||
import com.bartlomiejpluta.base.editor.characterset.asset.CharacterSet
|
||||
import com.bartlomiejpluta.base.editor.gui.font.asset.FontAsset
|
||||
import com.bartlomiejpluta.base.editor.gui.widget.asset.WidgetAsset
|
||||
import com.bartlomiejpluta.base.editor.iconset.asset.IconSetAsset
|
||||
@@ -24,7 +24,7 @@ class ProtobufProjectSerializer : ProjectSerializer {
|
||||
proto.addAllMaps(item.maps.map(this::serializeMap))
|
||||
proto.addAllTileSets(item.tileSets.map(this::serializeTileSet))
|
||||
proto.addAllImages(item.images.map(this::serializeImage))
|
||||
proto.addAllEntitySets(item.entitySets.map(this::serializeEntitySet))
|
||||
proto.addAllEntitySets(item.characterSets.map(this::serializeCharacterSet))
|
||||
proto.addAllAnimations(item.animations.map(this::serializeAnimation))
|
||||
proto.addAllIconSets(item.iconSets.map(this::serializeIconSet))
|
||||
proto.addAllFonts(item.fonts.map(this::serializeFont))
|
||||
@@ -53,12 +53,12 @@ class ProtobufProjectSerializer : ProjectSerializer {
|
||||
.setName(image.name)
|
||||
.build()
|
||||
|
||||
private fun serializeEntitySet(entitySet: EntitySet) = ProjectProto.EntitySetAsset.newBuilder()
|
||||
.setUid(entitySet.uid)
|
||||
.setSource(entitySet.source)
|
||||
.setName(entitySet.name)
|
||||
.setRows(entitySet.rows)
|
||||
.setColumns(entitySet.columns)
|
||||
private fun serializeCharacterSet(characterSet: CharacterSet) = ProjectProto.EntitySetAsset.newBuilder()
|
||||
.setUid(characterSet.uid)
|
||||
.setSource(characterSet.source)
|
||||
.setName(characterSet.name)
|
||||
.setRows(characterSet.rows)
|
||||
.setColumns(characterSet.columns)
|
||||
.build()
|
||||
|
||||
private fun serializeAnimation(animation: AnimationAsset) = ProjectProto.AnimationAsset.newBuilder()
|
||||
|
||||
@@ -35,7 +35,7 @@ public class DefaultCharacterSetManager implements CharacterSetManager {
|
||||
throw new AppException("The character set asset with UID: [%s] does not exist", uid);
|
||||
}
|
||||
|
||||
var source = configuration.projectFile("entsets", asset.getSource());
|
||||
var source = configuration.projectFile("charsets", asset.getSource());
|
||||
var texture = textureManager.loadTexture(source, asset.getRows(), asset.getColumns());
|
||||
|
||||
return Material.textured(texture);
|
||||
|
||||
Reference in New Issue
Block a user