working on fight.
BIN
desktop/asset-work/global/ego/tongue-hit.ase
Normal file
BIN
desktop/asset-work/global/ego/tongue-hit_0.png
Normal file
|
After Width: | Height: | Size: 3.3 KiB |
BIN
desktop/asset-work/global/ego/tongue-hit_1.png
Normal file
|
After Width: | Height: | Size: 3.6 KiB |
BIN
desktop/asset-work/global/ego/tongue-hit_2.png
Normal file
|
After Width: | Height: | Size: 3.6 KiB |
BIN
desktop/asset-work/global/ego/tongue-hit_3.png
Normal file
|
After Width: | Height: | Size: 3.4 KiB |
BIN
desktop/asset-work/tongue-fight/tongue-attack-hit_0.ase
Normal file
BIN
desktop/asset-work/tongue-fight/tongue-attack-hit_0.png
Normal file
|
After Width: | Height: | Size: 1.1 KiB |
BIN
desktop/asset-work/tongue-fight/tongue-attack-hit_1.png
Normal file
|
After Width: | Height: | Size: 1.3 KiB |
BIN
desktop/asset-work/tongue-fight/tongue-attack-hit_2.png
Normal file
|
After Width: | Height: | Size: 1.7 KiB |
BIN
desktop/asset-work/tongue-fight/tongue-attack-hit_3.png
Normal file
|
After Width: | Height: | Size: 1.6 KiB |
BIN
desktop/asset-work/tongue-fight/tongue-attack-hit_4.png
Normal file
|
After Width: | Height: | Size: 1.4 KiB |
BIN
desktop/asset-work/tongue-fight/tongue-attack-hit_5.png
Normal file
|
After Width: | Height: | Size: 685 B |
BIN
desktop/asset-work/tongue-fight/tongue-attack-hit_6.png
Normal file
|
After Width: | Height: | Size: 649 B |
BIN
desktop/asset-work/tongue-fight/tongue-attack-hit_7.png
Normal file
|
After Width: | Height: | Size: 523 B |
|
Before Width: | Height: | Size: 1.4 KiB After Width: | Height: | Size: 1.4 KiB |
|
Before Width: | Height: | Size: 1.3 KiB After Width: | Height: | Size: 1.4 KiB |
BIN
desktop/asset-work/tongue-fight/tongue-windup_2.png
Normal file
|
After Width: | Height: | Size: 1.3 KiB |
BIN
desktop/asset-work/tongue-fight/tongue-windup_3.png
Normal file
|
After Width: | Height: | Size: 1.2 KiB |
@@ -2,7 +2,7 @@
|
||||
(def packs (into ["do"]
|
||||
(mapcat (fn [directory]
|
||||
["run" "-m" "com.badlogic.gdx.tools.texturepacker.TexturePacker" (str "asset-work/" directory) "resources/packed/" (str directory ",")])
|
||||
["tongue-fight" ]
|
||||
["tongue-fight", "global" ]
|
||||
#_["behindhouse" "dream" "georgia" "inside-cafeteria" "inside-jail" "outsidehouse" "safe-song" "title"
|
||||
"castle-gate" "ego" "held" "inside-castle" "inside-stash" "outside-castle" "screenshots" "wizard"
|
||||
"cat-tree" "ending-castle" "inside-antique" "inside-house" "outside-jail" "space" ])))
|
||||
@@ -49,7 +49,7 @@
|
||||
[slamhound "1.5.5"]
|
||||
[org.clojure/data.csv "0.1.3"]]
|
||||
|
||||
:warn-on-reflection true}
|
||||
#_#_:warn-on-reflection true}
|
||||
:mobile-dev {
|
||||
:source-paths ["src" "src-common" "src-dev"]
|
||||
:jvm-opts ["-Duse-repl=true" "-Dui_scale=1.5" "-Dno-steam=true" "-Dclojure.compiler.direct-linking=true" "-Dis-desktop=true" "-Dplatform=desktop"]
|
||||
|
||||
|
Before Width: | Height: | Size: 184 KiB After Width: | Height: | Size: 178 KiB |
|
Before Width: | Height: | Size: 16 KiB After Width: | Height: | Size: 18 KiB |
@@ -13,56 +13,56 @@ background
|
||||
index: -1
|
||||
hair-0
|
||||
rotate: false
|
||||
xy: 735, 366
|
||||
xy: 687, 72
|
||||
size: 7, 8
|
||||
orig: 7, 8
|
||||
offset: 0, 0
|
||||
index: 0
|
||||
hair-0
|
||||
rotate: false
|
||||
xy: 839, 404
|
||||
xy: 114, 113
|
||||
size: 7, 8
|
||||
orig: 7, 8
|
||||
offset: 0, 0
|
||||
index: 1
|
||||
hair-0
|
||||
rotate: false
|
||||
xy: 853, 434
|
||||
xy: 53, 45
|
||||
size: 7, 8
|
||||
orig: 7, 8
|
||||
offset: 0, 0
|
||||
index: 2
|
||||
hair-0
|
||||
rotate: false
|
||||
xy: 888, 472
|
||||
xy: 791, 96
|
||||
size: 7, 8
|
||||
orig: 7, 8
|
||||
offset: 0, 0
|
||||
index: 3
|
||||
hair-0
|
||||
rotate: false
|
||||
xy: 902, 502
|
||||
xy: 831, 140
|
||||
size: 7, 8
|
||||
orig: 7, 8
|
||||
offset: 0, 0
|
||||
index: 4
|
||||
hair-1
|
||||
rotate: false
|
||||
xy: 276, 226
|
||||
xy: 2, 11
|
||||
size: 23, 16
|
||||
orig: 23, 16
|
||||
offset: 0, 0
|
||||
index: 0
|
||||
hair-1
|
||||
rotate: false
|
||||
xy: 2, 11
|
||||
xy: 28, 37
|
||||
size: 23, 16
|
||||
orig: 23, 16
|
||||
offset: 0, 0
|
||||
index: 1
|
||||
hair-1
|
||||
rotate: false
|
||||
xy: 51, 79
|
||||
xy: 791, 106
|
||||
size: 23, 16
|
||||
orig: 23, 16
|
||||
offset: 0, 0
|
||||
@@ -76,98 +76,98 @@ hair-2
|
||||
index: 0
|
||||
hair-2
|
||||
rotate: false
|
||||
xy: 324, 297
|
||||
xy: 791, 150
|
||||
size: 47, 66
|
||||
orig: 47, 66
|
||||
offset: 0, 0
|
||||
index: 1
|
||||
hair-2
|
||||
rotate: false
|
||||
xy: 839, 444
|
||||
xy: 51, 55
|
||||
size: 47, 66
|
||||
orig: 47, 66
|
||||
offset: 0, 0
|
||||
index: 2
|
||||
hair-3
|
||||
rotate: false
|
||||
xy: 276, 216
|
||||
xy: 1009, 452
|
||||
size: 7, 8
|
||||
orig: 7, 8
|
||||
offset: 0, 0
|
||||
index: 0
|
||||
hair-3
|
||||
rotate: false
|
||||
xy: 51, 69
|
||||
xy: 840, 166
|
||||
size: 7, 8
|
||||
orig: 7, 8
|
||||
offset: 0, 0
|
||||
index: 1
|
||||
hair-3
|
||||
rotate: false
|
||||
xy: 42, 45
|
||||
xy: 854, 196
|
||||
size: 7, 8
|
||||
orig: 7, 8
|
||||
offset: 0, 0
|
||||
index: 2
|
||||
hair-4
|
||||
rotate: false
|
||||
xy: 373, 335
|
||||
xy: 1009, 482
|
||||
size: 12, 28
|
||||
orig: 12, 28
|
||||
offset: 0, 0
|
||||
index: 0
|
||||
hair-4
|
||||
rotate: false
|
||||
xy: 839, 414
|
||||
xy: 840, 188
|
||||
size: 12, 28
|
||||
orig: 12, 28
|
||||
offset: 0, 0
|
||||
index: 1
|
||||
hair-4
|
||||
rotate: false
|
||||
xy: 888, 482
|
||||
xy: 100, 93
|
||||
size: 12, 28
|
||||
orig: 12, 28
|
||||
offset: 0, 0
|
||||
index: 2
|
||||
hair-5
|
||||
rotate: false
|
||||
xy: 350, 285
|
||||
xy: 840, 176
|
||||
size: 8, 10
|
||||
orig: 8, 10
|
||||
offset: 0, 0
|
||||
index: 0
|
||||
hair-5
|
||||
rotate: false
|
||||
xy: 373, 323
|
||||
xy: 854, 206
|
||||
size: 8, 10
|
||||
orig: 8, 10
|
||||
offset: 0, 0
|
||||
index: 1
|
||||
hair-5
|
||||
rotate: false
|
||||
xy: 387, 353
|
||||
xy: 100, 81
|
||||
size: 8, 10
|
||||
orig: 8, 10
|
||||
offset: 0, 0
|
||||
index: 2
|
||||
hair-6
|
||||
rotate: false
|
||||
xy: 350, 277
|
||||
xy: 1018, 454
|
||||
size: 4, 6
|
||||
orig: 4, 6
|
||||
offset: 0, 0
|
||||
index: 0
|
||||
hair-6
|
||||
rotate: false
|
||||
xy: 360, 289
|
||||
xy: 1018, 446
|
||||
size: 4, 6
|
||||
orig: 4, 6
|
||||
offset: 0, 0
|
||||
index: 1
|
||||
hair-6
|
||||
rotate: false
|
||||
xy: 373, 315
|
||||
xy: 28, 29
|
||||
size: 4, 6
|
||||
orig: 4, 6
|
||||
offset: 0, 0
|
||||
@@ -202,14 +202,14 @@ hair-8
|
||||
index: 0
|
||||
hair-8
|
||||
rotate: false
|
||||
xy: 324, 263
|
||||
xy: 316, 254
|
||||
size: 6, 6
|
||||
orig: 6, 6
|
||||
offset: 0, 0
|
||||
index: 1
|
||||
hair-8
|
||||
rotate: false
|
||||
xy: 91, 115
|
||||
xy: 316, 246
|
||||
size: 6, 6
|
||||
orig: 6, 6
|
||||
offset: 0, 0
|
||||
@@ -223,14 +223,14 @@ hair-9
|
||||
index: 0
|
||||
hair-9
|
||||
rotate: false
|
||||
xy: 28, 35
|
||||
xy: 817, 130
|
||||
size: 12, 18
|
||||
orig: 12, 18
|
||||
offset: 0, 0
|
||||
index: 1
|
||||
hair-9
|
||||
rotate: false
|
||||
xy: 77, 103
|
||||
xy: 1009, 462
|
||||
size: 12, 18
|
||||
orig: 12, 18
|
||||
offset: 0, 0
|
||||
@@ -244,67 +244,137 @@ heart
|
||||
index: 0
|
||||
heart
|
||||
rotate: false
|
||||
xy: 2, 29
|
||||
xy: 276, 218
|
||||
size: 24, 24
|
||||
orig: 24, 24
|
||||
offset: 0, 0
|
||||
index: 1
|
||||
heart
|
||||
rotate: false
|
||||
xy: 51, 97
|
||||
xy: 2, 29
|
||||
size: 24, 24
|
||||
orig: 24, 24
|
||||
offset: 0, 0
|
||||
index: 2
|
||||
heart
|
||||
rotate: false
|
||||
xy: 324, 271
|
||||
xy: 791, 124
|
||||
size: 24, 24
|
||||
orig: 24, 24
|
||||
offset: 0, 0
|
||||
index: 3
|
||||
tongue-attack
|
||||
rotate: false
|
||||
xy: 2, 123
|
||||
xy: 461, 218
|
||||
size: 135, 145
|
||||
orig: 135, 145
|
||||
offset: 0, 0
|
||||
index: 0
|
||||
tongue-attack
|
||||
rotate: false
|
||||
xy: 598, 218
|
||||
size: 135, 145
|
||||
orig: 135, 145
|
||||
offset: 0, 0
|
||||
index: 1
|
||||
tongue-attack
|
||||
rotate: false
|
||||
xy: 735, 218
|
||||
size: 135, 145
|
||||
orig: 135, 145
|
||||
offset: 0, 0
|
||||
index: 2
|
||||
tongue-attack-hit
|
||||
rotate: false
|
||||
xy: 2, 123
|
||||
size: 135, 145
|
||||
orig: 135, 145
|
||||
offset: 0, 0
|
||||
index: 0
|
||||
tongue-attack-hit
|
||||
rotate: false
|
||||
xy: 324, 365
|
||||
size: 135, 145
|
||||
orig: 135, 145
|
||||
offset: 0, 0
|
||||
index: 1
|
||||
tongue-attack
|
||||
tongue-attack-hit
|
||||
rotate: false
|
||||
xy: 139, 123
|
||||
size: 135, 145
|
||||
orig: 135, 145
|
||||
offset: 0, 0
|
||||
index: 2
|
||||
tongue-attack-hit
|
||||
rotate: false
|
||||
xy: 461, 365
|
||||
size: 135, 145
|
||||
orig: 135, 145
|
||||
offset: 0, 0
|
||||
index: 3
|
||||
tongue-attack-hit
|
||||
rotate: false
|
||||
xy: 598, 365
|
||||
size: 135, 145
|
||||
orig: 135, 145
|
||||
offset: 0, 0
|
||||
index: 4
|
||||
tongue-attack-hit
|
||||
rotate: false
|
||||
xy: 735, 365
|
||||
size: 135, 145
|
||||
orig: 135, 145
|
||||
offset: 0, 0
|
||||
index: 5
|
||||
tongue-attack-hit
|
||||
rotate: false
|
||||
xy: 872, 365
|
||||
size: 135, 145
|
||||
orig: 135, 145
|
||||
offset: 0, 0
|
||||
index: 6
|
||||
tongue-attack-hit
|
||||
rotate: false
|
||||
xy: 324, 218
|
||||
size: 135, 145
|
||||
orig: 135, 145
|
||||
offset: 0, 0
|
||||
index: 7
|
||||
tongue-idle
|
||||
rotate: false
|
||||
xy: 735, 376
|
||||
xy: 687, 82
|
||||
size: 102, 134
|
||||
orig: 102, 134
|
||||
offset: 0, 0
|
||||
index: 0
|
||||
tongue-windup
|
||||
rotate: false
|
||||
xy: 461, 365
|
||||
xy: 872, 218
|
||||
size: 135, 145
|
||||
orig: 135, 145
|
||||
offset: 0, 0
|
||||
index: 0
|
||||
tongue-windup
|
||||
rotate: false
|
||||
xy: 598, 365
|
||||
xy: 276, 71
|
||||
size: 135, 145
|
||||
orig: 135, 145
|
||||
offset: 0, 0
|
||||
index: 1
|
||||
tongue-windup
|
||||
rotate: false
|
||||
xy: 413, 71
|
||||
size: 135, 145
|
||||
orig: 135, 145
|
||||
offset: 0, 0
|
||||
index: 2
|
||||
tongue-windup
|
||||
rotate: false
|
||||
xy: 550, 71
|
||||
size: 135, 145
|
||||
orig: 135, 145
|
||||
offset: 0, 0
|
||||
index: 3
|
||||
|
||||
tongue-fight2.png
|
||||
size: 1024,256
|
||||
|
||||
|
Before Width: | Height: | Size: 32 KiB After Width: | Height: | Size: 40 KiB |
@@ -17,6 +17,7 @@
|
||||
[play-clj.g2d :refer :all]))
|
||||
(println "loading " *ns*)
|
||||
|
||||
|
||||
(defn cause-damage [entities is-player-wound?]
|
||||
(if is-player-wound?
|
||||
(update-in entities [:room :ego-hearts] dec)
|
||||
@@ -84,6 +85,7 @@
|
||||
tongue-finished?)
|
||||
(-> entities
|
||||
(update-in [:room :entities :tongue] #(actions/start-animation screen % :idle))
|
||||
(update-in [:room :entities :ego] #(actions/start-animation screen % :tongue-idle))
|
||||
(update-in [:room :entities :tongue] assoc :state :idle :started (:total-time screen))
|
||||
(update-in [:room :entities :heart] #(actions/start-animation screen % :idle)))
|
||||
|
||||
@@ -94,11 +96,13 @@
|
||||
ego-finished?))
|
||||
|
||||
(-> entities
|
||||
(update-in [:room :entities :tongue] #(actions/start-animation screen % :attack))
|
||||
(update-in [:room :entities :tongue] #(if is-player-wound?
|
||||
(actions/start-animation screen % :attack-hit)
|
||||
(actions/start-animation screen % :attack)))
|
||||
(update-in [:room :entities :tongue] assoc :state :attack :started (:total-time screen) )
|
||||
(update-in [:room :entities :ego] #(if is-player-wound?
|
||||
(actions/start-animation screen % :tongue-swing)
|
||||
%))
|
||||
(actions/start-animation screen % :tongue-hit)))
|
||||
(show-heart screen is-player-wound?))
|
||||
|
||||
(and (= state :idle)
|
||||
@@ -140,8 +144,9 @@
|
||||
heart (utils/make-anim-seq atlas "heart" [24 24] 0.08 [3])
|
||||
beat (utils/make-anim-seq atlas "heart" [24 24] 0.08 [0 1 0 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3])
|
||||
tongue-idle (utils/make-anim-seq atlas "tongue-idle/tongue-idle" [135 145] 0.16 (range 5))
|
||||
tongue-windup (utils/make-anim-seq atlas "tongue-windup" [135 145] 0.16 [0 1 0 1 0 1 0 ])
|
||||
tongue-attack (utils/make-anim-seq atlas "tongue-attack" [135 145] 0.08 [0 1 2 2 2 2 2 2 2 2 2 2])]
|
||||
tongue-windup (utils/make-anim-seq atlas "tongue-windup" [135 145] 0.16 [0 1 2 3 2 1 2 3 2 1 0 ])
|
||||
tongue-attack (utils/make-anim-seq atlas "tongue-attack" [135 145] 0.08 [0 1 2 2 2 2 2 2 2 2 2 2])
|
||||
tongue-attack-hit (utils/make-anim-seq atlas "tongue-attack-hit" [135 145] 0.1 (range 7))]
|
||||
|
||||
|
||||
(rooms/make :name "Tongue Fight"
|
||||
@@ -244,21 +249,22 @@
|
||||
:beat beat
|
||||
:anim-start 0)
|
||||
:tongue (assoc (animation->texture screen tongue-idle)
|
||||
:x 186
|
||||
:y 65
|
||||
:x 211
|
||||
:y 40
|
||||
:origin-x 23
|
||||
:origin-y 10
|
||||
:width 135
|
||||
:height 145
|
||||
:baseline 2
|
||||
:baseline 4
|
||||
:anim tongue-idle
|
||||
:windup tongue-windup
|
||||
:idle tongue-idle
|
||||
:attack tongue-attack
|
||||
:attack-hit tongue-attack-hit
|
||||
:anim-merges {tongue-idle {:origin-x 23 :origin-y 10}
|
||||
tongue-windup {:origin-x 23 :origin-y 10}
|
||||
tongue-attack {:origin-x 119 :origin-y 10}
|
||||
}
|
||||
tongue-attack-hit {:origin-x 100 :origin-y 10}}
|
||||
:anim-start 0
|
||||
:state :idle
|
||||
:script (actions/get-script
|
||||
@@ -272,6 +278,7 @@
|
||||
(-> e
|
||||
(update-in [:room :entities :ego] #(actions/start-animation screen % :tongue-idle))
|
||||
(assoc-in [:room :entities :ego :stand-override] :tongue-idle)
|
||||
(assoc-in [:room :entities :ego :baseline] 3)
|
||||
(assoc-in [:room :entities :ego :x] 141)
|
||||
(assoc-in [:room :entities :ego :y] 110))))))
|
||||
|
||||
|
||||
@@ -519,8 +519,9 @@
|
||||
love (utils/make-anim-seq global-atlas "ego/love" [50 70] 0.1 (flatten [0 0 1 1 2 2 3 3 4 4 5 5 6 6 (repeat 10 7) (repeat 5 8) (repeat 5 7) (repeat 5 8) (repeat 5 7) (repeat 10 [23 24 25 24]) (repeat 30 9) 10 11 12 13 14 15 16 17 18 19 20 21 21 21 22 22 22 21 21 21 21 21 21 21 21 22 22 22 22 22 21 21 21 21 22 22 22 22 22 22 21 21 21 21 21 6 6 5 5 4 4 3 3 2 2 1 1 0]))
|
||||
whistle (utils/make-anim-seq global-atlas "ego/whistle" [18 36] 0.2 (flatten [0 1 1 (repeat 200 [2 3])]))
|
||||
axe (utils/make-anim global-atlas "ego/axe" [60 70] 0.10 (flatten [1 1 1 1 1 0 0 0 1 1 1 1 1 0 0 0 0 (range 7)]))
|
||||
tongue-windup (utils/make-anim-seq global-atlas "ego/tongue-stance" [119 134] 0.05 [0 1 2 2 2 2 2 2 2 2])
|
||||
tongue-windup (utils/make-anim-seq global-atlas "ego/tongue-stance" [119 134] 0.05 [0 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2])
|
||||
tongue-swing (utils/make-anim-seq global-atlas "ego/tongue-stance" [119 134] 0.12 [ 3 4 5 6 ])
|
||||
tongue-hit (utils/make-anim-seq global-atlas "ego/tongue-hit" [119 134] 0.12 [0 1 2 2 2 2 3])
|
||||
tongue-idle (utils/make-anim-seq global-atlas "ego/tongue-idle" [119 134] 0.7 [0 1])
|
||||
axe-wood (utils/make-anim global-atlas "ego/axe-wood" [60 70] 0.10 (flatten [1 1 1 1 1 0 0 0 1 1 1 1 1 0 0 0 0 (range 11)]))
|
||||
suspended (utils/make-anim global-atlas "ego/suspended" [20 36] 0.10 [0])
|
||||
@@ -561,6 +562,7 @@
|
||||
:reach-start reach-start
|
||||
:jump jump
|
||||
:tongue-swing tongue-swing
|
||||
:tongue-hit tongue-hit
|
||||
:tongue-windup tongue-windup
|
||||
:tongue-idle tongue-idle
|
||||
:jump-straight jump-straight
|
||||
@@ -623,6 +625,7 @@
|
||||
:reach-start (utils/flip reach-start)
|
||||
:jump-straight (utils/flip jump-straight)
|
||||
:tongue-swing tongue-swing
|
||||
:tongue-hit tongue-hit
|
||||
:tongue-windup tongue-windup
|
||||
:tongue-idle tongue-idle
|
||||
:jumping-straight (utils/flip jumping-straight)
|
||||
@@ -750,6 +753,7 @@
|
||||
(get-in ego [:left :jump-straight]) {:origin-x 9}
|
||||
(get-in ego [:right :jump-straight]) {:origin-x 9}
|
||||
(get-in ego [:left :tongue-swing]) {:origin-x 41 :origin-y 15}
|
||||
(get-in ego [:left :tongue-hit]) {:origin-x 41 :origin-y 15}
|
||||
(get-in ego [:left :tongue-windup]) {:origin-x 41 :origin-y 15}
|
||||
(get-in ego [:left :tongue-idle]) {:origin-x 41 :origin-y 15}
|
||||
|
||||
|
||||