diff --git a/src/main/kotlin/ru/dbotthepony/kstarbound/defs/Species.kt b/src/main/kotlin/ru/dbotthepony/kstarbound/defs/actor/Species.kt similarity index 59% rename from src/main/kotlin/ru/dbotthepony/kstarbound/defs/Species.kt rename to src/main/kotlin/ru/dbotthepony/kstarbound/defs/actor/Species.kt index 125702b6..cb28283c 100644 --- a/src/main/kotlin/ru/dbotthepony/kstarbound/defs/Species.kt +++ b/src/main/kotlin/ru/dbotthepony/kstarbound/defs/actor/Species.kt @@ -1,8 +1,11 @@ -package ru.dbotthepony.kstarbound.defs +package ru.dbotthepony.kstarbound.defs.actor import com.google.common.collect.ImmutableList import com.google.common.collect.ImmutableSet import ru.dbotthepony.kstarbound.Registry +import ru.dbotthepony.kstarbound.defs.AssetPath +import ru.dbotthepony.kstarbound.defs.ColorReplacements +import ru.dbotthepony.kstarbound.defs.StatusEffectDefinition import ru.dbotthepony.kstarbound.defs.image.SpriteReference import ru.dbotthepony.kstarbound.defs.actor.player.BlueprintLearnList import ru.dbotthepony.kstarbound.defs.item.ItemDescriptor @@ -11,31 +14,36 @@ import ru.dbotthepony.kstarbound.json.builder.JsonFactory @JsonFactory data class Species( val kind: String, - val charCreationTooltip: Tooltip, + val charCreationTooltip: Tooltip = Tooltip(), val nameGen: ImmutableList, - val ouchNoises: ImmutableList, - val charGenTextLabels: ImmutableList, - val skull: String, + val ouchNoises: ImmutableList, + val charGenTextLabels: ImmutableList = ImmutableList.of(), + val skull: AssetPath = AssetPath("/humanoid/any/dead.png"), // ваш свет угасает val defaultBlueprints: BlueprintLearnList, + + val headOptionAsHairColor: Boolean = false, val headOptionAsFacialhair: Boolean = false, val altOptionAsUndyColor: Boolean = false, val altOptionAsHairColor: Boolean = false, - val bodyColorAsFacialMaskSubColor: Boolean = false, + val altOptionAsFacialMask: Boolean = false, val hairColorAsBodySubColor: Boolean = false, + val bodyColorAsFacialMaskSubColor: Boolean = false, + val altColorAsFacialMaskSubColor: Boolean = false, + val bodyColor: ImmutableList, val undyColor: ImmutableList, val hairColor: ImmutableList, - val genders: ImmutableList, + val genders: ImmutableList, val statusEffects: ImmutableSet> = ImmutableSet.of(), ) { @JsonFactory - data class Tooltip(val title: String, val subTitle: String, val description: String) + data class Tooltip(val title: String = "", val subTitle: String = "", val description: String = "") @JsonFactory - data class Gender( - val name: String, - val image: SpriteReference, - val characterImage: SpriteReference, + data class GenderSettings( + val name: String = "", + val image: SpriteReference = SpriteReference.NEVER, + val characterImage: SpriteReference = SpriteReference.NEVER, val hairGroup: String? = null, val hair: ImmutableSet, val shirt: ImmutableSet,