commit 19fc59cd44ec20d90d80966193ba5708df42b8d1 Author: Alexander Medvedev Date: Wed Apr 29 13:42:26 2026 +0200 first commit diff --git a/.gitmodules b/.gitmodules new file mode 100644 index 0000000..8c10b5b --- /dev/null +++ b/.gitmodules @@ -0,0 +1,3 @@ +[submodule "wit/repo"] + path = wit/repo + url = https://github.com/Pumpkin-MC/Pumpkin.git diff --git a/api/api.go b/api/api.go new file mode 100644 index 0000000..0dbe36e --- /dev/null +++ b/api/api.go @@ -0,0 +1,40 @@ +package api + +import ( + "github.com/Pumpkin-MC/pumpkin-api-go/pkg/pumpkin_plugin_command" + "github.com/Pumpkin-MC/pumpkin-api-go/pkg/pumpkin_plugin_context" + "github.com/Pumpkin-MC/pumpkin-api-go/pkg/pumpkin_plugin_event" + "github.com/Pumpkin-MC/pumpkin-api-go/pkg/pumpkin_plugin_metadata" + "github.com/Pumpkin-MC/pumpkin-api-go/pkg/pumpkin_plugin_server" +) + +type Metadata = pumpkin_plugin_metadata.PluginMetadata + +type Plugin interface { + Metadata() Metadata + OnLoad(ctx *pumpkin_plugin_context.Context) + OnUnload(ctx *pumpkin_plugin_context.Context) + HandleEvent(eventId uint32, server *pumpkin_plugin_server.Server, event pumpkin_plugin_event.Event) pumpkin_plugin_event.Event + HandleCommand(commandId uint32, sender *pumpkin_plugin_command.CommandSender, server *pumpkin_plugin_server.Server, args *pumpkin_plugin_command.ConsumedArgs) int32 +} + +var instance Plugin + +func RegisterPlugin(p Plugin) { + instance = p +} + +func GetInstance() Plugin { + return instance +} + +type DefaultPlugin struct{} + +func (p *DefaultPlugin) OnLoad(ctx *pumpkin_plugin_context.Context) {} +func (p *DefaultPlugin) OnUnload(ctx *pumpkin_plugin_context.Context) {} +func (p *DefaultPlugin) HandleEvent(eventId uint32, server *pumpkin_plugin_server.Server, event pumpkin_plugin_event.Event) pumpkin_plugin_event.Event { + return event +} +func (p *DefaultPlugin) HandleCommand(commandId uint32, sender *pumpkin_plugin_command.CommandSender, server *pumpkin_plugin_server.Server, args *pumpkin_plugin_command.ConsumedArgs) int32 { + return 0 +} diff --git a/wit/repo b/wit/repo new file mode 160000 index 0000000..6f2c3cd --- /dev/null +++ b/wit/repo @@ -0,0 +1 @@ +Subproject commit 6f2c3cd5e37a3c39e1e5f27c1300d31bd97fe936