cirnogodot/Scripts/Components/FSM/PlayerStateMachine.cs
2025-03-31 18:28:33 +02:00

35 lines
824 B
C#

using System;
using Cirno.Scripts.Components.Actors;
using Godot;
namespace Cirno.Scripts.Components.FSM;
public partial class PlayerStateMachine : StateMachineBase<PlayerState, CharacterBody2D>
{
[Export] public override PlayerState InitialState { get; protected set; } = PlayerState.Init;
[Export] public Vector2 StartingDirection { get; set; } = Vector2.Down;
[Export] public ActorResourceProvider MotivationResource { get; private set; }
public void RefillHealth()
{
GD.Print("Refilling health");
}
public void RefilleShield()
{
GD.Print("Refilling shield");
}
public void NoClip()
{
GD.Print("NoClip");
}
public void AddMotivation(float motivation)
{
MotivationResource.CurrentResource += motivation;
}
}