In progress changes for saving enemy defeated data
This commit is contained in:
@@ -26,6 +26,8 @@ public abstract partial class Enemy : CharacterBody3D, IEnemy, IProvide<IEnemyLo
|
||||
[Dependency] protected IPlayer _player => this.DependOn(() => GetParent().GetChildren().OfType<IPlayer>().Single());
|
||||
|
||||
[Dependency] protected IGameRepo _gameRepo => this.DependOn<IGameRepo>();
|
||||
|
||||
[Dependency] public IGame _game => this.DependOn<IGame>();
|
||||
#endregion
|
||||
|
||||
public IHealthComponent HealthComponent { get; private set; }
|
||||
@@ -177,7 +179,7 @@ public abstract partial class Enemy : CharacterBody3D, IEnemy, IProvide<IEnemyLo
|
||||
_hitSFX.Play();
|
||||
}
|
||||
|
||||
public virtual void Die()
|
||||
public virtual async void Die()
|
||||
{
|
||||
SetPhysicsProcess(false);
|
||||
_rustDuration.Stop();
|
||||
@@ -188,6 +190,8 @@ public abstract partial class Enemy : CharacterBody3D, IEnemy, IProvide<IEnemyLo
|
||||
_hitSFX.Play();
|
||||
_dieSFX.Play();
|
||||
_gameRepo.OnEnemyDied(this);
|
||||
IncrementDefeatCount();
|
||||
await _game.Save();
|
||||
var tweener = CreateTween();
|
||||
tweener.TweenInterval(1.0f);
|
||||
tweener.TweenCallback(Callable.From(QueueFree));
|
||||
@@ -290,4 +294,14 @@ public abstract partial class Enemy : CharacterBody3D, IEnemy, IProvide<IEnemyLo
|
||||
{
|
||||
StatusEffectComponent.Rust.OnNext(false);
|
||||
}
|
||||
|
||||
public virtual void IncrementDefeatCount()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
public int GetDefeatCount(IEnemy enemyType)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user