Revamp boss logic
This commit is contained in:
@@ -98,7 +98,7 @@ public class EffectService
|
||||
var currentEnemies = currentRoom.EnemiesInRoom;
|
||||
var hpToAbsorb = 0.0;
|
||||
foreach (var enemy in currentEnemies)
|
||||
hpToAbsorb += enemy.CurrentHP * 0.05;
|
||||
hpToAbsorb += enemy.CurrentHP.Value * 0.05;
|
||||
_player.Stats.SetCurrentHP(_player.Stats.CurrentHP.Value + (int)hpToAbsorb);
|
||||
GD.Print("HP to absorb: " + hpToAbsorb);
|
||||
}
|
||||
|
||||
@@ -31,8 +31,12 @@ public partial class ThrownItem : RigidBody3D
|
||||
private void ThrownItem_BodyEntered(Node body)
|
||||
{
|
||||
if (body is IEnemy enemy)
|
||||
{
|
||||
CalculateEffect(enemy);
|
||||
QueueFree();
|
||||
QueueFree();
|
||||
}
|
||||
else if (ItemThatIsThrown is ThrowableItem)
|
||||
QueueFree();
|
||||
}
|
||||
|
||||
public void Throw(EffectService effectService)
|
||||
@@ -85,7 +89,7 @@ public partial class ThrownItem : RigidBody3D
|
||||
switch (throwableItem.ThrowableItemTag)
|
||||
{
|
||||
case ThrowableItemTag.LowerTargetTo1HP:
|
||||
enemy.TakeDamage(enemy.CurrentHP - 1, ignoreDefense: true, ignoreElementalResistance: true);
|
||||
enemy.TakeDamage(enemy.CurrentHP.Value - 1, ignoreDefense: true, ignoreElementalResistance: true);
|
||||
break;
|
||||
case ThrowableItemTag.TeleportToRandomLocation:
|
||||
_effectService.TeleportToRandomRoom(enemy);
|
||||
@@ -99,6 +103,6 @@ public partial class ThrownItem : RigidBody3D
|
||||
}
|
||||
}
|
||||
else
|
||||
enemy.TakeDamage(((InventoryItem)ItemThatIsThrown).ThrowDamage);
|
||||
enemy.TakeDamage(ItemThatIsThrown.ThrowDamage);
|
||||
}
|
||||
}
|
||||
@@ -10,8 +10,8 @@ size = Vector3(0.46632, 0.507293, 0.586082)
|
||||
viewport_path = NodePath("Sprite3D/SubViewportContainer/SubViewport")
|
||||
|
||||
[node name="Hitbox" type="RigidBody3D"]
|
||||
collision_layer = 1040
|
||||
collision_mask = 25
|
||||
collision_layer = 3072
|
||||
collision_mask = 2049
|
||||
mass = 0.1
|
||||
gravity_scale = 0.2
|
||||
contact_monitor = true
|
||||
|
||||
Reference in New Issue
Block a user