mirror of
https://github.com/DarkflameUniverse/DarkflameServer.git
synced 2024-12-23 14:03:34 +00:00
38 lines
878 B
C
38 lines
878 B
C
|
#ifndef AGSPIDERBOSSMESSAGE_H
|
||
|
#define AGSPIDERBOSSMESSAGE_H
|
||
|
|
||
|
#include "CppScripts.h"
|
||
|
|
||
|
struct Box {
|
||
|
LWOOBJID boxTarget{};
|
||
|
bool isDisplayed{};
|
||
|
bool isTouch{};
|
||
|
bool isFirst{};
|
||
|
LWOOBJID boxSelf{};
|
||
|
std::u16string boxText{};
|
||
|
int32_t boxTime{ 1 };
|
||
|
|
||
|
void Reset() {
|
||
|
boxTarget = LWOOBJID_EMPTY;
|
||
|
isDisplayed = false;
|
||
|
isTouch = false;
|
||
|
isFirst = false;
|
||
|
boxSelf = LWOOBJID_EMPTY;
|
||
|
boxText.clear();
|
||
|
boxTime = 1;
|
||
|
}
|
||
|
};
|
||
|
|
||
|
class AgSpiderBossMessage : public CppScripts::Script {
|
||
|
public:
|
||
|
Box GetBox(Entity* self) const;
|
||
|
void SetBox(Entity* self, const Box& box) const;
|
||
|
void MakeBox(Entity* self) const;
|
||
|
void OnCollisionPhantom(Entity* self, Entity* target) override;
|
||
|
void OnOffCollisionPhantom(Entity* self, Entity* target) override;
|
||
|
void OnTimerDone(Entity* self, std::string timerName) override;
|
||
|
void ResetBox(Entity* self) const;
|
||
|
};
|
||
|
|
||
|
#endif //!AGSPIDERBOSSMESSAGE_H
|