cirnogodot/Scripts/Components/FSM/3DPlayer/ShadowModule.cs

40 lines
917 B
C#
Raw Normal View History

2025-06-22 13:52:23 +02:00
using Cirno.Scripts.Components.Actors;
using Godot;
2025-06-11 17:30:53 +02:00
namespace Cirno.Scripts.Components.FSM._3DPlayer;
public partial class ShadowModule : ModuleBase<PlayerState, CharacterBody3D>
{
2025-06-22 13:52:23 +02:00
[Export] public ShadowProvider ShadowProvider { get; private set; }
2025-06-11 17:30:53 +02:00
private IStateMachine<PlayerState, CharacterBody3D> _machine;
private CharacterBody3D MainObject => _machine.MainObject;
public override void EnterState(PlayerState state)
{
2025-06-22 13:52:23 +02:00
ShadowProvider.Enable();
2025-06-11 17:30:53 +02:00
}
public override void ExitState(PlayerState state)
{
2025-06-22 13:52:23 +02:00
ShadowProvider.Disable();
2025-06-11 17:30:53 +02:00
}
public override void Init(IStateMachine<PlayerState, CharacterBody3D> machine)
{
_machine = machine;
2025-06-22 13:52:23 +02:00
ShadowProvider.Init(MainObject);
2025-06-11 17:30:53 +02:00
}
public override void Process(double delta)
{
}
public override void PhysicsProcess(double delta)
{
2025-06-22 13:52:23 +02:00
2025-06-11 17:30:53 +02:00
}
}