Bu iki FiniteStateMachine.AddState()
yönteminden hangisinin diğerinden daha iyi olduğunu bilmek istiyorum; örneğin, bir kutulama/kutulama gerektiriyor mu? veya her ikisini de kutulama/kutulama gerektirir mi? ve eğer biri diğerinden daha iyi ise, hangisi? IState
yanaBu yaklaşımlardan hangisi daha iyi veya aynı mı?
public interface IState
{
string Name { get; set; }
}
public sealed class FiniteStateMachine
{
private Dictionary<string, IState> allStates = new Dictionary<string, IState>();
public void AddState<TState>(TState newState) where TState : IState
{
allStates.Add(newState.Name, newState);
}
public void AddState(IState newState)
{
allStates.Add(newState.Name, newState);
}
}
public class EnemySoldierSword_TakingHitState : IState
{
public string Name { get; set; }
public EnemySoldierSword_TakingHitState(string name)
{
Name = name;
}
}
public class Program
{
public var FSM = new FiniteStateMachine();
FSM.AddState(new EnemySoldierSword_ChasingState("ChasingState"));
}
Gördüğünüz gibi, bir fark var, ama bu bağlamda bu fark önemli değil, bildiğim çok şey sayesinde teşekkürler, teşekkürler – Lunatrap