[android] Port to 4.3

This commit is contained in:
Mario Zechner 2025-05-28 21:19:00 +02:00
parent dfaf11d503
commit 5a71276829
24 changed files with 581 additions and 526 deletions

View File

@ -3,171 +3,155 @@ celestial-circus.png
filter: Linear, Linear filter: Linear, Linear
scale: 0.4 scale: 0.4
arm-back-down arm-back-down
bounds: 324, 401, 38, 82 bounds: 971, 683, 38, 82
rotate: 90
arm-back-up arm-back-up
bounds: 290, 44, 83, 116 bounds: 939, 44, 83, 116
rotate: 90
arm-front-down arm-front-down
bounds: 706, 2, 36, 78 bounds: 971, 603, 36, 78
rotate: 90
arm-front-up arm-front-up
bounds: 860, 138, 77, 116 bounds: 289, 22, 77, 116
bench
bounds: 725, 256, 189, 48
body-bottom
bounds: 879, 868, 154, 124
rotate: 90 rotate: 90
bench
bounds: 586, 47, 189, 48
body-bottom
bounds: 868, 270, 154, 124
body-top body-top
bounds: 725, 128, 126, 133 bounds: 2, 156, 126, 132
offsets: 0, 0, 126, 133
rotate: 90 rotate: 90
chest chest
bounds: 408, 26, 104, 93 bounds: 490, 267, 104, 93
rotate: 180
cloud-back cloud-back
bounds: 752, 378, 202, 165 bounds: 804, 563, 202, 165
rotate: 90
cloud-front cloud-front
bounds: 2, 2, 325, 196 bounds: 606, 440, 325, 196
rotate: 90 rotate: 270
collar collar
bounds: 786, 13, 47, 26 bounds: 373, 739, 47, 26
ear ear
bounds: 1002, 643, 20, 28 bounds: 106, 737, 20, 28
eye-back-shadow eye-back-shadow
bounds: 428, 395, 14, 10 bounds: 233, 755, 14, 10
eye-front-shadow eye-front-shadow
bounds: 704, 529, 24, 14 bounds: 128, 751, 24, 14
eye-reflex-back eye-reflex-back
bounds: 860, 128, 8, 7 bounds: 787, 758, 8, 7
rotate: 90
eye-reflex-front eye-reflex-front
bounds: 726, 386, 10, 7 bounds: 154, 758, 10, 7
eye-white-back eye-white-back
bounds: 835, 23, 13, 16 bounds: 616, 749, 13, 16
eye-white-front eye-white-front
bounds: 1005, 1000, 22, 17 bounds: 477, 748, 22, 17
rotate: 90
eyelashes-down-back eyelashes-down-back
bounds: 232, 329, 11, 6 bounds: 655, 759, 11, 6
rotate: 90
eyelashes-down-front eyelashes-down-front
bounds: 913, 851, 15, 6 bounds: 549, 759, 15, 6
rotate: 90
eyelashes-top-back eyelashes-top-back
bounds: 408, 395, 18, 10 bounds: 353, 755, 18, 10
eyelashes-top-front eyelashes-top-front
bounds: 702, 179, 30, 16 bounds: 749, 749, 30, 16
rotate: 90
face face
bounds: 514, 26, 93, 102 bounds: 775, 277, 91, 102
rotate: 90 offsets: 2, 0, 93, 102
feathers-back feathers-back
bounds: 954, 625, 46, 46 bounds: 192, 611, 46, 46
feathers-front feathers-front
bounds: 706, 40, 72, 86 bounds: 415, 679, 72, 86
fringe-middle-back fringe-middle-back
bounds: 200, 6, 33, 52 bounds: 794, 509, 33, 52
rotate: 90
fringe-middle-front fringe-middle-front
bounds: 878, 76, 60, 50 bounds: 679, 202, 60, 50
rotate: 90
fringe-side-back fringe-side-back
bounds: 780, 41, 27, 94 bounds: 407, 5, 27, 94
rotate: 90
fringe-side-front fringe-side-front
bounds: 939, 161, 26, 93 bounds: 14, 331, 26, 93
glove-bottom-back glove-bottom-back
bounds: 954, 572, 51, 41 bounds: 14, 681, 51, 41
rotate: 90
glove-bottom-front glove-bottom-front
bounds: 916, 256, 47, 48 bounds: 313, 288, 47, 48
hair-back-1 hair-back-1
bounds: 444, 395, 132, 306 bounds: 716, 91, 132, 306
rotate: 90 rotate: 270
hair-back-2 hair-back-2
bounds: 438, 211, 80, 285 bounds: 124, 100, 80, 285
rotate: 90 rotate: 90
hair-back-3 hair-back-3
bounds: 719, 306, 70, 268 bounds: 410, 78, 70, 268
rotate: 90 rotate: 270
hair-back-4 hair-back-4
bounds: 438, 121, 88, 262 bounds: 42, 250, 88, 262
rotate: 90 rotate: 90
hair-back-5 hair-back-5
bounds: 438, 293, 88, 279 bounds: 320, 141, 88, 279
rotate: 90 rotate: 90
hair-back-6 hair-back-6
bounds: 200, 41, 88, 286 bounds: 2, 36, 88, 286
rotate: 90
hair-hat-shadow hair-hat-shadow
bounds: 232, 398, 90, 41 bounds: 14, 724, 90, 41
hand-back hand-back
bounds: 954, 673, 60, 47 bounds: 2, 42, 60, 47
rotate: 90
hand-front hand-front
bounds: 967, 172, 53, 60 bounds: 909, 208, 53, 60
hat-back hat-back
bounds: 954, 802, 64, 45 bounds: 741, 189, 64, 45
rotate: 90
hat-front hat-front
bounds: 780, 70, 96, 56 bounds: 926, 396, 96, 56
head-back head-back
bounds: 618, 17, 102, 86 bounds: 777, 2, 102, 86
rotate: 90
jabot jabot
bounds: 967, 234, 70, 55 bounds: 692, 384, 70, 55
rotate: 90
leg-back leg-back
bounds: 232, 441, 210, 333 bounds: 362, 164, 210, 333
rotate: 90
leg-front leg-front
bounds: 444, 529, 258, 320 bounds: 590, 181, 258, 320
rotate: 90
logo-brooch logo-brooch
bounds: 954, 545, 16, 25 bounds: 584, 740, 16, 25
mouth mouth
bounds: 408, 121, 22, 6 bounds: 631, 759, 22, 6
neck neck
bounds: 232, 342, 39, 56 bounds: 597, 441, 39, 56
rotate: 90
nose nose
bounds: 742, 529, 6, 7 bounds: 556, 750, 6, 7
rotate: 90
nose-highlight nose-highlight
bounds: 719, 300, 4, 4 bounds: 166, 761, 4, 4
nose-shadow nose-shadow
bounds: 869, 128, 7, 8 bounds: 778, 757, 7, 8
pupil-back pupil-back
bounds: 730, 529, 10, 14 bounds: 442, 751, 10, 14
pupil-front pupil-front
bounds: 254, 21, 12, 18 bounds: 602, 747, 12, 18
rope-back rope-back
bounds: 232, 383, 10, 492 bounds: 2, 273, 10, 492
rotate: 90
rope-front rope-front
bounds: 232, 383, 10, 492 bounds: 2, 273, 10, 492
rotate: 90
rope-front-bottom rope-front-bottom
bounds: 954, 735, 42, 65 bounds: 895, 69, 42, 65
skirt skirt
bounds: 2, 776, 440, 246 bounds: 14, 325, 440, 246
rotate: 90
sock-bow sock-bow
bounds: 408, 407, 33, 32 bounds: 253, 733, 33, 32
spine-logo-body spine-logo-body
bounds: 879, 853, 13, 32 bounds: 569, 733, 13, 32
rotate: 90
star-big star-big
bounds: 939, 141, 18, 24 bounds: 422, 741, 18, 24
rotate: 90
star-medium star-medium
bounds: 742, 537, 6, 8 bounds: 1011, 757, 6, 8
rotate: 90
star-small star-small
bounds: 719, 378, 3, 4 bounds: 218, 761, 3, 4
rotate: 90
underskirt underskirt
bounds: 2, 329, 445, 228 bounds: 212, 320, 445, 228
rotate: 90 rotate: 270
underskirt-back underskirt-back
bounds: 444, 851, 433, 171 bounds: 434, 332, 433, 171
rotate: 270
wing-back wing-back
bounds: 290, 129, 146, 252 bounds: 137, 137, 146, 252
rotate: 270
wing-front wing-front
bounds: 704, 545, 304, 248 bounds: 718, 314, 304, 248
rotate: 90

Binary file not shown.

Before

Width:  |  Height:  |  Size: 790 KiB

After

Width:  |  Height:  |  Size: 784 KiB

View File

@ -2,111 +2,108 @@ dragon.png
size: 1024, 1024 size: 1024, 1024
filter: Linear, Linear filter: Linear, Linear
front-toe-a front-toe-a
bounds: 797, 381, 29, 50 bounds: 300, 929, 29, 50
front-toe-b front-toe-b
bounds: 942, 118, 56, 57 bounds: 258, 660, 56, 57
head head
bounds: 647, 81, 296, 260 bounds: 2, 719, 296, 260
rotate: 90
left-front-leg left-front-leg
bounds: 942, 250, 84, 57 bounds: 99, 660, 84, 57
left-wing09
bounds: 2, 15, 264, 589
rotate: 90 rotate: 90
left-front-thigh right-wing07
bounds: 852, 7, 84, 72 bounds: 647, 2, 365, 643
left-wing01 right-wing08
bounds: 736, 433, 264, 589 bounds: 2, 281, 365, 643
right-rear-toe
bounds: 647, 2, 109, 77
right-wing01
bounds: 2, 379, 365, 643
right-wing02
bounds: 369, 379, 365, 643
right-wing03
bounds: 2, 12, 365, 643
rotate: 90 rotate: 90
tail03 right-wing09
bounds: 758, 6, 73, 92 bounds: 354, 647, 365, 643
rotate: 90 rotate: 90
tail04 tail04
bounds: 942, 177, 56, 71 bounds: 185, 661, 56, 71
tail05
bounds: 736, 379, 52, 59
rotate: 90 rotate: 90
tail06 tail06
bounds: 942, 336, 95, 68 bounds: 2, 649, 95, 68
rotate: 90
thiagobrayner thiagobrayner
bounds: 909, 81, 350, 31 bounds: 2, 981, 350, 31
rotate: 90
dragon_2.png dragon_2.png
size: 1024, 1024 size: 1024, 1024
filter: Linear, Linear filter: Linear, Linear
back back
bounds: 795, 32, 190, 185 bounds: 647, 57, 190, 185
chin chin
bounds: 647, 157, 214, 146 bounds: 839, 28, 214, 146
rotate: 90 rotate: 90
left-rear-leg left-rear-leg
bounds: 795, 219, 206, 177 bounds: 736, 244, 206, 177
left-wing08
bounds: 736, 423, 264, 589
right-rear-toe
bounds: 944, 312, 109, 77
rotate: 90 rotate: 90
left-wing02
bounds: 736, 427, 264, 589
right-wing04 right-wing04
bounds: 2, 373, 365, 643 bounds: 2, 2, 365, 643
right-wing05
bounds: 369, 373, 365, 643
right-wing06
bounds: 2, 6, 365, 643
rotate: 90 rotate: 90
tail01 right-wing05
bounds: 647, 2, 120, 153 bounds: 369, 369, 365, 643
right-wing06
bounds: 2, 369, 365, 643
tail03
bounds: 647, 275, 73, 92
tail05
bounds: 944, 251, 52, 59
dragon_3.png dragon_3.png
size: 1024, 1024 size: 1024, 1024
filter: Linear, Linear filter: Linear, Linear
chest chest
bounds: 740, 299, 136, 122 bounds: 858, 299, 136, 122
left-front-thigh
bounds: 647, 295, 84, 72
left-rear-thigh left-rear-thigh
bounds: 647, 218, 91, 149 bounds: 647, 117, 91, 149
left-wing03 left-wing07
bounds: 736, 423, 264, 589 bounds: 736, 423, 264, 589
right-front-leg right-front-leg
bounds: 850, 196, 101, 89 bounds: 647, 14, 101, 89
rotate: 90 rotate: 90
right-front-thigh right-front-thigh
bounds: 740, 189, 108, 108 bounds: 740, 158, 108, 108
right-rear-leg right-rear-leg
bounds: 878, 321, 116, 100 bounds: 740, 46, 116, 100
right-rear-thigh right-rear-thigh
bounds: 647, 67, 91, 149 bounds: 858, 148, 91, 149
right-wing07 right-wing01
bounds: 2, 369, 365, 643
right-wing08
bounds: 369, 369, 365, 643
right-wing09
bounds: 2, 2, 365, 643 bounds: 2, 2, 365, 643
rotate: 90 rotate: 90
right-wing02
bounds: 369, 369, 365, 643
right-wing03
bounds: 2, 369, 365, 643
tail01
bounds: 736, 268, 120, 153
tail02 tail02
bounds: 740, 67, 95, 120 bounds: 858, 26, 95, 120
dragon_4.png dragon_4.png
size: 1024, 1024 size: 1024, 1024
filter: Linear, Linear filter: Linear, Linear
left-wing03
bounds: 2, 2, 264, 589
rotate: 90
left-wing04 left-wing04
bounds: 2, 268, 264, 589 bounds: 534, 268, 264, 589
left-wing05 left-wing05
bounds: 268, 268, 264, 589 bounds: 268, 268, 264, 589
left-wing06 left-wing06
bounds: 534, 268, 264, 589 bounds: 2, 268, 264, 589
left-wing07
bounds: 2, 2, 264, 589
rotate: 90
dragon_5.png dragon_5.png
size: 1024, 1024 size: 1024, 1024
filter: Linear, Linear filter: Linear, Linear
left-wing08 left-wing01
bounds: 2, 2, 264, 589
left-wing09
bounds: 268, 2, 264, 589 bounds: 268, 2, 264, 589
left-wing02
bounds: 2, 2, 264, 589

Binary file not shown.

Before

Width:  |  Height:  |  Size: 292 KiB

After

Width:  |  Height:  |  Size: 215 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 193 KiB

After

Width:  |  Height:  |  Size: 194 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 184 KiB

After

Width:  |  Height:  |  Size: 261 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 20 KiB

After

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 12 KiB

View File

@ -3,356 +3,348 @@ mix-and-match.png
filter: Linear, Linear filter: Linear, Linear
scale: 0.5 scale: 0.5
base-head base-head
bounds: 118, 70, 95, 73 bounds: 185, 123, 95, 73
boy/arm-front boy/arm-front
bounds: 831, 311, 36, 115 bounds: 729, 92, 36, 115
rotate: 90 rotate: 90
boy/backpack boy/backpack
bounds: 249, 357, 119, 153 bounds: 619, 218, 119, 153
boy/backpack-pocket boy/backpack-pocket
bounds: 628, 193, 34, 62 bounds: 626, 4, 34, 62
rotate: 90 rotate: 90
boy/backpack-strap-front boy/backpack-strap-front
bounds: 330, 263, 38, 88 bounds: 342, 26, 38, 88
rotate: 90 rotate: 270
boy/backpack-up boy/backpack-up
bounds: 482, 171, 21, 70 bounds: 750, 12, 21, 70
rotate: 90
boy/body boy/body
bounds: 845, 413, 97, 132 bounds: 716, 125, 97, 132
rotate: 90 rotate: 270
boy/boot-ribbon-front boy/boot-ribbon-front
bounds: 234, 304, 9, 11 bounds: 1012, 360, 9, 11
boy/collar boy/collar
bounds: 471, 243, 73, 29 bounds: 764, 34, 73, 29
rotate: 90
boy/ear boy/ear
bounds: 991, 352, 19, 23 bounds: 878, 128, 19, 23
rotate: 90
boy/eye-back-low-eyelid boy/eye-back-low-eyelid
bounds: 66, 72, 17, 6 bounds: 467, 245, 17, 6
boy/eye-back-pupil boy/eye-back-pupil
bounds: 694, 279, 8, 9 bounds: 1012, 327, 8, 9
rotate: 90
boy/eye-back-up-eyelid boy/eye-back-up-eyelid
bounds: 460, 101, 23, 5 bounds: 180, 348, 23, 5
rotate: 90 rotate: 90
boy/eye-back-up-eyelid-back boy/eye-back-up-eyelid-back
bounds: 979, 414, 19, 10 bounds: 282, 255, 19, 10
rotate: 90
boy/eye-front-low-eyelid boy/eye-front-low-eyelid
bounds: 1015, 203, 22, 7 bounds: 366, 364, 22, 7
rotate: 90
boy/eye-front-pupil boy/eye-front-pupil
bounds: 309, 50, 9, 9 bounds: 1012, 349, 9, 9
boy/eye-front-up-eyelid boy/eye-front-up-eyelid
bounds: 991, 373, 31, 6 bounds: 155, 340, 31, 6
rotate: 270
boy/eye-front-up-eyelid-back boy/eye-front-up-eyelid-back
bounds: 107, 76, 26, 9 bounds: 338, 362, 26, 9
rotate: 90
boy/eye-iris-back boy/eye-iris-back
bounds: 810, 260, 17, 17 bounds: 562, 12, 17, 17
boy/eye-iris-front boy/eye-iris-front
bounds: 902, 230, 18, 18 bounds: 807, 73, 18, 18
boy/eye-white-back boy/eye-white-back
bounds: 599, 179, 20, 12 bounds: 317, 359, 20, 12
boy/eye-white-front boy/eye-white-front
bounds: 544, 183, 27, 13 bounds: 499, 358, 27, 13
boy/eyebrow-back boy/eyebrow-back
bounds: 1002, 225, 20, 11 bounds: 194, 360, 20, 11
rotate: 90
boy/eyebrow-front boy/eyebrow-front
bounds: 975, 234, 25, 11 bounds: 290, 360, 25, 11
boy/hair-back boy/hair-back
bounds: 629, 289, 122, 81 bounds: 929, 249, 122, 81
rotate: 90 rotate: 90
boy/hair-bangs boy/hair-bangs
bounds: 505, 180, 70, 37 bounds: 2, 2, 70, 37
rotate: 90
boy/hair-side boy/hair-side
bounds: 979, 435, 25, 43 bounds: 997, 237, 25, 43
rotate: 90
boy/hand-backfingers boy/hand-backfingers
bounds: 858, 183, 19, 21 bounds: 376, 15, 19, 21
boy/hand-front-fingers boy/hand-front-fingers
bounds: 879, 183, 19, 21 bounds: 786, 72, 19, 21
boy/hat boy/hat
bounds: 218, 121, 93, 56 bounds: 68, 89, 93, 56
boy/leg-front boy/leg-front
bounds: 85, 104, 31, 158 bounds: 90, 213, 31, 158
rotate: 180
boy/mouth-close boy/mouth-close
bounds: 467, 100, 21, 5 bounds: 187, 350, 21, 5
rotate: 90
girl-blue-cape/mouth-close girl-blue-cape/mouth-close
bounds: 467, 100, 21, 5 bounds: 187, 350, 21, 5
rotate: 90
girl-spring-dress/mouth-close girl-spring-dress/mouth-close
bounds: 467, 100, 21, 5 bounds: 187, 350, 21, 5
rotate: 90
girl/mouth-close girl/mouth-close
bounds: 467, 100, 21, 5 bounds: 187, 350, 21, 5
rotate: 90
boy/mouth-smile boy/mouth-smile
bounds: 1015, 258, 29, 7 bounds: 171, 342, 29, 7
rotate: 90 rotate: 90
boy/nose boy/nose
bounds: 323, 79, 17, 10 bounds: 1005, 225, 17, 10
boy/pompom boy/pompom
bounds: 979, 462, 48, 43 bounds: 157, 40, 48, 43
rotate: 90
boy/zip boy/zip
bounds: 922, 231, 14, 23 bounds: 883, 163, 14, 23
rotate: 90
girl-blue-cape/back-eyebrow girl-blue-cape/back-eyebrow
bounds: 527, 106, 18, 12 bounds: 137, 52, 18, 12
rotate: 90
girl-blue-cape/body-dress girl-blue-cape/body-dress
bounds: 2, 264, 109, 246 bounds: 185, 262, 109, 241
offsets: 0, 0, 109, 246
rotate: 90
girl-blue-cape/body-ribbon girl-blue-cape/body-ribbon
bounds: 576, 193, 50, 38 bounds: 881, 28, 50, 38
girl-blue-cape/cape-back girl-blue-cape/cape-back
bounds: 113, 317, 134, 193 bounds: 427, 237, 134, 193
rotate: 90
girl-blue-cape/cape-back-up girl-blue-cape/cape-back-up
bounds: 504, 305, 123, 106 bounds: 899, 126, 123, 106
rotate: 180
girl-blue-cape/cape-ribbon girl-blue-cape/cape-ribbon
bounds: 396, 118, 50, 18 bounds: 427, 353, 50, 18
rotate: 90
girl-blue-cape/cape-shoulder-back girl-blue-cape/cape-shoulder-back
bounds: 420, 243, 49, 59 bounds: 510, 3, 49, 59
rotate: 90
girl-blue-cape/cape-shoulder-front girl-blue-cape/cape-shoulder-front
bounds: 2, 2, 62, 76 bounds: 310, 51, 62, 76
rotate: 270
girl-blue-cape/cape-up-front girl-blue-cape/cape-up-front
bounds: 118, 145, 98, 117 bounds: 388, 72, 98, 117
rotate: 90
girl-blue-cape/ear girl-blue-cape/ear
bounds: 837, 181, 19, 23 bounds: 376, 137, 19, 23
girl-spring-dress/ear girl-spring-dress/ear
bounds: 837, 181, 19, 23 bounds: 376, 137, 19, 23
girl/ear girl/ear
bounds: 837, 181, 19, 23 bounds: 376, 137, 19, 23
girl-blue-cape/eye-back-low-eyelid girl-blue-cape/eye-back-low-eyelid
bounds: 810, 252, 17, 6 bounds: 427, 345, 17, 6
girl-spring-dress/eye-back-low-eyelid girl-spring-dress/eye-back-low-eyelid
bounds: 810, 252, 17, 6 bounds: 427, 345, 17, 6
girl/eye-back-low-eyelid girl/eye-back-low-eyelid
bounds: 810, 252, 17, 6 bounds: 427, 345, 17, 6
girl-blue-cape/eye-back-pupil girl-blue-cape/eye-back-pupil
bounds: 309, 40, 8, 9 bounds: 1012, 338, 8, 9
rotate: 90
girl-spring-dress/eye-back-pupil girl-spring-dress/eye-back-pupil
bounds: 309, 40, 8, 9 bounds: 1012, 338, 8, 9
rotate: 90
girl/eye-back-pupil girl/eye-back-pupil
bounds: 309, 40, 8, 9 bounds: 1012, 338, 8, 9
rotate: 90
girl-blue-cape/eye-back-up-eyelid girl-blue-cape/eye-back-up-eyelid
bounds: 573, 179, 24, 12 bounds: 812, 210, 24, 12
girl-spring-dress/eye-back-up-eyelid girl-spring-dress/eye-back-up-eyelid
bounds: 573, 179, 24, 12 bounds: 812, 210, 24, 12
girl/eye-back-up-eyelid girl/eye-back-up-eyelid
bounds: 573, 179, 24, 12 bounds: 812, 210, 24, 12
girl-blue-cape/eye-back-up-eyelid-back girl-blue-cape/eye-back-up-eyelid-back
bounds: 380, 105, 17, 11 bounds: 427, 254, 17, 11
rotate: 90
girl-spring-dress/eye-back-up-eyelid-back girl-spring-dress/eye-back-up-eyelid-back
bounds: 380, 105, 17, 11 bounds: 427, 254, 17, 11
rotate: 90
girl/eye-back-up-eyelid-back girl/eye-back-up-eyelid-back
bounds: 380, 105, 17, 11 bounds: 427, 254, 17, 11
rotate: 90
girl-blue-cape/eye-front-low-eyelid girl-blue-cape/eye-front-low-eyelid
bounds: 1016, 353, 18, 6 bounds: 716, 365, 18, 6
rotate: 90
girl-spring-dress/eye-front-low-eyelid girl-spring-dress/eye-front-low-eyelid
bounds: 1016, 353, 18, 6 bounds: 716, 365, 18, 6
rotate: 90
girl/eye-front-low-eyelid girl/eye-front-low-eyelid
bounds: 1016, 353, 18, 6 bounds: 716, 365, 18, 6
rotate: 90
girl-blue-cape/eye-front-pupil girl-blue-cape/eye-front-pupil
bounds: 363, 94, 9, 9 bounds: 547, 362, 9, 9
girl-spring-dress/eye-front-pupil girl-spring-dress/eye-front-pupil
bounds: 363, 94, 9, 9 bounds: 547, 362, 9, 9
girl/eye-front-pupil girl/eye-front-pupil
bounds: 363, 94, 9, 9 bounds: 547, 362, 9, 9
girl-blue-cape/eye-front-up-eyelid girl-blue-cape/eye-front-up-eyelid
bounds: 679, 413, 30, 14 bounds: 74, 15, 30, 14
rotate: 90
girl-spring-dress/eye-front-up-eyelid girl-spring-dress/eye-front-up-eyelid
bounds: 679, 413, 30, 14 bounds: 74, 15, 30, 14
rotate: 90
girl/eye-front-up-eyelid girl/eye-front-up-eyelid
bounds: 679, 413, 30, 14 bounds: 74, 15, 30, 14
rotate: 90
girl-blue-cape/eye-front-up-eyelid-back girl-blue-cape/eye-front-up-eyelid-back
bounds: 947, 234, 26, 11 bounds: 582, 149, 26, 11
girl-spring-dress/eye-front-up-eyelid-back girl-spring-dress/eye-front-up-eyelid-back
bounds: 947, 234, 26, 11 bounds: 582, 149, 26, 11
girl/eye-front-up-eyelid-back girl/eye-front-up-eyelid-back
bounds: 947, 234, 26, 11 bounds: 582, 149, 26, 11
girl-blue-cape/eye-iris-back girl-blue-cape/eye-iris-back
bounds: 323, 105, 17, 17 bounds: 442, 34, 17, 17
girl-blue-cape/eye-iris-front girl-blue-cape/eye-iris-front
bounds: 467, 107, 18, 18 bounds: 708, 95, 18, 18
girl-blue-cape/eye-white-back girl-blue-cape/eye-white-back
bounds: 621, 175, 20, 16 bounds: 984, 232, 20, 16
girl-spring-dress/eye-white-back girl-spring-dress/eye-white-back
bounds: 621, 175, 20, 16 bounds: 984, 232, 20, 16
girl-blue-cape/eye-white-front girl-blue-cape/eye-white-front
bounds: 643, 175, 20, 16 bounds: 608, 224, 20, 16
girl-spring-dress/eye-white-front girl-spring-dress/eye-white-front
bounds: 643, 175, 20, 16 bounds: 608, 224, 20, 16
girl/eye-white-front girl/eye-white-front
bounds: 643, 175, 20, 16 bounds: 608, 224, 20, 16
girl-blue-cape/front-eyebrow girl-blue-cape/front-eyebrow
bounds: 309, 101, 18, 12 bounds: 424, 172, 18, 12
rotate: 90
girl-blue-cape/hair-back girl-blue-cape/hair-back
bounds: 712, 317, 117, 98 bounds: 305, 162, 117, 98
girl-blue-cape/hair-bangs girl-blue-cape/hair-bangs
bounds: 313, 170, 91, 40 bounds: 694, 57, 91, 40
rotate: 90
girl-blue-cape/hair-head-side-back girl-blue-cape/hair-head-side-back
bounds: 544, 198, 30, 52 bounds: 397, 2, 30, 52
rotate: 90
girl-blue-cape/hair-head-side-front girl-blue-cape/hair-head-side-front
bounds: 466, 127, 41, 42 bounds: 933, 14, 41, 42
rotate: 90
girl-blue-cape/hair-side girl-blue-cape/hair-side
bounds: 175, 2, 36, 71 bounds: 203, 11, 36, 71
rotate: 90 rotate: 270
girl-blue-cape/hand-front-fingers girl-blue-cape/hand-front-fingers
bounds: 902, 207, 19, 21 bounds: 694, 115, 19, 21
girl-spring-dress/hand-front-fingers girl-spring-dress/hand-front-fingers
bounds: 902, 207, 19, 21 bounds: 694, 115, 19, 21
girl-blue-cape/leg-front girl-blue-cape/leg-front
bounds: 519, 413, 30, 158 bounds: 60, 213, 30, 158
rotate: 90 rotate: 180
girl-blue-cape/mouth-smile girl-blue-cape/mouth-smile
bounds: 1015, 227, 29, 7 bounds: 162, 342, 29, 7
rotate: 90 rotate: 90
girl-spring-dress/mouth-smile girl-spring-dress/mouth-smile
bounds: 1015, 227, 29, 7 bounds: 162, 342, 29, 7
rotate: 90 rotate: 90
girl/mouth-smile girl/mouth-smile
bounds: 1015, 227, 29, 7 bounds: 162, 342, 29, 7
rotate: 90 rotate: 90
girl-blue-cape/nose girl-blue-cape/nose
bounds: 342, 82, 11, 7 bounds: 558, 364, 11, 7
girl-spring-dress/nose girl-spring-dress/nose
bounds: 342, 82, 11, 7 bounds: 558, 364, 11, 7
girl/nose girl/nose
bounds: 342, 82, 11, 7 bounds: 558, 364, 11, 7
girl-blue-cape/sleeve-back girl-blue-cape/sleeve-back
bounds: 416, 95, 42, 29 bounds: 157, 9, 42, 29
girl-blue-cape/sleeve-front girl-blue-cape/sleeve-front
bounds: 249, 303, 52, 119 bounds: 839, 103, 52, 119
rotate: 90
girl-spring-dress/arm-front girl-spring-dress/arm-front
bounds: 829, 292, 17, 111 bounds: 122, 260, 17, 111
rotate: 90
girl-spring-dress/back-eyebrow girl-spring-dress/back-eyebrow
bounds: 309, 81, 18, 12 bounds: 2, 199, 18, 12
rotate: 90
girl-spring-dress/body-up girl-spring-dress/body-up
bounds: 66, 2, 64, 66 bounds: 2, 79, 64, 66
girl-spring-dress/cloak-down girl-spring-dress/cloak-down
bounds: 758, 227, 50, 50 bounds: 459, 18, 50, 50
rotate: 180
girl-spring-dress/cloak-up girl-spring-dress/cloak-up
bounds: 628, 229, 64, 58 bounds: 247, 50, 61, 58
offsets: 0, 0, 64, 58
rotate: 270
girl-spring-dress/eye-iris-back girl-spring-dress/eye-iris-back
bounds: 342, 105, 17, 17 bounds: 875, 109, 17, 17
girl-spring-dress/eye-iris-front girl-spring-dress/eye-iris-front
bounds: 487, 107, 18, 18 bounds: 479, 353, 18, 18
girl-spring-dress/front-eyebrow girl-spring-dress/front-eyebrow
bounds: 323, 91, 18, 12 bounds: 893, 210, 18, 12
girl-spring-dress/hair-back girl-spring-dress/hair-back
bounds: 370, 417, 147, 93 bounds: 834, 224, 147, 93
rotate: 90
girl-spring-dress/hair-bangs girl-spring-dress/hair-bangs
bounds: 829, 250, 91, 40 bounds: 914, 57, 91, 40
girl-spring-dress/hair-head-side-back girl-spring-dress/hair-head-side-back
bounds: 509, 126, 30, 52 bounds: 217, 341, 30, 52
rotate: 90
girl-spring-dress/hair-head-side-front girl-spring-dress/hair-head-side-front
bounds: 816, 206, 41, 42 bounds: 582, 15, 41, 42
rotate: 90
girl-spring-dress/hair-side girl-spring-dress/hair-side
bounds: 248, 2, 36, 71 bounds: 84, 14, 36, 71
rotate: 90 rotate: 90
girl-spring-dress/leg-front girl-spring-dress/leg-front
bounds: 831, 381, 30, 158 bounds: 30, 213, 30, 158
rotate: 90 rotate: 180
girl-spring-dress/neck girl-spring-dress/neck
bounds: 85, 70, 20, 32 bounds: 283, 176, 20, 32
girl-spring-dress/shoulder-ribbon girl-spring-dress/shoulder-ribbon
bounds: 175, 44, 36, 24 bounds: 207, 58, 36, 24
girl-spring-dress/skirt girl-spring-dress/skirt
bounds: 2, 80, 182, 81 bounds: 121, 198, 182, 81
rotate: 90 rotate: 180
girl-spring-dress/underskirt girl-spring-dress/underskirt
bounds: 519, 445, 175, 65 bounds: 8, 147, 175, 65
girl/arm-front girl/arm-front
bounds: 712, 279, 36, 115 bounds: 907, 93, 36, 115
rotate: 90 rotate: 90
girl/back-eyebrow girl/back-eyebrow
bounds: 309, 61, 18, 12 bounds: 948, 236, 18, 12
rotate: 90
girl/bag-base girl/bag-base
bounds: 694, 219, 62, 58 bounds: 418, 52, 62, 58
girl/bag-strap-front girl/bag-strap-front
bounds: 370, 304, 12, 96 bounds: 141, 276, 12, 95
rotate: 90 offsets: 0, 1, 12, 96
girl/bag-top girl/bag-top
bounds: 765, 175, 49, 50 bounds: 841, 7, 49, 50
girl/body girl/body
bounds: 370, 318, 97, 132 bounds: 476, 154, 97, 132
rotate: 90 rotate: 270
girl/boot-ribbon-front girl/boot-ribbon-front
bounds: 323, 64, 13, 13 bounds: 968, 235, 13, 13
girl/eye-iris-back girl/eye-iris-back
bounds: 361, 105, 17, 17 bounds: 929, 231, 17, 17
girl/eye-iris-front girl/eye-iris-front
bounds: 507, 106, 18, 18 bounds: 270, 353, 18, 18
girl/eye-white-back girl/eye-white-back
bounds: 665, 175, 20, 16 bounds: 162, 324, 20, 16
girl/front-eyebrow girl/front-eyebrow
bounds: 343, 91, 18, 12 bounds: 527, 359, 18, 12
girl/hair-back girl/hair-back
bounds: 696, 417, 147, 93 bounds: 739, 224, 147, 93
girl/hair-bangs
bounds: 922, 247, 91, 40
girl/hair-flap-down-front
bounds: 415, 171, 70, 65
rotate: 90 rotate: 90
girl/hair-bangs
bounds: 534, 57, 91, 40
girl/hair-flap-down-front
bounds: 506, 31, 70, 65
rotate: 180
girl/hair-head-side-back girl/hair-head-side-back
bounds: 991, 381, 30, 52 bounds: 155, 276, 30, 52
girl/hair-head-side-front girl/hair-head-side-front
bounds: 859, 206, 41, 42 bounds: 980, 17, 41, 42
rotate: 90
girl/hair-patch girl/hair-patch
bounds: 132, 2, 66, 41 bounds: 424, 186, 66, 41
rotate: 90 rotate: 90
girl/hair-side girl/hair-side
bounds: 692, 181, 36, 71 bounds: 265, 17, 36, 71
rotate: 90 rotate: 90
girl/hair-strand-back-1 girl/hair-strand-back-1
bounds: 948, 289, 58, 74 bounds: 676, 24, 56, 74
offsets: 2, 0, 58, 74
rotate: 90 rotate: 90
girl/hair-strand-back-2 girl/hair-strand-back-2
bounds: 355, 170, 91, 58 bounds: 823, 54, 90, 53
rotate: 90 offsets: 1, 0, 91, 58
girl/hair-strand-back-3 girl/hair-strand-back-3
bounds: 215, 40, 92, 79 bounds: 610, 138, 92, 79
girl/hair-strand-front-1 girl/hair-strand-front-1
bounds: 234, 263, 38, 94 bounds: 157, 83, 38, 94
rotate: 90 rotate: 90
girl/hair-strand-front-2 girl/hair-strand-front-2
bounds: 576, 233, 70, 50 bounds: 2, 27, 70, 50
rotate: 90
girl/hair-strand-front-3 girl/hair-strand-front-3
bounds: 313, 124, 44, 81 bounds: 74, 50, 44, 81
rotate: 90 rotate: 270
girl/hand-front-fingers girl/hand-front-fingers
bounds: 923, 208, 19, 21 bounds: 162, 124, 19, 21
girl/hat girl/hat
bounds: 218, 179, 93, 82 bounds: 282, 78, 93, 82
girl/leg-front girl/leg-front
bounds: 831, 349, 30, 158 bounds: 2, 213, 30, 158
rotate: 90
girl/pompom girl/pompom
bounds: 416, 126, 48, 43 bounds: 626, 40, 48, 43
girl/scarf girl/scarf
bounds: 113, 264, 119, 51 bounds: 499, 98, 119, 51
girl/scarf-back girl/scarf-back
bounds: 502, 252, 72, 51 bounds: 620, 85, 72, 51
girl/zip girl/zip
bounds: 816, 179, 19, 25 bounds: 455, 173, 19, 25

Binary file not shown.

Before

Width:  |  Height:  |  Size: 341 KiB

After

Width:  |  Height:  |  Size: 343 KiB

View File

@ -1,7 +1,7 @@
{ {
"skeleton": { "skeleton": {
"hash": "dr3Kr/vMgPA", "hash": "0JYVQzyBfX0",
"spine": "4.2.22", "spine": "4.3.29-beta",
"x": -188.63, "x": -188.63,
"y": -7.94, "y": -7.94,
"width": 418.45, "width": 418.45,
@ -318,144 +318,219 @@
{ "name": "muzzle-ring3", "bone": "muzzle-ring3", "color": "d8baffff", "blend": "additive" }, { "name": "muzzle-ring3", "bone": "muzzle-ring3", "color": "d8baffff", "blend": "additive" },
{ "name": "muzzle-ring4", "bone": "muzzle-ring4", "color": "d8baffff", "blend": "additive" } { "name": "muzzle-ring4", "bone": "muzzle-ring4", "color": "d8baffff", "blend": "additive" }
], ],
"ik": [ "constraints": [
{ {
"name": "aim-ik", "type": "transform",
"order": 13, "name": "shoulder",
"bones": [ "rear-upper-arm" ], "bones": [ "back-shoulder" ],
"target": "crosshair", "source": "front-shoulder",
"mix": 0 "x": 40.17,
}, "y": -1.66,
{ "properties": {
"name": "aim-torso-ik", "x": {
"order": 8, "to": {
"bones": [ "aim-constraint-target" ], "x": { "max": 100, "scale": 1 }
"target": "crosshair" }
},
"y": {
"to": {
"y": { "max": 100, "scale": 1 }
}
}
},
"mixX": -1
}, },
{ {
"type": "ik",
"name": "board-ik", "name": "board-ik",
"order": 1,
"bones": [ "hoverboard-controller" ], "bones": [ "hoverboard-controller" ],
"target": "board-ik" "target": "board-ik"
}, },
{ {
"name": "front-foot-ik", "type": "transform",
"order": 6, "name": "front-foot-board-transform",
"bones": [ "front-foot" ], "bones": [ "front-foot-target" ],
"target": "front-foot-target" "source": "hoverboard-controller",
"x": -69.8,
"y": 20.7,
"properties": {
"rotate": {
"to": {
"rotate": { "max": 100, "scale": 1 }
}
},
"x": {
"to": {
"x": { "max": 100, "scale": 1 }
}
},
"y": {
"to": {
"y": { "max": 100, "scale": 1 }
}
},
"scaleX": {
"to": {
"scaleX": { "scale": 1 }
}
},
"scaleY": {
"to": {
"scaleY": { "scale": 1 }
}
},
"shearY": {
"to": {
"shearY": { "max": 100, "scale": 1 }
}
}
},
"mixRotate": 0,
"mixX": 0,
"mixScaleX": 0,
"mixShearY": 0
}, },
{ {
"type": "transform",
"name": "rear-foot-board-transform",
"bones": [ "rear-foot-target" ],
"source": "hoverboard-controller",
"x": 86.6,
"y": 21.3,
"properties": {
"rotate": {
"to": {
"rotate": { "max": 100, "scale": 1 }
}
},
"x": {
"to": {
"x": { "max": 100, "scale": 1 }
}
},
"y": {
"to": {
"y": { "max": 100, "scale": 1 }
}
},
"scaleX": {
"to": {
"scaleX": { "scale": 1 }
}
},
"scaleY": {
"to": {
"scaleY": { "scale": 1 }
}
},
"shearY": {
"to": {
"shearY": { "max": 100, "scale": 1 }
}
}
},
"mixRotate": 0,
"mixX": 0,
"mixScaleX": 0,
"mixShearY": 0
},
{
"type": "ik",
"name": "front-leg-ik", "name": "front-leg-ik",
"order": 4,
"bones": [ "front-thigh", "front-shin" ], "bones": [ "front-thigh", "front-shin" ],
"target": "front-leg-target", "target": "front-leg-target",
"bendPositive": false "bendPositive": false
}, },
{ {
"type": "ik",
"name": "rear-leg-ik",
"bones": [ "rear-thigh", "rear-shin" ],
"target": "rear-leg-target",
"bendPositive": false
},
{
"type": "ik",
"name": "front-foot-ik",
"bones": [ "front-foot" ],
"target": "front-foot-target"
},
{
"type": "ik",
"name": "rear-foot-ik", "name": "rear-foot-ik",
"order": 7,
"bones": [ "rear-foot" ], "bones": [ "rear-foot" ],
"target": "rear-foot-target" "target": "rear-foot-target"
}, },
{ {
"name": "rear-leg-ik", "type": "ik",
"order": 5, "name": "aim-torso-ik",
"bones": [ "rear-thigh", "rear-shin" ], "bones": [ "aim-constraint-target" ],
"target": "rear-leg-target", "target": "crosshair"
"bendPositive": false
}
],
"transform": [
{
"name": "aim-front-arm-transform",
"order": 11,
"bones": [ "front-upper-arm" ],
"target": "aim-constraint-target",
"rotation": -180,
"mixRotate": 0,
"mixX": 0,
"mixScaleX": 0,
"mixShearY": 0
},
{
"name": "aim-head-transform",
"order": 10,
"bones": [ "head" ],
"target": "aim-constraint-target",
"rotation": 84.3,
"mixRotate": 0,
"mixX": 0,
"mixScaleX": 0,
"mixShearY": 0
},
{
"name": "aim-rear-arm-transform",
"order": 12,
"bones": [ "rear-upper-arm" ],
"target": "aim-constraint-target",
"x": 57.7,
"y": 56.4,
"mixRotate": 0,
"mixX": 0,
"mixScaleX": 0,
"mixShearY": 0
}, },
{ {
"type": "transform",
"name": "aim-torso-transform", "name": "aim-torso-transform",
"order": 9,
"bones": [ "torso" ], "bones": [ "torso" ],
"target": "aim-constraint-target", "source": "aim-constraint-target",
"rotation": 69.5, "rotation": 69.5,
"shearY": -36, "properties": {
"mixRotate": 0, "rotate": {
"mixX": 0, "to": {
"mixScaleX": 0, "rotate": { "max": 100, "scale": 1 }
"mixShearY": 0 }
}
},
"mixRotate": 0
}, },
{ {
"name": "front-foot-board-transform", "type": "transform",
"order": 2, "name": "aim-head-transform",
"bones": [ "front-foot-target" ], "bones": [ "head" ],
"target": "hoverboard-controller", "source": "aim-constraint-target",
"x": -69.8, "rotation": 84.3,
"y": 20.7, "properties": {
"mixRotate": 0, "rotate": {
"mixX": 0, "to": {
"mixScaleX": 0, "rotate": { "max": 100, "scale": 1 }
"mixShearY": 0 }
}
},
"mixRotate": 0
}, },
{ {
"name": "rear-foot-board-transform", "type": "transform",
"order": 3, "name": "aim-front-arm-transform",
"bones": [ "rear-foot-target" ], "bones": [ "front-upper-arm" ],
"target": "hoverboard-controller", "source": "aim-constraint-target",
"x": 86.6, "rotation": -180,
"y": 21.3, "properties": {
"mixRotate": 0, "rotate": {
"mixX": 0, "to": {
"mixScaleX": 0, "rotate": { "max": 100, "scale": 1 }
"mixShearY": 0 }
}
},
"mixRotate": 0
}, },
{ {
"name": "shoulder", "type": "ik",
"bones": [ "back-shoulder" ], "name": "aim-ik",
"target": "front-shoulder", "bones": [ "rear-upper-arm" ],
"x": 40.17, "target": "crosshair",
"y": -1.66, "mix": 0
"mixRotate": 0,
"mixX": -1,
"mixScaleX": 0,
"mixShearY": 0
}, },
{ {
"type": "transform",
"name": "toes-board", "name": "toes-board",
"order": 14,
"bones": [ "front-foot-tip", "back-foot-tip" ], "bones": [ "front-foot-tip", "back-foot-tip" ],
"target": "hoverboard-controller", "source": "hoverboard-controller",
"mixRotate": 0, "properties": {
"mixX": 0, "rotate": {
"mixScaleX": 0, "to": {
"mixShearY": 0 "rotate": { "max": 100, "scale": 1 }
}
}
},
"mixRotate": 0
} }
], ],
"skins": [ "skins": [
@ -466,8 +541,8 @@
"clipping": { "clipping": {
"type": "clipping", "type": "clipping",
"end": "head-bb", "end": "head-bb",
"vertexCount": 9, "vertexCount": 3,
"vertices": [ 66.76, 509.48, 19.98, 434.54, 5.34, 336.28, 22.19, 247.93, 77.98, 159.54, 182.21, -97.56, 1452.26, -99.8, 1454.33, 843.61, 166.57, 841.02 ], "vertices": [ 18.89, -228.46, 1471.52, 140.96, 34.01, 930.06 ],
"color": "ce3a3aff" "color": "ce3a3aff"
} }
}, },
@ -877,13 +952,13 @@
}, },
"transform": { "transform": {
"aim-front-arm-transform": [ "aim-front-arm-transform": [
{ "mixRotate": 0.784, "mixX": 0, "mixScaleX": 0, "mixShearY": 0 } { "mixRotate": 0.784 }
], ],
"aim-head-transform": [ "aim-head-transform": [
{ "mixRotate": 0.659, "mixX": 0, "mixScaleX": 0, "mixShearY": 0 } { "mixRotate": 0.659 }
], ],
"aim-torso-transform": [ "aim-torso-transform": [
{ "mixRotate": 0.423, "mixX": 0, "mixScaleX": 0, "mixShearY": 0 } { "mixRotate": 0.423 }
] ]
} }
}, },
@ -3486,13 +3561,13 @@
}, },
"transform": { "transform": {
"front-foot-board-transform": [ "front-foot-board-transform": [
{ "mixRotate": 0.997 } { "mixRotate": 0.997, "mixX": 1, "mixScaleX": 1, "mixShearY": 1 }
], ],
"rear-foot-board-transform": [ "rear-foot-board-transform": [
{} { "mixRotate": 1, "mixX": 1, "mixScaleX": 1, "mixShearY": 1 }
], ],
"toes-board": [ "toes-board": [
{ "mixX": 0, "mixScaleX": 0, "mixShearY": 0 } { "mixRotate": 1 }
] ]
}, },
"attachments": { "attachments": {

View File

@ -3,92 +3,96 @@ spineboy.png
filter: Linear, Linear filter: Linear, Linear
scale: 0.5 scale: 0.5
crosshair crosshair
bounds: 352, 7, 45, 45 bounds: 263, 11, 45, 45
eye-indifferent eye-indifferent
bounds: 862, 105, 47, 45 bounds: 214, 11, 47, 45
eye-surprised eye-surprised
bounds: 505, 79, 47, 45 bounds: 965, 33, 47, 45
rotate: 90
front-bracer front-bracer
bounds: 826, 66, 29, 40 bounds: 2, 5, 29, 40
rotate: 90
front-fist-closed front-fist-closed
bounds: 786, 65, 38, 41 bounds: 505, 3, 38, 41
rotate: 90
front-fist-open front-fist-open
bounds: 710, 51, 43, 44 bounds: 790, 9, 43, 44
rotate: 90 rotate: 90
front-foot front-foot
bounds: 210, 6, 63, 35 bounds: 149, 21, 63, 35
front-shin front-shin
bounds: 665, 128, 41, 92 bounds: 505, 43, 41, 92
rotate: 90 rotate: 90
front-thigh front-thigh
bounds: 2, 2, 23, 56 bounds: 359, 14, 23, 56
rotate: 90 rotate: 90
front-upper-arm front-upper-arm
bounds: 250, 205, 23, 49 bounds: 955, 8, 23, 49
rotate: 90
goggles goggles
bounds: 665, 171, 131, 83 bounds: 180, 58, 131, 83
gun gun
bounds: 798, 152, 105, 102 bounds: 313, 39, 105, 102
head head
bounds: 2, 27, 136, 149 bounds: 29, 83, 136, 149
rotate: 90
hoverboard-board hoverboard-board
bounds: 2, 178, 246, 76 bounds: 180, 143, 246, 76
hoverboard-thruster hoverboard-thruster
bounds: 722, 96, 30, 32 bounds: 790, 57, 30, 32
rotate: 90
hoverglow-small hoverglow-small
bounds: 275, 81, 137, 38 bounds: 826, 54, 137, 38
mouth-grind mouth-grind
bounds: 614, 97, 47, 30 bounds: 707, 8, 47, 30
mouth-oooo mouth-oooo
bounds: 612, 65, 47, 30 bounds: 658, 8, 47, 30
mouth-smile mouth-smile
bounds: 661, 64, 47, 30 bounds: 548, 11, 47, 30
muzzle-glow muzzle-glow
bounds: 382, 54, 25, 25 bounds: 997, 194, 25, 25
muzzle-ring muzzle-ring
bounds: 275, 54, 25, 105 bounds: 2, 114, 25, 105
rotate: 90
muzzle01 muzzle01
bounds: 911, 95, 67, 40 bounds: 965, 82, 67, 40
rotate: 90 rotate: 90
muzzle02 muzzle02
bounds: 792, 108, 68, 42 bounds: 953, 151, 68, 42
rotate: 90
muzzle03 muzzle03
bounds: 956, 171, 83, 53 bounds: 420, 31, 83, 53
rotate: 90
muzzle04 muzzle04
bounds: 275, 7, 75, 45 bounds: 2, 36, 75, 45
muzzle05 muzzle05
bounds: 140, 3, 68, 38 bounds: 79, 43, 68, 38
neck neck
bounds: 250, 182, 18, 21 bounds: 997, 171, 18, 21
portal-bg portal-bg
bounds: 140, 43, 133, 133 bounds: 563, 86, 133, 133
portal-flare1 portal-flare1
bounds: 554, 65, 56, 30 bounds: 79, 11, 56, 30
portal-flare2 portal-flare2
bounds: 759, 112, 57, 31 bounds: 836, 21, 57, 31
rotate: 90
portal-flare3 portal-flare3
bounds: 554, 97, 58, 30 bounds: 895, 22, 58, 30
portal-shade portal-shade
bounds: 275, 121, 133, 133 bounds: 428, 86, 133, 133
portal-streaks1 portal-streaks1
bounds: 410, 126, 126, 128 bounds: 698, 91, 126, 128
portal-streaks2 portal-streaks2
bounds: 538, 129, 125, 125 bounds: 826, 94, 125, 125
rear-bracer rear-bracer
bounds: 857, 67, 28, 36 bounds: 756, 2, 28, 36
rear-foot rear-foot
bounds: 663, 96, 57, 30 bounds: 599, 14, 57, 30
rear-shin rear-shin
bounds: 414, 86, 38, 89 bounds: 599, 46, 38, 89
rotate: 90 rotate: 90
rear-thigh rear-thigh
bounds: 756, 63, 28, 47 bounds: 310, 9, 28, 47
rotate: 90
rear-upper-arm rear-upper-arm
bounds: 60, 5, 20, 44 bounds: 417, 9, 20, 44
rotate: 90 rotate: 90
torso torso
bounds: 905, 164, 49, 90 bounds: 698, 40, 49, 90
rotate: 90

Binary file not shown.

Before

Width:  |  Height:  |  Size: 240 KiB

After

Width:  |  Height:  |  Size: 236 KiB

View File

@ -62,7 +62,7 @@ fun AnimationState(nav: NavHostController) {
controller.skeleton.setScaleX(0.5f) controller.skeleton.setScaleX(0.5f)
controller.skeleton.setScaleY(0.5f) controller.skeleton.setScaleY(0.5f)
controller.skeleton.findSlot("gun")?.color?.set(Color(1f, 0f, 0f, 1f)) controller.skeleton.findSlot("gun")?.appliedPose?.color?.set(Color(1f, 0f, 0f, 1f))
controller.animationStateData.setDefaultMix(0.2f) controller.animationStateData.setDefaultMix(0.2f)
controller.animationState.setAnimation(0, "walk", true).setListener(object : AnimationState.AnimationStateListener { controller.animationState.setAnimation(0, "walk", true).setListener(object : AnimationState.AnimationStateListener {

View File

@ -128,7 +128,7 @@ fun DressUp(nav: NavHostController) {
if (customSkinValue != null) { if (customSkinValue != null) {
drawable.skeleton.setSkin(customSkinValue) drawable.skeleton.setSkin(customSkinValue)
} }
drawable.skeleton.setSlotsToSetupPose() drawable.skeleton.setupPoseSlots()
} }
val localDensity = LocalDensity.current val localDensity = LocalDensity.current
@ -138,9 +138,9 @@ fun DressUp(nav: NavHostController) {
if (skin.getName() == "default") continue if (skin.getName() == "default") continue
val skeleton = drawable.skeleton val skeleton = drawable.skeleton
skeleton.setSkin(skin) skeleton.setSkin(skin)
skeleton.setToSetupPose() skeleton.setupPose()
skeleton.update(0f) skeleton.update(0f)
skeleton.updateWorldTransform(Skeleton.Physics.update) skeleton.updateWorldTransform(Physics.update)
skinImages[skin.getName()] = renderer.renderToBitmap( skinImages[skin.getName()] = renderer.renderToBitmap(
with(localDensity) { thumbnailSize.dp.toPx() }, with(localDensity) { thumbnailSize.dp.toPx() },
with(localDensity) { thumbnailSize.dp.toPx() }, with(localDensity) { thumbnailSize.dp.toPx() },

View File

@ -74,9 +74,9 @@ fun IKFollowing(nav: NavHostController) {
val skeleton = it.skeleton val skeleton = it.skeleton
val bone = skeleton.findBone("crosshair") ?: return@setOnAfterUpdateWorldTransforms val bone = skeleton.findBone("crosshair") ?: return@setOnAfterUpdateWorldTransforms
val parent = bone.parent ?: return@setOnAfterUpdateWorldTransforms val parent = bone.parent ?: return@setOnAfterUpdateWorldTransforms
val position = parent.worldToLocal(Vector2(worldPosition.x.toFloat(), worldPosition.y.toFloat())) val position = parent.appliedPose.worldToLocal(Vector2(worldPosition.x.toFloat(), worldPosition.y.toFloat()))
bone.x = position.x bone.appliedPose.x = position.x
bone.y = position.y bone.appliedPose.y = position.y
} }
.build() .build()
} }

View File

@ -41,6 +41,7 @@ import com.badlogic.gdx.utils.FloatArray;
import com.esotericsoftware.spine.Animation; import com.esotericsoftware.spine.Animation;
import com.esotericsoftware.spine.AnimationState; import com.esotericsoftware.spine.AnimationState;
import com.esotericsoftware.spine.AnimationStateData; import com.esotericsoftware.spine.AnimationStateData;
import com.esotericsoftware.spine.Physics;
import com.esotericsoftware.spine.Skeleton; import com.esotericsoftware.spine.Skeleton;
import com.esotericsoftware.spine.SkeletonData; import com.esotericsoftware.spine.SkeletonData;
import com.esotericsoftware.spine.android.utils.SkeletonDataUtils; import com.esotericsoftware.spine.android.utils.SkeletonDataUtils;
@ -90,7 +91,7 @@ public class AndroidSkeletonDrawable {
animationStateData = new AnimationStateData(skeletonData); animationStateData = new AnimationStateData(skeletonData);
animationState = new AnimationState(animationStateData); animationState = new AnimationState(animationStateData);
skeleton.updateWorldTransform(Skeleton.Physics.none); skeleton.updateWorldTransform(Physics.none);
} }
/** Updates the {@link AnimationState} using the {@code delta} time given in seconds, applies the animation state to the /** Updates the {@link AnimationState} using the {@code delta} time given in seconds, applies the animation state to the
@ -100,7 +101,7 @@ public class AndroidSkeletonDrawable {
animationState.apply(skeleton); animationState.apply(skeleton);
skeleton.update(delta); skeleton.update(delta);
skeleton.updateWorldTransform(Skeleton.Physics.update); skeleton.updateWorldTransform(Physics.update);
} }
/** Get the {@link AndroidTextureAtlas} */ /** Get the {@link AndroidTextureAtlas} */

View File

@ -46,8 +46,8 @@ public class DebugRenderer {
bonePaint.setStyle(Paint.Style.FILL); bonePaint.setStyle(Paint.Style.FILL);
for (Bone bone : drawable.getSkeleton().getBones()) { for (Bone bone : drawable.getSkeleton().getBones()) {
float x = bone.getWorldX(); float x = bone.getAppliedPose().getWorldX();
float y = bone.getWorldY(); float y = bone.getAppliedPose().getWorldY();
canvas.drawRect(new RectF(x - 2.5f, y - 2.5f, x + 2.5f, y + 2.5f), bonePaint); canvas.drawRect(new RectF(x - 2.5f, y - 2.5f, x + 2.5f, y + 2.5f), bonePaint);
} }
} }

View File

@ -39,6 +39,7 @@ import com.badlogic.gdx.utils.ShortArray;
import com.esotericsoftware.spine.BlendMode; import com.esotericsoftware.spine.BlendMode;
import com.esotericsoftware.spine.Skeleton; import com.esotericsoftware.spine.Skeleton;
import com.esotericsoftware.spine.Slot; import com.esotericsoftware.spine.Slot;
import com.esotericsoftware.spine.SlotPose;
import com.esotericsoftware.spine.attachments.Attachment; import com.esotericsoftware.spine.attachments.Attachment;
import com.esotericsoftware.spine.attachments.ClippingAttachment; import com.esotericsoftware.spine.attachments.ClippingAttachment;
import com.esotericsoftware.spine.attachments.MeshAttachment; import com.esotericsoftware.spine.attachments.MeshAttachment;
@ -110,7 +111,8 @@ public class SkeletonRenderer {
int vertexSize = 2; int vertexSize = 2;
float[] uvs = null; float[] uvs = null;
short[] indices = null; short[] indices = null;
Attachment attachment = slot.getAttachment(); SlotPose pose = slot.getAppliedPose();
Attachment attachment = pose.getAttachment();
if (attachment == null) { if (attachment == null) {
clipper.clipEnd(slot); clipper.clipEnd(slot);
continue; continue;
@ -119,7 +121,7 @@ public class SkeletonRenderer {
if (attachment instanceof RegionAttachment) { if (attachment instanceof RegionAttachment) {
RegionAttachment region = (RegionAttachment)attachment; RegionAttachment region = (RegionAttachment)attachment;
verticesLength = vertexSize << 2; verticesLength = vertexSize << 2;
if (region.getSequence() != null) region.getSequence().apply(slot, region); if (region.getSequence() != null) region.getSequence().apply(pose, region);
AndroidTexture texture = (AndroidTexture)region.getRegion().getTexture(); AndroidTexture texture = (AndroidTexture)region.getRegion().getTexture();
BlendMode blendMode = slot.getData().getBlendMode(); BlendMode blendMode = slot.getData().getBlendMode();
if (command.blendMode == null && command.texture == null) { if (command.blendMode == null && command.texture == null) {
@ -143,7 +145,7 @@ public class SkeletonRenderer {
} else if (attachment instanceof MeshAttachment) { } else if (attachment instanceof MeshAttachment) {
MeshAttachment mesh = (MeshAttachment)attachment; MeshAttachment mesh = (MeshAttachment)attachment;
verticesLength = mesh.getWorldVerticesLength(); verticesLength = mesh.getWorldVerticesLength();
if (mesh.getSequence() != null) mesh.getSequence().apply(slot, mesh); if (mesh.getSequence() != null) mesh.getSequence().apply(pose, mesh);
AndroidTexture texture = (AndroidTexture)mesh.getRegion().getTexture(); AndroidTexture texture = (AndroidTexture)mesh.getRegion().getTexture();
BlendMode blendMode = slot.getData().getBlendMode(); BlendMode blendMode = slot.getData().getBlendMode();
@ -161,19 +163,19 @@ public class SkeletonRenderer {
} }
command.vertices.setSize(command.vertices.size + verticesLength); command.vertices.setSize(command.vertices.size + verticesLength);
mesh.computeWorldVertices(slot, 0, verticesLength, command.vertices.items, vertexStart, vertexSize); mesh.computeWorldVertices(skeleton, slot, 0, verticesLength, command.vertices.items, vertexStart, vertexSize);
uvs = mesh.getUVs(); uvs = mesh.getUVs();
indices = mesh.getTriangles(); indices = mesh.getTriangles();
color = mesh.getColor(); color = mesh.getColor();
} else if (attachment instanceof ClippingAttachment) { } else if (attachment instanceof ClippingAttachment) {
ClippingAttachment clip = (ClippingAttachment)attachment; ClippingAttachment clip = (ClippingAttachment)attachment;
clipper.clipStart(slot, clip); clipper.clipStart(skeleton, slot, clip);
continue; continue;
} else { } else {
continue; continue;
} }
Color slotColor = slot.getColor(); Color slotColor = pose.getColor();
int c = (int)(a * slotColor.a * color.a * 255) << 24 // int c = (int)(a * slotColor.a * color.a * 255) << 24 //
| (int)(r * slotColor.r * color.r * 255) << 16 // | (int)(r * slotColor.r * color.r * 255) << 16 //
| (int)(g * slotColor.g * color.g * 255) << 8 // | (int)(g * slotColor.g * color.g * 255) << 8 //

View File

@ -75,7 +75,7 @@ public class SkinAndAnimationBounds implements BoundsProvider {
customSkin.addSkin(skin); customSkin.addSkin(skin);
} }
drawable.getSkeleton().setSkin(customSkin); drawable.getSkeleton().setSkin(customSkin);
drawable.getSkeleton().setToSetupPose(); drawable.getSkeleton().setupPose();
Animation animation = (this.animation != null) ? data.findAnimation(this.animation) : null; Animation animation = (this.animation != null) ? data.findAnimation(this.animation) : null;
double minX = Double.POSITIVE_INFINITY; double minX = Double.POSITIVE_INFINITY;
@ -104,7 +104,7 @@ public class SkinAndAnimationBounds implements BoundsProvider {
drawable.getSkeleton().setSkin("default"); drawable.getSkeleton().setSkin("default");
drawable.getAnimationState().clearTracks(); drawable.getAnimationState().clearTracks();
if (oldSkin != null) drawable.getSkeleton().setSkin(oldSkin); if (oldSkin != null) drawable.getSkeleton().setSkin(oldSkin);
drawable.getSkeleton().setToSetupPose(); drawable.getSkeleton().setupPose();
drawable.update(0); drawable.update(0);
return new Bounds(minX, minY, maxX - minX, maxY - minY); return new Bounds(minX, minY, maxX - minX, maxY - minY);
} }