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

FREE KingFloatingText : 0.0.1 0.0.1

Нет прав для скачивания
C#:
// Все права принадлежат дискорд сообществу https://discord.gg/VgNHPpNrz6

using Newtonsoft.Json;
using Oxide.Core;
using System.Collections.Generic;
using UnityEngine;

namespace Oxide.Plugins
{
    [Info("King Floating Text", "Pho3niX90", "0.0.1")]
    [Description("")]
    public class KingFloatingText : RustPlugin
    {
        private void OnServerInitialized() {
            timer.Every(1f, () => {
                RefreshFloatingTexts();
            });
        }

        private void RefreshFloatingTexts() {
            var warps = Interface.CallHook("GetAllZonesForFloatingText") as Dictionary<Vector3, string> ?? new Dictionary<Vector3, string>();

            foreach (var value in warps) {
                var position = value.Key;
                var gameName = value.Value;

                position = value.Key + config.warpsTextOffset;
                var text = value.Value;
                foreach (var player in BasePlayer.activePlayerList) {
                    if (Vector3.Distance(player.transform.position, position) > config.maxFloatingTextDistance) continue;

                    if (player.Connection.authLevel == 0) {
                        player.SetPlayerFlag(BasePlayer.PlayerFlags.IsAdmin, true);
                        player.SendNetworkUpdateImmediate();
                    }

                    player.SendConsoleCommand("ddraw.text", config.floatingTextRefreshRate, Color.white, position, text);

                    if (player.Connection.authLevel == 0) {
                        player.SetPlayerFlag(BasePlayer.PlayerFlags.IsAdmin, false);
                        player.SendNetworkUpdateImmediate();
                    }
                }
            }
        }

        #region Config
        private static ConfigData config = new ConfigData();
        private class ConfigData
        {
            [JsonProperty(PropertyName = "Floating text refresh rate")]
            public int floatingTextRefreshRate = 3;

            [JsonProperty(PropertyName = "Floating text maximal distance")]
            public int maxFloatingTextDistance = 50;

            [JsonProperty(PropertyName = "Warps text offset")]
            public Vector3 warpsTextOffset = new Vector3(0f, 0.5f, 0f);
        }
        protected override void LoadConfig() {
            base.LoadConfig();

            try {
                config = Config.ReadObject<ConfigData>();
                if (config == null) LoadDefaultConfig();
            } catch {
                PrintError("Configuration file is corrupt! Check your config file at https://jsonlint.com/");
                timer.Every(10f,
                    () => {
                        PrintError("Configuration file is corrupt! Check your config file at https://jsonlint.com/");
                    });
                LoadDefaultConfig();
                return;
            }
            SaveConfig();
        }

        protected override void LoadDefaultConfig() => config = new ConfigData();
        protected override void SaveConfig() => Config.WriteObject(config);
        #endregion
    }
}

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