From 920f3912de8f49ad47da466044726d5dc5e31973 Mon Sep 17 00:00:00 2001 From: austin Date: Tue, 6 Aug 2024 13:27:44 -0400 Subject: [PATCH] attack animation sounds --- assets/Audio/weapons/swoosh-03.ogg | Bin 0 -> 15355 bytes assets/Data/creatures/human.json | 103 +++++++---- docs/src/progress/currenttarget.md | 9 + docs/src/progress/renderertodo.md | 1 + .../java/electrosphere/engine/Globals.java | 3 +- .../entity/btree/StateTransitionUtil.java | 3 +- .../entity/state/attack/ClientAttackTree.java | 134 +++++++++----- .../entity/state/attack/ServerAttackTree.java | 172 ++++++++++++------ .../creature/type/CreatureDataValidator.java | 15 +- .../data/creature/type/attack/AttackMove.java | 41 +++-- 10 files changed, 319 insertions(+), 162 deletions(-) create mode 100644 assets/Audio/weapons/swoosh-03.ogg diff --git a/assets/Audio/weapons/swoosh-03.ogg b/assets/Audio/weapons/swoosh-03.ogg new file mode 100644 index 0000000000000000000000000000000000000000..f4f0d70f183113f53b8a670fdfddffb3d3a28a2d GIT binary patch literal 15355 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