mirror of
https://gitlab.bixilon.de/bixilon/minosoft.git
synced 2025-09-14 01:48:04 -04:00
remove mod loading, outsource more to kutil, bump kutil to 1.1
This commit is contained in:
parent
e1943a1d10
commit
ac528e5f1f
@ -104,20 +104,20 @@ If your start function needs much time, you can set the loading priority in the
|
|||||||
|
|
||||||
|
|
||||||
Create a Main class, here is an example
|
Create a Main class, here is an example
|
||||||
|
|
||||||
```java
|
```java
|
||||||
package de.bixilon.example.mod.main;
|
package de.bixilon.example.mod.main;
|
||||||
|
|
||||||
import de.bixilon.minosoft.modding.MinosoftMod;
|
|
||||||
import de.bixilon.minosoft.modding.loading.ModPhases;
|
import de.bixilon.minosoft.modding.loading.ModPhases;
|
||||||
|
|
||||||
public class TestMod extends MinosoftMod {
|
public class TestMod extends MinosoftMod {
|
||||||
|
|
||||||
public boolean start(ModPhases phase) {
|
public boolean start(ModPhases phase) {
|
||||||
if (phase == ModPhases.BOOTING) {
|
if (phase == ModPhases.BOOTING) {
|
||||||
getLogger().info("Hello world!");
|
getLogger().info("Hello world!");
|
||||||
|
}
|
||||||
|
return true;
|
||||||
}
|
}
|
||||||
return true;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
Your `mod.json` can look like this
|
Your `mod.json` can look like this
|
||||||
|
2
pom.xml
2
pom.xml
@ -457,7 +457,7 @@
|
|||||||
<dependency>
|
<dependency>
|
||||||
<groupId>de.bixilon</groupId>
|
<groupId>de.bixilon</groupId>
|
||||||
<artifactId>kutil</artifactId>
|
<artifactId>kutil</artifactId>
|
||||||
<version>1.0</version>
|
<version>1.1</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
</dependencies>
|
</dependencies>
|
||||||
</project>
|
</project>
|
||||||
|
@ -16,8 +16,9 @@ package de.bixilon.minosoft
|
|||||||
import de.bixilon.kutil.concurrent.pool.ThreadPool
|
import de.bixilon.kutil.concurrent.pool.ThreadPool
|
||||||
import de.bixilon.kutil.concurrent.worker.TaskWorker
|
import de.bixilon.kutil.concurrent.worker.TaskWorker
|
||||||
import de.bixilon.kutil.concurrent.worker.tasks.Task
|
import de.bixilon.kutil.concurrent.worker.tasks.Task
|
||||||
import de.bixilon.kutil.general.OSUtil
|
import de.bixilon.kutil.file.watcher.FileWatcherService
|
||||||
import de.bixilon.kutil.latch.CountUpAndDownLatch
|
import de.bixilon.kutil.latch.CountUpAndDownLatch
|
||||||
|
import de.bixilon.kutil.os.OSUtil
|
||||||
import de.bixilon.minosoft.assets.file.ResourcesAssetsUtil
|
import de.bixilon.minosoft.assets.file.ResourcesAssetsUtil
|
||||||
import de.bixilon.minosoft.assets.properties.version.AssetsVersionProperties
|
import de.bixilon.minosoft.assets.properties.version.AssetsVersionProperties
|
||||||
import de.bixilon.minosoft.config.profile.GlobalProfileManager
|
import de.bixilon.minosoft.config.profile.GlobalProfileManager
|
||||||
@ -35,7 +36,6 @@ import de.bixilon.minosoft.gui.eros.dialog.StartingDialog
|
|||||||
import de.bixilon.minosoft.gui.eros.util.JavaFXInitializer
|
import de.bixilon.minosoft.gui.eros.util.JavaFXInitializer
|
||||||
import de.bixilon.minosoft.modding.event.events.FinishInitializingEvent
|
import de.bixilon.minosoft.modding.event.events.FinishInitializingEvent
|
||||||
import de.bixilon.minosoft.modding.event.master.GlobalEventMaster
|
import de.bixilon.minosoft.modding.event.master.GlobalEventMaster
|
||||||
import de.bixilon.minosoft.modding.loading.ModLoader
|
|
||||||
import de.bixilon.minosoft.protocol.protocol.LANServerListener
|
import de.bixilon.minosoft.protocol.protocol.LANServerListener
|
||||||
import de.bixilon.minosoft.protocol.protocol.ProtocolDefinition
|
import de.bixilon.minosoft.protocol.protocol.ProtocolDefinition
|
||||||
import de.bixilon.minosoft.terminal.AutoConnect
|
import de.bixilon.minosoft.terminal.AutoConnect
|
||||||
@ -46,7 +46,6 @@ import de.bixilon.minosoft.util.GitInfo
|
|||||||
import de.bixilon.minosoft.util.RenderPolling
|
import de.bixilon.minosoft.util.RenderPolling
|
||||||
import de.bixilon.minosoft.util.Util
|
import de.bixilon.minosoft.util.Util
|
||||||
import de.bixilon.minosoft.util.YggdrasilUtil
|
import de.bixilon.minosoft.util.YggdrasilUtil
|
||||||
import de.bixilon.minosoft.util.filewatcher.FileWatcherService
|
|
||||||
import de.bixilon.minosoft.util.logging.Log
|
import de.bixilon.minosoft.util.logging.Log
|
||||||
import de.bixilon.minosoft.util.logging.LogLevels
|
import de.bixilon.minosoft.util.logging.LogLevels
|
||||||
import de.bixilon.minosoft.util.logging.LogMessageType
|
import de.bixilon.minosoft.util.logging.LogMessageType
|
||||||
@ -111,8 +110,6 @@ object Minosoft {
|
|||||||
Log.log(LogMessageType.OTHER, LogLevels.VERBOSE) { "Default registries loaded!" }
|
Log.log(LogMessageType.OTHER, LogLevels.VERBOSE) { "Default registries loaded!" }
|
||||||
})
|
})
|
||||||
|
|
||||||
taskWorker += Task(identifier = StartupTasks.LOAD_MODS, dependencies = arrayOf(StartupTasks.LOAD_PROFILES), executor = { ModLoader.loadMods(it) })
|
|
||||||
|
|
||||||
|
|
||||||
taskWorker += Task(identifier = StartupTasks.LISTEN_LAN_SERVERS, dependencies = arrayOf(StartupTasks.LOAD_PROFILES), executor = {
|
taskWorker += Task(identifier = StartupTasks.LISTEN_LAN_SERVERS, dependencies = arrayOf(StartupTasks.LOAD_PROFILES), executor = {
|
||||||
LANServerListener.listen()
|
LANServerListener.listen()
|
||||||
|
@ -13,12 +13,12 @@
|
|||||||
|
|
||||||
package de.bixilon.minosoft.assets.directory
|
package de.bixilon.minosoft.assets.directory
|
||||||
|
|
||||||
|
import de.bixilon.kutil.file.FileUtil.slashPath
|
||||||
import de.bixilon.kutil.latch.CountUpAndDownLatch
|
import de.bixilon.kutil.latch.CountUpAndDownLatch
|
||||||
import de.bixilon.minosoft.assets.AssetsManager
|
import de.bixilon.minosoft.assets.AssetsManager
|
||||||
import de.bixilon.minosoft.assets.util.FileAssetsUtil.toAssetName
|
import de.bixilon.minosoft.assets.util.FileAssetsUtil.toAssetName
|
||||||
import de.bixilon.minosoft.assets.util.FileUtil
|
import de.bixilon.minosoft.assets.util.FileUtil
|
||||||
import de.bixilon.minosoft.data.registries.ResourceLocation
|
import de.bixilon.minosoft.data.registries.ResourceLocation
|
||||||
import de.bixilon.minosoft.util.KUtil.slashPath
|
|
||||||
import java.io.File
|
import java.io.File
|
||||||
import java.io.FileNotFoundException
|
import java.io.FileNotFoundException
|
||||||
import java.io.InputStream
|
import java.io.InputStream
|
||||||
|
@ -18,6 +18,7 @@ import de.bixilon.kutil.concurrent.pool.DefaultThreadPool
|
|||||||
import de.bixilon.kutil.concurrent.pool.ThreadPool
|
import de.bixilon.kutil.concurrent.pool.ThreadPool
|
||||||
import de.bixilon.kutil.concurrent.pool.ThreadPoolRunnable
|
import de.bixilon.kutil.concurrent.pool.ThreadPoolRunnable
|
||||||
import de.bixilon.kutil.latch.CountUpAndDownLatch
|
import de.bixilon.kutil.latch.CountUpAndDownLatch
|
||||||
|
import de.bixilon.kutil.primitive.LongUtil.toLong
|
||||||
import de.bixilon.minosoft.assets.minecraft.MinecraftAssetsManager
|
import de.bixilon.minosoft.assets.minecraft.MinecraftAssetsManager
|
||||||
import de.bixilon.minosoft.assets.util.FileAssetsUtil
|
import de.bixilon.minosoft.assets.util.FileAssetsUtil
|
||||||
import de.bixilon.minosoft.assets.util.FileAssetsUtil.toAssetName
|
import de.bixilon.minosoft.assets.util.FileAssetsUtil.toAssetName
|
||||||
@ -27,7 +28,6 @@ import de.bixilon.minosoft.config.StaticConfiguration
|
|||||||
import de.bixilon.minosoft.config.profile.profiles.resources.ResourcesProfile
|
import de.bixilon.minosoft.config.profile.profiles.resources.ResourcesProfile
|
||||||
import de.bixilon.minosoft.data.registries.ResourceLocation
|
import de.bixilon.minosoft.data.registries.ResourceLocation
|
||||||
import de.bixilon.minosoft.protocol.protocol.ProtocolDefinition
|
import de.bixilon.minosoft.protocol.protocol.ProtocolDefinition
|
||||||
import de.bixilon.minosoft.util.KUtil.toLong
|
|
||||||
import de.bixilon.minosoft.util.Util
|
import de.bixilon.minosoft.util.Util
|
||||||
import de.bixilon.minosoft.util.json.Jackson
|
import de.bixilon.minosoft.util.json.Jackson
|
||||||
import de.bixilon.minosoft.util.logging.Log
|
import de.bixilon.minosoft.util.logging.Log
|
||||||
|
@ -15,10 +15,10 @@ package de.bixilon.minosoft.assets.util
|
|||||||
|
|
||||||
import com.github.luben.zstd.ZstdInputStream
|
import com.github.luben.zstd.ZstdInputStream
|
||||||
import com.github.luben.zstd.ZstdOutputStream
|
import com.github.luben.zstd.ZstdOutputStream
|
||||||
|
import de.bixilon.kutil.hex.HexUtil.isHexString
|
||||||
import de.bixilon.minosoft.data.registries.ResourceLocation
|
import de.bixilon.minosoft.data.registries.ResourceLocation
|
||||||
import de.bixilon.minosoft.protocol.protocol.ProtocolDefinition
|
import de.bixilon.minosoft.protocol.protocol.ProtocolDefinition
|
||||||
import de.bixilon.minosoft.terminal.RunConfiguration
|
import de.bixilon.minosoft.terminal.RunConfiguration
|
||||||
import de.bixilon.minosoft.util.KUtil.isHexString
|
|
||||||
import de.bixilon.minosoft.util.Util
|
import de.bixilon.minosoft.util.Util
|
||||||
import java.io.*
|
import java.io.*
|
||||||
import java.net.URL
|
import java.net.URL
|
||||||
|
@ -7,6 +7,7 @@ import de.bixilon.kutil.collections.map.LockMap
|
|||||||
import de.bixilon.kutil.concurrent.pool.DefaultThreadPool
|
import de.bixilon.kutil.concurrent.pool.DefaultThreadPool
|
||||||
import de.bixilon.kutil.concurrent.time.TimeWorker
|
import de.bixilon.kutil.concurrent.time.TimeWorker
|
||||||
import de.bixilon.kutil.concurrent.time.TimeWorkerTask
|
import de.bixilon.kutil.concurrent.time.TimeWorkerTask
|
||||||
|
import de.bixilon.kutil.file.FileUtil
|
||||||
import de.bixilon.minosoft.config.profile.profiles.Profile
|
import de.bixilon.minosoft.config.profile.profiles.Profile
|
||||||
import de.bixilon.minosoft.config.profile.profiles.account.AccountProfileManager
|
import de.bixilon.minosoft.config.profile.profiles.account.AccountProfileManager
|
||||||
import de.bixilon.minosoft.config.profile.profiles.audio.AudioProfileManager
|
import de.bixilon.minosoft.config.profile.profiles.audio.AudioProfileManager
|
||||||
@ -23,7 +24,6 @@ import de.bixilon.minosoft.config.profile.profiles.resources.ResourcesProfileMan
|
|||||||
import de.bixilon.minosoft.data.registries.ResourceLocation
|
import de.bixilon.minosoft.data.registries.ResourceLocation
|
||||||
import de.bixilon.minosoft.gui.eros.crash.ErosCrashReport.Companion.crash
|
import de.bixilon.minosoft.gui.eros.crash.ErosCrashReport.Companion.crash
|
||||||
import de.bixilon.minosoft.terminal.RunConfiguration
|
import de.bixilon.minosoft.terminal.RunConfiguration
|
||||||
import de.bixilon.minosoft.util.KUtil
|
|
||||||
import de.bixilon.minosoft.util.Util
|
import de.bixilon.minosoft.util.Util
|
||||||
import de.bixilon.minosoft.util.json.Jackson
|
import de.bixilon.minosoft.util.json.Jackson
|
||||||
import java.io.File
|
import java.io.File
|
||||||
@ -90,7 +90,7 @@ object GlobalProfileManager {
|
|||||||
val data: Map<String, String> = Jackson.MAPPER.convertValue(selectedProfiles.original, SELECTED_PROFILES_TYPE)
|
val data: Map<String, String> = Jackson.MAPPER.convertValue(selectedProfiles.original, SELECTED_PROFILES_TYPE)
|
||||||
val jsonString = Jackson.MAPPER.writerWithDefaultPrettyPrinter().writeValueAsString(data)
|
val jsonString = Jackson.MAPPER.writerWithDefaultPrettyPrinter().writeValueAsString(data)
|
||||||
|
|
||||||
KUtil.safeSaveToFile(File(RunConfiguration.HOME_DIRECTORY + "config/selected_profiles.json"), jsonString)
|
FileUtil.safeSaveToFile(File(RunConfiguration.HOME_DIRECTORY + "config/selected_profiles.json"), jsonString)
|
||||||
selectedProfilesChanges = false
|
selectedProfilesChanges = false
|
||||||
} catch (exception: Exception) {
|
} catch (exception: Exception) {
|
||||||
exception.crash()
|
exception.crash()
|
||||||
|
@ -2,6 +2,11 @@ package de.bixilon.minosoft.config.profile
|
|||||||
|
|
||||||
import com.google.common.collect.HashBiMap
|
import com.google.common.collect.HashBiMap
|
||||||
import de.bixilon.kutil.concurrent.pool.DefaultThreadPool
|
import de.bixilon.kutil.concurrent.pool.DefaultThreadPool
|
||||||
|
import de.bixilon.kutil.exception.ExceptionUtil.tryCatch
|
||||||
|
import de.bixilon.kutil.file.FileUtil
|
||||||
|
import de.bixilon.kutil.file.watcher.FileWatcher
|
||||||
|
import de.bixilon.kutil.file.watcher.FileWatcherService
|
||||||
|
import de.bixilon.kutil.primitive.IntUtil.toInt
|
||||||
import de.bixilon.minosoft.config.profile.delegate.delegate.BackingDelegate
|
import de.bixilon.minosoft.config.profile.delegate.delegate.BackingDelegate
|
||||||
import de.bixilon.minosoft.config.profile.delegate.delegate.ProfileDelegate
|
import de.bixilon.minosoft.config.profile.delegate.delegate.ProfileDelegate
|
||||||
import de.bixilon.minosoft.config.profile.delegate.delegate.entry.ListDelegateProfile
|
import de.bixilon.minosoft.config.profile.delegate.delegate.entry.ListDelegateProfile
|
||||||
@ -11,11 +16,7 @@ import de.bixilon.minosoft.config.profile.profiles.Profile
|
|||||||
import de.bixilon.minosoft.data.registries.ResourceLocation
|
import de.bixilon.minosoft.data.registries.ResourceLocation
|
||||||
import de.bixilon.minosoft.gui.eros.crash.ErosCrashReport.Companion.crash
|
import de.bixilon.minosoft.gui.eros.crash.ErosCrashReport.Companion.crash
|
||||||
import de.bixilon.minosoft.terminal.RunConfiguration
|
import de.bixilon.minosoft.terminal.RunConfiguration
|
||||||
import de.bixilon.minosoft.util.KUtil
|
|
||||||
import de.bixilon.minosoft.util.KUtil.toInt
|
|
||||||
import de.bixilon.minosoft.util.Util
|
import de.bixilon.minosoft.util.Util
|
||||||
import de.bixilon.minosoft.util.filewatcher.FileWatcher
|
|
||||||
import de.bixilon.minosoft.util.filewatcher.FileWatcherService
|
|
||||||
import de.bixilon.minosoft.util.json.Jackson
|
import de.bixilon.minosoft.util.json.Jackson
|
||||||
import de.bixilon.minosoft.util.logging.Log
|
import de.bixilon.minosoft.util.logging.Log
|
||||||
import de.bixilon.minosoft.util.logging.LogLevels
|
import de.bixilon.minosoft.util.logging.LogLevels
|
||||||
@ -183,7 +184,7 @@ interface ProfileManager<T : Profile> {
|
|||||||
|
|
||||||
val profileFile = File(getPath(profile.name))
|
val profileFile = File(getPath(profile.name))
|
||||||
profile.ignoreNextReload = true
|
profile.ignoreNextReload = true
|
||||||
KUtil.safeSaveToFile(profileFile, jsonString)
|
FileUtil.safeSaveToFile(profileFile, jsonString)
|
||||||
profile.saved = true
|
profile.saved = true
|
||||||
} catch (exception: Exception) {
|
} catch (exception: Exception) {
|
||||||
exception.printStackTrace()
|
exception.printStackTrace()
|
||||||
@ -237,7 +238,7 @@ interface ProfileManager<T : Profile> {
|
|||||||
fun readAndMigrate(path: String): Pair<Boolean, MutableMap<String, Any?>?> {
|
fun readAndMigrate(path: String): Pair<Boolean, MutableMap<String, Any?>?> {
|
||||||
var saveFile = false
|
var saveFile = false
|
||||||
val json: MutableMap<String, Any?>?
|
val json: MutableMap<String, Any?>?
|
||||||
val jsonString = KUtil.tryCatch(FileNotFoundException::class.java) { Util.readFile(path) }
|
val jsonString = tryCatch(FileNotFoundException::class.java) { Util.readFile(path) }
|
||||||
if (jsonString != null) {
|
if (jsonString != null) {
|
||||||
json = Jackson.MAPPER.readValue(jsonString, Jackson.JSON_MAP_TYPE)!!
|
json = Jackson.MAPPER.readValue(jsonString, Jackson.JSON_MAP_TYPE)!!
|
||||||
val version = json["version"]?.toInt() ?: throw IllegalArgumentException("Can not find version attribute in profile: $path")
|
val version = json["version"]?.toInt() ?: throw IllegalArgumentException("Can not find version attribute in profile: $path")
|
||||||
|
@ -2,13 +2,13 @@ package de.bixilon.minosoft.config.profile.profiles.eros.general
|
|||||||
|
|
||||||
import com.fasterxml.jackson.annotation.JsonIgnore
|
import com.fasterxml.jackson.annotation.JsonIgnore
|
||||||
import com.fasterxml.jackson.annotation.JsonProperty
|
import com.fasterxml.jackson.annotation.JsonProperty
|
||||||
|
import de.bixilon.kutil.locale.LocaleUtil.fullName
|
||||||
import de.bixilon.minosoft.config.profile.profiles.account.AccountProfile
|
import de.bixilon.minosoft.config.profile.profiles.account.AccountProfile
|
||||||
import de.bixilon.minosoft.config.profile.profiles.account.AccountProfileManager
|
import de.bixilon.minosoft.config.profile.profiles.account.AccountProfileManager
|
||||||
import de.bixilon.minosoft.config.profile.profiles.eros.ErosProfileManager.delegate
|
import de.bixilon.minosoft.config.profile.profiles.eros.ErosProfileManager.delegate
|
||||||
import de.bixilon.minosoft.config.profile.profiles.eros.ErosProfileManager.mapDelegate
|
import de.bixilon.minosoft.config.profile.profiles.eros.ErosProfileManager.mapDelegate
|
||||||
import de.bixilon.minosoft.data.language.LanguageManager
|
import de.bixilon.minosoft.data.language.LanguageManager
|
||||||
import de.bixilon.minosoft.data.registries.ResourceLocation
|
import de.bixilon.minosoft.data.registries.ResourceLocation
|
||||||
import de.bixilon.minosoft.util.KUtil.fullName
|
|
||||||
import java.util.*
|
import java.util.*
|
||||||
|
|
||||||
class GeneralC {
|
class GeneralC {
|
||||||
|
@ -13,8 +13,8 @@
|
|||||||
|
|
||||||
package de.bixilon.minosoft.data.abilities
|
package de.bixilon.minosoft.data.abilities
|
||||||
|
|
||||||
|
import de.bixilon.kutil.time.TimeUtil
|
||||||
import de.bixilon.minosoft.protocol.protocol.ProtocolDefinition
|
import de.bixilon.minosoft.protocol.protocol.ProtocolDefinition
|
||||||
import de.bixilon.minosoft.util.KUtil
|
|
||||||
|
|
||||||
data class ItemCooldown(
|
data class ItemCooldown(
|
||||||
val start: Long,
|
val start: Long,
|
||||||
@ -23,5 +23,5 @@ data class ItemCooldown(
|
|||||||
val end: Long = start + (time * ProtocolDefinition.TICK_TIME)
|
val end: Long = start + (time * ProtocolDefinition.TICK_TIME)
|
||||||
|
|
||||||
val ended: Boolean
|
val ended: Boolean
|
||||||
get() = KUtil.time >= end
|
get() = TimeUtil.time >= end
|
||||||
}
|
}
|
||||||
|
@ -16,11 +16,11 @@ package de.bixilon.minosoft.data.accounts.types
|
|||||||
import com.fasterxml.jackson.annotation.JsonProperty
|
import com.fasterxml.jackson.annotation.JsonProperty
|
||||||
import de.bixilon.kutil.cast.CastUtil.nullCast
|
import de.bixilon.kutil.cast.CastUtil.nullCast
|
||||||
import de.bixilon.kutil.cast.CastUtil.unsafeCast
|
import de.bixilon.kutil.cast.CastUtil.unsafeCast
|
||||||
|
import de.bixilon.kutil.uuid.UUIDUtil.toUUID
|
||||||
import de.bixilon.minosoft.data.accounts.Account
|
import de.bixilon.minosoft.data.accounts.Account
|
||||||
import de.bixilon.minosoft.data.player.properties.PlayerProperties
|
import de.bixilon.minosoft.data.player.properties.PlayerProperties
|
||||||
import de.bixilon.minosoft.data.registries.CompanionResourceLocation
|
import de.bixilon.minosoft.data.registries.CompanionResourceLocation
|
||||||
import de.bixilon.minosoft.data.registries.ResourceLocation
|
import de.bixilon.minosoft.data.registries.ResourceLocation
|
||||||
import de.bixilon.minosoft.util.KUtil.asUUID
|
|
||||||
import de.bixilon.minosoft.util.KUtil.toResourceLocation
|
import de.bixilon.minosoft.util.KUtil.toResourceLocation
|
||||||
import de.bixilon.minosoft.util.account.AccountUtil
|
import de.bixilon.minosoft.util.account.AccountUtil
|
||||||
import de.bixilon.minosoft.util.http.HTTP2.postJson
|
import de.bixilon.minosoft.util.http.HTTP2.postJson
|
||||||
@ -117,7 +117,7 @@ class MojangAccount(
|
|||||||
|
|
||||||
Log.log(LogMessageType.AUTHENTICATION, LogLevels.VERBOSE) { "Mojang login successful (email=$email)" }
|
Log.log(LogMessageType.AUTHENTICATION, LogLevels.VERBOSE) { "Mojang login successful (email=$email)" }
|
||||||
|
|
||||||
val uuid = response.body["selectedProfile"].asCompound()["id"].toString().asUUID()
|
val uuid = response.body["selectedProfile"].asCompound()["id"].toString().toUUID()
|
||||||
return MojangAccount(
|
return MojangAccount(
|
||||||
id = response.body["user"].asCompound()["id"].unsafeCast(),
|
id = response.body["user"].asCompound()["id"].unsafeCast(),
|
||||||
username = response.body["selectedProfile"].asCompound()["name"].unsafeCast(),
|
username = response.body["selectedProfile"].asCompound()["name"].unsafeCast(),
|
||||||
|
@ -23,7 +23,6 @@ import de.bixilon.minosoft.data.commands.parser.properties.ParserProperties;
|
|||||||
import de.bixilon.minosoft.protocol.network.connection.play.PlayConnection;
|
import de.bixilon.minosoft.protocol.network.connection.play.PlayConnection;
|
||||||
import de.bixilon.minosoft.protocol.protocol.InByteBuffer;
|
import de.bixilon.minosoft.protocol.protocol.InByteBuffer;
|
||||||
import de.bixilon.minosoft.protocol.protocol.ProtocolDefinition;
|
import de.bixilon.minosoft.protocol.protocol.ProtocolDefinition;
|
||||||
import de.bixilon.minosoft.util.Util;
|
|
||||||
|
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
@ -101,7 +100,8 @@ public class EntityParser extends CommandParser {
|
|||||||
throw new PlayerOnlyEntityCommandParseException(stringReader, value);
|
throw new PlayerOnlyEntityCommandParseException(stringReader, value);
|
||||||
}
|
}
|
||||||
try {
|
try {
|
||||||
return Util.getUUIDFromString(value);
|
// return Util.getUUIDFromString(value);
|
||||||
|
throw new IllegalArgumentException("TODO");
|
||||||
} catch (Exception ignored) {
|
} catch (Exception ignored) {
|
||||||
}
|
}
|
||||||
throw new UnknownEntitySelectorCommandParseException(stringReader, value);
|
throw new UnknownEntitySelectorCommandParseException(stringReader, value);
|
||||||
|
@ -16,7 +16,6 @@ import de.bixilon.minosoft.data.commands.CommandStringReader
|
|||||||
import de.bixilon.minosoft.data.commands.parser.exceptions.UUIDCommandParseException
|
import de.bixilon.minosoft.data.commands.parser.exceptions.UUIDCommandParseException
|
||||||
import de.bixilon.minosoft.data.commands.parser.properties.ParserProperties
|
import de.bixilon.minosoft.data.commands.parser.properties.ParserProperties
|
||||||
import de.bixilon.minosoft.protocol.network.connection.play.PlayConnection
|
import de.bixilon.minosoft.protocol.network.connection.play.PlayConnection
|
||||||
import de.bixilon.minosoft.util.Util
|
|
||||||
import java.util.*
|
import java.util.*
|
||||||
|
|
||||||
object UUIDParser : CommandParser() {
|
object UUIDParser : CommandParser() {
|
||||||
@ -24,7 +23,7 @@ object UUIDParser : CommandParser() {
|
|||||||
override fun parse(connection: PlayConnection, properties: ParserProperties?, stringReader: CommandStringReader): UUID {
|
override fun parse(connection: PlayConnection, properties: ParserProperties?, stringReader: CommandStringReader): UUID {
|
||||||
val argument = stringReader.readString()
|
val argument = stringReader.readString()
|
||||||
try {
|
try {
|
||||||
return Util.getUUIDFromString(argument)
|
return TODO() // Util.getUUIDFromString(argument)
|
||||||
} catch (exception: IllegalArgumentException) {
|
} catch (exception: IllegalArgumentException) {
|
||||||
throw UUIDCommandParseException(stringReader, argument, exception)
|
throw UUIDCommandParseException(stringReader, argument, exception)
|
||||||
}
|
}
|
||||||
|
@ -12,17 +12,17 @@
|
|||||||
*/
|
*/
|
||||||
package de.bixilon.minosoft.data.entities
|
package de.bixilon.minosoft.data.entities
|
||||||
|
|
||||||
|
import de.bixilon.kutil.time.TimeUtil
|
||||||
import de.bixilon.minosoft.data.registries.effects.StatusEffect
|
import de.bixilon.minosoft.data.registries.effects.StatusEffect
|
||||||
import de.bixilon.minosoft.util.KUtil
|
|
||||||
|
|
||||||
data class StatusEffectInstance(
|
data class StatusEffectInstance(
|
||||||
val statusEffect: StatusEffect,
|
val statusEffect: StatusEffect,
|
||||||
val amplifier: Int,
|
val amplifier: Int,
|
||||||
val duration: Int,
|
val duration: Int,
|
||||||
) {
|
) {
|
||||||
private val startMillis = KUtil.time
|
private val startMillis = TimeUtil.time
|
||||||
|
|
||||||
val remainingMillis: Long
|
val remainingMillis: Long
|
||||||
get() = KUtil.time - startMillis
|
get() = TimeUtil.time - startMillis
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -14,6 +14,8 @@
|
|||||||
package de.bixilon.minosoft.data.entities.block
|
package de.bixilon.minosoft.data.entities.block
|
||||||
|
|
||||||
import de.bixilon.kutil.cast.CastUtil.unsafeCast
|
import de.bixilon.kutil.cast.CastUtil.unsafeCast
|
||||||
|
import de.bixilon.kutil.primitive.IntUtil.toInt
|
||||||
|
import de.bixilon.kutil.random.RandomUtil.chance
|
||||||
import de.bixilon.minosoft.data.direction.Directions
|
import de.bixilon.minosoft.data.direction.Directions
|
||||||
import de.bixilon.minosoft.data.inventory.ItemStack
|
import de.bixilon.minosoft.data.inventory.ItemStack
|
||||||
import de.bixilon.minosoft.data.registries.ResourceLocation
|
import de.bixilon.minosoft.data.registries.ResourceLocation
|
||||||
@ -23,8 +25,6 @@ import de.bixilon.minosoft.data.registries.blocks.types.CampfireBlock
|
|||||||
import de.bixilon.minosoft.gui.rendering.RenderConstants
|
import de.bixilon.minosoft.gui.rendering.RenderConstants
|
||||||
import de.bixilon.minosoft.gui.rendering.particle.types.render.texture.simple.fire.SmokeParticle
|
import de.bixilon.minosoft.gui.rendering.particle.types.render.texture.simple.fire.SmokeParticle
|
||||||
import de.bixilon.minosoft.protocol.network.connection.play.PlayConnection
|
import de.bixilon.minosoft.protocol.network.connection.play.PlayConnection
|
||||||
import de.bixilon.minosoft.util.KUtil.chance
|
|
||||||
import de.bixilon.minosoft.util.KUtil.toInt
|
|
||||||
import de.bixilon.minosoft.util.nbt.tag.NBTUtil.listCast
|
import de.bixilon.minosoft.util.nbt.tag.NBTUtil.listCast
|
||||||
import glm_.vec3.Vec3d
|
import glm_.vec3.Vec3d
|
||||||
import glm_.vec3.Vec3i
|
import glm_.vec3.Vec3i
|
||||||
|
@ -13,6 +13,7 @@
|
|||||||
|
|
||||||
package de.bixilon.minosoft.data.entities.block
|
package de.bixilon.minosoft.data.entities.block
|
||||||
|
|
||||||
|
import de.bixilon.kutil.primitive.IntUtil.toInt
|
||||||
import de.bixilon.minosoft.data.registries.ResourceLocation
|
import de.bixilon.minosoft.data.registries.ResourceLocation
|
||||||
import de.bixilon.minosoft.data.registries.blocks.BlockState
|
import de.bixilon.minosoft.data.registries.blocks.BlockState
|
||||||
import de.bixilon.minosoft.data.world.WorldEntities
|
import de.bixilon.minosoft.data.world.WorldEntities
|
||||||
@ -23,7 +24,6 @@ import de.bixilon.minosoft.gui.rendering.util.VecUtil.plus
|
|||||||
import de.bixilon.minosoft.gui.rendering.util.VecUtil.toVec3d
|
import de.bixilon.minosoft.gui.rendering.util.VecUtil.toVec3d
|
||||||
import de.bixilon.minosoft.gui.rendering.util.vec.vec3.Vec3dUtil.EMPTY
|
import de.bixilon.minosoft.gui.rendering.util.vec.vec3.Vec3dUtil.EMPTY
|
||||||
import de.bixilon.minosoft.protocol.network.connection.play.PlayConnection
|
import de.bixilon.minosoft.protocol.network.connection.play.PlayConnection
|
||||||
import de.bixilon.minosoft.util.KUtil.toInt
|
|
||||||
import glm_.vec3.Vec3d
|
import glm_.vec3.Vec3d
|
||||||
import glm_.vec3.Vec3i
|
import glm_.vec3.Vec3i
|
||||||
import kotlin.random.Random
|
import kotlin.random.Random
|
||||||
|
@ -13,6 +13,7 @@
|
|||||||
|
|
||||||
package de.bixilon.minosoft.data.entities.block
|
package de.bixilon.minosoft.data.entities.block
|
||||||
|
|
||||||
|
import de.bixilon.kutil.primitive.IntUtil.toInt
|
||||||
import de.bixilon.minosoft.data.registries.MultiResourceLocationAble
|
import de.bixilon.minosoft.data.registries.MultiResourceLocationAble
|
||||||
import de.bixilon.minosoft.data.registries.ResourceLocation
|
import de.bixilon.minosoft.data.registries.ResourceLocation
|
||||||
import de.bixilon.minosoft.data.registries.blocks.BlockState
|
import de.bixilon.minosoft.data.registries.blocks.BlockState
|
||||||
@ -21,7 +22,6 @@ import de.bixilon.minosoft.data.registries.blocks.properties.Instruments
|
|||||||
import de.bixilon.minosoft.gui.rendering.particle.types.render.texture.simple.NoteParticle
|
import de.bixilon.minosoft.gui.rendering.particle.types.render.texture.simple.NoteParticle
|
||||||
import de.bixilon.minosoft.gui.rendering.util.VecUtil.toVec3d
|
import de.bixilon.minosoft.gui.rendering.util.VecUtil.toVec3d
|
||||||
import de.bixilon.minosoft.protocol.network.connection.play.PlayConnection
|
import de.bixilon.minosoft.protocol.network.connection.play.PlayConnection
|
||||||
import de.bixilon.minosoft.util.KUtil.toInt
|
|
||||||
import de.bixilon.minosoft.util.KUtil.toResourceLocation
|
import de.bixilon.minosoft.util.KUtil.toResourceLocation
|
||||||
import glm_.vec3.Vec3d
|
import glm_.vec3.Vec3d
|
||||||
import glm_.vec3.Vec3i
|
import glm_.vec3.Vec3i
|
||||||
|
@ -15,6 +15,7 @@ package de.bixilon.minosoft.data.entities.entities
|
|||||||
import de.bixilon.kutil.collections.CollectionUtil.synchronizedMapOf
|
import de.bixilon.kutil.collections.CollectionUtil.synchronizedMapOf
|
||||||
import de.bixilon.kutil.collections.CollectionUtil.synchronizedSetOf
|
import de.bixilon.kutil.collections.CollectionUtil.synchronizedSetOf
|
||||||
import de.bixilon.kutil.collections.CollectionUtil.toSynchronizedMap
|
import de.bixilon.kutil.collections.CollectionUtil.toSynchronizedMap
|
||||||
|
import de.bixilon.kutil.time.TimeUtil
|
||||||
import de.bixilon.minosoft.data.entities.EntityMetaDataFields
|
import de.bixilon.minosoft.data.entities.EntityMetaDataFields
|
||||||
import de.bixilon.minosoft.data.entities.EntityRotation
|
import de.bixilon.minosoft.data.entities.EntityRotation
|
||||||
import de.bixilon.minosoft.data.entities.Poses
|
import de.bixilon.minosoft.data.entities.Poses
|
||||||
@ -56,7 +57,6 @@ import de.bixilon.minosoft.gui.rendering.util.VecUtil.toVec3
|
|||||||
import de.bixilon.minosoft.gui.rendering.util.vec.vec3.Vec3dUtil.EMPTY
|
import de.bixilon.minosoft.gui.rendering.util.vec.vec3.Vec3dUtil.EMPTY
|
||||||
import de.bixilon.minosoft.protocol.network.connection.play.PlayConnection
|
import de.bixilon.minosoft.protocol.network.connection.play.PlayConnection
|
||||||
import de.bixilon.minosoft.protocol.protocol.ProtocolDefinition
|
import de.bixilon.minosoft.protocol.protocol.ProtocolDefinition
|
||||||
import de.bixilon.minosoft.util.KUtil
|
|
||||||
import glm_.func.common.floor
|
import glm_.func.common.floor
|
||||||
import glm_.vec2.Vec2
|
import glm_.vec2.Vec2
|
||||||
import glm_.vec3.Vec3
|
import glm_.vec3.Vec3
|
||||||
@ -346,7 +346,7 @@ abstract class Entity(
|
|||||||
|
|
||||||
@Synchronized
|
@Synchronized
|
||||||
fun tick() {
|
fun tick() {
|
||||||
val currentTime = KUtil.time
|
val currentTime = TimeUtil.time
|
||||||
if (lastFakeTickTime == -1L) {
|
if (lastFakeTickTime == -1L) {
|
||||||
lastFakeTickTime = currentTime
|
lastFakeTickTime = currentTime
|
||||||
return
|
return
|
||||||
|
@ -12,6 +12,7 @@
|
|||||||
*/
|
*/
|
||||||
package de.bixilon.minosoft.data.entities.entities
|
package de.bixilon.minosoft.data.entities.entities
|
||||||
|
|
||||||
|
import de.bixilon.kutil.random.RandomUtil.chance
|
||||||
import de.bixilon.minosoft.data.entities.EntityMetaDataFields
|
import de.bixilon.minosoft.data.entities.EntityMetaDataFields
|
||||||
import de.bixilon.minosoft.data.entities.EntityRotation
|
import de.bixilon.minosoft.data.entities.EntityRotation
|
||||||
import de.bixilon.minosoft.data.entities.Poses
|
import de.bixilon.minosoft.data.entities.Poses
|
||||||
@ -25,7 +26,6 @@ import de.bixilon.minosoft.gui.rendering.particle.types.render.texture.simple.sp
|
|||||||
import de.bixilon.minosoft.gui.rendering.particle.types.render.texture.simple.spell.EntityEffectParticle
|
import de.bixilon.minosoft.gui.rendering.particle.types.render.texture.simple.spell.EntityEffectParticle
|
||||||
import de.bixilon.minosoft.gui.rendering.util.VecUtil.horizontal
|
import de.bixilon.minosoft.gui.rendering.util.VecUtil.horizontal
|
||||||
import de.bixilon.minosoft.protocol.network.connection.play.PlayConnection
|
import de.bixilon.minosoft.protocol.network.connection.play.PlayConnection
|
||||||
import de.bixilon.minosoft.util.KUtil.chance
|
|
||||||
import glm_.vec3.Vec3d
|
import glm_.vec3.Vec3d
|
||||||
import glm_.vec3.Vec3i
|
import glm_.vec3.Vec3i
|
||||||
|
|
||||||
|
@ -17,6 +17,7 @@ import de.bixilon.kutil.collections.CollectionUtil.synchronizedListOf
|
|||||||
import de.bixilon.kutil.collections.CollectionUtil.synchronizedMapOf
|
import de.bixilon.kutil.collections.CollectionUtil.synchronizedMapOf
|
||||||
import de.bixilon.kutil.collections.CollectionUtil.toSynchronizedList
|
import de.bixilon.kutil.collections.CollectionUtil.toSynchronizedList
|
||||||
import de.bixilon.kutil.collections.CollectionUtil.toSynchronizedMap
|
import de.bixilon.kutil.collections.CollectionUtil.toSynchronizedMap
|
||||||
|
import de.bixilon.kutil.primitive.IntUtil.toInt
|
||||||
import de.bixilon.minosoft.data.Rarities
|
import de.bixilon.minosoft.data.Rarities
|
||||||
import de.bixilon.minosoft.data.inventory.ItemNBTValues.DISPLAY_COLOR_TAG
|
import de.bixilon.minosoft.data.inventory.ItemNBTValues.DISPLAY_COLOR_TAG
|
||||||
import de.bixilon.minosoft.data.inventory.ItemNBTValues.DISPLAY_LORE_TAG
|
import de.bixilon.minosoft.data.inventory.ItemNBTValues.DISPLAY_LORE_TAG
|
||||||
@ -41,7 +42,6 @@ import de.bixilon.minosoft.data.text.TextFormattable
|
|||||||
import de.bixilon.minosoft.protocol.network.connection.play.PlayConnection
|
import de.bixilon.minosoft.protocol.network.connection.play.PlayConnection
|
||||||
import de.bixilon.minosoft.util.BitByte.isBit
|
import de.bixilon.minosoft.util.BitByte.isBit
|
||||||
import de.bixilon.minosoft.util.KUtil.synchronizedDeepCopy
|
import de.bixilon.minosoft.util.KUtil.synchronizedDeepCopy
|
||||||
import de.bixilon.minosoft.util.KUtil.toInt
|
|
||||||
import de.bixilon.minosoft.util.nbt.tag.NBTUtil.compoundCast
|
import de.bixilon.minosoft.util.nbt.tag.NBTUtil.compoundCast
|
||||||
import de.bixilon.minosoft.util.nbt.tag.NBTUtil.getAndRemove
|
import de.bixilon.minosoft.util.nbt.tag.NBTUtil.getAndRemove
|
||||||
import de.bixilon.minosoft.util.nbt.tag.NBTUtil.listCast
|
import de.bixilon.minosoft.util.nbt.tag.NBTUtil.listCast
|
||||||
|
@ -14,6 +14,7 @@
|
|||||||
package de.bixilon.minosoft.data.language
|
package de.bixilon.minosoft.data.language
|
||||||
|
|
||||||
import de.bixilon.kutil.collections.CollectionUtil.synchronizedListOf
|
import de.bixilon.kutil.collections.CollectionUtil.synchronizedListOf
|
||||||
|
import de.bixilon.kutil.exception.ExceptionUtil.tryCatch
|
||||||
import de.bixilon.minosoft.assets.AssetsManager
|
import de.bixilon.minosoft.assets.AssetsManager
|
||||||
import de.bixilon.minosoft.assets.util.FileUtil.readAsString
|
import de.bixilon.minosoft.assets.util.FileUtil.readAsString
|
||||||
import de.bixilon.minosoft.assets.util.FileUtil.readJsonObject
|
import de.bixilon.minosoft.assets.util.FileUtil.readJsonObject
|
||||||
@ -22,7 +23,6 @@ import de.bixilon.minosoft.data.registries.versions.Version
|
|||||||
import de.bixilon.minosoft.data.text.ChatComponent
|
import de.bixilon.minosoft.data.text.ChatComponent
|
||||||
import de.bixilon.minosoft.data.text.TextComponent
|
import de.bixilon.minosoft.data.text.TextComponent
|
||||||
import de.bixilon.minosoft.protocol.protocol.ProtocolVersions
|
import de.bixilon.minosoft.protocol.protocol.ProtocolVersions
|
||||||
import de.bixilon.minosoft.util.KUtil.tryCatch
|
|
||||||
import java.io.FileNotFoundException
|
import java.io.FileNotFoundException
|
||||||
|
|
||||||
class LanguageManager(
|
class LanguageManager(
|
||||||
|
@ -14,9 +14,10 @@ package de.bixilon.minosoft.data.player
|
|||||||
|
|
||||||
import de.bixilon.kutil.cast.CastUtil.nullCast
|
import de.bixilon.kutil.cast.CastUtil.nullCast
|
||||||
import de.bixilon.kutil.collections.CollectionUtil.synchronizedMapOf
|
import de.bixilon.kutil.collections.CollectionUtil.synchronizedMapOf
|
||||||
import de.bixilon.kutil.general.BooleanUtil.decide
|
|
||||||
import de.bixilon.kutil.math.MMath.clamp
|
import de.bixilon.kutil.math.MMath.clamp
|
||||||
import de.bixilon.kutil.math.MMath.floor
|
import de.bixilon.kutil.math.MMath.floor
|
||||||
|
import de.bixilon.kutil.primitive.BooleanUtil.decide
|
||||||
|
import de.bixilon.kutil.time.TimeUtil
|
||||||
import de.bixilon.minosoft.data.Axes
|
import de.bixilon.minosoft.data.Axes
|
||||||
import de.bixilon.minosoft.data.abilities.Gamemodes
|
import de.bixilon.minosoft.data.abilities.Gamemodes
|
||||||
import de.bixilon.minosoft.data.abilities.ItemCooldown
|
import de.bixilon.minosoft.data.abilities.ItemCooldown
|
||||||
@ -54,7 +55,6 @@ import de.bixilon.minosoft.protocol.network.connection.play.PlayConnection
|
|||||||
import de.bixilon.minosoft.protocol.packets.c2s.play.*
|
import de.bixilon.minosoft.protocol.packets.c2s.play.*
|
||||||
import de.bixilon.minosoft.protocol.packets.s2c.play.TagsS2CP
|
import de.bixilon.minosoft.protocol.packets.s2c.play.TagsS2CP
|
||||||
import de.bixilon.minosoft.protocol.protocol.ProtocolDefinition
|
import de.bixilon.minosoft.protocol.protocol.ProtocolDefinition
|
||||||
import de.bixilon.minosoft.util.KUtil
|
|
||||||
import de.bixilon.minosoft.util.KUtil.toResourceLocation
|
import de.bixilon.minosoft.util.KUtil.toResourceLocation
|
||||||
import de.bixilon.minosoft.util.Previous
|
import de.bixilon.minosoft.util.Previous
|
||||||
import glm_.func.cos
|
import glm_.func.cos
|
||||||
@ -218,7 +218,7 @@ class LocalPlayerEntity(
|
|||||||
if (connection.profiles.rendering.movement.disablePacketSending) {
|
if (connection.profiles.rendering.movement.disablePacketSending) {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
val currentTime = KUtil.time
|
val currentTime = TimeUtil.time
|
||||||
val isSprinting = isSprinting
|
val isSprinting = isSprinting
|
||||||
if (isSprinting != lastSprinting) {
|
if (isSprinting != lastSprinting) {
|
||||||
connection.sendPacket(EntityActionC2SP(this, connection, isSprinting.decide(EntityActionC2SP.EntityActions.START_SPRINTING, EntityActionC2SP.EntityActions.STOP_SPRINTING)))
|
connection.sendPacket(EntityActionC2SP(this, connection, isSprinting.decide(EntityActionC2SP.EntityActions.START_SPRINTING, EntityActionC2SP.EntityActions.STOP_SPRINTING)))
|
||||||
|
@ -1,10 +1,10 @@
|
|||||||
package de.bixilon.minosoft.data.player.properties
|
package de.bixilon.minosoft.data.player.properties
|
||||||
|
|
||||||
import com.fasterxml.jackson.annotation.JsonInclude
|
import com.fasterxml.jackson.annotation.JsonInclude
|
||||||
|
import de.bixilon.kutil.json.JsonUtil.toJsonList
|
||||||
|
import de.bixilon.kutil.uuid.UUIDUtil.trim
|
||||||
import de.bixilon.minosoft.assets.util.FileUtil.readJsonObject
|
import de.bixilon.minosoft.assets.util.FileUtil.readJsonObject
|
||||||
import de.bixilon.minosoft.data.player.properties.textures.PlayerTextures
|
import de.bixilon.minosoft.data.player.properties.textures.PlayerTextures
|
||||||
import de.bixilon.minosoft.util.KUtil.listCast
|
|
||||||
import de.bixilon.minosoft.util.KUtil.trim
|
|
||||||
import de.bixilon.minosoft.util.Util
|
import de.bixilon.minosoft.util.Util
|
||||||
import java.net.URL
|
import java.net.URL
|
||||||
import java.util.*
|
import java.util.*
|
||||||
@ -24,7 +24,7 @@ class PlayerProperties(
|
|||||||
|
|
||||||
var textures: PlayerTextures? = null
|
var textures: PlayerTextures? = null
|
||||||
|
|
||||||
data["properties"]?.listCast()?.let {
|
data["properties"]?.toJsonList()?.let {
|
||||||
for (property in it) {
|
for (property in it) {
|
||||||
check(property is Map<*, *>)
|
check(property is Map<*, *>)
|
||||||
when (val name = property["name"]) {
|
when (val name = property["name"]) {
|
||||||
|
@ -1,9 +1,9 @@
|
|||||||
package de.bixilon.minosoft.data.player.properties.textures
|
package de.bixilon.minosoft.data.player.properties.textures
|
||||||
|
|
||||||
import com.fasterxml.jackson.annotation.JsonIgnore
|
import com.fasterxml.jackson.annotation.JsonIgnore
|
||||||
|
import de.bixilon.kutil.url.URLUtil.checkWeb
|
||||||
import de.bixilon.minosoft.assets.util.FileAssetsUtil
|
import de.bixilon.minosoft.assets.util.FileAssetsUtil
|
||||||
import de.bixilon.minosoft.assets.util.FileUtil
|
import de.bixilon.minosoft.assets.util.FileUtil
|
||||||
import de.bixilon.minosoft.util.KUtil.check
|
|
||||||
import java.net.URL
|
import java.net.URL
|
||||||
|
|
||||||
open class PlayerTexture(
|
open class PlayerTexture(
|
||||||
@ -14,7 +14,7 @@ open class PlayerTexture(
|
|||||||
private set
|
private set
|
||||||
|
|
||||||
init {
|
init {
|
||||||
url.check()
|
url.checkWeb()
|
||||||
|
|
||||||
check(urlMatches(url, ALLOWED_DOMAINS) && !urlMatches(url, BLOCKED_DOMAINS)) { "URL hostname is not allowed!" }
|
check(urlMatches(url, ALLOWED_DOMAINS) && !urlMatches(url, BLOCKED_DOMAINS)) { "URL hostname is not allowed!" }
|
||||||
}
|
}
|
||||||
|
@ -2,8 +2,8 @@ package de.bixilon.minosoft.data.player.properties.textures
|
|||||||
|
|
||||||
import com.fasterxml.jackson.annotation.JsonInclude
|
import com.fasterxml.jackson.annotation.JsonInclude
|
||||||
import com.fasterxml.jackson.module.kotlin.convertValue
|
import com.fasterxml.jackson.module.kotlin.convertValue
|
||||||
import de.bixilon.minosoft.util.KUtil.toLong
|
import de.bixilon.kutil.primitive.LongUtil.toLong
|
||||||
import de.bixilon.minosoft.util.Util
|
import de.bixilon.kutil.uuid.UUIDUtil.toUUID
|
||||||
import de.bixilon.minosoft.util.YggdrasilUtil
|
import de.bixilon.minosoft.util.YggdrasilUtil
|
||||||
import de.bixilon.minosoft.util.json.Jackson
|
import de.bixilon.minosoft.util.json.Jackson
|
||||||
import de.bixilon.minosoft.util.nbt.tag.NBTUtil.compoundCast
|
import de.bixilon.minosoft.util.nbt.tag.NBTUtil.compoundCast
|
||||||
@ -28,7 +28,7 @@ class PlayerTextures(
|
|||||||
val textures = json["textures"]?.compoundCast()
|
val textures = json["textures"]?.compoundCast()
|
||||||
return PlayerTextures(
|
return PlayerTextures(
|
||||||
name = json["profileName"]?.toString(),
|
name = json["profileName"]?.toString(),
|
||||||
uuid = json["profileId"]?.toString()?.let { Util.getUUIDFromString(it) },
|
uuid = json["profileId"]?.toString()?.toUUID(),
|
||||||
date = json["timestamp"]?.toLong()?.let { Date(it) },
|
date = json["timestamp"]?.toLong()?.let { Date(it) },
|
||||||
skin = textures?.get("SKIN")?.compoundCast()?.let { return@let Jackson.MAPPER.convertValue(it) },
|
skin = textures?.get("SKIN")?.compoundCast()?.let { return@let Jackson.MAPPER.convertValue(it) },
|
||||||
cape = textures?.get("CAPE")?.compoundCast()?.let { return@let Jackson.MAPPER.convertValue(it) },
|
cape = textures?.get("CAPE")?.compoundCast()?.let { return@let Jackson.MAPPER.convertValue(it) },
|
||||||
|
@ -15,10 +15,10 @@ package de.bixilon.minosoft.data.registries
|
|||||||
|
|
||||||
import com.google.gson.JsonArray
|
import com.google.gson.JsonArray
|
||||||
import com.google.gson.JsonPrimitive
|
import com.google.gson.JsonPrimitive
|
||||||
|
import de.bixilon.kutil.primitive.IntUtil.toInt
|
||||||
import de.bixilon.minosoft.data.Axes
|
import de.bixilon.minosoft.data.Axes
|
||||||
import de.bixilon.minosoft.data.direction.Directions
|
import de.bixilon.minosoft.data.direction.Directions
|
||||||
import de.bixilon.minosoft.gui.rendering.util.VecUtil.getMinDistanceDirection
|
import de.bixilon.minosoft.gui.rendering.util.VecUtil.getMinDistanceDirection
|
||||||
import de.bixilon.minosoft.util.KUtil.toInt
|
|
||||||
import glm_.vec3.Vec3d
|
import glm_.vec3.Vec3d
|
||||||
import glm_.vec3.Vec3t
|
import glm_.vec3.Vec3t
|
||||||
|
|
||||||
|
@ -13,8 +13,9 @@
|
|||||||
package de.bixilon.minosoft.data.registries.biomes
|
package de.bixilon.minosoft.data.registries.biomes
|
||||||
|
|
||||||
import de.bixilon.kutil.cast.CastUtil.nullCast
|
import de.bixilon.kutil.cast.CastUtil.nullCast
|
||||||
import de.bixilon.kutil.cast.CastUtil.unsafeCast
|
|
||||||
import de.bixilon.kutil.math.MMath.clamp
|
import de.bixilon.kutil.math.MMath.clamp
|
||||||
|
import de.bixilon.kutil.primitive.FloatUtil.toFloat
|
||||||
|
import de.bixilon.kutil.primitive.IntUtil.toInt
|
||||||
import de.bixilon.minosoft.data.registries.ResourceLocation
|
import de.bixilon.minosoft.data.registries.ResourceLocation
|
||||||
import de.bixilon.minosoft.data.registries.registries.Registries
|
import de.bixilon.minosoft.data.registries.registries.Registries
|
||||||
import de.bixilon.minosoft.data.registries.registries.registry.RegistryItem
|
import de.bixilon.minosoft.data.registries.registries.registry.RegistryItem
|
||||||
@ -24,7 +25,6 @@ import de.bixilon.minosoft.data.text.RGBColor.Companion.asRGBColor
|
|||||||
import de.bixilon.minosoft.gui.rendering.RenderConstants
|
import de.bixilon.minosoft.gui.rendering.RenderConstants
|
||||||
import de.bixilon.minosoft.gui.rendering.tint.TintManager
|
import de.bixilon.minosoft.gui.rendering.tint.TintManager
|
||||||
import de.bixilon.minosoft.protocol.protocol.ProtocolDefinition
|
import de.bixilon.minosoft.protocol.protocol.ProtocolDefinition
|
||||||
import de.bixilon.minosoft.util.KUtil.toInt
|
|
||||||
import java.util.*
|
import java.util.*
|
||||||
|
|
||||||
data class Biome(
|
data class Biome(
|
||||||
@ -63,10 +63,10 @@ data class Biome(
|
|||||||
check(registries != null) { "Registries is null!" }
|
check(registries != null) { "Registries is null!" }
|
||||||
return Biome(
|
return Biome(
|
||||||
resourceLocation = resourceLocation,
|
resourceLocation = resourceLocation,
|
||||||
depth = data["depth"]?.unsafeCast<Float>() ?: 0.0f,
|
depth = data["depth"]?.toFloat() ?: 0.0f,
|
||||||
scale = data["scale"]?.unsafeCast<Float>() ?: 0.0f,
|
scale = data["scale"]?.toFloat() ?: 0.0f,
|
||||||
temperature = data["temperature"]?.unsafeCast<Float>() ?: 0.0f,
|
temperature = data["temperature"]?.toFloat() ?: 0.0f,
|
||||||
downfall = data["downfall"]?.unsafeCast<Float>() ?: 0.0f,
|
downfall = data["downfall"]?.toFloat() ?: 0.0f,
|
||||||
waterColor = TintManager.getJsonColor(data["water_color"]?.toInt() ?: 0),
|
waterColor = TintManager.getJsonColor(data["water_color"]?.toInt() ?: 0),
|
||||||
waterFogColor = TintManager.getJsonColor(data["water_fog_color"]?.toInt() ?: 0),
|
waterFogColor = TintManager.getJsonColor(data["water_fog_color"]?.toInt() ?: 0),
|
||||||
category = registries.biomeCategoryRegistry[data["category"]?.toInt() ?: -1] ?: DEFAULT_CATEGORY,
|
category = registries.biomeCategoryRegistry[data["category"]?.toInt() ?: -1] ?: DEFAULT_CATEGORY,
|
||||||
|
@ -13,6 +13,9 @@
|
|||||||
package de.bixilon.minosoft.data.registries.blocks
|
package de.bixilon.minosoft.data.registries.blocks
|
||||||
|
|
||||||
import de.bixilon.kutil.cast.CastUtil.unsafeCast
|
import de.bixilon.kutil.cast.CastUtil.unsafeCast
|
||||||
|
import de.bixilon.kutil.primitive.BooleanUtil.toBoolean
|
||||||
|
import de.bixilon.kutil.primitive.FloatUtil.toFloat
|
||||||
|
import de.bixilon.kutil.primitive.IntUtil.toInt
|
||||||
import de.bixilon.minosoft.data.registries.ResourceLocation
|
import de.bixilon.minosoft.data.registries.ResourceLocation
|
||||||
import de.bixilon.minosoft.data.registries.VoxelShape
|
import de.bixilon.minosoft.data.registries.VoxelShape
|
||||||
import de.bixilon.minosoft.data.registries.blocks.properties.BlockProperties
|
import de.bixilon.minosoft.data.registries.blocks.properties.BlockProperties
|
||||||
@ -20,8 +23,6 @@ import de.bixilon.minosoft.data.registries.blocks.types.Block
|
|||||||
import de.bixilon.minosoft.data.registries.materials.Material
|
import de.bixilon.minosoft.data.registries.materials.Material
|
||||||
import de.bixilon.minosoft.data.registries.registries.Registries
|
import de.bixilon.minosoft.data.registries.registries.Registries
|
||||||
import de.bixilon.minosoft.gui.rendering.models.baked.block.BakedBlockModel
|
import de.bixilon.minosoft.gui.rendering.models.baked.block.BakedBlockModel
|
||||||
import de.bixilon.minosoft.util.KUtil.toBoolean
|
|
||||||
import de.bixilon.minosoft.util.KUtil.toInt
|
|
||||||
import de.bixilon.minosoft.util.nbt.tag.NBTUtil.compoundCast
|
import de.bixilon.minosoft.util.nbt.tag.NBTUtil.compoundCast
|
||||||
import java.util.*
|
import java.util.*
|
||||||
|
|
||||||
@ -136,15 +137,15 @@ data class BlockState(
|
|||||||
collisionShape = collisionShape,
|
collisionShape = collisionShape,
|
||||||
occlusionShape = occlusionShape,
|
occlusionShape = occlusionShape,
|
||||||
outlineShape = outlineShape,
|
outlineShape = outlineShape,
|
||||||
hardness = data["hardness"]?.unsafeCast<Float>() ?: 1.0f,
|
hardness = data["hardness"]?.toFloat() ?: 1.0f,
|
||||||
requiresTool = data["requires_tool"]?.toBoolean() ?: material.soft,
|
requiresTool = data["requires_tool"]?.toBoolean() ?: material.soft,
|
||||||
breakSoundEvent = data["break_sound_type"]?.toInt()?.let { registries.soundEventRegistry[it] },
|
breakSoundEvent = data["break_sound_type"]?.toInt()?.let { registries.soundEventRegistry[it] },
|
||||||
stepSoundEvent = data["step_sound_type"]?.toInt()?.let { registries.soundEventRegistry[it] },
|
stepSoundEvent = data["step_sound_type"]?.toInt()?.let { registries.soundEventRegistry[it] },
|
||||||
placeSoundEvent = data["place_sound_type"]?.toInt()?.let { registries.soundEventRegistry[it] },
|
placeSoundEvent = data["place_sound_type"]?.toInt()?.let { registries.soundEventRegistry[it] },
|
||||||
hitSoundEvent = data["hit_sound_type"]?.toInt()?.let { registries.soundEventRegistry[it] },
|
hitSoundEvent = data["hit_sound_type"]?.toInt()?.let { registries.soundEventRegistry[it] },
|
||||||
fallSoundEvent = data["fall_sound_type"]?.toInt()?.let { registries.soundEventRegistry[it] },
|
fallSoundEvent = data["fall_sound_type"]?.toInt()?.let { registries.soundEventRegistry[it] },
|
||||||
soundEventVolume = data["sound_type_volume"]?.unsafeCast<Float>() ?: 1.0f,
|
soundEventVolume = data["sound_type_volume"]?.toFloat() ?: 1.0f,
|
||||||
soundEventPitch = data["sound_type_pitch"]?.unsafeCast<Float>() ?: 1.0f,
|
soundEventPitch = data["sound_type_pitch"]?.toFloat() ?: 1.0f,
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -13,6 +13,7 @@
|
|||||||
|
|
||||||
package de.bixilon.minosoft.data.registries.blocks.entites
|
package de.bixilon.minosoft.data.registries.blocks.entites
|
||||||
|
|
||||||
|
import de.bixilon.kutil.json.JsonUtil.toJsonList
|
||||||
import de.bixilon.minosoft.data.entities.block.BlockEntity
|
import de.bixilon.minosoft.data.entities.block.BlockEntity
|
||||||
import de.bixilon.minosoft.data.entities.block.BlockEntityFactory
|
import de.bixilon.minosoft.data.entities.block.BlockEntityFactory
|
||||||
import de.bixilon.minosoft.data.entities.block.DefaultBlockEntityMetaDataFactory
|
import de.bixilon.minosoft.data.entities.block.DefaultBlockEntityMetaDataFactory
|
||||||
@ -22,7 +23,6 @@ import de.bixilon.minosoft.data.registries.registries.Registries
|
|||||||
import de.bixilon.minosoft.data.registries.registries.registry.RegistryItem
|
import de.bixilon.minosoft.data.registries.registries.registry.RegistryItem
|
||||||
import de.bixilon.minosoft.data.registries.registries.registry.ResourceLocationDeserializer
|
import de.bixilon.minosoft.data.registries.registries.registry.ResourceLocationDeserializer
|
||||||
import de.bixilon.minosoft.protocol.network.connection.play.PlayConnection
|
import de.bixilon.minosoft.protocol.network.connection.play.PlayConnection
|
||||||
import de.bixilon.minosoft.util.KUtil.listCast
|
|
||||||
|
|
||||||
data class BlockEntityType(
|
data class BlockEntityType(
|
||||||
override val resourceLocation: ResourceLocation,
|
override val resourceLocation: ResourceLocation,
|
||||||
@ -42,7 +42,7 @@ data class BlockEntityType(
|
|||||||
|
|
||||||
val blocks: MutableSet<Block> = mutableSetOf()
|
val blocks: MutableSet<Block> = mutableSetOf()
|
||||||
|
|
||||||
for (block in data["blocks"]?.listCast()!!) {
|
for (block in data["blocks"]?.toJsonList()!!) {
|
||||||
blocks += registries.blockRegistry[block] ?: continue
|
blocks += registries.blockRegistry[block] ?: continue
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -13,7 +13,7 @@
|
|||||||
|
|
||||||
package de.bixilon.minosoft.data.registries.blocks.properties.serializer
|
package de.bixilon.minosoft.data.registries.blocks.properties.serializer
|
||||||
|
|
||||||
import de.bixilon.minosoft.util.KUtil.toBoolean
|
import de.bixilon.kutil.primitive.BooleanUtil.toBoolean
|
||||||
|
|
||||||
object BooleanBlockPropertiesSerializer : BlockPropertiesSerializer {
|
object BooleanBlockPropertiesSerializer : BlockPropertiesSerializer {
|
||||||
|
|
||||||
|
@ -13,7 +13,7 @@
|
|||||||
|
|
||||||
package de.bixilon.minosoft.data.registries.blocks.properties.serializer
|
package de.bixilon.minosoft.data.registries.blocks.properties.serializer
|
||||||
|
|
||||||
import de.bixilon.minosoft.util.KUtil.toInt
|
import de.bixilon.kutil.primitive.IntUtil.toInt
|
||||||
|
|
||||||
object IntBlockPropertiesSerializer : BlockPropertiesSerializer {
|
object IntBlockPropertiesSerializer : BlockPropertiesSerializer {
|
||||||
|
|
||||||
|
@ -14,6 +14,10 @@ package de.bixilon.minosoft.data.registries.blocks.types
|
|||||||
|
|
||||||
import de.bixilon.kutil.cast.CastUtil.nullCast
|
import de.bixilon.kutil.cast.CastUtil.nullCast
|
||||||
import de.bixilon.kutil.cast.CastUtil.unsafeCast
|
import de.bixilon.kutil.cast.CastUtil.unsafeCast
|
||||||
|
import de.bixilon.kutil.json.JsonUtil.asJsonObject
|
||||||
|
import de.bixilon.kutil.primitive.DoubleUtil.toDouble
|
||||||
|
import de.bixilon.kutil.primitive.FloatUtil.toFloat
|
||||||
|
import de.bixilon.kutil.primitive.IntUtil.toInt
|
||||||
import de.bixilon.minosoft.data.entities.block.BlockEntity
|
import de.bixilon.minosoft.data.entities.block.BlockEntity
|
||||||
import de.bixilon.minosoft.data.entities.entities.Entity
|
import de.bixilon.minosoft.data.entities.entities.Entity
|
||||||
import de.bixilon.minosoft.data.inventory.ItemStack
|
import de.bixilon.minosoft.data.inventory.ItemStack
|
||||||
@ -34,9 +38,6 @@ import de.bixilon.minosoft.gui.rendering.camera.target.targets.BlockTarget
|
|||||||
import de.bixilon.minosoft.gui.rendering.input.interaction.InteractionResults
|
import de.bixilon.minosoft.gui.rendering.input.interaction.InteractionResults
|
||||||
import de.bixilon.minosoft.gui.rendering.tint.TintProvider
|
import de.bixilon.minosoft.gui.rendering.tint.TintProvider
|
||||||
import de.bixilon.minosoft.protocol.network.connection.play.PlayConnection
|
import de.bixilon.minosoft.protocol.network.connection.play.PlayConnection
|
||||||
import de.bixilon.minosoft.util.KUtil.mapCast
|
|
||||||
import de.bixilon.minosoft.util.KUtil.toDouble
|
|
||||||
import de.bixilon.minosoft.util.KUtil.toInt
|
|
||||||
import de.bixilon.minosoft.util.nbt.tag.NBTUtil.asCompound
|
import de.bixilon.minosoft.util.nbt.tag.NBTUtil.asCompound
|
||||||
import glm_.vec3.Vec3i
|
import glm_.vec3.Vec3i
|
||||||
import kotlin.random.Random
|
import kotlin.random.Random
|
||||||
@ -46,7 +47,7 @@ open class Block(
|
|||||||
registries: Registries,
|
registries: Registries,
|
||||||
data: Map<String, Any>,
|
data: Map<String, Any>,
|
||||||
) : RegistryItem() {
|
) : RegistryItem() {
|
||||||
open val explosionResistance: Float = data["explosion_resistance"]?.unsafeCast<Float>() ?: 0.0f
|
open val explosionResistance: Float = data["explosion_resistance"]?.toFloat() ?: 0.0f
|
||||||
open val randomOffsetType: RandomOffsetTypes? = data["offset_type"].nullCast<String>()?.let { RandomOffsetTypes[it] }
|
open val randomOffsetType: RandomOffsetTypes? = data["offset_type"].nullCast<String>()?.let { RandomOffsetTypes[it] }
|
||||||
open val tint: ResourceLocation? = data["tint"].nullCast<String>()?.let { ResourceLocation(it) }
|
open val tint: ResourceLocation? = data["tint"].nullCast<String>()?.let { ResourceLocation(it) }
|
||||||
open var blockEntityType: BlockEntityType? = null
|
open var blockEntityType: BlockEntityType? = null
|
||||||
@ -119,7 +120,7 @@ open class Block(
|
|||||||
val properties: MutableMap<BlockProperties, MutableSet<Any>> = mutableMapOf()
|
val properties: MutableMap<BlockProperties, MutableSet<Any>> = mutableMapOf()
|
||||||
|
|
||||||
val states: MutableSet<BlockState> = mutableSetOf()
|
val states: MutableSet<BlockState> = mutableSetOf()
|
||||||
for ((stateId, stateJson) in data["states"]?.mapCast()!!) {
|
for ((stateId, stateJson) in data["states"].asJsonObject()) {
|
||||||
check(stateJson is Map<*, *>) { "Not a state element!" }
|
check(stateJson is Map<*, *>) { "Not a state element!" }
|
||||||
val state = BlockState.deserialize(block, registries, stateJson.asCompound())
|
val state = BlockState.deserialize(block, registries, stateJson.asCompound())
|
||||||
registries.blockStateRegistry[stateId.toInt()] = state
|
registries.blockStateRegistry[stateId.toInt()] = state
|
||||||
|
@ -13,6 +13,8 @@
|
|||||||
|
|
||||||
package de.bixilon.minosoft.data.registries.blocks.types
|
package de.bixilon.minosoft.data.registries.blocks.types
|
||||||
|
|
||||||
|
import de.bixilon.kutil.primitive.BooleanUtil.toBoolean
|
||||||
|
import de.bixilon.kutil.random.RandomUtil.chance
|
||||||
import de.bixilon.minosoft.data.inventory.ItemStack
|
import de.bixilon.minosoft.data.inventory.ItemStack
|
||||||
import de.bixilon.minosoft.data.player.Hands
|
import de.bixilon.minosoft.data.player.Hands
|
||||||
import de.bixilon.minosoft.data.registries.ResourceLocation
|
import de.bixilon.minosoft.data.registries.ResourceLocation
|
||||||
@ -29,8 +31,6 @@ import de.bixilon.minosoft.gui.rendering.particle.types.render.texture.simple.la
|
|||||||
import de.bixilon.minosoft.gui.rendering.util.VecUtil.horizontalPlus
|
import de.bixilon.minosoft.gui.rendering.util.VecUtil.horizontalPlus
|
||||||
import de.bixilon.minosoft.gui.rendering.util.VecUtil.noise
|
import de.bixilon.minosoft.gui.rendering.util.VecUtil.noise
|
||||||
import de.bixilon.minosoft.protocol.network.connection.play.PlayConnection
|
import de.bixilon.minosoft.protocol.network.connection.play.PlayConnection
|
||||||
import de.bixilon.minosoft.util.KUtil.chance
|
|
||||||
import de.bixilon.minosoft.util.KUtil.toBoolean
|
|
||||||
import de.bixilon.minosoft.util.KUtil.toResourceLocation
|
import de.bixilon.minosoft.util.KUtil.toResourceLocation
|
||||||
import glm_.vec3.Vec3
|
import glm_.vec3.Vec3
|
||||||
import glm_.vec3.Vec3d
|
import glm_.vec3.Vec3d
|
||||||
|
@ -13,6 +13,7 @@
|
|||||||
|
|
||||||
package de.bixilon.minosoft.data.registries.blocks.types.wall
|
package de.bixilon.minosoft.data.registries.blocks.types.wall
|
||||||
|
|
||||||
|
import de.bixilon.kutil.random.RandomUtil.chance
|
||||||
import de.bixilon.minosoft.data.direction.Directions
|
import de.bixilon.minosoft.data.direction.Directions
|
||||||
import de.bixilon.minosoft.data.inventory.ItemStack
|
import de.bixilon.minosoft.data.inventory.ItemStack
|
||||||
import de.bixilon.minosoft.data.player.Hands
|
import de.bixilon.minosoft.data.player.Hands
|
||||||
@ -28,7 +29,6 @@ import de.bixilon.minosoft.gui.rendering.input.interaction.InteractionResults
|
|||||||
import de.bixilon.minosoft.gui.rendering.particle.types.render.texture.simple.dust.DustParticle
|
import de.bixilon.minosoft.gui.rendering.particle.types.render.texture.simple.dust.DustParticle
|
||||||
import de.bixilon.minosoft.gui.rendering.util.vec.vec3.Vec3dUtil.EMPTY
|
import de.bixilon.minosoft.gui.rendering.util.vec.vec3.Vec3dUtil.EMPTY
|
||||||
import de.bixilon.minosoft.protocol.network.connection.play.PlayConnection
|
import de.bixilon.minosoft.protocol.network.connection.play.PlayConnection
|
||||||
import de.bixilon.minosoft.util.KUtil.chance
|
|
||||||
import glm_.vec3.Vec3d
|
import glm_.vec3.Vec3d
|
||||||
import glm_.vec3.Vec3i
|
import glm_.vec3.Vec3i
|
||||||
import kotlin.random.Random
|
import kotlin.random.Random
|
||||||
|
@ -1,12 +1,12 @@
|
|||||||
package de.bixilon.minosoft.data.registries.dimension
|
package de.bixilon.minosoft.data.registries.dimension
|
||||||
|
|
||||||
import de.bixilon.kutil.cast.CastUtil.nullCast
|
import de.bixilon.kutil.cast.CastUtil.nullCast
|
||||||
import de.bixilon.kutil.cast.CastUtil.unsafeCast
|
import de.bixilon.kutil.primitive.BooleanUtil.toBoolean
|
||||||
|
import de.bixilon.kutil.primitive.FloatUtil.toFloat
|
||||||
|
import de.bixilon.kutil.primitive.IntUtil.toInt
|
||||||
import de.bixilon.minosoft.data.registries.ResourceLocation
|
import de.bixilon.minosoft.data.registries.ResourceLocation
|
||||||
import de.bixilon.minosoft.gui.rendering.util.VecUtil
|
import de.bixilon.minosoft.gui.rendering.util.VecUtil
|
||||||
import de.bixilon.minosoft.protocol.protocol.ProtocolDefinition
|
import de.bixilon.minosoft.protocol.protocol.ProtocolDefinition
|
||||||
import de.bixilon.minosoft.util.KUtil.toBoolean
|
|
||||||
import de.bixilon.minosoft.util.KUtil.toInt
|
|
||||||
import de.bixilon.minosoft.util.nbt.tag.NBTUtil.get
|
import de.bixilon.minosoft.util.nbt.tag.NBTUtil.get
|
||||||
|
|
||||||
data class DimensionProperties(
|
data class DimensionProperties(
|
||||||
@ -59,7 +59,7 @@ data class DimensionProperties(
|
|||||||
return DimensionProperties(
|
return DimensionProperties(
|
||||||
piglinSafe = data["piglin_safe"]?.toBoolean() ?: false,
|
piglinSafe = data["piglin_safe"]?.toBoolean() ?: false,
|
||||||
natural = data["natural"]?.toBoolean() ?: false,
|
natural = data["natural"]?.toBoolean() ?: false,
|
||||||
ambientLight = data["ambient_light"]?.unsafeCast<Float>() ?: 0.0f,
|
ambientLight = data["ambient_light"]?.toFloat() ?: 0.0f,
|
||||||
infiniBurn = ResourceLocation(data["infiniburn"].nullCast<String>() ?: "infiniburn_overworld"),
|
infiniBurn = ResourceLocation(data["infiniburn"].nullCast<String>() ?: "infiniburn_overworld"),
|
||||||
respawnAnchorWorks = data["respawn_anchor_works"]?.toBoolean() ?: false,
|
respawnAnchorWorks = data["respawn_anchor_works"]?.toBoolean() ?: false,
|
||||||
hasSkyLight = data["has_skylight", "has_sky_light"]?.toBoolean() ?: false,
|
hasSkyLight = data["has_skylight", "has_sky_light"]?.toBoolean() ?: false,
|
||||||
|
@ -13,8 +13,9 @@
|
|||||||
|
|
||||||
package de.bixilon.minosoft.data.registries.effects.attributes
|
package de.bixilon.minosoft.data.registries.effects.attributes
|
||||||
|
|
||||||
import de.bixilon.minosoft.util.KUtil.asUUID
|
import de.bixilon.kutil.uuid.UUIDUtil.toUUID
|
||||||
|
|
||||||
|
|
||||||
object DefaultStatusEffectAttributes {
|
object DefaultStatusEffectAttributes {
|
||||||
val SPRINT_SPEED_BOOST = EntityAttributeModifier("Sprinting speed boost", "662A6B8D-DA3E-4C1C-8813-96EA6097278D".asUUID(), 0.30000001192092896, StatusEffectOperations.MULTIPLY_TOTAL)
|
val SPRINT_SPEED_BOOST = EntityAttributeModifier("Sprinting speed boost", "662A6B8D-DA3E-4C1C-8813-96EA6097278D".toUUID(), 0.30000001192092896, StatusEffectOperations.MULTIPLY_TOTAL)
|
||||||
}
|
}
|
||||||
|
@ -13,7 +13,7 @@
|
|||||||
package de.bixilon.minosoft.data.registries.effects.attributes
|
package de.bixilon.minosoft.data.registries.effects.attributes
|
||||||
|
|
||||||
import de.bixilon.kutil.cast.CastUtil.unsafeCast
|
import de.bixilon.kutil.cast.CastUtil.unsafeCast
|
||||||
import de.bixilon.minosoft.util.Util
|
import de.bixilon.kutil.uuid.UUIDUtil.toUUID
|
||||||
import java.util.*
|
import java.util.*
|
||||||
|
|
||||||
data class EntityAttributeModifier(
|
data class EntityAttributeModifier(
|
||||||
@ -30,7 +30,7 @@ data class EntityAttributeModifier(
|
|||||||
fun deserialize(data: Map<String, Any>): EntityAttributeModifier {
|
fun deserialize(data: Map<String, Any>): EntityAttributeModifier {
|
||||||
return EntityAttributeModifier(
|
return EntityAttributeModifier(
|
||||||
name = data["name"].unsafeCast(),
|
name = data["name"].unsafeCast(),
|
||||||
uuid = Util.getUUIDFromString(data["uuid"].unsafeCast()),
|
uuid = data["uuid"].toString().toUUID(),
|
||||||
amount = data["amount"].unsafeCast(),
|
amount = data["amount"].unsafeCast(),
|
||||||
operation = StatusEffectOperations[data["operation"].unsafeCast<String>()],
|
operation = StatusEffectOperations[data["operation"].unsafeCast<String>()],
|
||||||
)
|
)
|
||||||
|
@ -15,6 +15,7 @@ package de.bixilon.minosoft.data.registries.entities
|
|||||||
|
|
||||||
import de.bixilon.kutil.cast.CastUtil.nullCast
|
import de.bixilon.kutil.cast.CastUtil.nullCast
|
||||||
import de.bixilon.kutil.cast.CastUtil.unsafeCast
|
import de.bixilon.kutil.cast.CastUtil.unsafeCast
|
||||||
|
import de.bixilon.kutil.primitive.BooleanUtil.toBoolean
|
||||||
import de.bixilon.minosoft.data.DefaultEntityFactories
|
import de.bixilon.minosoft.data.DefaultEntityFactories
|
||||||
import de.bixilon.minosoft.data.entities.EntityMetaDataFields
|
import de.bixilon.minosoft.data.entities.EntityMetaDataFields
|
||||||
import de.bixilon.minosoft.data.entities.EntityRotation
|
import de.bixilon.minosoft.data.entities.EntityRotation
|
||||||
@ -28,7 +29,6 @@ import de.bixilon.minosoft.data.registries.registries.registry.ResourceLocationD
|
|||||||
import de.bixilon.minosoft.data.registries.registries.registry.Translatable
|
import de.bixilon.minosoft.data.registries.registries.registry.Translatable
|
||||||
import de.bixilon.minosoft.datafixer.EntityAttributeFixer.fix
|
import de.bixilon.minosoft.datafixer.EntityAttributeFixer.fix
|
||||||
import de.bixilon.minosoft.protocol.network.connection.play.PlayConnection
|
import de.bixilon.minosoft.protocol.network.connection.play.PlayConnection
|
||||||
import de.bixilon.minosoft.util.KUtil.toBoolean
|
|
||||||
import de.bixilon.minosoft.util.KUtil.toResourceLocation
|
import de.bixilon.minosoft.util.KUtil.toResourceLocation
|
||||||
import de.bixilon.minosoft.util.nbt.tag.NBTUtil.compoundCast
|
import de.bixilon.minosoft.util.nbt.tag.NBTUtil.compoundCast
|
||||||
import glm_.vec3.Vec3d
|
import glm_.vec3.Vec3d
|
||||||
|
@ -13,7 +13,8 @@
|
|||||||
|
|
||||||
package de.bixilon.minosoft.data.registries.fluid.lava
|
package de.bixilon.minosoft.data.registries.fluid.lava
|
||||||
|
|
||||||
import de.bixilon.kutil.general.BooleanUtil.decide
|
import de.bixilon.kutil.primitive.BooleanUtil.decide
|
||||||
|
import de.bixilon.kutil.random.RandomUtil.chance
|
||||||
import de.bixilon.minosoft.data.direction.Directions
|
import de.bixilon.minosoft.data.direction.Directions
|
||||||
import de.bixilon.minosoft.data.player.LocalPlayerEntity
|
import de.bixilon.minosoft.data.player.LocalPlayerEntity
|
||||||
import de.bixilon.minosoft.data.registries.ResourceLocation
|
import de.bixilon.minosoft.data.registries.ResourceLocation
|
||||||
@ -30,7 +31,6 @@ import de.bixilon.minosoft.gui.rendering.util.VecUtil.horizontal
|
|||||||
import de.bixilon.minosoft.gui.rendering.util.VecUtil.plus
|
import de.bixilon.minosoft.gui.rendering.util.VecUtil.plus
|
||||||
import de.bixilon.minosoft.gui.rendering.util.VecUtil.toVec3d
|
import de.bixilon.minosoft.gui.rendering.util.VecUtil.toVec3d
|
||||||
import de.bixilon.minosoft.protocol.network.connection.play.PlayConnection
|
import de.bixilon.minosoft.protocol.network.connection.play.PlayConnection
|
||||||
import de.bixilon.minosoft.util.KUtil.chance
|
|
||||||
import de.bixilon.minosoft.util.KUtil.toResourceLocation
|
import de.bixilon.minosoft.util.KUtil.toResourceLocation
|
||||||
import glm_.vec3.Vec3d
|
import glm_.vec3.Vec3d
|
||||||
import glm_.vec3.Vec3i
|
import glm_.vec3.Vec3i
|
||||||
|
@ -13,7 +13,8 @@
|
|||||||
|
|
||||||
package de.bixilon.minosoft.data.registries.fluid.water
|
package de.bixilon.minosoft.data.registries.fluid.water
|
||||||
|
|
||||||
import de.bixilon.kutil.general.BooleanUtil.decide
|
import de.bixilon.kutil.primitive.BooleanUtil.decide
|
||||||
|
import de.bixilon.kutil.random.RandomUtil.chance
|
||||||
import de.bixilon.minosoft.data.player.LocalPlayerEntity
|
import de.bixilon.minosoft.data.player.LocalPlayerEntity
|
||||||
import de.bixilon.minosoft.data.registries.ResourceLocation
|
import de.bixilon.minosoft.data.registries.ResourceLocation
|
||||||
import de.bixilon.minosoft.data.registries.blocks.BlockState
|
import de.bixilon.minosoft.data.registries.blocks.BlockState
|
||||||
@ -33,7 +34,6 @@ import de.bixilon.minosoft.gui.rendering.tint.WaterTintProvider
|
|||||||
import de.bixilon.minosoft.gui.rendering.util.VecUtil.plus
|
import de.bixilon.minosoft.gui.rendering.util.VecUtil.plus
|
||||||
import de.bixilon.minosoft.gui.rendering.util.VecUtil.toVec3d
|
import de.bixilon.minosoft.gui.rendering.util.VecUtil.toVec3d
|
||||||
import de.bixilon.minosoft.protocol.network.connection.play.PlayConnection
|
import de.bixilon.minosoft.protocol.network.connection.play.PlayConnection
|
||||||
import de.bixilon.minosoft.util.KUtil.chance
|
|
||||||
import de.bixilon.minosoft.util.KUtil.toResourceLocation
|
import de.bixilon.minosoft.util.KUtil.toResourceLocation
|
||||||
import glm_.vec3.Vec3d
|
import glm_.vec3.Vec3d
|
||||||
import glm_.vec3.Vec3i
|
import glm_.vec3.Vec3i
|
||||||
|
@ -13,10 +13,10 @@
|
|||||||
package de.bixilon.minosoft.data.registries.inventory
|
package de.bixilon.minosoft.data.registries.inventory
|
||||||
|
|
||||||
import de.bixilon.kutil.cast.CastUtil.unsafeCast
|
import de.bixilon.kutil.cast.CastUtil.unsafeCast
|
||||||
|
import de.bixilon.kutil.primitive.BooleanUtil.toBoolean
|
||||||
import de.bixilon.minosoft.data.registries.registries.Registries
|
import de.bixilon.minosoft.data.registries.registries.Registries
|
||||||
import de.bixilon.minosoft.data.registries.registries.registry.IdDeserializer
|
import de.bixilon.minosoft.data.registries.registries.registry.IdDeserializer
|
||||||
import de.bixilon.minosoft.data.registries.registries.registry.RegistryFakeEnumerable
|
import de.bixilon.minosoft.data.registries.registries.registry.RegistryFakeEnumerable
|
||||||
import de.bixilon.minosoft.util.KUtil.toBoolean
|
|
||||||
|
|
||||||
data class CreativeModeTab(
|
data class CreativeModeTab(
|
||||||
override val name: String,
|
override val name: String,
|
||||||
|
@ -13,7 +13,10 @@
|
|||||||
|
|
||||||
package de.bixilon.minosoft.data.registries.items
|
package de.bixilon.minosoft.data.registries.items
|
||||||
|
|
||||||
import de.bixilon.kutil.general.BooleanUtil.decide
|
import de.bixilon.kutil.primitive.BooleanUtil.decide
|
||||||
|
import de.bixilon.kutil.primitive.BooleanUtil.toBoolean
|
||||||
|
import de.bixilon.kutil.primitive.FloatUtil.toFloat
|
||||||
|
import de.bixilon.kutil.primitive.IntUtil.toInt
|
||||||
import de.bixilon.minosoft.data.abilities.Gamemodes
|
import de.bixilon.minosoft.data.abilities.Gamemodes
|
||||||
import de.bixilon.minosoft.data.inventory.ItemStack
|
import de.bixilon.minosoft.data.inventory.ItemStack
|
||||||
import de.bixilon.minosoft.data.player.Hands
|
import de.bixilon.minosoft.data.player.Hands
|
||||||
@ -22,9 +25,6 @@ import de.bixilon.minosoft.data.registries.registries.Registries
|
|||||||
import de.bixilon.minosoft.gui.rendering.gui.hud.elements.hotbar.HotbarHungerElement
|
import de.bixilon.minosoft.gui.rendering.gui.hud.elements.hotbar.HotbarHungerElement
|
||||||
import de.bixilon.minosoft.gui.rendering.input.interaction.InteractionResults
|
import de.bixilon.minosoft.gui.rendering.input.interaction.InteractionResults
|
||||||
import de.bixilon.minosoft.protocol.network.connection.play.PlayConnection
|
import de.bixilon.minosoft.protocol.network.connection.play.PlayConnection
|
||||||
import de.bixilon.minosoft.util.KUtil.toBoolean
|
|
||||||
import de.bixilon.minosoft.util.KUtil.toFloat
|
|
||||||
import de.bixilon.minosoft.util.KUtil.toInt
|
|
||||||
import de.bixilon.minosoft.util.nbt.tag.NBTUtil.asCompound
|
import de.bixilon.minosoft.util.nbt.tag.NBTUtil.asCompound
|
||||||
|
|
||||||
open class FoodItem(
|
open class FoodItem(
|
||||||
|
@ -13,6 +13,8 @@
|
|||||||
package de.bixilon.minosoft.data.registries.items
|
package de.bixilon.minosoft.data.registries.items
|
||||||
|
|
||||||
import de.bixilon.kutil.cast.CastUtil.unsafeCast
|
import de.bixilon.kutil.cast.CastUtil.unsafeCast
|
||||||
|
import de.bixilon.kutil.primitive.BooleanUtil.toBoolean
|
||||||
|
import de.bixilon.kutil.primitive.IntUtil.toInt
|
||||||
import de.bixilon.minosoft.data.Rarities
|
import de.bixilon.minosoft.data.Rarities
|
||||||
import de.bixilon.minosoft.data.inventory.ItemStack
|
import de.bixilon.minosoft.data.inventory.ItemStack
|
||||||
import de.bixilon.minosoft.data.player.Hands
|
import de.bixilon.minosoft.data.player.Hands
|
||||||
@ -45,8 +47,6 @@ import de.bixilon.minosoft.gui.rendering.camera.target.targets.BlockTarget
|
|||||||
import de.bixilon.minosoft.gui.rendering.camera.target.targets.EntityTarget
|
import de.bixilon.minosoft.gui.rendering.camera.target.targets.EntityTarget
|
||||||
import de.bixilon.minosoft.gui.rendering.input.interaction.InteractionResults
|
import de.bixilon.minosoft.gui.rendering.input.interaction.InteractionResults
|
||||||
import de.bixilon.minosoft.protocol.network.connection.play.PlayConnection
|
import de.bixilon.minosoft.protocol.network.connection.play.PlayConnection
|
||||||
import de.bixilon.minosoft.util.KUtil.toBoolean
|
|
||||||
import de.bixilon.minosoft.util.KUtil.toInt
|
|
||||||
import de.bixilon.minosoft.util.KUtil.toResourceLocation
|
import de.bixilon.minosoft.util.KUtil.toResourceLocation
|
||||||
|
|
||||||
open class Item(
|
open class Item(
|
||||||
|
@ -13,11 +13,11 @@
|
|||||||
|
|
||||||
package de.bixilon.minosoft.data.registries.items
|
package de.bixilon.minosoft.data.registries.items
|
||||||
|
|
||||||
|
import de.bixilon.kutil.primitive.IntUtil.toInt
|
||||||
import de.bixilon.minosoft.data.registries.ResourceLocation
|
import de.bixilon.minosoft.data.registries.ResourceLocation
|
||||||
import de.bixilon.minosoft.data.registries.entities.EntityType
|
import de.bixilon.minosoft.data.registries.entities.EntityType
|
||||||
import de.bixilon.minosoft.data.registries.registries.Registries
|
import de.bixilon.minosoft.data.registries.registries.Registries
|
||||||
import de.bixilon.minosoft.data.text.RGBColor.Companion.asRGBColor
|
import de.bixilon.minosoft.data.text.RGBColor.Companion.asRGBColor
|
||||||
import de.bixilon.minosoft.util.KUtil.toInt
|
|
||||||
|
|
||||||
open class SpawnEggItem(
|
open class SpawnEggItem(
|
||||||
resourceLocation: ResourceLocation,
|
resourceLocation: ResourceLocation,
|
||||||
|
@ -14,6 +14,7 @@
|
|||||||
package de.bixilon.minosoft.data.registries.items.armor
|
package de.bixilon.minosoft.data.registries.items.armor
|
||||||
|
|
||||||
import de.bixilon.kutil.cast.CastUtil.unsafeCast
|
import de.bixilon.kutil.cast.CastUtil.unsafeCast
|
||||||
|
import de.bixilon.kutil.primitive.FloatUtil.toFloat
|
||||||
import de.bixilon.minosoft.data.inventory.InventorySlots
|
import de.bixilon.minosoft.data.inventory.InventorySlots
|
||||||
import de.bixilon.minosoft.data.registries.ResourceLocation
|
import de.bixilon.minosoft.data.registries.ResourceLocation
|
||||||
import de.bixilon.minosoft.data.registries.items.Item
|
import de.bixilon.minosoft.data.registries.items.Item
|
||||||
@ -24,8 +25,8 @@ open class ArmorItem(
|
|||||||
registries: Registries,
|
registries: Registries,
|
||||||
data: Map<String, Any>,
|
data: Map<String, Any>,
|
||||||
) : Item(resourceLocation, registries, data) {
|
) : Item(resourceLocation, registries, data) {
|
||||||
val protection = data["defense"].unsafeCast<Float>()
|
val protection = data["defense"].toFloat()
|
||||||
val toughness = data["toughness"].unsafeCast<Float>()
|
val toughness = data["toughness"].toFloat()
|
||||||
val equipmentSlot = data["equipment_slot"].unsafeCast<String>().let { InventorySlots.EquipmentSlots[it] }
|
val equipmentSlot = data["equipment_slot"].unsafeCast<String>().let { InventorySlots.EquipmentSlots[it] }
|
||||||
val knockbackResistance = data["knockback_resistance"]?.unsafeCast<Float>() ?: 0.0f
|
val knockbackResistance = data["knockback_resistance"]?.toFloat() ?: 0.0f
|
||||||
}
|
}
|
||||||
|
@ -14,10 +14,10 @@
|
|||||||
package de.bixilon.minosoft.data.registries.items.armor
|
package de.bixilon.minosoft.data.registries.items.armor
|
||||||
|
|
||||||
import de.bixilon.kutil.cast.CastUtil.nullCast
|
import de.bixilon.kutil.cast.CastUtil.nullCast
|
||||||
|
import de.bixilon.kutil.primitive.IntUtil.toInt
|
||||||
import de.bixilon.minosoft.data.registries.ResourceLocation
|
import de.bixilon.minosoft.data.registries.ResourceLocation
|
||||||
import de.bixilon.minosoft.data.registries.items.Item
|
import de.bixilon.minosoft.data.registries.items.Item
|
||||||
import de.bixilon.minosoft.data.registries.registries.Registries
|
import de.bixilon.minosoft.data.registries.registries.Registries
|
||||||
import de.bixilon.minosoft.util.KUtil.toInt
|
|
||||||
|
|
||||||
open class HorseArmorItem(
|
open class HorseArmorItem(
|
||||||
resourceLocation: ResourceLocation,
|
resourceLocation: ResourceLocation,
|
||||||
|
@ -13,6 +13,8 @@
|
|||||||
|
|
||||||
package de.bixilon.minosoft.data.registries.items.tools
|
package de.bixilon.minosoft.data.registries.items.tools
|
||||||
|
|
||||||
|
import de.bixilon.kutil.json.JsonUtil.toJsonObject
|
||||||
|
import de.bixilon.kutil.primitive.IntUtil.toInt
|
||||||
import de.bixilon.minosoft.data.inventory.ItemStack
|
import de.bixilon.minosoft.data.inventory.ItemStack
|
||||||
import de.bixilon.minosoft.data.player.Hands
|
import de.bixilon.minosoft.data.player.Hands
|
||||||
import de.bixilon.minosoft.data.registries.ResourceLocation
|
import de.bixilon.minosoft.data.registries.ResourceLocation
|
||||||
@ -21,8 +23,6 @@ import de.bixilon.minosoft.data.registries.registries.Registries
|
|||||||
import de.bixilon.minosoft.gui.rendering.camera.target.targets.BlockTarget
|
import de.bixilon.minosoft.gui.rendering.camera.target.targets.BlockTarget
|
||||||
import de.bixilon.minosoft.gui.rendering.input.interaction.InteractionResults
|
import de.bixilon.minosoft.gui.rendering.input.interaction.InteractionResults
|
||||||
import de.bixilon.minosoft.protocol.network.connection.play.PlayConnection
|
import de.bixilon.minosoft.protocol.network.connection.play.PlayConnection
|
||||||
import de.bixilon.minosoft.util.KUtil.mapCast
|
|
||||||
import de.bixilon.minosoft.util.KUtil.toInt
|
|
||||||
import de.bixilon.minosoft.util.KUtil.toResourceLocation
|
import de.bixilon.minosoft.util.KUtil.toResourceLocation
|
||||||
|
|
||||||
open class AxeItem(
|
open class AxeItem(
|
||||||
@ -31,7 +31,7 @@ open class AxeItem(
|
|||||||
data: Map<String, Any>,
|
data: Map<String, Any>,
|
||||||
) : MiningToolItem(resourceLocation, registries, data) {
|
) : MiningToolItem(resourceLocation, registries, data) {
|
||||||
override val diggableTag: ResourceLocation = AXE_MINEABLE_TAG
|
override val diggableTag: ResourceLocation = AXE_MINEABLE_TAG
|
||||||
val strippableBlocks: Map<Block, Block>? = data["strippables_blocks"]?.mapCast()?.let {
|
val strippableBlocks: Map<Block, Block>? = data["strippables_blocks"]?.toJsonObject()?.let {
|
||||||
val entries: MutableMap<Block, Block> = mutableMapOf()
|
val entries: MutableMap<Block, Block> = mutableMapOf()
|
||||||
for ((origin, target) in it) {
|
for ((origin, target) in it) {
|
||||||
entries[registries.blockRegistry[origin.toInt()]] = registries.blockRegistry[target]!!
|
entries[registries.blockRegistry[origin.toInt()]] = registries.blockRegistry[target]!!
|
||||||
|
@ -13,6 +13,8 @@
|
|||||||
|
|
||||||
package de.bixilon.minosoft.data.registries.items.tools
|
package de.bixilon.minosoft.data.registries.items.tools
|
||||||
|
|
||||||
|
import de.bixilon.kutil.json.JsonUtil.toJsonObject
|
||||||
|
import de.bixilon.kutil.primitive.IntUtil.toInt
|
||||||
import de.bixilon.minosoft.data.direction.Directions
|
import de.bixilon.minosoft.data.direction.Directions
|
||||||
import de.bixilon.minosoft.data.inventory.ItemStack
|
import de.bixilon.minosoft.data.inventory.ItemStack
|
||||||
import de.bixilon.minosoft.data.player.Hands
|
import de.bixilon.minosoft.data.player.Hands
|
||||||
@ -24,8 +26,6 @@ import de.bixilon.minosoft.gui.rendering.camera.target.targets.BlockTarget
|
|||||||
import de.bixilon.minosoft.gui.rendering.input.interaction.InteractionResults
|
import de.bixilon.minosoft.gui.rendering.input.interaction.InteractionResults
|
||||||
import de.bixilon.minosoft.gui.rendering.util.VecUtil.plus
|
import de.bixilon.minosoft.gui.rendering.util.VecUtil.plus
|
||||||
import de.bixilon.minosoft.protocol.network.connection.play.PlayConnection
|
import de.bixilon.minosoft.protocol.network.connection.play.PlayConnection
|
||||||
import de.bixilon.minosoft.util.KUtil.mapCast
|
|
||||||
import de.bixilon.minosoft.util.KUtil.toInt
|
|
||||||
import de.bixilon.minosoft.util.KUtil.toResourceLocation
|
import de.bixilon.minosoft.util.KUtil.toResourceLocation
|
||||||
|
|
||||||
open class HoeItem(
|
open class HoeItem(
|
||||||
@ -34,7 +34,7 @@ open class HoeItem(
|
|||||||
data: Map<String, Any>,
|
data: Map<String, Any>,
|
||||||
) : MiningToolItem(resourceLocation, registries, data) {
|
) : MiningToolItem(resourceLocation, registries, data) {
|
||||||
override val diggableTag: ResourceLocation = HOE_MINEABLE_TAG
|
override val diggableTag: ResourceLocation = HOE_MINEABLE_TAG
|
||||||
val tillableBlockStates: Map<Block, BlockState>? = data["tillables_block_states"]?.mapCast()?.let {
|
val tillableBlockStates: Map<Block, BlockState>? = data["tillables_block_states"]?.toJsonObject()?.let {
|
||||||
val entries: MutableMap<Block, BlockState> = mutableMapOf()
|
val entries: MutableMap<Block, BlockState> = mutableMapOf()
|
||||||
for ((origin, target) in it) {
|
for ((origin, target) in it) {
|
||||||
entries[registries.blockRegistry[origin.toInt()]] = registries.blockStateRegistry[target]!!
|
entries[registries.blockRegistry[origin.toInt()]] = registries.blockStateRegistry[target]!!
|
||||||
|
@ -13,7 +13,8 @@
|
|||||||
|
|
||||||
package de.bixilon.minosoft.data.registries.items.tools
|
package de.bixilon.minosoft.data.registries.items.tools
|
||||||
|
|
||||||
import de.bixilon.kutil.cast.CastUtil.unsafeCast
|
import de.bixilon.kutil.json.JsonUtil.toJsonList
|
||||||
|
import de.bixilon.kutil.primitive.FloatUtil.toFloat
|
||||||
import de.bixilon.minosoft.data.inventory.ItemStack
|
import de.bixilon.minosoft.data.inventory.ItemStack
|
||||||
import de.bixilon.minosoft.data.registries.ResourceLocation
|
import de.bixilon.minosoft.data.registries.ResourceLocation
|
||||||
import de.bixilon.minosoft.data.registries.blocks.BlockState
|
import de.bixilon.minosoft.data.registries.blocks.BlockState
|
||||||
@ -22,7 +23,6 @@ import de.bixilon.minosoft.data.registries.registries.Registries
|
|||||||
import de.bixilon.minosoft.gui.rendering.input.interaction.InteractionResults
|
import de.bixilon.minosoft.gui.rendering.input.interaction.InteractionResults
|
||||||
import de.bixilon.minosoft.protocol.network.connection.play.PlayConnection
|
import de.bixilon.minosoft.protocol.network.connection.play.PlayConnection
|
||||||
import de.bixilon.minosoft.protocol.packets.s2c.play.TagsS2CP
|
import de.bixilon.minosoft.protocol.packets.s2c.play.TagsS2CP
|
||||||
import de.bixilon.minosoft.util.KUtil.listCast
|
|
||||||
import de.bixilon.minosoft.util.KUtil.toResourceLocation
|
import de.bixilon.minosoft.util.KUtil.toResourceLocation
|
||||||
import glm_.vec3.Vec3i
|
import glm_.vec3.Vec3i
|
||||||
|
|
||||||
@ -31,14 +31,14 @@ abstract class MiningToolItem(
|
|||||||
registries: Registries,
|
registries: Registries,
|
||||||
data: Map<String, Any>,
|
data: Map<String, Any>,
|
||||||
) : ToolItem(resourceLocation, registries, data) {
|
) : ToolItem(resourceLocation, registries, data) {
|
||||||
val diggableBlocks: Set<Block>? = data["diggable_blocks"]?.listCast()?.let {
|
val diggableBlocks: Set<Block>? = data["diggable_blocks"]?.toJsonList()?.let {
|
||||||
val entries: MutableList<Block> = mutableListOf()
|
val entries: MutableList<Block> = mutableListOf()
|
||||||
for (id in it) {
|
for (id in it) {
|
||||||
entries += registries.blockRegistry[id]!!
|
entries += registries.blockRegistry[id]!!
|
||||||
}
|
}
|
||||||
entries.toSet()
|
entries.toSet()
|
||||||
}
|
}
|
||||||
override val attackDamage: Float = data["attack_damage"]?.unsafeCast<Float>() ?: 1.0f
|
override val attackDamage: Float = data["attack_damage"]?.toFloat() ?: 1.0f
|
||||||
|
|
||||||
abstract val diggableTag: ResourceLocation?
|
abstract val diggableTag: ResourceLocation?
|
||||||
|
|
||||||
|
@ -13,6 +13,8 @@
|
|||||||
|
|
||||||
package de.bixilon.minosoft.data.registries.items.tools
|
package de.bixilon.minosoft.data.registries.items.tools
|
||||||
|
|
||||||
|
import de.bixilon.kutil.json.JsonUtil.toJsonObject
|
||||||
|
import de.bixilon.kutil.primitive.IntUtil.toInt
|
||||||
import de.bixilon.minosoft.data.direction.Directions
|
import de.bixilon.minosoft.data.direction.Directions
|
||||||
import de.bixilon.minosoft.data.inventory.ItemStack
|
import de.bixilon.minosoft.data.inventory.ItemStack
|
||||||
import de.bixilon.minosoft.data.player.Hands
|
import de.bixilon.minosoft.data.player.Hands
|
||||||
@ -24,8 +26,6 @@ import de.bixilon.minosoft.gui.rendering.camera.target.targets.BlockTarget
|
|||||||
import de.bixilon.minosoft.gui.rendering.input.interaction.InteractionResults
|
import de.bixilon.minosoft.gui.rendering.input.interaction.InteractionResults
|
||||||
import de.bixilon.minosoft.gui.rendering.util.VecUtil.plus
|
import de.bixilon.minosoft.gui.rendering.util.VecUtil.plus
|
||||||
import de.bixilon.minosoft.protocol.network.connection.play.PlayConnection
|
import de.bixilon.minosoft.protocol.network.connection.play.PlayConnection
|
||||||
import de.bixilon.minosoft.util.KUtil.mapCast
|
|
||||||
import de.bixilon.minosoft.util.KUtil.toInt
|
|
||||||
import de.bixilon.minosoft.util.KUtil.toResourceLocation
|
import de.bixilon.minosoft.util.KUtil.toResourceLocation
|
||||||
|
|
||||||
open class ShovelItem(
|
open class ShovelItem(
|
||||||
@ -34,7 +34,7 @@ open class ShovelItem(
|
|||||||
data: Map<String, Any>,
|
data: Map<String, Any>,
|
||||||
) : MiningToolItem(resourceLocation, registries, data) {
|
) : MiningToolItem(resourceLocation, registries, data) {
|
||||||
override val diggableTag: ResourceLocation = SHOVEL_MINEABLE_TAG
|
override val diggableTag: ResourceLocation = SHOVEL_MINEABLE_TAG
|
||||||
val flattenableBlockStates: Map<Block, BlockState>? = data["flattenables_block_states"]?.mapCast()?.let {
|
val flattenableBlockStates: Map<Block, BlockState>? = data["flattenables_block_states"]?.toJsonObject()?.let {
|
||||||
val entries: MutableMap<Block, BlockState> = mutableMapOf()
|
val entries: MutableMap<Block, BlockState> = mutableMapOf()
|
||||||
for ((origin, target) in it) {
|
for ((origin, target) in it) {
|
||||||
entries[registries.blockRegistry[origin.toInt()]] = registries.blockStateRegistry[target]!!
|
entries[registries.blockRegistry[origin.toInt()]] = registries.blockStateRegistry[target]!!
|
||||||
|
@ -13,7 +13,7 @@
|
|||||||
|
|
||||||
package de.bixilon.minosoft.data.registries.items.tools
|
package de.bixilon.minosoft.data.registries.items.tools
|
||||||
|
|
||||||
import de.bixilon.kutil.cast.CastUtil.unsafeCast
|
import de.bixilon.kutil.primitive.FloatUtil.toFloat
|
||||||
import de.bixilon.minosoft.data.inventory.ItemStack
|
import de.bixilon.minosoft.data.inventory.ItemStack
|
||||||
import de.bixilon.minosoft.data.registries.ResourceLocation
|
import de.bixilon.minosoft.data.registries.ResourceLocation
|
||||||
import de.bixilon.minosoft.data.registries.blocks.BlockState
|
import de.bixilon.minosoft.data.registries.blocks.BlockState
|
||||||
@ -27,7 +27,7 @@ open class SwordItem(
|
|||||||
registries: Registries,
|
registries: Registries,
|
||||||
data: Map<String, Any>,
|
data: Map<String, Any>,
|
||||||
) : ToolItem(resourceLocation, registries, data) {
|
) : ToolItem(resourceLocation, registries, data) {
|
||||||
override val attackDamage = data["attack_damage"]?.unsafeCast<Float>() ?: -1.0f
|
override val attackDamage = data["attack_damage"]?.toFloat() ?: -1.0f
|
||||||
|
|
||||||
override fun getMiningSpeedMultiplier(connection: PlayConnection, blockState: BlockState, itemStack: ItemStack): Float {
|
override fun getMiningSpeedMultiplier(connection: PlayConnection, blockState: BlockState, itemStack: ItemStack): Float {
|
||||||
if (blockState.block.resourceLocation == MinecraftBlocks.COBWEB) {
|
if (blockState.block.resourceLocation == MinecraftBlocks.COBWEB) {
|
||||||
|
@ -13,11 +13,11 @@
|
|||||||
|
|
||||||
package de.bixilon.minosoft.data.registries.items.tools
|
package de.bixilon.minosoft.data.registries.items.tools
|
||||||
|
|
||||||
import de.bixilon.kutil.cast.CastUtil.unsafeCast
|
import de.bixilon.kutil.primitive.FloatUtil.toFloat
|
||||||
|
import de.bixilon.kutil.primitive.IntUtil.toInt
|
||||||
import de.bixilon.minosoft.data.registries.ResourceLocation
|
import de.bixilon.minosoft.data.registries.ResourceLocation
|
||||||
import de.bixilon.minosoft.data.registries.items.Item
|
import de.bixilon.minosoft.data.registries.items.Item
|
||||||
import de.bixilon.minosoft.data.registries.registries.Registries
|
import de.bixilon.minosoft.data.registries.registries.Registries
|
||||||
import de.bixilon.minosoft.util.KUtil.toInt
|
|
||||||
|
|
||||||
|
|
||||||
open class ToolItem(
|
open class ToolItem(
|
||||||
@ -26,8 +26,8 @@ open class ToolItem(
|
|||||||
data: Map<String, Any>,
|
data: Map<String, Any>,
|
||||||
) : Item(resourceLocation, registries, data) {
|
) : Item(resourceLocation, registries, data) {
|
||||||
val durability = data["uses"]?.toInt() ?: 1
|
val durability = data["uses"]?.toInt() ?: 1
|
||||||
val speed = data["speed"]?.unsafeCast<Float>() ?: 1.0f
|
val speed = data["speed"]?.toFloat() ?: 1.0f
|
||||||
open val attackDamage = data["attack_damage_bonus"]?.unsafeCast<Float>() ?: 1.0f
|
open val attackDamage = data["attack_damage_bonus"]?.toFloat() ?: 1.0f
|
||||||
val miningLevel = data["level"]?.toInt() ?: 1
|
val miningLevel = data["level"]?.toInt() ?: 1
|
||||||
val enchantmentValue = data["enchantment_value"]?.toInt() ?: 1
|
val enchantmentValue = data["enchantment_value"]?.toInt() ?: 1
|
||||||
}
|
}
|
||||||
|
@ -13,14 +13,14 @@
|
|||||||
package de.bixilon.minosoft.data.registries.materials
|
package de.bixilon.minosoft.data.registries.materials
|
||||||
|
|
||||||
import de.bixilon.kutil.cast.CastUtil.nullCast
|
import de.bixilon.kutil.cast.CastUtil.nullCast
|
||||||
|
import de.bixilon.kutil.primitive.BooleanUtil.toBoolean
|
||||||
|
import de.bixilon.kutil.primitive.IntUtil.toInt
|
||||||
import de.bixilon.minosoft.data.registries.ResourceLocation
|
import de.bixilon.minosoft.data.registries.ResourceLocation
|
||||||
import de.bixilon.minosoft.data.registries.registries.Registries
|
import de.bixilon.minosoft.data.registries.registries.Registries
|
||||||
import de.bixilon.minosoft.data.registries.registries.registry.RegistryItem
|
import de.bixilon.minosoft.data.registries.registries.registry.RegistryItem
|
||||||
import de.bixilon.minosoft.data.registries.registries.registry.ResourceLocationDeserializer
|
import de.bixilon.minosoft.data.registries.registries.registry.ResourceLocationDeserializer
|
||||||
import de.bixilon.minosoft.data.text.RGBColor
|
import de.bixilon.minosoft.data.text.RGBColor
|
||||||
import de.bixilon.minosoft.gui.rendering.tint.TintManager
|
import de.bixilon.minosoft.gui.rendering.tint.TintManager
|
||||||
import de.bixilon.minosoft.util.KUtil.toBoolean
|
|
||||||
import de.bixilon.minosoft.util.KUtil.toInt
|
|
||||||
import java.util.*
|
import java.util.*
|
||||||
|
|
||||||
data class Material(
|
data class Material(
|
||||||
|
@ -12,6 +12,7 @@
|
|||||||
*/
|
*/
|
||||||
package de.bixilon.minosoft.data.registries.particle
|
package de.bixilon.minosoft.data.registries.particle
|
||||||
|
|
||||||
|
import de.bixilon.kutil.primitive.BooleanUtil.toBoolean
|
||||||
import de.bixilon.minosoft.data.registries.ResourceLocation
|
import de.bixilon.minosoft.data.registries.ResourceLocation
|
||||||
import de.bixilon.minosoft.data.registries.particle.data.ParticleData
|
import de.bixilon.minosoft.data.registries.particle.data.ParticleData
|
||||||
import de.bixilon.minosoft.data.registries.registries.Registries
|
import de.bixilon.minosoft.data.registries.registries.Registries
|
||||||
@ -21,7 +22,6 @@ import de.bixilon.minosoft.gui.rendering.particle.DefaultParticleFactory
|
|||||||
import de.bixilon.minosoft.gui.rendering.particle.ParticleFactory
|
import de.bixilon.minosoft.gui.rendering.particle.ParticleFactory
|
||||||
import de.bixilon.minosoft.gui.rendering.particle.types.Particle
|
import de.bixilon.minosoft.gui.rendering.particle.types.Particle
|
||||||
import de.bixilon.minosoft.gui.rendering.textures.Texture
|
import de.bixilon.minosoft.gui.rendering.textures.Texture
|
||||||
import de.bixilon.minosoft.util.KUtil.toBoolean
|
|
||||||
import de.bixilon.minosoft.util.nbt.tag.NBTUtil.compoundCast
|
import de.bixilon.minosoft.util.nbt.tag.NBTUtil.compoundCast
|
||||||
import de.bixilon.minosoft.util.nbt.tag.NBTUtil.listCast
|
import de.bixilon.minosoft.util.nbt.tag.NBTUtil.listCast
|
||||||
|
|
||||||
|
@ -47,8 +47,6 @@ import de.bixilon.minosoft.data.registries.versions.Version
|
|||||||
import de.bixilon.minosoft.protocol.packets.c2s.play.EntityActionC2SP
|
import de.bixilon.minosoft.protocol.packets.c2s.play.EntityActionC2SP
|
||||||
import de.bixilon.minosoft.protocol.packets.s2c.play.EntityAnimationS2CP
|
import de.bixilon.minosoft.protocol.packets.s2c.play.EntityAnimationS2CP
|
||||||
import de.bixilon.minosoft.protocol.packets.s2c.play.title.TitleS2CF
|
import de.bixilon.minosoft.protocol.packets.s2c.play.title.TitleS2CF
|
||||||
import de.bixilon.minosoft.util.KUtil.listCast
|
|
||||||
import de.bixilon.minosoft.util.KUtil.mapCast
|
|
||||||
import de.bixilon.minosoft.util.collections.Clearable
|
import de.bixilon.minosoft.util.collections.Clearable
|
||||||
import de.bixilon.minosoft.util.nbt.tag.NBTUtil.compoundCast
|
import de.bixilon.minosoft.util.nbt.tag.NBTUtil.compoundCast
|
||||||
import java.lang.reflect.Field
|
import java.lang.reflect.Field
|
||||||
@ -146,9 +144,9 @@ class Registries {
|
|||||||
loadEnumRegistry(version, pixlyzerData["entity_actions"], entityActionsRegistry, DefaultRegistries.ENTITY_ACTIONS_REGISTRY)
|
loadEnumRegistry(version, pixlyzerData["entity_actions"], entityActionsRegistry, DefaultRegistries.ENTITY_ACTIONS_REGISTRY)
|
||||||
|
|
||||||
// id stuff
|
// id stuff
|
||||||
biomeCategoryRegistry.initialize(pixlyzerData["biome_categories"]?.mapCast(), this, BiomeCategory)
|
biomeCategoryRegistry.initialize(pixlyzerData["biome_categories"]?.unsafeCast(), this, BiomeCategory)
|
||||||
biomePrecipitationRegistry.initialize(pixlyzerData["biome_precipitations"]?.mapCast(), this, BiomePrecipitation)
|
biomePrecipitationRegistry.initialize(pixlyzerData["biome_precipitations"]?.unsafeCast(), this, BiomePrecipitation)
|
||||||
creativeModeTabRegistry.initialize(pixlyzerData["creative_inventory_tab"]?.mapCast(), this, CreativeModeTab)
|
creativeModeTabRegistry.initialize(pixlyzerData["creative_inventory_tab"]?.unsafeCast(), this, CreativeModeTab)
|
||||||
|
|
||||||
// id resource location stuff
|
// id resource location stuff
|
||||||
containerTypeRegistry.rawInitialize(pixlyzerData["container_types"]?.compoundCast(), this, ContainerType, alternative = DefaultRegistries.CONTAINER_TYPE_REGISTRY.forVersion(version))
|
containerTypeRegistry.rawInitialize(pixlyzerData["container_types"]?.compoundCast(), this, ContainerType, alternative = DefaultRegistries.CONTAINER_TYPE_REGISTRY.forVersion(version))
|
||||||
@ -187,7 +185,7 @@ class Registries {
|
|||||||
private fun loadShapes(pixlyzerData: Map<String, Any>?) {
|
private fun loadShapes(pixlyzerData: Map<String, Any>?) {
|
||||||
pixlyzerData ?: return
|
pixlyzerData ?: return
|
||||||
val aabbs = loadAABBs(pixlyzerData["aabbs"].nullCast()!!)
|
val aabbs = loadAABBs(pixlyzerData["aabbs"].nullCast()!!)
|
||||||
loadVoxelShapes(pixlyzerData["shapes"]?.listCast()!!, aabbs)
|
loadVoxelShapes(pixlyzerData["shapes"].unsafeCast(), aabbs)
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun loadVoxelShapes(pixlyzerData: Collection<Any>, aabbs: List<AABB>) {
|
private fun loadVoxelShapes(pixlyzerData: Collection<Any>, aabbs: List<AABB>) {
|
||||||
|
@ -13,8 +13,8 @@
|
|||||||
|
|
||||||
package de.bixilon.minosoft.data.registries.registries.registry
|
package de.bixilon.minosoft.data.registries.registries.registry
|
||||||
|
|
||||||
|
import de.bixilon.kutil.primitive.IntUtil.toInt
|
||||||
import de.bixilon.minosoft.data.registries.registries.Registries
|
import de.bixilon.minosoft.data.registries.registries.Registries
|
||||||
import de.bixilon.minosoft.util.KUtil.toInt
|
|
||||||
import de.bixilon.minosoft.util.collections.Clearable
|
import de.bixilon.minosoft.util.collections.Clearable
|
||||||
import de.bixilon.minosoft.util.nbt.tag.NBTUtil.asCompound
|
import de.bixilon.minosoft.util.nbt.tag.NBTUtil.asCompound
|
||||||
|
|
||||||
|
@ -15,11 +15,11 @@ package de.bixilon.minosoft.data.registries.registries.registry
|
|||||||
|
|
||||||
import com.google.gson.JsonElement
|
import com.google.gson.JsonElement
|
||||||
import com.google.gson.JsonPrimitive
|
import com.google.gson.JsonPrimitive
|
||||||
|
import de.bixilon.kutil.primitive.IntUtil.toInt
|
||||||
import de.bixilon.minosoft.data.registries.MultiResourceLocationAble
|
import de.bixilon.minosoft.data.registries.MultiResourceLocationAble
|
||||||
import de.bixilon.minosoft.data.registries.ResourceLocation
|
import de.bixilon.minosoft.data.registries.ResourceLocation
|
||||||
import de.bixilon.minosoft.data.registries.ResourceLocationAble
|
import de.bixilon.minosoft.data.registries.ResourceLocationAble
|
||||||
import de.bixilon.minosoft.data.registries.registries.Registries
|
import de.bixilon.minosoft.data.registries.registries.Registries
|
||||||
import de.bixilon.minosoft.util.KUtil.toInt
|
|
||||||
import de.bixilon.minosoft.util.KUtil.toResourceLocation
|
import de.bixilon.minosoft.util.KUtil.toResourceLocation
|
||||||
import de.bixilon.minosoft.util.json.ResourceLocationJsonMap.toResourceLocationMap
|
import de.bixilon.minosoft.util.json.ResourceLocationJsonMap.toResourceLocationMap
|
||||||
import de.bixilon.minosoft.util.nbt.tag.NBTUtil.asCompound
|
import de.bixilon.minosoft.util.nbt.tag.NBTUtil.asCompound
|
||||||
|
@ -13,9 +13,9 @@
|
|||||||
|
|
||||||
package de.bixilon.minosoft.data.registries.registries.registry
|
package de.bixilon.minosoft.data.registries.registries.registry
|
||||||
|
|
||||||
|
import de.bixilon.kutil.reflection.ReflectionUtil.setValue
|
||||||
import de.bixilon.minosoft.data.registries.ResourceLocationAble
|
import de.bixilon.minosoft.data.registries.ResourceLocationAble
|
||||||
import de.bixilon.minosoft.data.registries.registries.Registries
|
import de.bixilon.minosoft.data.registries.registries.Registries
|
||||||
import de.bixilon.minosoft.util.KUtil.setValue
|
|
||||||
import kotlin.reflect.KProperty
|
import kotlin.reflect.KProperty
|
||||||
import kotlin.reflect.jvm.javaField
|
import kotlin.reflect.jvm.javaField
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
package de.bixilon.minosoft.data.registries.registries.registry
|
package de.bixilon.minosoft.data.registries.registries.registry
|
||||||
|
|
||||||
|
import de.bixilon.kutil.primitive.IntUtil.toInt
|
||||||
import de.bixilon.minosoft.data.registries.ResourceLocation
|
import de.bixilon.minosoft.data.registries.ResourceLocation
|
||||||
import de.bixilon.minosoft.util.KUtil.toInt
|
|
||||||
import de.bixilon.minosoft.util.json.ResourceLocationJsonMap.toResourceLocationMap
|
import de.bixilon.minosoft.util.json.ResourceLocationJsonMap.toResourceLocationMap
|
||||||
|
|
||||||
class ResourceLocationRegistry(
|
class ResourceLocationRegistry(
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
package de.bixilon.minosoft.data.registries.versions
|
package de.bixilon.minosoft.data.registries.versions
|
||||||
|
|
||||||
import de.bixilon.kutil.general.BooleanUtil.decide
|
import de.bixilon.kutil.primitive.BooleanUtil.decide
|
||||||
import de.bixilon.minosoft.config.profile.profiles.resources.ResourcesProfile
|
import de.bixilon.minosoft.config.profile.profiles.resources.ResourcesProfile
|
||||||
import de.bixilon.minosoft.data.registries.registries.Registries
|
import de.bixilon.minosoft.data.registries.registries.Registries
|
||||||
import de.bixilon.minosoft.data.registries.registries.RegistriesLoader
|
import de.bixilon.minosoft.data.registries.registries.RegistriesLoader
|
||||||
|
@ -1,11 +1,11 @@
|
|||||||
package de.bixilon.minosoft.data.registries.versions
|
package de.bixilon.minosoft.data.registries.versions
|
||||||
|
|
||||||
import de.bixilon.kutil.cast.CastUtil.unsafeCast
|
import de.bixilon.kutil.cast.CastUtil.unsafeCast
|
||||||
|
import de.bixilon.kutil.primitive.IntUtil.toInt
|
||||||
import de.bixilon.minosoft.Minosoft
|
import de.bixilon.minosoft.Minosoft
|
||||||
import de.bixilon.minosoft.assets.util.FileUtil.readJson
|
import de.bixilon.minosoft.assets.util.FileUtil.readJson
|
||||||
import de.bixilon.minosoft.protocol.protocol.PacketTypes
|
import de.bixilon.minosoft.protocol.protocol.PacketTypes
|
||||||
import de.bixilon.minosoft.protocol.protocol.ProtocolStates
|
import de.bixilon.minosoft.protocol.protocol.ProtocolStates
|
||||||
import de.bixilon.minosoft.util.KUtil.toInt
|
|
||||||
import de.bixilon.minosoft.util.KUtil.toResourceLocation
|
import de.bixilon.minosoft.util.KUtil.toResourceLocation
|
||||||
|
|
||||||
object Versions : Iterable<Version> {
|
object Versions : Iterable<Version> {
|
||||||
|
@ -14,7 +14,7 @@ package de.bixilon.minosoft.data.scoreboard
|
|||||||
|
|
||||||
import de.bixilon.kutil.collections.CollectionUtil.synchronizedMapOf
|
import de.bixilon.kutil.collections.CollectionUtil.synchronizedMapOf
|
||||||
import de.bixilon.kutil.collections.CollectionUtil.toSynchronizedMap
|
import de.bixilon.kutil.collections.CollectionUtil.toSynchronizedMap
|
||||||
import de.bixilon.kutil.general.BooleanUtil.decide
|
import de.bixilon.kutil.primitive.BooleanUtil.decide
|
||||||
import de.bixilon.minosoft.modding.event.events.scoreboard.ScoreTeamChangeEvent
|
import de.bixilon.minosoft.modding.event.events.scoreboard.ScoreTeamChangeEvent
|
||||||
import de.bixilon.minosoft.protocol.network.connection.play.PlayConnection
|
import de.bixilon.minosoft.protocol.network.connection.play.PlayConnection
|
||||||
|
|
||||||
|
@ -14,14 +14,14 @@
|
|||||||
package de.bixilon.minosoft.data.text
|
package de.bixilon.minosoft.data.text
|
||||||
|
|
||||||
import de.bixilon.kutil.cast.CastUtil.nullCast
|
import de.bixilon.kutil.cast.CastUtil.nullCast
|
||||||
|
import de.bixilon.kutil.json.JsonUtil.toJsonList
|
||||||
|
import de.bixilon.kutil.primitive.BooleanUtil.toBoolean
|
||||||
import de.bixilon.minosoft.data.language.Translator
|
import de.bixilon.minosoft.data.language.Translator
|
||||||
import de.bixilon.minosoft.data.text.ChatCode.Companion.toColor
|
import de.bixilon.minosoft.data.text.ChatCode.Companion.toColor
|
||||||
import de.bixilon.minosoft.data.text.events.ClickEvent
|
import de.bixilon.minosoft.data.text.events.ClickEvent
|
||||||
import de.bixilon.minosoft.data.text.events.HoverEvent
|
import de.bixilon.minosoft.data.text.events.HoverEvent
|
||||||
import de.bixilon.minosoft.protocol.protocol.ProtocolDefinition
|
import de.bixilon.minosoft.protocol.protocol.ProtocolDefinition
|
||||||
import de.bixilon.minosoft.util.KUtil.format
|
import de.bixilon.minosoft.util.KUtil.format
|
||||||
import de.bixilon.minosoft.util.KUtil.listCast
|
|
||||||
import de.bixilon.minosoft.util.KUtil.toBoolean
|
|
||||||
import de.bixilon.minosoft.util.KUtil.toResourceLocation
|
import de.bixilon.minosoft.util.KUtil.toResourceLocation
|
||||||
import de.bixilon.minosoft.util.nbt.tag.NBTUtil.compoundCast
|
import de.bixilon.minosoft.util.nbt.tag.NBTUtil.compoundCast
|
||||||
import de.bixilon.minosoft.util.nbt.tag.NBTUtil.get
|
import de.bixilon.minosoft.util.nbt.tag.NBTUtil.get
|
||||||
@ -139,7 +139,7 @@ class BaseComponent : ChatComponent {
|
|||||||
var currentText = ""
|
var currentText = ""
|
||||||
|
|
||||||
fun parseExtra() {
|
fun parseExtra() {
|
||||||
json["extra"]?.listCast()?.let {
|
json["extra"].toJsonList()?.let {
|
||||||
for (data in it) {
|
for (data in it) {
|
||||||
parts += ChatComponent.of(data, translator, currentParent)
|
parts += ChatComponent.of(data, translator, currentParent)
|
||||||
}
|
}
|
||||||
@ -184,11 +184,11 @@ class BaseComponent : ChatComponent {
|
|||||||
|
|
||||||
parseExtra()
|
parseExtra()
|
||||||
|
|
||||||
json["translate"]?.nullCast<String>()?.let {
|
json["translate"]?.toString()?.let {
|
||||||
val with: MutableList<Any> = mutableListOf()
|
val with: MutableList<Any> = mutableListOf()
|
||||||
json["with"]?.listCast()?.let { withArray ->
|
json["with"].toJsonList()?.let { withArray ->
|
||||||
for (part in withArray) {
|
for (part in withArray) {
|
||||||
with.add(part)
|
with.add(part ?: continue)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
parts += translator?.translate(it.toResourceLocation(), currentParent, *with.toTypedArray()) ?: ChatComponent.of(json["with"], translator, currentParent)
|
parts += translator?.translate(it.toResourceLocation(), currentParent, *with.toTypedArray()) ?: ChatComponent.of(json["with"], translator, currentParent)
|
||||||
|
@ -14,9 +14,9 @@ package de.bixilon.minosoft.data.text.events.data
|
|||||||
|
|
||||||
import de.bixilon.kutil.cast.CastUtil.nullCast
|
import de.bixilon.kutil.cast.CastUtil.nullCast
|
||||||
import de.bixilon.kutil.cast.CastUtil.unsafeCast
|
import de.bixilon.kutil.cast.CastUtil.unsafeCast
|
||||||
|
import de.bixilon.kutil.uuid.UUIDUtil.toUUID
|
||||||
import de.bixilon.minosoft.data.registries.ResourceLocation
|
import de.bixilon.minosoft.data.registries.ResourceLocation
|
||||||
import de.bixilon.minosoft.data.text.ChatComponent
|
import de.bixilon.minosoft.data.text.ChatComponent
|
||||||
import de.bixilon.minosoft.util.KUtil.asUUID
|
|
||||||
import de.bixilon.minosoft.util.KUtil.toResourceLocation
|
import de.bixilon.minosoft.util.KUtil.toResourceLocation
|
||||||
import de.bixilon.minosoft.util.json.Jackson
|
import de.bixilon.minosoft.util.json.Jackson
|
||||||
import de.bixilon.minosoft.util.nbt.tag.NBTUtil.asCompound
|
import de.bixilon.minosoft.util.nbt.tag.NBTUtil.asCompound
|
||||||
@ -44,7 +44,7 @@ class EntityHoverData(
|
|||||||
type = it.toResourceLocation()
|
type = it.toResourceLocation()
|
||||||
}
|
}
|
||||||
|
|
||||||
return EntityHoverData(json["id"].unsafeCast<String>().asUUID(), type, ChatComponent.of(json["name"]))
|
return EntityHoverData(json["id"].toString().toUUID(), type, ChatComponent.of(json["name"]))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
package de.bixilon.minosoft.gui.eros
|
package de.bixilon.minosoft.gui.eros
|
||||||
|
|
||||||
import de.bixilon.kutil.general.OSUtil
|
import de.bixilon.kutil.os.OSUtil
|
||||||
import de.bixilon.minosoft.config.profile.profiles.other.OtherProfileManager
|
import de.bixilon.minosoft.config.profile.profiles.other.OtherProfileManager
|
||||||
import de.bixilon.minosoft.gui.eros.dialog.SimpleErosWarningDialog
|
import de.bixilon.minosoft.gui.eros.dialog.SimpleErosWarningDialog
|
||||||
import de.bixilon.minosoft.terminal.RunConfiguration
|
import de.bixilon.minosoft.terminal.RunConfiguration
|
||||||
|
@ -15,7 +15,14 @@ package de.bixilon.minosoft.gui.eros.crash
|
|||||||
|
|
||||||
import de.bixilon.kutil.collections.CollectionUtil.toSynchronizedSet
|
import de.bixilon.kutil.collections.CollectionUtil.toSynchronizedSet
|
||||||
import de.bixilon.kutil.concurrent.pool.DefaultThreadPool
|
import de.bixilon.kutil.concurrent.pool.DefaultThreadPool
|
||||||
import de.bixilon.kutil.general.OSUtil
|
import de.bixilon.kutil.exception.ExceptionUtil.toStackTrace
|
||||||
|
import de.bixilon.kutil.exception.ExceptionUtil.tryCatch
|
||||||
|
import de.bixilon.kutil.file.FileUtil.slashPath
|
||||||
|
import de.bixilon.kutil.file.watcher.FileWatcherService
|
||||||
|
import de.bixilon.kutil.os.OSUtil
|
||||||
|
import de.bixilon.kutil.time.TimeUtil
|
||||||
|
import de.bixilon.kutil.unit.UnitFormatter.formatBytes
|
||||||
|
import de.bixilon.kutil.unsafe.UnsafeUtil
|
||||||
import de.bixilon.minosoft.ShutdownReasons
|
import de.bixilon.minosoft.ShutdownReasons
|
||||||
import de.bixilon.minosoft.gui.eros.controller.JavaFXWindowController
|
import de.bixilon.minosoft.gui.eros.controller.JavaFXWindowController
|
||||||
import de.bixilon.minosoft.gui.eros.util.JavaFXInitializer
|
import de.bixilon.minosoft.gui.eros.util.JavaFXInitializer
|
||||||
@ -23,12 +30,10 @@ import de.bixilon.minosoft.gui.eros.util.JavaFXUtil
|
|||||||
import de.bixilon.minosoft.protocol.network.connection.play.PlayConnection
|
import de.bixilon.minosoft.protocol.network.connection.play.PlayConnection
|
||||||
import de.bixilon.minosoft.terminal.CommandLineArguments
|
import de.bixilon.minosoft.terminal.CommandLineArguments
|
||||||
import de.bixilon.minosoft.terminal.RunConfiguration
|
import de.bixilon.minosoft.terminal.RunConfiguration
|
||||||
import de.bixilon.minosoft.util.*
|
import de.bixilon.minosoft.util.GitInfo
|
||||||
import de.bixilon.minosoft.util.KUtil.slashPath
|
import de.bixilon.minosoft.util.ShutdownManager
|
||||||
import de.bixilon.minosoft.util.KUtil.toStackTrace
|
import de.bixilon.minosoft.util.SystemInformation
|
||||||
import de.bixilon.minosoft.util.KUtil.tryCatch
|
import de.bixilon.minosoft.util.Util
|
||||||
import de.bixilon.minosoft.util.UnitFormatter.formatBytes
|
|
||||||
import de.bixilon.minosoft.util.filewatcher.FileWatcherService
|
|
||||||
import de.bixilon.minosoft.util.logging.Log
|
import de.bixilon.minosoft.util.logging.Log
|
||||||
import de.bixilon.minosoft.util.logging.LogLevels
|
import de.bixilon.minosoft.util.logging.LogLevels
|
||||||
import de.bixilon.minosoft.util.logging.LogMessageType
|
import de.bixilon.minosoft.util.logging.LogMessageType
|
||||||
@ -79,7 +84,7 @@ class ErosCrashReport : JavaFXWindowController() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
fun hardCrash() {
|
fun hardCrash() {
|
||||||
KUtil.hardCrash()
|
UnsafeUtil.hardCrash()
|
||||||
}
|
}
|
||||||
|
|
||||||
companion object {
|
companion object {
|
||||||
@ -143,7 +148,7 @@ class ErosCrashReport : JavaFXWindowController() {
|
|||||||
val crashReportFolder = File(RunConfiguration.HOME_DIRECTORY + "crash-reports")
|
val crashReportFolder = File(RunConfiguration.HOME_DIRECTORY + "crash-reports")
|
||||||
crashReportFolder.mkdirs()
|
crashReportFolder.mkdirs()
|
||||||
|
|
||||||
crashReportPath = "${crashReportFolder.slashPath}/crash-${SimpleDateFormat("yyyy-MM-dd-HH.mm.ss").format(KUtil.time)}.txt"
|
crashReportPath = "${crashReportFolder.slashPath}/crash-${SimpleDateFormat("yyyy-MM-dd-HH.mm.ss").format(TimeUtil.time)}.txt"
|
||||||
|
|
||||||
val stream = FileOutputStream(crashReportPath)
|
val stream = FileOutputStream(crashReportPath)
|
||||||
|
|
||||||
@ -197,7 +202,7 @@ class ErosCrashReport : JavaFXWindowController() {
|
|||||||
----- Minosoft Crash Report -----
|
----- Minosoft Crash Report -----
|
||||||
// ${CRASH_REPORT_COMMENTS.random()}
|
// ${CRASH_REPORT_COMMENTS.random()}
|
||||||
|
|
||||||
Time: ${SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(KUtil.time)} (${KUtil.time / 1000L})
|
Time: ${SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(TimeUtil.time)} (${TimeUtil.time / 1000L})
|
||||||
Crash thread: ${Thread.currentThread().name}
|
Crash thread: ${Thread.currentThread().name}
|
||||||
|
|
||||||
${exception?.toStackTrace() ?: ""}
|
${exception?.toStackTrace() ?: ""}
|
||||||
|
@ -13,6 +13,8 @@
|
|||||||
|
|
||||||
package de.bixilon.minosoft.gui.eros.dialog
|
package de.bixilon.minosoft.gui.eros.dialog
|
||||||
|
|
||||||
|
import de.bixilon.kutil.exception.ExceptionUtil.toStackTrace
|
||||||
|
import de.bixilon.kutil.reflection.ReflectionUtil.realName
|
||||||
import de.bixilon.minosoft.Minosoft
|
import de.bixilon.minosoft.Minosoft
|
||||||
import de.bixilon.minosoft.data.text.TranslatableComponents.GENERAL_IGNORE
|
import de.bixilon.minosoft.data.text.TranslatableComponents.GENERAL_IGNORE
|
||||||
import de.bixilon.minosoft.gui.eros.controller.DialogController
|
import de.bixilon.minosoft.gui.eros.controller.DialogController
|
||||||
@ -21,9 +23,7 @@ import de.bixilon.minosoft.gui.eros.util.JavaFXUtil
|
|||||||
import de.bixilon.minosoft.gui.eros.util.JavaFXUtil.ctext
|
import de.bixilon.minosoft.gui.eros.util.JavaFXUtil.ctext
|
||||||
import de.bixilon.minosoft.gui.eros.util.JavaFXUtil.text
|
import de.bixilon.minosoft.gui.eros.util.JavaFXUtil.text
|
||||||
import de.bixilon.minosoft.terminal.RunConfiguration
|
import de.bixilon.minosoft.terminal.RunConfiguration
|
||||||
import de.bixilon.minosoft.util.KUtil.realName
|
|
||||||
import de.bixilon.minosoft.util.KUtil.toResourceLocation
|
import de.bixilon.minosoft.util.KUtil.toResourceLocation
|
||||||
import de.bixilon.minosoft.util.KUtil.toStackTrace
|
|
||||||
import javafx.fxml.FXML
|
import javafx.fxml.FXML
|
||||||
import javafx.scene.control.Button
|
import javafx.scene.control.Button
|
||||||
import javafx.scene.control.TextArea
|
import javafx.scene.control.TextArea
|
||||||
|
@ -14,7 +14,7 @@
|
|||||||
package de.bixilon.minosoft.gui.eros.dialog
|
package de.bixilon.minosoft.gui.eros.dialog
|
||||||
|
|
||||||
import de.bixilon.kutil.concurrent.pool.DefaultThreadPool
|
import de.bixilon.kutil.concurrent.pool.DefaultThreadPool
|
||||||
import de.bixilon.kutil.general.BooleanUtil.decide
|
import de.bixilon.kutil.primitive.BooleanUtil.decide
|
||||||
import de.bixilon.minosoft.Minosoft
|
import de.bixilon.minosoft.Minosoft
|
||||||
import de.bixilon.minosoft.config.profile.delegate.watcher.SimpleProfileDelegateWatcher.Companion.profileWatchFX
|
import de.bixilon.minosoft.config.profile.delegate.watcher.SimpleProfileDelegateWatcher.Companion.profileWatchFX
|
||||||
import de.bixilon.minosoft.config.profile.profiles.eros.ErosProfileManager
|
import de.bixilon.minosoft.config.profile.profiles.eros.ErosProfileManager
|
||||||
|
@ -15,7 +15,7 @@ package de.bixilon.minosoft.gui.eros.main.account
|
|||||||
|
|
||||||
import de.bixilon.kutil.collections.CollectionUtil.extend
|
import de.bixilon.kutil.collections.CollectionUtil.extend
|
||||||
import de.bixilon.kutil.concurrent.pool.DefaultThreadPool
|
import de.bixilon.kutil.concurrent.pool.DefaultThreadPool
|
||||||
import de.bixilon.kutil.general.BooleanUtil.decide
|
import de.bixilon.kutil.primitive.BooleanUtil.decide
|
||||||
import de.bixilon.minosoft.Minosoft
|
import de.bixilon.minosoft.Minosoft
|
||||||
import de.bixilon.minosoft.config.profile.delegate.watcher.entry.MapProfileDelegateWatcher.Companion.profileWatchMapFX
|
import de.bixilon.minosoft.config.profile.delegate.watcher.entry.MapProfileDelegateWatcher.Companion.profileWatchMapFX
|
||||||
import de.bixilon.minosoft.config.profile.profiles.eros.ErosProfileManager
|
import de.bixilon.minosoft.config.profile.profiles.eros.ErosProfileManager
|
||||||
|
@ -14,8 +14,9 @@
|
|||||||
package de.bixilon.minosoft.gui.eros.main.play.server
|
package de.bixilon.minosoft.gui.eros.main.play.server
|
||||||
|
|
||||||
import de.bixilon.kutil.concurrent.pool.DefaultThreadPool
|
import de.bixilon.kutil.concurrent.pool.DefaultThreadPool
|
||||||
import de.bixilon.kutil.general.BooleanUtil.decide
|
|
||||||
import de.bixilon.kutil.latch.CountUpAndDownLatch
|
import de.bixilon.kutil.latch.CountUpAndDownLatch
|
||||||
|
import de.bixilon.kutil.primitive.BooleanUtil.decide
|
||||||
|
import de.bixilon.kutil.primitive.IntUtil.thousands
|
||||||
import de.bixilon.minosoft.Minosoft
|
import de.bixilon.minosoft.Minosoft
|
||||||
import de.bixilon.minosoft.config.profile.ConnectionProfiles
|
import de.bixilon.minosoft.config.profile.ConnectionProfiles
|
||||||
import de.bixilon.minosoft.config.profile.delegate.watcher.SimpleProfileDelegateWatcher.Companion.profileWatchFX
|
import de.bixilon.minosoft.config.profile.delegate.watcher.SimpleProfileDelegateWatcher.Companion.profileWatchFX
|
||||||
@ -48,7 +49,6 @@ import de.bixilon.minosoft.protocol.network.connection.play.PlayConnectionStates
|
|||||||
import de.bixilon.minosoft.protocol.network.connection.status.StatusConnection
|
import de.bixilon.minosoft.protocol.network.connection.status.StatusConnection
|
||||||
import de.bixilon.minosoft.protocol.network.connection.status.StatusConnectionStates
|
import de.bixilon.minosoft.protocol.network.connection.status.StatusConnectionStates
|
||||||
import de.bixilon.minosoft.util.DNSUtil
|
import de.bixilon.minosoft.util.DNSUtil
|
||||||
import de.bixilon.minosoft.util.KUtil.thousands
|
|
||||||
import de.bixilon.minosoft.util.KUtil.toResourceLocation
|
import de.bixilon.minosoft.util.KUtil.toResourceLocation
|
||||||
import de.bixilon.minosoft.util.delegate.watcher.entry.ListDelegateWatcher.Companion.watchListFX
|
import de.bixilon.minosoft.util.delegate.watcher.entry.ListDelegateWatcher.Companion.watchListFX
|
||||||
import javafx.fxml.FXML
|
import javafx.fxml.FXML
|
||||||
|
@ -14,6 +14,7 @@
|
|||||||
package de.bixilon.minosoft.gui.eros.main.play.server.card
|
package de.bixilon.minosoft.gui.eros.main.play.server.card
|
||||||
|
|
||||||
import de.bixilon.kutil.concurrent.pool.DefaultThreadPool
|
import de.bixilon.kutil.concurrent.pool.DefaultThreadPool
|
||||||
|
import de.bixilon.kutil.primitive.IntUtil.thousands
|
||||||
import de.bixilon.minosoft.Minosoft
|
import de.bixilon.minosoft.Minosoft
|
||||||
import de.bixilon.minosoft.data.registries.ResourceLocation
|
import de.bixilon.minosoft.data.registries.ResourceLocation
|
||||||
import de.bixilon.minosoft.data.text.ChatComponent
|
import de.bixilon.minosoft.data.text.ChatComponent
|
||||||
@ -31,7 +32,6 @@ import de.bixilon.minosoft.modding.event.events.connection.status.ServerStatusRe
|
|||||||
import de.bixilon.minosoft.modding.event.events.connection.status.StatusConnectionStateChangeEvent
|
import de.bixilon.minosoft.modding.event.events.connection.status.StatusConnectionStateChangeEvent
|
||||||
import de.bixilon.minosoft.modding.event.events.connection.status.StatusPongReceiveEvent
|
import de.bixilon.minosoft.modding.event.events.connection.status.StatusPongReceiveEvent
|
||||||
import de.bixilon.minosoft.util.KUtil.text
|
import de.bixilon.minosoft.util.KUtil.text
|
||||||
import de.bixilon.minosoft.util.KUtil.thousands
|
|
||||||
import de.bixilon.minosoft.util.KUtil.toResourceLocation
|
import de.bixilon.minosoft.util.KUtil.toResourceLocation
|
||||||
import de.bixilon.minosoft.util.PixelImageView
|
import de.bixilon.minosoft.util.PixelImageView
|
||||||
import javafx.fxml.FXML
|
import javafx.fxml.FXML
|
||||||
|
@ -13,7 +13,7 @@
|
|||||||
|
|
||||||
package de.bixilon.minosoft.gui.eros.main.profiles
|
package de.bixilon.minosoft.gui.eros.main.profiles
|
||||||
|
|
||||||
import de.bixilon.kutil.general.BooleanUtil.decide
|
import de.bixilon.kutil.primitive.BooleanUtil.decide
|
||||||
import de.bixilon.minosoft.Minosoft
|
import de.bixilon.minosoft.Minosoft
|
||||||
import de.bixilon.minosoft.config.profile.ProfileManager
|
import de.bixilon.minosoft.config.profile.ProfileManager
|
||||||
import de.bixilon.minosoft.config.profile.profiles.Profile
|
import de.bixilon.minosoft.config.profile.profiles.Profile
|
||||||
|
@ -15,6 +15,7 @@ package de.bixilon.minosoft.gui.eros.util
|
|||||||
|
|
||||||
import com.sun.javafx.util.WeakReferenceQueue
|
import com.sun.javafx.util.WeakReferenceQueue
|
||||||
import de.bixilon.kutil.cast.CastUtil.unsafeCast
|
import de.bixilon.kutil.cast.CastUtil.unsafeCast
|
||||||
|
import de.bixilon.kutil.reflection.ReflectionUtil.setValue
|
||||||
import de.bixilon.minosoft.Minosoft
|
import de.bixilon.minosoft.Minosoft
|
||||||
import de.bixilon.minosoft.config.profile.delegate.watcher.SimpleProfileDelegateWatcher.Companion.profileWatchFX
|
import de.bixilon.minosoft.config.profile.delegate.watcher.SimpleProfileDelegateWatcher.Companion.profileWatchFX
|
||||||
import de.bixilon.minosoft.config.profile.profiles.eros.ErosProfileManager
|
import de.bixilon.minosoft.config.profile.profiles.eros.ErosProfileManager
|
||||||
@ -22,7 +23,6 @@ import de.bixilon.minosoft.data.registries.ResourceLocation
|
|||||||
import de.bixilon.minosoft.gui.eros.controller.EmbeddedJavaFXController
|
import de.bixilon.minosoft.gui.eros.controller.EmbeddedJavaFXController
|
||||||
import de.bixilon.minosoft.gui.eros.controller.JavaFXController
|
import de.bixilon.minosoft.gui.eros.controller.JavaFXController
|
||||||
import de.bixilon.minosoft.gui.eros.controller.JavaFXWindowController
|
import de.bixilon.minosoft.gui.eros.controller.JavaFXWindowController
|
||||||
import de.bixilon.minosoft.util.KUtil.setValue
|
|
||||||
import javafx.application.HostServices
|
import javafx.application.HostServices
|
||||||
import javafx.application.Platform
|
import javafx.application.Platform
|
||||||
import javafx.css.StyleableProperty
|
import javafx.css.StyleableProperty
|
||||||
|
@ -15,9 +15,11 @@ package de.bixilon.minosoft.gui.rendering
|
|||||||
|
|
||||||
import de.bixilon.kutil.cast.CastUtil.unsafeCast
|
import de.bixilon.kutil.cast.CastUtil.unsafeCast
|
||||||
import de.bixilon.kutil.collections.CollectionUtil.synchronizedMapOf
|
import de.bixilon.kutil.collections.CollectionUtil.synchronizedMapOf
|
||||||
import de.bixilon.kutil.general.BooleanUtil.decide
|
import de.bixilon.kutil.concurrent.queue.Queue
|
||||||
import de.bixilon.kutil.latch.CountUpAndDownLatch
|
import de.bixilon.kutil.latch.CountUpAndDownLatch
|
||||||
import de.bixilon.kutil.math.MMath.round10
|
import de.bixilon.kutil.math.MMath.round10
|
||||||
|
import de.bixilon.kutil.primitive.BooleanUtil.decide
|
||||||
|
import de.bixilon.kutil.time.TimeUtil
|
||||||
import de.bixilon.minosoft.config.key.KeyAction
|
import de.bixilon.minosoft.config.key.KeyAction
|
||||||
import de.bixilon.minosoft.config.key.KeyBinding
|
import de.bixilon.minosoft.config.key.KeyBinding
|
||||||
import de.bixilon.minosoft.config.key.KeyCodes
|
import de.bixilon.minosoft.config.key.KeyCodes
|
||||||
@ -60,10 +62,8 @@ import de.bixilon.minosoft.protocol.network.connection.play.PlayConnection
|
|||||||
import de.bixilon.minosoft.protocol.packets.s2c.play.PositionAndRotationS2CP
|
import de.bixilon.minosoft.protocol.packets.s2c.play.PositionAndRotationS2CP
|
||||||
import de.bixilon.minosoft.protocol.protocol.ProtocolDefinition
|
import de.bixilon.minosoft.protocol.protocol.ProtocolDefinition
|
||||||
import de.bixilon.minosoft.terminal.RunConfiguration
|
import de.bixilon.minosoft.terminal.RunConfiguration
|
||||||
import de.bixilon.minosoft.util.KUtil
|
|
||||||
import de.bixilon.minosoft.util.KUtil.format
|
import de.bixilon.minosoft.util.KUtil.format
|
||||||
import de.bixilon.minosoft.util.KUtil.toResourceLocation
|
import de.bixilon.minosoft.util.KUtil.toResourceLocation
|
||||||
import de.bixilon.minosoft.util.Queue
|
|
||||||
import de.bixilon.minosoft.util.Stopwatch
|
import de.bixilon.minosoft.util.Stopwatch
|
||||||
import de.bixilon.minosoft.util.logging.Log
|
import de.bixilon.minosoft.util.logging.Log
|
||||||
import de.bixilon.minosoft.util.logging.LogLevels
|
import de.bixilon.minosoft.util.logging.LogLevels
|
||||||
@ -123,7 +123,7 @@ class RenderWindow(
|
|||||||
|
|
||||||
|
|
||||||
var tickCount = 0L
|
var tickCount = 0L
|
||||||
var lastTickTimer = KUtil.time
|
var lastTickTimer = TimeUtil.time
|
||||||
|
|
||||||
private var initialPositionReceived = false
|
private var initialPositionReceived = false
|
||||||
|
|
||||||
@ -319,7 +319,7 @@ class RenderWindow(
|
|||||||
renderSystem.clear(IntegratedBufferTypes.COLOR_BUFFER, IntegratedBufferTypes.DEPTH_BUFFER)
|
renderSystem.clear(IntegratedBufferTypes.COLOR_BUFFER, IntegratedBufferTypes.DEPTH_BUFFER)
|
||||||
|
|
||||||
|
|
||||||
val currentTickTime = KUtil.time
|
val currentTickTime = TimeUtil.time
|
||||||
if (currentTickTime - this.lastTickTimer > ProtocolDefinition.TICK_TIME) {
|
if (currentTickTime - this.lastTickTimer > ProtocolDefinition.TICK_TIME) {
|
||||||
tickCount++
|
tickCount++
|
||||||
// inputHandler.currentKeyConsumer?.tick(tickCount)
|
// inputHandler.currentKeyConsumer?.tick(tickCount)
|
||||||
|
@ -14,6 +14,7 @@
|
|||||||
package de.bixilon.minosoft.gui.rendering.camera.frustum
|
package de.bixilon.minosoft.gui.rendering.camera.frustum
|
||||||
|
|
||||||
|
|
||||||
|
import de.bixilon.kutil.collections.CollectionUtil.get
|
||||||
import de.bixilon.kutil.enums.EnumUtil
|
import de.bixilon.kutil.enums.EnumUtil
|
||||||
import de.bixilon.kutil.enums.ValuesEnum
|
import de.bixilon.kutil.enums.ValuesEnum
|
||||||
import de.bixilon.minosoft.data.registries.AABB
|
import de.bixilon.minosoft.data.registries.AABB
|
||||||
@ -21,7 +22,6 @@ import de.bixilon.minosoft.gui.rendering.RenderConstants
|
|||||||
import de.bixilon.minosoft.gui.rendering.camera.MatrixHandler
|
import de.bixilon.minosoft.gui.rendering.camera.MatrixHandler
|
||||||
import de.bixilon.minosoft.gui.rendering.util.VecUtil.of
|
import de.bixilon.minosoft.gui.rendering.util.VecUtil.of
|
||||||
import de.bixilon.minosoft.gui.rendering.util.vec.vec4.Vec4Util.dot
|
import de.bixilon.minosoft.gui.rendering.util.vec.vec4.Vec4Util.dot
|
||||||
import de.bixilon.minosoft.util.KUtil.get
|
|
||||||
import glm_.mat3x3.Mat3
|
import glm_.mat3x3.Mat3
|
||||||
import glm_.vec2.Vec2i
|
import glm_.vec2.Vec2i
|
||||||
import glm_.vec3.Vec3
|
import glm_.vec3.Vec3
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
package de.bixilon.minosoft.gui.rendering.camera.target
|
package de.bixilon.minosoft.gui.rendering.camera.target
|
||||||
|
|
||||||
import de.bixilon.kutil.general.BooleanUtil.decide
|
import de.bixilon.kutil.primitive.BooleanUtil.decide
|
||||||
import de.bixilon.minosoft.data.player.LocalPlayerEntity
|
import de.bixilon.minosoft.data.player.LocalPlayerEntity
|
||||||
import de.bixilon.minosoft.data.registries.VoxelShape
|
import de.bixilon.minosoft.data.registries.VoxelShape
|
||||||
import de.bixilon.minosoft.data.registries.blocks.types.FluidBlock
|
import de.bixilon.minosoft.data.registries.blocks.types.FluidBlock
|
||||||
|
@ -13,8 +13,8 @@
|
|||||||
|
|
||||||
package de.bixilon.minosoft.gui.rendering.font
|
package de.bixilon.minosoft.gui.rendering.font
|
||||||
|
|
||||||
import de.bixilon.kutil.general.BooleanUtil.decide
|
|
||||||
import de.bixilon.kutil.math.MMath.ceil
|
import de.bixilon.kutil.math.MMath.ceil
|
||||||
|
import de.bixilon.kutil.primitive.BooleanUtil.decide
|
||||||
import de.bixilon.minosoft.data.text.ChatColors
|
import de.bixilon.minosoft.data.text.ChatColors
|
||||||
import de.bixilon.minosoft.data.text.PreChatFormattingCodes
|
import de.bixilon.minosoft.data.text.PreChatFormattingCodes
|
||||||
import de.bixilon.minosoft.data.text.RGBColor
|
import de.bixilon.minosoft.data.text.RGBColor
|
||||||
|
@ -13,6 +13,7 @@
|
|||||||
|
|
||||||
package de.bixilon.minosoft.gui.rendering.font
|
package de.bixilon.minosoft.gui.rendering.font
|
||||||
|
|
||||||
|
import de.bixilon.kutil.check.CheckUtil.check
|
||||||
import de.bixilon.minosoft.assets.util.FileUtil.readJsonObject
|
import de.bixilon.minosoft.assets.util.FileUtil.readJsonObject
|
||||||
import de.bixilon.minosoft.data.registries.factory.DefaultFactory
|
import de.bixilon.minosoft.data.registries.factory.DefaultFactory
|
||||||
import de.bixilon.minosoft.gui.rendering.RenderWindow
|
import de.bixilon.minosoft.gui.rendering.RenderWindow
|
||||||
@ -20,7 +21,6 @@ import de.bixilon.minosoft.gui.rendering.font.provider.BitmapFontProvider
|
|||||||
import de.bixilon.minosoft.gui.rendering.font.provider.FontProvider
|
import de.bixilon.minosoft.gui.rendering.font.provider.FontProvider
|
||||||
import de.bixilon.minosoft.gui.rendering.font.provider.FontProviderFactory
|
import de.bixilon.minosoft.gui.rendering.font.provider.FontProviderFactory
|
||||||
import de.bixilon.minosoft.gui.rendering.font.provider.LegacyUnicodeFontProvider
|
import de.bixilon.minosoft.gui.rendering.font.provider.LegacyUnicodeFontProvider
|
||||||
import de.bixilon.minosoft.util.KUtil.check
|
|
||||||
import de.bixilon.minosoft.util.KUtil.toResourceLocation
|
import de.bixilon.minosoft.util.KUtil.toResourceLocation
|
||||||
import de.bixilon.minosoft.util.nbt.tag.NBTUtil.listCast
|
import de.bixilon.minosoft.util.nbt.tag.NBTUtil.listCast
|
||||||
|
|
||||||
|
@ -14,14 +14,14 @@
|
|||||||
package de.bixilon.minosoft.gui.rendering.font.provider
|
package de.bixilon.minosoft.gui.rendering.font.provider
|
||||||
|
|
||||||
import de.bixilon.kutil.cast.CastUtil.unsafeCast
|
import de.bixilon.kutil.cast.CastUtil.unsafeCast
|
||||||
|
import de.bixilon.kutil.json.JsonUtil.asJsonList
|
||||||
|
import de.bixilon.kutil.primitive.DoubleUtil.toDouble
|
||||||
import de.bixilon.minosoft.data.registries.ResourceLocation
|
import de.bixilon.minosoft.data.registries.ResourceLocation
|
||||||
import de.bixilon.minosoft.gui.rendering.RenderConstants
|
import de.bixilon.minosoft.gui.rendering.RenderConstants
|
||||||
import de.bixilon.minosoft.gui.rendering.RenderWindow
|
import de.bixilon.minosoft.gui.rendering.RenderWindow
|
||||||
import de.bixilon.minosoft.gui.rendering.font.CharData
|
import de.bixilon.minosoft.gui.rendering.font.CharData
|
||||||
import de.bixilon.minosoft.gui.rendering.font.Font
|
import de.bixilon.minosoft.gui.rendering.font.Font
|
||||||
import de.bixilon.minosoft.gui.rendering.textures.TextureUtil.texture
|
import de.bixilon.minosoft.gui.rendering.textures.TextureUtil.texture
|
||||||
import de.bixilon.minosoft.util.KUtil.asList
|
|
||||||
import de.bixilon.minosoft.util.KUtil.toDouble
|
|
||||||
import de.bixilon.minosoft.util.KUtil.toResourceLocation
|
import de.bixilon.minosoft.util.KUtil.toResourceLocation
|
||||||
import glm_.vec2.Vec2
|
import glm_.vec2.Vec2
|
||||||
|
|
||||||
@ -35,7 +35,7 @@ class BitmapFontProvider(
|
|||||||
private set
|
private set
|
||||||
|
|
||||||
init {
|
init {
|
||||||
val charRows = data["chars"].asList()
|
val charRows = data["chars"].asJsonList()
|
||||||
val texture = renderWindow.textureManager.staticTextures.createTexture(data["file"].toResourceLocation().texture())
|
val texture = renderWindow.textureManager.staticTextures.createTexture(data["file"].toResourceLocation().texture())
|
||||||
texture.load(renderWindow.connection.assetsManager)
|
texture.load(renderWindow.connection.assetsManager)
|
||||||
|
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
package de.bixilon.minosoft.gui.rendering.gui.elements.items
|
package de.bixilon.minosoft.gui.rendering.gui.elements.items
|
||||||
|
|
||||||
import de.bixilon.kutil.general.BooleanUtil.decide
|
import de.bixilon.kutil.primitive.BooleanUtil.decide
|
||||||
import de.bixilon.minosoft.data.inventory.ItemStack
|
import de.bixilon.minosoft.data.inventory.ItemStack
|
||||||
import de.bixilon.minosoft.data.registries.items.block.BlockItem
|
import de.bixilon.minosoft.data.registries.items.block.BlockItem
|
||||||
import de.bixilon.minosoft.data.text.ChatColors
|
import de.bixilon.minosoft.data.text.ChatColors
|
||||||
|
@ -13,7 +13,8 @@
|
|||||||
|
|
||||||
package de.bixilon.minosoft.gui.rendering.gui.elements.text
|
package de.bixilon.minosoft.gui.rendering.gui.elements.text
|
||||||
|
|
||||||
import de.bixilon.kutil.general.BooleanUtil.decide
|
import de.bixilon.kutil.primitive.BooleanUtil.decide
|
||||||
|
import de.bixilon.kutil.time.TimeUtil
|
||||||
import de.bixilon.minosoft.data.text.RGBColor
|
import de.bixilon.minosoft.data.text.RGBColor
|
||||||
import de.bixilon.minosoft.gui.rendering.RenderConstants
|
import de.bixilon.minosoft.gui.rendering.RenderConstants
|
||||||
import de.bixilon.minosoft.gui.rendering.gui.elements.Element
|
import de.bixilon.minosoft.gui.rendering.gui.elements.Element
|
||||||
@ -23,7 +24,6 @@ import de.bixilon.minosoft.gui.rendering.gui.hud.HUDRenderer
|
|||||||
import de.bixilon.minosoft.gui.rendering.gui.mesh.GUIVertexConsumer
|
import de.bixilon.minosoft.gui.rendering.gui.mesh.GUIVertexConsumer
|
||||||
import de.bixilon.minosoft.gui.rendering.gui.mesh.GUIVertexOptions
|
import de.bixilon.minosoft.gui.rendering.gui.mesh.GUIVertexOptions
|
||||||
import de.bixilon.minosoft.gui.rendering.util.vec.vec2.Vec2iUtil.EMPTY
|
import de.bixilon.minosoft.gui.rendering.util.vec.vec2.Vec2iUtil.EMPTY
|
||||||
import de.bixilon.minosoft.util.KUtil
|
|
||||||
import glm_.vec2.Vec2i
|
import glm_.vec2.Vec2i
|
||||||
|
|
||||||
class FadingTextElement(
|
class FadingTextElement(
|
||||||
@ -44,7 +44,7 @@ class FadingTextElement(
|
|||||||
if (hidden || !super.cacheEnabled) {
|
if (hidden || !super.cacheEnabled) {
|
||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
val time = KUtil.time
|
val time = TimeUtil.time
|
||||||
return (time >= fadeInEndTime) && (time < fadeOutStartTime)
|
return (time >= fadeInEndTime) && (time < fadeOutStartTime)
|
||||||
}
|
}
|
||||||
set(value) {
|
set(value) {
|
||||||
@ -78,7 +78,7 @@ class FadingTextElement(
|
|||||||
}
|
}
|
||||||
|
|
||||||
fun show() {
|
fun show() {
|
||||||
val time = KUtil.time
|
val time = TimeUtil.time
|
||||||
if (time in (fadeInEndTime + 1) until fadeOutStartTime) {
|
if (time in (fadeInEndTime + 1) until fadeOutStartTime) {
|
||||||
fadeOutStartTime = time + stayTime
|
fadeOutStartTime = time + stayTime
|
||||||
} else {
|
} else {
|
||||||
@ -95,7 +95,7 @@ class FadingTextElement(
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
// ToDo: Eventually fade out when fading in
|
// ToDo: Eventually fade out when fading in
|
||||||
val time = KUtil.time
|
val time = TimeUtil.time
|
||||||
fadeInStartTime = -1L
|
fadeInStartTime = -1L
|
||||||
fadeInEndTime = -1L
|
fadeInEndTime = -1L
|
||||||
fadeOutStartTime = time
|
fadeOutStartTime = time
|
||||||
@ -110,7 +110,7 @@ class FadingTextElement(
|
|||||||
if (hidden) {
|
if (hidden) {
|
||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
val hidden = KUtil.time > fadeOutEndTime
|
val hidden = TimeUtil.time > fadeOutEndTime
|
||||||
if (this.hidden != hidden) {
|
if (this.hidden != hidden) {
|
||||||
this.hidden = hidden
|
this.hidden = hidden
|
||||||
return true
|
return true
|
||||||
@ -122,7 +122,7 @@ class FadingTextElement(
|
|||||||
if (hidden) {
|
if (hidden) {
|
||||||
return 0
|
return 0
|
||||||
}
|
}
|
||||||
val time = KUtil.time
|
val time = TimeUtil.time
|
||||||
if (time > fadeOutEndTime) {
|
if (time > fadeOutEndTime) {
|
||||||
return 0
|
return 0
|
||||||
}
|
}
|
||||||
|
@ -13,7 +13,7 @@
|
|||||||
|
|
||||||
package de.bixilon.minosoft.gui.rendering.gui.elements.text
|
package de.bixilon.minosoft.gui.rendering.gui.elements.text
|
||||||
|
|
||||||
import de.bixilon.kutil.general.BooleanUtil.decide
|
import de.bixilon.kutil.primitive.BooleanUtil.decide
|
||||||
import de.bixilon.minosoft.data.text.ChatComponent
|
import de.bixilon.minosoft.data.text.ChatComponent
|
||||||
import de.bixilon.minosoft.data.text.RGBColor
|
import de.bixilon.minosoft.data.text.RGBColor
|
||||||
import de.bixilon.minosoft.gui.rendering.RenderConstants
|
import de.bixilon.minosoft.gui.rendering.RenderConstants
|
||||||
|
@ -15,6 +15,7 @@ package de.bixilon.minosoft.gui.rendering.gui.elements.text
|
|||||||
|
|
||||||
import de.bixilon.kutil.collections.CollectionUtil.synchronizedListOf
|
import de.bixilon.kutil.collections.CollectionUtil.synchronizedListOf
|
||||||
import de.bixilon.kutil.collections.CollectionUtil.toSynchronizedList
|
import de.bixilon.kutil.collections.CollectionUtil.toSynchronizedList
|
||||||
|
import de.bixilon.kutil.time.TimeUtil
|
||||||
import de.bixilon.minosoft.data.text.ChatComponent
|
import de.bixilon.minosoft.data.text.ChatComponent
|
||||||
import de.bixilon.minosoft.gui.rendering.RenderConstants
|
import de.bixilon.minosoft.gui.rendering.RenderConstants
|
||||||
import de.bixilon.minosoft.gui.rendering.font.Font
|
import de.bixilon.minosoft.gui.rendering.font.Font
|
||||||
@ -25,7 +26,6 @@ import de.bixilon.minosoft.gui.rendering.gui.mesh.GUIVertexConsumer
|
|||||||
import de.bixilon.minosoft.gui.rendering.gui.mesh.GUIVertexOptions
|
import de.bixilon.minosoft.gui.rendering.gui.mesh.GUIVertexOptions
|
||||||
import de.bixilon.minosoft.gui.rendering.util.vec.vec2.Vec2iUtil.EMPTY
|
import de.bixilon.minosoft.gui.rendering.util.vec.vec2.Vec2iUtil.EMPTY
|
||||||
import de.bixilon.minosoft.gui.rendering.util.vec.vec2.Vec2iUtil.max
|
import de.bixilon.minosoft.gui.rendering.util.vec.vec2.Vec2iUtil.max
|
||||||
import de.bixilon.minosoft.util.KUtil
|
|
||||||
import glm_.vec2.Vec2i
|
import glm_.vec2.Vec2i
|
||||||
|
|
||||||
class TextFlowElement(
|
class TextFlowElement(
|
||||||
@ -68,7 +68,7 @@ class TextFlowElement(
|
|||||||
val visibleLines: MutableList<TextFlowLineElement> = mutableListOf()
|
val visibleLines: MutableList<TextFlowLineElement> = mutableListOf()
|
||||||
val maxSize = maxSize
|
val maxSize = maxSize
|
||||||
val maxLines = maxSize.y / Font.TOTAL_CHAR_HEIGHT
|
val maxLines = maxSize.y / Font.TOTAL_CHAR_HEIGHT
|
||||||
val currentTime = KUtil.time
|
val currentTime = TimeUtil.time
|
||||||
var textSize = Vec2i.EMPTY
|
var textSize = Vec2i.EMPTY
|
||||||
|
|
||||||
|
|
||||||
@ -126,7 +126,7 @@ class TextFlowElement(
|
|||||||
operator fun plusAssign(message: ChatComponent) = addMessage(message)
|
operator fun plusAssign(message: ChatComponent) = addMessage(message)
|
||||||
|
|
||||||
private fun checkExpiredLines() {
|
private fun checkExpiredLines() {
|
||||||
val currentTime = KUtil.time
|
val currentTime = TimeUtil.time
|
||||||
|
|
||||||
for (line in visibleLines) {
|
for (line in visibleLines) {
|
||||||
if (currentTime - line.text.addTime > messageExpireTime) {
|
if (currentTime - line.text.addTime > messageExpireTime) {
|
||||||
@ -142,7 +142,7 @@ class TextFlowElement(
|
|||||||
|
|
||||||
private data class TextFlowTextElement(
|
private data class TextFlowTextElement(
|
||||||
val text: ChatComponent,
|
val text: ChatComponent,
|
||||||
val addTime: Long = KUtil.time,
|
val addTime: Long = TimeUtil.time,
|
||||||
)
|
)
|
||||||
|
|
||||||
private data class TextFlowLineElement(
|
private data class TextFlowLineElement(
|
||||||
|
@ -16,6 +16,7 @@ package de.bixilon.minosoft.gui.rendering.gui.hud
|
|||||||
import de.bixilon.kutil.cast.CastUtil.unsafeCast
|
import de.bixilon.kutil.cast.CastUtil.unsafeCast
|
||||||
import de.bixilon.kutil.collections.CollectionUtil.synchronizedMapOf
|
import de.bixilon.kutil.collections.CollectionUtil.synchronizedMapOf
|
||||||
import de.bixilon.kutil.collections.CollectionUtil.toSynchronizedMap
|
import de.bixilon.kutil.collections.CollectionUtil.toSynchronizedMap
|
||||||
|
import de.bixilon.kutil.time.TimeUtil
|
||||||
import de.bixilon.minosoft.config.key.KeyAction
|
import de.bixilon.minosoft.config.key.KeyAction
|
||||||
import de.bixilon.minosoft.config.key.KeyBinding
|
import de.bixilon.minosoft.config.key.KeyBinding
|
||||||
import de.bixilon.minosoft.config.key.KeyCodes
|
import de.bixilon.minosoft.config.key.KeyCodes
|
||||||
@ -47,7 +48,6 @@ import de.bixilon.minosoft.gui.rendering.system.base.phases.OtherDrawable
|
|||||||
import de.bixilon.minosoft.modding.event.invoker.CallbackEventInvoker
|
import de.bixilon.minosoft.modding.event.invoker.CallbackEventInvoker
|
||||||
import de.bixilon.minosoft.protocol.network.connection.play.PlayConnection
|
import de.bixilon.minosoft.protocol.network.connection.play.PlayConnection
|
||||||
import de.bixilon.minosoft.protocol.protocol.ProtocolDefinition
|
import de.bixilon.minosoft.protocol.protocol.ProtocolDefinition
|
||||||
import de.bixilon.minosoft.util.KUtil
|
|
||||||
import de.bixilon.minosoft.util.KUtil.toResourceLocation
|
import de.bixilon.minosoft.util.KUtil.toResourceLocation
|
||||||
import glm_.glm
|
import glm_.glm
|
||||||
import glm_.mat4x4.Mat4
|
import glm_.mat4x4.Mat4
|
||||||
@ -154,7 +154,7 @@ class HUDRenderer(
|
|||||||
override fun drawOther() {
|
override fun drawOther() {
|
||||||
val hudElements = hudElements.toSynchronizedMap().values
|
val hudElements = hudElements.toSynchronizedMap().values
|
||||||
|
|
||||||
val time = KUtil.time
|
val time = TimeUtil.time
|
||||||
if (time - lastTickTime > ProtocolDefinition.TICK_TIME) {
|
if (time - lastTickTime > ProtocolDefinition.TICK_TIME) {
|
||||||
for (element in hudElements) {
|
for (element in hudElements) {
|
||||||
if (!element.enabled) {
|
if (!element.enabled) {
|
||||||
|
@ -13,12 +13,13 @@
|
|||||||
|
|
||||||
package de.bixilon.minosoft.gui.rendering.gui.hud.atlas
|
package de.bixilon.minosoft.gui.rendering.gui.hud.atlas
|
||||||
|
|
||||||
|
import de.bixilon.kutil.json.JsonUtil.asJsonObject
|
||||||
|
import de.bixilon.kutil.json.JsonUtil.toJsonObject
|
||||||
|
import de.bixilon.kutil.primitive.IntUtil.toInt
|
||||||
import de.bixilon.minosoft.assets.util.FileUtil.readJsonObject
|
import de.bixilon.minosoft.assets.util.FileUtil.readJsonObject
|
||||||
import de.bixilon.minosoft.data.registries.ResourceLocation
|
import de.bixilon.minosoft.data.registries.ResourceLocation
|
||||||
import de.bixilon.minosoft.gui.rendering.gui.hud.HUDRenderer
|
import de.bixilon.minosoft.gui.rendering.gui.hud.HUDRenderer
|
||||||
import de.bixilon.minosoft.gui.rendering.util.vec.vec2.Vec2iUtil.toVec2i
|
import de.bixilon.minosoft.gui.rendering.util.vec.vec2.Vec2iUtil.toVec2i
|
||||||
import de.bixilon.minosoft.util.KUtil.mapCast
|
|
||||||
import de.bixilon.minosoft.util.KUtil.toInt
|
|
||||||
import de.bixilon.minosoft.util.KUtil.toResourceLocation
|
import de.bixilon.minosoft.util.KUtil.toResourceLocation
|
||||||
import glm_.vec2.Vec2
|
import glm_.vec2.Vec2
|
||||||
import glm_.vec2.Vec2i
|
import glm_.vec2.Vec2i
|
||||||
@ -49,16 +50,16 @@ class HUDAtlasManager(private val hudRenderer: HUDRenderer) {
|
|||||||
// can not find version that matches our one
|
// can not find version that matches our one
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
val versionData = versions[versionToUse.toString()]?.mapCast()!!
|
val versionData = versions[versionToUse.toString()].asJsonObject()
|
||||||
|
|
||||||
val texture = hudRenderer.renderWindow.textureManager.staticTextures.createTexture(versionData["texture"].toResourceLocation())
|
val texture = hudRenderer.renderWindow.textureManager.staticTextures.createTexture(versionData["texture"].toResourceLocation())
|
||||||
val start = versionData["start"].toVec2i()
|
val start = versionData["start"].toVec2i()
|
||||||
val end = versionData["end"].toVec2i()
|
val end = versionData["end"].toVec2i()
|
||||||
val slots: MutableMap<Int, Vec2iBinding> = mutableMapOf()
|
val slots: MutableMap<Int, Vec2iBinding> = mutableMapOf()
|
||||||
|
|
||||||
versionData["slots"]?.mapCast()?.let {
|
versionData["slots"].toJsonObject()?.let {
|
||||||
for ((slotId, slotData) in it) {
|
for ((slotId, slotData) in it) {
|
||||||
val slot = slotData.mapCast()!!
|
val slot = slotData.asJsonObject()
|
||||||
slots[slotId.toInt()] = Vec2iBinding(
|
slots[slotId.toInt()] = Vec2iBinding(
|
||||||
start = slot["start"].toVec2i(),
|
start = slot["start"].toVec2i(),
|
||||||
end = slot["end"].toVec2i(),
|
end = slot["end"].toVec2i(),
|
||||||
|
@ -14,8 +14,8 @@
|
|||||||
package de.bixilon.minosoft.gui.rendering.gui.hud.elements.hotbar
|
package de.bixilon.minosoft.gui.rendering.gui.hud.elements.hotbar
|
||||||
|
|
||||||
import de.bixilon.kutil.cast.CastUtil.unsafeCast
|
import de.bixilon.kutil.cast.CastUtil.unsafeCast
|
||||||
import de.bixilon.kutil.general.BooleanUtil.decide
|
|
||||||
import de.bixilon.kutil.math.MMath.round10
|
import de.bixilon.kutil.math.MMath.round10
|
||||||
|
import de.bixilon.kutil.primitive.BooleanUtil.decide
|
||||||
import de.bixilon.minosoft.data.registries.effects.DefaultStatusEffects
|
import de.bixilon.minosoft.data.registries.effects.DefaultStatusEffects
|
||||||
import de.bixilon.minosoft.data.registries.effects.attributes.DefaultStatusEffectAttributeNames
|
import de.bixilon.minosoft.data.registries.effects.attributes.DefaultStatusEffectAttributeNames
|
||||||
import de.bixilon.minosoft.data.text.BaseComponent
|
import de.bixilon.minosoft.data.text.BaseComponent
|
||||||
|
@ -13,8 +13,8 @@
|
|||||||
|
|
||||||
package de.bixilon.minosoft.gui.rendering.gui.hud.elements.hotbar
|
package de.bixilon.minosoft.gui.rendering.gui.hud.elements.hotbar
|
||||||
|
|
||||||
import de.bixilon.kutil.general.BooleanUtil.decide
|
|
||||||
import de.bixilon.kutil.math.MMath.round10
|
import de.bixilon.kutil.math.MMath.round10
|
||||||
|
import de.bixilon.kutil.primitive.BooleanUtil.decide
|
||||||
import de.bixilon.minosoft.data.entities.entities.LivingEntity
|
import de.bixilon.minosoft.data.entities.entities.LivingEntity
|
||||||
import de.bixilon.minosoft.data.registries.effects.attributes.DefaultStatusEffectAttributeNames
|
import de.bixilon.minosoft.data.registries.effects.attributes.DefaultStatusEffectAttributeNames
|
||||||
import de.bixilon.minosoft.data.text.ChatComponent
|
import de.bixilon.minosoft.data.text.ChatComponent
|
||||||
|
@ -14,6 +14,7 @@
|
|||||||
package de.bixilon.minosoft.gui.rendering.gui.hud.elements.other
|
package de.bixilon.minosoft.gui.rendering.gui.hud.elements.other
|
||||||
|
|
||||||
import de.bixilon.kutil.math.MMath.round10
|
import de.bixilon.kutil.math.MMath.round10
|
||||||
|
import de.bixilon.kutil.unit.UnitFormatter.formatBytes
|
||||||
import de.bixilon.minosoft.config.key.KeyAction
|
import de.bixilon.minosoft.config.key.KeyAction
|
||||||
import de.bixilon.minosoft.config.key.KeyBinding
|
import de.bixilon.minosoft.config.key.KeyBinding
|
||||||
import de.bixilon.minosoft.config.key.KeyCodes
|
import de.bixilon.minosoft.config.key.KeyCodes
|
||||||
@ -42,14 +43,12 @@ import de.bixilon.minosoft.gui.rendering.world.WorldRenderer
|
|||||||
import de.bixilon.minosoft.modding.event.events.DifficultyChangeEvent
|
import de.bixilon.minosoft.modding.event.events.DifficultyChangeEvent
|
||||||
import de.bixilon.minosoft.modding.event.events.TimeChangeEvent
|
import de.bixilon.minosoft.modding.event.events.TimeChangeEvent
|
||||||
import de.bixilon.minosoft.modding.event.invoker.CallbackEventInvoker
|
import de.bixilon.minosoft.modding.event.invoker.CallbackEventInvoker
|
||||||
import de.bixilon.minosoft.modding.loading.ModLoader
|
|
||||||
import de.bixilon.minosoft.protocol.protocol.ProtocolDefinition
|
import de.bixilon.minosoft.protocol.protocol.ProtocolDefinition
|
||||||
import de.bixilon.minosoft.terminal.RunConfiguration
|
import de.bixilon.minosoft.terminal.RunConfiguration
|
||||||
import de.bixilon.minosoft.util.GitInfo
|
import de.bixilon.minosoft.util.GitInfo
|
||||||
import de.bixilon.minosoft.util.KUtil.format
|
import de.bixilon.minosoft.util.KUtil.format
|
||||||
import de.bixilon.minosoft.util.KUtil.toResourceLocation
|
import de.bixilon.minosoft.util.KUtil.toResourceLocation
|
||||||
import de.bixilon.minosoft.util.SystemInformation
|
import de.bixilon.minosoft.util.SystemInformation
|
||||||
import de.bixilon.minosoft.util.UnitFormatter.formatBytes
|
|
||||||
import glm_.vec2.Vec2i
|
import glm_.vec2.Vec2i
|
||||||
import glm_.vec4.Vec4i
|
import glm_.vec4.Vec4i
|
||||||
import kotlin.math.abs
|
import kotlin.math.abs
|
||||||
@ -223,7 +222,7 @@ class DebugHUDElement(hudRenderer: HUDRenderer) : LayoutedHUDElement<GridLayout>
|
|||||||
|
|
||||||
layout += LineSpacerElement(hudRenderer)
|
layout += LineSpacerElement(hudRenderer)
|
||||||
|
|
||||||
layout += TextElement(hudRenderer, "Mods ${ModLoader.MOD_MAP.size}x loaded, ${connection.size}x listeners", HorizontalAlignments.RIGHT)
|
layout += TextElement(hudRenderer, "${connection.size}x listeners", HorizontalAlignments.RIGHT)
|
||||||
|
|
||||||
layout += LineSpacerElement(hudRenderer)
|
layout += LineSpacerElement(hudRenderer)
|
||||||
|
|
||||||
|
@ -15,7 +15,7 @@ package de.bixilon.minosoft.gui.rendering.gui.hud.elements.tab
|
|||||||
|
|
||||||
import de.bixilon.kutil.collections.CollectionUtil.synchronizedMapOf
|
import de.bixilon.kutil.collections.CollectionUtil.synchronizedMapOf
|
||||||
import de.bixilon.kutil.collections.CollectionUtil.toSynchronizedMap
|
import de.bixilon.kutil.collections.CollectionUtil.toSynchronizedMap
|
||||||
import de.bixilon.kutil.general.BooleanUtil.decide
|
import de.bixilon.kutil.primitive.BooleanUtil.decide
|
||||||
import de.bixilon.minosoft.data.text.RGBColor
|
import de.bixilon.minosoft.data.text.RGBColor
|
||||||
import de.bixilon.minosoft.gui.rendering.gui.elements.Element
|
import de.bixilon.minosoft.gui.rendering.gui.elements.Element
|
||||||
import de.bixilon.minosoft.gui.rendering.gui.elements.HorizontalAlignments
|
import de.bixilon.minosoft.gui.rendering.gui.elements.HorizontalAlignments
|
||||||
|
@ -14,6 +14,7 @@
|
|||||||
package de.bixilon.minosoft.gui.rendering.input.interaction
|
package de.bixilon.minosoft.gui.rendering.input.interaction
|
||||||
|
|
||||||
import de.bixilon.kutil.collections.CollectionUtil.synchronizedMapOf
|
import de.bixilon.kutil.collections.CollectionUtil.synchronizedMapOf
|
||||||
|
import de.bixilon.kutil.time.TimeUtil
|
||||||
import de.bixilon.minosoft.config.key.KeyAction
|
import de.bixilon.minosoft.config.key.KeyAction
|
||||||
import de.bixilon.minosoft.config.key.KeyBinding
|
import de.bixilon.minosoft.config.key.KeyBinding
|
||||||
import de.bixilon.minosoft.config.key.KeyCodes
|
import de.bixilon.minosoft.config.key.KeyCodes
|
||||||
@ -31,7 +32,6 @@ import de.bixilon.minosoft.modding.event.invoker.CallbackEventInvoker
|
|||||||
import de.bixilon.minosoft.protocol.packets.c2s.play.ArmSwingC2SP
|
import de.bixilon.minosoft.protocol.packets.c2s.play.ArmSwingC2SP
|
||||||
import de.bixilon.minosoft.protocol.packets.c2s.play.PlayerActionC2SP
|
import de.bixilon.minosoft.protocol.packets.c2s.play.PlayerActionC2SP
|
||||||
import de.bixilon.minosoft.protocol.protocol.ProtocolDefinition
|
import de.bixilon.minosoft.protocol.protocol.ProtocolDefinition
|
||||||
import de.bixilon.minosoft.util.KUtil
|
|
||||||
import de.bixilon.minosoft.util.KUtil.toResourceLocation
|
import de.bixilon.minosoft.util.KUtil.toResourceLocation
|
||||||
import glm_.pow
|
import glm_.pow
|
||||||
import glm_.vec3.Vec3i
|
import glm_.vec3.Vec3i
|
||||||
@ -77,7 +77,7 @@ class BreakInteractionHandler(
|
|||||||
}
|
}
|
||||||
|
|
||||||
private fun swingArm() {
|
private fun swingArm() {
|
||||||
val currentTime = KUtil.time
|
val currentTime = TimeUtil.time
|
||||||
if (currentTime - lastSwing <= ProtocolDefinition.TICK_TIME) {
|
if (currentTime - lastSwing <= ProtocolDefinition.TICK_TIME) {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
@ -86,7 +86,7 @@ class BreakInteractionHandler(
|
|||||||
}
|
}
|
||||||
|
|
||||||
private fun checkBreaking(isKeyDown: Boolean, deltaTime: Double): Boolean {
|
private fun checkBreaking(isKeyDown: Boolean, deltaTime: Double): Boolean {
|
||||||
val currentTime = KUtil.time
|
val currentTime = TimeUtil.time
|
||||||
|
|
||||||
if (!isKeyDown) {
|
if (!isKeyDown) {
|
||||||
creativeLastHoldBreakTime = 0L
|
creativeLastHoldBreakTime = 0L
|
||||||
|
@ -1,12 +1,12 @@
|
|||||||
package de.bixilon.minosoft.gui.rendering.input.interaction
|
package de.bixilon.minosoft.gui.rendering.input.interaction
|
||||||
|
|
||||||
import de.bixilon.kutil.rate.RateLimiter
|
import de.bixilon.kutil.rate.RateLimiter
|
||||||
|
import de.bixilon.kutil.time.TimeUtil
|
||||||
import de.bixilon.minosoft.config.key.KeyAction
|
import de.bixilon.minosoft.config.key.KeyAction
|
||||||
import de.bixilon.minosoft.config.key.KeyBinding
|
import de.bixilon.minosoft.config.key.KeyBinding
|
||||||
import de.bixilon.minosoft.config.key.KeyCodes
|
import de.bixilon.minosoft.config.key.KeyCodes
|
||||||
import de.bixilon.minosoft.gui.rendering.RenderWindow
|
import de.bixilon.minosoft.gui.rendering.RenderWindow
|
||||||
import de.bixilon.minosoft.protocol.packets.c2s.play.PlayerActionC2SP
|
import de.bixilon.minosoft.protocol.packets.c2s.play.PlayerActionC2SP
|
||||||
import de.bixilon.minosoft.util.KUtil
|
|
||||||
import de.bixilon.minosoft.util.KUtil.toResourceLocation
|
import de.bixilon.minosoft.util.KUtil.toResourceLocation
|
||||||
|
|
||||||
class DropInteractionManager(
|
class DropInteractionManager(
|
||||||
@ -33,7 +33,7 @@ class DropInteractionManager(
|
|||||||
|
|
||||||
|
|
||||||
fun dropItem(stack: Boolean) {
|
fun dropItem(stack: Boolean) {
|
||||||
val time = KUtil.time
|
val time = TimeUtil.time
|
||||||
val type = if (stack) {
|
val type = if (stack) {
|
||||||
connection.player.inventory.getHotbarSlot()?.count = 0
|
connection.player.inventory.getHotbarSlot()?.count = 0
|
||||||
PlayerActionC2SP.Actions.DROP_ITEM_STACK
|
PlayerActionC2SP.Actions.DROP_ITEM_STACK
|
||||||
|
@ -13,6 +13,7 @@
|
|||||||
|
|
||||||
package de.bixilon.minosoft.gui.rendering.input.interaction
|
package de.bixilon.minosoft.gui.rendering.input.interaction
|
||||||
|
|
||||||
|
import de.bixilon.kutil.time.TimeUtil
|
||||||
import de.bixilon.minosoft.config.key.KeyAction
|
import de.bixilon.minosoft.config.key.KeyAction
|
||||||
import de.bixilon.minosoft.config.key.KeyBinding
|
import de.bixilon.minosoft.config.key.KeyBinding
|
||||||
import de.bixilon.minosoft.config.key.KeyCodes
|
import de.bixilon.minosoft.config.key.KeyCodes
|
||||||
@ -30,7 +31,6 @@ import de.bixilon.minosoft.protocol.packets.c2s.play.PositionAndRotationC2SP
|
|||||||
import de.bixilon.minosoft.protocol.packets.c2s.play.entity.interact.EntityInteractAtC2SP
|
import de.bixilon.minosoft.protocol.packets.c2s.play.entity.interact.EntityInteractAtC2SP
|
||||||
import de.bixilon.minosoft.protocol.packets.c2s.play.entity.interact.EntityInteractC2SP
|
import de.bixilon.minosoft.protocol.packets.c2s.play.entity.interact.EntityInteractC2SP
|
||||||
import de.bixilon.minosoft.protocol.protocol.ProtocolDefinition
|
import de.bixilon.minosoft.protocol.protocol.ProtocolDefinition
|
||||||
import de.bixilon.minosoft.util.KUtil
|
|
||||||
import de.bixilon.minosoft.util.KUtil.toResourceLocation
|
import de.bixilon.minosoft.util.KUtil.toResourceLocation
|
||||||
import glm_.vec3.Vec3
|
import glm_.vec3.Vec3
|
||||||
|
|
||||||
@ -217,7 +217,7 @@ class InteractInteractionHandler(
|
|||||||
}
|
}
|
||||||
|
|
||||||
fun draw(delta: Double) {
|
fun draw(delta: Double) {
|
||||||
val time = KUtil.time
|
val time = TimeUtil.time
|
||||||
if (time - lastUse < ProtocolDefinition.TICK_TIME) {
|
if (time - lastUse < ProtocolDefinition.TICK_TIME) {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
@ -13,6 +13,7 @@
|
|||||||
|
|
||||||
package de.bixilon.minosoft.gui.rendering.input.key
|
package de.bixilon.minosoft.gui.rendering.input.key
|
||||||
|
|
||||||
|
import de.bixilon.kutil.time.TimeUtil
|
||||||
import de.bixilon.minosoft.config.StaticConfiguration
|
import de.bixilon.minosoft.config.StaticConfiguration
|
||||||
import de.bixilon.minosoft.config.key.KeyAction
|
import de.bixilon.minosoft.config.key.KeyAction
|
||||||
import de.bixilon.minosoft.config.key.KeyBinding
|
import de.bixilon.minosoft.config.key.KeyBinding
|
||||||
@ -30,7 +31,6 @@ import de.bixilon.minosoft.gui.rendering.system.window.CursorModes
|
|||||||
import de.bixilon.minosoft.gui.rendering.system.window.KeyChangeTypes
|
import de.bixilon.minosoft.gui.rendering.system.window.KeyChangeTypes
|
||||||
import de.bixilon.minosoft.modding.event.invoker.CallbackEventInvoker
|
import de.bixilon.minosoft.modding.event.invoker.CallbackEventInvoker
|
||||||
import de.bixilon.minosoft.protocol.network.connection.play.PlayConnection
|
import de.bixilon.minosoft.protocol.network.connection.play.PlayConnection
|
||||||
import de.bixilon.minosoft.util.KUtil
|
|
||||||
import de.bixilon.minosoft.util.KUtil.format
|
import de.bixilon.minosoft.util.KUtil.format
|
||||||
import de.bixilon.minosoft.util.KUtil.toResourceLocation
|
import de.bixilon.minosoft.util.KUtil.toResourceLocation
|
||||||
|
|
||||||
@ -110,7 +110,7 @@ class RenderWindowInputHandler(
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
val currentTime = KUtil.time
|
val currentTime = TimeUtil.time
|
||||||
|
|
||||||
if (keyDown) {
|
if (keyDown) {
|
||||||
keysDown += keyCode
|
keysDown += keyCode
|
||||||
@ -206,7 +206,7 @@ class RenderWindowInputHandler(
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Log.debug("Changing $resourceLocation because of $keyCode -> $thisKeyBindingDown")
|
// Log.debug("Changing $resourceLocation because of $keyCode -> $thisKeyBindingDown")
|
||||||
pair.lastChange = KUtil.time
|
pair.lastChange = TimeUtil.time
|
||||||
for (callback in pair.callback) {
|
for (callback in pair.callback) {
|
||||||
callback(thisKeyBindingDown)
|
callback(thisKeyBindingDown)
|
||||||
}
|
}
|
||||||
|
@ -13,9 +13,9 @@
|
|||||||
|
|
||||||
package de.bixilon.minosoft.gui.rendering.models.unbaked
|
package de.bixilon.minosoft.gui.rendering.models.unbaked
|
||||||
|
|
||||||
|
import de.bixilon.kutil.primitive.BooleanUtil.toBoolean
|
||||||
import de.bixilon.minosoft.gui.rendering.RenderWindow
|
import de.bixilon.minosoft.gui.rendering.RenderWindow
|
||||||
import de.bixilon.minosoft.gui.rendering.models.baked.BakedModel
|
import de.bixilon.minosoft.gui.rendering.models.baked.BakedModel
|
||||||
import de.bixilon.minosoft.util.KUtil.toBoolean
|
|
||||||
|
|
||||||
class UnbakedBlockModel(
|
class UnbakedBlockModel(
|
||||||
parent: GenericUnbakedModel?,
|
parent: GenericUnbakedModel?,
|
||||||
|
@ -14,6 +14,8 @@
|
|||||||
package de.bixilon.minosoft.gui.rendering.models.unbaked.block
|
package de.bixilon.minosoft.gui.rendering.models.unbaked.block
|
||||||
|
|
||||||
import de.bixilon.kutil.cast.CastUtil.unsafeCast
|
import de.bixilon.kutil.cast.CastUtil.unsafeCast
|
||||||
|
import de.bixilon.kutil.primitive.BooleanUtil.toBoolean
|
||||||
|
import de.bixilon.kutil.primitive.IntUtil.toInt
|
||||||
import de.bixilon.minosoft.data.Axes
|
import de.bixilon.minosoft.data.Axes
|
||||||
import de.bixilon.minosoft.data.direction.Directions
|
import de.bixilon.minosoft.data.direction.Directions
|
||||||
import de.bixilon.minosoft.gui.rendering.RenderWindow
|
import de.bixilon.minosoft.gui.rendering.RenderWindow
|
||||||
@ -31,8 +33,6 @@ import de.bixilon.minosoft.gui.rendering.util.vec.vec2.Vec2iUtil.rad
|
|||||||
import de.bixilon.minosoft.gui.rendering.util.vec.vec2.Vec2iUtil.toVec2iN
|
import de.bixilon.minosoft.gui.rendering.util.vec.vec2.Vec2iUtil.toVec2iN
|
||||||
import de.bixilon.minosoft.gui.rendering.util.vec.vec3.Vec3Util.get
|
import de.bixilon.minosoft.gui.rendering.util.vec.vec3.Vec3Util.get
|
||||||
import de.bixilon.minosoft.gui.rendering.util.vec.vec3.Vec3Util.rotateAssign
|
import de.bixilon.minosoft.gui.rendering.util.vec.vec3.Vec3Util.rotateAssign
|
||||||
import de.bixilon.minosoft.util.KUtil.toBoolean
|
|
||||||
import de.bixilon.minosoft.util.KUtil.toInt
|
|
||||||
import de.bixilon.minosoft.util.KUtil.toResourceLocation
|
import de.bixilon.minosoft.util.KUtil.toResourceLocation
|
||||||
import glm_.func.rad
|
import glm_.func.rad
|
||||||
import glm_.vec2.Vec2
|
import glm_.vec2.Vec2
|
||||||
|
@ -14,9 +14,9 @@
|
|||||||
package de.bixilon.minosoft.gui.rendering.models.unbaked.element
|
package de.bixilon.minosoft.gui.rendering.models.unbaked.element
|
||||||
|
|
||||||
import de.bixilon.kutil.cast.CastUtil.unsafeCast
|
import de.bixilon.kutil.cast.CastUtil.unsafeCast
|
||||||
|
import de.bixilon.kutil.primitive.BooleanUtil.toBoolean
|
||||||
import de.bixilon.minosoft.data.direction.Directions
|
import de.bixilon.minosoft.data.direction.Directions
|
||||||
import de.bixilon.minosoft.gui.rendering.util.vec.vec3.Vec3Util.toVec3
|
import de.bixilon.minosoft.gui.rendering.util.vec.vec3.Vec3Util.toVec3
|
||||||
import de.bixilon.minosoft.util.KUtil.toBoolean
|
|
||||||
import de.bixilon.minosoft.util.nbt.tag.NBTUtil.asCompound
|
import de.bixilon.minosoft.util.nbt.tag.NBTUtil.asCompound
|
||||||
import de.bixilon.minosoft.util.nbt.tag.NBTUtil.compoundCast
|
import de.bixilon.minosoft.util.nbt.tag.NBTUtil.compoundCast
|
||||||
import glm_.vec3.Vec3
|
import glm_.vec3.Vec3
|
||||||
|
@ -13,9 +13,9 @@
|
|||||||
|
|
||||||
package de.bixilon.minosoft.gui.rendering.models.unbaked.element
|
package de.bixilon.minosoft.gui.rendering.models.unbaked.element
|
||||||
|
|
||||||
|
import de.bixilon.kutil.primitive.IntUtil.toInt
|
||||||
import de.bixilon.minosoft.data.direction.Directions
|
import de.bixilon.minosoft.data.direction.Directions
|
||||||
import de.bixilon.minosoft.gui.rendering.models.unbaked.element.UnbakedElement.Companion.BLOCK_RESOLUTION
|
import de.bixilon.minosoft.gui.rendering.models.unbaked.element.UnbakedElement.Companion.BLOCK_RESOLUTION
|
||||||
import de.bixilon.minosoft.util.KUtil.toInt
|
|
||||||
import de.bixilon.minosoft.util.nbt.tag.NBTUtil.listCast
|
import de.bixilon.minosoft.util.nbt.tag.NBTUtil.listCast
|
||||||
import glm_.vec2.Vec2
|
import glm_.vec2.Vec2
|
||||||
|
|
||||||
|
@ -13,10 +13,10 @@
|
|||||||
|
|
||||||
package de.bixilon.minosoft.gui.rendering.models.unbaked.element
|
package de.bixilon.minosoft.gui.rendering.models.unbaked.element
|
||||||
|
|
||||||
|
import de.bixilon.kutil.primitive.BooleanUtil.toBoolean
|
||||||
|
import de.bixilon.kutil.primitive.FloatUtil.toFloat
|
||||||
import de.bixilon.minosoft.data.Axes
|
import de.bixilon.minosoft.data.Axes
|
||||||
import de.bixilon.minosoft.gui.rendering.util.vec.vec3.Vec3Util.toVec3
|
import de.bixilon.minosoft.gui.rendering.util.vec.vec3.Vec3Util.toVec3
|
||||||
import de.bixilon.minosoft.util.KUtil.toBoolean
|
|
||||||
import de.bixilon.minosoft.util.KUtil.toFloat
|
|
||||||
import glm_.vec3.Vec3
|
import glm_.vec3.Vec3
|
||||||
|
|
||||||
data class UnbakedElementRotation(
|
data class UnbakedElementRotation(
|
||||||
|
@ -16,6 +16,7 @@ package de.bixilon.minosoft.gui.rendering.particle
|
|||||||
import de.bixilon.kutil.concurrent.lock.ReadWriteLock
|
import de.bixilon.kutil.concurrent.lock.ReadWriteLock
|
||||||
import de.bixilon.kutil.concurrent.time.TimeWorker
|
import de.bixilon.kutil.concurrent.time.TimeWorker
|
||||||
import de.bixilon.kutil.concurrent.time.TimeWorkerTask
|
import de.bixilon.kutil.concurrent.time.TimeWorkerTask
|
||||||
|
import de.bixilon.kutil.time.TimeUtil
|
||||||
import de.bixilon.minosoft.config.profile.delegate.watcher.SimpleProfileDelegateWatcher.Companion.profileWatch
|
import de.bixilon.minosoft.config.profile.delegate.watcher.SimpleProfileDelegateWatcher.Companion.profileWatch
|
||||||
import de.bixilon.minosoft.data.registries.ResourceLocation
|
import de.bixilon.minosoft.data.registries.ResourceLocation
|
||||||
import de.bixilon.minosoft.gui.rendering.*
|
import de.bixilon.minosoft.gui.rendering.*
|
||||||
@ -31,7 +32,6 @@ import de.bixilon.minosoft.modding.event.invoker.CallbackEventInvoker
|
|||||||
import de.bixilon.minosoft.protocol.network.connection.play.PlayConnection
|
import de.bixilon.minosoft.protocol.network.connection.play.PlayConnection
|
||||||
import de.bixilon.minosoft.protocol.network.connection.play.PlayConnectionStates.Companion.disconnected
|
import de.bixilon.minosoft.protocol.network.connection.play.PlayConnectionStates.Companion.disconnected
|
||||||
import de.bixilon.minosoft.protocol.protocol.ProtocolDefinition
|
import de.bixilon.minosoft.protocol.protocol.ProtocolDefinition
|
||||||
import de.bixilon.minosoft.util.KUtil
|
|
||||||
import de.bixilon.minosoft.util.chunk.ChunkUtil.isInViewDistance
|
import de.bixilon.minosoft.util.chunk.ChunkUtil.isInViewDistance
|
||||||
import de.bixilon.minosoft.util.collections.floats.DirectArrayFloatList
|
import de.bixilon.minosoft.util.collections.floats.DirectArrayFloatList
|
||||||
import glm_.mat4x4.Mat4
|
import glm_.mat4x4.Mat4
|
||||||
@ -151,7 +151,7 @@ class ParticleRenderer(
|
|||||||
|
|
||||||
particlesLock.acquire()
|
particlesLock.acquire()
|
||||||
try {
|
try {
|
||||||
val time = KUtil.time
|
val time = TimeUtil.time
|
||||||
for (particle in particles) {
|
for (particle in particles) {
|
||||||
if (!particle.chunkPosition.isInViewDistance(particleViewDistance, cameraPosition)) {
|
if (!particle.chunkPosition.isInViewDistance(particleViewDistance, cameraPosition)) {
|
||||||
particle.dead = true
|
particle.dead = true
|
||||||
@ -219,7 +219,7 @@ class ParticleRenderer(
|
|||||||
|
|
||||||
particlesLock.acquire()
|
particlesLock.acquire()
|
||||||
|
|
||||||
val time = KUtil.time
|
val time = TimeUtil.time
|
||||||
for (particle in particles) {
|
for (particle in particles) {
|
||||||
if (particle.dead) {
|
if (particle.dead) {
|
||||||
continue
|
continue
|
||||||
|
@ -13,6 +13,7 @@
|
|||||||
|
|
||||||
package de.bixilon.minosoft.gui.rendering.particle.types
|
package de.bixilon.minosoft.gui.rendering.particle.types
|
||||||
|
|
||||||
|
import de.bixilon.kutil.time.TimeUtil
|
||||||
import de.bixilon.minosoft.data.physics.PhysicsEntity
|
import de.bixilon.minosoft.data.physics.PhysicsEntity
|
||||||
import de.bixilon.minosoft.data.registries.AABB
|
import de.bixilon.minosoft.data.registries.AABB
|
||||||
import de.bixilon.minosoft.data.registries.particle.data.ParticleData
|
import de.bixilon.minosoft.data.registries.particle.data.ParticleData
|
||||||
@ -25,7 +26,6 @@ import de.bixilon.minosoft.gui.rendering.util.vec.vec3.Vec3Util.EMPTY
|
|||||||
import de.bixilon.minosoft.gui.rendering.util.vec.vec3.Vec3dUtil.EMPTY
|
import de.bixilon.minosoft.gui.rendering.util.vec.vec3.Vec3dUtil.EMPTY
|
||||||
import de.bixilon.minosoft.protocol.network.connection.play.PlayConnection
|
import de.bixilon.minosoft.protocol.network.connection.play.PlayConnection
|
||||||
import de.bixilon.minosoft.protocol.protocol.ProtocolDefinition
|
import de.bixilon.minosoft.protocol.protocol.ProtocolDefinition
|
||||||
import de.bixilon.minosoft.util.KUtil
|
|
||||||
import glm_.vec2.Vec2i
|
import glm_.vec2.Vec2i
|
||||||
import glm_.vec3.Vec3
|
import glm_.vec3.Vec3
|
||||||
import glm_.vec3.Vec3d
|
import glm_.vec3.Vec3d
|
||||||
@ -58,7 +58,7 @@ abstract class Particle(
|
|||||||
|
|
||||||
// moving
|
// moving
|
||||||
val cameraPosition: Vec3d
|
val cameraPosition: Vec3d
|
||||||
get() = getCameraPosition(KUtil.time)
|
get() = getCameraPosition(TimeUtil.time)
|
||||||
|
|
||||||
final override val velocity: Vec3d = Vec3d(velocity)
|
final override val velocity: Vec3d = Vec3d(velocity)
|
||||||
var previousPosition = position
|
var previousPosition = position
|
||||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user