void node_AnimationEnd(AnimatedMeshSceneNode node) { if (node == null) return; if (!list.ContainsKey(node.Name)) return; node.JointMode = JointUpdateOnRenderMode.None; AvatarAnimationData aad = list[node.Name].Animation; if (aad == null) return; if (AK.IsLoopAnimation(aad.Current)) node.LoopMode = true; }
public void AnimationEndHandler(AnimatedMeshSceneNode _node) { try { if (FrameSetList.ContainsKey(animationNext.Key)) { int startFrame = FrameSetList[animationNext.Key].StartFrame; int endFrame = FrameSetList[animationNext.Key].EndFrame; int animFramesPerSecond = FrameSetList[animationNext.Key].AnimationSpeed; AnimationSpeed = animFramesPerSecond; SetAnimation(animationNext.Key, startFrame, endFrame, animationNext.Loop); SyncToChilds(_node); } } finally { animationNext = Animation.Empty; } }
private void animeNode_AnimationEnd(AnimatedMeshSceneNode node) { VObject targetVObj = GetVObjectFromMeshRaw(node.Raw); if (targetVObj == null || targetVObj.MeshNode == null) return; Reference.Viewer.Adapter.CallAnimationEndEvent(userObject.AnimationCurrentName); if (userObject != null && userObject.MeshNode != null && userObject.MeshNode.Raw == targetVObj.MeshNode.Raw) { bool custAnim = false; foreach (UUID uuid in UtilityAnimation.CUSTOM_ANIMATIONS) custAnim = custAnim || StopAnimationIfIsKeyCurrentAnimation(uuid); if (custAnim) { } } if (!string.IsNullOrEmpty(targetVObj.AnimationNext.Key)) { StopAnimationIfIsKeyCurrentAnimation(targetVObj.CurrentAnimationUUID); SetAnimation(targetVObj, targetVObj.AnimationNext.Key); } }
public void AnimationEndHandler(AnimatedMeshSceneNode _node) { try { if (FrameSetList.ContainsKey(nextAnimation)) { int startFrame = FrameSetList[nextAnimation].StartFrame; int endFrame = FrameSetList[nextAnimation].EndFrame; int animFramesPerSecond = FrameSetList[nextAnimation].AnimationSpeed; AnimationSpeed = animFramesPerSecond; SetAnimation(nextAnimation, startFrame, endFrame, true); SyncToChilds(_node); VUtil.LogConsole(this.ToString(), "AnimationEndHandler: ContainsKey:" + nextAnimation + " Speed:" + animFramesPerSecond.ToString() + " Start:" + startFrame.ToString() + " End:" + endFrame.ToString()); } } finally { nextAnimation = string.Empty; } }