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

FREE CustomTownVending : 1.1.10 1.1.10

Нет прав для скачивания
C#:
using System.Collections;
using System.Collections.Generic;
using System;
using System.Linq;
using System.Collections;
using Oxide.Core.Plugins;
using Oxide.Core;
using UnityEngine;
using Newtonsoft.Json;
using ProtoBuf;
namespace Oxide.Plugins {
    [Info("CustomTownVending", "Nimant", "1.1.10")]
    class CustomTownVending : RustPlugin {
        private static readonly List<string> yqECoMEkDTP = new List<string>() {
            "Outpost", "Bandit Camp", "Large Fishing Village", "Fishing Village"
        }
        ;
        private static Dictionary<string, int> XJqBMBefXZVnuzjT = new Dictionary<string, int> {
            {
                "mixingtable", 6
            }
            , {
                "diving.mask", 20
            }
            , {
                "diving.tank", 30
            }
            , {
                "diving.fins", 25
            }
        }
        ;
        private static bool GllmkWztCtA = false;
        private static Dictionary<NPCVendingMachine, float[]> ClAkeprrDnoeIfborQFk = new Dictionary<NPCVendingMachine, float[]>();
        private void Init() {
            KpJMNQNuXIdUgdNUkI.Clear();
            ClAkeprrDnoeIfborQFk.Clear();
            KxgREuuDDpxe();
            lkOvuVeEpvBsIJzSOcMm();
            foreach (var cFUpQAuYvSe in AaEsWpGaQDyMaOGSXtLlDXBWLUCQ.yDxwEyomtZCQWOQgNEicwJkesSD) {
                foreach (var uRIZaEQmwvzp in cFUpQAuYvSe.Value) {
                    foreach (var UQwnXkPbyUiguDuNpMtz in uRIZaEQmwvzp.RklwFBEmkLLTSDBE) {
                        if (UQwnXkPbyUiguDuNpMtz.gUulCwjSUHIB == null) UQwnXkPbyUiguDuNpMtz.gUulCwjSUHIB = "";
                    }
                }
            }
            ERNRqUxZIGyMbbzGlBa(AaEsWpGaQDyMaOGSXtLlDXBWLUCQ);
            if (AaEsWpGaQDyMaOGSXtLlDXBWLUCQ.MzdHdLRJClZtOJtFLc <= 0) {
                AaEsWpGaQDyMaOGSXtLlDXBWLUCQ.MzdHdLRJClZtOJtFLc = 30;
                ERNRqUxZIGyMbbzGlBa(AaEsWpGaQDyMaOGSXtLlDXBWLUCQ);
            }
            LoadDefaultMessages();
        }
        private void OnServerInitialized() {
            GllmkWztCtA = ConVar.Server.level == "HapisIsland";
            var KTdDmNJMOESpRjj = KoCQTOeGwSzoCJZihAKzxX.OxbopHIDLl();
            snswAkrXmwoLWMOchJq();
            QZKhspEbyTuFoYXvRGOaPtzYgl();
            if (AaEsWpGaQDyMaOGSXtLlDXBWLUCQ.woccshLZSoQ) QWULnMxlkRAIVzwPJBj(KTdDmNJMOESpRjj);
            UuKekHPfAUdlhagOtju();
            timer.Once(AaEsWpGaQDyMaOGSXtLlDXBWLUCQ.MzdHdLRJClZtOJtFLc, HOwzlZLXAwOkz);
        }
        private void Unload() {
            ARhfRXZzSpnehTLEYBBbDhUPduXF();
            cQoNXCxFeOrlZukMXt();
        }
        private static Dictionary<string, List<NPCVendingMachine>> vCkoIWLStpnThhWpmIcNlM() {
            var nNoCuinrsOhKieWwmaVYljJCzQVXPt = BaseNetworkable.serverEntities.OfType<NPCVendingMachine>().Where(x=> x != null && !string.IsNullOrEmpty(x.shopName)).ToList();
            var NmgCdYKCvQBZFsJLMYW = new Dictionary<string, List<NPCVendingMachine>>();
            foreach(var uRIZaEQmwvzp in nNoCuinrsOhKieWwmaVYljJCzQVXPt) {
                var cFUpQAuYvSe = uBMAhsGxgvNMTCdFPPmedIf(uRIZaEQmwvzp.transform.position)?.Replace("\n", "");
                if (string.IsNullOrEmpty(cFUpQAuYvSe) || !XYjEexbGJoqepXgyHB(cFUpQAuYvSe)) continue;
                cFUpQAuYvSe = GllmkWztCtA ? "HapisIsland " + cFUpQAuYvSe : cFUpQAuYvSe;
                if (!NmgCdYKCvQBZFsJLMYW.ContainsKey(cFUpQAuYvSe)) NmgCdYKCvQBZFsJLMYW.Add(cFUpQAuYvSe, new List<NPCVendingMachine>());
                NmgCdYKCvQBZFsJLMYW[cFUpQAuYvSe].Add(uRIZaEQmwvzp);
            }
            return NmgCdYKCvQBZFsJLMYW;
        }
        private static UKdZTEaifk LscMnCqCpXvqmVD(NPCVendingMachine uRIZaEQmwvzp) {
            var NmgCdYKCvQBZFsJLMYW = new UKdZTEaifk();
            NmgCdYKCvQBZFsJLMYW.EyddtlETlTF = GllmkWztCtA ? uRIZaEQmwvzp.shopName + $" {uRIZaEQmwvzp.transform.position}" : uRIZaEQmwvzp.shopName;
            foreach(var ZbaDKQtRlChcuZnWhfSpNqDeegC in uRIZaEQmwvzp.vendingOrders.orders) {
                var NzdZnQRBJIAIIMCFMstLOcNNCX = new KxWQPtaPZcIYnWcOLUpnuw();
                NzdZnQRBJIAIIMCFMstLOcNNCX.tBVhvVocJAYFKsZGMtv = ZbaDKQtRlChcuZnWhfSpNqDeegC.sellItem.shortname;
                NzdZnQRBJIAIIMCFMstLOcNNCX.mtHXbhgUchlkwdFaqOfyMrsZS = ZbaDKQtRlChcuZnWhfSpNqDeegC.sellItemAmount;
                NzdZnQRBJIAIIMCFMstLOcNNCX.POCRABOgRkAMCYjg = ZbaDKQtRlChcuZnWhfSpNqDeegC.sellItemAsBP;
                NzdZnQRBJIAIIMCFMstLOcNNCX.ZisVuVxsWylpstGlLjZwai = 0;
                NzdZnQRBJIAIIMCFMstLOcNNCX.gUulCwjSUHIB = "";
                NzdZnQRBJIAIIMCFMstLOcNNCX.VmtnIZnbspmB = ZbaDKQtRlChcuZnWhfSpNqDeegC.currencyItem.shortname;
                NzdZnQRBJIAIIMCFMstLOcNNCX.SxjOXZSVIPG = ZbaDKQtRlChcuZnWhfSpNqDeegC.currencyAmount;
                NzdZnQRBJIAIIMCFMstLOcNNCX.XQQLjfaFFmJrJKxoDAtYm = ZbaDKQtRlChcuZnWhfSpNqDeegC.currencyAsBP;
                NzdZnQRBJIAIIMCFMstLOcNNCX.EkBPOeHawx = ZbaDKQtRlChcuZnWhfSpNqDeegC.refillAmount;
                NzdZnQRBJIAIIMCFMstLOcNNCX.hUsVSTNtQiPf = ZbaDKQtRlChcuZnWhfSpNqDeegC.refillDelay;
                NmgCdYKCvQBZFsJLMYW.RklwFBEmkLLTSDBE.Add(NzdZnQRBJIAIIMCFMstLOcNNCX);
            }
            return NmgCdYKCvQBZFsJLMYW;
        }
        private static void KoqCZFiNuELinkEeHqmmFvkvg(VendingMachine HQBkzWTePTNUJtoEOfBRaogt, int VgEwlElvoTRgcfpLoluaSZP, int eBiDoyDlYsZTMZXsIaNdKxWwHb, int EpjOIgGcsqUpWCGwhDL, int oIfIASWmaxnRvaleAbmkocnZ, byte SmPYZxCuDWbYvHOXesrkdNMmhJd) {
            var XCOFfNDHfNiRDRqezvQsFfW = ItemManager.FindItemDefinition(VgEwlElvoTRgcfpLoluaSZP);
            var PEKFCFqXWjWLdscYdcLTuTLCHJmzCS = ItemManager.FindItemDefinition(EpjOIgGcsqUpWCGwhDL);
            if (XCOFfNDHfNiRDRqezvQsFfW == null || PEKFCFqXWjWLdscYdcLTuTLCHJmzCS == null) return;
            var zMdoEhAEpkuLoTh = new ProtoBuf.VendingMachine.SellOrder() {
                ShouldPool = false, itemToSellID = VgEwlElvoTRgcfpLoluaSZP, itemToSellAmount = eBiDoyDlYsZTMZXsIaNdKxWwHb, currencyID = EpjOIgGcsqUpWCGwhDL, currencyAmountPerItem = oIfIASWmaxnRvaleAbmkocnZ, currencyIsBP = (SmPYZxCuDWbYvHOXesrkdNMmhJd == 3 ? true : SmPYZxCuDWbYvHOXesrkdNMmhJd == 2), itemToSellIsBP = (SmPYZxCuDWbYvHOXesrkdNMmhJd == 3 ? true : SmPYZxCuDWbYvHOXesrkdNMmhJd == 1)
            }
            ;
            Interface.CallHook("OnAddVendingOffer", HQBkzWTePTNUJtoEOfBRaogt, zMdoEhAEpkuLoTh);
            HQBkzWTePTNUJtoEOfBRaogt.sellOrders.sellOrders.Add(zMdoEhAEpkuLoTh);
            HQBkzWTePTNUJtoEOfBRaogt.RefreshSellOrderStockLevel(XCOFfNDHfNiRDRqezvQsFfW);
            HQBkzWTePTNUJtoEOfBRaogt.UpdateMapMarker();
            HQBkzWTePTNUJtoEOfBRaogt.SendNetworkUpdate(BasePlayer.NetworkQueue.Update);
        }
        private void GUYRUxVcdiZYFKCOWvWEYdy(NPCVendingMachine HQBkzWTePTNUJtoEOfBRaogt, int bEdiXqfBDrgWh, int kNRVjPuDjaKMjygCQyjz, int lUPJqAsXkOTsUSVYezSUpQbYazK, int EWVkwYhCuIuOFJ, byte VsUVWCrQmNZyePaZNBgngyGDXTwP, ulong iIOwdTngjf, string gUulCwjSUHIB) {
            KoqCZFiNuELinkEeHqmmFvkvg(HQBkzWTePTNUJtoEOfBRaogt, bEdiXqfBDrgWh, kNRVjPuDjaKMjygCQyjz, lUPJqAsXkOTsUSVYezSUpQbYazK, EWVkwYhCuIuOFJ, VsUVWCrQmNZyePaZNBgngyGDXTwP);
            HQBkzWTePTNUJtoEOfBRaogt.transactionActive = true;
            int qXjIIXGInMbHTIUOkppXQYf = 10;
            var VcgjvEvnktda = "675";
            if (VsUVWCrQmNZyePaZNBgngyGDXTwP == 1 || VsUVWCrQmNZyePaZNBgngyGDXTwP == 3) {
                var UQwnXkPbyUiguDuNpMtz = ItemManager.CreateByItemID(HQBkzWTePTNUJtoEOfBRaogt.blueprintBaseDef.itemid, kNRVjPuDjaKMjygCQyjz * qXjIIXGInMbHTIUOkppXQYf, iIOwdTngjf);
                UQwnXkPbyUiguDuNpMtz.blueprintTarget = bEdiXqfBDrgWh;
                if (!string.IsNullOrEmpty(gUulCwjSUHIB)) UQwnXkPbyUiguDuNpMtz.name = gUulCwjSUHIB;
                UQwnXkPbyUiguDuNpMtz.MoveToContainer(HQBkzWTePTNUJtoEOfBRaogt.inventory, -1, true);
            }
            else {
                var UQwnXkPbyUiguDuNpMtz = ItemManager.CreateByItemID(bEdiXqfBDrgWh, kNRVjPuDjaKMjygCQyjz * qXjIIXGInMbHTIUOkppXQYf, iIOwdTngjf);
                if (!string.IsNullOrEmpty(gUulCwjSUHIB)) UQwnXkPbyUiguDuNpMtz.name = gUulCwjSUHIB;
                UQwnXkPbyUiguDuNpMtz.MoveToContainer(HQBkzWTePTNUJtoEOfBRaogt.inventory, -1, true);
            }
            HQBkzWTePTNUJtoEOfBRaogt.transactionActive = false;
            (HQBkzWTePTNUJtoEOfBRaogt as VendingMachine).RefreshSellOrderStockLevel(null);
        }
        private void AnNVSYFxZXjnGtU(UKdZTEaifk VAnUHocsNiCKZaSwHNfG, NPCVendingMachine uRIZaEQmwvzp) {
            uRIZaEQmwvzp.ClearSellOrders();
            foreach (var UQwnXkPbyUiguDuNpMtz in uRIZaEQmwvzp.inventory.itemList.ToList()) {
                UQwnXkPbyUiguDuNpMtz.RemoveFromContainer();
                UQwnXkPbyUiguDuNpMtz.Remove(0f);
            }
            uRIZaEQmwvzp.inventory.itemList.Clear();
            uRIZaEQmwvzp.inventory.Clear();
            foreach(var ZbaDKQtRlChcuZnWhfSpNqDeegC in VAnUHocsNiCKZaSwHNfG.RklwFBEmkLLTSDBE) {
                var tHEEVtPYBmYzuIPpoJcVWxdsoE = ItemManager.FindItemDefinition(ZbaDKQtRlChcuZnWhfSpNqDeegC.tBVhvVocJAYFKsZGMtv);
                if (tHEEVtPYBmYzuIPpoJcVWxdsoE == null) {
                    PrintWarning(lANgecOZcnjKY("WARNING.ITEM").Replace("{ITEM}", ZbaDKQtRlChcuZnWhfSpNqDeegC.tBVhvVocJAYFKsZGMtv));
                    continue;
                }
                var AtZggnRapdyXxrcztoqDPpKlrya = ItemManager.FindItemDefinition(ZbaDKQtRlChcuZnWhfSpNqDeegC.VmtnIZnbspmB);
                if (AtZggnRapdyXxrcztoqDPpKlrya == null) {
                    PrintWarning(lANgecOZcnjKY("WARNING.ITEM").Replace("{ITEM}", ZbaDKQtRlChcuZnWhfSpNqDeegC.VmtnIZnbspmB));
                    continue;
                }
                if (ZbaDKQtRlChcuZnWhfSpNqDeegC.mtHXbhgUchlkwdFaqOfyMrsZS <= 0 || ZbaDKQtRlChcuZnWhfSpNqDeegC.SxjOXZSVIPG <= 0) continue;
                if (ZbaDKQtRlChcuZnWhfSpNqDeegC.EkBPOeHawx == -1) {
                    ZbaDKQtRlChcuZnWhfSpNqDeegC.EkBPOeHawx = 1;
                    ZbaDKQtRlChcuZnWhfSpNqDeegC.hUsVSTNtQiPf = 10f;
                }
                GUYRUxVcdiZYFKCOWvWEYdy(uRIZaEQmwvzp, tHEEVtPYBmYzuIPpoJcVWxdsoE.itemid, ZbaDKQtRlChcuZnWhfSpNqDeegC.mtHXbhgUchlkwdFaqOfyMrsZS, AtZggnRapdyXxrcztoqDPpKlrya.itemid, ZbaDKQtRlChcuZnWhfSpNqDeegC.SxjOXZSVIPG, uRIZaEQmwvzp.GetBPState(ZbaDKQtRlChcuZnWhfSpNqDeegC.POCRABOgRkAMCYjg, ZbaDKQtRlChcuZnWhfSpNqDeegC.XQQLjfaFFmJrJKxoDAtYm), ZbaDKQtRlChcuZnWhfSpNqDeegC.ZisVuVxsWylpstGlLjZwai, ZbaDKQtRlChcuZnWhfSpNqDeegC.gUulCwjSUHIB);
            }
            uRIZaEQmwvzp.FullUpdate();
        }
        private static bool XYjEexbGJoqepXgyHB(string cFUpQAuYvSe) {
            foreach(var CqTAxjJXTjPbLRCwhlAj in yqECoMEkDTP) if (cFUpQAuYvSe.Contains(CqTAxjJXTjPbLRCwhlAj)) return true;
            return false;
        }
        private static string uBMAhsGxgvNMTCdFPPmedIf(Vector3 GRpmMvTvxaMMgYg) {
            var ZeprRtGlEFzkghAjYVPFf = TerrainMeta.Path.Monuments.Where(x=> x != null).ToDictionary(x=> Vector3.Distance(x.transform.position, GRpmMvTvxaMMgYg), x=> x).OrderBy(x=> x.Key);
            if (ZeprRtGlEFzkghAjYVPFf.Count() == 0) return null;
            var rJiBMlQBkxNFQwHePs = ZeprRtGlEFzkghAjYVPFf.FirstOrDefault();
            if (rJiBMlQBkxNFQwHePs.Key > 75f) return null;
            return !string.IsNullOrEmpty(rJiBMlQBkxNFQwHePs.Value.displayPhrase.english) ? rJiBMlQBkxNFQwHePs.Value.displayPhrase.english : null;
        }
        private static Dictionary<string, List<NPCVendingMachine>> KpJMNQNuXIdUgdNUkI = new Dictionary<string, List<NPCVendingMachine>>();
        private void vuyKFiXQInJiLCKAOImScH() {
            if (KpJMNQNuXIdUgdNUkI.Count() == 0) KpJMNQNuXIdUgdNUkI = vCkoIWLStpnThhWpmIcNlM();
            foreach(var avFeqojOYmmWdXroSeIMGEeBReqS in AaEsWpGaQDyMaOGSXtLlDXBWLUCQ.yDxwEyomtZCQWOQgNEicwJkesSD) {
                if (GllmkWztCtA && !avFeqojOYmmWdXroSeIMGEeBReqS.Key.Contains("HapisIsland")) continue;
                if (!GllmkWztCtA && avFeqojOYmmWdXroSeIMGEeBReqS.Key.Contains("HapisIsland")) continue;
                foreach(var UCUBFTWhnJMAkWDYJ in avFeqojOYmmWdXroSeIMGEeBReqS.Value) {
                    if (KpJMNQNuXIdUgdNUkI.ContainsKey(avFeqojOYmmWdXroSeIMGEeBReqS.Key)) {
                        foreach(var uRIZaEQmwvzp in KpJMNQNuXIdUgdNUkI[avFeqojOYmmWdXroSeIMGEeBReqS.Key]) {
                            if (uRIZaEQmwvzp == null) continue;
                            var shopName = GllmkWztCtA ? uRIZaEQmwvzp.shopName + $" {uRIZaEQmwvzp.transform.position}" : uRIZaEQmwvzp.shopName;
                            if (!(UCUBFTWhnJMAkWDYJ.EyddtlETlTF == shopName)) continue;
                            MSGkSJBHQouZeniVpYJEpWyLk(uRIZaEQmwvzp, UCUBFTWhnJMAkWDYJ);
                        }
                    }
                }
            }
            timer.Once(1f, vuyKFiXQInJiLCKAOImScH);
        }
        private static int GetAmount(ItemContainer cont, int itemid, bool isBP) {
            if (cont == null) return 0;
            int qXjIIXGInMbHTIUOkppXQYf = 0;
            foreach (Item UQwnXkPbyUiguDuNpMtz in cont.itemList) if (!isBP && UQwnXkPbyUiguDuNpMtz.info.itemid == itemid || isBP && UQwnXkPbyUiguDuNpMtz.IsBlueprint() && UQwnXkPbyUiguDuNpMtz.blueprintTarget == itemid) qXjIIXGInMbHTIUOkppXQYf += UQwnXkPbyUiguDuNpMtz.amount;
            return qXjIIXGInMbHTIUOkppXQYf;
        }
        private void MSGkSJBHQouZeniVpYJEpWyLk(NPCVendingMachine uRIZaEQmwvzp, UKdZTEaifk UCUBFTWhnJMAkWDYJ) {
            if (uRIZaEQmwvzp == null || uRIZaEQmwvzp.vendingOrders == null || uRIZaEQmwvzp.vendingOrders.orders == null) return;
            if (uRIZaEQmwvzp.inventory == null) return;
            if (!ClAkeprrDnoeIfborQFk.ContainsKey(uRIZaEQmwvzp)) ClAkeprrDnoeIfborQFk.Add(uRIZaEQmwvzp, new float[(int)uRIZaEQmwvzp.vendingOrders.orders.Length]);
            for (int i = 0; i < (int)uRIZaEQmwvzp.vendingOrders.orders.Length;
            i++) {
                var xOghKsXQLnaRvHiWjjYC = uRIZaEQmwvzp.vendingOrders.orders[i];
                var cfgEntry = UCUBFTWhnJMAkWDYJ.RklwFBEmkLLTSDBE.FirstOrDefault(x=> x.tBVhvVocJAYFKsZGMtv == xOghKsXQLnaRvHiWjjYC.sellItem.shortname && x.VmtnIZnbspmB == xOghKsXQLnaRvHiWjjYC.currencyItem.shortname && x.POCRABOgRkAMCYjg == xOghKsXQLnaRvHiWjjYC.sellItemAsBP && x.XQQLjfaFFmJrJKxoDAtYm == xOghKsXQLnaRvHiWjjYC.currencyAsBP);
                if (cfgEntry == null) continue;
                if (Time.realtimeSinceStartup > (ClAkeprrDnoeIfborQFk[uRIZaEQmwvzp])[i]) {
                    int qXjIIXGInMbHTIUOkppXQYf = GetAmount(uRIZaEQmwvzp.inventory, xOghKsXQLnaRvHiWjjYC.sellItem.itemid, xOghKsXQLnaRvHiWjjYC.sellItemAsBP);
                    var uFqvjaLJPtOMdqTxACXlarNvDL = cfgEntry.EkBPOeHawx <= 0 ? 1 : cfgEntry.EkBPOeHawx;
                    int num1 = 10 * cfgEntry.mtHXbhgUchlkwdFaqOfyMrsZS;
                    var diff = num1 - qXjIIXGInMbHTIUOkppXQYf;
                    var amount = diff > uFqvjaLJPtOMdqTxACXlarNvDL * cfgEntry.mtHXbhgUchlkwdFaqOfyMrsZS ? uFqvjaLJPtOMdqTxACXlarNvDL * cfgEntry.mtHXbhgUchlkwdFaqOfyMrsZS : diff;
                    if (amount > 0) {
                        uRIZaEQmwvzp.transactionActive = true;
                        Item UQwnXkPbyUiguDuNpMtz = null;
                        if (!cfgEntry.POCRABOgRkAMCYjg) UQwnXkPbyUiguDuNpMtz = ItemManager.Create(xOghKsXQLnaRvHiWjjYC.sellItem, amount, cfgEntry.ZisVuVxsWylpstGlLjZwai);
                        else {
                            UQwnXkPbyUiguDuNpMtz = ItemManager.Create(uRIZaEQmwvzp.blueprintBaseDef, amount, (ulong)0);
                            UQwnXkPbyUiguDuNpMtz.blueprintTarget = xOghKsXQLnaRvHiWjjYC.sellItem.itemid;
                        }
                        if (!string.IsNullOrEmpty(cfgEntry.gUulCwjSUHIB)) UQwnXkPbyUiguDuNpMtz.name = cfgEntry.gUulCwjSUHIB;
                        UQwnXkPbyUiguDuNpMtz.MoveToContainer(uRIZaEQmwvzp.inventory, -1, true);
                        uRIZaEQmwvzp.transactionActive = false;
                    }
                    var ecbXqkUCihkXzjEVWdBVBNHmAy = cfgEntry.hUsVSTNtQiPf < 0f ? 0f : cfgEntry.hUsVSTNtQiPf;
                    (ClAkeprrDnoeIfborQFk[uRIZaEQmwvzp])[i] = Time.realtimeSinceStartup + ecbXqkUCihkXzjEVWdBVBNHmAy;
                }
            }
        }
        private void snswAkrXmwoLWMOchJq() {
            string YZJNbwUYpXSDCcOQs = $"{Rust.Protocol.printable} {Facepunch.BuildInfo.Current.BuildDate}";
            bool cVxFZloofVhBXR = false, pUKKQwbxAQYfBgXbgkqEeoZGExaDq = false, gOJVoSbhSKKMRuhgSxPeDrlvSkfcd = false;
            if (KoCQTOeGwSzoCJZihAKzxX.yDxwEyomtZCQWOQgNEicwJkesSD.Count == 0 || string.IsNullOrEmpty(KoCQTOeGwSzoCJZihAKzxX.ZUsHpgsgPyYwRT) || KoCQTOeGwSzoCJZihAKzxX.ZUsHpgsgPyYwRT != YZJNbwUYpXSDCcOQs) cVxFZloofVhBXR = true;
            else if (GllmkWztCtA) {
                if (KoCQTOeGwSzoCJZihAKzxX.yDxwEyomtZCQWOQgNEicwJkesSD.Where(x=> x.Key.Contains("HapisIsland")).Count() == 0) pUKKQwbxAQYfBgXbgkqEeoZGExaDq = true;
            }
            else {
                foreach (var cFUpQAuYvSe in yqECoMEkDTP) if (KoCQTOeGwSzoCJZihAKzxX.yDxwEyomtZCQWOQgNEicwJkesSD.Where(x=> x.Key == cFUpQAuYvSe).Count() == 0) gOJVoSbhSKKMRuhgSxPeDrlvSkfcd = true;
            }
            if (cVxFZloofVhBXR || pUKKQwbxAQYfBgXbgkqEeoZGExaDq || gOJVoSbhSKKMRuhgSxPeDrlvSkfcd) {
                if (cVxFZloofVhBXR) KoCQTOeGwSzoCJZihAKzxX.yDxwEyomtZCQWOQgNEicwJkesSD.Clear();
                if (pUKKQwbxAQYfBgXbgkqEeoZGExaDq) foreach(var cFUpQAuYvSe in KoCQTOeGwSzoCJZihAKzxX.yDxwEyomtZCQWOQgNEicwJkesSD.Where(x=> x.Key.Contains("HapisIsland")).Select(x=> x.Key).ToList()) KoCQTOeGwSzoCJZihAKzxX.yDxwEyomtZCQWOQgNEicwJkesSD.Remove(cFUpQAuYvSe);
                if (gOJVoSbhSKKMRuhgSxPeDrlvSkfcd) foreach(var cFUpQAuYvSe in KoCQTOeGwSzoCJZihAKzxX.yDxwEyomtZCQWOQgNEicwJkesSD.Where(x=> !x.Key.Contains("HapisIsland")).Select(x=> x.Key).ToList()) KoCQTOeGwSzoCJZihAKzxX.yDxwEyomtZCQWOQgNEicwJkesSD.Remove(cFUpQAuYvSe);
                if (string.IsNullOrEmpty(KoCQTOeGwSzoCJZihAKzxX.ZUsHpgsgPyYwRT) || KoCQTOeGwSzoCJZihAKzxX.ZUsHpgsgPyYwRT != YZJNbwUYpXSDCcOQs) KoCQTOeGwSzoCJZihAKzxX.ZUsHpgsgPyYwRT = YZJNbwUYpXSDCcOQs;
                var nNoCuinrsOhKieWwmaVYljJCzQVXPt = vCkoIWLStpnThhWpmIcNlM();
                if (nNoCuinrsOhKieWwmaVYljJCzQVXPt.Count > 0) {
                    if (GllmkWztCtA) {
                        foreach(var avFeqojOYmmWdXroSeIMGEeBReqS in nNoCuinrsOhKieWwmaVYljJCzQVXPt) foreach(var uRIZaEQmwvzp in avFeqojOYmmWdXroSeIMGEeBReqS.Value) {
                            if (!KoCQTOeGwSzoCJZihAKzxX.yDxwEyomtZCQWOQgNEicwJkesSD.ContainsKey(avFeqojOYmmWdXroSeIMGEeBReqS.Key)) KoCQTOeGwSzoCJZihAKzxX.yDxwEyomtZCQWOQgNEicwJkesSD.Add(avFeqojOYmmWdXroSeIMGEeBReqS.Key, new List<UKdZTEaifk>());
                            KoCQTOeGwSzoCJZihAKzxX.yDxwEyomtZCQWOQgNEicwJkesSD[avFeqojOYmmWdXroSeIMGEeBReqS.Key].Add(LscMnCqCpXvqmVD(uRIZaEQmwvzp));
                        }
                    }
                    else {
                        foreach(var avFeqojOYmmWdXroSeIMGEeBReqS in nNoCuinrsOhKieWwmaVYljJCzQVXPt) {
                            var nGVIYEwkYOkfGKlBtuF = default(Vector3);
                            foreach(var uRIZaEQmwvzp in avFeqojOYmmWdXroSeIMGEeBReqS.Value) {
                                if (nGVIYEwkYOkfGKlBtuF == default(Vector3)) nGVIYEwkYOkfGKlBtuF = uRIZaEQmwvzp.transform.position;
                                if (Vector3.Distance(uRIZaEQmwvzp.transform.position, nGVIYEwkYOkfGKlBtuF) > 100f) continue;
                                if (!KoCQTOeGwSzoCJZihAKzxX.yDxwEyomtZCQWOQgNEicwJkesSD.ContainsKey(avFeqojOYmmWdXroSeIMGEeBReqS.Key)) KoCQTOeGwSzoCJZihAKzxX.yDxwEyomtZCQWOQgNEicwJkesSD.Add(avFeqojOYmmWdXroSeIMGEeBReqS.Key, new List<UKdZTEaifk>());
                                if (KoCQTOeGwSzoCJZihAKzxX.yDxwEyomtZCQWOQgNEicwJkesSD[avFeqojOYmmWdXroSeIMGEeBReqS.Key].Exists(x=> x.EyddtlETlTF == uRIZaEQmwvzp.shopName)) continue;
                                KoCQTOeGwSzoCJZihAKzxX.yDxwEyomtZCQWOQgNEicwJkesSD[avFeqojOYmmWdXroSeIMGEeBReqS.Key].Add(LscMnCqCpXvqmVD(uRIZaEQmwvzp));
                            }
                        }
                    }
                }
                ARhfRXZzSpnehTLEYBBbDhUPduXF();
            }
        }
        private void QZKhspEbyTuFoYXvRGOaPtzYgl() {
            bool cVxFZloofVhBXR = false, pUKKQwbxAQYfBgXbgkqEeoZGExaDq = false, gOJVoSbhSKKMRuhgSxPeDrlvSkfcd = false;
            if (AaEsWpGaQDyMaOGSXtLlDXBWLUCQ.yDxwEyomtZCQWOQgNEicwJkesSD.Count == 0) cVxFZloofVhBXR = true;
            else if (GllmkWztCtA) {
                if (AaEsWpGaQDyMaOGSXtLlDXBWLUCQ.yDxwEyomtZCQWOQgNEicwJkesSD.Where(x=> x.Key.Contains("HapisIsland")).Count() == 0) pUKKQwbxAQYfBgXbgkqEeoZGExaDq = true;
            }
            else {
                foreach (var cFUpQAuYvSe in yqECoMEkDTP) if (AaEsWpGaQDyMaOGSXtLlDXBWLUCQ.yDxwEyomtZCQWOQgNEicwJkesSD.Where(x=> x.Key == cFUpQAuYvSe).Count() == 0) gOJVoSbhSKKMRuhgSxPeDrlvSkfcd = true;
            }
            if (cVxFZloofVhBXR || pUKKQwbxAQYfBgXbgkqEeoZGExaDq || gOJVoSbhSKKMRuhgSxPeDrlvSkfcd) {
                if (cVxFZloofVhBXR) AaEsWpGaQDyMaOGSXtLlDXBWLUCQ.yDxwEyomtZCQWOQgNEicwJkesSD = KoCQTOeGwSzoCJZihAKzxX.OxbopHIDLl();
                if (pUKKQwbxAQYfBgXbgkqEeoZGExaDq) foreach(var avFeqojOYmmWdXroSeIMGEeBReqS in KoCQTOeGwSzoCJZihAKzxX.OxbopHIDLl().Where(x=> x.Key.Contains("HapisIsland"))) if (!AaEsWpGaQDyMaOGSXtLlDXBWLUCQ.yDxwEyomtZCQWOQgNEicwJkesSD.ContainsKey(avFeqojOYmmWdXroSeIMGEeBReqS.Key)) AaEsWpGaQDyMaOGSXtLlDXBWLUCQ.yDxwEyomtZCQWOQgNEicwJkesSD.Add(avFeqojOYmmWdXroSeIMGEeBReqS.Key, avFeqojOYmmWdXroSeIMGEeBReqS.Value);
                if (gOJVoSbhSKKMRuhgSxPeDrlvSkfcd) foreach(var avFeqojOYmmWdXroSeIMGEeBReqS in KoCQTOeGwSzoCJZihAKzxX.OxbopHIDLl().Where(x=> !x.Key.Contains("HapisIsland"))) if (!AaEsWpGaQDyMaOGSXtLlDXBWLUCQ.yDxwEyomtZCQWOQgNEicwJkesSD.ContainsKey(avFeqojOYmmWdXroSeIMGEeBReqS.Key)) AaEsWpGaQDyMaOGSXtLlDXBWLUCQ.yDxwEyomtZCQWOQgNEicwJkesSD.Add(avFeqojOYmmWdXroSeIMGEeBReqS.Key, avFeqojOYmmWdXroSeIMGEeBReqS.Value);
                ERNRqUxZIGyMbbzGlBa(AaEsWpGaQDyMaOGSXtLlDXBWLUCQ);
            }
            var nNoCuinrsOhKieWwmaVYljJCzQVXPt = vCkoIWLStpnThhWpmIcNlM();
            var hPkEVJQbKJdezsKRYGUUCPbkrKvHsg = false;
            foreach(var avFeqojOYmmWdXroSeIMGEeBReqS in AaEsWpGaQDyMaOGSXtLlDXBWLUCQ.yDxwEyomtZCQWOQgNEicwJkesSD) {
                if (GllmkWztCtA && !avFeqojOYmmWdXroSeIMGEeBReqS.Key.Contains("HapisIsland")) continue;
                if (!GllmkWztCtA && avFeqojOYmmWdXroSeIMGEeBReqS.Key.Contains("HapisIsland")) continue;
                foreach(var UCUBFTWhnJMAkWDYJ in avFeqojOYmmWdXroSeIMGEeBReqS.Value) {
                    if (nNoCuinrsOhKieWwmaVYljJCzQVXPt.ContainsKey(avFeqojOYmmWdXroSeIMGEeBReqS.Key)) {
                        foreach(var uRIZaEQmwvzp in nNoCuinrsOhKieWwmaVYljJCzQVXPt[avFeqojOYmmWdXroSeIMGEeBReqS.Key]) {
                            var shopName = GllmkWztCtA ? uRIZaEQmwvzp.shopName + $" {uRIZaEQmwvzp.transform.position}" : uRIZaEQmwvzp.shopName;
                            if (!(UCUBFTWhnJMAkWDYJ.EyddtlETlTF == shopName)) continue;
                            for (int i = 0; i < (int)uRIZaEQmwvzp.vendingOrders.orders.Length;
                            i++) {
                                var xOghKsXQLnaRvHiWjjYC = uRIZaEQmwvzp.vendingOrders.orders[i];
                                var cfgEntry = UCUBFTWhnJMAkWDYJ.RklwFBEmkLLTSDBE.FirstOrDefault(x=> x.tBVhvVocJAYFKsZGMtv == xOghKsXQLnaRvHiWjjYC.sellItem.shortname && x.VmtnIZnbspmB == xOghKsXQLnaRvHiWjjYC.currencyItem.shortname && x.POCRABOgRkAMCYjg == xOghKsXQLnaRvHiWjjYC.sellItemAsBP && x.XQQLjfaFFmJrJKxoDAtYm == xOghKsXQLnaRvHiWjjYC.currencyAsBP);
                                if (cfgEntry == null) continue;
                                if (cfgEntry.EkBPOeHawx == -1) {
                                    cfgEntry.EkBPOeHawx = xOghKsXQLnaRvHiWjjYC.refillAmount;
                                    cfgEntry.hUsVSTNtQiPf = xOghKsXQLnaRvHiWjjYC.refillDelay;
                                    hPkEVJQbKJdezsKRYGUUCPbkrKvHsg = true;
                                }
                            }
                        }
                    }
                }
            }
            if (hPkEVJQbKJdezsKRYGUUCPbkrKvHsg) ERNRqUxZIGyMbbzGlBa(AaEsWpGaQDyMaOGSXtLlDXBWLUCQ);
        }
        private void QWULnMxlkRAIVzwPJBj(Dictionary<string, List<UKdZTEaifk>> KTdDmNJMOESpRjj) {
            bool hPkEVJQbKJdezsKRYGUUCPbkrKvHsg = false;
            foreach(var avFeqojOYmmWdXroSeIMGEeBReqS in KoCQTOeGwSzoCJZihAKzxX.OxbopHIDLl()) {
                if (GllmkWztCtA && !avFeqojOYmmWdXroSeIMGEeBReqS.Key.Contains("HapisIsland")) continue;
                if (!GllmkWztCtA && avFeqojOYmmWdXroSeIMGEeBReqS.Key.Contains("HapisIsland")) continue;
                if (!KTdDmNJMOESpRjj.ContainsKey(avFeqojOYmmWdXroSeIMGEeBReqS.Key)) {
                    if (!XYjEexbGJoqepXgyHB(avFeqojOYmmWdXroSeIMGEeBReqS.Key)) PrintWarning(lANgecOZcnjKY("WARNING.NEW.RADTOWN").Replace("{RADTOWN}", avFeqojOYmmWdXroSeIMGEeBReqS.Key));
                    continue;
                }
                if (!AaEsWpGaQDyMaOGSXtLlDXBWLUCQ.yDxwEyomtZCQWOQgNEicwJkesSD.ContainsKey(avFeqojOYmmWdXroSeIMGEeBReqS.Key)) continue;
                foreach(var uRIZaEQmwvzp in avFeqojOYmmWdXroSeIMGEeBReqS.Value) {
                    if (!KTdDmNJMOESpRjj[avFeqojOYmmWdXroSeIMGEeBReqS.Key].Exists(x=> x.EyddtlETlTF == uRIZaEQmwvzp.EyddtlETlTF)) {
                        if (!AaEsWpGaQDyMaOGSXtLlDXBWLUCQ.yDxwEyomtZCQWOQgNEicwJkesSD[avFeqojOYmmWdXroSeIMGEeBReqS.Key].Exists(x=> x.EyddtlETlTF == uRIZaEQmwvzp.EyddtlETlTF)) {
                            PrintWarning(lANgecOZcnjKY("WARNING.NEW.SHOP").Replace("{SHOP}", uRIZaEQmwvzp.EyddtlETlTF).Replace("{RADTOWN}", avFeqojOYmmWdXroSeIMGEeBReqS.Key));
                            var leuCOnJhUsjwnGdPVRkhhdwlayNVnO = new UKdZTEaifk();
                            leuCOnJhUsjwnGdPVRkhhdwlayNVnO.EyddtlETlTF = uRIZaEQmwvzp.EyddtlETlTF;
                            AaEsWpGaQDyMaOGSXtLlDXBWLUCQ.yDxwEyomtZCQWOQgNEicwJkesSD[avFeqojOYmmWdXroSeIMGEeBReqS.Key].Add(leuCOnJhUsjwnGdPVRkhhdwlayNVnO);
                            hPkEVJQbKJdezsKRYGUUCPbkrKvHsg = true;
                        }
                        var VSWOUmhYMft = new UKdZTEaifk();
                        VSWOUmhYMft.EyddtlETlTF = uRIZaEQmwvzp.EyddtlETlTF;
                        KTdDmNJMOESpRjj[avFeqojOYmmWdXroSeIMGEeBReqS.Key].Add(VSWOUmhYMft);
                    }
                    var WCAztxswjZgtdLo = KTdDmNJMOESpRjj[avFeqojOYmmWdXroSeIMGEeBReqS.Key].FirstOrDefault(x=> x.EyddtlETlTF == uRIZaEQmwvzp.EyddtlETlTF);
                    var UCUBFTWhnJMAkWDYJ = AaEsWpGaQDyMaOGSXtLlDXBWLUCQ.yDxwEyomtZCQWOQgNEicwJkesSD[avFeqojOYmmWdXroSeIMGEeBReqS.Key].FirstOrDefault(x=> x.EyddtlETlTF == uRIZaEQmwvzp.EyddtlETlTF);
                    foreach(var xOghKsXQLnaRvHiWjjYC in uRIZaEQmwvzp.RklwFBEmkLLTSDBE) {
                        if (!WCAztxswjZgtdLo.RklwFBEmkLLTSDBE.Exists(x=> x.tBVhvVocJAYFKsZGMtv == xOghKsXQLnaRvHiWjjYC.tBVhvVocJAYFKsZGMtv && x.VmtnIZnbspmB == xOghKsXQLnaRvHiWjjYC.VmtnIZnbspmB && x.POCRABOgRkAMCYjg == xOghKsXQLnaRvHiWjjYC.POCRABOgRkAMCYjg && x.XQQLjfaFFmJrJKxoDAtYm == xOghKsXQLnaRvHiWjjYC.XQQLjfaFFmJrJKxoDAtYm && x.ZisVuVxsWylpstGlLjZwai == xOghKsXQLnaRvHiWjjYC.ZisVuVxsWylpstGlLjZwai && x.gUulCwjSUHIB == xOghKsXQLnaRvHiWjjYC.gUulCwjSUHIB)) {
                            if (!UCUBFTWhnJMAkWDYJ.RklwFBEmkLLTSDBE.Exists(x=> x.tBVhvVocJAYFKsZGMtv == xOghKsXQLnaRvHiWjjYC.tBVhvVocJAYFKsZGMtv && x.VmtnIZnbspmB == xOghKsXQLnaRvHiWjjYC.VmtnIZnbspmB && x.POCRABOgRkAMCYjg == xOghKsXQLnaRvHiWjjYC.POCRABOgRkAMCYjg && x.XQQLjfaFFmJrJKxoDAtYm == xOghKsXQLnaRvHiWjjYC.XQQLjfaFFmJrJKxoDAtYm && x.ZisVuVxsWylpstGlLjZwai == xOghKsXQLnaRvHiWjjYC.ZisVuVxsWylpstGlLjZwai && x.gUulCwjSUHIB == xOghKsXQLnaRvHiWjjYC.gUulCwjSUHIB)) {
                                PrintWarning(lANgecOZcnjKY("WARNING.NEW.ITEM").Replace("{SHOP}", uRIZaEQmwvzp.EyddtlETlTF).Replace("{RADTOWN}", avFeqojOYmmWdXroSeIMGEeBReqS.Key).Replace("{ITEM}", xOghKsXQLnaRvHiWjjYC.tBVhvVocJAYFKsZGMtv));
                                UCUBFTWhnJMAkWDYJ.RklwFBEmkLLTSDBE.Add(xOghKsXQLnaRvHiWjjYC);
                                hPkEVJQbKJdezsKRYGUUCPbkrKvHsg = true;
                            }
                            WCAztxswjZgtdLo.RklwFBEmkLLTSDBE.Add(xOghKsXQLnaRvHiWjjYC);
                        }
                    }
                }
            }
            if (hPkEVJQbKJdezsKRYGUUCPbkrKvHsg) ERNRqUxZIGyMbbzGlBa(AaEsWpGaQDyMaOGSXtLlDXBWLUCQ);
        }
        private void HOwzlZLXAwOkz() {
            var nNoCuinrsOhKieWwmaVYljJCzQVXPt = vCkoIWLStpnThhWpmIcNlM();
            foreach(var avFeqojOYmmWdXroSeIMGEeBReqS in AaEsWpGaQDyMaOGSXtLlDXBWLUCQ.yDxwEyomtZCQWOQgNEicwJkesSD) {
                if (GllmkWztCtA && !avFeqojOYmmWdXroSeIMGEeBReqS.Key.Contains("HapisIsland")) continue;
                if (!GllmkWztCtA && avFeqojOYmmWdXroSeIMGEeBReqS.Key.Contains("HapisIsland")) continue;
                foreach(var UCUBFTWhnJMAkWDYJ in avFeqojOYmmWdXroSeIMGEeBReqS.Value) {
                    if (nNoCuinrsOhKieWwmaVYljJCzQVXPt.ContainsKey(avFeqojOYmmWdXroSeIMGEeBReqS.Key)) {
                        foreach(var uRIZaEQmwvzp in nNoCuinrsOhKieWwmaVYljJCzQVXPt[avFeqojOYmmWdXroSeIMGEeBReqS.Key]) {
                            var shopName = GllmkWztCtA ? uRIZaEQmwvzp.shopName + $" {uRIZaEQmwvzp.transform.position}" : uRIZaEQmwvzp.shopName;
                            if (!(UCUBFTWhnJMAkWDYJ.EyddtlETlTF == shopName)) continue;
                            uRIZaEQmwvzp.GetComponent<FacepunchBehaviour>().CancelInvoke(new Action(uRIZaEQmwvzp.InstallFromVendingOrders));
                            uRIZaEQmwvzp.CancelInvoke(uRIZaEQmwvzp.InstallFromVendingOrders);
                            uRIZaEQmwvzp.GetComponent<FacepunchBehaviour>().CancelInvoke(new Action(uRIZaEQmwvzp.Refill));
                            uRIZaEQmwvzp.CancelInvoke(uRIZaEQmwvzp.Refill);
                            AnNVSYFxZXjnGtU(UCUBFTWhnJMAkWDYJ, uRIZaEQmwvzp);
                        }
                    }
                }
            }
            ERNRqUxZIGyMbbzGlBa(AaEsWpGaQDyMaOGSXtLlDXBWLUCQ);
            vuyKFiXQInJiLCKAOImScH();
        }
        private void cQoNXCxFeOrlZukMXt() {
            var nNoCuinrsOhKieWwmaVYljJCzQVXPt = vCkoIWLStpnThhWpmIcNlM();
            foreach(var avFeqojOYmmWdXroSeIMGEeBReqS in AaEsWpGaQDyMaOGSXtLlDXBWLUCQ.yDxwEyomtZCQWOQgNEicwJkesSD) {
                if (GllmkWztCtA && !avFeqojOYmmWdXroSeIMGEeBReqS.Key.Contains("HapisIsland")) continue;
                if (!GllmkWztCtA && avFeqojOYmmWdXroSeIMGEeBReqS.Key.Contains("HapisIsland")) continue;
                foreach(var UCUBFTWhnJMAkWDYJ in avFeqojOYmmWdXroSeIMGEeBReqS.Value) {
                    if (nNoCuinrsOhKieWwmaVYljJCzQVXPt.ContainsKey(avFeqojOYmmWdXroSeIMGEeBReqS.Key)) {
                        foreach(var uRIZaEQmwvzp in nNoCuinrsOhKieWwmaVYljJCzQVXPt[avFeqojOYmmWdXroSeIMGEeBReqS.Key]) {
                            var shopName = GllmkWztCtA ? uRIZaEQmwvzp.shopName + $" {uRIZaEQmwvzp.transform.position}" : uRIZaEQmwvzp.shopName;
                            if (!(UCUBFTWhnJMAkWDYJ.EyddtlETlTF == shopName)) continue;
                            uRIZaEQmwvzp.InvokeRandomized(new Action(uRIZaEQmwvzp.Refill), 1f, 1f, 0.1f);
                        }
                    }
                }
            }
        }
        private void UuKekHPfAUdlhagOtju() {
            var hPkEVJQbKJdezsKRYGUUCPbkrKvHsg = false;
            foreach(var avFeqojOYmmWdXroSeIMGEeBReqS in AaEsWpGaQDyMaOGSXtLlDXBWLUCQ.yDxwEyomtZCQWOQgNEicwJkesSD) foreach(var UCUBFTWhnJMAkWDYJ in avFeqojOYmmWdXroSeIMGEeBReqS.Value) foreach(var xOghKsXQLnaRvHiWjjYC in UCUBFTWhnJMAkWDYJ.RklwFBEmkLLTSDBE) foreach(var pair2 in XJqBMBefXZVnuzjT) if (xOghKsXQLnaRvHiWjjYC.tBVhvVocJAYFKsZGMtv == pair2.Key && xOghKsXQLnaRvHiWjjYC.mtHXbhgUchlkwdFaqOfyMrsZS == pair2.Value) {
                xOghKsXQLnaRvHiWjjYC.mtHXbhgUchlkwdFaqOfyMrsZS = 1;
                hPkEVJQbKJdezsKRYGUUCPbkrKvHsg = true;
            }
            if (hPkEVJQbKJdezsKRYGUUCPbkrKvHsg) ERNRqUxZIGyMbbzGlBa(AaEsWpGaQDyMaOGSXtLlDXBWLUCQ);
        }
        [ConsoleCommand("ctv.reset")]
        private void BctczntDNS(ConsoleSystem.Arg zXCXySFjDjvoIQAYzaUSJ) {
            var jncRGOogpkyQDmkKWfuoIrkLOdYMNA = zXCXySFjDjvoIQAYzaUSJ?.Player();
            if (jncRGOogpkyQDmkKWfuoIrkLOdYMNA != null && !jncRGOogpkyQDmkKWfuoIrkLOdYMNA.IsAdmin) return;
            AaEsWpGaQDyMaOGSXtLlDXBWLUCQ.yDxwEyomtZCQWOQgNEicwJkesSD = KoCQTOeGwSzoCJZihAKzxX.OxbopHIDLl();
            if (GllmkWztCtA) foreach(var cFUpQAuYvSe in AaEsWpGaQDyMaOGSXtLlDXBWLUCQ.yDxwEyomtZCQWOQgNEicwJkesSD.Where(x=> !x.Key.Contains("HapisIsland")).Select(x=> x.Key).ToList()) AaEsWpGaQDyMaOGSXtLlDXBWLUCQ.yDxwEyomtZCQWOQgNEicwJkesSD.Remove(cFUpQAuYvSe);
            else foreach(var cFUpQAuYvSe in AaEsWpGaQDyMaOGSXtLlDXBWLUCQ.yDxwEyomtZCQWOQgNEicwJkesSD.Where(x=> x.Key.Contains("HapisIsland")).Select(x=> x.Key).ToList()) AaEsWpGaQDyMaOGSXtLlDXBWLUCQ.yDxwEyomtZCQWOQgNEicwJkesSD.Remove(cFUpQAuYvSe);
            ERNRqUxZIGyMbbzGlBa(AaEsWpGaQDyMaOGSXtLlDXBWLUCQ);
            HOwzlZLXAwOkz();
            var OsxoTFXuHj = lANgecOZcnjKY("INFO.RESET");
            if (jncRGOogpkyQDmkKWfuoIrkLOdYMNA != null) PrintToConsole(jncRGOogpkyQDmkKWfuoIrkLOdYMNA, OsxoTFXuHj);
            else Puts(OsxoTFXuHj);
        }
        private void LoadDefaultMessages() {
            lang.RegisterMessages(new Dictionary<string, string> {
                {
                    "INFO.RESET", "Товары из магазинов в NPC городах были востановлены до значений по умолчанию."
                }
                , {
                    "WARNING.ITEM", "Указанный в конфигурационном файле предмет не существует: '{ITEM}'."
                }
                , {
                    "WARNING.NEW.SHOP", "Обнаружен новый магазин '{SHOP}' в городе '{RADTOWN}'."
                }
                , {
                    "WARNING.NEW.ITEM", "Добавлен новый товар '{ITEM}' в магазин '{SHOP}' города '{RADTOWN}'."
                }
                , {
                    "WARNING.NEW.RADTOWN", "Обнаружен новый город '{RADTOWN}'.Если это не кастомная карта, то сообщите разработчику, что бы он добавил новый город в плагин."
                }
            }
            , this);
        }
        private string lANgecOZcnjKY(string OkRnziATZhZTWkXfIZhGatx, string JxzuUmPVURcLKf = null) => lang.GetMessage(OkRnziATZhZTWkXfIZhGatx, this, JxzuUmPVURcLKf);
        private static IWHtcYvqWhxPFVnjuimDd AaEsWpGaQDyMaOGSXtLlDXBWLUCQ;
        private class UKdZTEaifk {
            [JsonProperty(PropertyName = "Игровое название магазина (не менять)")]
            public string EyddtlETlTF;
            [JsonProperty(PropertyName = "Список товаров")]
            public List<KxWQPtaPZcIYnWcOLUpnuw> RklwFBEmkLLTSDBE = new List<KxWQPtaPZcIYnWcOLUpnuw>();
        }
        private class KxWQPtaPZcIYnWcOLUpnuw {
            [JsonProperty(PropertyName = "Название покупаемого товара")]
            public string tBVhvVocJAYFKsZGMtv;
            [JsonProperty(PropertyName = "Количество покупаемого товара за раз")]
            public int mtHXbhgUchlkwdFaqOfyMrsZS;
            [JsonProperty(PropertyName = "Покупаемый товар это чертёж")]
            public bool POCRABOgRkAMCYjg;
            [JsonProperty(PropertyName = "Скин покупаемого товара")]
            public ulong ZisVuVxsWylpstGlLjZwai;
            [JsonProperty(PropertyName = "Свое название покупаемого товара")]
            public string gUulCwjSUHIB;
            [JsonProperty(PropertyName = "Название платёжного товара")]
            public string VmtnIZnbspmB;
            [JsonProperty(PropertyName = "Количество платёжного товара за раз")]
            public int SxjOXZSVIPG;
            [JsonProperty(PropertyName = "Платёжный товар это чертёж")]
            public bool XQQLjfaFFmJrJKxoDAtYm;
            [JsonProperty(PropertyName = "Количество предметов для восполнения")]
            public int EkBPOeHawx = -1;
            [JsonProperty(PropertyName = "Задержка восполнения предметов")]
            public float hUsVSTNtQiPf;
        }
        private class IWHtcYvqWhxPFVnjuimDd {
            [JsonProperty(PropertyName = "Добавлять новые предметы в магазины")]
            public bool woccshLZSoQ;
            [JsonProperty(PropertyName = "Задержка инициализации магазинов (секунды)")]
            public int MzdHdLRJClZtOJtFLc;
            [JsonProperty(PropertyName = "Торговые автоматы в NPC городах")]
            public Dictionary<string, List<UKdZTEaifk>> yDxwEyomtZCQWOQgNEicwJkesSD = new Dictionary<string, List<UKdZTEaifk>>();
        }
        private void KxgREuuDDpxe() {
            AaEsWpGaQDyMaOGSXtLlDXBWLUCQ = Config.ReadObject<IWHtcYvqWhxPFVnjuimDd>();
            if (AaEsWpGaQDyMaOGSXtLlDXBWLUCQ == null) AaEsWpGaQDyMaOGSXtLlDXBWLUCQ = new IWHtcYvqWhxPFVnjuimDd();
            if (AaEsWpGaQDyMaOGSXtLlDXBWLUCQ.yDxwEyomtZCQWOQgNEicwJkesSD == null) AaEsWpGaQDyMaOGSXtLlDXBWLUCQ.yDxwEyomtZCQWOQgNEicwJkesSD = new Dictionary<string, List<UKdZTEaifk>>();
            ERNRqUxZIGyMbbzGlBa(AaEsWpGaQDyMaOGSXtLlDXBWLUCQ);
        }
        protected override void LoadDefaultConfig() {
            AaEsWpGaQDyMaOGSXtLlDXBWLUCQ = new IWHtcYvqWhxPFVnjuimDd {
                woccshLZSoQ = true, MzdHdLRJClZtOJtFLc = 30, yDxwEyomtZCQWOQgNEicwJkesSD = new Dictionary<string, List<UKdZTEaifk>>()
            }
            ;
            ERNRqUxZIGyMbbzGlBa(AaEsWpGaQDyMaOGSXtLlDXBWLUCQ);
            timer.Once(0.1f, ()=> ERNRqUxZIGyMbbzGlBa(AaEsWpGaQDyMaOGSXtLlDXBWLUCQ));
        }
        private void ERNRqUxZIGyMbbzGlBa(IWHtcYvqWhxPFVnjuimDd ioJGxkZbNQEkulB) => Config.WriteObject(ioJGxkZbNQEkulB, true);
        private static SeEFlXSDwOh KoCQTOeGwSzoCJZihAKzxX = new SeEFlXSDwOh();
        private class SeEFlXSDwOh {
            [JsonProperty(PropertyName = "Протокол")]
            public string ZUsHpgsgPyYwRT;
            [JsonProperty(PropertyName = "Торговые автоматы в NPC городах")]
            public Dictionary<string, List<UKdZTEaifk>> yDxwEyomtZCQWOQgNEicwJkesSD = new Dictionary<string, List<UKdZTEaifk>>();
            public Dictionary<string, List<UKdZTEaifk>> OxbopHIDLl() => JsonConvert.DeserializeObject<Dictionary<string, List<UKdZTEaifk>>>(JsonConvert.SerializeObject(yDxwEyomtZCQWOQgNEicwJkesSD));
        }
        private void lkOvuVeEpvBsIJzSOcMm() {
            KoCQTOeGwSzoCJZihAKzxX = Interface.GetMod().DataFileSystem.ReadObject<SeEFlXSDwOh>("CustomTownVendingData");
            if (KoCQTOeGwSzoCJZihAKzxX == null) KoCQTOeGwSzoCJZihAKzxX = new SeEFlXSDwOh();
            if (KoCQTOeGwSzoCJZihAKzxX.yDxwEyomtZCQWOQgNEicwJkesSD == null) KoCQTOeGwSzoCJZihAKzxX.yDxwEyomtZCQWOQgNEicwJkesSD = new Dictionary<string, List<UKdZTEaifk>>();
        }
        private void ARhfRXZzSpnehTLEYBBbDhUPduXF() => Interface.GetMod().DataFileSystem.WriteObject("CustomTownVendingData", KoCQTOeGwSzoCJZihAKzxX);
    }
}

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

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

Сверху