#pragma once
#include "Entity.h"
#include "EntityStateGravity.h"
#include "EntityStateResist.h"
#include "EntityStateSplash.h"
#include "CS_Enemy_BehemothFrontDmgRect.h"
#define CS_ENEMY_BEHEMOTH_CREATENAME L"CS_enemy_behemoth"
//µÐÈË£ººÓÂíÅ£
class CS_Enemy_Behemoth :
    public Entity
{
public:
    CS_Enemy_Behemoth();
    void Init(std::weak_ptr<Entity> self) override;
    void Step() override;
    void SetState(int stateID, int lr) override;
    bool Hurt(std::weak_ptr<Entity> src, int getDamage, float angle, bool bTakedown, int elemType, float shockForce, float heavy, int* outRealDamage) override;
    void Destroy() override;
    EntityStateGravity stateGravity;
    EntityStateResist stateResist;
    EntityStateSplash stateSplash;
    std::weak_ptr<CS_Enemy_BehemothFrontDmgRect> atkZone;
    int act_no = 0;
    int ani_wait = 0;
    int count1 = 0;
    int damage = 1;
};

std::shared_ptr<Entity> CreateCS_Enemy_Behemoth();