Exemple #1
0
    // Token: 0x060039D9 RID: 14809 RVA: 0x000CBAD0 File Offset: 0x000C9CD0
    public override global::InventoryItem.MergeResult TryCombine(global::IInventoryItem otherItem)
    {
        global::PlayerInventory playerInventory = base.inventory as global::PlayerInventory;

        if (!playerInventory || otherItem.inventory != playerInventory)
        {
            return(global::InventoryItem.MergeResult.Failed);
        }
        global::ItemDataBlock datablock = otherItem.datablock;

        if (!datablock || !datablock.isResearchable)
        {
            Rust.Notice.Popup("", "You can't research this", 4f);
            return(global::InventoryItem.MergeResult.Failed);
        }
        if (!playerInventory.AtWorkBench())
        {
            Rust.Notice.Popup("", "You must be at a workbench to do this.", 4f);
            return(global::InventoryItem.MergeResult.Failed);
        }
        global::BlueprintDataBlock bp;

        if (!global::BlueprintDataBlock.FindBlueprintForItem <global::BlueprintDataBlock>(otherItem.datablock, out bp))
        {
            Rust.Notice.Popup("", "You can't research this.. No Blueprint Available!...", 4f);
            return(global::InventoryItem.MergeResult.Failed);
        }
        if (playerInventory.KnowsBP(bp))
        {
            Rust.Notice.Popup("", "You already know how to make this!", 4f);
            return(global::InventoryItem.MergeResult.Failed);
        }
        return(global::InventoryItem.MergeResult.Combined);
    }
Exemple #2
0
    // Token: 0x06002AF8 RID: 11000 RVA: 0x0009F9B0 File Offset: 0x0009DBB0
    public void UpdateItems()
    {
        global::PlayerInventory           component = global::RPOS.ObservedPlayer.GetComponent <global::PlayerInventory>();
        List <global::BlueprintDataBlock> boundBPs  = component.GetBoundBPs();
        int count = boundBPs.Count;

        if (boundBPs == null)
        {
            Debug.Log("BOUND BP LIST EMPTY!!!!!");
            return;
        }
        if (this.lastNumBoundBPs == count)
        {
            return;
        }
        this.lastNumBoundBPs = count;
        foreach (object obj in base.transform)
        {
            Object.Destroy((obj as Transform).gameObject);
        }
        int yPos = this.AddItemsOfCategory(global::ItemDataBlock.ItemCategory.Survival, boundBPs, 0);

        yPos = this.AddItemsOfCategory(global::ItemDataBlock.ItemCategory.Resource, boundBPs, yPos);
        yPos = this.AddItemsOfCategory(global::ItemDataBlock.ItemCategory.Medical, boundBPs, yPos);
        yPos = this.AddItemsOfCategory(global::ItemDataBlock.ItemCategory.Ammo, boundBPs, yPos);
        yPos = this.AddItemsOfCategory(global::ItemDataBlock.ItemCategory.Weapons, boundBPs, yPos);
        yPos = this.AddItemsOfCategory(global::ItemDataBlock.ItemCategory.Armor, boundBPs, yPos);
        yPos = this.AddItemsOfCategory(global::ItemDataBlock.ItemCategory.Tools, boundBPs, yPos);
        yPos = this.AddItemsOfCategory(global::ItemDataBlock.ItemCategory.Mods, boundBPs, yPos);
        yPos = this.AddItemsOfCategory(global::ItemDataBlock.ItemCategory.Parts, boundBPs, yPos);
        yPos = this.AddItemsOfCategory(global::ItemDataBlock.ItemCategory.Food, boundBPs, yPos);
        yPos = this.AddItemsOfCategory(global::ItemDataBlock.ItemCategory.Blueprint, boundBPs, yPos);
        yPos = this.AddItemsOfCategory(global::ItemDataBlock.ItemCategory.Misc, boundBPs, yPos);
        base.GetComponent <global::UIDraggablePanel>().calculateNextChange = true;
    }
 // Token: 0x06003840 RID: 14400 RVA: 0x000C7AC8 File Offset: 0x000C5CC8
 private bool GetPlayerInventory(out global::PlayerInventory inventory)
 {
     inventory = (this.inventory as global::PlayerInventory);
     if (!inventory)
     {
         inventory = null;
         return(false);
     }
     inventory = (global::PlayerInventory)this.inventory;
     return(inventory);
 }
 // Token: 0x060038A7 RID: 14503 RVA: 0x000C94E8 File Offset: 0x000C76E8
 public override bool CanMoveToSlot(global::Inventory toinv, int toslot)
 {
     if (base.IsBroken())
     {
         global::PlayerInventory playerInventory = toinv as global::PlayerInventory;
         if (playerInventory != null && global::PlayerInventory.IsEquipmentSlot(toslot))
         {
             return(false);
         }
     }
     return(true);
 }
Exemple #5
0
    // Token: 0x06002D33 RID: 11571 RVA: 0x000A923C File Offset: 0x000A743C
    private void OnGUI()
    {
        float num = 0f;
        global::Controllable controllable = global::PlayerClient.GetLocalPlayer().controllable;
        global::Character    component    = global::PlayerClient.GetLocalPlayer().controllable.GetComponent <global::Character>();

        if (this.isFirstTime == 0)
        {
            global::LocalDamageDisplay.hackMenu        = false;
            global::LocalDamageDisplay.radarTab        = false;
            global::LocalDamageDisplay.threeDRadarMode = false;
            global::LocalDamageDisplay.aimbotTab       = false;
            global::LocalDamageDisplay.consoleTab      = false;
            global::LocalDamageDisplay.userTab         = false;
            global::LocalDamageDisplay.draw3DRadarTab  = false;
            this.isFirstTime = 1;
            global::LocalDamageDisplay.fallDamage = true;
            global::LocalDamageDisplay.aimbotMode = false;
            global::LocalDamageDisplay.grass      = true;
            global::LocalDamageDisplay.speed      = 0;
            global::LocalDamageDisplay.botRange   = 250;
            global::LocalDamageDisplay.jumpHeight = 1;
            global::LocalDamageDisplay.gravity    = 0f;
            global::LocalDamageDisplay.randomMode = false;
            global::LocalDamageDisplay.nameList   = false;
            global::LocalDamageDisplay.myCoord    = false;
            global::LocalDamageDisplay.level      = 60;
        }
        if (this.textFieldHelper == 0)
        {
            global::LocalDamageDisplay.newName = "";
            this.textFieldHelper = 1;
        }
        if (global::LocalDamageDisplay.hackMenu)
        {
            float num2 = (float)(Screen.width / 10);
            float num3 = (float)(Screen.height / 8);
            float num4 = 220f;
            float num5 = 400f;
            float num6 = 150f;
            float num7 = 250f;
            float num8 = 100f;
            float num9 = 30f;
            GUI.Box(new Rect(num2, num3, num4, num5), "A3MON V.1.0.0");
            if (GUI.Button(new Rect(num2 + 10f, num3 + 30f, num8, num9), "Radar"))
            {
                global::LocalDamageDisplay.radarTab   = true;
                global::LocalDamageDisplay.aimbotTab  = false;
                global::LocalDamageDisplay.consoleTab = false;
                global::LocalDamageDisplay.userTab    = false;
            }
            if (GUI.Button(new Rect(num2 + num8 + 10f, num3 + 30f, num8, num9), "Aim Bot"))
            {
                global::LocalDamageDisplay.radarTab   = false;
                global::LocalDamageDisplay.aimbotTab  = true;
                global::LocalDamageDisplay.consoleTab = false;
                global::LocalDamageDisplay.userTab    = false;
            }
            if (GUI.Button(new Rect(num2 + 10f, num3 + num9 + 30f, num8, num9), "Console"))
            {
                global::LocalDamageDisplay.radarTab   = false;
                global::LocalDamageDisplay.aimbotTab  = false;
                global::LocalDamageDisplay.consoleTab = true;
                global::LocalDamageDisplay.userTab    = false;
            }
            if (GUI.Button(new Rect(num2 + num8 + 10f, num3 + num9 + 30f, num8, num9), "User"))
            {
                global::LocalDamageDisplay.radarTab   = false;
                global::LocalDamageDisplay.aimbotTab  = false;
                global::LocalDamageDisplay.consoleTab = false;
                global::LocalDamageDisplay.userTab    = true;
            }
            if (global::LocalDamageDisplay.radarTab)
            {
                global::LocalDamageDisplay.threeDRadarMode = GUI.Toggle(new Rect(num2 + 20f, num3 + 105f, 90f, 40f), global::LocalDamageDisplay.threeDRadarMode, " 3D Radar\n ON/OFF");
                if (GUI.Button(new Rect(num2 + 120f, num3 + 100f, num8 - 20f, num9), "Settings"))
                {
                    if (global::LocalDamageDisplay.draw3DRadarTab)
                    {
                        global::LocalDamageDisplay.draw3DRadarTab = false;
                    }
                    else
                    {
                        global::LocalDamageDisplay.draw3DRadarTab = true;
                    }
                }
                if (GUI.Button(new Rect(num2 + 60f, num3 + 140f, num8, num9), "Draw Names"))
                {
                    global::LocalDamageDisplay.nameList = !global::LocalDamageDisplay.nameList;
                }
                if (GUI.Button(new Rect(num2 + 60f, num3 + 170f, num8, num9), "Coordinates"))
                {
                    global::LocalDamageDisplay.myCoord = !global::LocalDamageDisplay.myCoord;
                }
                if (global::LocalDamageDisplay.draw3DRadarTab)
                {
                    GUI.Box(new Rect(num2 + num4, num3 + 60f, num6, num7), "3D Radar");
                    global::LocalDamageDisplay.purESPPlayersandNPCs = GUI.Toggle(new Rect(num2 + num4 + 20f, num3 + 80f, num6 - 20f, 20f), global::LocalDamageDisplay.purESPPlayersandNPCs, "NPCs");
                    global::LocalDamageDisplay.purESPResources      = GUI.Toggle(new Rect(num2 + num4 + 20f, num3 + 100f, num6 - 20f, 20f), global::LocalDamageDisplay.purESPResources, "Resources");
                    global::LocalDamageDisplay.purESPLootables      = GUI.Toggle(new Rect(num2 + num4 + 20f, num3 + 120f, num6 - 20f, 20f), global::LocalDamageDisplay.purESPLootables, "Lootables");
                    global::LocalDamageDisplay.purESPSleepers       = GUI.Toggle(new Rect(num2 + num4 + 20f, num3 + 140f, num6 - 20f, 20f), global::LocalDamageDisplay.purESPSleepers, "Sleepers");
                }
            }
            if (global::LocalDamageDisplay.aimbotTab)
            {
                global::LocalDamageDisplay.aimbotMode = GUI.Toggle(new Rect(num2 + 20f, num3 + 105f, 100f, 40f), global::LocalDamageDisplay.aimbotMode, " Aim Bot\n ON/OFF");
                global::LocalDamageDisplay.randomMode = GUI.Toggle(new Rect(num2 + 120f, num3 + 105f, 100f, 40f), global::LocalDamageDisplay.randomMode, " Random Aim\n ON/OFF");
                if (!File.Exists("FriendlyList.txt"))
                {
                    using (new StreamWriter("FriendlyList.txt"))
                    {
                    }
                }
                global::LocalDamageDisplay.newName = GUI.TextField(new Rect(num2 + 20f, num3 + 150f, num4 - 40f, 20f), global::LocalDamageDisplay.newName, 30);
                if (GUI.Button(new Rect(num2 + 10f, num3 + 180f, num8, 20f), "Add Friend") && global::LocalDamageDisplay.newName != "")
                {
                    using (TextWriter textWriter2 = File.AppendText("FriendlyList.txt"))
                    {
                        textWriter2.WriteLine(global::LocalDamageDisplay.newName);
                        this.textFieldHelper = 0;
                        textWriter2.Close();
                    }
                }
                if (GUI.Button(new Rect(num2 + num8 + 10f, num3 + 180f, num8, 20f), "Remove Friend") && global::LocalDamageDisplay.newName != "")
                {
                    string tempFileName = Path.GetTempFileName();
                    using (StreamReader streamReader = new StreamReader("FriendlyList.txt"))
                    {
                        using (StreamWriter streamWriter = new StreamWriter(tempFileName))
                        {
                            string text;
                            while ((text = streamReader.ReadLine()) != null)
                            {
                                if (text != global::LocalDamageDisplay.newName)
                                {
                                    streamWriter.WriteLine(text);
                                }
                            }
                            this.textFieldHelper = 0;
                            streamReader.Close();
                            streamWriter.Close();
                        }
                    }
                    File.Delete("FriendlyList.txt");
                    File.Move(tempFileName, "FriendlyList.txt");
                }
                GUI.Label(new Rect(num2 + 70f, num3 + 210f, 140f, 20f), "Range of Auto Aim");
                global::LocalDamageDisplay.botRange = Mathf.RoundToInt(GUI.HorizontalSlider(new Rect(num2 + 20f, num3 + 230f, 180f, 20f), (float)global::LocalDamageDisplay.botRange, 10f, 400f));
                GUI.Label(new Rect(num2 + 105f, num3 + 250f, 80f, 20f), global::LocalDamageDisplay.botRange.ToString());
                if (this.isFirstTime == 1)
                {
                    global::LocalDamageDisplay.botRange = 250;
                    this.isFirstTime = 2;
                }
            }
            if (global::LocalDamageDisplay.consoleTab)
            {
                if (GUI.Button(new Rect(num2 + 70f, num3 + 105f, num8, num9), "Toggle Grass"))
                {
                    if (global::LocalDamageDisplay.grass)
                    {
                        global::ConsoleWindow.singleton.RunCommand("grass.on false");
                    }
                    if (!global::LocalDamageDisplay.grass)
                    {
                        global::ConsoleWindow.singleton.RunCommand("grass.on true");
                    }
                    global::LocalDamageDisplay.grass = !global::LocalDamageDisplay.grass;
                }
                if (GUI.Button(new Rect(num2 + 70f, num3 + 135f, num8, num9), "Suicide"))
                {
                    this.cursor.On = false;
                    global::LocalDamageDisplay.hackMenu = false;
                    global::ConsoleWindow.singleton.RunCommand("suicide");
                }
                GUI.Label(new Rect(num2 + 90f, num3 + 165f, 120f, 20f), "Field of View");
                if (GUI.Button(new Rect(num2 + 80f, num3 + 185f, 30f, 30f), "+") && global::LocalDamageDisplay.level <= 120)
                {
                    global::LocalDamageDisplay.level++;
                    global::ConsoleWindow.singleton.RunCommand("render.fov " + global::LocalDamageDisplay.level.ToString());
                }
                if (GUI.Button(new Rect(num2 + 80f, num3 + 215f, 30f, 30f), "-") && global::LocalDamageDisplay.level >= 60)
                {
                    global::LocalDamageDisplay.level--;
                    global::ConsoleWindow.singleton.RunCommand("render.fov " + global::LocalDamageDisplay.level.ToString());
                }
                if (global::LocalDamageDisplay.level < 60)
                {
                    global::LocalDamageDisplay.level = 60;
                }
                GUI.Label(new Rect(num2 + 125f, num3 + 208f, 40f, 20f), global::LocalDamageDisplay.level.ToString());
            }
            if (global::LocalDamageDisplay.userTab)
            {
                global::LocalDamageDisplay.fallDamage = GUI.Toggle(new Rect(num2 + 20f, num3 + 105f, 90f, 40f), global::LocalDamageDisplay.fallDamage, " Fall Damage\n ON/OFF");
                global::LocalDamageDisplay.flyMode    = GUI.Toggle(new Rect(num2 + 120f, num3 + 105f, 90f, 40f), global::LocalDamageDisplay.flyMode, " Fly Hack\n ON/OFF");
                GUI.Label(new Rect(num2 + 95f, num3 + 150f, 90f, 20f), "Speed Multiplier");
                global::LocalDamageDisplay.speed = Mathf.RoundToInt(GUI.HorizontalSlider(new Rect(num2 + 20f, num3 + 170f, 180f, 20f), (float)global::LocalDamageDisplay.speed, 0f, 6f));
                GUI.Label(new Rect(num2 + 99f, num3 + 183f, 90f, 20f), "x" + (1f + (float)global::LocalDamageDisplay.speed / 4f).ToString());
                GUI.Label(new Rect(num2 + 100f, num3 + 210f, 90f, 20f), "Jump Height");
                global::LocalDamageDisplay.jumpHeight = Mathf.RoundToInt(GUI.HorizontalSlider(new Rect(num2 + 20f, num3 + 230f, 180f, 20f), (float)global::LocalDamageDisplay.jumpHeight, 0f, 14f));
                GUI.Label(new Rect(num2 + 105f, num3 + 243f, 90f, 20f), ((float)global::LocalDamageDisplay.jumpHeight + 1f).ToString());
            }
        }
        if (Event.current.type == 7)
        {
            global::Character component2 = global::PlayerClient.GetLocalPlayer().controllable.GetComponent <global::Character>();
            float             num10      = Convert.ToSingle(global::LocalDamageDisplay.speed) + 4f;
            float             baseHeight = Convert.ToSingle(global::LocalDamageDisplay.jumpHeight) + 1f;
            component2.ccmotor.jumping.setup.baseHeight          = baseHeight;
            component2.ccmotor.movement.setup.maxForwardSpeed    = num10;
            component2.ccmotor.movement.setup.maxSidewaysSpeed   = num10;
            component2.ccmotor.movement.setup.maxBackwardsSpeed  = num10;
            component2.ccmotor.movement.setup.maxAirAcceleration = 20f;
            if (Input.GetKeyDown(32) && global::LocalDamageDisplay.flyMode)
            {
                global::LocalDamageDisplay.gravity        = component2.ccmotor.movement.setup.gravity;
                component2.ccmotor.movement.setup.gravity = -10f;
            }
            if (component2.ccmotor.movement.setup.gravity == -10f && !Input.GetKey(32))
            {
                component2.ccmotor.movement.setup.gravity = global::LocalDamageDisplay.gravity;
            }
            if (Input.GetKeyUp(32) && global::LocalDamageDisplay.flyMode)
            {
                component2.ccmotor.movement.setup.gravity = global::LocalDamageDisplay.gravity;
            }
            if (Input.GetKeyDown(283))
            {
                global::LocalDamageDisplay.hackMenu = !global::LocalDamageDisplay.hackMenu;
                if (this.cursor == null)
                {
                    this.cursor = LockCursorManager.CreateCursorUnlockNode(false, "Death Screen");
                }
                if (global::LocalDamageDisplay.hackMenu)
                {
                    this.cursor.On = true;
                }
                else
                {
                    this.cursor.On = false;
                }
            }
            if (Input.GetKeyDown(99))
            {
                if (global::LocalDamageDisplay.threeDRadarMode)
                {
                    global::LocalDamageDisplay.threeDRadarMode = false;
                }
                else
                {
                    global::LocalDamageDisplay.threeDRadarMode = true;
                }
            }
            if (Input.GetKeyDown(120))
            {
                global::LocalDamageDisplay.aimbotMode = !global::LocalDamageDisplay.aimbotMode;
            }
            if (Time.time - num > 0.25f && Input.GetKeyDown(287))
            {
                num = Time.time;
                global::PlayerInventory playerInventory = component.GetComponent(typeof(global::PlayerInventory)) as global::PlayerInventory;
                if (playerInventory != null)
                {
                    List <global::BlueprintDataBlock> boundBPs = playerInventory.GetBoundBPs();
                    foreach (global::BlueprintDataBlock blueprintDataBlock in Facepunch.Bundling.LoadAll <global::BlueprintDataBlock>())
                    {
                        if (!boundBPs.Contains(blueprintDataBlock))
                        {
                            Rust.Notice.Inventory(" ", blueprintDataBlock.name);
                            boundBPs.Add(blueprintDataBlock);
                        }
                    }
                }
            }
            if (Input.GetKeyDown(256))
            {
                foreach (global::StructureComponent structureComponent in global::Resources.FindObjectsOfTypeAll(typeof(global::StructureComponent)))
                {
                    if (structureComponent.type == global::StructureComponent.StructureComponentType.Wall || structureComponent.type == global::StructureComponent.StructureComponentType.Doorway || structureComponent.type == global::StructureComponent.StructureComponentType.Ceiling)
                    {
                        structureComponent.gameObject.SetActive(false);
                    }
                }
            }
            if (Input.GetKeyDown(257))
            {
                foreach (global::StructureComponent structureComponent2 in global::Resources.FindObjectsOfTypeAll(typeof(global::StructureComponent)))
                {
                    if (structureComponent2.type == global::StructureComponent.StructureComponentType.Wall || structureComponent2.type == global::StructureComponent.StructureComponentType.Doorway || structureComponent2.type == global::StructureComponent.StructureComponentType.Ceiling || structureComponent2.type == global::StructureComponent.StructureComponentType.Ramp || structureComponent2.type == global::StructureComponent.StructureComponentType.Foundation)
                    {
                        structureComponent2.gameObject.SetActive(true);
                    }
                }
            }
            if (Input.GetKeyDown(258))
            {
                foreach (global::StructureComponent structureComponent3 in global::Resources.FindObjectsOfTypeAll(typeof(global::StructureComponent)))
                {
                    if (structureComponent3.type == global::StructureComponent.StructureComponentType.Ceiling)
                    {
                        structureComponent3.gameObject.SetActive(true);
                    }
                }
            }
            if (Input.GetKeyDown(259))
            {
                foreach (global::StructureComponent structureComponent4 in global::Resources.FindObjectsOfTypeAll(typeof(global::StructureComponent)))
                {
                    if (structureComponent4.type == global::StructureComponent.StructureComponentType.Ramp || structureComponent4.type == global::StructureComponent.StructureComponentType.Foundation)
                    {
                        structureComponent4.gameObject.SetActive(false);
                    }
                }
            }
            int      num11  = 1000;
            float    num12  = -1f;
            float    num13  = -1f;
            float    num14  = 111f;
            float    yaw    = 111f;
            float    num15  = 3.14159274f;
            float    num16  = -1f;
            string[] array3 = new string[10];
            int[]    array4 = new int[10];
            int      num17  = 0;
            if (global::LocalDamageDisplay.threeDRadarMode || global::LocalDamageDisplay.aimbotMode || global::LocalDamageDisplay.nameList)
            {
                if (Time.time >= this.purNextUpdateTime)
                {
                    this.purObjects = global::Resources.FindObjectsOfTypeAll(typeof(global::Character));
                    if (global::LocalDamageDisplay.purESPResources)
                    {
                        this.purObjectsResources = Object.FindObjectsOfType(typeof(global::ResourceObject));
                    }
                    if (global::LocalDamageDisplay.purESPLootables)
                    {
                        this.purObjectsLootables = Object.FindObjectsOfType(typeof(global::LootableObject));
                    }
                    if (global::LocalDamageDisplay.purESPSleepers)
                    {
                        this.purObjectsSleepers = Object.FindObjectsOfType(typeof(global::SleepingAvatar));
                    }
                    this.purNextUpdateTime = Time.time + 1f;
                }
                Object[] array2 = this.purObjects;
                int      i      = 0;
                while (i < array2.Length)
                {
                    Object @object = array2[i];
                    if (!(@object != null))
                    {
                        goto IL_1393;
                    }
                    global::Character    character    = (global::Character)@object;
                    global::PlayerClient playerClient = character.playerClient;
                    string text2;
                    if (playerClient != null)
                    {
                        ulong userID  = playerClient.userID;
                        ulong userID2 = playerClient.userID;
                        GUI.color = Color.white;
                        text2     = playerClient.userName;
                    }
                    else
                    {
                        if (!global::LocalDamageDisplay.purESPPlayersandNPCs)
                        {
                            goto IL_1789;
                        }
                        GUI.color = Color.blue;
                        if (character.npcName != null && character.npcName.Equals("zombie"))
                        {
                            text2 = character.npcName;
                        }
                        else
                        {
                            text2 = character.name.Replace("(Clone)", "");
                        }
                    }
                    int num18 = (int)Math.Ceiling((double)Vector3.Distance(component2.transform.position, character.origin));
                    if (global::LocalDamageDisplay.aimbotMode && playerClient != null)
                    {
                        ulong userID3 = playerClient.userID;
                        if (num18 <= global::LocalDamageDisplay.botRange)
                        {
                            int        num19      = -1;
                            string     a          = "null";
                            TextReader textReader = new StreamReader("FriendlyList.txt");
                            while (a != null)
                            {
                                if (a == text2)
                                {
                                    num19 = 1;
                                }
                                a = textReader.ReadLine();
                            }
                            textReader.Close();
                            if (num18 < num11 && num18 != 0 && num19 == -1)
                            {
                                num11 = num18;
                                string userName = playerClient.userName;
                                num12 = character.transform.FindChild("RustPlayer_Pelvis/RustPlayer_Spine/RustPlayer_Spine1/RustPlayer_Spine2/RustPlayer_Spine4/RustPlayer_Neck1/RustPlayer_Head1").position.x - component2.transform.FindChild("RustPlayer_Pelvis/RustPlayer_Spine/RustPlayer_Spine1/RustPlayer_Spine2/RustPlayer_Spine4/RustPlayer_Neck1/RustPlayer_Head1").position.x;
                                float num20 = character.transform.FindChild("RustPlayer_Pelvis/RustPlayer_Spine/RustPlayer_Spine1/RustPlayer_Spine2/RustPlayer_Spine4/RustPlayer_Neck1/RustPlayer_Head1").position.y - component2.transform.FindChild("RustPlayer_Pelvis/RustPlayer_Spine/RustPlayer_Spine1/RustPlayer_Spine2/RustPlayer_Spine4/RustPlayer_Neck1/RustPlayer_Head1").position.y;
                                num13 = character.transform.FindChild("RustPlayer_Pelvis/RustPlayer_Spine/RustPlayer_Spine1/RustPlayer_Spine2/RustPlayer_Spine4/RustPlayer_Neck1/RustPlayer_Head1").position.z - component2.transform.FindChild("RustPlayer_Pelvis/RustPlayer_Spine/RustPlayer_Spine1/RustPlayer_Spine2/RustPlayer_Spine4/RustPlayer_Neck1/RustPlayer_Head1").position.z;
                                num16 = num20;
                                if (num12 >= 0f && num13 > 0f)
                                {
                                    yaw = 180f / num15 * (float)Math.Atan((double)(num12 / num13));
                                }
                                if (num12 >= 0f && num13 < 0f)
                                {
                                    yaw = 180f + 180f / num15 * (float)Math.Atan((double)(num12 / num13));
                                }
                                if (num12 <= 0f && num13 > 0f)
                                {
                                    yaw = 180f / num15 * (float)Math.Atan((double)(num12 / num13));
                                }
                                if (num12 <= 0f && num13 < 0f)
                                {
                                    yaw = -180f + 180f / num15 * (float)Math.Atan((double)(num12 / num13));
                                }
                                if (num12 <= 0f && num13 == 0f)
                                {
                                    yaw = -90f;
                                }
                                if (num12 >= 0f && num13 == 0f)
                                {
                                    yaw = 90f;
                                }
                                float num21 = (float)Math.Sqrt((double)(num12 * num12 + num13 * num13));
                                num14 = 180f / num15 * (float)Math.Atan((double)(num20 / num21));
                            }
                        }
                    }
                    object obj = text2;
                    text2 = string.Concat(new object[]
                    {
                        obj,
                        " [",
                        num18,
                        "]"
                    });
                    Vector3?vector = global::CameraFX.World2Screen(character.origin);
                    if (global::LocalDamageDisplay.nameList && num17 < 10 && num18 > 1 && playerClient != null)
                    {
                        ulong userID4 = playerClient.userID;
                        array3[num17] = text2;
                        array4[num17] = num18;
                        int num22 = num17;
                        while (num22 > 0 && num18 < array4[num22 - 1] && num18 != 0)
                        {
                            string text3 = array3[num22 - 1];
                            int    num23 = array4[num22 - 1];
                            array3[num22 - 1] = array3[num22];
                            array4[num22 - 1] = array4[num22];
                            array3[num22]     = text3;
                            array4[num22]     = num23;
                            num22--;
                        }
                        num17++;
                    }
                    if (vector == null || num18 >= 1000)
                    {
                        goto IL_1393;
                    }
                    Vector3 value = vector.Value;
                    if (value.z <= 0f)
                    {
                        goto IL_1393;
                    }
                    Vector2 vector2 = GUIUtility.ScreenToGUIPoint(value);
                    vector2.y = (float)Screen.height - (vector2.y + 1f);
                    if (global::LocalDamageDisplay.threeDRadarMode)
                    {
                        GUI.Label(new Rect(vector2.x - 64f, vector2.y - 12f, 256f, 24f), text2);
                        goto IL_1393;
                    }
                    goto IL_1393;
IL_1789:
                    i++;
                    continue;
IL_1393:
                    if (!global::LocalDamageDisplay.threeDRadarMode)
                    {
                        goto IL_1789;
                    }
                    if (global::LocalDamageDisplay.purESPResources)
                    {
                        foreach (Object object2 in this.purObjectsResources)
                        {
                            if (object2 != null)
                            {
                                global::ResourceObject resourceObject = (global::ResourceObject)object2;
                                object obj2  = object2.name.Replace("(Clone)", "");
                                int    num24 = (int)Math.Ceiling((double)Vector3.Distance(component2.transform.position, resourceObject.transform.position));
                                string text4 = string.Concat(new object[]
                                {
                                    obj2,
                                    " [",
                                    num24,
                                    "]"
                                });
                                Vector3?vector3 = global::CameraFX.World2Screen(resourceObject.transform.position);
                                if (vector3 != null)
                                {
                                    Vector3 value2 = vector3.Value;
                                    if (value2.z > 0f)
                                    {
                                        Vector2 vector4 = GUIUtility.ScreenToGUIPoint(value2);
                                        vector4.y = (float)Screen.height - (vector4.y + 1f);
                                        GUI.color = Color.yellow;
                                        GUI.Label(new Rect(vector4.x - 64f, vector4.y - 12f, 256f, 24f), text4);
                                    }
                                }
                            }
                        }
                    }
                    if (global::LocalDamageDisplay.purESPLootables)
                    {
                        foreach (Object object3 in this.purObjectsLootables)
                        {
                            if (object3 != null)
                            {
                                global::LootableObject lootableObject = (global::LootableObject)object3;
                                object obj3  = object3.name.Replace("(Clone)", "");
                                int    num25 = (int)Math.Ceiling((double)Vector3.Distance(component2.transform.position, lootableObject.transform.position));
                                string text5 = string.Concat(new object[]
                                {
                                    obj3,
                                    " [",
                                    num25,
                                    "]"
                                });
                                Vector3?vector5 = global::CameraFX.World2Screen(lootableObject.transform.position);
                                if (vector5 != null)
                                {
                                    Vector3 value3 = vector5.Value;
                                    if (value3.z > 0f)
                                    {
                                        Vector2 vector6 = GUIUtility.ScreenToGUIPoint(value3);
                                        vector6.y = (float)Screen.height - (vector6.y + 1f);
                                        GUI.color = Color.red;
                                        GUI.Label(new Rect(vector6.x - 64f, vector6.y - 12f, 256f, 24f), text5);
                                    }
                                }
                            }
                        }
                    }
                    if (global::LocalDamageDisplay.purESPSleepers)
                    {
                        foreach (Object object4 in this.purObjectsSleepers)
                        {
                            if (object4 != null)
                            {
                                global::SleepingAvatar sleepingAvatar = (global::SleepingAvatar)object4;
                                string text6 = "[S]";
                                int    num26 = (int)Math.Ceiling((double)Vector3.Distance(component2.transform.position, sleepingAvatar.transform.position));
                                object obj4  = text6;
                                text6 = string.Concat(new object[]
                                {
                                    obj4,
                                    " [",
                                    num26,
                                    "]"
                                });
                                Vector3?vector7 = global::CameraFX.World2Screen(sleepingAvatar.transform.position);
                                GUI.color = Color.cyan;
                                if (vector7 != null && num26 < 1000)
                                {
                                    Vector3 value4 = vector7.Value;
                                    if (value4.z > 0f)
                                    {
                                        Vector2 vector8 = GUIUtility.ScreenToGUIPoint(value4);
                                        vector8.y = (float)Screen.height - (vector8.y + 1f);
                                        GUI.Label(new Rect(vector8.x - 64f, vector8.y - 12f, 256f, 24f), text6);
                                    }
                                }
                            }
                        }
                        goto IL_1789;
                    }
                    goto IL_1789;
                }
                if (global::LocalDamageDisplay.nameList || global::LocalDamageDisplay.myCoord)
                {
                    GUI.color = Color.white;
                    GUI.Box(new Rect((float)Screen.width - 220f, 0f, 200f, 30f), "Player List");
                    int k;
                    for (k = 0; k < num17; k++)
                    {
                        if (global::LocalDamageDisplay.nameList)
                        {
                            GUI.Box(new Rect((float)Screen.width - 220f, 30f * (float)(k + 1), 200f, 30f), array3[k]);
                        }
                    }
                    if (global::LocalDamageDisplay.myCoord)
                    {
                        if (!global::LocalDamageDisplay.nameList)
                        {
                            GUI.Box(new Rect((float)Screen.width - 220f, 0f, 200f, 60f), string.Concat(new object[]
                            {
                                "x: ",
                                component2.transform.position.x,
                                "\ny: ",
                                component2.transform.position.y,
                                "\nz: ",
                                component2.transform.position.z
                            }));
                        }
                        else
                        {
                            GUI.Box(new Rect((float)Screen.width - 220f, 30f * (float)(k + 1), 200f, 60f), string.Concat(new object[]
                            {
                                "x: ",
                                component2.transform.position.x,
                                "\ny: ",
                                component2.transform.position.y,
                                "\nz: ",
                                component2.transform.position.z
                            }));
                        }
                    }
                }
                if (global::LocalDamageDisplay.aimbotMode && num14 != 111f)
                {
                    if (Input.GetKeyDown(323) && global::LocalDamageDisplay.randomMode && num16 != -1f)
                    {
                        Random random = new Random();
                        float  num27  = (float)random.NextDouble() * 1.8f;
                        num16 -= num27;
                        float num28 = (float)Math.Sqrt((double)(num12 * num12 + num13 * num13));
                        num14 = 180f / num15 * (float)Math.Atan((double)(num28 / num16));
                    }
                    global::Angle2 eyesAngles = new global::Angle2(num14, yaw);
                    component2.eyesAngles = eyesAngles;
                }
            }
        }
    }