Веб-сайт самохостера Lotigara

summaryrefslogtreecommitdiff
path: root/source/game/scripting/StarPlayerLuaBindings.cpp
diff options
context:
space:
mode:
authoremmaker <emmaker@myyahoo.com>2025-06-02 16:21:32 -0400
committeremmaker <emmaker@myyahoo.com>2025-06-02 16:21:32 -0400
commitfde429d1a7a6e6c583418690b286e062de72ad2d (patch)
treedd386094aba2fa41ba6262d3984d0262d9ac1096 /source/game/scripting/StarPlayerLuaBindings.cpp
parentbb328ef289fc48743d38a3061d854bc65ce84baa (diff)
Add codex bindings to player table
Diffstat (limited to 'source/game/scripting/StarPlayerLuaBindings.cpp')
-rwxr-xr-xsource/game/scripting/StarPlayerLuaBindings.cpp25
1 files changed, 25 insertions, 0 deletions
diff --git a/source/game/scripting/StarPlayerLuaBindings.cpp b/source/game/scripting/StarPlayerLuaBindings.cpp
index ea2bae5..833d718 100755
--- a/source/game/scripting/StarPlayerLuaBindings.cpp
+++ b/source/game/scripting/StarPlayerLuaBindings.cpp
@@ -743,6 +743,31 @@ LuaCallbacks LuaBindings::makePlayerCallbacks(Player* player) {
player->log()->removeScannedObject(objectName);
});
+ // codex bindings
+ callbacks.registerCallback("isCodexKnown", [player](String const& codexId) -> bool {
+ return player.codexes()->codexKnown(codexId);
+ });
+
+ callbacks.registerCallback("isCodexRead", [player](String const& codexId) -> bool {
+ return player->codexes()->codexRead(codexId);
+ });
+
+ callbacks.registerCallback("markCodexRead", [player](String const& codexId) -> bool {
+ return player->codexes()->markCodexRead(codexId);
+ });
+
+ callbacks.registerCallback("markCodexUnread", [player](String const& codexId) -> bool {
+ return player->codexes()->markCodexUnread(codexId);
+ });
+
+ callbacks.registerCallback("learnCodex", [player](String const& codexId, bool markRead) {
+ player->codexes()->learnCodex(codexId, markRead);
+ });
+
+ callbacks.registerCallback("getCodexes", [player]() -> Json {
+ return player->codexes()->toJson();
+ });
+
return callbacks;
}