Difference between revisions of "Plugin API"
Jump to navigation
Jump to search
m | |||
#include "plugin_api.h" | #include "plugin_api.h" | ||
#define PLUGIN_VERSION 1.0 | #define PLUGIN_VERSION 1.0 | ||
| + | std::string dtos( double n ) | ||
| + | { | ||
| + | std::ostringstream result; | ||
| + | result << n; | ||
| + | return result.str(); | ||
| + | } | ||
mineserver_pointer_struct* mineserver; | mineserver_pointer_struct* mineserver; | ||
| + | std::string pluginName = "command"; | ||
PLUGIN_API_EXPORT void (plugin_name)_init(mineserver_pointer_struct* mineserver_temp) | PLUGIN_API_EXPORT void (plugin_name)_init(mineserver_pointer_struct* mineserver_temp) | ||
{ | { | ||
mineserver = mineserver_temp; | mineserver = mineserver_temp; | ||
| − | if (mineserver->plugin.getPluginVersion | + | if (mineserver->plugin.getPluginVersion(pluginName.c_str(),pluginName.size()) > 0) |
{ | { | ||
| − | + | std::string msg="command is already loaded v." +dtos(mineserver->plugin.getPluginVersion(pluginName.c_str(),pluginName.size())); | |
| + | mineserver->screen.log(msg.c_str(),msg.size()); | ||
return; | return; | ||
} | } | ||
| − | + | std::string msg="Loaded "+pluginName+"!"; | |
| − | mineserver-> | + | mineserver->screen.log(msg.c_str(),msg.size()); |
| − | mineserver-> | + | mineserver->plugin.setPluginVersion(pluginName.c_str(),pluginName.size(), PLUGIN_COMMAND_VERSION); |
| + | std::string hookName="ChatPre"; | ||
| + | mineserver->callback.add_hook(hookName.c_str(),hookName.size(), (void *)SOMEFUNCTIONNAME); | ||
| + | hookName = "BlockPlacePre"; | ||
| + | mineserver->callback.add_hook(hookName.c_str(),hookName.size(), (void *)SOMEFUNCTIONNAME2); | ||
} | } | ||
PLUGIN_API_EXPORT void (plugin_name)_shutdown(void) | PLUGIN_API_EXPORT void (plugin_name)_shutdown(void) | ||
{ | { | ||
| − | if (mineserver->plugin.getPluginVersion | + | if (mineserver->plugin.getPluginVersion(pluginName.c_str(),pluginName.size()) <= 0) |
{ | { | ||
| − | + | std::string msg="command is not loaded!"; | |
| + | mineserver->screen.log(msg.c_str(),msg.size()); | ||
return; | return; | ||
} | } | ||
