Core/PacketIO: Updated most packet structures to 9.0.1
Port From (https://github.com/TrinityCore/TrinityCore/commit/cab4c87d2d7f6d734ef067d6bf50f4b1d338a7bc)
This commit is contained in:
@@ -51,6 +51,7 @@ namespace Game.Movement
|
||||
vertical_acceleration = 0.0f;
|
||||
effect_start_time = 0;
|
||||
spell_effect_extra = args.spellEffectExtra;
|
||||
anim_tier = args.animTier;
|
||||
splineIsFacingOnly = args.path.Length == 2 && args.facing.type != MonsterMoveType.Normal && ((args.path[1] - args.path[0]).GetLength() < 0.1f);
|
||||
|
||||
// Check if its a stop spline
|
||||
@@ -155,7 +156,7 @@ namespace Game.Movement
|
||||
}
|
||||
else
|
||||
{
|
||||
if (!splineflags.HasFlag(SplineFlag.OrientationFixed | SplineFlag.Falling | SplineFlag.Unknown0))
|
||||
if (!splineflags.HasFlag(SplineFlag.OrientationFixed | SplineFlag.Falling | SplineFlag.Unknown0x8))
|
||||
{
|
||||
Vector3 hermite;
|
||||
spline.Evaluate_Derivative(point_Idx, u, out hermite);
|
||||
@@ -309,6 +310,7 @@ namespace Game.Movement
|
||||
public int point_Idx;
|
||||
public int point_Idx_offset;
|
||||
public Optional<SpellEffectExtraData> spell_effect_extra;
|
||||
public Optional<AnimTierTransition> anim_tier;
|
||||
#endregion
|
||||
|
||||
public class CommonInitializer : IInitializer
|
||||
|
||||
@@ -29,7 +29,6 @@ namespace Game.Movement
|
||||
public bool IsSmooth() { return Flags.HasAnyFlag(SplineFlag.Catmullrom); }
|
||||
public bool IsLinear() { return !IsSmooth(); }
|
||||
|
||||
public byte GetAnimTier() { return animTier; }
|
||||
public bool HasAllFlags(SplineFlag f) { return (Flags & f) == f; }
|
||||
public bool HasFlag(SplineFlag f) { return (Flags & f) != 0; }
|
||||
|
||||
@@ -41,10 +40,10 @@ namespace Game.Movement
|
||||
Flags &= ~f;
|
||||
}
|
||||
|
||||
public void EnableAnimation(uint anim) { Flags = (Flags & ~(SplineFlag.MaskAnimations | SplineFlag.Falling | SplineFlag.Parabolic | SplineFlag.FallingSlow | SplineFlag.FadeObject)) | SplineFlag.Animation | ((SplineFlag)anim & SplineFlag.MaskAnimations); }
|
||||
public void EnableParabolic() { Flags = (Flags & ~(SplineFlag.MaskAnimations | SplineFlag.Falling | SplineFlag.Animation | SplineFlag.FallingSlow | SplineFlag.FadeObject)) | SplineFlag.Parabolic; }
|
||||
public void EnableAnimation() { Flags = (Flags & ~(SplineFlag.Falling | SplineFlag.Parabolic | SplineFlag.FallingSlow | SplineFlag.FadeObject)) | SplineFlag.Animation; }
|
||||
public void EnableParabolic() { Flags = (Flags & ~(SplineFlag.Falling | SplineFlag.Animation | SplineFlag.FallingSlow | SplineFlag.FadeObject)) | SplineFlag.Parabolic; }
|
||||
public void EnableFlying() { Flags = (Flags & ~SplineFlag.Falling) | SplineFlag.Flying; }
|
||||
public void EnableFalling() { Flags = (Flags & ~(SplineFlag.MaskAnimations | SplineFlag.Parabolic | SplineFlag.Animation | SplineFlag.Flying)) | SplineFlag.Falling; }
|
||||
public void EnableFalling() { Flags = (Flags & ~(SplineFlag.Parabolic | SplineFlag.Animation | SplineFlag.Flying)) | SplineFlag.Falling; }
|
||||
public void EnableCatmullRom() { Flags = (Flags & ~SplineFlag.SmoothGroundPath) | SplineFlag.Catmullrom; }
|
||||
public void EnableTransportEnter() { Flags = (Flags & ~SplineFlag.TransportExit) | SplineFlag.TransportEnter; }
|
||||
public void EnableTransportExit() { Flags = (Flags & ~SplineFlag.TransportEnter) | SplineFlag.TransportExit; }
|
||||
|
||||
@@ -285,7 +285,9 @@ namespace Game.Movement
|
||||
public void SetAnimation(AnimType anim)
|
||||
{
|
||||
args.time_perc = 0.0f;
|
||||
args.flags.EnableAnimation((byte)anim);
|
||||
args.animTier.emplace();
|
||||
args.animTier.AnimTier = anim;
|
||||
args.flags.EnableAnimation();
|
||||
}
|
||||
|
||||
public void SetFacing(Vector3 spot)
|
||||
|
||||
@@ -47,6 +47,7 @@ namespace Game.Movement
|
||||
public uint splineId;
|
||||
public float initialOrientation;
|
||||
public Optional<SpellEffectExtraData> spellEffectExtra;
|
||||
public Optional<AnimTierTransition> animTier;
|
||||
public bool walk;
|
||||
public bool HasVelocity;
|
||||
public bool TransformForTransport;
|
||||
@@ -92,4 +93,10 @@ namespace Game.Movement
|
||||
public uint ProgressCurveId;
|
||||
public uint ParabolicCurveId;
|
||||
}
|
||||
|
||||
public class AnimTierTransition
|
||||
{
|
||||
public uint TierTransitionId;
|
||||
public byte AnimTier;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user