GameFeed API

GameFeed API 2019-06-14

Нет прав для скачивания
Требуемые плагины
1018


GameFeed API
Плагин-оболочка, может быть использован для создания оповещений на экране, и представляет собой API для разработки других плагинов.

Краткое описание

Плагин реализует очередь сообщений для каждого игрока, и поддерживает два метода Broadcast и SendToPlayer. Подразумевается как альтернатива оповещений в чате от других плагинов (например. DeathNotes, ConnectInfo, и т.д.)

Изначально плагин ни с чем не интегрирован. При покупке могу помочь с интеграцией в другие плагины (о цене договариваемся исходя из объема работы).

Привилегии
  • gamefeed.see -- игроки с этой привилегией видят очередь сообщений
Описание работы
При отправке сообщения (игроку, или всем) на экране игрока (если он имеет привилегию) появляется сообщение, оформленное в соответствии с заданным и настроенным стилем (о стилях подробнее на вкладке Конфигурация). Оно будет находиться на экране столько секунд сколько указано при отправке сообщения.
При поступлении новых сообщений старые будут смещаться и исчезать если очередь переполнена (лимит сообщений настраивается).
Очередь сообщений отрисовывается на слое Hud, соответственно не перекрывает карты/крафт меню и т.п.

Примечания

Плагин поставляется с несколькими стандартными стилями сообщений, папку GameFeed необходимо извлечь из архива и приложить в oxide/data
This plugin is an API, implemented to provide Ingame message queues for players (Feed)

Brief description

The plugin implements message queue for every player (who has a permission) and supports two main methods: Broadcast and SendToPlayer. The plugin is implied as alternative of chat notifications from other plugins (e.g. DeathNotes, ConnectInfo, and so on)

Initially the plugin is not integrated with any other ones. After buy I can help or give advice how to integrate the plugin (let's discuss the cost according to amount of work).

Permissions
  • gamefeed.see -- only players with this permission are able to see the Feed
How does it work?

When API called and other plugins sends a message to player (or broadcasts), the message is displayed on screen of a player (if they have a permission). The message apperance depends on specified style and configuration of the style (more about styles is available at Configuration tab). The message will be shown on screen for number of seconds that was specifed during it's send.
When new messages are sent, older ones are shifted, and even disappear is the Feed is overflowing (max message count is configurable).
The Feed is rendered on the Hud layer, so it will not override Map/Craft menu and so on.

Notes

The plugin is shipped with few default styles and icons. GameFeed folder should be unpacked and placed to oxide/data
API

C#:
/*
RU
Отправляет оповещение всем игрокам
text - Текст который будет отображен в оповещении.
styleName - Имя стиля сообщения, подробнее на вкладке Конфигурация.
duration - Сколько секунд сообщение будет висеть на экране.

EN
Sends the message to all players on server
text - Text that will be displayed in Feed's message
styleName - Name of message's style, more info at Configuration tab.
duration - How many seconds the message will be at Feed.
*/
void Broadcast(string text, string styleName, int duration = -1)
void Broadcast(string text, string styleName, float duration = -1)

/*
RU
Отправляет сообщение конкретному игроку
player - Игрок которому отправится оповещение.
Остальное также как и выше.

EN
Sends the message to a particular player
player - The player who will receive the message
The rest is the same as above;
*/
void SendToPlayer(BasePlayer player, string text, string styleName, int duration = -1)
void SendToPlayer(BasePlayer player, string text, string styleName, float duration = -1)

/*
RU
Отключает/Включает очередь сообщений у игрока (до перезагрузки, может использоваться если надо скрыть все GUI на какое-то время). Не влияет на привилегии.
player - игрок, чью очередь сообщений надо отключить/включить
enabled - включить или выключить очередь сообщений игрока
EN
Disables/Enables player's Feed (until reload, can be used e.g. to hide GUI for some time). Doesn't affect permissions
player - The player, whose Feed should be enabled/disabled
enabled - whether to enable or disable Feed.
*/
void SetEnabled(BasePlayer player, bool enabled)

1019


1020


1021
C#:
        [PluginReference]
        Plugin GameFeed;

        [ChatCommand("test")]
        private void testcmd(BasePlayer player, string cmd, string[] argv) {
            GameFeed?.Call("Broadcast", "Many example info words Many example info words Many example info words Many example info words ", "info");
            GameFeed?.Call("Broadcast", "You don't have permission to use this command, please contact to admins, and more text", "error");
            GameFeed?.Call("Broadcast", "it's an unknown style", "unknown style");
            GameFeed?.Call("Broadcast", "Patrol helicopter is inbound!", "warning");
            GameFeed?.Call("Broadcast", "You've reached level 4", "note");
            GameFeed?.Call("Broadcast", "inline <size=16><color=orange><b>Markup</b></color></size> also works", "note");

            BasePlayer.activePlayerList.ForEach(pl => {
                GameFeed?.Call("SendToPlayer", pl, $"Individual message to player <b><color=white>{pl.displayName}</color></b>, with duration 10 seconds", "warning", 10);
            });
        }
  • Like
Реакции: PerformanceAT и kyke666
Автор
OxideBro
Скачивания
70
Просмотры
1,861
Первый выпуск
Обновление
Оценка
5.00 звёзд 1 оценок

Другие ресурсы пользователя OxideBro

  • HomeRecycler [ CRAFT ]
    HomeRecycler [ CRAFT ]
    Домашний переработчик с красивым сопровождением GUI.
  • Custom Wound
    Custom Wound
    Полный контроль над состоянием "Ранен", а также новый предмет - дефибриллятор
  • Plug
    Plug
    Добавляет возможность курить траву
  • Welcome Help
    Welcome Help
    Полноценный плагин приветствия, и обучения новых игроков
  • Backpack
    Backpack
    Рюкзак для Вашего сервера, надеваемый на игрока

Последние рецензии

Отличный плагин легок в настройке отзывчивый деволопер!