lots of ending improvements

This commit is contained in:
Bryce Covert
2018-02-10 18:32:29 -08:00
parent c37309fac1
commit 2ab191c2d5
47 changed files with 1112 additions and 356 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 KiB

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.3 KiB

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.0 KiB

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.8 KiB

After

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.0 KiB

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.8 KiB

After

Width:  |  Height:  |  Size: 2.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.9 KiB

After

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.9 KiB

After

Width:  |  Height:  |  Size: 1.9 KiB

View File

@@ -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", "global" "space" ]
["tongue-fight", "global" "space" "particles"]
#_["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" ])))
@@ -43,7 +43,7 @@
:dev {
:source-paths ["src" "src-common" "src-dev"]
:jvm-opts ["-Duse-repl=true" "-Dui_scale=1.0" "-Dno-steam=true" "-Dclojure.compiler.direct-linking=true" "-Dis-desktop=true" "-Dplatform=desktop"]
:dependencies [[com.badlogicgames.gdx/gdx-tools "1.5.3"]
:dependencies [[com.badlogicgames.gdx/gdx-tools "1.9.4"]
[org.clojure/tools.nrepl "0.2.12"]
[play-clj-nrepl "0.1.0" :exclusions [play-clj]]
[slamhound "1.5.5"]

View File

@@ -0,0 +1,90 @@
particles.png
size: 256,64
format: RGBA8888
filter: Nearest,Nearest
repeat: none
beam
rotate: false
xy: 2, 5
size: 12, 5
orig: 12, 5
offset: 0, 0
index: -1
cloud
rotate: false
xy: 148, 25
size: 15, 15
orig: 15, 15
offset: 0, 0
index: -1
cloud-georgia
rotate: false
xy: 104, 20
size: 20, 20
orig: 20, 20
offset: 0, 0
index: -1
cloud1
rotate: false
xy: 2, 12
size: 100, 50
orig: 100, 50
offset: 0, 0
index: -1
cloud2
rotate: false
xy: 2, 12
size: 100, 50
orig: 100, 50
offset: 0, 0
index: -1
cloudy
rotate: false
xy: 206, 42
size: 20, 20
orig: 20, 20
offset: 0, 0
index: -1
dither
rotate: false
xy: 104, 15
size: 3, 3
orig: 3, 3
offset: 0, 0
index: -1
dot
rotate: false
xy: 2, 2
size: 1, 1
orig: 1, 1
offset: 0, 0
index: -1
fire-particle
rotate: false
xy: 250, 58
size: 4, 4
orig: 4, 4
offset: 0, 0
index: -1
flesh
rotate: false
xy: 126, 20
size: 20, 20
orig: 20, 20
offset: 0, 0
index: -1
lightning
rotate: false
xy: 104, 42
size: 100, 20
orig: 100, 20
offset: 0, 0
index: -1
magic
rotate: false
xy: 228, 42
size: 20, 20
orig: 20, 20
offset: 0, 0
index: -1

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.3 KiB

View File

@@ -18,6 +18,13 @@ Untitled
orig: 36, 36
offset: 0, 0
index: -1
arm
rotate: false
xy: 870, 663
size: 118, 190
orig: 118, 190
offset: 0, 0
index: -1
background
rotate: false
xy: 2, 613
@@ -41,39 +48,25 @@ blergh-stand
index: -1
blergh-talk
rotate: false
xy: 870, 688
xy: 870, 496
size: 106, 165
orig: 106, 165
offset: 0, 0
index: -1
bloodclot-explode
rotate: false
xy: 870, 521
xy: 912, 329
size: 106, 165
orig: 106, 165
offset: 0, 0
index: 0
bloodclot-explode
rotate: false
xy: 912, 354
xy: 912, 162
size: 106, 165
orig: 106, 165
offset: 0, 0
index: 1
bloodclot-explode
rotate: false
xy: 912, 187
size: 106, 165
orig: 106, 165
offset: 0, 0
index: 2
bloodclot-explode
rotate: false
xy: 912, 20
size: 106, 165
orig: 106, 165
offset: 0, 0
index: 3
bloodclot-grow
rotate: false
xy: 324, 653
@@ -172,6 +165,20 @@ bloodclot-grow
orig: 180, 200
offset: 0, 0
index: 13
bloodclot-head-talk
rotate: false
xy: 912, 85
size: 82, 75
orig: 82, 75
offset: 0, 0
index: 0
bloodclot-head-talk
rotate: false
xy: 912, 8
size: 82, 75
orig: 82, 75
offset: 0, 0
index: 1
bloodclot-stand
rotate: false
xy: 2, 2
@@ -188,7 +195,7 @@ bloodclot-talk
index: -1
broken-jewel
rotate: false
xy: 324, 153
xy: 870, 480
size: 10, 14
orig: 10, 14
offset: 0, 0
@@ -209,7 +216,7 @@ cloud
index: -1
dot
rotate: false
xy: 870, 518
xy: 978, 660
size: 1, 1
orig: 1, 1
offset: 0, 0
@@ -240,132 +247,146 @@ bloodclot-explode
size: 106, 165
orig: 106, 165
offset: 0, 0
index: 4
index: 2
bloodclot-explode
rotate: false
xy: 184, 784
size: 106, 165
orig: 106, 165
offset: 0, 0
index: 5
index: 3
bloodclot-explode
rotate: false
xy: 2, 415
size: 106, 165
orig: 106, 165
offset: 0, 0
index: 6
index: 4
bloodclot-explode
rotate: false
xy: 292, 784
size: 106, 165
orig: 106, 165
offset: 0, 0
index: 7
index: 5
bloodclot-explode
rotate: false
xy: 2, 248
size: 106, 165
orig: 106, 165
offset: 0, 0
index: 8
index: 6
bloodclot-explode
rotate: false
xy: 400, 784
size: 106, 165
orig: 106, 165
offset: 0, 0
index: 9
index: 7
bloodclot-explode
rotate: false
xy: 2, 81
size: 106, 165
orig: 106, 165
offset: 0, 0
index: 10
index: 8
bloodclot-explode
rotate: false
xy: 508, 784
size: 106, 165
orig: 106, 165
offset: 0, 0
index: 11
index: 9
bloodclot-explode
rotate: false
xy: 616, 784
size: 106, 165
orig: 106, 165
offset: 0, 0
index: 12
index: 10
bloodclot-explode
rotate: false
xy: 724, 784
size: 106, 165
orig: 106, 165
offset: 0, 0
index: 13
index: 11
bloodclot-explode
rotate: false
xy: 832, 784
size: 106, 165
orig: 106, 165
offset: 0, 0
index: 14
index: 12
bloodclot-explode
rotate: false
xy: 110, 582
size: 106, 165
orig: 106, 165
offset: 0, 0
index: 15
index: 13
bloodclot-explode
rotate: false
xy: 110, 415
size: 106, 165
orig: 106, 165
offset: 0, 0
index: 16
index: 14
bloodclot-explode
rotate: false
xy: 110, 248
size: 106, 165
orig: 106, 165
offset: 0, 0
index: 17
index: 15
bloodclot-explode
rotate: false
xy: 110, 81
size: 106, 165
orig: 106, 165
offset: 0, 0
index: 18
index: 16
bloodclot-explode
rotate: false
xy: 218, 617
size: 106, 165
orig: 106, 165
offset: 0, 0
index: 19
index: 17
bloodclot-explode
rotate: false
xy: 218, 450
size: 106, 165
orig: 106, 165
offset: 0, 0
index: 20
index: 18
bloodclot-explode
rotate: false
xy: 326, 617
size: 106, 165
orig: 106, 165
offset: 0, 0
index: 21
index: 19
bloodclot-explode
rotate: false
xy: 218, 283
size: 106, 165
orig: 106, 165
offset: 0, 0
index: 20
bloodclot-explode
rotate: false
xy: 326, 450
size: 106, 165
orig: 106, 165
offset: 0, 0
index: 21
bloodclot-explode
rotate: false
xy: 434, 617
size: 106, 165
orig: 106, 165
offset: 0, 0
index: 22
bloodclot-grow
rotate: false
@@ -380,94 +401,80 @@ bloodclot-head-talk
size: 82, 75
orig: 82, 75
offset: 0, 0
index: 0
index: 2
bloodclot-head-talk
rotate: false
xy: 940, 797
size: 82, 75
orig: 82, 75
offset: 0, 0
index: 1
index: 3
bloodclot-head-talk
rotate: false
xy: 940, 720
size: 82, 75
orig: 82, 75
offset: 0, 0
index: 2
bloodclot-head-talk
rotate: false
xy: 326, 540
size: 82, 75
orig: 82, 75
offset: 0, 0
index: 3
index: 4
bloodclot-head-talk
rotate: false
xy: 218, 206
size: 82, 75
orig: 82, 75
offset: 0, 0
index: 4
bloodclot-head-talk
rotate: false
xy: 434, 707
size: 82, 75
orig: 82, 75
offset: 0, 0
index: 5
bloodclot-head-talk
rotate: false
xy: 326, 463
xy: 326, 373
size: 82, 75
orig: 82, 75
offset: 0, 0
index: 6
bloodclot-head-talk
rotate: false
xy: 218, 129
xy: 434, 540
size: 82, 75
orig: 82, 75
offset: 0, 0
index: 7
bloodclot-head-talk
rotate: false
xy: 434, 630
xy: 542, 707
size: 82, 75
orig: 82, 75
offset: 0, 0
index: 8
bloodclot-head-talk
rotate: false
xy: 518, 707
xy: 218, 129
size: 82, 75
orig: 82, 75
offset: 0, 0
index: 9
bloodclot-head-talk
rotate: false
xy: 326, 386
xy: 326, 296
size: 82, 75
orig: 82, 75
offset: 0, 0
index: 10
bloodclot-head-talk
rotate: false
xy: 518, 630
xy: 434, 463
size: 82, 75
orig: 82, 75
offset: 0, 0
index: 11
bloodclot-head-talk
rotate: false
xy: 602, 707
xy: 542, 630
size: 82, 75
orig: 82, 75
offset: 0, 0
index: 12
bloodclot-head-talk
rotate: false
xy: 326, 309
xy: 626, 707
size: 82, 75
orig: 82, 75
offset: 0, 0

Binary file not shown.

Before

Width:  |  Height:  |  Size: 117 KiB

After

Width:  |  Height:  |  Size: 114 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 125 KiB

After

Width:  |  Height:  |  Size: 133 KiB

View File

@@ -6,392 +6,427 @@ filter: Nearest,Nearest
repeat: none
background
rotate: false
xy: 2, 778
xy: 2, 776
size: 320, 240
orig: 320, 240
offset: 0, 0
index: -1
belly-bottom
rotate: false
xy: 626, 704
size: 320, 70
orig: 320, 70
offset: 0, 0
index: -1
falling-ego
rotate: false
xy: 968, 740
size: 40, 72
orig: 40, 72
offset: 0, 0
index: 0
falling-ego
rotate: false
xy: 948, 666
size: 40, 72
orig: 40, 72
offset: 0, 0
index: 1
falling-ego
rotate: false
xy: 990, 644
size: 24, 78
orig: 24, 78
offset: 0, 0
index: -1
falling-ego
rotate: false
xy: 928, 592
size: 40, 72
orig: 40, 72
offset: 0, 0
index: 2
falling-ego
rotate: false
xy: 970, 570
size: 40, 72
orig: 40, 72
offset: 0, 0
index: 3
hair-0
rotate: false
xy: 991, 734
xy: 32, 730
size: 7, 8
orig: 7, 8
offset: 0, 0
index: 0
hair-0
rotate: false
xy: 1000, 734
xy: 41, 730
size: 7, 8
orig: 7, 8
offset: 0, 0
index: 1
hair-0
rotate: false
xy: 1009, 734
xy: 50, 730
size: 7, 8
orig: 7, 8
offset: 0, 0
index: 2
hair-0
rotate: false
xy: 981, 724
xy: 59, 730
size: 7, 8
orig: 7, 8
offset: 0, 0
index: 3
hair-0
rotate: false
xy: 967, 716
xy: 68, 730
size: 7, 8
orig: 7, 8
offset: 0, 0
index: 4
hair-1
rotate: false
xy: 928, 760
xy: 134, 758
size: 23, 16
orig: 23, 16
offset: 0, 0
index: 0
hair-1
rotate: false
xy: 928, 742
xy: 134, 740
size: 23, 16
orig: 23, 16
offset: 0, 0
index: 1
hair-1
rotate: false
xy: 967, 746
xy: 159, 758
size: 23, 16
orig: 23, 16
offset: 0, 0
index: 2
hair-2
rotate: false
xy: 968, 952
xy: 968, 950
size: 47, 66
orig: 47, 66
offset: 0, 0
index: 0
hair-2
rotate: false
xy: 968, 884
xy: 968, 882
size: 47, 66
orig: 47, 66
offset: 0, 0
index: 1
hair-2
rotate: false
xy: 968, 816
xy: 968, 814
size: 47, 66
orig: 47, 66
offset: 0, 0
index: 2
hair-3
rotate: false
xy: 942, 708
xy: 77, 730
size: 7, 8
orig: 7, 8
offset: 0, 0
index: 0
hair-3
rotate: false
xy: 928, 702
xy: 86, 730
size: 7, 8
orig: 7, 8
offset: 0, 0
index: 1
hair-3
rotate: false
xy: 951, 708
xy: 95, 730
size: 7, 8
orig: 7, 8
offset: 0, 0
index: 2
hair-4
rotate: false
xy: 953, 748
xy: 1010, 784
size: 12, 28
orig: 12, 28
offset: 0, 0
index: 0
hair-4
rotate: false
xy: 953, 718
xy: 1010, 754
size: 12, 28
orig: 12, 28
offset: 0, 0
index: 1
hair-4
rotate: false
xy: 928, 712
xy: 1010, 724
size: 12, 28
orig: 12, 28
offset: 0, 0
index: 2
hair-5
rotate: false
xy: 942, 730
xy: 2, 728
size: 8, 10
orig: 8, 10
offset: 0, 0
index: 0
hair-5
rotate: false
xy: 942, 718
xy: 12, 728
size: 8, 10
orig: 8, 10
offset: 0, 0
index: 1
hair-5
rotate: false
xy: 981, 734
xy: 22, 728
size: 8, 10
orig: 8, 10
offset: 0, 0
index: 2
hair-6
rotate: false
xy: 1017, 985
xy: 1017, 983
size: 4, 6
orig: 4, 6
offset: 0, 0
index: 0
hair-6
rotate: false
xy: 1017, 977
xy: 1017, 975
size: 4, 6
orig: 4, 6
offset: 0, 0
index: 1
hair-6
rotate: false
xy: 1017, 969
xy: 1017, 967
size: 4, 6
orig: 4, 6
offset: 0, 0
index: 2
hair-7
rotate: false
xy: 1017, 1011
xy: 1017, 1009
size: 5, 7
orig: 5, 7
offset: 0, 0
index: 0
hair-7
rotate: false
xy: 1017, 1002
xy: 1017, 1000
size: 5, 7
orig: 5, 7
offset: 0, 0
index: 1
hair-7
rotate: false
xy: 1017, 993
xy: 1017, 991
size: 5, 7
orig: 5, 7
offset: 0, 0
index: 2
hair-8
rotate: false
xy: 990, 726
xy: 104, 732
size: 6, 6
orig: 6, 6
offset: 0, 0
index: 0
hair-8
rotate: false
xy: 998, 726
xy: 104, 724
size: 6, 6
orig: 6, 6
offset: 0, 0
index: 1
hair-8
rotate: false
xy: 1006, 726
xy: 112, 732
size: 6, 6
orig: 6, 6
offset: 0, 0
index: 2
hair-9
rotate: false
xy: 992, 744
xy: 106, 756
size: 12, 18
orig: 12, 18
offset: 0, 0
index: 0
hair-9
rotate: false
xy: 1006, 744
xy: 120, 756
size: 12, 18
orig: 12, 18
offset: 0, 0
index: 1
hair-9
rotate: false
xy: 967, 726
xy: 120, 736
size: 12, 18
orig: 12, 18
offset: 0, 0
index: 2
heart
rotate: false
xy: 968, 790
xy: 2, 750
size: 24, 24
orig: 24, 24
offset: 0, 0
index: 0
heart
rotate: false
xy: 994, 790
xy: 28, 750
size: 24, 24
orig: 24, 24
offset: 0, 0
index: 1
heart
rotate: false
xy: 968, 764
xy: 54, 750
size: 24, 24
orig: 24, 24
offset: 0, 0
index: 2
heart
rotate: false
xy: 994, 764
xy: 80, 750
size: 24, 24
orig: 24, 24
offset: 0, 0
index: 3
penultimate
rotate: false
xy: 324, 778
xy: 324, 776
size: 320, 240
orig: 320, 240
offset: 0, 0
index: -1
penultimate-black
rotate: false
xy: 646, 778
xy: 646, 776
size: 320, 240
orig: 320, 240
offset: 0, 0
index: -1
penultimate-wall
rotate: false
xy: 2, 536
xy: 2, 482
size: 320, 240
orig: 320, 240
offset: 0, 0
index: -1
sword-spin
rotate: false
xy: 324, 538
xy: 2, 242
size: 300, 238
orig: 300, 238
offset: 0, 0
index: 0
sword-spin
rotate: false
xy: 626, 538
size: 300, 238
orig: 300, 238
offset: 0, 0
index: 1
sword-spin
rotate: false
xy: 324, 298
size: 300, 238
orig: 300, 238
offset: 0, 0
index: 2
sword-spin
rotate: false
xy: 2, 296
size: 300, 238
orig: 300, 238
offset: 0, 0
index: 3
sword-spin
rotate: false
xy: 626, 298
size: 300, 238
orig: 300, 238
offset: 0, 0
index: 4
sword-spin
rotate: false
xy: 304, 58
size: 300, 238
orig: 300, 238
offset: 0, 0
index: 5
tongue-attack
rotate: false
xy: 880, 151
size: 135, 145
orig: 135, 145
offset: 0, 0
index: 0
tongue-attack
rotate: false
xy: 880, 4
size: 135, 145
orig: 135, 145
offset: 0, 0
index: 1
tongue-attack-hit
rotate: false
xy: 2, 149
size: 135, 145
orig: 135, 145
offset: 0, 0
index: 0
tongue-attack-hit
rotate: false
xy: 2, 2
size: 300, 238
orig: 300, 238
offset: 0, 0
index: 1
sword-spin
rotate: false
xy: 304, 242
size: 300, 238
orig: 300, 238
offset: 0, 0
index: 2
sword-spin
rotate: false
xy: 324, 484
size: 300, 238
orig: 300, 238
offset: 0, 0
index: 3
sword-spin
rotate: false
xy: 304, 2
size: 300, 238
orig: 300, 238
offset: 0, 0
index: 4
sword-spin
rotate: false
xy: 626, 464
size: 300, 238
orig: 300, 238
offset: 0, 0
index: 5
tongue-attack
rotate: false
xy: 880, 23
size: 135, 145
orig: 135, 145
offset: 0, 0
index: 0
tongue-attack-hit
rotate: false
xy: 606, 317
size: 135, 145
orig: 135, 145
offset: 0, 0
index: 0
tongue-attack-hit
rotate: false
xy: 743, 317
size: 135, 145
orig: 135, 145
offset: 0, 0
index: 1
tongue-attack-hit
rotate: false
xy: 139, 149
xy: 880, 317
size: 135, 145
orig: 135, 145
offset: 0, 0
index: 2
tongue-attack-hit
rotate: false
xy: 139, 2
xy: 606, 170
size: 135, 145
orig: 135, 145
offset: 0, 0
index: 3
tongue-attack-hit
rotate: false
xy: 606, 151
xy: 606, 23
size: 135, 145
orig: 135, 145
offset: 0, 0
index: 4
tongue-attack-hit
rotate: false
xy: 606, 4
xy: 743, 170
size: 135, 145
orig: 135, 145
offset: 0, 0
index: 5
tongue-attack-hit
rotate: false
xy: 743, 151
xy: 880, 170
size: 135, 145
orig: 135, 145
offset: 0, 0
index: 6
tongue-attack-hit
rotate: false
xy: 743, 4
xy: 743, 23
size: 135, 145
orig: 135, 145
offset: 0, 0
@@ -402,114 +437,184 @@ size: 1024,512
format: RGBA8888
filter: Nearest,Nearest
repeat: none
bloodclot-swallow
rotate: false
xy: 413, 2
size: 116, 83
orig: 116, 83
offset: 0, 0
index: -1
bloodclot-swallow-bottom
rotate: false
xy: 784, 279
size: 116, 83
orig: 116, 83
offset: 0, 0
index: 0
bloodclot-swallow-bottom
rotate: false
xy: 543, 149
size: 116, 83
orig: 116, 83
offset: 0, 0
index: 1
bloodclot-swallow-bottom
rotate: false
xy: 543, 64
size: 116, 83
orig: 116, 83
offset: 0, 0
index: 2
bloodclot-swallow-bottom
rotate: false
xy: 661, 143
size: 116, 83
orig: 116, 83
offset: 0, 0
index: 3
bloodclot-swallow-top
rotate: false
xy: 661, 58
size: 116, 83
orig: 116, 83
offset: 0, 0
index: 0
bloodclot-swallow-top
rotate: false
xy: 784, 194
size: 116, 83
orig: 116, 83
offset: 0, 0
index: 1
bloodclot-swallow-top
rotate: false
xy: 779, 109
size: 116, 83
orig: 116, 83
offset: 0, 0
index: 2
bloodclot-swallow-top
rotate: false
xy: 779, 24
size: 116, 83
orig: 116, 83
offset: 0, 0
index: 3
falling-bg
rotate: false
xy: 276, 19
xy: 413, 217
size: 128, 128
orig: 128, 128
offset: 0, 0
index: 0
falling-bg
rotate: false
xy: 413, 166
xy: 550, 364
size: 128, 128
orig: 128, 128
offset: 0, 0
index: 1
falling-bg
rotate: false
xy: 550, 313
xy: 413, 87
size: 128, 128
orig: 128, 128
offset: 0, 0
index: 2
falling-bg
rotate: false
xy: 680, 313
xy: 680, 364
size: 128, 128
orig: 128, 128
offset: 0, 0
index: 3
falling-bg
rotate: false
xy: 810, 313
xy: 810, 364
size: 128, 128
orig: 128, 128
offset: 0, 0
index: 4
falling-bg
rotate: false
xy: 413, 36
xy: 550, 234
size: 128, 128
orig: 128, 128
offset: 0, 0
index: 5
tongue-attack
rotate: false
xy: 2, 296
xy: 2, 347
size: 135, 145
orig: 135, 145
offset: 0, 0
index: 1
tongue-attack
rotate: false
xy: 2, 200
size: 135, 145
orig: 135, 145
offset: 0, 0
index: 2
tongue-attack
rotate: false
xy: 2, 149
xy: 139, 347
size: 135, 145
orig: 135, 145
offset: 0, 0
index: 3
tongue-attack
rotate: false
xy: 139, 296
xy: 2, 53
size: 135, 145
orig: 135, 145
offset: 0, 0
index: 4
tongue-attack
rotate: false
xy: 2, 2
xy: 139, 200
size: 135, 145
orig: 135, 145
offset: 0, 0
index: 5
tongue-attack
rotate: false
xy: 139, 149
xy: 276, 347
size: 135, 145
orig: 135, 145
offset: 0, 0
index: 6
tongue-idle
rotate: false
xy: 543, 160
xy: 680, 228
size: 102, 134
orig: 102, 134
offset: 0, 0
index: 0
tongue-windup
rotate: false
xy: 276, 296
xy: 139, 53
size: 135, 145
orig: 135, 145
offset: 0, 0
index: 0
tongue-windup
rotate: false
xy: 139, 2
xy: 276, 200
size: 135, 145
orig: 135, 145
offset: 0, 0
index: 1
tongue-windup
rotate: false
xy: 276, 149
xy: 413, 347
size: 135, 145
orig: 135, 145
offset: 0, 0
index: 2
tongue-windup
rotate: false
xy: 413, 296
xy: 276, 53
size: 135, 145
orig: 135, 145
offset: 0, 0

Binary file not shown.

Before

Width:  |  Height:  |  Size: 58 KiB

After

Width:  |  Height:  |  Size: 68 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 30 KiB

After

Width:  |  Height:  |  Size: 53 KiB

View File

@@ -0,0 +1,146 @@
Untitled
- Delay -
active: false
- Duration -
lowMin: 1000.0
lowMax: 1000.0
- Count -
min: 0
max: 1500
- Emission -
lowMin: 0.0
lowMax: 0.0
highMin: 1500.0
highMax: 1500.0
relative: false
scalingCount: 1
scaling0: 1.0
timelineCount: 1
timeline0: 0.0
- Life -
lowMin: 900.0
lowMax: 900.0
highMin: 1000.0
highMax: 1200.0
relative: false
scalingCount: 2
scaling0: 0.0
scaling1: 1.0
timelineCount: 2
timeline0: 0.0
timeline1: 1.0
- Life Offset -
active: false
- X Offset -
active: false
- Y Offset -
active: false
- Spawn Shape -
shape: point
- Spawn Width -
lowMin: 50.0
lowMax: 50.0
highMin: 200.0
highMax: 200.0
relative: false
scalingCount: 1
scaling0: 1.0
timelineCount: 1
timeline0: 0.0
- Spawn Height -
lowMin: 0.0
lowMax: 0.0
highMin: 200.0
highMax: 200.0
relative: false
scalingCount: 1
scaling0: 1.0
timelineCount: 1
timeline0: 0.0
- Scale -
lowMin: 1.0
lowMax: 1.0
highMin: 5.0
highMax: 3.0
relative: false
scalingCount: 2
scaling0: 1.0
scaling1: 1.0
timelineCount: 2
timeline0: 0.0
timeline1: 1.0
- Velocity -
active: true
lowMin: 50.0
lowMax: 200.0
highMin: 100.0
highMax: 400.0
relative: true
scalingCount: 2
scaling0: 1.0
scaling1: 0.0
timelineCount: 2
timeline0: 0.0
timeline1: 1.0
- Angle -
active: true
lowMin: 0.0
lowMax: 0.0
highMin: -360.0
highMax: 360.0
relative: true
scalingCount: 2
scaling0: 1.0
scaling1: 1.0
timelineCount: 2
timeline0: 0.0
timeline1: 1.0
- Rotation -
active: true
lowMin: 0.0
lowMax: 0.0
highMin: 360.0
highMax: -360.0
relative: false
scalingCount: 2
scaling0: 0.0
scaling1: 1.0
timelineCount: 2
timeline0: 0.0
timeline1: 1.0
- Wind -
active: false
- Gravity -
active: false
- Tint -
colorsCount: 3
colors0: 0.0
colors1: 0.0
colors2: 0.0
timelineCount: 1
timeline0: 0.0
- Transparency -
lowMin: 0.0
lowMax: 0.0
highMin: 1.0
highMax: 1.0
relative: false
scalingCount: 4
scaling0: 1.0
scaling1: 1.0
scaling2: 0.94736844
scaling3: 0.0
timelineCount: 4
timeline0: 0.0
timeline1: 0.7328767
timeline2: 0.96575344
timeline3: 1.0
- Options -
attached: false
continuous: false
aligned: false
additive: false
behind: false
premultipliedAlpha: false
- Image Path -
dot.png

View File

@@ -0,0 +1,218 @@
Untitled
- Delay -
active: false
- Duration -
lowMin: 10000.0
lowMax: 10000.0
- Count -
min: 0
max: 200
- Emission -
lowMin: 2.0
lowMax: 2.0
highMin: 1.0
highMax: 1.0
relative: false
scalingCount: 7
scaling0: 0.97959185
scaling1: 0.42857143
scaling2: 0.97959185
scaling3: 0.30612245
scaling4: 1.0
scaling5: 0.3265306
scaling6: 0.0
timelineCount: 7
timeline0: 0.0
timeline1: 0.14383562
timeline2: 0.32876712
timeline3: 0.46575344
timeline4: 0.63013697
timeline5: 0.75342464
timeline6: 0.93835616
- Life -
lowMin: 0.0
lowMax: 0.0
highMin: 20000.0
highMax: 20000.0
relative: false
scalingCount: 1
scaling0: 1.0
timelineCount: 1
timeline0: 0.0
- Life Offset -
active: true
lowMin: 0.0
lowMax: 0.0
highMin: 0.0
highMax: 0.0
relative: false
scalingCount: 1
scaling0: 1.0
timelineCount: 1
timeline0: 0.0
- X Offset -
active: true
lowMin: -2.0
lowMax: 2.0
highMin: 0.0
highMax: 0.0
relative: false
scalingCount: 1
scaling0: 1.0
timelineCount: 1
timeline0: 0.0
- Y Offset -
active: true
lowMin: -2.0
lowMax: 2.0
highMin: 0.0
highMax: 0.0
relative: false
scalingCount: 1
scaling0: 1.0
timelineCount: 1
timeline0: 0.0
- Spawn Shape -
shape: point
- Spawn Width -
lowMin: 0.0
lowMax: 0.0
highMin: 0.0
highMax: 0.0
relative: false
scalingCount: 1
scaling0: 1.0
timelineCount: 1
timeline0: 0.0
- Spawn Height -
lowMin: 0.0
lowMax: 0.0
highMin: 0.0
highMax: 0.0
relative: false
scalingCount: 1
scaling0: 1.0
timelineCount: 1
timeline0: 0.0
- Scale -
lowMin: 8.0
lowMax: 15.0
highMin: 60.0
highMax: 120.0
relative: true
scalingCount: 2
scaling0: 0.0
scaling1: 1.0
timelineCount: 2
timeline0: 0.0
timeline1: 1.0
- Velocity -
active: true
lowMin: 25.0
lowMax: 25.0
highMin: 8.0
highMax: 8.0
relative: false
scalingCount: 2
scaling0: 0.0
scaling1: 1.0
timelineCount: 2
timeline0: 0.0
timeline1: 1.0
- Angle -
active: true
lowMin: 180.0
lowMax: 170.0
highMin: -120.0
highMax: -100.0
relative: true
scalingCount: 10
scaling0: 0.0
scaling1: 0.0
scaling2: 1.0
scaling3: 0.08163265
scaling4: 0.8979592
scaling5: 0.1632653
scaling6: 0.75510204
scaling7: 0.24489796
scaling8: 0.6938776
scaling9: 0.4489796
timelineCount: 10
timeline0: 0.0
timeline1: 0.001
timeline2: 0.14383562
timeline3: 0.30136988
timeline4: 0.42465752
timeline5: 0.55479455
timeline6: 0.65068495
timeline7: 0.7328767
timeline8: 0.84931505
timeline9: 1.0
- Rotation -
active: true
lowMin: 0.0
lowMax: 0.0
highMin: 180.0
highMax: -180.0
relative: false
scalingCount: 2
scaling0: 0.06122449
scaling1: 1.0
timelineCount: 2
timeline0: 0.0
timeline1: 1.0
- Wind -
active: true
lowMin: 0.0
lowMax: 0.0
highMin: 45.0
highMax: 10.0
relative: false
scalingCount: 6
scaling0: 0.0
scaling1: 0.5510204
scaling2: 0.2244898
scaling3: 0.14285715
scaling4: 0.46938777
scaling5: 1.0
timelineCount: 6
timeline0: 0.0
timeline1: 0.14383562
timeline2: 0.34246576
timeline3: 0.45890412
timeline4: 0.70547944
timeline5: 1.0
- Gravity -
active: false
- Tint -
colorsCount: 3
colors0: 0.80784315
colors1: 0.8666667
colors2: 0.8156863
timelineCount: 1
timeline0: 0.0
- Transparency -
lowMin: 0.0
lowMax: 0.0
highMin: 1.0
highMax: 1.0
relative: false
scalingCount: 4
scaling0: 0.0
scaling1: 0.42105263
scaling2: 0.12280702
scaling3: 0.0
timelineCount: 4
timeline0: 0.0
timeline1: 0.23287672
timeline2: 0.4520548
timeline3: 1.0
- Options -
attached: false
continuous: true
aligned: false
additive: false
behind: false
premultipliedAlpha: false
- Image Path -
cloud3.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

View File

@@ -677,6 +677,40 @@
(skip-type [this screen entities]
:none))))
(defn fade [entities time between]
(run-action entities
(begin [this screen entities]
(-> entities
(assoc-in [:tweens :fade-out] (tween/tween :fade-out screen [:fade :opacity] 0.0 1.0 time))
(assoc-in [:tweens :fade-out-music] (tween/tween :fade-out-music screen [:volume :value] 1.0 0.0 time))))
(continue [this screen entities]
entities)
(done? [this screen entities]
(>= (get-in entities [:fade :opacity]) 1.0))
(terminate [this screen entities]
(between entities))
(skip-type [this screen entities]
:none))
(run-action entities
(begin [this screen entities]
(assoc-in entities [:tweens :fade-out] (tween/tween :fade-out screen [:fade :opacity] 1.0 0.0 time)))
(continue [this screen entities]
entities)
(done? [this screen entities]
(>= (get-in entities [:fade :opacity]) 0.0))
(terminate [this screen entities]
(between entities))
(skip-type [this screen entities]
:none)))
(defn transition-background [entities new-background [x y] & {:keys [transition-music? between time face type]}]
(let [transition-music? (if (nil? transition-music?) true transition-music?)
@@ -789,6 +823,23 @@
(defn respond [entities line & more]
(apply do-dialogue entities :ego line more))
(defn tween [entities id tween-maker]
(run-action entities
(begin [this screen entities]
(assoc-in entities [:tweens id] (tween-maker screen entities)))
(continue [this screen entities]
entities)
(done? [this screen entities]
(nil? (get-in entities [:tweens id])))
(terminate [this screen entities]
entities)
(skip-type [this screen entities]
:none)))
(defn glad [entities]
(actions/run-action entities
(begin [this screen entities]

View File

@@ -9,13 +9,14 @@
(println "loading " *ns*)
(defn make-entity [id {:keys [scripts script only-script] :as entity}]
(merge entity
{:id id
:mouse-in? (fn [entities x y]
(let [e (utils/get-entity entities id)]
(if-let [[bx1 by1 bx2 by2] (:box e)]
(zone/within bx1 by1 bx2 by2 x y)
(let [{^float entity-x :x ^float entity-y :y width :width scale-x :scale-x scale-y :scale-y origin-x :origin-x origin-y :origin-y height :height region :object} (-> entities :room :entities id)
(let [{^float entity-x :x ^float entity-y :y width :width scale-x :scale-x scale-y :scale-y origin-x :origin-x origin-y :origin-y height :height region :object} (-> entities :room :entities (get id))
width (or width (if (instance? TextureRegion region ) (.getRegionWidth ^TextureRegion region) 0))
height (or height (if (instance? TextureRegion region ) (.getRegionHeight ^TextureRegion region) 0))

View File

@@ -389,22 +389,16 @@
(skip-type [this screen entities]
:none)))
(defn do-win [entities]
(Thread/sleep 3000)
(actions/update-entities entities (fn [e]
(-> e
(assoc-in [:room :entities :penultimate :opacity] 1)
(assoc-in [:room :entities :penultimate-wall :opacity] 1)
(assoc-in [:cam :paused?] false)
(update-in [:room :entities :ego ] assoc :x 178 :y 166 :baseline 4)
(update-in [:room :entities] dissoc :tongue)
(update-in [:room :entities :ego] actions/start-animation :fall-small))))
(defn jump-away [entities]
(Thread/sleep 500)
(actions/run-action entities
(begin [this screen entities]
(-> entities
(assoc-in [:tweens :ego-x] (tween/tween :ego-x screen [:room :entities :ego :x] 178 153 0.5 :ease tween/ease-linear))
(assoc-in [:tweens :ego-y] (tween/tween :ego-y screen [:room :entities :ego :y] 166 186 0.5 :ease tween/ease-out-cubic))))
(assoc-in [:tweens :ego-x] (tween/tween :ego-x screen [:room :entities :ego :x] 200 163 0.5 :ease tween/ease-linear))
(assoc-in [:tweens :ego-y] (tween/tween :ego-y screen [:room :entities :ego :y] 166 186 0.5 :ease tween/ease-out-cubic))
(update-in [:room :entities :bloodclot-swallow-top] #(actions/start-animation screen % :swallow))
(update-in [:room :entities :bloodclot-swallow-bottom] #(actions/start-animation screen % :swallow))))
(continue [this screen entities]
entities)
(done? [this screen entities]
@@ -419,7 +413,7 @@
(begin [this screen entities]
(-> entities
(assoc-in [:tweens :ego-x] (tween/tween :ego-x screen [:room :entities :ego :x] 153 53 2 :ease tween/ease-linear))
(assoc-in [:tweens :ego-x] (tween/tween :ego-x screen [:room :entities :ego :x] 163 63 2 :ease tween/ease-linear))
(assoc-in [:tweens :ego-y] (tween/tween :ego-y screen [:room :entities :ego :y] 186 0 2 :ease tween/ease-in-cubic))))
(continue [this screen entities]
entities)
@@ -436,37 +430,126 @@
(-> e
(assoc-in [:room :entities :falling-bg :opacity] 1)
(assoc-in [:room :entities :sword-spin :opacity] 1))))
(Thread/sleep 2000))
(defn show-big-bloodclot [entities time]
(actions/update-entities entities (fn [e]
(-> e
(assoc-in [:room :entities :bloodclot-swallow-top :opacity] 1)
(assoc-in [:room :entities :bloodclot-swallow-bottom :opacity] 1)
(assoc-in [:room :entities :falling-ego :opacity] 0)
(assoc-in [:room :entities :sword-spin :opacity] 0)
(assoc-in [:room :entities :falling-bg :opacity] 0))))
(Thread/sleep time))
(defn fall-in [entities]
(Thread/sleep 500)
(actions/run-action entities
(begin [this screen entities]
(-> entities
(assoc-in [:tweens :ego-y] (tween/tween :ego-y screen [:room :entities :ego :y] 166 117 3.0 :ease tween/ease-out-cubic))
(update-in [:room :entities :bloodclot-swallow-top] #(actions/start-animation screen % :swallow))
(update-in [:room :entities :bloodclot-swallow-bottom] #(actions/start-animation screen % :swallow))))
(continue [this screen entities]
entities)
(done? [this screen entities]
(= 117 (get-in entities [:room :entities :ego :y])))
(terminate [this screen entities]
entities)
(skip-type [this screen entities]
:none))
(Thread/sleep 1500)
(actions/update-entities entities (fn [e]
(-> e
(assoc-in [:room :entities :falling-bg :opacity] 1)
(assoc-in [:room :entities :falling-ego :opacity] 1))))
(Thread/sleep 4000)
(show-big-bloodclot entities 1000)
(actions/update-entities entities (fn [e]
(-> e
(assoc-in [:room :entities :falling-bg :opacity] 0)
(assoc-in [:room :entities :sword-spin :opacity] 0))))
(assoc-in [:room :entities :falling-bg :opacity] 1)
(assoc-in [:room :entities :falling-ego :opacity] 0)
(assoc-in [:room :entities :sword-spin :opacity] 1))))
(Thread/sleep 2000))
(defn do-win [entities won?]
(actions/fade entities 1.0 (fn [e]
(-> e
(assoc-in [:room :entities :penultimate :opacity] 1)
(assoc-in [:room :entities :penultimate-wall :opacity] 1)
(assoc-in [:room :entities :bloodclot-swallow-top :opacity] 1)
(assoc-in [:room :entities :bloodclot-swallow-bottom :opacity] 1)
(assoc-in [:cam :paused?] true)
(update-in [:room :entities :ego ] assoc :x 200 :y 166 :baseline 4)
(update-in [:room :entities] dissoc :tongue)
(update-in [:room :entities :ego] actions/start-animation :fall-small))))
(if won?
(jump-away entities)
(fall-in entities))
(show-big-bloodclot entities 1000)
(Thread/sleep 1000)
(actions/update-entities entities (fn [e]
(-> e
(assoc-in [:room :entities :penultimate-black :opacity] 1))))
(update-in [:room :entities :sword-spin] assoc :opacity 1 :scale-x 0.5 :scale-y 0.5)
(assoc-in [:room :entities :falling-bg :opacity] 1)
(assoc-in [:room :entities :belly-bottom :opacity] 1)
(update-in [:room :entities :falling-bg ] dissoc :anim)
)))
(actions/tween entities :sword-fall (fn [screen entities]
(tween/tween :sword-fall screen [:room :entities :sword-spin :y] 240 120 1.5 :ease tween/ease-linear)))
(actions/update-entities entities (fn [e]
(-> e
(assoc-in [:room :entities :belly-bottom :opacity] 0))))
(show-big-bloodclot entities 0)
(actions/update-entities entities (fn [e]
(-> e
(update-in [:room :entities :bloodclot-swallow-top] #(actions/start-animation % :uhoh))
(update-in [:room :entities :bloodclot-swallow-bottom] #(actions/start-animation % :uhoh)))))
(Thread/sleep 2000)
(actions/update-entities entities (fn [e]
(-> e
(assoc-in [:room :entities :penultimate-black :opacity] 1)
(assoc-in [:cam :paused?] false)
(update-in [:room :entities :black-blowup] (fn [b]
(particle-effect! b :reset)
(particle-effect! b :start)
b)))))
(println "doing screen shake?")
(actions/camera-shake entities 15.0)
(actions/camera-shake entities 8.0)
(println "doing screen shake?")
(actions/transition-background entities :space [55 90] :time 6.0 :type :white-fade :between (fn [s e]
(-> e
(actions/transition-background entities :space [55 90]
:time 4.0
:transition-music? false
:type :white-fade
:between (fn [s e]
(-> e
(assoc-in [:room :entities :ego :stand-override] :crawl-stand)
(assoc-in [:room :entities :ego :previous-frame-index] -1)
(update-in [:room :entities :ego] #(actions/start-animation s % :crawl-stand))
(update-in [:room :entities :ego] #(actions/start-animation s % :crawl-stand))
(update-in [:room :entities] dissoc :bloodclot-head)
(assoc-in [:room :entities :bloodclot-smoke] (get-in e [:room :bloodclot-smoke]))
(update-in [:room ] dissoc :broken-jewel)
(update-in [:room :entities :bloodclot] #(actions/start-animation s % :steam))
(update-in [:room :entities :ego] dissoc :stand-override :talk-override )
(update-in [:room :entities :grow-explode] (fn [g]
(particle-effect! g :reset)
(particle-effect! g :start)
g)))))
(assoc-in [:room :entities :ego :stand-override] :crawl-stand)
(assoc-in [:room :entities :ego :previous-frame-index] -1)
(update-in [:room :entities :ego] #(actions/start-animation s % :crawl-stand))
(update-in [:room :entities :ego] #(actions/start-animation s % :crawl-stand))
(update-in [:room :entities] dissoc :bloodclot-head)
(assoc-in [:room :entities :bloodclot-smoke] (get-in e [:room :bloodclot-smoke]))
(update-in [:room ] dissoc :broken-jewel)
(update-in [:room :entities :bloodclot] #(actions/start-animation s % :steam))
(update-in [:room :entities :ego] dissoc :stand-override :talk-override )
(update-in [:room :entities :grow-explode] (fn [g]
(particle-effect! g :reset)
(particle-effect! g :start)
g)))))
(Thread/sleep 2000)

View File

@@ -82,7 +82,7 @@
entities))
(done? [this screen entities]
(> (- (:total-time screen) @start-time) 8.7))
(> (- (:total-time screen) @start-time) 8.0))
(terminate [this screen entities]
entities
@@ -101,8 +101,7 @@
(assoc-in [:room :entities :ego :stand-override] :crawl-stand)
(assoc-in [:room :entities :ego :previous-frame-index] -1)
(update-in [:room :entities :ego] #(actions/start-animation s % :crawl-stand)))
))
(update-in [:room :entities :ego] #(actions/start-animation s % :crawl-stand)))))
(actions/do-dialogue entities
:bloodclot-head "Yes!"
:bloodclot-head "Ultimate power is mine!"
@@ -112,12 +111,19 @@
(explode entities)
(Thread/sleep 2000)
(actions/talk entities :bloodclot "Now..."
:stop? false
:anim :big)
(actions/talk entities :bloodclot "Where were we?"
:stop? false
:anim :big)
(actions/tween entities
:arm-y
(fn [screen entities]
(tween/tween :arm-y screen [:room :entities :arm :y] 240 90 4.0 :ease tween/ease-linear)))
(actions/transition-background entities :tongue-fight [141 110]))

View File

@@ -189,14 +189,15 @@
bloodclot-head-shoot-anim (utils/make-anim-seq atlas "bloodclot-head-talk" [82 75] 0.05 [8 9 8 9 8 9 8 9 8 9 8 9 8 9 8 9 8 9 8 9 10 11 10 11 10 11 10 11 10 11 10 11])
bloodclot-head-keep-shoot-anim (utils/make-anim-seq atlas "bloodclot-head-talk" [82 75] 0.05 [12 13])
blergh-stand-anim (utils/make-anim atlas "bloodclot-stand" [106 165] 0.9 [0 1])
bloodclot-grow (utils/make-anim-seq atlas "bloodclot-grow" [180 200] 0.075 [0 0 0 0 0 0 0 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 3 3 4 4 4 5 5 5 5 5 5 5 5 5 6 6 6 6 7 7 7 7 7 7 7 7 7 7 7 8 8 8 7 7 7 7 8 8 8 8 8 7 7 7 7 8 8 8 8 7 8 9 9 9 9 8 9 10 10 10 10 9 10 11 11 11 11 10 10 10 11 12 12 12 12 12 12 12 13 13 13 13 13 13 13 14 14 14 14 14 14 14 14 14 14 14 14])
bloodclot-grow (utils/make-anim-seq atlas "bloodclot-grow" [180 200] 0.075 [0 0 0 0 0 0 0 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 3 3 4 4 4 5 5 5 5 5 5 5 5 5 6 6 6 6 7 7 7 7 7 7 7 7 7 7 7 8 8 8 7 7 7 7 8 8 8 8 8 7 7 7 7 8 8 8 8 7 8 9 9 9 9 8 9 10 10 10 10 9 10 11 11 11 11 10 10 10 11 12 12 12 12 12 12 12 13 13 13 13 13 13 13 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14])
bloodclot-big (utils/make-anim-seq atlas "bloodclot-grow" [180 200] 0.075 [14])
bloodclot-steam (utils/make-anim-seq atlas "bloodclot-steam" [134 77] 0.075 [0])
bullet (utils/make-anim atlas "bullet" [24 24] 0.0075 [0 1 2 0 1 2 0 1 2 0 1 2 0 1 2 3 3 3 4 4 5 5 6 5 4 7])
effect (particle-effect "particles/appear")
blowup-effect (particle-effect "particles/blowup")
lightning-effect (particle-effect "particles/lightning")
grow-explode (particle-effect "particles/grow-explode")]
grow-explode (particle-effect "particles/grow-explode")
]
(rooms/make :name "Duel"
:sounds {:shock (utils/load-sound "space/shock.ogg")
:shock-short (utils/load-sound "space/shock-short.ogg")
@@ -218,12 +219,13 @@
:x 240 :y 240
:baseline 200)
:blowup (assoc blowup-effect
:x 225 :y 175
:x 300 :y 240
:baseline 241)
:lightning (assoc lightning-effect
:x 225 :y 160
:baseline 240
:opacity 0.0)
:arm (assoc (utils/atlas->texture atlas "arm") :x 80 :y 240 :origin-x 68 :origin-y 0 :baseline 241 :opacity 1)
:bloodclot-head (assoc (animation->texture screen bloodclot-head-stand-anim)
:x 195 :y 138 :baseline 195
:opacity 0.0
@@ -236,6 +238,7 @@
:talk-color (color 0.95 0.4 0.2 1.0))
:bloodclot (assoc (animation->texture screen blergh-stand-anim)
:x 180 :y 50 :baseline 190
:talk-color (color 0.95 0.4 0.2 1.0)
:stand blergh-stand-anim
:inhale-sound (utils/load-sound "space/bloodclot-inhale.ogg")
:exhale-sound (utils/load-sound "space/bloodclot-exhale.ogg")
@@ -347,7 +350,7 @@
:broken-jewel (assoc (utils/atlas->texture atlas "broken-jewel")
:x 225 :y 170 :baseline 240)
:bloodclot-smoke (doto (assoc (particle-effect "particles/candle") :x 280 :y 90
:bloodclot-smoke (doto (assoc (particle-effect "particles/bloodclot-steam") :x 280 :y 90
:baseline 200)
(particle-effect! :set-position 280 90))
:collision "space/collision.png"

View File

@@ -18,10 +18,15 @@
(println "loading " *ns*)
(defn cause-damage [entities is-player-wound?]
(defn cause-damage [entities screen is-player-wound?]
(println "test" is-player-wound?)
(if is-player-wound?
(update-in entities [:room :ego-hearts] dec)
(update-in entities [:room :tongue-hearts] dec)))
(update-in entities [:room :tongue-hearts] dec)
(let [remaining-hearts (dec (get-in entities [:room :ego-hearts]))]
(-> entities
(assoc-in [:tweens :ego-heart-scale-x] (tween/tween :ego-heart-scale-x screen [:room :entities [:ego-heart remaining-hearts] :scale-x] 1 0.0 0.2 :ease tween/ease-in-cubic))
(assoc-in [:tweens :ego-heart-scale-y] (tween/tween :ego-heart-scale-y screen [:room :entities [:ego-heart remaining-hearts] :scale-y] 1 0.0 0.2 :ease tween/ease-in-cubic))
(assoc-in [:room :ego-hearts] remaining-hearts)))))
(defn show-heart [entities screen is-player-wound?]
@@ -32,8 +37,8 @@
(update-in [:room :entities :heart] #(assoc % :opacity 1 :x x :y y))
(update-in [:room :entities :heart] #(actions/start-animation screen % :beat))
(assoc-in [:tweens :heart-y] (tween/tween :heart-y screen [:room :entities :heart :y] y (+ y 10) 1.0 :ease tween/ease-out-cubic))
(assoc-in [:tweens :heart-opacity] (tween/tween :heart-opacity screen [:room :entities :heart :opacity] 1.0 0.0 3.0 :ease tween/ease-in-out-quadratic))
(cause-damage is-player-wound?))))
(assoc-in [:tweens :heart-opacity] (tween/tween :heart-opacity screen [:room :entities :heart :opacity] 1.0 0.0 1.2 :ease tween/ease-linear))
(cause-damage screen is-player-wound?))))
(defn stop-swing-if-necessary [screen {{{{:keys [anim anim-start] {:keys [tongue-swing]} :left } :ego} :entities} :room :as entities}]
(if (and (= tongue-swing anim)
@@ -65,15 +70,14 @@
(get-in entities [:state :active?])
(= 0 ego-hearts))
(do
((actions/get-script entities (common/do-win entities)) entities)
((actions/get-script entities (common/do-win entities false)) entities)
entities)
(and (not (get-in entities [:fg-actions :script-running?]))
(get-in entities [:state :active?])
(= 0 tongue-hearts))
(do
((common/win)
entities)
((actions/get-script entities (common/do-win entities true)) entities)
entities)
(and
@@ -140,13 +144,32 @@
hair-9 (utils/make-anim-seq atlas "hair-9" [12 18] 0.16 [0 1 2 1])
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])
black-blowup (particle-effect "particles/black-blowup")
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 2 3 2 1 2 3 2 1 0 ])
tongue-attack (utils/make-anim-seq atlas "tongue-attack" [135 145] 0.12 [ 3 4 5 6])
tongue-attack (utils/make-anim-seq atlas "tongue-attack" [135 145] 0.14 [ 2 3 4 5 6 0])
tongue-attack-hit (utils/make-anim-seq atlas "tongue-attack-hit" [135 145] 0.1 (range 7))
falling-bg (utils/make-anim-seq atlas "falling-bg" [128 128] 0.1 (range 6))
sword-spin (utils/make-anim-seq atlas "sword-spin" [300 238] 0.1 (range 6))]
sword-spin (utils/make-anim-seq atlas "sword-spin" [300 238] 0.1 (range 6))
bloodclot-swallow-bottom (utils/make-anim-seq atlas "bloodclot-swallow-bottom" [116 83] 0.2 (concat [0 0 0 0 0 0] (range 3) (repeat 100 2)))
bloodclot-swallow-top (utils/make-anim-seq atlas "bloodclot-swallow-top" [116 83] 0.2 (concat [0 0 0 0 0 0] (range 3) (repeat 100 2)))
bloodclot-swallow-bottom-uhoh (utils/make-anim-seq atlas "bloodclot-swallow-bottom" [116 83] 0.4 [0 0 0 0 0 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 ])
bloodclot-swallow-top-uhoh (utils/make-anim-seq atlas "bloodclot-swallow-top" [116 83] 0.4 [0 0 0 0 0 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3])
falling-ego (utils/make-anim-seq atlas "falling-ego" [40 72] 0.2 (range 4))
hearts (into {}
(for [x (range 5)]
[[:ego-heart x] (assoc (utils/atlas->texture atlas "heart" 0)
:origin-y 12
:origin-x 12
:x (+ 22 (* 16 x))
:y 221
:baseline 321
:opacity 1)]))]
@@ -156,134 +179,155 @@
:layers [(assoc (utils/atlas->texture atlas "background") :x 0 :y 0 :baseline 0 :scale-x 1 :scale-y 1)]
:update-fn trigger-tongue
:ego-hearts 1
:tongue-hearts 1
:tongue-hearts 5
:entities {:penultimate (assoc (utils/atlas->texture atlas "penultimate") :x 0 :y 0 :baseline 2 :scale-x 1 :scale-y 1 :opacity 0)
:penultimate-wall (assoc (utils/atlas->texture atlas "penultimate-wall") :x 0 :y 0 :baseline 5 :scale-x 1 :scale-y 1 :opacity 0)
:penultimate-black (assoc (utils/atlas->texture atlas "penultimate-black") :x 0 :y 0 :baseline 6 :scale-x 1 :scale-y 1 :opacity 0)
:hair-0 (assoc (animation->texture screen hair-0)
:x 35
:y 46
:width 6
:height 7
:baseline 1
:anim hair-0
:anim-start 0)
:hair-1 (assoc (animation->texture screen hair-1)
:x 113
:y 176
:width 23
:height 16
:baseline 1
:anim hair-1
:anim-start 0)
:hair-2 (assoc (animation->texture screen hair-2)
:x 243
:y 104
:width 47
:height 66
:baseline 1
:anim hair-2
:anim-start 0)
:hair-3 (assoc (animation->texture screen hair-3)
:x 121
:y 222
:width 7
:height 8
:baseline 1
:anim hair-3
:anim-start 0)
:hair-4 (assoc (animation->texture screen hair-4)
:x 71
:y 6
:width 12
:height 28
:baseline 1
:anim hair-4
:anim-start 0)
:hair-5 (assoc (animation->texture screen hair-5)
:x 100
:y 12
:width 8
:height 10
:baseline 1
:anim hair-5
:anim-start 0)
:hair-6 (assoc (animation->texture screen hair-6)
:x 113
:y 38
:width 4
:height 6
:baseline 1
:anim hair-6
:anim-start 0)
:hair-7 (assoc (animation->texture screen hair-7)
:x 125
:y 21
:width 5
:height 7
:baseline 1
:anim hair-7
:anim-start 0)
:hair-8 (assoc (animation->texture screen hair-8)
:x 145
:y 6
:width 6
:height 6
:baseline 1
:anim hair-8
:anim-start 0)
:hair-9 (assoc (animation->texture screen hair-9)
:x 23
:y 29
:width 12
:height 18
:baseline 1
:anim hair-9
:anim-start 0)
:heart (assoc (animation->texture screen heart)
:x 23
:y 29
:width 32
:height 32
:baseline 321
:opacity 0
:anim heart
:idle heart
:beat beat
:anim-start 0)
:falling-bg (assoc (animation->texture screen falling-bg)
:x 0
:y 0
:width 320
:height 240
:baseline 320
:anim falling-bg
:opacity 0
:entities (into {:penultimate (assoc (utils/atlas->texture atlas "penultimate") :x 0 :y 0 :baseline 2 :scale-x 1 :scale-y 1 :opacity 0)
:penultimate-wall (assoc (utils/atlas->texture atlas "penultimate-wall") :x 0 :y 0 :baseline 5 :scale-x 1 :scale-y 1 :opacity 0)
:penultimate-black (assoc (utils/atlas->texture atlas "penultimate-black") :x 0 :y 0 :baseline 6 :scale-x 1 :scale-y 1 :opacity 0)
:bloodclot-swallow-top (assoc (animation->texture screen bloodclot-swallow-top) :x 167 :y 118 :baseline 3 :scale-x 1 :scale-y 1 :opacity 0 :swallow bloodclot-swallow-top :uhoh bloodclot-swallow-top-uhoh)
:bloodclot-swallow-bottom (assoc (animation->texture screen bloodclot-swallow-bottom) :x 167 :y 118 :baseline 5 :scale-x 1 :scale-y 1 :opacity 0 :swallow bloodclot-swallow-bottom :uhoh bloodclot-swallow-bottom-uhoh)
:black-blowup (assoc black-blowup
:x 222 :y 85
:baseline 241)
:hair-0 (assoc (animation->texture screen hair-0)
:x 35
:y 46
:width 6
:height 7
:baseline 1
:anim hair-0
:anim-start 0)
:hair-1 (assoc (animation->texture screen hair-1)
:x 113
:y 176
:width 23
:height 16
:baseline 1
:anim hair-1
:anim-start 0)
:hair-2 (assoc (animation->texture screen hair-2)
:x 243
:y 104
:width 47
:height 66
:baseline 1
:anim hair-2
:anim-start 0)
:hair-3 (assoc (animation->texture screen hair-3)
:x 121
:y 222
:width 7
:height 8
:baseline 1
:anim hair-3
:anim-start 0)
:hair-4 (assoc (animation->texture screen hair-4)
:x 71
:y 6
:width 12
:height 28
:baseline 1
:anim hair-4
:anim-start 0)
:hair-5 (assoc (animation->texture screen hair-5)
:x 100
:y 12
:width 8
:height 10
:baseline 1
:anim hair-5
:anim-start 0)
:hair-6 (assoc (animation->texture screen hair-6)
:x 113
:y 38
:width 4
:height 6
:baseline 1
:anim hair-6
:anim-start 0)
:hair-7 (assoc (animation->texture screen hair-7)
:x 125
:y 21
:width 5
:height 7
:baseline 1
:anim hair-7
:anim-start 0)
:hair-8 (assoc (animation->texture screen hair-8)
:x 145
:y 6
:width 6
:height 6
:baseline 1
:anim hair-8
:anim-start 0)
:hair-9 (assoc (animation->texture screen hair-9)
:x 23
:y 29
:width 12
:height 18
:baseline 1
:anim hair-9
:anim-start 0)
:heart (assoc (animation->texture screen heart)
:x 23
:y 29
:width 32
:height 32
:baseline 321
:opacity 0
:anim heart
:idle heart
:beat beat
:anim-start 0)
:anim-start 0)
:sword-spin (assoc (animation->texture screen sword-spin)
:x 160
:y 120
:origin-x 150
:origin-y 120
:width 300
:height 238
:baseline 321
:opacity 0
:anim sword-spin
:falling-bg (assoc (animation->texture screen falling-bg)
:x 0
:y 0
:width 320
:height 240
:baseline 320
:anim falling-bg
:opacity 0
:anim-start 0)
:belly-bottom (assoc (utils/atlas->texture atlas "belly-bottom") :x 0 :y 0 :baseline 321 :scale-x 1 :scale-y 1 :opacity 0)
:falling-ego (assoc (animation->texture screen falling-ego)
:x 160
:y 120
:scale-x 2
:scale-y 2
:origin-x 20
:origin-y 35
:baseline 321
:opacity 0
:anim falling-ego
:anim-start 0)
:tongue (assoc (animation->texture screen tongue-idle)
:anim-start 0)
:sword-spin (assoc (animation->texture screen sword-spin)
:x 160
:y 120
:origin-x 150
:origin-y 120
:width 300
:height 238
:baseline 321
:opacity 0
:anim sword-spin
:anim-start 0)
:tongue (assoc (animation->texture screen tongue-idle)
:x 211
:y 40
:origin-x 23
:origin-y 10
:width 135
:height 145
:baseline 4
:baseline 4
:anim tongue-idle
:windup tongue-windup
:idle tongue-idle
@@ -297,8 +341,10 @@
:state :idle
:script (actions/get-script
entities
(actions/begin-animation entities :ego :tongue-windup)))}
(actions/begin-animation entities :ego :tongue-windup)))
}
hearts)
:collision "space/collision.png"
:scale-fn (constantly 1.0)
:start-pos [141 110]