feat(whip): separa draw_rect i damage_rect; sprites 80×32 / 16×96; feet_y delegat a l'owner; recover_* per al cooldown

This commit is contained in:
JailDesigner committed 2026-04-28 18:28:19 +02:00
1 parent 121558b1fd
commit 8f66961c7b
15 files changed
+353 -127

No files matched your search

+19 -8
View File
@@ -1,15 +1,26 @@
name: whip_attack
# Quatre sprites distints, un per cardinal. El sistema d'animació actual
# només permet UNA mida de frame per surface, i les hitboxes horitzontals
# (E/W: 48×16) i verticals (N/S: 16×48) tenen aspect ratios distints; per
# això són 4 fitxers en lloc d'una sola sheet compartida amb flips.
# Tots els .gif viuen al mateix directori que aquest YAML.
# només permet UNA mida de frame per surface, i els sprites del látigo
# tenen aspect ratios distints segons direcció. Per això són 4 fitxers
# en lloc d'una sola sheet compartida amb flips.
#
# Mides (= `draw_rect` del WhipAttack, que NO es retalla per
# bloquejadors):
# E/W → 80×32 px per frame: 16 px de wind-up darrere del jugador
# + 16 px de solapament + 48 px d'atac
# frontal. Cobreix tota l'altura del jugador.
# N/S → 16×96 px per frame: 48 px d'atac + 32 px solapant amb el jugador
# + 16 px de wind-up "darrere".
#
# La caja de DANY és independent i més petita (48×16 / 16×48), pegada
# al borde del jugador i retallada per murs/sarcs. La calcula
# `WhipAttack::configure` a partir del `owner_box` del payload.
sprites:
east: { path: whip_east.gif, size: [48, 16] }
west: { path: whip_west.gif, size: [48, 16] }
north: { path: whip_north.gif, size: [16, 48] }
south: { path: whip_south.gif, size: [16, 48] }
east: { path: whip_east.gif, size: [80, 32] }
west: { path: whip_west.gif, size: [80, 32] }
north: { path: whip_north.gif, size: [16, 96] }
south: { path: whip_south.gif, size: [16, 96] }
# Animació compartida entre les 4 direccions: la seqüència de frames i les
# durades són idèntiques; només canvia quina surface/mida es clipa.
Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.0 KiB

After

Width:  |  Height:  |  Size: 313 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.2 KiB

After

Width:  |  Height:  |  Size: 378 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.2 KiB

After

Width:  |  Height:  |  Size: 369 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.0 KiB

After

Width:  |  Height:  |  Size: 313 B