protected override void OnRemoteEntityAnimatorStateChanged(Packet_Entity_AnimatorStateChange packet) { if (this._monster.IsActive()) { base.OnRemoteEntityAnimatorStateChanged(packet); } }
public void AuthorityOnAnimatorStateChanged(AnimatorStateInfo fromState, AnimatorStateInfo toState) { if (!Miscs.ArrayContains <int>(this._muteSyncTagHashes, toState.tagHash)) { MPSendPacketContainer pc = Singleton <MPManager> .Instance.CreateSendPacket <Packet_Entity_AnimatorStateChange>(); Packet_Entity_AnimatorStateChange.StartPacket_Entity_AnimatorStateChange(pc.builder); Packet_Entity_AnimatorStateChange.AddNormalizedTimeTo(pc.builder, (fromState.shortNameHash != toState.shortNameHash) ? toState.normalizedTime : 0f); Packet_Entity_AnimatorStateChange.AddToStateHash(pc.builder, toState.shortNameHash); Packet_Entity_AnimatorStateChange.AddStateSync(pc.builder, EntityStateSync.CreateEntityStateSync(pc.builder, this._animatorEntity.XZPosition.x, this._animatorEntity.XZPosition.z, MPMiscs.ForwardToXZAngles(this._animatorEntity.FaceDirection))); pc.Finish <Packet_Entity_AnimatorStateChange>(Packet_Entity_AnimatorStateChange.EndPacket_Entity_AnimatorStateChange(pc.builder)); Singleton <MPManager> .Instance.SendStateUpdateToOthers(base.runtimeID, pc); } }
protected virtual void OnRemoteEntityAnimatorStateChanged(Packet_Entity_AnimatorStateChange packet) { this._animatorEntity.SyncAnimatorState(packet.ToStateHash, packet.NormalizedTimeTo); this._animatorEntity.SteerFaceDirectionTo(MPMiscs.XZAnglesToForward(packet.StateSync.XzAngle)); }