X-Git-Url: https://git.verplant.org/?a=blobdiff_plain;f=src%2Fscripting%2Fwrapper.hpp;h=2143f4978da8936cda9384ec5fc33320d1dabed4;hb=c38774eb23527f0e99a3d90e023ade6074100144;hp=dffd5ca2fb20dedfad867bf784241fa884047e08;hpb=2f9e19ce4e01dc769ae7b2a7129109e0e81a6b5b;p=supertux.git diff --git a/src/scripting/wrapper.hpp b/src/scripting/wrapper.hpp index dffd5ca2f..2143f4978 100644 --- a/src/scripting/wrapper.hpp +++ b/src/scripting/wrapper.hpp @@ -6,21 +6,30 @@ #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); +void create_squirrel_instance(HSQUIRRELVM v, Scripting::Platform* object, bool setup_releasehook = false); +void create_squirrel_instance(HSQUIRRELVM v, Scripting::Candle* object, bool setup_releasehook = false); +void create_squirrel_instance(HSQUIRRELVM v, Scripting::Wind* object, bool setup_releasehook = false); +void create_squirrel_instance(HSQUIRRELVM v, Scripting::AmbientSound* object, bool setup_releasehook = false); +void create_squirrel_instance(HSQUIRRELVM v, Scripting::Thunderstorm* object, bool setup_releasehook = false); +void create_squirrel_instance(HSQUIRRELVM v, Scripting::TileMap* object, bool setup_releasehook = false); +void create_squirrel_instance(HSQUIRRELVM v, Scripting::SSector* object, bool setup_releasehook = false); +void create_squirrel_instance(HSQUIRRELVM v, Scripting::LevelTime* object, bool setup_releasehook = false); + } #endif