更新
This commit is contained in:
@@ -17,7 +17,6 @@ namespace Cielonos.MainGame.Characters
|
||||
|
||||
[TitleGroup("Data & Presets")]
|
||||
public List<FuncAnimData> fullBodyFuncAnims = new List<FuncAnimData>();
|
||||
public VFXData vfxData;
|
||||
public AttackData attackData;
|
||||
[HideInInspector]
|
||||
private List<string> registeredFunctionNames = new List<string>();
|
||||
@@ -35,7 +34,7 @@ namespace Cielonos.MainGame.Characters
|
||||
protected override void Start()
|
||||
{
|
||||
base.Start();
|
||||
vfxData.Initialize(this);
|
||||
|
||||
RegisterFullBodyFuncAnims();
|
||||
//RegisterFunctionsToAnimSc(LightAttack0);
|
||||
}
|
||||
@@ -49,16 +48,18 @@ namespace Cielonos.MainGame.Characters
|
||||
|
||||
public partial class Automata
|
||||
{
|
||||
public override bool GetHit(BreakthroughType breakthroughType,
|
||||
public override bool GetHit(BreakthroughType breakthroughType, out float recoveryTime,
|
||||
DisruptionType disruptionType = DisruptionType.NormalExternal, Vector3 direction = default)
|
||||
{
|
||||
if (base.GetHit(breakthroughType, disruptionType, direction))
|
||||
if (base.GetHit(breakthroughType, out recoveryTime, disruptionType, direction))
|
||||
{
|
||||
navMeshAgent.isStopped = true;
|
||||
statusSm.AddStatus(StatusType.Stun);
|
||||
getHitRecovery?.Dispose();
|
||||
getHitRecovery = Observable.Timer(TimeSpan.FromSeconds(1f)).Subscribe(_ =>
|
||||
getHitRecovery = Observable.Timer(TimeSpan.FromSeconds(recoveryTime)).Subscribe(_ =>
|
||||
{
|
||||
navMeshAgent.isStopped = false;
|
||||
statusSm.RemoveStatus(StatusType.Stun);
|
||||
}).AddTo(this);
|
||||
}
|
||||
|
||||
|
||||
@@ -52,7 +52,7 @@ namespace Cielonos.MainGame.Characters
|
||||
private void ThreeSwings_2() => GenerateSlash("ThreeSwings_2");
|
||||
private void ClawStabBlast()
|
||||
{
|
||||
GenerateBlast("ClawStabBlast", "ClawStabBlast", 6);
|
||||
GenerateClawStabBlast("ClawStabBlast", "ClawStabBlast", 25);
|
||||
feedbackSc["ImpaleWave_Stab"].Play();
|
||||
}
|
||||
|
||||
@@ -64,7 +64,7 @@ namespace Cielonos.MainGame.Characters
|
||||
|
||||
private void JumpAttackBlast()
|
||||
{
|
||||
GenerateBlast("JumpAttackBlast", "JumpAttackBlast", 30);
|
||||
GenerateJumpAttackBlast("JumpAttackBlast", "JumpAttackBlast", 40);
|
||||
feedbackSc["JumpAttack_Blast"].Play();
|
||||
}
|
||||
|
||||
@@ -125,7 +125,19 @@ namespace Cielonos.MainGame.Characters
|
||||
slash.hitSm.AddHitSound("GeneralHit");
|
||||
}
|
||||
|
||||
private void GenerateBlast(string vfxName, string attackDataName, float force)
|
||||
private void GenerateClawStabBlast(string vfxName, string attackDataName, float force)
|
||||
{
|
||||
NormalArea slash = vfxData.SpawnVFX(vfxName).GetComponentInChildren<NormalArea>();
|
||||
slash.Initialize<NormalArea>(this, null, Fraction.Player)
|
||||
.SetAttackSubmodule<NormalArea>(attackData[attackDataName])
|
||||
.SetTimeSubmodule<NormalArea>(1.2f)
|
||||
.SetHitSubmodule<NormalArea>()
|
||||
.SetForceSubmodule<NormalArea>(transform.forward * force)
|
||||
.SetReactionSubmodule<NormalArea>(false, false, false, true, true, false);
|
||||
}
|
||||
|
||||
|
||||
private void GenerateJumpAttackBlast(string vfxName, string attackDataName, float force)
|
||||
{
|
||||
NormalArea slash = vfxData.SpawnVFX(vfxName).GetComponentInChildren<NormalArea>();
|
||||
slash.Initialize<NormalArea>(this, null, Fraction.Player)
|
||||
@@ -143,7 +155,7 @@ namespace Cielonos.MainGame.Characters
|
||||
.SetAttackSubmodule<NormalArea>(attackData["ImpaleWave"])
|
||||
.SetTimeSubmodule<NormalArea>(3f, 0.2f, 1.3f)
|
||||
.SetHitSubmodule<NormalArea>()
|
||||
.SetForceSubmodule<NormalArea>(16f, true)
|
||||
.SetForceSubmodule<NormalArea>(transform.forward * 30f)
|
||||
.SetReactionSubmodule<NormalArea>(false, false, false, true, true, false);
|
||||
|
||||
slash.transform.DOLocalMoveZ(8f, 0.8f).From(0f).Play();
|
||||
|
||||
Reference in New Issue
Block a user