DEADSOFTWARE

Support reading item ids from json
[cavedroid.git] / core / src / ru / deadsoftware / cavedroid / game / objects / Item.kt
index 9eea9767e3967ed2e9783e65d20c84207bcecd24..1932ff8cbb8e31c0887a92dc1fbbac32e18d0056 100644 (file)
@@ -6,6 +6,7 @@ import ru.deadsoftware.cavedroid.misc.utils.SpriteOrigin
 
 data class Item(
         val id: Int,
+        val key: String,
         val name: String,
         val type: String,
         val sprite: Sprite?,
@@ -33,6 +34,14 @@ data class Item(
         return GameItems.getBlock(GameItems.getBlockIdByItemId(id))
     }
 
+    fun getItemOrBlockSprite(): Sprite {
+        return requireNotNull(sprite ?: toBlock()?.requireSprite()) { "wtf: sprite is null" }
+    }
+
+    fun isNone(): Boolean {
+        return id == 0;
+    }
+
     @Deprecated("Was renamed to Sprite to comply with variable type.", ReplaceWith("requireSprite()"))
     fun getTexture() = sprite
 }
\ No newline at end of file