diff options
author | jani270 <69345714+jani270@users.noreply.github.com> | 2024-12-29 15:20:58 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-12-29 15:20:58 +0100 |
commit | a913eeffce5055fa330e358d197eaad8f915e505 (patch) | |
tree | 0bbf9f8f94830ac0d9bbdc460c353fcc8f2bc006 /src | |
parent | c82d0b07033e02f7a6a23adbc1607ab3d41afdad (diff) | |
download | LocalTransactionLedger-a913eeffce5055fa330e358d197eaad8f915e505.tar.gz LocalTransactionLedger-a913eeffce5055fa330e358d197eaad8f915e505.tar.bz2 LocalTransactionLedger-a913eeffce5055fa330e358d197eaad8f915e505.zip |
feat: Capsaicin Eyedrops detection (#8)
Diffstat (limited to 'src')
-rw-r--r-- | src/main/kotlin/moe/nea/ledger/ItemId.kt | 1 | ||||
-rw-r--r-- | src/main/kotlin/moe/nea/ledger/Ledger.kt | 2 | ||||
-rw-r--r-- | src/main/kotlin/moe/nea/ledger/TransactionType.kt | 1 | ||||
-rw-r--r-- | src/main/kotlin/moe/nea/ledger/modules/EyedropsDetection.kt | 34 |
4 files changed, 38 insertions, 0 deletions
diff --git a/src/main/kotlin/moe/nea/ledger/ItemId.kt b/src/main/kotlin/moe/nea/ledger/ItemId.kt index f627d08..fdfa19f 100644 --- a/src/main/kotlin/moe/nea/ledger/ItemId.kt +++ b/src/main/kotlin/moe/nea/ledger/ItemId.kt @@ -30,6 +30,7 @@ value class ItemId( val NIL = ItemId("SKYBLOCK_NIL") val ARCHFIEND_LOW_CLASS = ItemId("ARCHFIEND_DICE") val ARCHFIEND_HIGH_CLASS = ItemId("HIGH_CLASS_ARCHFIEND_DICE") + val CAP_EYEDROPS = ItemId("CAPSAICIN_EYEDROPS_NO_CHARGES") val ARCHFIEND_DYE = ItemId("DYE_ARCHFIEND") val SLEEPING_EYE = ItemId("SLEEPING_EYE") val SUMMONING_EYE = ItemId("SUMMONING_EYE") diff --git a/src/main/kotlin/moe/nea/ledger/Ledger.kt b/src/main/kotlin/moe/nea/ledger/Ledger.kt index ed3c6a2..d2d09eb 100644 --- a/src/main/kotlin/moe/nea/ledger/Ledger.kt +++ b/src/main/kotlin/moe/nea/ledger/Ledger.kt @@ -21,6 +21,7 @@ import moe.nea.ledger.modules.DragonEyePlacementDetection import moe.nea.ledger.modules.`DragonSacrificeDetection` import moe.nea.ledger.modules.DungeonChestDetection import moe.nea.ledger.modules.ExternalDataProvider +import moe.nea.ledger.modules.EyedropsDetection import moe.nea.ledger.modules.ForgeDetection import moe.nea.ledger.modules.GambleDetection import moe.nea.ledger.modules.KatDetection @@ -127,6 +128,7 @@ class Ledger { DungeonChestDetection::class.java, ErrorUtil::class.java, ExternalDataProvider::class.java, + EyedropsDetection::class.java, ForgeDetection::class.java, GambleDetection::class.java, ItemIdProvider::class.java, diff --git a/src/main/kotlin/moe/nea/ledger/TransactionType.kt b/src/main/kotlin/moe/nea/ledger/TransactionType.kt index 57f7535..00feebb 100644 --- a/src/main/kotlin/moe/nea/ledger/TransactionType.kt +++ b/src/main/kotlin/moe/nea/ledger/TransactionType.kt @@ -13,6 +13,7 @@ enum class TransactionType { BAZAAR_SELL_ORDER, BITS_PURSE_STATUS, BOOSTER_COOKIE_ATE, + CAPSAICIN_EYEDROPS_USED, COMMUNITY_SHOP_BUY, CORPSE_DESECRATED, DIE_ROLLED, diff --git a/src/main/kotlin/moe/nea/ledger/modules/EyedropsDetection.kt b/src/main/kotlin/moe/nea/ledger/modules/EyedropsDetection.kt new file mode 100644 index 0000000..2b1a8cd --- /dev/null +++ b/src/main/kotlin/moe/nea/ledger/modules/EyedropsDetection.kt @@ -0,0 +1,34 @@ +package moe.nea.ledger.modules + +import moe.nea.ledger.ItemChange +import moe.nea.ledger.ItemId +import moe.nea.ledger.LedgerEntry +import moe.nea.ledger.LedgerLogger +import moe.nea.ledger.TransactionType +import moe.nea.ledger.events.ChatReceived +import moe.nea.ledger.useMatcher +import moe.nea.ledger.utils.di.Inject +import net.minecraftforge.fml.common.eventhandler.SubscribeEvent + +class EyedropsDetection { + + val capsaicinEyedropsUsed = "You applied the eyedrops on the minion and ran out!".toPattern() + + @Inject + lateinit var logger: LedgerLogger + + @SubscribeEvent + fun onChat(event: ChatReceived) { + capsaicinEyedropsUsed.useMatcher(event.message) { + logger.logEntry( + LedgerEntry( + TransactionType.CAPSAICIN_EYEDROPS_USED, + event.timestamp, + listOf( + ItemChange.lose(ItemId.CAP_EYEDROPS, 1) + ) + ) + ) + } + } +}
\ No newline at end of file |