aboutsummaryrefslogtreecommitdiff
path: root/src/main
diff options
context:
space:
mode:
authorLinnea Gräf <nea@nea.moe>2025-09-14 19:46:52 +0200
committerLinnea Gräf <nea@nea.moe>2025-09-14 19:46:52 +0200
commit0a96dd618acba15269627c7eae8a2291fb2dc84a (patch)
treef31a66cbd13cefbfb2d006f07d3ef3da1010f7e7 /src/main
parent9abe9f46f04f188037687adb2740b32220ad21b2 (diff)
downloadFirmament-0a96dd618acba15269627c7eae8a2291fb2dc84a.tar.gz
Firmament-0a96dd618acba15269627c7eae8a2291fb2dc84a.tar.bz2
Firmament-0a96dd618acba15269627c7eae8a2291fb2dc84a.zip
snapshot
Diffstat (limited to 'src/main')
-rw-r--r--src/main/java/moe/nea/firmament/util/data/ManagedConfig.kt2
-rw-r--r--src/main/kotlin/Firmament.kt3
-rw-r--r--src/main/kotlin/apis/Profiles.kt8
-rw-r--r--src/main/kotlin/apis/Routes.kt14
-rw-r--r--src/main/kotlin/apis/UrsaManager.kt16
-rw-r--r--src/main/kotlin/commands/Duration.kt1
-rw-r--r--src/main/kotlin/commands/dsl.kt8
-rw-r--r--src/main/kotlin/commands/rome.kt2
-rw-r--r--src/main/kotlin/events/AllowChatEvent.kt2
-rw-r--r--src/main/kotlin/events/EntityRenderTintEvent.kt1
-rw-r--r--src/main/kotlin/events/FeaturesInitializedEvent.kt8
-rw-r--r--src/main/kotlin/events/IsSlotProtectedEvent.kt1
-rw-r--r--src/main/kotlin/events/ModifyChatEvent.kt2
-rw-r--r--src/main/kotlin/events/SlotRenderEvents.kt3
-rw-r--r--src/main/kotlin/events/WorldRenderLastEvent.kt4
-rw-r--r--src/main/kotlin/events/subscription/Subscription.kt4
-rw-r--r--src/main/kotlin/features/FeatureManager.kt107
-rw-r--r--src/main/kotlin/features/FirmamentFeature.kt23
-rw-r--r--src/main/kotlin/features/chat/AutoCompletions.kt13
-rw-r--r--src/main/kotlin/features/chat/ChatLinks.kt11
-rw-r--r--src/main/kotlin/features/chat/CopyChat.kt16
-rw-r--r--src/main/kotlin/features/chat/PartyCommands.kt2
-rw-r--r--src/main/kotlin/features/chat/QuickCommands.kt41
-rw-r--r--src/main/kotlin/features/debug/DebugLogger.kt4
-rw-r--r--src/main/kotlin/features/debug/DebugView.kt29
-rw-r--r--src/main/kotlin/features/debug/DeveloperFeatures.kt13
-rw-r--r--src/main/kotlin/features/debug/MinorTrolling.kt6
-rw-r--r--src/main/kotlin/features/debug/PowerUserTools.kt12
-rw-r--r--src/main/kotlin/features/diana/AncestralSpadeSolver.kt9
-rw-r--r--src/main/kotlin/features/diana/DianaWaypoints.kt38
-rw-r--r--src/main/kotlin/features/diana/NearbyBurrowsSolver.kt7
-rw-r--r--src/main/kotlin/features/events/anniversity/AnniversaryFeatures.kt392
-rw-r--r--src/main/kotlin/features/events/anniversity/CenturyRaffleFeatures.kt2
-rw-r--r--src/main/kotlin/features/events/carnival/CarnivalFeatures.kt7
-rw-r--r--src/main/kotlin/features/fixes/CompatibliltyFeatures.kt10
-rw-r--r--src/main/kotlin/features/fixes/Fixes.kt10
-rw-r--r--src/main/kotlin/features/garden/HideComposterNoises.kt2
-rw-r--r--src/main/kotlin/features/inventory/CraftingOverlay.kt5
-rw-r--r--src/main/kotlin/features/inventory/ItemHotkeys.kt3
-rw-r--r--src/main/kotlin/features/inventory/ItemRarityCosmetics.kt16
-rw-r--r--src/main/kotlin/features/inventory/JunkHighlighter.kt7
-rw-r--r--src/main/kotlin/features/inventory/PetFeatures.kt10
-rw-r--r--src/main/kotlin/features/inventory/PriceData.kt9
-rw-r--r--src/main/kotlin/features/inventory/REIDependencyWarner.kt6
-rw-r--r--src/main/kotlin/features/inventory/SaveCursorPosition.kt93
-rw-r--r--src/main/kotlin/features/inventory/SlotLocking.kt16
-rw-r--r--src/main/kotlin/features/inventory/TimerInLore.kt2
-rw-r--r--src/main/kotlin/features/inventory/WardrobeKeybinds.kt3
-rw-r--r--src/main/kotlin/features/inventory/buttons/InventoryButtonTemplates.kt1
-rw-r--r--src/main/kotlin/features/inventory/buttons/InventoryButtons.kt109
-rw-r--r--src/main/kotlin/features/inventory/storageoverlay/StorageOverlay.kt12
-rw-r--r--src/main/kotlin/features/inventory/storageoverlay/StorageOverviewScreen.kt10
-rw-r--r--src/main/kotlin/features/inventory/storageoverlay/VirtualInventory.kt1
-rw-r--r--src/main/kotlin/features/items/BlockZapperOverlay.kt15
-rw-r--r--src/main/kotlin/features/items/BonemerangOverlay.kt16
-rw-r--r--src/main/kotlin/features/items/EtherwarpOverlay.kt10
-rw-r--r--src/main/kotlin/features/macros/ComboProcessor.kt1
-rw-r--r--src/main/kotlin/features/macros/MacroData.kt2
-rw-r--r--src/main/kotlin/features/mining/CommissionFeatures.kt2
-rw-r--r--src/main/kotlin/features/mining/Histogram.kt3
-rw-r--r--src/main/kotlin/features/mining/HotmPresets.kt1
-rw-r--r--src/main/kotlin/features/mining/MiningBlockInfoUi.kt1
-rw-r--r--src/main/kotlin/features/mining/PickaxeAbility.kt10
-rw-r--r--src/main/kotlin/features/mining/PristineProfitTracker.kt36
-rw-r--r--src/main/kotlin/features/misc/CustomCapes.kt20
-rw-r--r--src/main/kotlin/features/misc/Hud.kt19
-rw-r--r--src/main/kotlin/features/misc/ModAnnouncer.kt1
-rw-r--r--src/main/kotlin/features/notifications/Notifications.kt7
-rw-r--r--src/main/kotlin/features/world/FairySouls.kt200
-rw-r--r--src/main/kotlin/features/world/TemporaryWaypoints.kt2
-rw-r--r--src/main/kotlin/features/world/Waypoints.kt70
-rw-r--r--src/main/kotlin/gui/BarComponent.kt4
-rw-r--r--src/main/kotlin/gui/CheckboxComponent.kt1
-rw-r--r--src/main/kotlin/gui/config/AllConfigsGui.kt2
-rw-r--r--src/main/kotlin/gui/config/ChoiceHandler.kt2
-rw-r--r--src/main/kotlin/gui/config/DurationHandler.kt3
-rw-r--r--src/main/kotlin/gui/config/HudMetaHandler.kt2
-rw-r--r--src/main/kotlin/gui/config/IntegerHandler.kt2
-rw-r--r--src/main/kotlin/gui/config/KeyBindingHandler.kt8
-rw-r--r--src/main/kotlin/gui/config/ManagedOption.kt2
-rw-r--r--src/main/kotlin/gui/config/StringHandler.kt2
-rw-r--r--src/main/kotlin/gui/config/storage/ConfigLoadContext.kt16
-rw-r--r--src/main/kotlin/gui/config/storage/FirmamentConfigLoader.kt4
-rw-r--r--src/main/kotlin/gui/config/storage/LegacyImporter.kt3
-rw-r--r--src/main/kotlin/gui/entity/GuiPlayer.kt2
-rw-r--r--src/main/kotlin/gui/entity/ModifyEquipment.kt2
-rw-r--r--src/main/kotlin/gui/entity/ModifyHorse.kt3
-rw-r--r--src/main/kotlin/jarvis/JarvisIntegration.kt8
-rw-r--r--src/main/kotlin/repo/ItemCache.kt1
-rw-r--r--src/main/kotlin/repo/MiningRepoData.kt3
-rw-r--r--src/main/kotlin/repo/RepoDownloadManager.kt9
-rw-r--r--src/main/kotlin/repo/RepoManager.kt12
-rw-r--r--src/main/kotlin/repo/RepoModResourcePack.kt2
-rw-r--r--src/main/kotlin/repo/recipes/SBEssenceUpgradeRecipeRenderer.kt2
-rw-r--r--src/main/kotlin/util/LegacyTagParser.kt2
-rw-r--r--src/main/kotlin/util/MoulConfigUtils.kt1
-rw-r--r--src/main/kotlin/util/TemplateUtil.kt3
-rw-r--r--src/main/kotlin/util/WarpUtil.kt141
-rw-r--r--src/main/kotlin/util/accessors/GetRectangle.kt2
-rw-r--r--src/main/kotlin/util/data/DataHolder.kt5
-rw-r--r--src/main/kotlin/util/data/IDataHolder.kt20
-rw-r--r--src/main/kotlin/util/json/DashlessUUIDSerializer.kt1
-rw-r--r--src/main/kotlin/util/json/jsonConversion.kt1
-rw-r--r--src/main/kotlin/util/mc/NbtPrism.kt6
-rw-r--r--src/main/kotlin/util/render/DrawContextExt.kt1
-rw-r--r--src/main/kotlin/util/render/FacingThePlayerContext.kt2
-rw-r--r--src/main/kotlin/util/render/FirmamentShaders.kt8
-rw-r--r--src/main/kotlin/util/render/MultiSpecialGuiRenderState.kt1
-rw-r--r--src/main/kotlin/util/render/RenderCircleProgress.kt1
-rw-r--r--src/main/kotlin/util/render/RenderInWorldContext.kt1
-rw-r--r--src/main/kotlin/util/render/TranslatedScissors.kt1
-rw-r--r--src/main/kotlin/util/skyblock/SackUtil.kt2
112 files changed, 750 insertions, 1096 deletions
diff --git a/src/main/java/moe/nea/firmament/util/data/ManagedConfig.kt b/src/main/java/moe/nea/firmament/util/data/ManagedConfig.kt
index 169dad1..032784a 100644
--- a/src/main/java/moe/nea/firmament/util/data/ManagedConfig.kt
+++ b/src/main/java/moe/nea/firmament/util/data/ManagedConfig.kt
@@ -46,7 +46,7 @@ import moe.nea.firmament.gui.config.storage.ConfigStorageClass
abstract class ManagedConfig(
val name: String,
val category: Category,
-) : IDataHolder<Unit> {
+) : IDataHolder<Unit>() {
enum class Category {
// Böse Kategorie, nicht benutzten lol
MISC,
diff --git a/src/main/kotlin/Firmament.kt b/src/main/kotlin/Firmament.kt
index 198defa..3ac01c0 100644
--- a/src/main/kotlin/Firmament.kt
+++ b/src/main/kotlin/Firmament.kt
@@ -51,7 +51,6 @@ import moe.nea.firmament.repo.HypixelStaticData
import moe.nea.firmament.repo.RepoManager
import moe.nea.firmament.util.MC
import moe.nea.firmament.util.SBData
-import moe.nea.firmament.util.data.IDataHolder
import moe.nea.firmament.util.mc.InitLevel
import moe.nea.firmament.util.tr
@@ -144,7 +143,7 @@ object Firmament {
})
RepoManager.initialize()
SBData.init()
- FeatureManager.autoload()
+ FeatureManager.subscribeEvents()
HypixelStaticData.spawnDataCollectionLoop()
ClientCommandRegistrationCallback.EVENT.register(this::registerCommands)
ClientLifecycleEvents.CLIENT_STARTED.register(ClientLifecycleEvents.ClientStarted {
diff --git a/src/main/kotlin/apis/Profiles.kt b/src/main/kotlin/apis/Profiles.kt
index a6c334b..ec4a6e4 100644
--- a/src/main/kotlin/apis/Profiles.kt
+++ b/src/main/kotlin/apis/Profiles.kt
@@ -7,19 +7,19 @@ package moe.nea.firmament.apis
import io.github.moulberry.repo.constants.Leveling
import io.github.moulberry.repo.data.Rarity
import java.time.Instant
+import java.util.UUID
import kotlinx.serialization.SerialName
import kotlinx.serialization.Serializable
import kotlinx.serialization.UseSerializers
+import kotlin.reflect.KProperty1
+import net.minecraft.util.DyeColor
+import net.minecraft.util.Formatting
import moe.nea.firmament.repo.RepoManager
import moe.nea.firmament.util.LegacyFormattingCode
import moe.nea.firmament.util.SkyblockId
import moe.nea.firmament.util.assertNotNullOr
import moe.nea.firmament.util.json.DashlessUUIDSerializer
import moe.nea.firmament.util.json.InstantAsLongSerializer
-import net.minecraft.util.DyeColor
-import net.minecraft.util.Formatting
-import java.util.*
-import kotlin.reflect.KProperty1
@Serializable
diff --git a/src/main/kotlin/apis/Routes.kt b/src/main/kotlin/apis/Routes.kt
index 5e29402..737763d 100644
--- a/src/main/kotlin/apis/Routes.kt
+++ b/src/main/kotlin/apis/Routes.kt
@@ -2,19 +2,15 @@
package moe.nea.firmament.apis
-import io.ktor.client.call.*
-import io.ktor.client.request.*
-import io.ktor.http.*
-import io.ktor.util.*
-import java.util.*
+import io.ktor.client.call.body
+import io.ktor.client.request.get
+import io.ktor.http.isSuccess
+import io.ktor.util.CaseInsensitiveMap
+import java.util.UUID
import kotlinx.coroutines.Deferred
import kotlinx.coroutines.async
import kotlinx.coroutines.launch
import kotlinx.coroutines.withContext
-import kotlin.collections.MutableMap
-import kotlin.collections.listOf
-import kotlin.collections.mutableMapOf
-import kotlin.collections.set
import moe.nea.firmament.Firma