You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
28 lines
871 B
28 lines
871 B
#pragma once |
|
|
|
#include <string_view> |
|
|
|
#include <expected.hpp> |
|
#include <function_ref.hpp> |
|
#include <sol/forward.hpp> |
|
|
|
namespace devilution { |
|
|
|
struct Player; |
|
struct Monster; |
|
|
|
void LuaInitialize(); |
|
void LuaReloadActiveMods(); |
|
void LuaShutdown(); |
|
void LuaEvent(std::string_view name); |
|
void LuaEvent(std::string_view name, const Player *player, int arg1, int arg2); |
|
void LuaEvent(std::string_view name, const Monster *monster, int arg1, int arg2); |
|
void LuaEvent(std::string_view name, const Player *player, uint32_t arg1); |
|
sol::state &GetLuaState(); |
|
sol::environment CreateLuaSandbox(); |
|
sol::object SafeCallResult(sol::protected_function_result result, bool optional); |
|
|
|
/** Adds a handler to be called when mods status changes after the initial startup. */ |
|
void AddModsChangedHandler(tl::function_ref<void()> callback); |
|
|
|
} // namespace devilution
|
|
|