diff --git a/ReallifeGamemode.Client/util/animationSync.ts b/ReallifeGamemode.Client/util/animationSync.ts index c99fb048..37631a71 100644 --- a/ReallifeGamemode.Client/util/animationSync.ts +++ b/ReallifeGamemode.Client/util/animationSync.ts @@ -67,20 +67,22 @@ export default function animationSync() { }, 100); mp.events.addDataHandler("AnimationData", (entity: PlayerMp, string) => { + entity.clearTasksImmediately(); + if (string == null) { - entity.clearTasksImmediately(); return; } let index = mp.game.joaat(string); - let animData = animationSyncData.animations[index]; - if (!animData) return; + if (!animationSyncData.animations.hasOwnProperty(index)) return; + + let animData = animationSyncData.animations[index]; let { id, name, animDict, animName, duration, loop, flag } = animData; loadAnimDict(animDict, function () { - mp.players.exists(entity) && 0 !== entity.handle && entity.taskPlayAnim(animDict, animName, 1, 0, duration, parseInt(flag), 0, !1, !1, !1) + mp.players.exists(entity) && 0 !== entity.handle && entity.taskPlayAnim(animDict, animName, 8, 1, duration, parseInt(flag), 0, !1, !1, !1) }); let pair = pairData.find(pair => pair.from == string); @@ -88,7 +90,6 @@ export default function animationSync() { return; let a = setInterval(function () { - entity.clearTasksImmediately(); mp.events.callRemote("CLIENT:AnimPairTransition", entity, pair.transitionTo); clearInterval(a); }, duration);