stage adjustments, damage VFX adjustments
This commit is contained in:
@@ -170,7 +170,7 @@ public partial class Player : CharacterBody3D, IPlayer, IProvide<IPlayer>
|
||||
LuckComponent = new LuckComponent(InitialLuck);
|
||||
EquipmentComponent = new EquipmentComponent();
|
||||
StatusEffectComponent = new StatusEffectComponent(RustDuration);
|
||||
SigilComponent = new SigilComponent();
|
||||
SigilComponent = new SigilComponent();
|
||||
|
||||
_itemReroller = new ItemReroller(ItemDatabase.Instance);
|
||||
_playerEffectService = new PlayerEffectService(this);
|
||||
@@ -204,7 +204,7 @@ public partial class Player : CharacterBody3D, IPlayer, IProvide<IPlayer>
|
||||
ExperiencePointsComponent.Reset();
|
||||
LuckComponent.Reset();
|
||||
EquipmentComponent.Reset();
|
||||
SigilComponent.Reset();
|
||||
SigilComponent.Reset();
|
||||
|
||||
HealthTimer.Timeout += OnHealthTimerTimeout;
|
||||
}
|
||||
@@ -297,7 +297,7 @@ public partial class Player : CharacterBody3D, IPlayer, IProvide<IPlayer>
|
||||
|
||||
_camera3D.AddShake(1.0f);
|
||||
TakeDamageAnimationPlayer.Play("take_damage");
|
||||
var defense = TotalDefense * SigilComponent.Sigil.DefenseModifier;
|
||||
var defense = TotalDefense * SigilComponent.Sigil.DefenseModifier;
|
||||
var damageReceived = DamageCalculator.CalculateDamage(damage, defense, EquipmentComponent.ElementalResistance);
|
||||
HealthComponent.Damage(damageReceived, damage.ElementType);
|
||||
SfxDatabase.Instance.Play(SoundEffect.TakeDamage);
|
||||
@@ -311,7 +311,7 @@ public partial class Player : CharacterBody3D, IPlayer, IProvide<IPlayer>
|
||||
|
||||
public void SetSigil(ISigil sigil)
|
||||
{
|
||||
SigilComponent.Sigil = sigil;
|
||||
SigilComponent.Sigil = sigil;
|
||||
}
|
||||
|
||||
public void Knockback(float impulse)
|
||||
@@ -910,12 +910,12 @@ public partial class Player : CharacterBody3D, IPlayer, IProvide<IPlayer>
|
||||
var isCriticalHit = BattleExtensions.IsCriticalHit(TotalLuck);
|
||||
var totalDamage = TotalAttack;
|
||||
|
||||
if (SigilComponent.Sigil.ElementType == weapon.WeaponElement)
|
||||
totalDamage = Mathf.RoundToInt(totalDamage * 1.15f);
|
||||
if (SigilComponent.Sigil.ElementType == weapon.WeaponElement)
|
||||
totalDamage = Mathf.RoundToInt(totalDamage * 1.15f);
|
||||
|
||||
totalDamage = Mathf.RoundToInt(totalDamage * SigilComponent.Sigil.AttackModifier);
|
||||
totalDamage = Mathf.RoundToInt(totalDamage * SigilComponent.Sigil.AttackModifier);
|
||||
|
||||
if (isCriticalHit)
|
||||
if (isCriticalHit)
|
||||
{
|
||||
totalDamage += (int)(totalDamage * 0.5f);
|
||||
SfxDatabase.Instance.Play(SoundEffect.Crit);
|
||||
@@ -923,7 +923,7 @@ public partial class Player : CharacterBody3D, IPlayer, IProvide<IPlayer>
|
||||
|
||||
var baseAttack = new AttackData(totalDamage, weapon.WeaponElement, weapon.WeaponTag == WeaponTag.IgnoreDefense, weapon.WeaponTag == WeaponTag.IgnoreAffinity);
|
||||
|
||||
var damageDealt = DamageCalculator.CalculateDamage(baseAttack, enemy.DefenseComponent.CurrentDefense.Value, enemy.ElementalResistanceSet);
|
||||
var damageDealt = DamageCalculator.CalculateDamage(baseAttack, enemy.DefenseComponent.CurrentDefense.Value, enemy.ElementalResistanceSet);
|
||||
enemy.HealthComponent.Damage(damageDealt, weapon.WeaponElement);
|
||||
|
||||
if (weapon.WeaponTag == WeaponTag.Knockback && enemy is IKnockbackable knockbackable)
|
||||
|
||||
Reference in New Issue
Block a user