最初のプラグインの作成に関するガイド.
情報
You’ll probably need Visual Studio 2019 コミュニティ版. それに加えて, このガイドは、最初にプロジェクトをセットアップする方法を説明していません. これがそれを行う方法に関するビデオです (代わりに、その作成者が作成したチュートリアルシリーズを見ることもできます):
最初のプラグインを作成します
Creating plugins for Unturned requires a general knowledge of C#. If you currently do not have any knowledge behind C#, please check out Microsoft’s introduction to the language.
All plugins normally begin with class that inherits the `RocketPlugin` class. Below is an example of how to properly implement this:
using Rocket.API; using Rocket.Core.Plugins; namespace ExamplePlugin { public class ExamplePlugin : RocketPlugin { } }
Notice how the `ExamplePlugin` class is public? This is so we can make it accessible to RocketMod.
先に進む, you can now override the `Load` and `Unload` methods contained within the `RocketPlugin` class to log the loading and unloading of your plugin:
using Rocket.API; using Rocket.Core.Plugins; using Rocket.Unturned; using Rocket.Unturned.Chat; using Rocket.Unturned.Player; using Rocket.Core.Logging; namespace ExamplePlugin { public class ExamplePlugin : RocketPlugin { protected override void Load() { Logger.Log("Example plugin loaded!"); } protected override void Unload() { Logger.Log("Example plugin unloaded!"); } } }
The plugin will now log in the server console that the plugin has been loaded and unloaded.
You can also subscribe and unsubscribe to events when the plugin loads and unloads:
using Rocket.API; using Rocket.Core.Plugins; using Rocket.Unturned; using Rocket.Core.Logging; namespace ExamplePlugin { public class ExamplePlugin : RocketPlugin { protected override void Load() { Logger.Log("Example plugin loaded!"); U.Events.OnPlayerConnected += OnPlayerConnected; } protected override void Unload() { Logger.Log("Example plugin unloaded!"); U.Events.OnPlayerConnected -= OnPlayerConnected; } public void OnPlayerConnected(UnturnedPlayer player) { } } }
The plugin now subscribes and unsubscribes to the `U.Events.OnPlayerConnected`event on load and unload.
You can also now greet the player when they connect to the server:
using Rocket.API; using Rocket.Core.Plugins; using Rocket.Unturned; using Rocket.Core.Logging; namespace ExamplePlugin { public class ExamplePlugin : RocketPlugin { protected override void Load() { Logger.Log("Example plugin loaded!"); U.Events.OnPlayerConnected += OnPlayerConnected; } protected override void Unload() { Logger.Log("Example plugin unloaded!"); U.Events.OnPlayerConnected -= OnPlayerConnected; } public void OnPlayerConnected(UnturnedPlayer player) { // Do something when a player connects UnturnedChat.Say(プレーヤー, "Welcome to the server!"); } } }
To conclude, This plugin will log a message when it is loaded and unloaded, and greet players when they connect to the server. もちろん, you can customize the plugin to do whatever you want it to do.