game2006/server/gameserver/btcontext.h
aozhiwei ab8db13131 1
2023-06-21 23:06:22 +08:00

20 lines
504 B
C++

#pragma once
class BaseAgent;
class BtEvent;
struct EventHandlerPtr;
struct BtContext : public std::enable_shared_from_this<BtContext>
{
public:
CreatureWeakPtr owner;
std::vector<std::shared_ptr<BtEvent>> events;
std::vector<std::tuple<CreatureWeakPtr, std::weak_ptr<EventHandlerPtr>>> handlers;
virtual ~BtContext();
void AddHandler(CreatureWeakPtr target, std::weak_ptr<EventHandlerPtr> handler);
std::weak_ptr<BtContext> GetWp() { return shared_from_this();};
private:
};