package ru.dbotthepony.kstarbound.defs.actor.player

import com.google.common.collect.ImmutableList
import com.google.common.collect.ImmutableMap
import ru.dbotthepony.kstarbound.defs.AssetPath
import ru.dbotthepony.kstarbound.defs.IScriptable
import ru.dbotthepony.kstarbound.defs.item.ItemDescriptor
import ru.dbotthepony.kstarbound.json.builder.JsonFactory

@JsonFactory
data class DeploymentConfig(
	override val scripts: ImmutableList<AssetPath>,
	override val scriptDelta: Int,

	val starterMechSet: ImmutableMap<String, ItemDescriptor>,
	val speciesStarterMechBody: ImmutableMap<String, ItemDescriptor>,

	val enemyDetectRadius: Double,
	val enemyDetectTypeNames: ImmutableList<String>,

	val lowEnergyThreshold: Double,
	val lowEnergyFlashTime: Double,
	val lowEnergySound: String,
) : IScriptable
