Skip to content

Commit

Permalink
garden level with desk and skyblock menu item
Browse files Browse the repository at this point in the history
  • Loading branch information
ItsEmpa committed Mar 14, 2024
1 parent b3b9f85 commit 33c412e
Showing 1 changed file with 17 additions and 8 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -28,13 +28,17 @@ class GardenLevelDisplay {
"inventory.nextxp",
".* §e(?<nextLevelExp>.*)§6/.*"
)
private val gardenItemNamePattern by patternGroup.pattern(
"inventory.name",
"Garden (?:Desk|Level (?<currentLevel>.*))"
)
private val overflowPattern by patternGroup.pattern(
"inventory.overflow",
".*§r §6(?<overflow>.*)"
)
private val currentLevelPattern by patternGroup.pattern(
"inventory.currentlevel",
"Garden Level (?<currentLevel>.*)"
private val gardenLevelPattern by patternGroup.pattern(
"inventory.levelprogress",
"§7Progress to Level (?<currentLevel>[^:]*).*"
)
private val visitorRewardPattern by patternGroup.pattern(
"chat.increase",
Expand Down Expand Up @@ -78,14 +82,19 @@ class GardenLevelDisplay {
@SubscribeEvent
fun onInventoryOpen(event: InventoryFullyOpenedEvent) {
if (!GardenAPI.inGarden()) return
if (event.inventoryName != "Desk") return
val item = event.inventoryItems[4]!!

val currentLevel = currentLevelPattern.matchMatcher(item.name.removeColor()) {
group("currentLevel").romanToDecimalIfNecessary()
val item = when (event.inventoryName) {
"Desk" -> event.inventoryItems[4]!!
"SkyBlock Menu" -> event.inventoryItems[10]!!
else -> null
} ?: return
gardenItemNamePattern.matchMatcher(item.name.removeColor()) {} ?: return
var nextLevelExp = 0L
var currentLevel = 0
for (line in item.getLore()) {
gardenLevelPattern.matchMatcher(line) {
currentLevel = group("currentLevel").romanToDecimalIfNecessary() - 1
}
if (line == "§7§8Max level reached!") currentLevel = 15
expToNextLevelPattern.matchMatcher(line) {
nextLevelExp = group("nextLevelExp").formatLong()
}
Expand Down

0 comments on commit 33c412e

Please sign in to comment.