Иконка ресурса

FREE ConsoleMessage : 1.0.0 1.0.0

Нет прав для скачивания
C#:
// Все права принадлежат дискорд сообществу https://discord.gg/VgNHPpNrz6
using System;
using System.Collections.Generic;
using System.Linq;
using Oxide.Core;
using UnityEngine;

namespace Oxide.Plugins {
    [Info("ConsoleMessages", "Skrallex", "1.0.0")]
    [Description("Send messages to players with a console command")]
    class ConsoleMessage : RustPlugin {

        void Loaded() {
            LoadDefaultMessages();
        }

        void LoadDefaultMessages() {
            lang.RegisterMessages(new Dictionary<string, string> {
                {"NoPermission", "You do not have permission to use this command."},
                {"SaySyntax", "Syntax: cm.say PlayerName Message"},
                {"ManyPlayersFound", "Multiple players found with that name, please be more specific."},
                {"NoPlayersFound", "No players found with that name, please try another."}
            }, this);
        }

        [ConsoleCommand("cm.say")]
        void CMSay(ConsoleSystem.Arg args) {
            if(args.Player() != null && !args.Player().IsAdmin()) {
                args.ReplyWith(Lang("NoPermission"));
                return;
            }
            if(!args.HasArgs(2)) {
                args.ReplyWith(Lang("SaySyntax"));
                return;
            }

            if(GetPlayersByName(args.GetString(0)).Count > 1) {
                args.ReplyWith(Lang("ManyPlayersFound"));
                return;
            }
            if(GetPlayersByName(args.GetString(0)).Count == 0) {
                args.ReplyWith(Lang("NoPlayersFound"));
                return;
            }
            BasePlayer target = GetPlayersByName(args.GetString(0))[0];

            SendReply(target, args.GetString(1));
        }

        List<BasePlayer> GetPlayersByName(string playerName) {
            List<BasePlayer> foundPlayers = new List<BasePlayer>();
            foreach(BasePlayer activePlayer in BasePlayer.activePlayerList) {
                if(activePlayer.displayName.ToLower().Contains(playerName.ToLower()))
                    foundPlayers.Add(activePlayer);
            }
            return foundPlayers;
        }

        string Lang(string key) {
            return lang.GetMessage(key, this, null);
        }
    }
}

Автор
15FPS
Скачиваний
0
Просмотры
1
Первый выпуск
Обновление
Оценка
0.00 звёзд 0 оценок
Сверху