日志2025.2.1

日志2025.2.1
1.做了敌人状态机
public class EnermyStateMachine
{
    public EnermyState currentState { get; private set; }

    public void InitializeState(EnermyState startState)
    {
        currentState = startState;
        currentState.Enter();
    }

    public void ChangeState(EnermyState newState)
    {
        currentState.Exit();
        currentState = newState;
        currentState.Enter();
    }

}


2.简略做了近战敌人
public class EnermyStateMachine
{
    public EnermyState currentState { get; private set; }

    public void InitializeState(EnermyState startState)
    {
        currentState = startState;
        currentState.Enter();
    }

    public void ChangeState(EnermyState newState)
    {
        currentState.Exit();
        currentState = newState;
        currentState.Enter();
    }

}

public class MoveState_Melee : EnermyState
{
    private Enermy_Melee enermy;
    private Vector3 destination;

    public MoveState_Melee(Enermy enermyBase, EnermyStateMachine stateMachine, string animBoolName) : base(enermyBase, stateMachine, animBoolName)
    {
        enermy = (Enermy_Melee)enermyBase;
    }

    public override void Enter()
    {
        base.Enter();

        destination = enermy.GetPatrolDestination();
        enermy.agent.destination = destination;

    }

    public override void Exit()
    {
        base.Exit();
    }

    public override void Update()
    {
        base.Update();
    }
}

你可能感兴趣的:(unity,算法,游戏程序)