From b36168bb14a22dab17a3b32eb6fdc1dba67a15e0 Mon Sep 17 00:00:00 2001 From: austin Date: Wed, 14 Aug 2024 12:58:44 -0400 Subject: [PATCH] strafing work --- assets/Models/creatures/person2/person2_1.glb | Bin 1700944 -> 1812576 bytes .../groundmove/ClientGroundMovementTree.java | 24 ++++++++--------- .../groundmove/ServerGroundMovementTree.java | 24 ++++++++--------- .../game/data/item/type/WeaponData.java | 25 ++++++++++++++++++ .../renderer/anim/Animation.java | 4 +-- 5 files changed, 51 insertions(+), 26 deletions(-) diff --git a/assets/Models/creatures/person2/person2_1.glb b/assets/Models/creatures/person2/person2_1.glb index a938faaaa5f208369177cb24527b0927412f3957..a3366ca4c8f36a721db913409862d60b66b2dc6f 100644 GIT binary patch delta 57238 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 delta 29278 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 diff --git a/src/main/java/electrosphere/entity/state/movement/groundmove/ClientGroundMovementTree.java b/src/main/java/electrosphere/entity/state/movement/groundmove/ClientGroundMovementTree.java index bb570205..010187fc 100644 --- a/src/main/java/electrosphere/entity/state/movement/groundmove/ClientGroundMovementTree.java +++ b/src/main/java/electrosphere/entity/state/movement/groundmove/ClientGroundMovementTree.java @@ -563,10 +563,10 @@ public class ClientGroundMovementTree implements BehaviorTree { rVal = Animation.ANIMATION_WALK_RIGHT; break; case FORWARD_LEFT: - rVal = Animation.ANIMATION_WALK_LEFT; + rVal = animationStartUp; break; case FORWARD_RIGHT: - rVal = Animation.ANIMATION_WALK_RIGHT; + rVal = animationStartUp; break; case BACKWARD_LEFT: rVal = Animation.ANIMATION_WALK_LEFT; @@ -591,10 +591,10 @@ public class ClientGroundMovementTree implements BehaviorTree { rVal = Animation.ANIMATION_WALK_RIGHT; break; case FORWARD_LEFT: - rVal = Animation.ANIMATION_WALK_LEFT; + rVal = animationMain; break; case FORWARD_RIGHT: - rVal = Animation.ANIMATION_WALK_RIGHT; + rVal = animationMain; break; case BACKWARD_LEFT: rVal = Animation.ANIMATION_WALK_LEFT; @@ -619,10 +619,10 @@ public class ClientGroundMovementTree implements BehaviorTree { rVal = Animation.ANIMATION_WALK_RIGHT; break; case FORWARD_LEFT: - rVal = Animation.ANIMATION_WALK_LEFT; + rVal = animationSlowDown; break; case FORWARD_RIGHT: - rVal = Animation.ANIMATION_WALK_RIGHT; + rVal = animationSlowDown; break; case BACKWARD_LEFT: rVal = Animation.ANIMATION_WALK_LEFT; @@ -654,10 +654,10 @@ public class ClientGroundMovementTree implements BehaviorTree { rVal = Animation.ANIMATION_WALK_RIGHT; break; case FORWARD_LEFT: - rVal = Animation.ANIMATION_WALK_LEFT; + rVal = animationStartUp; break; case FORWARD_RIGHT: - rVal = Animation.ANIMATION_WALK_RIGHT; + rVal = animationStartUp; break; case BACKWARD_LEFT: rVal = Animation.ANIMATION_WALK_LEFT; @@ -682,10 +682,10 @@ public class ClientGroundMovementTree implements BehaviorTree { rVal = Animation.ANIMATION_WALK_RIGHT; break; case FORWARD_LEFT: - rVal = Animation.ANIMATION_WALK_LEFT; + rVal = animationMain; break; case FORWARD_RIGHT: - rVal = Animation.ANIMATION_WALK_RIGHT; + rVal = animationMain; break; case BACKWARD_LEFT: rVal = Animation.ANIMATION_WALK_LEFT; @@ -710,10 +710,10 @@ public class ClientGroundMovementTree implements BehaviorTree { rVal = Animation.ANIMATION_WALK_RIGHT; break; case FORWARD_LEFT: - rVal = Animation.ANIMATION_WALK_LEFT; + rVal = animationSlowDown; break; case FORWARD_RIGHT: - rVal = Animation.ANIMATION_WALK_RIGHT; + rVal = animationSlowDown; break; case BACKWARD_LEFT: rVal = Animation.ANIMATION_WALK_LEFT; diff --git a/src/main/java/electrosphere/entity/state/movement/groundmove/ServerGroundMovementTree.java b/src/main/java/electrosphere/entity/state/movement/groundmove/ServerGroundMovementTree.java index f2f848ce..2936a606 100644 --- a/src/main/java/electrosphere/entity/state/movement/groundmove/ServerGroundMovementTree.java +++ b/src/main/java/electrosphere/entity/state/movement/groundmove/ServerGroundMovementTree.java @@ -551,10 +551,10 @@ public class ServerGroundMovementTree implements BehaviorTree { rVal = Animation.ANIMATION_WALK_RIGHT; break; case FORWARD_LEFT: - rVal = Animation.ANIMATION_WALK_LEFT; + rVal = animationStartUp; break; case FORWARD_RIGHT: - rVal = Animation.ANIMATION_WALK_RIGHT; + rVal = animationStartUp; break; case BACKWARD_LEFT: rVal = Animation.ANIMATION_WALK_LEFT; @@ -579,10 +579,10 @@ public class ServerGroundMovementTree implements BehaviorTree { rVal = Animation.ANIMATION_WALK_RIGHT; break; case FORWARD_LEFT: - rVal = Animation.ANIMATION_WALK_LEFT; + rVal = animationMain; break; case FORWARD_RIGHT: - rVal = Animation.ANIMATION_WALK_RIGHT; + rVal = animationMain; break; case BACKWARD_LEFT: rVal = Animation.ANIMATION_WALK_LEFT; @@ -607,10 +607,10 @@ public class ServerGroundMovementTree implements BehaviorTree { rVal = Animation.ANIMATION_WALK_RIGHT; break; case FORWARD_LEFT: - rVal = Animation.ANIMATION_WALK_LEFT; + rVal = animationMain; break; case FORWARD_RIGHT: - rVal = Animation.ANIMATION_WALK_RIGHT; + rVal = animationMain; break; case BACKWARD_LEFT: rVal = Animation.ANIMATION_WALK_LEFT; @@ -642,10 +642,10 @@ public class ServerGroundMovementTree implements BehaviorTree { rVal = Animation.ANIMATION_WALK_RIGHT; break; case FORWARD_LEFT: - rVal = Animation.ANIMATION_WALK_LEFT; + rVal = animationMain; break; case FORWARD_RIGHT: - rVal = Animation.ANIMATION_WALK_RIGHT; + rVal = animationMain; break; case BACKWARD_LEFT: rVal = Animation.ANIMATION_WALK_LEFT; @@ -670,10 +670,10 @@ public class ServerGroundMovementTree implements BehaviorTree { rVal = Animation.ANIMATION_WALK_RIGHT; break; case FORWARD_LEFT: - rVal = Animation.ANIMATION_WALK_LEFT; + rVal = animationMain; break; case FORWARD_RIGHT: - rVal = Animation.ANIMATION_WALK_RIGHT; + rVal = animationMain; break; case BACKWARD_LEFT: rVal = Animation.ANIMATION_WALK_LEFT; @@ -698,10 +698,10 @@ public class ServerGroundMovementTree implements BehaviorTree { rVal = Animation.ANIMATION_WALK_RIGHT; break; case FORWARD_LEFT: - rVal = Animation.ANIMATION_WALK_LEFT; + rVal = animationMain; break; case FORWARD_RIGHT: - rVal = Animation.ANIMATION_WALK_RIGHT; + rVal = animationMain; break; case BACKWARD_LEFT: rVal = Animation.ANIMATION_WALK_LEFT; diff --git a/src/main/java/electrosphere/game/data/item/type/WeaponData.java b/src/main/java/electrosphere/game/data/item/type/WeaponData.java index 1640e7a0..15dd14ef 100644 --- a/src/main/java/electrosphere/game/data/item/type/WeaponData.java +++ b/src/main/java/electrosphere/game/data/item/type/WeaponData.java @@ -11,13 +11,22 @@ public class WeaponData { //the class of weapon (ie sword, bow, etc) String weaponClass; + //the hitboxes associated with the weapon List hitboxes; + //the damage the weapon does int damage; + //the model for the projectile String projectileModel; + //The movespeed penalty applied when this weapon is used to perform an action + double weaponActionMovePenalty; + + //The base move penalty applied when having the weapon equipped in the first place + double weaponBaseMovePenalty; + /** * Gets the weapon class * @return the weapon class @@ -50,4 +59,20 @@ public class WeaponData { return damage; } + /** + * Gets the movement penalty (a percentage) applied when an action is performed with this weapon + * @return The movement penalty percentage (ie 0.7 means you should be 70% as fast) + */ + public double getWeaponActionMovePenalty(){ + return weaponActionMovePenalty; + } + + /** + * Gets the movement penalty (a percentage) applied when this weapon is equipped + * @return The movementy penalty percentage (ie a 0.7 means you should be 70% as fast) + */ + public double getWeaponBaseMovePenalty(){ + return weaponBaseMovePenalty; + } + } diff --git a/src/main/java/electrosphere/renderer/anim/Animation.java b/src/main/java/electrosphere/renderer/anim/Animation.java index 084b322e..3cba8385 100644 --- a/src/main/java/electrosphere/renderer/anim/Animation.java +++ b/src/main/java/electrosphere/renderer/anim/Animation.java @@ -29,8 +29,8 @@ public class Animation { public static final String ANIMATION_SPRINT_STARTUP = "RunStart"; public static final String ANIMATION_SPRINT = "Run"; public static final String ANIMATION_SPRINT_WINDDOWN = "RunStart"; - public static final String ANIMATION_WALK_RIGHT = "JogRight"; - public static final String ANIMATION_WALK_LEFT = "JogLeft"; + public static final String ANIMATION_WALK_RIGHT = "WalkStrafeRight"; + public static final String ANIMATION_WALK_LEFT = "WalkStrafeLeft";