two enemy types, ready to refactor
This commit is contained in:
@@ -2,11 +2,12 @@ using System;
|
||||
using Godot;
|
||||
using GodotStateCharts;
|
||||
using Movementtests.addons.godot_state_charts.csharp;
|
||||
using Movementtests.interfaces;
|
||||
using Movementtests.systems;
|
||||
using Movementtests.player_controller.Scripts;
|
||||
using RustyOptions;
|
||||
|
||||
public partial class PlayerController : CharacterBody3D
|
||||
public partial class PlayerController : CharacterBody3D, IDamageable, IKnockbackable
|
||||
{
|
||||
// Enums
|
||||
public enum AllowedInputs
|
||||
@@ -1580,14 +1581,13 @@ public partial class PlayerController : CharacterBody3D
|
||||
ThrowWeapon();
|
||||
}
|
||||
|
||||
if (WeaponSystem.InHandState.Active)
|
||||
if (!WeaponSystem.InHandState.Active) return;
|
||||
|
||||
var bodies = WeaponHitbox.GetOverlappingBodies();
|
||||
foreach (var body in bodies)
|
||||
{
|
||||
var bodies = WeaponHitbox.GetOverlappingBodies();
|
||||
foreach (var body in bodies)
|
||||
{
|
||||
if(body is ISpawnable spawnable)
|
||||
spawnable.TestMethod();
|
||||
}
|
||||
if(body is IDamageable spawnable)
|
||||
spawnable.TakeDamage();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1741,4 +1741,9 @@ public partial class PlayerController : CharacterBody3D
|
||||
DashIndicatorNode.LookAt(WeaponSystem.GlobalPosition);
|
||||
}
|
||||
}
|
||||
|
||||
public void TakeDamage()
|
||||
{
|
||||
GD.Print("Ouch!");
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user