DEADSOFTWARE

MainComponent in kotlin
[cavedroid.git] / core / src / ru / deadsoftware / cavedroid / misc / utils / SpriteUtils.kt
index fd186e5a400e558a338895c01ebc45f20a34e97c..a26c5b95dd8b3699fb4bf8362b8e7c6ed890520d 100644 (file)
@@ -1,5 +1,6 @@
 package ru.deadsoftware.cavedroid.misc.utils
 
+import com.badlogic.gdx.graphics.Color
 import com.badlogic.gdx.graphics.g2d.Sprite
 import com.badlogic.gdx.graphics.g2d.SpriteBatch
 
@@ -11,11 +12,23 @@ fun SpriteBatch.drawSprite(
     sprite: Sprite,
     x: Float,
     y: Float,
-    rotation: Float = 0f
+    rotation: Float = 0f,
+    width: Float = sprite.regionWidth.toFloat(),
+    height: Float = sprite.regionHeight.toFloat(),
+    tint: Color? = null,
 ) {
-    sprite.rotation = rotation
+    val oldColor = sprite.color
+
     sprite.setPosition(x, y)
+    sprite.setSize(width, height)
+    sprite.rotation = rotation
+    tint?.let(sprite::setColor)
+
     sprite.draw(this)
+
+    sprite.setSize(sprite.regionWidth.toFloat(), sprite.regionHeight.toFloat())
+    sprite.rotation = 0f
+    sprite.color = oldColor
 }
 
 fun Sprite.applyOrigin(origin: SpriteOrigin) {