using System; using System.Collections; using System.Collections.Generic; using System.Diagnostics; using System.IO; using System.Linq; using System.Runtime.CompilerServices; using System.Runtime.InteropServices; using System.Threading.Tasks; using Comfort.Common; using EFT; using EFT.Bots; using EFT.Counters; using EFT.Interactive; using EFT.InventoryLogic; using EFT.UI; using EFT.Weather; using Newtonsoft.Json; using stupid.solutions; using stupid.solutions.Data; using stupid.solutions.Features; using stupid.solutions.stupid.solutions.enums; using stupid.solutions.Utils; using TMPro; using UnityEngine; using UnityEngine.UI; public class Menu2 : MonoBehaviour { private enum SaveType { File, List } private enum KeybindType { ClearCache, Skill, Aimbot, UnlockDoors, teleportitem, killall, tpall, instaheal, speedhack, flyhack } public class SlotData { public string SlotName { get; set; } public string ContainedItemId { get; set; } public string ContainedItemName { get; set; } public string ContainedItemShortName { get; set; } } public class BackpackItemData { public string ItemId { get; set; } public string ItemName { get; set; } public string ItemShortName { get; set; } public List Slots { get; set; } = new List(); } public enum ColorCategory { ItemESP, ESP, Aimbot, Chams } [StructLayout(LayoutKind.Auto)] [CompilerGenerated] private struct _003CSpawnSelectedPreset_003Ed__388 : IAsyncStateMachine { private static class _003C_003Eo__388 { public static CallSite> _003C_003Ep__0; public static CallSite> _003C_003Ep__1; public static CallSite> _003C_003Ep__2; public static CallSite> _003C_003Ep__3; } public int _003C_003E1__state; public AsyncTaskMethodBuilder _003C_003Et__builder; public Menu2 _003C_003E4__this; private Dictionary _003CslotsDictionary_003E5__2; private ItemFactory _003CitemFactory_003E5__3; private object _003Citem_003E5__4; private IEnumerator _003C_003E7__wrap4; private TaskAwaiter _003C_003Eu__1; private object _003C_003Eu__2; private void MoveNext() { int num = _003C_003E1__state; Menu2 CS_0024_003C_003E8__locals6 = _003C_003E4__this; try { if (num == 0) { goto IL_033e; } dynamic val; if (num == 1) { val = _003C_003Eu__2; _003C_003Eu__2 = null; num = (_003C_003E1__state = -1); goto IL_0726; } if (string.IsNullOrEmpty(CS_0024_003C_003E8__locals6.selectedPresetName) || CS_0024_003C_003E8__locals6.pullItemPresets == null || CS_0024_003C_003E8__locals6.pullItemPresets.templateList == null) { ConsoleScreen.Log("No preset selected or presets list is empty."); } else { TemplateData templateData = CS_0024_003C_003E8__locals6.pullItemPresets.templateList.FirstOrDefault((TemplateData template) => template.PresetName == CS_0024_003C_003E8__locals6.selectedPresetName); if (templateData == null) { ConsoleScreen.Log("Selected preset not found in the list."); } else { ConsoleScreen.Log("Spawning preset: " + templateData.PresetName); KeyValuePair keyValuePair = templateData.ItemTemplate.FirstOrDefault(); if (keyValuePair.Value == null) { ConsoleScreen.Log("No item template found for the selected preset."); } else { string key = keyValuePair.Key; _003CslotsDictionary_003E5__2 = keyValuePair.Value.Slots; _003CitemFactory_003E5__3 = new ItemFactory(); _003Citem_003E5__4 = _003CitemFactory_003E5__3.CreateItem(key); if (!(((dynamic)_003Citem_003E5__4 == null) ? true : false)) { ((dynamic)_003Citem_003E5__4).SpawnedInSession = true; dynamic val2 = ((dynamic)_003Citem_003E5__4).AllSlots; if (val2 != null) { _003C_003E7__wrap4 = ((IEnumerable)val2).GetEnumerator(); goto IL_033e; } ConsoleScreen.Log("No slots found for the main item."); goto IL_0587; } ConsoleScreen.Log("Failed to create the main item from the template."); } } } goto end_IL_000e; IL_0587: val = CS_0024_003C_003E8__locals6.AddItemToBackpack((dynamic)_003Citem_003E5__4).GetAwaiter(); if (!(bool)val.IsCompleted) { num = (_003C_003E1__state = 1); _003C_003Eu__2 = val; ICriticalNotifyCompletion awaiter = val as ICriticalNotifyCompletion; if (awaiter == null) { INotifyCompletion awaiter2 = (INotifyCompletion)(object)val; _003C_003Et__builder.AwaitOnCompleted(ref awaiter2, ref this); awaiter2 = null; } else { _003C_003Et__builder.AwaitUnsafeOnCompleted(ref awaiter, ref this); } awaiter = null; return; } goto IL_0726; IL_0726: val.GetResult(); goto end_IL_000e; IL_033e: try { if (num != 0) { goto IL_0545; } TaskAwaiter awaiter3 = _003C_003Eu__1; _003C_003Eu__1 = default(TaskAwaiter); num = (_003C_003E1__state = -1); goto IL_053e; IL_053e: awaiter3.GetResult(); goto IL_0545; IL_0545: if (_003C_003E7__wrap4.MoveNext()) { dynamic current = _003C_003E7__wrap4.Current; string text = current.FullId; if (_003CslotsDictionary_003E5__2.TryGetValue(text, out var value)) { string itemId = value.ItemId; Item item = _003CitemFactory_003E5__3.CreateItem(itemId); item.SpawnedInSession = true; if (item != null) { try { current.AddWithoutRestrictions(item); ConsoleScreen.Log("Added component item " + itemId + " to slot '" + text + "'."); } catch (Exception ex) { ConsoleScreen.Log("Error adding component to slot '" + text + "': " + ex.Message); } } else { ConsoleScreen.Log("Failed to create component item with ID " + itemId + "."); } } awaiter3 = Task.Delay(10).GetAwaiter(); if (!awaiter3.IsCompleted) { num = (_003C_003E1__state = 0); _003C_003Eu__1 = awaiter3; _003C_003Et__builder.AwaitUnsafeOnCompleted(ref awaiter3, ref this); return; } goto IL_053e; } } finally { if (num < 0 && _003C_003E7__wrap4 is IDisposable disposable) { disposable.Dispose(); } } _003C_003E7__wrap4 = null; goto IL_0587; end_IL_000e:; } catch (Exception exception) { _003C_003E1__state = -2; _003CslotsDictionary_003E5__2 = null; _003CitemFactory_003E5__3 = null; _003Citem_003E5__4 = null; _003C_003Et__builder.SetException(exception); return; } _003C_003E1__state = -2; _003CslotsDictionary_003E5__2 = null; _003CitemFactory_003E5__3 = null; _003Citem_003E5__4 = null; _003C_003Et__builder.SetResult(); } void IAsyncStateMachine.MoveNext() { //ILSpy generated this explicit interface implementation from .override directive in MoveNext this.MoveNext(); } [DebuggerHidden] private void SetStateMachine(IAsyncStateMachine stateMachine) { _003C_003Et__builder.SetStateMachine(stateMachine); } void IAsyncStateMachine.SetStateMachine(IAsyncStateMachine stateMachine) { //ILSpy generated this explicit interface implementation from .override directive in SetStateMachine this.SetStateMachine(stateMachine); } } private QuestModule questModule; private AILister aILister; [SerializeField] public GameObject menu; [SerializeField] public GameObject menuBar; [SerializeField] public GameObject watermark; [SerializeField] public GameObject watermarkmagicbullet; [SerializeField] public GameObject aimbotPanel; [SerializeField] public GameObject playerESPPanel; [SerializeField] public GameObject itemESPPanel; [SerializeField] public GameObject miscOptionsPanel; [SerializeField] public GameObject settingsPanel; [SerializeField] public GameObject itemspawnpanel; [SerializeField] public GameObject aispawnpanel; [SerializeField] public Button aimbotButton; [SerializeField] public Button playerESPButton; [SerializeField] public Button itemESPButton; [SerializeField] public Button miscOptionsButton; [SerializeField] public Button settingsButton; [SerializeField] public Toggle aimbotToggle; [SerializeField] public TMP_Text aimbotSmoothLabel; [SerializeField] public Slider aimbotSmoothSlider; [SerializeField] public Toggle aimbotDrawFOVToggle; [SerializeField] public TMP_Text aimbotFOVLabel; [SerializeField] public Slider aimbotFOVSlider; [SerializeField] public Toggle noRecoilToggle; [SerializeField] public Toggle crosshairToggle; [SerializeField] public Toggle silentAimToggle; [SerializeField] public Toggle silentTargetLinesToggle; [SerializeField] public Toggle instahitToggle; [SerializeField] public Toggle ammodrawToggle; [SerializeField] public TMP_Dropdown aimboneDropdown; [SerializeField] public Toggle CheckVisibletoggle; [SerializeField] public Toggle MagicBulletToggle; [SerializeField] public Toggle infiniteammo; [SerializeField] public Toggle tracers; [SerializeField] public Toggle hitmarkers; [SerializeField] public Toggle drawPlayersToggle; [SerializeField] public Toggle drawPlayerBoxToggle; [SerializeField] public Toggle drawPlayerNameToggle; [SerializeField] public Toggle drawPlayerLineToggle; [SerializeField] public Toggle drawPlayerHealthToggle; [SerializeField] public Toggle drawWeaponToggle; [SerializeField] public Toggle enableSkeletonToggle; [SerializeField] public Toggle ChamsToggle; [SerializeField] public Toggle drawRadarToggle; [SerializeField] public Slider drawPlayersDistanceSlider; [SerializeField] public TMP_Text drawplayerdistancelabel; [SerializeField] public Toggle drawaimpostoggle; [SerializeField] public Slider radardistanceslider; [SerializeField] public TMP_Text radardistancelabel; [SerializeField] public Toggle fullbright; [SerializeField] public Toggle grenadeesp; [SerializeField] public Toggle drawLootItemsToggle; [SerializeField] public Slider drawLootItemsDistanceSlider; [SerializeField] public TMP_Text drawlootitemsdistancelabel; [SerializeField] public Toggle superRareItemsToggle; [SerializeField] public Toggle kappaItemsToggle; [SerializeField] public Toggle questItemsToggle; [SerializeField] public Toggle commonItemsToggle; [SerializeField] public Slider commonItemsDistanceSlider; [SerializeField] public TMP_Text commonItemsdistancelabel; [SerializeField] public Toggle drawLootableContainersToggle; [SerializeField] public Slider drawLootableContainersDistanceSlider; [SerializeField] public TMP_Text drawcontainerdistancelabel; [SerializeField] public Toggle bodyESPToggle; [SerializeField] public Toggle playerInventoryESPToggle; [SerializeField] public Toggle searchItemToggle; [SerializeField] public TMP_InputField searchItemInputField; [SerializeField] public Toggle teleportItemsToggle; [SerializeField] public Toggle drawExfiltrationPointsToggle; [SerializeField] public Toggle flyhackToggle; [SerializeField] public Toggle speedhackToggle; [SerializeField] public Slider speedSlider; [SerializeField] public Toggle maincamfovchanger; [SerializeField] public Slider maincamfov; [SerializeField] public Toggle infStaminaToggle; [SerializeField] public Toggle instaHealToggle; [SerializeField] public Toggle thermalVisionToggle; [SerializeField] public Toggle godmodeToggle; [SerializeField] public Toggle instaSearchToggle; [SerializeField] public Toggle noVisorToggle; [SerializeField] public Toggle flaresToggle; [SerializeField] public Toggle noJamToggle; [SerializeField] public Toggle fireRateToggle; [SerializeField] public Toggle farreachtoggle; [SerializeField] public Toggle invisibletoggle; [SerializeField] public Toggle showitemspawnmenu; [SerializeField] public Toggle weaponchams; [SerializeField] public Button spawnitembutton; [SerializeField] public Button spawnbossbutton; [SerializeField] public Button addxpsessionbutton; [SerializeField] public Button completequestbutton; [SerializeField] public Slider xpslider; [SerializeField] public TMP_Text xpsliderlabel; [SerializeField] public Toggle tppmc; [SerializeField] public Toggle tpboss; [SerializeField] public Toggle alwayssurvived; public static string publicSearchString = "Grenade"; public static string itemidstring = ""; public static string spawnid = ""; [SerializeField] public Button clearCacheKeyButton; [SerializeField] public TMP_Text clearCacheKeyLabel; [SerializeField] public Button skillKeyButton; [SerializeField] public TMP_Text skillKeyLabel; [SerializeField] public Button aimbotKeyButton; [SerializeField] public TMP_Text aimbotKeyLabel; [SerializeField] public Button unlockDoorsKeyButton; [SerializeField] public TMP_Text unlockDoorsKeyLabel; [SerializeField] public Button teleportitembutton; [SerializeField] public TMP_Text teleportitemlabel; [SerializeField] public Button killallbutton; [SerializeField] public TMP_Text killalllabel; [SerializeField] public Button tpallkeybutton; [SerializeField] public TMP_Text tpallkeylabel; [SerializeField] public Button instahealkeybutton; [SerializeField] public TMP_Text instahealkeylabel; [SerializeField] private GameObject itembuttontemplate; [SerializeField] private Transform buttonContainer; [SerializeField] private TMP_InputField searchInputField; [SerializeField] private ScrollRect scrollRect; [SerializeField] public TMP_Text iteminfotext; [SerializeField] public Toggle sicc; [SerializeField] public Toggle thicc; [SerializeField] public Toggle ammobox; [SerializeField] public Toggle fillraidbp; [SerializeField] public Toggle bypassrestrictions; [SerializeField] private Transform traderbuttonContainer; [SerializeField] private ScrollRect traderscrollRect; [SerializeField] private Slider traderreputationSlider; [SerializeField] private Button applyTraderrepButton; [SerializeField] public GameObject traderreppanel; [SerializeField] public TMP_Text traderinfotext; [SerializeField] public TMP_Text traderreptoaddvalue; [SerializeField] private Transform skillButtonContainer; [SerializeField] private ScrollRect skillScrollRect; [SerializeField] private TMP_Text skillInfoText; [SerializeField] private TMP_Text skillLevelToAddText; [SerializeField] private Slider skillLevelSlider; [SerializeField] private Button applySkillButton; [SerializeField] public GameObject skillspanel; [SerializeField] private Transform presetButtonContainer; [SerializeField] private ScrollRect presetScrollRect; [SerializeField] private TMP_Text presetInfoText; [SerializeField] private Button spawnpresetitembutton; [SerializeField] private GameObject presetsPanel; [SerializeField] private TMP_InputField searchInputFieldTemplates; [SerializeField] public GameObject updatepanel; [SerializeField] private Button closeupdatebutton; [SerializeField] private TMP_Text updateinfo; [SerializeField] public Toggle stimsItemsToggle; [SerializeField] public TMP_InputField TPItemInputField; [SerializeField] public Toggle superrareTPToggle; [SerializeField] public Toggle KappaTPToggle; [SerializeField] public Toggle QuestTPToggle; [SerializeField] public Toggle StimsTPToggle; [SerializeField] public Toggle SearchTPToggle; [SerializeField] private Button saveprimaryweapon; [SerializeField] private Button loadfromfilebutton; [SerializeField] public Toggle autofillslots; [SerializeField] public GameObject aiButtonTemplate; [SerializeField] public Transform aiButtonContainer; [SerializeField] public TMP_Text aiInfoText; [SerializeField] public TMP_InputField aiSearchBar; [SerializeField] public ScrollRect aiScrollRect; [SerializeField] public GameObject helppanel; [SerializeField] private Button closehelpbutton; [SerializeField] private Button openhelpbutton; [SerializeField] public Toggle QuestESP; [SerializeField] public Toggle QuestDescription; [SerializeField] public Toggle SimplifiedStrings; [SerializeField] public Toggle DrawOutline; [SerializeField] public Toggle DrawTripWires; [SerializeField] public Toggle Artillery; [SerializeField] public Slider SkeletonUpdateSlider; [SerializeField] public Slider FONTSIZE; [SerializeField] public TMP_Text FONTSIZETXT; [SerializeField] public TMP_Text SkeletonUpdateSliderText; [SerializeField] public Toggle DrawWatermark; [SerializeField] public Toggle DurabilityExploit; [SerializeField] public Toggle DrawHideoutItems; [SerializeField] public Toggle DrawWishlistItems; [SerializeField] public Toggle DrawItemValue; [SerializeField] public Toggle filtersuperrare; [SerializeField] public Toggle filterkappa; [SerializeField] public Toggle filterquest; [SerializeField] public Toggle filterwishlist; [SerializeField] public Toggle filterstim; [SerializeField] public Toggle filterhideout; [SerializeField] public Toggle filtervalue; [SerializeField] public Slider filtervalueslider; [SerializeField] public TMP_Text filtervalueslidertext; [SerializeField] public Button addtowishlist; [SerializeField] public Button Refresh; [SerializeField] private GameObject MainColorSettingsMenu; [SerializeField] private GameObject colorButtonTemplate; [SerializeField] private Transform colorButtonContainer; [SerializeField] private GameObject colorSettingMenu; [SerializeField] private Slider redSlider; [SerializeField] private Slider greenSlider; [SerializeField] private Slider blueSlider; [SerializeField] private Image colorPreview; [SerializeField] private Button applyColorButton; [SerializeField] private TMP_Text colorNameText; [SerializeField] private TMP_Dropdown categoryDropdown; [SerializeField] private Button CancelColorButton; [SerializeField] public Slider ESPfiltervalueslider; [SerializeField] public Toggle ESPfiltervalue; [SerializeField] private TMP_Text ESPfiltervaluesliderlabel; [SerializeField] public Toggle ShowColorMenu; [SerializeField] public Button MaxWeaponSkills; [SerializeField] public Toggle TPHideoutItems; [SerializeField] public Toggle TPWishlistItems; [SerializeField] public Toggle TPHVItems; [SerializeField] public Toggle SpoofNicknameToggle; [SerializeField] public Button speedhacktogglekeybutton1; [SerializeField] public TMP_Text speedhacktogglekeylabel1; [SerializeField] public Button flyhacktogglekeybutton1; [SerializeField] public TMP_Text flyhacktogglekeylabel1; [SerializeField] public Toggle disableallinputs; [SerializeField] public TMP_Text bulletspershotLabel; [SerializeField] public Toggle bulletspershottoggle; [SerializeField] public Slider bulletspershot; [SerializeField] public Toggle bigheadstoggle; [SerializeField] public Slider ItemTPRadiusSlider; [SerializeField] public TMP_Text ItemTPRadiusLabel; [SerializeField] private GameObject TransitPanel; [SerializeField] public GameObject transitButtonTemplate; [SerializeField] public Transform transitButtonContainer; [SerializeField] public ScrollRect transitScrollRect; [SerializeField] public TMP_Text transitInfoText; [SerializeField] public Button applyTransitButton; [SerializeField] public Button senditemsTransitButton; [SerializeField] public Button canceltransitbutton; [SerializeField] public Toggle showraidsettingsmenu; [SerializeField] private TMP_Text notransitstexttmp; [SerializeField] private GameObject RaidSettingsPanel; [SerializeField] private TMP_Dropdown botAmountDropdown; [SerializeField] private TMP_Dropdown botDifficultyDropdown; [SerializeField] private Toggle taggedAndCursedToggle; [SerializeField] private Toggle scavwartoggle; [SerializeField] private Toggle metabolismDisabledToggle; [SerializeField] private TMP_Dropdown windTypeDropdown; [SerializeField] private TMP_Dropdown timeFlowTypeDropdown; [SerializeField] private TMP_Dropdown cloudinessTypeDropdown; [SerializeField] private TMP_Dropdown rainTypeDropdown; [SerializeField] public Toggle modifyraidsettingstoggle; [SerializeField] private GameObject EntityPanel; [SerializeField] private Transform entityButtonContainer; [SerializeField] private GameObject entityButtonTemplate; [SerializeField] private TMP_Text entityInfoText; [SerializeField] private ScrollRect entityScrollRect; [SerializeField] private Button killEntityButton; [SerializeField] private Button healEntityButton; [SerializeField] private Button tpEntityToCrosshairButton; [SerializeField] private Button makebraindeadbutton; [SerializeField] private Button GiveBotBlickyKit; [SerializeField] private Button GiveAllBotsBlickyKitButton; [SerializeField] private TMP_Text noentitiestexttmp; [SerializeField] public Toggle makeallbotsfriendlytoggle; [Header("Main Advanced Item Spawning Stuff")] [SerializeField] private Button OpenADvancedItemSpawningButton; [SerializeField] private GameObject advancedItemPanel; [SerializeField] private Button spawnadvancedButton; [SerializeField] private Button cancelButton; [SerializeField] private Button refreshSlotsButton; [SerializeField] private Button saveToFileButton; [SerializeField] private Button saveToPresetListButton; [Header("Buff UI")] [SerializeField] private Transform buffListContainer; [SerializeField] private GameObject buffButtonTemplate; [SerializeField] private GameObject buffEditWindow; [SerializeField] private Slider buffSlider; [SerializeField] private TMP_Text buffNameText; [SerializeField] private TMP_Text buffValueText; [SerializeField] private Button applyBuffButton; [SerializeField] private TMP_Dropdown buffTypeDropdown; [Header("Slot UI")] [SerializeField] private Transform slotListContainer; [SerializeField] private GameObject slotButtonTemplate; [Header("Slot Item Selection UI")] [SerializeField] private GameObject slotItemWindow; [SerializeField] private TMP_Text slotItemWindowTitle; [SerializeField] private TMP_Text slotItemInfoText; [SerializeField] private Transform slotCompatibleItemsContainer; [SerializeField] private GameObject compatibleItemButtonTemplate; [SerializeField] private Button cancelSlotButton; [SerializeField] private Button applySlotButton; [Header("Item Save Window")] [SerializeField] private Button confirmSaveButton; [SerializeField] private Button cancelSaveButton; [SerializeField] private GameObject popupWindow; [SerializeField] private TMP_InputField presetNameInput; private SaveType currentSaveType; private List cachedBuffs = new List(); private List<(string slotName, dynamic slotRef)> cachedSlots = new List<(string, object)>(); private BuffComponent currentEditingBuff; private string selectedSlotItemId; private dynamic currentEditingSlotRef; private string currentSlotName; private bool populatedTransits; private bool wasInGame; private int selectedTransitId = -1; private string selectedAIName; private string empty = ""; public static string TPItemInputstring = "Grenade"; private string selectedColorKey; private string selectedTraderId; private bool waitingForKey; private KeybindType currentKeybindType; private List ItemsList; public static Main main = new Main(); public static PullItemIDs pullItemIDs; private string selectedSkillName; private PullItemPresets pullItemPresets; private string selectedPresetName; private bool populatedtemplates; public static bool showmenu = false; public static bool closedupdate = false; public static bool showhelp = false; public bool hidspawnmenuforcolor; private static int entitylistcount = 0; private static float entitylistupdatedelay = 5f; private static float nextentitycachetime; private static string advanceditemidcache; private dynamic advanceditemcache; public bool updatep = true; private float debounceTime = 0.5f; private Coroutine debounceCoroutine; private float newDebounceTime = 0.5f; private Coroutine newDebounceCoroutine; private Coroutine spawnDebounceCoroutine; private Coroutine searchDebounceCoroutine; private Coroutine aisearchDebounceCoroutine; private Dictionary skillLevels = new Dictionary { { "Strength", 0 }, { "StressResistance", 0 }, { "MagDrills", 0 }, { "Melee", 0 }, { "HideoutManagement", 0 }, { "Crafting", 0 }, { "HeavyVests", 0 }, { "LightVests", 0 }, { "RecoilControl", 0 }, { "LMG", 0 }, { "Assault", 0 }, { "Pistol", 0 }, { "Perception", 0 }, { "Sniper", 0 }, { "Sniping", 0 }, { "Endurance", 0 }, { "Throwing", 0 }, { "Charisma", 0 }, { "BotReload", 0 }, { "TroubleShooting", 0 }, { "Health", 0 }, { "Vitality", 0 }, { "Metabolism", 0 }, { "Immunity", 0 }, { "Intellect", 0 }, { "Attention", 0 }, { "Shotgun", 0 }, { "HMG", 0 }, { "Launcher", 0 }, { "DMR", 0 }, { "AimDrills", 0 }, { "Surgery", 0 }, { "CovertMovement", 0 }, { "Search", 0 }, { "FieldMedicine", 0 }, { "FirstAid", 0 }, { "SMG", 0 }, { "WeaponTreatment", 0 }, { "Revolver", 0 }, { "AttachedLauncher", 0 } }; private Item item; private ItemPresetManager presetManager = new ItemPresetManager(); private bool saveFlag; private Item item12; private Dictionary traderIDs = new Dictionary { { "Prapor", "54cb50c76803fa8b248b4571" }, { "Therapist", "54cb57776803fa99248b456e" }, { "Fence", "579dc571d53a0658a154fbec" }, { "Skier", "58330581ace78e27b8b10cee" }, { "Peacekeeper", "5935c25fb3acc3127c3d8cd9" }, { "Mechanic", "5a7c2eca46aef81a7ca2145d" }, { "Ragman", "5ac3b934156ae10c4430e83c" }, { "Jaeger", "5c0647fdd443bc2504c2d371" }, { "Lighthouse Keeper", "638f541a29ffd1183d187f57" } }; public static Dictionary getColor, Action setColor, string description, ColorCategory category)> ColorDictionary = new Dictionary, Action, string, ColorCategory)> { { "SuperrareColor", (() => Settings.SuperrareColor, delegate(Color value) { Settings.SuperrareColor = value; }, "Super rare items Color", ColorCategory.ItemESP) }, { "KappaColor", (() => Settings.KappaColor, delegate(Color value) { Settings.KappaColor = value; }, "Kappa items Color", ColorCategory.ItemESP) }, { "QuestItemColor", (() => Settings.QuestItemColor, delegate(Color value) { Settings.QuestItemColor = value; }, "Quest items Color", ColorCategory.ItemESP) }, { "StimItemColor", (() => Settings.StimItemColor, delegate(Color value) { Settings.StimItemColor = value; }, "Stim items Color", ColorCategory.ItemESP) }, { "HideoutColor", (() => Settings.HideoutColor, delegate(Color value) { Settings.HideoutColor = value; }, "Hideout items Color", ColorCategory.ItemESP) }, { "WishlistColor", (() => Settings.WishlistColor, delegate(Color value) { Settings.WishlistColor = value; }, "Wishlist items Color", ColorCategory.ItemESP) }, { "SearchedColor", (() => Settings.SearchedColor, delegate(Color value) { Settings.SearchedColor = value; }, "Searched items Color", ColorCategory.ItemESP) }, { "CommonItemColor", (() => Settings.CommonItemColor, delegate(Color value) { Settings.CommonItemColor = value; }, "Common items Color", ColorCategory.ItemESP) }, { "USECColor", (() => Settings.USECColor, delegate(Color value) { Settings.USECColor = value; }, "USEC Color ", ColorCategory.ESP) }, { "BEARColor", (() => Settings.BEARColor, delegate(Color value) { Settings.BEARColor = value; }, "BEAR Color", ColorCategory.ESP) }, { "BossColor", (() => Settings.BossandGuardColor, delegate(Color value) { Settings.BossandGuardColor = value; }, "Bosses Color", ColorCategory.ESP) }, { "GuardColor", (() => Settings.GuardColor, delegate(Color value) { Settings.GuardColor = value; }, "Guard Color", ColorCategory.ESP) }, { "ScavColor", (() => Settings.ScavColor, delegate(Color value) { Settings.ScavColor = value; }, "Scav Color", ColorCategory.ESP) }, { "ZombieColor", (() => Settings.ZombieColor, delegate(Color value) { Settings.ZombieColor = value; }, "Zombie Color", ColorCategory.ESP) }, { "RogueColor", (() => Settings.RogueColor, delegate(Color value) { Settings.RogueColor = value; }, "Rogue Color", ColorCategory.ESP) }, { "RaiderColor", (() => Settings.RaiderColor, delegate(Color value) { Settings.RaiderColor = value; }, "Raider Color", ColorCategory.ESP) }, { "CultistColor", (() => Settings.CultistColor, delegate(Color value) { Settings.CultistColor = value; }, "Cultist Color", ColorCategory.ESP) }, { "BTRColor", (() => Settings.BTRColor, delegate(Color value) { Settings.BTRColor = value; }, "BTR", ColorCategory.ESP) }, { "ESPBoxColor", (() => Settings.ESPBoxColor, delegate(Color value) { Settings.ESPBoxColor = value; }, "Box ESP Hidden", ColorCategory.ESP) }, { "ESPBoxVisColor", (() => Settings.boxsightline, delegate(Color value) { Settings.boxsightline = value; }, "Box ESP Visible", ColorCategory.ESP) }, { "ESPLineColor", (() => Settings.ESPLineColor, delegate(Color value) { Settings.ESPLineColor = value; }, "Line ESP Hidden", ColorCategory.ESP) }, { "ESPLineColorVisible", (() => Settings.isvisibleline, delegate(Color value) { Settings.isvisibleline = value; }, "Line ESP Visible", ColorCategory.ESP) }, { "SkeletonColor", (() => Settings.SkeletonColor, delegate(Color value) { Settings.SkeletonColor = value; }, "Skeleton ESP Color", ColorCategory.ESP) }, { "EnemyWeaponTextColor", (() => Settings.EnemyWeaponTextColor, delegate(Color value) { Settings.EnemyWeaponTextColor = value; }, "Enemy Weapon Text", ColorCategory.ESP) }, { "EnemyWeaponAMMOTextColor", (() => Settings.EnemyAmmoCounterColor, delegate(Color value) { Settings.EnemyAmmoCounterColor = value; }, "Enemy Ammo Count", ColorCategory.ESP) }, { "EnemyHealingTextColor", (() => Settings.healingcolor, delegate(Color value) { Settings.healingcolor = value; }, "Enemy Healing Indicator", ColorCategory.ESP) }, { "TeammateColor", (() => Settings.teammatecolor, delegate(Color value) { Settings.teammatecolor = value; }, "Teammate Color", ColorCategory.ESP) }, { "PlayerScavColor", (() => Settings.playerscavcolor, delegate(Color value) { Settings.playerscavcolor = value; }, "Player Scav Color", ColorCategory.ESP) }, { "Selected Entity Color", (() => Settings.SelectedEntityColor, delegate(Color value) { Settings.SelectedEntityColor = value; }, "Selected Entity Color", ColorCategory.ESP) }, { "CrosshairColor", (() => Settings.CrosshairColor, delegate(Color value) { Settings.CrosshairColor = value; }, "Crosshair Color", ColorCategory.Aimbot) }, { "TargetSnaplineColor", (() => Settings.TargetSnaplineColor, delegate(Color value) { Settings.TargetSnaplineColor = value; }, "Aim Target snapline Color", ColorCategory.Aimbot) }, { "AimFOVColor", (() => Settings.AimFOVColor, delegate(Color value) { Settings.AimFOVColor = value; }, "Aim FOV circle Color", ColorCategory.Aimbot) }, { "AmmoCounterColor", (() => Settings.AmmoCounterColor, delegate(Color value) { Settings.AmmoCounterColor = value; }, "Ammo counter Color", ColorCategory.Aimbot) }, { "TracerColor", (() => Settings.TracerColor, delegate(Color value) { Settings.TracerColor = value; }, "Tracers Color", ColorCategory.Aimbot) }, { "HitmarkerHeadShotColor", (() => Settings.HitmarkerHeadShotColor, delegate(Color value) { Settings.HitmarkerHeadShotColor = value; }, "Hitmarker for headshots Color", ColorCategory.Aimbot) }, { "HitmarkerHitColor", (() => Settings.HitmarkerHitColor, delegate(Color value) { Settings.HitmarkerHitColor = value; }, "Hitmarker for hits Color", ColorCategory.Aimbot) }, { "ExfilColor", (() => Settings.ExfilESPColor, delegate(Color value) { Settings.ExfilESPColor = value; }, "Exfil Point Color", ColorCategory.ESP) }, { "TransitColor", (() => Settings.TransitPointColor, delegate(Color value) { Settings.TransitPointColor = value; }, "Transit Point Color", ColorCategory.ESP) }, { "PChamsHidden", (() => Settings.PlayerChamsHidden, delegate(Color value) { Settings.PlayerChamsHidden = value; }, "Player Chams Hidden", ColorCategory.Chams) }, { "PChamsVisible", (() => Settings.PlayerChamsVisible, delegate(Color value) { Settings.PlayerChamsVisible = value; }, "Player Chams Visible", ColorCategory.Chams) }, { "GChamsHidden", (() => Settings.GrenadeHidden, delegate(Color value) { Settings.GrenadeHidden = value; }, "Grenade Chams Hidden", ColorCategory.Chams) }, { "GChamsVisible", (() => Settings.GrenadeVisible, delegate(Color value) { Settings.GrenadeVisible = value; }, "Grenade Chams Visible", ColorCategory.Chams) }, { "TChamsHidden", (() => Settings.TripwireHidden, delegate(Color value) { Settings.TripwireHidden = value; }, "Tripwire Chams Hidden", ColorCategory.Chams) }, { "TChamsVisible", (() => Settings.TripwireVisible, delegate(Color value) { Settings.TripwireVisible = value; }, "Tripwire Chams Visible", ColorCategory.Chams) }, { "SChamsColor", (() => Settings.SelfChamsColor, delegate(Color value) { Settings.SelfChamsColor = value; }, "Self Chams Color", ColorCategory.Chams) } }; public static Player selectedEntity; private Dictionary activeEntityButtons = new Dictionary(); private void Start() { questModule = UnityEngine.Object.FindObjectOfType(); aILister = UnityEngine.Object.FindObjectOfType(); pullItemPresets = UnityEngine.Object.FindObjectOfType(); pullItemIDs = UnityEngine.Object.FindObjectOfType(); itembuttontemplate.SetActive(value: false); PopulateRaidSettingsDropdowns(); LoadSettings(); Initialize(); if (menu != null) { Canvas component = menu.GetComponent(); if (component != null) { component.sortingOrder = 32767; } CanvasGroup component2 = menu.GetComponent(); if (component2 != null) { component2.blocksRaycasts = component2.alpha > 0f; component2.ignoreParentGroups = false; component2.interactable = true; } menuBar.SetActive(value: false); watermark.SetActive(value: false); watermarkmagicbullet.SetActive(value: false); helppanel.SetActive(value: false); updatepanel.SetActive(value: true); } if (searchItemInputField != null) { searchItemInputField.onEndEdit.AddListener(OnSearchItemInputEndEdit); searchItemInputField.onValueChanged.AddListener(OnSearchItemValueChanged); } if (TPItemInputField != null) { TPItemInputField.onEndEdit.AddListener(TPItemInputEndEdit); TPItemInputField.onValueChanged.AddListener(TPItemValueChanged); } if (closeupdatebutton != null) { closeupdatebutton.onClick.AddListener(UpdateWindow); } if (openhelpbutton != null) { openhelpbutton.onClick.AddListener(ShowHelpPanel); } if (closehelpbutton != null) { closehelpbutton.onClick.AddListener(HideHelpPanel); } if (Refresh != null) { Refresh.onClick.AddListener(Refreshsearchupdate); } if (addtowishlist != null) { addtowishlist.onClick.AddListener(AddItemToWishList); } clearCacheKeyButton.onClick.AddListener(delegate { OnKeybindButtonClick(KeybindType.ClearCache); }); skillKeyButton.onClick.AddListener(delegate { OnKeybindButtonClick(KeybindType.Skill); }); aimbotKeyButton.onClick.AddListener(delegate { OnKeybindButtonClick(KeybindType.Aimbot); }); unlockDoorsKeyButton.onClick.AddListener(delegate { OnKeybindButtonClick(KeybindType.UnlockDoors); }); teleportitembutton.onClick.AddListener(delegate { OnKeybindButtonClick(KeybindType.teleportitem); }); killallbutton.onClick.AddListener(delegate { OnKeybindButtonClick(KeybindType.killall); }); tpallkeybutton.onClick.AddListener(delegate { OnKeybindButtonClick(KeybindType.tpall); }); instahealkeybutton.onClick.AddListener(delegate { OnKeybindButtonClick(KeybindType.instaheal); }); speedhacktogglekeybutton1.onClick.AddListener(delegate { OnKeybindButtonClick(KeybindType.speedhack); }); flyhacktogglekeybutton1.onClick.AddListener(delegate { OnKeybindButtonClick(KeybindType.flyhack); }); applyTraderrepButton.onClick.AddListener(OnApplyButtonClick); applyTransitButton.onClick.AddListener(OnApplyTransitButtonClick); senditemsTransitButton.onClick.AddListener(OnSendItemsTransitButtonClick); canceltransitbutton.onClick.AddListener(OnCancelCountdownClick); if (traderreputationSlider != null) { traderreputationSlider.value = Settings.reptoadd; traderreputationSlider.onValueChanged.AddListener(OnSliderValueChanged); } MaxWeaponSkills.onClick.AddListener(MaxWeaponskill); redSlider.onValueChanged.AddListener(OnColorSliderValueChanged); blueSlider.onValueChanged.AddListener(OnColorSliderValueChanged); greenSlider.onValueChanged.AddListener(OnColorSliderValueChanged); InitializeColorSliders(); categoryDropdown.ClearOptions(); categoryDropdown.AddOptions(Enum.GetNames(typeof(ColorCategory)).ToList()); categoryDropdown.onValueChanged.AddListener(delegate { OnCategoryDropdownChanged(); }); PopulateColorList(); colorSettingMenu.SetActive(value: false); CancelColorButton.onClick.AddListener(OnCancelColorChangeClick); applyColorButton.onClick.AddListener(OnApplyColorButtonClick); killEntityButton.onClick.AddListener(OnKillEntityClick); tpEntityToCrosshairButton.onClick.AddListener(OnTeleportEntityClick); healEntityButton.onClick.AddListener(OnHealEntityClick); makebraindeadbutton.onClick.AddListener(onmakebraindeadclick); GiveBotBlickyKit.onClick.AddListener(ongivebotblickykitclick); GiveAllBotsBlickyKitButton.onClick.AddListener(ongiveallbotsblickykitclick); PopulateTraderList(); PopulateSkillList(); PopulateAIMenu(); skillLevelSlider.onValueChanged.AddListener(OnSkillLevelSliderValueChanged); applySkillButton.onClick.AddListener(OnApplySkillButtonClick); skillLevelSlider.value = 0f; skillLevelToAddText.text = $"Level to Set: {skillLevelSlider.value:F0}"; spawnpresetitembutton.onClick.AddListener(SpawnTemplateDelegate); saveToFileButton.onClick.AddListener(delegate { OpenPopupSaveFile(); }); saveToPresetListButton.onClick.AddListener(delegate { OpenPopupSaveList(); }); confirmSaveButton.onClick.AddListener(OnConfirmSave); cancelSaveButton.onClick.AddListener(delegate { popupWindow.SetActive(value: false); }); popupWindow.SetActive(value: false); InitializeAimboneDropdown(); UpdateAimbotSettingsUI(); UpdatePlayerESPSettingsUI(); UpdateItemESPSettingsUI(); UpdateMiscOptionsSettingsUI(); AddToggleListeners(); AddSliderListeners(); advancedItemPanel.SetActive(value: false); OpenADvancedItemSpawningButton.onClick.AddListener(Spawnitemadvanced); } private void LoadSettings() { UpdateAimbotSettingsUI(); UpdatePlayerESPSettingsUI(); UpdateItemESPSettingsUI(); UpdateMiscOptionsSettingsUI(); } private void SaveSettings() { Settings.SaveSettings(); } public void Initialize() { if (aimbotButton != null) { aimbotButton.onClick.AddListener(ShowAimbotPanel); } if (playerESPButton != null) { playerESPButton.onClick.AddListener(ShowPlayerESPPanel); } if (itemESPButton != null) { itemESPButton.onClick.AddListener(ShowItemESPPanel); } if (miscOptionsButton != null) { miscOptionsButton.onClick.AddListener(ShowMiscOptionsPanel); } if (settingsButton != null) { settingsButton.onClick.AddListener(ShowSettingsPanel); } if (spawnitembutton != null) { spawnitembutton.onClick.AddListener(OnSpawnItemButtonClick); } if (saveprimaryweapon != null) { saveprimaryweapon.onClick.AddListener(SavePrimaryWeaponToJson); } if (loadfromfilebutton != null) { loadfromfilebutton.onClick.AddListener(LoadandSpawnitem); } if (spawnbossbutton != null) { spawnbossbutton.onClick.AddListener(SpawnBot); } if (addxpsessionbutton != null) { addxpsessionbutton.onClick.AddListener(XPAdder); } if (completequestbutton != null) { completequestbutton.onClick.AddListener(FinishQuestsWrapper); } if (searchInputField != null) { searchInputField.onEndEdit.AddListener(OnSearchTextChanged); } if (searchInputFieldTemplates != null) { searchInputFieldTemplates.onEndEdit.AddListener(OnTemplateSearchTextChanged); } if (aiSearchBar != null) { aiSearchBar.onEndEdit.AddListener(OnAISearchTextChanged); } HideAllPanels(); UpdateKeybindLabels(); } private void Update() { if (!updatep) { return; } try { if (!populatedTransits && LocationsFixerV2.transitPoints.Count > 0 && Main.GameWorld != null && transitButtonTemplate != null) { populatedTransits = true; PopulateTransitList(); } if (populatedTransits && Main.GameWorld == null) { populatedTransits = false; } if (LocationsFixerV2.transitPoints.Count == 0 && transitButtonContainer.childCount >= 1 && transitButtonTemplate != null && transitButtonContainer != null) { PopulateTransitList(); } if (Main.GamePlayers.Count > 0 && entityButtonTemplate != null) { UpdateEntityList(); } if (Main.GamePlayers.Count == 0 && entityButtonContainer.childCount >= 1 && entityButtonTemplate != null && entityButtonContainer != null) { UpdateEntityList(); } if (closedupdate && watermark != null && watermarkmagicbullet != null) { if (Settings.MagicBullet && Settings.drawwatermark) { watermark.SetActive(value: false); watermarkmagicbullet.SetActive(value: true); } else if (Settings.drawwatermark) { watermark.SetActive(value: true); watermarkmagicbullet.SetActive(value: false); } else { watermark.SetActive(value: false); watermarkmagicbullet.SetActive(value: false); } } if (Input.GetKeyDown(KeyCode.Insert) && showmenu) { if (menuBar != null) { menuBar.SetActive(!menuBar.activeSelf); } ClearButtons(); } if (Settings.sicc) { Settings.ammobox = false; } if (Settings.ammobox) { Settings.sicc = false; } if (Settings.fillraidbp) { Settings.thicc = false; } if (Settings.thicc) { Settings.fillraidbp = false; } UpdateAimbotSettingsUI(); UpdatePlayerESPSettingsUI(); UpdateItemESPSettingsUI(); UpdateMiscOptionsSettingsUI(); if (showmenu) { if (itemspawnpanel != null && Settings.Itemspawnmenu) { if (Settings.showraidsettingsmenu) { Settings.showraidsettingsmenu = false; itemspawnpanel.SetActive(value: true); } else { itemspawnpanel.SetActive(value: true); } } else if (itemspawnpanel != null) { itemspawnpanel.SetActive(value: false); } if (aispawnpanel != null && Settings.Itemspawnmenu) { aispawnpanel.SetActive(value: true); } else if (aispawnpanel != null) { aispawnpanel.SetActive(value: false); } if (traderreppanel != null && Settings.Itemspawnmenu) { traderreppanel.SetActive(value: true); } else if (traderreppanel != null) { traderreppanel.SetActive(value: false); } if (skillspanel != null && Settings.Itemspawnmenu) { skillspanel.SetActive(value: true); } else if (skillspanel != null) { skillspanel.SetActive(value: false); } if (presetsPanel != null && Settings.Itemspawnmenu) { presetsPanel.SetActive(value: true); } else if (presetsPanel != null) { presetsPanel.SetActive(value: false); } if (MainColorSettingsMenu != null && Settings.ShowColorSettingsMenu) { MainColorSettingsMenu.SetActive(value: true); if (Settings.Itemspawnmenu && !hidspawnmenuforcolor) { hidspawnmenuforcolor = true; Settings.Itemspawnmenu = false; } } else if (MainColorSettingsMenu != null) { MainColorSettingsMenu.SetActive(value: false); if (!Settings.Itemspawnmenu && hidspawnmenuforcolor) { hidspawnmenuforcolor = false; Settings.Itemspawnmenu = true; } } if (TransitPanel != null && Settings.showraidsettingsmenu) { if (Settings.Itemspawnmenu) { Settings.Itemspawnmenu = false; TransitPanel.SetActive(value: true); RaidSettingsPanel.SetActive(value: true); EntityPanel.SetActive(value: true); } else { TransitPanel.SetActive(value: true); RaidSettingsPanel.SetActive(value: true); EntityPanel.SetActive(value: true); } } else if (TransitPanel != null) { TransitPanel.SetActive(value: false); RaidSettingsPanel.SetActive(value: false); EntityPanel.SetActive(value: false); } } if (waitingForKey && Input.anyKeyDown) { foreach (KeyCode value in Enum.GetValues(typeof(KeyCode))) { if (Input.GetKeyDown(value)) { AssignKeybind(value); break; } } waitingForKey = false; } if (!populatedtemplates) { PopulateAllTemplates(); } if (Settings.modifyraidsettings) { ApplyRaidSettings(); } } catch (Exception) { } } public void UpdateWindow() { closedupdate = true; updatepanel.SetActive(value: false); menuBar.SetActive(value: true); menu.SetActive(value: true); aimbotPanel.SetActive(value: true); if (Settings.MagicBullet) { watermarkmagicbullet.SetActive(value: true); } else { watermark.SetActive(value: true); } showmenu = true; } public void ShowHelpPanel() { showhelp = true; if (helppanel != null && showhelp) { menuBar.SetActive(value: false); helppanel.SetActive(value: true); } } public void HideHelpPanel() { showhelp = false; if (helppanel != null && !showhelp) { menuBar.SetActive(value: true); helppanel.SetActive(value: false); } } public void XPAdder() { if (!(Main.GameWorld = null)) { int num = (int)Settings.expamount; Main.LocalPlayer.Profile.EftStats.SessionCounters.SetLong(num, CounterTag.Exp); ConsoleScreen.Log("patchedxp"); } } public void NullifyRiskyCounters() { long value = 0L; Main.LocalPlayer.Profile.EftStats.SessionCounters.SetLong(value, CounterTag.Money, ECurrencyType.RUB); Main.LocalPlayer.Profile.EftStats.SessionCounters.SetLong(value, CounterTag.Keys); Main.LocalPlayer.Profile.EftStats.SessionCounters.SetLong(value, CounterTag.Money, ECurrencyType.EUR); Main.LocalPlayer.Profile.EftStats.SessionCounters.SetLong(value, CounterTag.Money, ECurrencyType.USD); } public void ShowAimbotPanel() { HideAllPanels(); aimbotPanel.SetActive(value: true); } public void ShowPlayerESPPanel() { HideAllPanels(); playerESPPanel.SetActive(value: true); } public void ShowItemESPPanel() { HideAllPanels(); itemESPPanel.SetActive(value: true); } public void ShowMiscOptionsPanel() { HideAllPanels(); miscOptionsPanel.SetActive(value: true); } private void FinishQuestsWrapper() { questModule.FinishQuests(); } public void ShowSettingsPanel() { HideAllPanels(); settingsPanel.SetActive(value: true); } public void LoadandSpawnitem() { LoadAndSpawnItemFromJson(); } private void OnSearchTextChanged(string searchTerm) { if (debounceCoroutine != null) { StopCoroutine(debounceCoroutine); } debounceCoroutine = StartCoroutine(DebounceUpdateSearchResults(searchTerm)); } public void SpawnTemplateDelegate() { if (spawnDebounceCoroutine != null) { StopCoroutine(spawnDebounceCoroutine); } spawnDebounceCoroutine = StartCoroutine(DebounceSpawnSelectedPreset()); } private IEnumerator DebounceSpawnSelectedPreset() { yield return new WaitForSeconds(0.1f); SpawnSelectedPreset(); } public void OnTemplateSearchTextChanged(string searchText) { if (searchDebounceCoroutine != null) { StopCoroutine(searchDebounceCoroutine); } searchDebounceCoroutine = StartCoroutine(DebounceUpdateSearchText(searchText)); } public void OnAISearchTextChanged(string searchText) { if (aisearchDebounceCoroutine != null) { StopCoroutine(aisearchDebounceCoroutine); } aisearchDebounceCoroutine = StartCoroutine(DebounceAISearchText(searchText)); } private IEnumerator DebounceUpdateSearchText(string searchTerm) { yield return new WaitForSeconds(0.1f); UpdatePresetResults(searchTerm); } private IEnumerator DebounceAISearchText(string searchTerm) { yield return new WaitForSeconds(0.1f); UpdateAIResults(searchTerm); } private void ClearButtons() { foreach (Transform item in buttonContainer) { UnityEngine.Object.Destroy(item.gameObject); } } private void ClearPresetButtons() { foreach (Transform item in presetButtonContainer) { UnityEngine.Object.Destroy(item.gameObject); } } private void OnSpawnItemButtonClick() { if (newDebounceCoroutine != null) { StopCoroutine(newDebounceCoroutine); } newDebounceCoroutine = StartCoroutine(HandleDebouncedEvent()); } private IEnumerator HandleDebouncedEvent() { yield return new WaitForSeconds(newDebounceTime); SpawnItemHelper(); } private IEnumerator DebounceUpdateSearchResults(string searchTerm) { yield return new WaitForSeconds(debounceTime); UpdateSearchResults(searchTerm); } private void InitializeColorSliders() { redSlider.minValue = 0f; redSlider.maxValue = 1f; greenSlider.minValue = 0f; greenSlider.maxValue = 1f; blueSlider.minValue = 0f; blueSlider.maxValue = 1f; redSlider.onValueChanged.AddListener(OnColorSliderValueChanged); greenSlider.onValueChanged.AddListener(OnColorSliderValueChanged); blueSlider.onValueChanged.AddListener(OnColorSliderValueChanged); } private void PopulateColorList() { foreach (Transform item2 in colorButtonContainer) { UnityEngine.Object.Destroy(item2.gameObject); } ColorCategory value = (ColorCategory)categoryDropdown.value; foreach (KeyValuePair, Action, string, ColorCategory)> item3 in ColorDictionary) { string colorName = item3.Key; Color color = item3.Value.Item1(); string item = item3.Value.Item3; if (item3.Value.Item4 != value) { continue; } GameObject gameObject = UnityEngine.Object.Instantiate(colorButtonTemplate, colorButtonContainer); if (gameObject == null) { continue; } TMP_Text componentInChildren = gameObject.GetComponentInChildren(); if (componentInChildren != null) { componentInChildren.text = item ?? ""; } Image componentInChildren2 = gameObject.GetComponentInChildren(); if (componentInChildren2 != null) { componentInChildren2.color = color; } Button component = gameObject.GetComponent