33 lines
505 B
C++
33 lines
505 B
C++
#pragma once
|
|
|
|
#include "aicomponent.h"
|
|
|
|
enum AndroidState_e
|
|
{
|
|
AS_thinking,
|
|
AS_moving,
|
|
AS_attack,
|
|
AS_moving_and_attack,
|
|
};
|
|
|
|
class Human;
|
|
class AndroidAI : public AIComponent
|
|
{
|
|
public:
|
|
AndroidState_e state = AS_thinking;
|
|
int state_elapsed_time = 0;
|
|
Human* last_hiter = nullptr;
|
|
|
|
virtual void Update(int delta_time) override;
|
|
|
|
private:
|
|
|
|
void ChangeToState(AndroidState_e to_state);
|
|
|
|
void DoThink();
|
|
void DoMove();
|
|
void DoAttack();
|
|
void DoMoveAndAttack();
|
|
|
|
};
|