BusEngine.dll

BusEngine.Plugin (Abstract Class)

Класс отвечающий за работу плагинов для BusEngine. Плагины подключаются в файле настроек проекта "*.busproject" или настрок редактора "busengine.busengine".

Ваш код можно выполнить асинхронно (в новом потоке), если в конце названия метода добавить "Async" или модификатор "async".

Методы

(void)BusEngine.Plugin.Initialize()

Метод (виртуальный) уровня класса запускает плагин во время выполнения "BusEngine.Engine.Initialize()".

(void)BusEngine.Plugin.Initialize(string)

Метод (виртуальный) уровня класса запускает плагин во время выполнения "BusEngine.Engine.Initialize()" столько раз, сколько плагинов подключено. Первый параметр string строка выводит название файла плагина который сейчас был загружен.

(void)BusEngine.Plugin.Initialize(string, string)

Метод (виртуальный) уровня класса запускает плагин во время выполнения всех существующих методов во всех подключённых плагинах. Первый параметр string строка выводит название файла плагина который сейчас был загружен, а второй параметр название метода который был запущен в плагине из первого параметра.

(void)BusEngine.Plugin.InitializeCanvas()

Метод (виртуальный) уровня класса запускает плагин во время выполнения "BusEngine.UI.Canvas.Initialize()".

(void)BusEngine.Plugin.Shutdown()

Метод (виртуальный) уровня класса останавливает плагин для уничтожения объектов плагина и освобождения оперативной памяти при остановки BusEngine.

(void)BusEngine.Plugin.OnLevelLoading(string)

Метод (виртуальный) уровня класса запускает плагин во время начала загрузки игрового уровня "BusEngine.Level". Первый параметр string строка выводит название игрового уровня который сейчас начал загружаться.

(void)BusEngine.Plugin.OnLevelLoaded(string)

Метод (виртуальный) уровня класса запускает плагин во время завершения загрузки игрового уровня "BusEngine.Level". Первый параметр string строка выводит название игрового уровня который сейчас окончил загружаться.

(void)BusEngine.Plugin.OnGameStart()

Метод (виртуальный) уровня класса запускает плагин во время начала управления игровым персонажем или начала отсчёта времени игры.

(void)BusEngine.Plugin.OnGameStop()

Метод (виртуальный) уровня класса запускает плагин во время окончании управления игровым персонажем или окончании отсчёта времени игры.

(void)BusEngine.Plugin.OnGameUpdate()

Метод (виртуальный) уровня класса запускает плагин во время отрисовки каждого кадра.

(void)BusEngine.Plugin.OnClientConnectionReceived(int)

Метод (виртуальный) уровня класса запускает плагин во время начала подключения к игровому серверу. Первый параметр int строка выводит числовой id игрока который начал подключаться к серверу.

(void)BusEngine.Plugin.OnClientReadyForGameplay(int)

Метод (виртуальный) уровня класса останавливает плагин во время окончания подключения к игровому серверу. Первый параметр int строка выводит числовой id игрока который окончил подключаться к серверу.

(void)BusEngine.Plugin.OnClientDisconnected(int)

Метод (виртуальный) уровня класса останавливает плагин во время окончания игры в игровом сервере. Первый параметр int строка выводит числовой id игрока который начал отключаться от сервера.

Наверх

Подклассы

Подклассов нет

Константы

Констант нет

Поля

Полей нет

Свойства

Свойств нет

События

Событий нет

Пример файла Program.cs

В коде отражены все методы своего плагина с названием "MyPlugin".

  1. /** API BusEngine.Game - пользовательский код */
  2. namespace BusEngine.Game {
  3.     /** API BusEngine.Plugin */
  4.     public class MyPlugin : BusEngine.Plugin {
  5.         // при запуске BusEngine до создания формы
  6.         public override void Initialize() {
  7.             BusEngine.Log.Info("MyPlugin Initialize");
  8.         }
  9.         // после загрузки определённого плагина
  10.         public override void Initialize(string plugin) {
  11.             BusEngine.Log.Info("MyPlugin Initialize: {0}", plugin);
  12.         }
  13.         // после загрузки определённого плагина и метода
  14.         public override void Initialize(string plugin, string state) {
  15.             BusEngine.Log.Info("MyPlugin Initialize: {0}, {1}", plugin, state);
  16.         }
  17.         // при запуске BusEngine после создания формы Canvas
  18.         public override void InitializeCanvas() {
  19.             BusEngine.Log.Info("MyPlugin InitializeCanvas");
  20.         }
  21.         // перед закрытием BusEngine
  22.         public override void Shutdown() {
  23.             BusEngine.Log.Info("MyPlugin Shutdown");
  24.         }
  25.         // перед загрузкой игрового уровня
  26.         public override void OnLevelLoading(string level) {
  27.             BusEngine.Log.Info("MyPlugin OnLevelLoading: {0}", level);
  28.         }
  29.         // после загрузки игрового уровня
  30.         public override void OnLevelLoaded(string level) {
  31.             BusEngine.Log.Info("MyPlugin OnLevelLoaded: {0}", level);
  32.         }
  33.         // когда игрок может управлять главным героем - время игры идёт
  34.         public override void OnGameStart() {
  35.             BusEngine.Log.Info("MyPlugin OnGameStart");
  36.         }
  37.         // когда время остановлено - пауза или закрытие уровня
  38.         public override void OnGameStop() {
  39.             BusEngine.Log.Info("MyPlugin OnGameStop");
  40.         }
  41.         // вызывается при отрисовки каждого кадра
  42.         public override void OnGameUpdate() {
  43.             BusEngine.Log.Info("MyPlugin OnGameUpdate");
  44.         }
  45.         // когда игрок начинает подключаться к серверу
  46.         public override void OnClientConnectionReceived(int channelId) {
  47.             BusEngine.Log.Info("MyPlugin OnClientConnectionReceived: {0}", channelId);
  48.         }
  49.         // когда игрок подключился к серверу
  50.         public override void OnClientReadyForGameplay(int channelId) {
  51.             BusEngine.Log.Info("MyPlugin OnClientReadyForGameplay: {0}", channelId);
  52.         }
  53.         // когда игрока выкинуло из сервера - обрыв связи с сервером или он отключился сам
  54.         public override void OnClientDisconnected(int channelId) {
  55.             BusEngine.Log.Info("MyPlugin OnClientDisconnected: {0}", channelId);
  56.         }
  57.     }
  58.     /** API BusEngine.Plugin */
  59. }
  60. /** API BusEngine.Game - пользовательский код */
Наверх