breakpoint

before change animation type
This commit is contained in:
CortexCore
2023-12-27 02:24:00 +08:00
parent 4adcd33811
commit 08cdf4d785
27 changed files with 3050 additions and 775 deletions

View File

@@ -38,23 +38,25 @@ namespace BITFALL.Movement.MotionBased
{
if (obj)
{
_override.RemoveOverride(-1);
//_override.RemoveOverride(-1);
animancerComponent.Layers[8].Stop();
}
else if( allowDeathAnimation)
{
animancerComponent.Layers[1].Stop();
_override.AddOverride(-1);
if (animationClips.TryGetValue("Death", out var clips) is false) return;
var state = animancerComponent.Layers[8].Play(clips.Random());
state.Events.OnEnd += OnEnd;
return;
void OnEnd()
{
_override.RemoveOverride(-1);
state.Events.OnEnd = null;
animancerComponent.Layers[8].Stop();
}
//animancerComponent.Layers[1].Stop();
Play("Death",false,8);
// _override.AddOverride(-1);
// if (animationClips.TryGetValue("Death", out var clips) is false) return;
// var state = animancerComponent.Layers[8].Play(clips.Random());
// state.Events.OnEnd += OnEnd;
// return;
// void OnEnd()
// {
// _override.RemoveOverride(-1);
// state.Events.OnEnd = null;
// animancerComponent.Layers[8].Stop();
// }
}
}
@@ -69,10 +71,11 @@ namespace BITFALL.Movement.MotionBased
// }
}
public void Play(string animationName)=>Play(animationName,false);
public void Play(string animationName, bool isAdditive)
public void Play(string animationName, bool isAdditive,int layer = -1)
{
if (animationClips.TryGetValue(animationName, out var clip) is false) return;
var layer = isAdditive ? 2 : 1;
layer = layer is -1 ? isAdditive ? 2 : 1 : layer;
if (string.IsNullOrEmpty(lastAnimationName) is false)
{
_override.RemoveOverride(lastAnimationName);
@@ -90,6 +93,7 @@ namespace BITFALL.Movement.MotionBased
{
state.Events.OnEnd = null;
animancerComponent.Layers[layer].Stop();
UnityEntity.Invoke(Constant.Animation.OnPlayEnd,animationName);
if (isAdditive is false)
_override.RemoveOverride(animationName);
}