#pragma once
#include "Entity.h"
//Íæ¼ÒÓÃ
class CS_AmBubbleBeam :
    public ActionEntity
{
public:
    CS_AmBubbleBeam(std::shared_ptr<Entity> parent, int level, void(*RemoveFromAmList)(std::weak_ptr<Entity>, std::weak_ptr<CS_AmBubbleBeam>));
    void Step() override;
    void Attack(std::weak_ptr<Entity> dst, int* outDamage, float* outAngle, bool* outTakedown, int* outElemType, float* outShockForce, float* outHeavy) override;
    void Destroy() override;
    void Feedback(std::weak_ptr<Entity> target) override;
    void AttackEffectObject(std::weak_ptr<Entity> target, float centerX, float centerY, int realDamage) override;
    void Collision() override;//Ö´ÐÐÅö×²
    void SetCbRect_Entity();
    void SetCbRect_Collision();
    void(*RemoveFromAmList)(std::weak_ptr<Entity> parent, std::weak_ptr<CS_AmBubbleBeam> am) = nullptr;
    int level = 0;
};

