Skip to content

Commit

Permalink
fix: fixed PermissionAPI bind
Browse files Browse the repository at this point in the history
  • Loading branch information
engsr6982 committed Jan 15, 2025
1 parent 616717b commit 7030a0c
Show file tree
Hide file tree
Showing 3 changed files with 30 additions and 3 deletions.
18 changes: 18 additions & 0 deletions src/api/permissions/PermissionAPI.cc
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,28 @@
#include "api/permissions/PermissibleAPI.h"
#include "utils/Convert.h"
#include "utils/Defines.h"
#include "utils/Using.h"
#include <endstone/permissions/permission_default.h>

namespace jse {

ClassDefine<PermissionAPI> PermissionAPI::builder =
defineClass<PermissionAPI>("Permission")
.constructor(nullptr)
.instanceFunction("toString", &PermissionAPI::toString)
.instanceFunction("getName", &PermissionAPI::getName)
.instanceFunction("getChildren", &PermissionAPI::getChildren)
.instanceFunction("getDefault", &PermissionAPI::getDefault)
.instanceFunction("setDefault", &PermissionAPI::setDefault)
.instanceFunction("getDescription", &PermissionAPI::getDescription)
.instanceFunction("setDescription", &PermissionAPI::setDescription)
.instanceFunction("getPermissibles", &PermissionAPI::getPermissibles)
.instanceFunction("recalculatePermissibles", &PermissionAPI::recalculatePermissibles)
.instanceFunction("addParent", &PermissionAPI::addParent)
.instanceFunction("init", &PermissionAPI::init)
.build();


Local<Value> PermissionAPI::toString(Arguments const& /* args */) { return ConvertToScriptX("Permission"); }

Local<Value> PermissionAPI::getName(Arguments const& /* args */) {
Expand Down
3 changes: 3 additions & 0 deletions src/api/permissions/PermissionAPI.h
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@ class PermissionAPI : public ScriptClass {

endstone::Permission* get() { return mPermission; }

public:
METHODS(toString);
METHODS(getName);
METHODS(getChildren);
Expand All @@ -30,6 +31,8 @@ class PermissionAPI : public ScriptClass {
METHODS(recalculatePermissibles);
METHODS(addParent);
METHODS(init);

static ClassDefine<PermissionAPI> builder;
};


Expand Down
12 changes: 9 additions & 3 deletions src/manager/BindAPI.h
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@
#include "api/jse/FileAPI.h"
#include "api/jse/JSEAPI.h"
#include "api/permissions/PermissibleAPI.h"
#include "api/permissions/PermissionAPI.h"
#include "api/plugin/PluginAPI.h"
#include "api/plugin/PluginDescriptionAPI.h"
#include "utils/Using.h"
Expand All @@ -23,17 +24,22 @@ inline void BindAPI(ScriptEngine* engine) {

// static class
engine->registerNativeClass(JSEAPI::builder);
engine->registerNativeClass<FileAPI>(FileAPI::builder);

// instance class
engine->registerNativeClass<PluginAPI>(PluginAPI::builder);
engine->registerNativeClass<FileAPI>(FileAPI::builder);
engine->registerNativeClass<LoggerAPI>(LoggerAPI::builder);
engine->registerNativeClass<PluginDescriptionAPI>(PluginDescriptionAPI::builder);

engine->registerNativeClass<PermissibleAPI>(PermissibleAPI::builder);
engine->registerNativeClass<CommandSenderAPI>(CommandSenderAPI::builder);
engine->registerNativeClass<PermissionAPI>(PermissionAPI::builder);

engine->registerNativeClass<CommandAPI>(CommandAPI::builder);
engine->registerNativeClass<CommandSenderAPI>(CommandSenderAPI::builder);

engine->registerNativeClass<ActorAPI>(ActorAPI::builder);
engine->registerNativeClass<MobAPI>(MobAPI::builder);

engine->registerNativeClass<LoggerAPI>(LoggerAPI::builder);
engine->registerNativeClass<PlayerAPI>(PlayerAPI::builder);
}

Expand Down

0 comments on commit 7030a0c

Please sign in to comment.