diff options
| author | Obsidian <108832807+Obsidianninja11@users.noreply.github.com> | 2024-06-22 03:50:06 -0500 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-06-22 10:50:06 +0200 |
| commit | fcc31674e40ed044f46813c2185f8de29d974932 (patch) | |
| tree | 36a8721820fa98db8ec1eeb173340ef1f9242d26 /src/main/java | |
| parent | 1dff52a075c6873dd53342f4094ecf904d4f9d67 (diff) | |
| download | skyhanni-fcc31674e40ed044f46813c2185f8de29d974932.tar.gz skyhanni-fcc31674e40ed044f46813c2185f8de29d974932.tar.bz2 skyhanni-fcc31674e40ed044f46813c2185f8de29d974932.zip | |
Improvement: Add hover descriptions to many ClickableChat messages (#1919)
Co-authored-by: Cal <cwolfson58@gmail.com>
Co-authored-by: CalMWolfs <94038482+CalMWolfs@users.noreply.github.com>
Co-authored-by: hannibal2 <24389977+hannibal00212@users.noreply.github.com>
Diffstat (limited to 'src/main/java')
36 files changed, 129 insertions, 124 deletions
diff --git a/src/main/java/at/hannibal2/skyhanni/api/GetFromSackAPI.kt b/src/main/java/at/hannibal2/skyhanni/api/GetFromSackAPI.kt index 7f69e7318..54517905a 100644 --- a/src/main/java/at/hannibal2/skyhanni/api/GetFromSackAPI.kt +++ b/src/main/java/at/hannibal2/skyhanni/api/GetFromSackAPI.kt @@ -42,11 +42,11 @@ object GetFromSackAPI { private val patternGroup = RepoPattern.group("gfs.chat") private val fromSacksChatPattern by patternGroup.pattern( "from", - "§aMoved §r§e(?<amount>\\d+) (?<item>.+)§r§a from your Sacks to your inventory." + "§aMoved §r§e(?<amount>\\d+) (?<item>.+)§r§a from your Sacks to your inventory.", ) private val missingChatPattern by patternGroup.pattern( "missing", - "§cYou have no (?<item>.+) in your Sacks!" + "§cYou have no (?<item>.+) in your Sacks!", ) fun getFromSack(item: NEUInternalName, amount: Int) = getFromSack(item.makePrimitiveStack(amount)) @@ -58,10 +58,10 @@ object GetFromSackAPI { fun getFromChatMessageSackItems( item: PrimitiveItemStack, text: String = "§lCLICK HERE§r§e to grab §ax${item.amount} §9${item.itemName}§e from sacks!", - ) = - ChatUtils.clickableChat(text, onClick = { - getFromSack(item) - }) + hover: String = "§eClick to get from sacks!", + ) = ChatUtils.clickableChat( + text, onClick = { getFromSack(item) }, hover, + ) fun getFromSlotClickedSackItems(items: List<PrimitiveItemStack>, slotIndex: Int) = addToInventory(items, slotIndex) @@ -164,7 +164,7 @@ object GetFromSackAPI { private fun bazaarMessage(item: String, amount: Int, isRemaining: Boolean = false) = ChatUtils.clickableChat( "§lCLICK §r§eto get the ${if (isRemaining) "remaining " else ""}§ax${amount} §9$item §efrom bazaar", - onClick = { HypixelCommands.bazaar(item.removeColor()) } + onClick = { HypixelCommands.bazaar(item.removeColor()) }, "§eClick to find on the bazaar!", ) private fun commandValidator(args: List<String>): Pair<CommandResult, PrimitiveItemStack?> { @@ -185,7 +185,7 @@ object GetFromSackAPI { ErrorManager.logErrorStateWithData( "Couldn't resolve item name", "Query failed", - "itemName" to itemString + "itemName" to itemString, ) return CommandResult.INTERNAL_ERROR to null } diff --git a/src/main/java/at/hannibal2/skyhanni/config/commands/Commands.kt b/src/main/java/at/hannibal2/skyhanni/config/commands/Commands.kt index cb85989c9..4afced89b 100644 --- a/src/main/java/at/hannibal2/skyhanni/config/commands/Commands.kt +++ b/src/main/java/at/hannibal2/skyhanni/config/commands/Commands.kt @@ -412,7 +412,7 @@ object Commands { ) { HoppityCollectionStats.clearSavedRabbits() } registerCommand( "shresetpunchcard", - "Resets the Rift Punchcard Artifact player list." + "Resets the Rift Punchcard Artifact player list.", ) { PunchcardHighlight.clearList() } } @@ -519,7 +519,7 @@ object Commands { ) { TestChatCommand.command(it) } registerCommand( "shtestrainbow", - "Sends a rainbow in chat" + "Sends a rainbow in chat", ) { ExtendedChatColor.testCommand() } registerCommand( "shcopyinternalname", @@ -625,6 +625,7 @@ object Commands { onClick = { UpdateManager.checkUpdate(true, updateStream) }, + "§eClick to confirm!", oneTimeClick = true, ) } else { diff --git a/src/main/java/at/hannibal2/skyhanni/data/ProfileStorageData.kt b/src/main/java/at/hannibal2/skyhanni/data/ProfileStorageData.kt index 76e86db8a..3d9bdcf78 100644 --- a/src/main/java/at/hannibal2/skyhanni/data/ProfileStorageData.kt +++ b/src/main/java/at/hannibal2/skyhanni/data/ProfileStorageData.kt @@ -100,12 +100,13 @@ object ProfileStorageData { "This is needed for the mod to function! And therefore this warning cannot be disabled", onClick = { HypixelCommands.widget() - } + }, + "§eClick to run /widget!", ) } else { ChatUtils.chat( "§cExtra Information from Tab list not found! " + - "Enable it: SkyBlock Menu ➜ Settings ➜ Personal ➜ User Interface ➜ Player List Info" + "Enable it: SkyBlock Menu ➜ Settings ➜ Personal ➜ User Interface ➜ Player List Info", ) } } diff --git a/src/main/java/at/hannibal2/skyhanni/data/repo/RepoManager.kt b/src/main/java/at/hannibal2/skyhanni/data/repo/RepoManager.kt index 2080a1354..79d329f22 100644 --- a/src/main/java/at/hannibal2/skyhanni/data/repo/RepoManager.kt +++ b/src/main/java/at/hannibal2/skyhanni/data/repo/RepoManager.kt @@ -192,6 +192,7 @@ class RepoManager(private val configLocation: File) { onClick = { SkyHanniMod.repo.updateRepo() }, + "§eClick to update the repo!", prefixColor = "§c", ) if (unsuccessfulConstants.isEmpty()) { @@ -333,6 +334,7 @@ class RepoManager(private val configLocation: File) { onClick = { updateRepo() }, + "§eClick to update the repo!", ) } } diff --git a/src/main/java/at/hannibal2/skyhanni/features/combat/ghostcounter/GhostCounter.kt b/src/main/java/at/hannibal2/skyhanni/features/combat/ghostcounter/GhostCounter.kt index 89fdc89ea..29b3c06e3 100644 --- a/src/main/java/at/hannibal2/skyhanni/features/combat/ghostcounter/GhostCounter.kt +++ b/src/main/java/at/hannibal2/skyhanni/features/combat/ghostcounter/GhostCounter.kt @@ -321,10 +321,11 @@ object GhostCounter { notifyCTModule = false if (isUsingCTGhostCounter()) { ChatUtils.clickableChat( - "GhostCounterV3 ChatTriggers module has been detected, do you want to import saved data ? Click here to import data", + "GhostCounterV3 ChatTriggers module has been detected, do you want to import saved data? Click here to import data", onClick = { GhostUtil.importCTGhostCounterData() }, + "§eClick to import data!", prefixColor = "§6", oneTimeClick = true ) diff --git a/src/main/java/at/hannibal2/skyhanni/features/commands/PartyChatCommands.kt b/src/main/java/at/hannibal2/skyhanni/features/commands/PartyChatCommands.kt index 59b652f66..05b04982d 100644 --- a/src/main/java/at/hannibal2/skyhanni/features/commands/PartyChatCommands.kt +++ b/src/main/java/at/hannibal2/skyhanni/features/commands/PartyChatCommands.kt @@ -97,7 +97,8 @@ object PartyChatCommands { if (config.showIgnoredReminder) ChatUtils.clickableChat( "§cIgnoring chat command from ${event.author}. " + "Unignore them using /shignore remove <player> or click here!", - onClick = { blacklistModify(event.author) } + onClick = { blacklistModify(event.author) }, + "§eClick to ignore ${event.author}!", ) return } @@ -105,7 +106,7 @@ object PartyChatCommands { if (config.showIgnoredReminder) { ChatUtils.chat( "§cIgnoring chat command from $name. " + - "Change your party chat command settings or /friend (best) them." + "Change your party chat command settings or /friend (best) them.", ) } return @@ -170,7 +171,8 @@ object PartyChatCommands { storage.blacklistedUsers.clear() ChatUtils.chat("Cleared your ignored players list!") }, - oneTimeClick = true + "§eClick to confirm.", + oneTimeClick = true, ) } diff --git a/src/main/java/at/hannibal2/skyhanni/features/event/diana/InquisitorWaypointShare.kt b/src/main/java/at/hannibal2/skyhanni/features/event/diana/InquisitorWaypointShare.kt index e9e4ebd5a..a5263fc44 100644 --- a/src/main/java/at/hannibal2/skyhanni/features/event/diana/InquisitorWaypointShare.kt +++ b/src/main/java/at/hannibal2/skyhanni/features/event/diana/InquisitorWaypointShare.kt @@ -154,11 +154,12 @@ object InquisitorWaypointShare { sendInquisitor() } else { val keyName = KeyboardManager.getKeyName(config.keyBindShare) - val message = "§l§bYou found a Inquisitor! Press §l§chere §l§bor §c$keyName to share the location!" + val message = "§l§bYou found an Inquisitor! Click §l§chere §l§bor press §c$keyName to share the location!" ChatUtils.clickableChat( message, onClick = { sendInquisitor() }, + "§eClick to share!", oneTimeClick = true ) } diff --git a/src/main/java/at/hannibal2/skyhanni/features/event/hoppity/HoppityEggsManager.kt b/src/main/java/at/hannibal2/skyhanni/features/event/hoppity/HoppityEggsManager.kt index 3ecfa9f81..3d13e04d8 100644 --- a/src/main/java/at/hannibal2/skyhanni/features/event/hoppity/HoppityEggsManager.kt +++ b/src/main/java/at/hannibal2/skyhanni/features/event/hoppity/HoppityEggsManager.kt @@ -185,6 +185,7 @@ object HoppityEggsManager { ChatUtils.clickableChat( "Click here to share the location of this chocolate egg with the server!", onClick = onClick, + "§eClick to share!", expireAt = 30.seconds.fromNow(), oneTimeClick = true ) diff --git a/src/main/java/at/hannibal2/skyhanni/features/event/winter/NewYearCakeReminder.kt b/src/main/java/at/hannibal2/skyhanni/features/event/winter/NewYearCakeReminder.kt index 47431f54b..f64204536 100644 --- a/src/main/java/at/hannibal2/skyhanni/features/event/winter/NewYearCakeReminder.kt +++ b/src/main/java/at/hannibal2/skyhanni/features/event/winter/NewYearCakeReminder.kt @@ -66,9 +66,8 @@ object NewYearCakeReminder { ChatUtils.clickableChat( "Reminding you to grab the free New Year Cake. Click here to open the baker menu!", - onClick = { - HypixelCommands.openBaker() - } + onClick = { HypixelCommands.openBaker() }, + "§eClick to run /openbaker!", ) } diff --git a/src/main/java/at/hannibal2/skyhanni/features/fame/CityProjectFeatures.kt b/src/main/java/at/hannibal2/skyhanni/features/fame/CityProjectFeatures.kt index c411951c3..f4f4fbac4 100644 --- a/src/main/java/at/hannibal2/skyhanni/features/fame/CityProjectFeatures.kt +++ b/src/main/java/at/hannibal2/skyhanni/features/fame/CityProjectFeatures.kt @@ -81,9 +81,8 @@ object CityProjectFeatures { ChatUtils.clickableChat( "Daily City Project Reminder! (Click here to disable this reminder)", - onClick = { - disable() - }, + onClick = { disable() }, + "§eClick to disable!", oneTimeClick = true ) } diff --git a/src/main/java/at/hannibal2/skyhanni/features/fishing/trophy/TrophyFishManager.kt b/src/main/java/at/hannibal2/skyhanni/features/fishing/trophy/TrophyFishManager.kt index 44893f949..8d21a7da7 100644 --- a/src/main/java/at/hannibal2/skyhanni/features/fishing/trophy/TrophyFishManager.kt +++ b/src/main/java/at/hannibal2/skyhanni/features/fishing/trophy/TrophyFishManager.kt @@ -58,6 +58,7 @@ object TrophyFishManager { "Click here to load data from NEU PV!", onClick = { updateFromNeuPv(savedFishes, neuData) }, + "§eClick to load!", oneTimeClick = true ) } diff --git a/src/main/java/at/hannibal2/skyhanni/features/garden/FarmingFortuneDisplay.kt b/src/main/java/at/hannibal2/skyhanni/features/garden/FarmingFortuneDisplay.kt index 882c4daff..edc5f17ee 100644 --- a/src/main/java/at/hannibal2/skyhanni/features/garden/FarmingFortuneDisplay.kt +++ b/src/main/java/at/hannibal2/skyhanni/features/garden/FarmingFortuneDisplay.kt @@ -222,9 +222,8 @@ object FarmingFortuneDisplay { ChatUtils.clickableChat( "§cCan not read Farming Fortune from tab list! Open /widget, enable the Stats Widget and " + "show the Farming Fortune stat, also give the widget enough priority.", - onClick = { - HypixelCommands.widget() - } + onClick = { HypixelCommands.widget() }, + "§eClick to run /widget!", ) lastUniversalFortuneMissingError = SimpleTimeMark.now() } @@ -233,9 +232,8 @@ object FarmingFortuneDisplay { ChatUtils.clickableChat( "§cCan not read Crop Fortune from tab list! Open /widget, enable the Stats Widget and " + "show latest Crop Fortune, also give the widget enough priority.", - onClick = { - HypixelCommands.widget() - } + onClick = { HypixelCommands.widget() }, + "§eClick to run /widget!", ) lastCropFortuneMissingError = SimpleTimeMark.now() } diff --git a/src/main/java/at/hannibal2/skyhanni/features/garden/GardenLevelDisplay.kt b/src/main/java/at/hannibal2/skyhanni/features/garden/GardenLevelDisplay.kt index 88993d42d..5177c0a16 100644 --- a/src/main/java/at/hannibal2/skyhanni/features/garden/GardenLevelDisplay.kt +++ b/src/main/java/at/hannibal2/skyhanni/features/garden/GardenLevelDisplay.kt @@ -98,9 +98,8 @@ object GardenLevelDisplay { ChatUtils.clickableChat( " \n§b§lGARDEN LEVEL UP §8$oldLevel ➜ §b$newLevel\n" + " §8+§aRespect from Elite Farmers and SkyHanni members :)\n ", - onClick = { - HypixelCommands.gardenLevels() - }, + onClick = { HypixelCommands.gardenLevels() }, + "§eClick to view your Garden Level progress and rewards!", prefix = false ) diff --git a/src/main/java/at/hannibal2/skyhanni/features/garden/GardenNextJacobContest.kt b/src/main/java/at/hannibal2/skyhanni/features/garden/GardenNextJacobContest.kt index 35af817c6..8c2dc9a95 100644 --- a/src/main/java/at/hannibal2/skyhanni/features/garden/GardenNextJacobContest.kt +++ b/src/main/java/at/hannibal2/skyhanni/features/garden/GardenNextJacobContest.kt @@ -252,9 +252,8 @@ object GardenNextJacobContest { } else { ChatUtils.clickableChat( "§2Click here to submit this year's farming contests. Thank you for helping everyone out!", - onClick = { - shareContests() - }, + onClick = { shareContests() }, + "§eClick to submit!", oneTimeClick = true ) } @@ -310,6 +309,7 @@ object GardenNextJacobContest { SkyHanniMod.feature.storage.contestSendingAsked = true ChatUtils.chat("§2Enabled automatic sharing of future contests!") }, + "§eClick to enable autosharing!", oneTimeClick = true ) } @@ -564,9 +564,11 @@ object GardenNextJacobContest { } } else { ChatUtils.chat("This year's contests aren't available to fetch automatically yet, please load them from your calendar or wait 10 minutes.") - ChatUtils.clickableChat("Click here to open your calendar!", onClick = { - HypixelCommands.calendar() - }) + ChatUtils.clickableChat( + "Click here to open your calendar!", + onClick = { HypixelCommands.calendar() }, + "§eClick to run /calendar!" + ) } if (newContests.count() == MAX_CONTESTS_PER_YEAR) { diff --git a/src/main/java/at/hannibal2/skyhanni/features/garden/composter/ComposterDisplay.kt b/src/main/java/at/hannibal2/skyhanni/features/garden/composter/ComposterDisplay.kt index a9977f809..bd4c8274c 100644 --- a/src/main/java/at/hannibal2/skyhanni/features/garden/composter/ComposterDisplay.kt +++ b/src/main/java/at/hannibal2/skyhanni/features/garden/composter/ComposterDisplay.kt @@ -193,9 +193,13 @@ object ComposterDisplay { if (IslandType.GARDEN.isInIsland()) { ChatUtils.chat(warningMessage) } else { - ChatUtils.clickableChat(warningMessage, onClick = { - HypixelCommands.warp("garden") - }) + ChatUtils.clickableChat( + warningMessage, + onClick = { + HypixelCommands.warp("garden") + }, + "§eClick to warp to the garden!", + ) } LorenzUtils.sendTitle("§eComposter Warning!", 3.seconds) } diff --git a/src/main/java/at/hannibal2/skyhanni/features/garden/composter/ComposterOverlay.kt b/src/main/java/at/hannibal2/skyhanni/features/garden/composter/ComposterOverlay.kt index b12b8f190..303fd7464 100644 --- a/src/main/java/at/hannibal2/skyhanni/features/garden/composter/ComposterOverlay.kt +++ b/src/main/java/at/hannibal2/skyhanni/features/garden/composter/ComposterOverlay.kt @@ -503,9 +503,8 @@ object ComposterOverlay { val sackType = if (isDwarvenMineable) "Mining §eor §9Dwarven" else "Enchanted Agronomy" ChatUtils.clickableChat( "Sacks could not be loaded. Click here and open your §9$sackType Sack §eto update the data!", - onClick = { - HypixelCommands.sacks() - } + onClick = { HypixelCommands.sacks() }, + "§eClick to run /sax!", ) return } @@ -528,9 +527,8 @@ object ComposterOverlay { } else { ChatUtils.clickableChat( // TODO Add this as a separate feature, and then don't send any msg if the feature is disabled "You're out of $itemName §ein your sacks! Click here to buy more on the Bazaar!", - onClick = { - HypixelCommands.bazaar(itemName.removeColor()) - } + onClick = { HypixelCommands.bazaar(itemName.removeColor()) }, + "§eClick find on the bazaar!", ) } } diff --git a/src/main/java/at/hannibal2/skyhanni/features/garden/farming/lane/FarmingLaneAPI.kt b/src/main/java/at/hannibal2/skyhanni/features/garden/farming/lane/FarmingLaneAPI.kt index 0a29c85ec..ba0eaee5d 100644 --- a/src/main/java/at/hannibal2/skyhanni/features/garden/farming/lane/FarmingLaneAPI.kt +++ b/src/main/java/at/hannibal2/skyhanni/features/garden/farming/lane/FarmingLaneAPI.kt @@ -52,9 +52,8 @@ object FarmingLaneAPI { ChatUtils.clickableChat( "No ${crop.cropName} lane defined yet! Use §e/shlanedetection", - onClick = { - FarmingLaneCreator.commandLaneDetection() - } + onClick = { FarmingLaneCreator.commandLaneDetection() }, + "§eClick to run /shlanedetection!", ) } diff --git a/src/main/java/at/hannibal2/skyhanni/features/garden/pests/PestSpawn.kt b/src/main/java/at/hannibal2/skyhanni/features/garden/pests/PestSpawn.kt index 0dcab57f5..0b16439f3 100644 --- a/src/main/java/at/hannibal2/skyhanni/features/garden/pests/PestSpawn.kt +++ b/src/main/java/at/hannibal2/skyhanni/features/garden/pests/PestSpawn.kt @@ -131,9 +131,13 @@ object PestSpawn { } if (config.chatMessageFormat == PestSpawnConfig.ChatMessageFormatEntry.COMPACT) { - ChatUtils.clickableChat(message, onClick = { - HypixelCommands.teleportToPlot(plotName) - }) + ChatUtils.clickableChat( + message, + onClick = { + HypixelCommands.teleportToPlot(plotName) + }, + "§eClick to run /plottp $plotName!", + ) } } diff --git a/src/main/java/at/hannibal2/skyhanni/features/garden/visitor/GardenVisitorDropStatistics.kt b/src/main/java/at/hannibal2/skyhanni/features/garden/visitor/GardenVisitorDropStatistics.kt index 386f3808f..6b3620c18 100644 --- a/src/main/java/at/hannibal2/skyhanni/features/garden/visitor/GardenVisitorDropStatistics.kt +++ b/src/main/java/at/hannibal2/skyhanni/features/garden/visitor/GardenVisitorDropStatistics.kt @@ -247,22 +247,26 @@ object GardenVisitorDropStatistics { fun resetCommand() { val storage = GardenAPI.storage?.visitorDrops ?: return - ChatUtils.clickableChat("Click here to reset Visitor Drops Statistics.", onClick = { - acceptedVisitors = 0 - deniedVisitors = 0 - totalVisitors = 0 - coinsSpent = 0 - storage.copper = 0 - storage.bits = 0 - storage.farmingExp = 0 - storage.gardenExp = 0 - storage.gemstonePowder = 0 - storage.mithrilPowder = 0 - storage.visitorRarities = arrayListOf(0, 0, 0, 0, 0) - storage.rewardsCount = mapOf<VisitorReward, Int>() - ChatUtils.chat("Visitor Drop Statistics reset!") - saveAndUpdate() |
