Revert "Refactor Damage to use Protoypes (#4262)"

This reverts commit 20bf5739a9.
This commit is contained in:
Silver
2021-08-24 00:50:39 -06:00
committed by Silver
parent 20bf5739a9
commit e708091518
121 changed files with 711 additions and 10237 deletions

View File

@@ -1,4 +1,4 @@
using System;
using System;
using System.Collections.Generic;
using Content.Server.Alert;
using Content.Shared.Alert;
@@ -14,7 +14,6 @@ using Robust.Shared.Players;
using Robust.Shared.Random;
using Robust.Shared.Serialization.Manager.Attributes;
using Robust.Shared.ViewVariables;
using Robust.Shared.Prototypes;
namespace Content.Server.Nutrition.Components
{
@@ -23,19 +22,6 @@ namespace Content.Server.Nutrition.Components
{
[Dependency] private readonly IRobustRandom _random = default!;
<<<<<<< HEAD
<<<<<<< refs/remotes/origin/master
=======
=======
>>>>>>> refactor-damageablecomponent
// TODO DAMAGE UNITS When damage units support decimals, get rid of this.
// See also _accumulatedDamage in ThirstComponent and HealthChange.
private float _accumulatedDamage;
<<<<<<< HEAD
>>>>>>> Refactor damageablecomponent update (#4406)
=======
>>>>>>> refactor-damageablecomponent
// Base stuff
[ViewVariables(VVAccess.ReadWrite)]
public float BaseDecayRate
@@ -43,15 +29,7 @@ namespace Content.Server.Nutrition.Components
get => _baseDecayRate;
set => _baseDecayRate = value;
}
<<<<<<< HEAD
<<<<<<< refs/remotes/origin/master
[DataField("base_decay_rate")]
=======
[DataField("baseDecayRate")]
>>>>>>> Refactor damageablecomponent update (#4406)
=======
[DataField("baseDecayRate")]
>>>>>>> refactor-damageablecomponent
private float _baseDecayRate = 0.1f;
[ViewVariables(VVAccess.ReadWrite)]
@@ -81,25 +59,11 @@ namespace Content.Server.Nutrition.Components
public Dictionary<HungerThreshold, float> HungerThresholds => _hungerThresholds;
private readonly Dictionary<HungerThreshold, float> _hungerThresholds = new()
{
<<<<<<< HEAD
<<<<<<< refs/remotes/origin/master
{HungerThreshold.Overfed, 600.0f},
{HungerThreshold.Okay, 450.0f},
{HungerThreshold.Peckish, 300.0f},
{HungerThreshold.Starving, 150.0f},
{HungerThreshold.Dead, 0.0f},
=======
=======
>>>>>>> refactor-damageablecomponent
{ HungerThreshold.Overfed, 600.0f },
{ HungerThreshold.Okay, 450.0f },
{ HungerThreshold.Peckish, 300.0f },
{ HungerThreshold.Starving, 150.0f },
{ HungerThreshold.Dead, 0.0f },
<<<<<<< HEAD
>>>>>>> Refactor damageablecomponent update (#4406)
=======
>>>>>>> refactor-damageablecomponent
};
public static readonly Dictionary<HungerThreshold, AlertType> HungerThresholdAlertTypes = new()
@@ -109,18 +73,6 @@ namespace Content.Server.Nutrition.Components
{ HungerThreshold.Starving, AlertType.Starving },
};
// TODO PROTOTYPE Replace this datafield variable with prototype references, once they are supported.
// Also remove Initialize override, if no longer needed.
[DataField("damageType")]
private readonly string _damageTypeID = "Blunt"!;
[ViewVariables(VVAccess.ReadWrite)]
public DamageTypePrototype DamageType = default!;
protected override void Initialize()
{
base.Initialize();
DamageType = IoCManager.Resolve<IPrototypeManager>().Index<DamageTypePrototype>(_damageTypeID);
}
public void HungerThresholdEffect(bool force = false)
{
if (_currentHungerThreshold != _lastHungerThreshold || force)
@@ -225,7 +177,6 @@ namespace Content.Server.Nutrition.Components
if (_currentHungerThreshold != HungerThreshold.Dead)
return;
// --> Current Hunger is below dead threshold
if (!Owner.TryGetComponent(out IDamageableComponent? damageable))
return;
@@ -235,24 +186,7 @@ namespace Content.Server.Nutrition.Components
if (!mobState.IsDead())
{
<<<<<<< HEAD
<<<<<<< refs/remotes/origin/master
damageable.ChangeDamage(DamageType.Blunt, 2, true);
=======
=======
>>>>>>> refactor-damageablecomponent
// --> But they are not dead yet.
var damage = 2 * frametime;
_accumulatedDamage += damage - ((int) damage);
damageable.TryChangeDamage(DamageType, (int) damage);
if (_accumulatedDamage >= 1) {
_accumulatedDamage -= 1;
damageable.TryChangeDamage(DamageType, 1, true);
}
<<<<<<< HEAD
>>>>>>> Refactor damageablecomponent update (#4406)
=======
>>>>>>> refactor-damageablecomponent
}
}