aboutsummaryrefslogtreecommitdiff
path: root/basetypes
diff options
context:
space:
mode:
Diffstat (limited to 'basetypes')
-rw-r--r--basetypes/src/main/kotlin/moe/nea/ledger/ItemId.kt35
-rw-r--r--basetypes/src/main/kotlin/moe/nea/ledger/utils/RemoveInRelease.kt4
2 files changed, 39 insertions, 0 deletions
diff --git a/basetypes/src/main/kotlin/moe/nea/ledger/ItemId.kt b/basetypes/src/main/kotlin/moe/nea/ledger/ItemId.kt
new file mode 100644
index 0000000..8dcfa27
--- /dev/null
+++ b/basetypes/src/main/kotlin/moe/nea/ledger/ItemId.kt
@@ -0,0 +1,35 @@
+package moe.nea.ledger
+
+import moe.nea.ledger.utils.RemoveInRelease
+
+data class ItemId(
+ val string: String
+) {
+ @RemoveInRelease
+ fun singleItem(): Pair<ItemId, Double> {
+ return withStackSize(1)
+ }
+
+ @RemoveInRelease
+ fun withStackSize(size: Number): Pair<ItemId, Double> {
+ return Pair(this, size.toDouble())
+ }
+
+
+ companion object {
+
+ @JvmStatic
+ @RemoveInRelease
+ fun forName(string: String) = ItemId(string)
+ fun skill(skill: String) = ItemId("SKYBLOCK_SKILL_$skill")
+
+ val GARDEN = skill("GARDEN")
+ val FARMING = skill("FARMING")
+
+
+ val COINS = ItemId("SKYBLOCK_COIN")
+ val GEMSTONE_POWDER = ItemId("SKYBLOCK_POWDER_GEMSTONE")
+ val MITHRIL_POWDER = ItemId("SKYBLOCK_POWDER_MITHRIL")
+ val NIL = ItemId("SKYBLOCK_NIL")
+ }
+} \ No newline at end of file
diff --git a/basetypes/src/main/kotlin/moe/nea/ledger/utils/RemoveInRelease.kt b/basetypes/src/main/kotlin/moe/nea/ledger/utils/RemoveInRelease.kt
new file mode 100644
index 0000000..319fb63
--- /dev/null
+++ b/basetypes/src/main/kotlin/moe/nea/ledger/utils/RemoveInRelease.kt
@@ -0,0 +1,4 @@
+package moe.nea.ledger.utils
+
+@Retention(AnnotationRetention.BINARY)
+annotation class RemoveInRelease