hud events update

This commit is contained in:
MihailRis 2024-02-19 04:22:27 +03:00
parent cac963bd7b
commit 9d82e3416b
4 changed files with 16 additions and 2 deletions

View File

@ -628,3 +628,7 @@ void Hud::setPause(bool pause) {
darkOverlay->setVisible(pause);
menu->setVisible(pause);
}
Player* Hud::getPlayer() const {
return frontend->getLevel()->player;
}

View File

@ -116,6 +116,8 @@ public:
void add(HudElement element);
void remove(HudElement& element);
void remove(std::shared_ptr<gui::UINode> node);
Player* getPlayer() const;
};
#endif /* SRC_HUD_H_ */

View File

@ -4,6 +4,8 @@
#include "lua/libhud.h"
#include "lua/LuaState.h"
#include "../../frontend/hud.h"
#include "../../objects/Player.h"
#include "../../files/files.h"
#include "../../engine.h"
@ -21,7 +23,8 @@ void scripting::on_frontend_init(Hud* hud) {
for (auto& pack : scripting::engine->getContentPacks()) {
if (state->getglobal(pack.id+".hudopen")) {
state->callNoThrow(0);
state->pushinteger(hud->getPlayer()->getId());
state->callNoThrow(1);
}
}
}
@ -30,7 +33,8 @@ void scripting::on_frontend_close() {
scripting::hud = nullptr;
for (auto& pack : scripting::engine->getContentPacks()) {
if (state->getglobal(pack.id+".hudclose")) {
state->callNoThrow(0);
state->pushinteger(hud->getPlayer()->getId());
state->callNoThrow(1);
}
}
}

View File

@ -70,6 +70,10 @@ public:
void deserialize(dynamic::Map *src) override;
static void convert(dynamic::Map* data, const ContentLUT* lut);
inline int getId() const {
return 1;
}
};
#endif /* SRC_OBJECTS_PLAYER_H_ */