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

FREE BranchSetter : 1.3.0 1.3.0

Нет прав для скачивания
C#:
using System.Collections.Generic;
using UnityEngine;

namespace Oxide.Plugins
{
    [Info("BranchSetter", "Quen", "1.3.0")]
    [Description("Automatically sets all electrical branches to 10")]
    public class BranchSetter : RustPlugin
    {
        private const int FixedBranchValue = 10;
        private HashSet<ElectricalBranch> cachedBranches = new HashSet<ElectricalBranch>();

        private void Init()
        {
            cachedBranches.Clear();
            foreach (var entity in BaseNetworkable.serverEntities)
            {
                var branch = entity as ElectricalBranch;
                if (branch != null)
                    cachedBranches.Add(branch);
            }
        }

        private void OnEntityBuilt(Planner plan, GameObject go)
        {
            var branch = go.GetComponent<ElectricalBranch>();
            HandleBranchEntity(branch);
        }

        private void OnEntitySpawned(BaseNetworkable entity)
        {
            var branch = entity as ElectricalBranch;
            HandleBranchEntity(branch);
        }

        private void OnEntityKill(BaseNetworkable entity)
        {
            var branch = entity as ElectricalBranch;
            if (branch != null)
                cachedBranches.Remove(branch);
        }

        private void HandleBranchEntity(ElectricalBranch branch)
        {
            if (branch != null)
            {
                cachedBranches.Add(branch);
                timer.Once(0.1f, () => SetBranch(branch));
            }
        }

        private void SetBranch(ElectricalBranch branch)
        {
            if (branch == null) return;
            branch.branchAmount = FixedBranchValue;
            branch.SendNetworkUpdate();
        }
    }
}

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