Rename entity class and provide default delta-time

This commit is contained in:
oakes
2014-03-15 21:21:48 -04:00
parent 6565f9b31c
commit 9819b00d7b
2 changed files with 7 additions and 5 deletions

View File

@@ -3,7 +3,7 @@
(:import [com.badlogic.gdx.graphics Texture] (:import [com.badlogic.gdx.graphics Texture]
[com.badlogic.gdx.graphics.g2d Animation BitmapFont NinePatch [com.badlogic.gdx.graphics.g2d Animation BitmapFont NinePatch
ParticleEffect TextureAtlas TextureRegion] ParticleEffect TextureAtlas TextureRegion]
[play_clj.utils TextureEntity NinePatchEntity ParticleEntity])) [play_clj.utils TextureEntity NinePatchEntity ParticleEffectEntity]))
(defmacro bitmap-font (defmacro bitmap-font
"Returns a [BitmapFont](http://libgdx.badlogicgames.com/nightlies/docs/api/com/badlogic/gdx/graphics/g2d/BitmapFont.html) "Returns a [BitmapFont](http://libgdx.badlogicgames.com/nightlies/docs/api/com/badlogic/gdx/graphics/g2d/BitmapFont.html)
@@ -90,7 +90,7 @@
(defn particle-effect* (defn particle-effect*
"The function version of `particle-effect`" "The function version of `particle-effect`"
[] []
(ParticleEntity. (ParticleEffect.))) (ParticleEffectEntity. (ParticleEffect.)))
(defmacro particle-effect (defmacro particle-effect
"Returns an entity based on [ParticleEffect](http://libgdx.badlogicgames.com/nightlies/docs/api/com/badlogic/gdx/graphics/g2d/ParticleEffect.html) "Returns an entity based on [ParticleEffect](http://libgdx.badlogicgames.com/nightlies/docs/api/com/badlogic/gdx/graphics/g2d/ParticleEffect.html)

View File

@@ -1,6 +1,7 @@
(ns play-clj.utils (ns play-clj.utils
(:require [clojure.string :as s]) (:require [clojure.string :as s])
(:import [com.badlogic.gdx.graphics.g2d NinePatch ParticleEffect SpriteBatch (:import [com.badlogic.gdx Gdx Graphics]
[com.badlogic.gdx.graphics.g2d NinePatch ParticleEffect SpriteBatch
TextureRegion] TextureRegion]
[com.badlogic.gdx.graphics.g3d Environment ModelBatch ModelInstance] [com.badlogic.gdx.graphics.g3d Environment ModelBatch ModelInstance]
[com.badlogic.gdx.scenes.scene2d Actor] [com.badlogic.gdx.scenes.scene2d Actor]
@@ -194,11 +195,12 @@ new object to be created each time a field is set)
height (float (or height (.getTotalHeight object)))] height (float (or height (.getTotalHeight object)))]
(.draw object ^SpriteBatch batch x y width height)))) (.draw object ^SpriteBatch batch x y width height))))
(defrecord ParticleEntity [object] Entity (defrecord ParticleEffectEntity [object] Entity
(draw-entity! [{:keys [^ParticleEffect object x y delta-time]} batch] (draw-entity! [{:keys [^ParticleEffect object x y delta-time]} batch]
(let [x (float (or x 0)) (let [x (float (or x 0))
y (float (or y 0)) y (float (or y 0))
delta-time (float delta-time)] ^Graphics g (Gdx/graphics)
delta-time (float (or delta-time (.getDeltaTime g)))]
(.setPosition object x y) (.setPosition object x y)
(.draw object ^SpriteBatch batch delta-time)))) (.draw object ^SpriteBatch batch delta-time))))