X-Git-Url: https://git.verplant.org/?a=blobdiff_plain;f=src%2Fscripting%2Fwrapper.hpp;h=8f55ffc455bd9a1fd42003d6b2f86885a64c73e0;hb=470ce0c433a316972734787d4c065525b0a1f735;hp=dffd5ca2fb20dedfad867bf784241fa884047e08;hpb=2f9e19ce4e01dc769ae7b2a7129109e0e81a6b5b;p=supertux.git diff --git a/src/scripting/wrapper.hpp b/src/scripting/wrapper.hpp index dffd5ca2f..8f55ffc45 100644 --- a/src/scripting/wrapper.hpp +++ b/src/scripting/wrapper.hpp @@ -6,21 +6,22 @@ #ifndef __supertux_WRAPPER_H__ #define __supertux_WRAPPER_H__ -#include "wrapper_util.hpp" +#include +#include "wrapper.interface.hpp" -extern WrappedFunction supertux_global_functions[]; -extern WrappedClass supertux_classes[]; -extern WrappedConstant supertux_int_constants[]; -extern WrappedConstant supertux_float_constants[]; -extern WrappedConstant supertux_string_constants[]; - -static inline void register_supertux_wrapper(HSQUIRRELVM v) +namespace Scripting { - register_functions(v, supertux_global_functions); - register_classes(v, supertux_classes); - register_constants(v, supertux_int_constants); - register_constants(v, supertux_float_constants); - register_constants(v, supertux_string_constants); + +void register_supertux_wrapper(HSQUIRRELVM v); + +void create_squirrel_instance(HSQUIRRELVM v, Scripting::DisplayEffect* object, bool setup_releasehook = false); +void create_squirrel_instance(HSQUIRRELVM v, Scripting::Camera* object, bool setup_releasehook = false); +void create_squirrel_instance(HSQUIRRELVM v, Scripting::Level* object, bool setup_releasehook = false); +void create_squirrel_instance(HSQUIRRELVM v, Scripting::ScriptedObject* object, bool setup_releasehook = false); +void create_squirrel_instance(HSQUIRRELVM v, Scripting::Text* object, bool setup_releasehook = false); +void create_squirrel_instance(HSQUIRRELVM v, Scripting::Player* object, bool setup_releasehook = false); +void create_squirrel_instance(HSQUIRRELVM v, Scripting::FloatingImage* object, bool setup_releasehook = false); + } #endif