things are faster, hopefully.
This commit is contained in:
@@ -689,11 +689,9 @@ void main()
|
||||
:talk-color (color 0.6 1.0 1.0 1.0)
|
||||
:stand-override nil
|
||||
:mouse-in? (fn [entities x y]
|
||||
(let [{entity-x :x entity-y :y region :object scale :scale-x} (get-in entities [:room :entities :ego])
|
||||
(let [{entity-x :x entity-y :y ^TextureRegion region :object scale :scale-x} (get-in entities [:room :entities :ego])
|
||||
half-width (/ (* (.getRegionWidth region) (or scale 1.0)) 2)
|
||||
height (* (.getRegionHeight region) (or scale 1.0))]
|
||||
#_(clojure.pprint/pprint [["point" x y]
|
||||
["entity " (- entity-x half-width) entity-y (+ entity-x half-width) (+ entity-y height)]])
|
||||
|
||||
((zone/box (- entity-x half-width) entity-y (+ entity-x half-width) (+ entity-y height)) x y)))
|
||||
:get-script get-ego-script
|
||||
@@ -808,8 +806,8 @@ void main()
|
||||
(defn animate [entity screen]
|
||||
(merge entity (animation->texture (update-in screen [:total-time] #(- % (:anim-start entity)))
|
||||
(:anim entity))
|
||||
{:current-frame-index (texture! (:anim entity) :get-key-frame-index (get-animation-point (:anim entity) (- (:total-time screen) (:anim-start entity))))
|
||||
:previous-frame-index (texture! (:anim entity) :get-key-frame-index (get-animation-point (:anim entity) (- (:total-time screen) (:anim-start entity) (or (:delta-time screen) 0))))
|
||||
{:current-frame-index (animation! ^Animation (:anim entity) :get-key-frame-index (get-animation-point (:anim entity) (- (:total-time screen) (:anim-start entity))))
|
||||
:previous-frame-index (animation! ^Animation (:anim entity) :get-key-frame-index (get-animation-point (:anim entity) (- (:total-time screen) (:anim-start entity) (or (:delta-time screen) 0))))
|
||||
:origin-x (or (get-in entity [:anim-origins (:anim entity) 0])
|
||||
(:base-origin-x entity)
|
||||
(:origin-x entity))
|
||||
@@ -954,9 +952,9 @@ void main()
|
||||
(fn [screen entities]
|
||||
|
||||
(let [screen (assoc screen :total-time 0)]
|
||||
(let [[cam] (utils/setup-viewport screen 320 240)]
|
||||
(let [[^OrthographicCamera cam] (utils/setup-viewport screen 320 240)]
|
||||
(set! (. cam zoom) 0.95)
|
||||
(let [shader (ShaderProgram. v-shader pix-shader)
|
||||
(let [shader (ShaderProgram. ^String v-shader ^String pix-shader)
|
||||
_ (update! screen :shader shader)
|
||||
rooms {:inside-house (rooms.inside-house/make screen)
|
||||
:inside-stash (rooms.inside-stash/make screen)
|
||||
@@ -1052,7 +1050,7 @@ void main()
|
||||
nil)
|
||||
|
||||
:on-render
|
||||
(fn [{:keys [camera ^FitViewport viewport] :as screen} [entities]]
|
||||
(fn [{:keys [^OrthographicCamera camera ^FitViewport viewport] :as screen} [entities]]
|
||||
(.apply viewport)
|
||||
(if (get-in entities [:closing? :value])
|
||||
|
||||
@@ -1132,7 +1130,7 @@ void main()
|
||||
|
||||
entities))))
|
||||
|
||||
:on-resize (fn [{:keys [viewport width height]} [entities]]
|
||||
:on-resize (fn [{:keys [^FitViewport viewport width height]} [entities]]
|
||||
(.update viewport width height))
|
||||
|
||||
:on-hide (fn [screen [entities]]
|
||||
@@ -1148,7 +1146,7 @@ void main()
|
||||
mouse-moved
|
||||
|
||||
:on-touch-down
|
||||
(fn [{:keys [input-x input-y viewport] :as screen} [entities]]
|
||||
(fn [{:keys [input-x input-y ^FitViewport viewport] :as screen} [entities]]
|
||||
(when (utils/contains-point? (.getScreenX viewport) (.getScreenY viewport)
|
||||
(.getScreenWidth viewport) (.getScreenHeight viewport)
|
||||
input-x input-y)
|
||||
@@ -1162,7 +1160,7 @@ void main()
|
||||
interacting-entity (get-interacting-entity entities x y)]
|
||||
(assoc-in entities [:cursor :down-target] (or (:id interacting-entity ) (:id interaction) nil))))))
|
||||
|
||||
:on-touch-up (fn [{:keys [input-x input-y viewport] :as screen} [entities]]
|
||||
:on-touch-up (fn [{:keys [input-x input-y ^FitViewport viewport] :as screen} [entities]]
|
||||
|
||||
(when (utils/contains-point? (.getScreenX viewport) (.getScreenY viewport)
|
||||
(.getScreenWidth viewport) (.getScreenHeight viewport)
|
||||
@@ -1240,8 +1238,8 @@ void main()
|
||||
entities)
|
||||
|
||||
:on-resize
|
||||
(fn [screen entities]
|
||||
(.update (:viewport screen) (:width screen) (:height screen) true))
|
||||
(fn [{:keys [^FitViewport viewport width height]} entities]
|
||||
(.update viewport width height true))
|
||||
|
||||
)
|
||||
(defscreen hud
|
||||
@@ -1261,7 +1259,7 @@ void main()
|
||||
:fps (assoc (label "" (color :white) ) :x 5 :baseline 0 :opacity 0.1)}))
|
||||
|
||||
:on-render
|
||||
(fn [{:keys [viewport] :as screen} [entities]]
|
||||
(fn [{:keys [^FitViewport viewport] :as screen} [entities]]
|
||||
(.apply viewport)
|
||||
(let [entities (utils/apply-tweens screen entities (:tweens entities))]
|
||||
#_(label! (:fps entities) :set-text (str (game :fps)))
|
||||
@@ -1269,8 +1267,8 @@ void main()
|
||||
entities))
|
||||
|
||||
:on-resize
|
||||
(fn [screen entities]
|
||||
(.update (:viewport screen) (:width screen) (:height screen) true))
|
||||
(fn [{:keys [^FitViewport viewport width height]} entities]
|
||||
(.update viewport width height true))
|
||||
|
||||
:on-mouse-moved
|
||||
(fn [screen [entities]]
|
||||
|
||||
Reference in New Issue
Block a user