25 lines
676 B
Kotlin
25 lines
676 B
Kotlin
package ru.dbotthepony.kstarbound.defs
|
|
|
|
import com.google.common.collect.ImmutableList
|
|
import ru.dbotthepony.kstarbound.json.builder.JsonFactory
|
|
import ru.dbotthepony.kstarbound.json.builder.JsonImplementation
|
|
|
|
@JsonImplementation(IScriptable.Impl::class)
|
|
interface IScriptable {
|
|
/**
|
|
* Lua скрипты для выполнения
|
|
*/
|
|
val scripts: List<AssetPath>
|
|
|
|
/**
|
|
* Через какое количество тиков вызывать обновления скриптов
|
|
*/
|
|
val scriptDelta: Int
|
|
|
|
@JsonFactory
|
|
data class Impl(
|
|
override val scripts: ImmutableList<AssetPath> = ImmutableList.of(),
|
|
override val scriptDelta: Int = 1
|
|
) : IScriptable
|
|
}
|