diff --git a/src/main/kotlin/ru/dbotthepony/kstarbound/util/Utils.kt b/src/main/kotlin/ru/dbotthepony/kstarbound/util/Utils.kt index 6758050b..9566b875 100644 --- a/src/main/kotlin/ru/dbotthepony/kstarbound/util/Utils.kt +++ b/src/main/kotlin/ru/dbotthepony/kstarbound/util/Utils.kt @@ -19,6 +19,12 @@ fun String.sbIntern(): String { val JsonElement.asStringOrNull: String? get() = if (isJsonNull) null else asString +val JsonElement.asDoubleOrNull: Double? + get() = if (isJsonNull) null else asDouble + +val JsonElement.asBooleanOrNull: Boolean? + get() = if (isJsonNull) null else asBoolean + val JsonElement.coalesceNull: JsonElement? get() = if (isJsonNull) null else this diff --git a/src/main/kotlin/ru/dbotthepony/kstarbound/world/entities/ProjectileEntity.kt b/src/main/kotlin/ru/dbotthepony/kstarbound/world/entities/ProjectileEntity.kt index fee1ab5e..64045023 100644 --- a/src/main/kotlin/ru/dbotthepony/kstarbound/world/entities/ProjectileEntity.kt +++ b/src/main/kotlin/ru/dbotthepony/kstarbound/world/entities/ProjectileEntity.kt @@ -29,6 +29,9 @@ import ru.dbotthepony.kstarbound.network.syncher.networkedBoolean import ru.dbotthepony.kstarbound.network.syncher.networkedEventCounter import ru.dbotthepony.kstarbound.util.AssetPathStack import ru.dbotthepony.kstarbound.util.Directives +import ru.dbotthepony.kstarbound.util.asBooleanOrNull +import ru.dbotthepony.kstarbound.util.asDoubleOrNull +import ru.dbotthepony.kstarbound.util.asStringOrNull import ru.dbotthepony.kstarbound.util.valueOf import java.io.DataInputStream import java.io.DataOutputStream @@ -80,11 +83,11 @@ class ProjectileEntity private constructor(val config: Registry.Entry