Exemple #1
0
        // Token: 0x060038D2 RID: 14546 RVA: 0x0019FDC4 File Offset: 0x0019E1C4
        private static void onClickedResponseButton(SleekButton button)
        {
            byte             index            = (byte)PlayerNPCDialogueUI.responseBox.search(button);
            DialogueResponse dialogueResponse = PlayerNPCDialogueUI.responses[(int)index];
            DialogueAsset    dialogueAsset    = (DialogueAsset)Assets.find(EAssetType.NPC, dialogueResponse.dialogue);
            QuestAsset       questAsset       = (QuestAsset)Assets.find(EAssetType.NPC, dialogueResponse.quest);

            if (questAsset != null)
            {
                PlayerNPCDialogueUI.close();
                PlayerNPCQuestUI.open(questAsset, dialogueResponse, dialogueAsset, PlayerNPCDialogueUI.dialogue, (Player.player.quests.getQuestStatus(dialogueResponse.quest) != ENPCQuestStatus.READY) ? EQuestViewMode.BEGIN : EQuestViewMode.END);
            }
            else
            {
                VendorAsset vendorAsset = (VendorAsset)Assets.find(EAssetType.NPC, dialogueResponse.vendor);
                if (vendorAsset != null)
                {
                    PlayerNPCDialogueUI.close();
                    PlayerNPCVendorUI.open(vendorAsset, dialogueResponse, dialogueAsset, PlayerNPCDialogueUI.dialogue);
                }
                else
                {
                    PlayerNPCDialogueUI.registerResponse(PlayerNPCDialogueUI.dialogue, dialogueResponse);
                    if (dialogueAsset != null)
                    {
                        PlayerNPCDialogueUI.updateDialogue(dialogueAsset, PlayerNPCDialogueUI.dialogue);
                    }
                    else
                    {
                        PlayerNPCDialogueUI.close();
                        PlayerLifeUI.open();
                    }
                }
            }
        }
 // Token: 0x0600396C RID: 14700 RVA: 0x001AA13C File Offset: 0x001A853C
 private void stopStrength()
 {
     PlayerLifeUI.open();
     if (this.castStrengthBox != null)
     {
         this.castStrengthBox.isVisible = false;
     }
 }
Exemple #3
0
 // Token: 0x060037DE RID: 14302 RVA: 0x0018C1A5 File Offset: 0x0018A5A5
 private static void onClickedYesButton(SleekButton button)
 {
     if (PlayerBarricadeSignUI.sign != null)
     {
         BarricadeManager.updateSign(PlayerBarricadeSignUI.sign.transform, PlayerBarricadeSignUI.textField.text);
     }
     PlayerLifeUI.open();
     PlayerBarricadeSignUI.close();
 }
 // Token: 0x060037D6 RID: 14294 RVA: 0x0018BC79 File Offset: 0x0018A079
 private static void onClickedSwapButton(SleekButton button)
 {
     if (PlayerBarricadeMannequinUI.mannequin != null)
     {
         BarricadeManager.updateMannequin(PlayerBarricadeMannequinUI.mannequin.transform, EMannequinUpdateMode.SWAP);
     }
     PlayerLifeUI.open();
     PlayerBarricadeMannequinUI.close();
 }
 // Token: 0x060037ED RID: 14317 RVA: 0x0018CB50 File Offset: 0x0018AF50
 private static void onClickedYesButton(SleekButton button)
 {
     if (!string.IsNullOrEmpty(PlayerBrowserRequestUI.url) && Provider.provider.browserService.canOpenBrowser)
     {
         Provider.provider.browserService.open(PlayerBrowserRequestUI.url);
     }
     PlayerLifeUI.open();
     PlayerBrowserRequestUI.close();
 }
Exemple #6
0
 public static void close()
 {
     if (!PlayerDeathUI.active)
     {
         return;
     }
     PlayerDeathUI.active = false;
     PlayerLifeUI.open();
     MainCamera.instance.GetComponent <AudioSource>().Stop();
     PlayerDeathUI.container.lerpPositionScale(0f, 1f, ESleekLerp.EXPONENTIAL, 20f);
 }
Exemple #7
0
 private void onClickedKickButton(SleekButton button)
 {
     if (this.context == SleekPlayer.ESleekPlayerDisplayContext.GROUP_ROSTER)
     {
         Player.player.quests.sendKickFromGroup(this.player.playerID.steamID);
     }
     else if (this.context == SleekPlayer.ESleekPlayerDisplayContext.PLAYER_LIST)
     {
         ChatManager.sendCallVote(this.player.playerID.steamID);
         PlayerDashboardUI.close();
         PlayerLifeUI.open();
     }
 }
 // Token: 0x0600387E RID: 14462 RVA: 0x00198F38 File Offset: 0x00197338
 private static void onClickedInformationButton(SleekButton button)
 {
     PlayerDashboardInventoryUI.close();
     PlayerDashboardCraftingUI.close();
     PlayerDashboardSkillsUI.close();
     if (PlayerDashboardInformationUI.active)
     {
         PlayerDashboardUI.close();
         PlayerLifeUI.open();
     }
     else
     {
         PlayerDashboardInformationUI.open();
     }
 }
 // Token: 0x06003974 RID: 14708 RVA: 0x001AA76C File Offset: 0x001A8B6C
 public override void dequip()
 {
     if (base.channel.isOwner)
     {
         if (this.bob != null)
         {
             UnityEngine.Object.Destroy(this.bob.gameObject);
         }
         if (this.castStrengthBox != null)
         {
             PlayerUI.container.remove(this.castStrengthBox);
         }
         if (this.isStrengthening)
         {
             PlayerLifeUI.open();
         }
     }
 }
Exemple #10
0
 // Token: 0x060037CE RID: 14286 RVA: 0x0018B424 File Offset: 0x00189824
 private static void onClickedYesButton(SleekButton button)
 {
     if (PlayerBarricadeLibraryUI.library != null)
     {
         if (PlayerBarricadeLibraryUI.transactionButton.state == 0)
         {
             if (PlayerBarricadeLibraryUI.amountField.state > Player.player.skills.experience || PlayerBarricadeLibraryUI.net + PlayerBarricadeLibraryUI.library.amount > PlayerBarricadeLibraryUI.library.capacity)
             {
                 return;
             }
         }
         else if (PlayerBarricadeLibraryUI.net > PlayerBarricadeLibraryUI.library.amount)
         {
             return;
         }
         if (PlayerBarricadeLibraryUI.net > 0u)
         {
             BarricadeManager.transferLibrary(PlayerBarricadeLibraryUI.library.transform, (byte)PlayerBarricadeLibraryUI.transactionButton.state, PlayerBarricadeLibraryUI.amountField.state);
         }
     }
     PlayerLifeUI.open();
     PlayerBarricadeLibraryUI.close();
 }
Exemple #11
0
 // Token: 0x060037DF RID: 14303 RVA: 0x0018C1DA File Offset: 0x0018A5DA
 private static void onClickedNoButton(SleekButton button)
 {
     PlayerLifeUI.open();
     PlayerBarricadeSignUI.close();
 }
Exemple #12
0
        public void OV_Update()
        {
            bool flag = !DrawUtilities.ShouldRun();

            if (!flag)
            {
                bool flag2 = OptimizationVariables.MainPlayer.stance.stance != EPlayerStance.DRIVING && OptimizationVariables.MainPlayer.stance.stance != EPlayerStance.SITTING && !OptimizationVariables.MainPlayer.life.isDead && !OptimizationVariables.MainPlayer.workzone.isBuilding;
                if (flag2)
                {
                    bool flag3 = Time.realtimeSinceStartup - OV_PlayerInteract.lastInteract > 0.1f;
                    if (flag3)
                    {
                        int  num   = 0;
                        bool flag4 = InteractionOptions.InteractThroughWalls && !PlayerCoroutines.IsSpying;
                        if (flag4)
                        {
                            bool flag5 = !InteractionOptions.NoHitBarricades;
                            if (flag5)
                            {
                                num |= RayMasks.BARRICADE;
                            }
                            bool flag6 = !InteractionOptions.NoHitItems;
                            if (flag6)
                            {
                                num |= RayMasks.ITEM;
                            }
                            bool flag7 = !InteractionOptions.NoHitResources;
                            if (flag7)
                            {
                                num |= RayMasks.RESOURCE;
                            }
                            bool flag8 = !InteractionOptions.NoHitStructures;
                            if (flag8)
                            {
                                num |= RayMasks.STRUCTURE;
                            }
                            bool flag9 = !InteractionOptions.NoHitVehicles;
                            if (flag9)
                            {
                                num |= RayMasks.VEHICLE;
                            }
                            bool flag10 = !InteractionOptions.NoHitEnvironment;
                            if (flag10)
                            {
                                num |= (RayMasks.LARGE | RayMasks.MEDIUM | RayMasks.ENVIRONMENT | RayMasks.GROUND);
                            }
                        }
                        else
                        {
                            num = RayMasks.PLAYER_INTERACT;
                        }
                        OV_PlayerInteract.lastInteract = Time.realtimeSinceStartup;
                        float num2 = (InteractionOptions.InteractThroughWalls && !PlayerCoroutines.IsSpying) ? 20f : 4f;
                        PhysicsUtility.raycast(new Ray(Camera.main.transform.position, Camera.main.transform.forward), out OV_PlayerInteract.hit, (OptimizationVariables.MainPlayer.look.perspective == EPlayerPerspective.THIRD) ? (num2 + 2f) : num2, num, QueryTriggerInteraction.UseGlobal);
                    }
                    Transform transform = (!(OV_PlayerInteract.hit.collider != null)) ? null : OV_PlayerInteract.hit.collider.transform;
                    bool      flag11    = transform != OV_PlayerInteract.focus;
                    if (flag11)
                    {
                        bool flag12 = OV_PlayerInteract.focus != null && PlayerInteract.interactable != null;
                        if (flag12)
                        {
                            InteractableDoorHinge componentInParent = OV_PlayerInteract.focus.GetComponentInParent <InteractableDoorHinge>();
                            bool flag13 = componentInParent != null;
                            if (flag13)
                            {
                                HighlighterTool.unhighlight(componentInParent.door.transform);
                            }
                            else
                            {
                                HighlighterTool.unhighlight(PlayerInteract.interactable.transform);
                            }
                        }
                        OV_PlayerInteract.focus         = null;
                        OV_PlayerInteract.target        = null;
                        OV_PlayerInteract.interactable  = null;
                        OV_PlayerInteract.interactable2 = null;
                        bool flag14 = transform != null;
                        if (flag14)
                        {
                            OV_PlayerInteract.focus         = transform;
                            OV_PlayerInteract.interactable  = OV_PlayerInteract.focus.GetComponentInParent <Interactable>();
                            OV_PlayerInteract.interactable2 = OV_PlayerInteract.focus.GetComponentInParent <Interactable2>();
                            bool flag15 = PlayerInteract.interactable != null;
                            if (flag15)
                            {
                                OV_PlayerInteract.target = PlayerInteract.interactable.transform.FindChildRecursive("Target");
                                bool flag16 = PlayerInteract.interactable.checkInteractable();
                                if (flag16)
                                {
                                    bool isEnabled = PlayerUI.window.isEnabled;
                                    if (isEnabled)
                                    {
                                        bool flag17 = PlayerInteract.interactable.checkUseable();
                                        if (flag17)
                                        {
                                            Color green;
                                            bool  flag18 = !PlayerInteract.interactable.checkHighlight(out green);
                                            if (flag18)
                                            {
                                                green = Color.green;
                                            }
                                            InteractableDoorHinge componentInParent2 = OV_PlayerInteract.focus.GetComponentInParent <InteractableDoorHinge>();
                                            bool flag19 = componentInParent2 != null;
                                            if (flag19)
                                            {
                                                HighlighterTool.highlight(componentInParent2.door.transform, green);
                                            }
                                            else
                                            {
                                                HighlighterTool.highlight(PlayerInteract.interactable.transform, green);
                                            }
                                        }
                                        else
                                        {
                                            Color red = Color.red;
                                            InteractableDoorHinge componentInParent3 = OV_PlayerInteract.focus.GetComponentInParent <InteractableDoorHinge>();
                                            bool flag20 = componentInParent3 != null;
                                            if (flag20)
                                            {
                                                HighlighterTool.highlight(componentInParent3.door.transform, red);
                                            }
                                            else
                                            {
                                                HighlighterTool.highlight(PlayerInteract.interactable.transform, red);
                                            }
                                        }
                                    }
                                }
                                else
                                {
                                    OV_PlayerInteract.target       = null;
                                    OV_PlayerInteract.interactable = null;
                                }
                            }
                        }
                    }
                }
                else
                {
                    bool flag21 = OV_PlayerInteract.focus != null && PlayerInteract.interactable != null;
                    if (flag21)
                    {
                        InteractableDoorHinge componentInParent4 = OV_PlayerInteract.focus.GetComponentInParent <InteractableDoorHinge>();
                        bool flag22 = componentInParent4 != null;
                        if (flag22)
                        {
                            HighlighterTool.unhighlight(componentInParent4.door.transform);
                        }
                        else
                        {
                            HighlighterTool.unhighlight(PlayerInteract.interactable.transform);
                        }
                    }
                    OV_PlayerInteract.focus         = null;
                    OV_PlayerInteract.target        = null;
                    OV_PlayerInteract.interactable  = null;
                    OV_PlayerInteract.interactable2 = null;
                }
                bool isDead = OptimizationVariables.MainPlayer.life.isDead;
                if (!isDead)
                {
                    bool flag23 = PlayerInteract.interactable != null;
                    if (flag23)
                    {
                        EPlayerMessage message;
                        string         text;
                        Color          color;
                        bool           flag24 = PlayerInteract.interactable.checkHint(out message, out text, out color) && !PlayerUI.window.showCursor;
                        if (flag24)
                        {
                            bool flag25 = PlayerInteract.interactable.CompareTag("Item");
                            if (flag25)
                            {
                                PlayerUI.hint((!(OV_PlayerInteract.target != null)) ? OV_PlayerInteract.focus : OV_PlayerInteract.target, message, text, color, new object[]
                                {
                                    ((InteractableItem)PlayerInteract.interactable).item,
                                    ((InteractableItem)PlayerInteract.interactable).asset
                                });
                            }
                            else
                            {
                                PlayerUI.hint((!(OV_PlayerInteract.target != null)) ? OV_PlayerInteract.focus : OV_PlayerInteract.target, message, text, color, new object[0]);
                            }
                        }
                    }
                    else
                    {
                        bool flag26 = OV_PlayerInteract.purchaseAsset != null && OptimizationVariables.MainPlayer.movement.purchaseNode != null && !PlayerUI.window.showCursor;
                        if (flag26)
                        {
                            PlayerUI.hint(null, EPlayerMessage.PURCHASE, string.Empty, Color.white, new object[]
                            {
                                OV_PlayerInteract.purchaseAsset.itemName,
                                OptimizationVariables.MainPlayer.movement.purchaseNode.cost
                            });
                        }
                        else
                        {
                            bool flag27 = OV_PlayerInteract.focus != null && OV_PlayerInteract.focus.CompareTag("Enemy");
                            if (flag27)
                            {
                                Player player = DamageTool.getPlayer(OV_PlayerInteract.focus);
                                bool   flag28 = player != null && player != Player.player && !PlayerUI.window.showCursor;
                                if (flag28)
                                {
                                    PlayerUI.hint(null, EPlayerMessage.ENEMY, string.Empty, Color.white, new object[]
                                    {
                                        player.channel.owner
                                    });
                                }
                            }
                        }
                    }
                    EPlayerMessage message2;
                    float          data;
                    bool           flag29 = PlayerInteract.interactable2 != null && PlayerInteract.interactable2.checkHint(out message2, out data) && !PlayerUI.window.showCursor;
                    if (flag29)
                    {
                        PlayerUI.hint2(EPlayerMessage.ENEMY, (!OV_PlayerInteract.isHoldingKey) ? 0f : ((Time.realtimeSinceStartup - OV_PlayerInteract.lastKeyDown) / this.salvageTime), 1f);
                    }
                    bool flag30 = (OptimizationVariables.MainPlayer.stance.stance == EPlayerStance.DRIVING || OptimizationVariables.MainPlayer.stance.stance == EPlayerStance.SITTING) && !Input.GetKey(KeyCode.LeftShift);
                    if (flag30)
                    {
                        bool keyDown = Input.GetKeyDown(KeyCode.F1);
                        if (keyDown)
                        {
                            this.hotkey(0);
                        }
                        bool keyDown2 = Input.GetKeyDown(KeyCode.F2);
                        if (keyDown2)
                        {
                            this.hotkey(1);
                        }
                        bool keyDown3 = Input.GetKeyDown(KeyCode.F3);
                        if (keyDown3)
                        {
                            this.hotkey(2);
                        }
                        bool keyDown4 = Input.GetKeyDown(KeyCode.F4);
                        if (keyDown4)
                        {
                            this.hotkey(3);
                        }
                        bool keyDown5 = Input.GetKeyDown(KeyCode.F5);
                        if (keyDown5)
                        {
                            this.hotkey(4);
                        }
                        bool keyDown6 = Input.GetKeyDown(KeyCode.F6);
                        if (keyDown6)
                        {
                            this.hotkey(5);
                        }
                        bool keyDown7 = Input.GetKeyDown(KeyCode.F7);
                        if (keyDown7)
                        {
                            this.hotkey(6);
                        }
                        bool keyDown8 = Input.GetKeyDown(KeyCode.F8);
                        if (keyDown8)
                        {
                            this.hotkey(7);
                        }
                        bool keyDown9 = Input.GetKeyDown(KeyCode.F9);
                        if (keyDown9)
                        {
                            this.hotkey(8);
                        }
                        bool keyDown10 = Input.GetKeyDown(KeyCode.F10);
                        if (keyDown10)
                        {
                            this.hotkey(9);
                        }
                    }
                    bool keyDown11 = Input.GetKeyDown(ControlsSettings.interact);
                    if (keyDown11)
                    {
                        OV_PlayerInteract.lastKeyDown  = Time.realtimeSinceStartup;
                        OV_PlayerInteract.isHoldingKey = true;
                    }
                    bool flag31 = Input.GetKeyDown(ControlsSettings.inspect) && ControlsSettings.inspect != ControlsSettings.interact && OptimizationVariables.MainPlayer.equipment.canInspect;
                    if (flag31)
                    {
                        OptimizationVariables.MainPlayer.channel.send("askInspect", ESteamCall.SERVER, ESteamPacket.UPDATE_UNRELIABLE_BUFFER, new object[0]);
                    }
                    bool flag32 = OV_PlayerInteract.isHoldingKey;
                    if (flag32)
                    {
                        bool keyUp = Input.GetKeyUp(ControlsSettings.interact);
                        if (keyUp)
                        {
                            OV_PlayerInteract.isHoldingKey = false;
                            bool showCursor = PlayerUI.window.showCursor;
                            if (showCursor)
                            {
                                bool flag33 = OptimizationVariables.MainPlayer.inventory.isStoring && OptimizationVariables.MainPlayer.inventory.shouldInteractCloseStorage;
                                if (flag33)
                                {
                                    PlayerDashboardUI.close();
                                    PlayerLifeUI.open();
                                }
                                else
                                {
                                    bool active = PlayerBarricadeSignUI.active;
                                    if (active)
                                    {
                                        PlayerBarricadeSignUI.close();
                                        PlayerLifeUI.open();
                                    }
                                    else
                                    {
                                        bool active2 = PlayerBarricadeStereoUI.active;
                                        if (active2)
                                        {
                                            PlayerBarricadeStereoUI.close();
                                            PlayerLifeUI.open();
                                        }
                                        else
                                        {
                                            bool active3 = PlayerBarricadeLibraryUI.active;
                                            if (active3)
                                            {
                                                PlayerBarricadeLibraryUI.close();
                                                PlayerLifeUI.open();
                                            }
                                            else
                                            {
                                                bool active4 = PlayerBarricadeMannequinUI.active;
                                                if (active4)
                                                {
                                                    PlayerBarricadeMannequinUI.close();
                                                    PlayerLifeUI.open();
                                                }
                                                else
                                                {
                                                    bool active5 = PlayerNPCDialogueUI.active;
                                                    if (active5)
                                                    {
                                                        bool dialogueAnimating = PlayerNPCDialogueUI.dialogueAnimating;
                                                        if (dialogueAnimating)
                                                        {
                                                            PlayerNPCDialogueUI.skipText();
                                                        }
                                                        else
                                                        {
                                                            bool dialogueHasNextPage = PlayerNPCDialogueUI.dialogueHasNextPage;
                                                            if (dialogueHasNextPage)
                                                            {
                                                                PlayerNPCDialogueUI.nextPage();
                                                            }
                                                            else
                                                            {
                                                                PlayerNPCDialogueUI.close();
                                                                PlayerLifeUI.open();
                                                            }
                                                        }
                                                    }
                                                    else
                                                    {
                                                        bool active6 = PlayerNPCQuestUI.active;
                                                        if (active6)
                                                        {
                                                            PlayerNPCQuestUI.closeNicely();
                                                        }
                                                        else
                                                        {
                                                            bool active7 = PlayerNPCVendorUI.active;
                                                            if (active7)
                                                            {
                                                                PlayerNPCVendorUI.closeNicely();
                                                            }
                                                        }
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                            else
                            {
                                bool flag34 = OptimizationVariables.MainPlayer.stance.stance == EPlayerStance.DRIVING || OptimizationVariables.MainPlayer.stance.stance == EPlayerStance.SITTING;
                                if (flag34)
                                {
                                    VehicleManager.exitVehicle();
                                }
                                else
                                {
                                    bool flag35 = OV_PlayerInteract.focus != null && PlayerInteract.interactable != null;
                                    if (flag35)
                                    {
                                        bool flag36 = PlayerInteract.interactable.checkUseable();
                                        if (flag36)
                                        {
                                            PlayerInteract.interactable.use();
                                        }
                                    }
                                    else
                                    {
                                        bool flag37 = OV_PlayerInteract.purchaseAsset != null;
                                        if (flag37)
                                        {
                                            bool flag38 = OptimizationVariables.MainPlayer.skills.experience >= OptimizationVariables.MainPlayer.movement.purchaseNode.cost;
                                            if (flag38)
                                            {
                                                OptimizationVariables.MainPlayer.skills.sendPurchase(OptimizationVariables.MainPlayer.movement.purchaseNode);
                                            }
                                        }
                                        else
                                        {
                                            bool flag39 = ControlsSettings.inspect == ControlsSettings.interact && OptimizationVariables.MainPlayer.equipment.canInspect;
                                            if (flag39)
                                            {
                                                OptimizationVariables.MainPlayer.channel.send("askInspect", ESteamCall.SERVER, ESteamPacket.UPDATE_UNRELIABLE_BUFFER, new object[0]);
                                            }
                                        }
                                    }
                                }
                            }
                        }
                        else
                        {
                            bool flag40 = Time.realtimeSinceStartup - OV_PlayerInteract.lastKeyDown > this.salvageTime;
                            if (flag40)
                            {
                                OV_PlayerInteract.isHoldingKey = false;
                                bool flag41 = !PlayerUI.window.showCursor && PlayerInteract.interactable2 != null;
                                if (flag41)
                                {
                                    PlayerInteract.interactable2.use();
                                }
                            }
                        }
                    }
                }
            }
        }
 // Token: 0x060037D9 RID: 14297 RVA: 0x0018BD3F File Offset: 0x0018A13F
 private static void onClickedCancelButton(SleekButton button)
 {
     PlayerLifeUI.open();
     PlayerBarricadeMannequinUI.close();
 }
 // Token: 0x060037E8 RID: 14312 RVA: 0x0018C7E1 File Offset: 0x0018ABE1
 private static void onClickedCloseButton(SleekButton button)
 {
     PlayerLifeUI.open();
     PlayerBarricadeStereoUI.close();
 }
Exemple #15
0
 // Token: 0x06002C0E RID: 11278 RVA: 0x00117EA4 File Offset: 0x001162A4
 private void Update()
 {
     if (base.channel.isOwner)
     {
         if (base.player.stance.stance != EPlayerStance.DRIVING && base.player.stance.stance != EPlayerStance.SITTING && !base.player.life.isDead && !base.player.workzone.isBuilding)
         {
             if (Time.realtimeSinceStartup - PlayerInteract.lastInteract > 0.1f)
             {
                 PlayerInteract.lastInteract = Time.realtimeSinceStartup;
                 if (base.player.look.isCam)
                 {
                     PhysicsUtility.raycast(new Ray(base.player.look.aim.position, base.player.look.aim.forward), out PlayerInteract.hit, 4f, RayMasks.PLAYER_INTERACT, QueryTriggerInteraction.UseGlobal);
                 }
                 else
                 {
                     PhysicsUtility.raycast(new Ray(MainCamera.instance.transform.position, MainCamera.instance.transform.forward), out PlayerInteract.hit, (float)((base.player.look.perspective != EPlayerPerspective.THIRD) ? 4 : 6), RayMasks.PLAYER_INTERACT, QueryTriggerInteraction.UseGlobal);
                 }
             }
             if (PlayerInteract.hit.transform != PlayerInteract.focus)
             {
                 if (PlayerInteract.focus != null && PlayerInteract.interactable != null)
                 {
                     InteractableDoorHinge component = PlayerInteract.focus.GetComponent <InteractableDoorHinge>();
                     if (component != null)
                     {
                         HighlighterTool.unhighlight(PlayerInteract.focus.parent.parent);
                     }
                     else
                     {
                         HighlighterTool.unhighlight(PlayerInteract.focus);
                     }
                 }
                 PlayerInteract.focus          = null;
                 PlayerInteract.target         = null;
                 PlayerInteract._interactable  = null;
                 PlayerInteract._interactable2 = null;
                 if (PlayerInteract.hit.transform != null)
                 {
                     PlayerInteract.focus          = PlayerInteract.hit.transform;
                     PlayerInteract._interactable  = PlayerInteract.focus.GetComponent <Interactable>();
                     PlayerInteract._interactable2 = PlayerInteract.focus.GetComponent <Interactable2>();
                     if (PlayerInteract.interactable != null)
                     {
                         PlayerInteract.target = PlayerInteract.focus.FindChildRecursive("Target");
                         if (PlayerInteract.interactable.checkInteractable())
                         {
                             if (PlayerUI.window.isEnabled)
                             {
                                 if (PlayerInteract.interactable.checkUseable())
                                 {
                                     Color color;
                                     if (!PlayerInteract.interactable.checkHighlight(out color))
                                     {
                                         color = Color.green;
                                     }
                                     InteractableDoorHinge component2 = PlayerInteract.focus.GetComponent <InteractableDoorHinge>();
                                     if (component2 != null)
                                     {
                                         HighlighterTool.highlight(PlayerInteract.focus.parent.parent, color);
                                     }
                                     else
                                     {
                                         HighlighterTool.highlight(PlayerInteract.focus, color);
                                     }
                                 }
                                 else
                                 {
                                     Color color = Color.red;
                                     InteractableDoorHinge component3 = PlayerInteract.focus.GetComponent <InteractableDoorHinge>();
                                     if (component3 != null)
                                     {
                                         HighlighterTool.highlight(PlayerInteract.focus.parent.parent, color);
                                     }
                                     else
                                     {
                                         HighlighterTool.highlight(PlayerInteract.focus, color);
                                     }
                                 }
                             }
                         }
                         else
                         {
                             PlayerInteract.target        = null;
                             PlayerInteract._interactable = null;
                         }
                     }
                 }
             }
         }
         else
         {
             if (PlayerInteract.focus != null && PlayerInteract.interactable != null)
             {
                 InteractableDoorHinge component4 = PlayerInteract.focus.GetComponent <InteractableDoorHinge>();
                 if (component4 != null)
                 {
                     HighlighterTool.unhighlight(PlayerInteract.focus.parent.parent);
                 }
                 else
                 {
                     HighlighterTool.unhighlight(PlayerInteract.focus);
                 }
             }
             PlayerInteract.focus          = null;
             PlayerInteract.target         = null;
             PlayerInteract._interactable  = null;
             PlayerInteract._interactable2 = null;
         }
     }
     if (base.channel.isOwner && !base.player.life.isDead)
     {
         if (PlayerInteract.interactable != null)
         {
             EPlayerMessage message;
             string         text;
             Color          color2;
             if (PlayerInteract.interactable.checkHint(out message, out text, out color2) && !PlayerUI.window.showCursor)
             {
                 if (PlayerInteract.interactable.CompareTag("Item"))
                 {
                     PlayerUI.hint((!(PlayerInteract.target != null)) ? PlayerInteract.focus : PlayerInteract.target, message, text, color2, new object[]
                     {
                         ((InteractableItem)PlayerInteract.interactable).item,
                         ((InteractableItem)PlayerInteract.interactable).asset
                     });
                 }
                 else
                 {
                     PlayerUI.hint((!(PlayerInteract.target != null)) ? PlayerInteract.focus : PlayerInteract.target, message, text, color2, new object[0]);
                 }
             }
         }
         else if (PlayerInteract.purchaseAsset != null && base.player.movement.purchaseNode != null && !PlayerUI.window.showCursor)
         {
             PlayerUI.hint(null, EPlayerMessage.PURCHASE, string.Empty, Color.white, new object[]
             {
                 PlayerInteract.purchaseAsset.itemName,
                 base.player.movement.purchaseNode.cost
             });
         }
         else if (PlayerInteract.focus != null && PlayerInteract.focus.CompareTag("Enemy"))
         {
             Player player = DamageTool.getPlayer(PlayerInteract.focus);
             if (player != null && player != Player.player && !PlayerUI.window.showCursor)
             {
                 PlayerUI.hint(null, EPlayerMessage.ENEMY, string.Empty, Color.white, new object[]
                 {
                     player.channel.owner
                 });
             }
         }
         EPlayerMessage message2;
         float          data;
         if (PlayerInteract.interactable2 != null && PlayerInteract.interactable2.checkHint(out message2, out data) && !PlayerUI.window.showCursor)
         {
             PlayerUI.hint2(message2, (!PlayerInteract.isHoldingKey) ? 0f : ((Time.realtimeSinceStartup - PlayerInteract.lastKeyDown) / this.salvageTime), data);
         }
         if ((base.player.stance.stance == EPlayerStance.DRIVING || base.player.stance.stance == EPlayerStance.SITTING) && !Input.GetKey(KeyCode.LeftShift))
         {
             if (Input.GetKeyDown(KeyCode.F1))
             {
                 this.hotkey(0);
             }
             if (Input.GetKeyDown(KeyCode.F2))
             {
                 this.hotkey(1);
             }
             if (Input.GetKeyDown(KeyCode.F3))
             {
                 this.hotkey(2);
             }
             if (Input.GetKeyDown(KeyCode.F4))
             {
                 this.hotkey(3);
             }
             if (Input.GetKeyDown(KeyCode.F5))
             {
                 this.hotkey(4);
             }
             if (Input.GetKeyDown(KeyCode.F6))
             {
                 this.hotkey(5);
             }
             if (Input.GetKeyDown(KeyCode.F7))
             {
                 this.hotkey(6);
             }
             if (Input.GetKeyDown(KeyCode.F8))
             {
                 this.hotkey(7);
             }
             if (Input.GetKeyDown(KeyCode.F9))
             {
                 this.hotkey(8);
             }
             if (Input.GetKeyDown(KeyCode.F10))
             {
                 this.hotkey(9);
             }
         }
         if (Input.GetKeyDown(ControlsSettings.interact))
         {
             PlayerInteract.lastKeyDown  = Time.realtimeSinceStartup;
             PlayerInteract.isHoldingKey = true;
         }
         if (Input.GetKeyDown(ControlsSettings.inspect) && ControlsSettings.inspect != ControlsSettings.interact && base.player.equipment.canInspect)
         {
             base.channel.send("askInspect", ESteamCall.SERVER, ESteamPacket.UPDATE_UNRELIABLE_BUFFER, new object[0]);
         }
         if (PlayerInteract.isHoldingKey)
         {
             if (Input.GetKeyUp(ControlsSettings.interact))
             {
                 PlayerInteract.isHoldingKey = false;
                 if (PlayerUI.window.showCursor)
                 {
                     if (base.player.inventory.isStoring && base.player.inventory.shouldInteractCloseStorage)
                     {
                         PlayerDashboardUI.close();
                         PlayerLifeUI.open();
                     }
                     else if (PlayerBarricadeSignUI.active)
                     {
                         PlayerBarricadeSignUI.close();
                         PlayerLifeUI.open();
                     }
                     else if (PlayerBarricadeStereoUI.active)
                     {
                         PlayerBarricadeStereoUI.close();
                         PlayerLifeUI.open();
                     }
                     else if (PlayerBarricadeLibraryUI.active)
                     {
                         PlayerBarricadeLibraryUI.close();
                         PlayerLifeUI.open();
                     }
                     else if (PlayerBarricadeMannequinUI.active)
                     {
                         PlayerBarricadeMannequinUI.close();
                         PlayerLifeUI.open();
                     }
                     else if (PlayerNPCDialogueUI.active)
                     {
                         if (PlayerNPCDialogueUI.dialogueAnimating)
                         {
                             PlayerNPCDialogueUI.skipText();
                         }
                         else if (PlayerNPCDialogueUI.dialogueHasNextPage)
                         {
                             PlayerNPCDialogueUI.nextPage();
                         }
                         else
                         {
                             PlayerNPCDialogueUI.close();
                             PlayerLifeUI.open();
                         }
                     }
                     else if (PlayerNPCQuestUI.active)
                     {
                         PlayerNPCQuestUI.closeNicely();
                     }
                     else if (PlayerNPCVendorUI.active)
                     {
                         PlayerNPCVendorUI.closeNicely();
                     }
                 }
                 else if (base.player.stance.stance == EPlayerStance.DRIVING || base.player.stance.stance == EPlayerStance.SITTING)
                 {
                     VehicleManager.exitVehicle();
                 }
                 else if (PlayerInteract.focus != null && PlayerInteract.interactable != null)
                 {
                     if (PlayerInteract.interactable.checkUseable())
                     {
                         PlayerInteract.interactable.use();
                     }
                 }
                 else if (PlayerInteract.purchaseAsset != null)
                 {
                     if (base.player.skills.experience >= base.player.movement.purchaseNode.cost)
                     {
                         base.player.skills.sendPurchase(base.player.movement.purchaseNode);
                     }
                 }
                 else if (ControlsSettings.inspect == ControlsSettings.interact && base.player.equipment.canInspect)
                 {
                     base.channel.send("askInspect", ESteamCall.SERVER, ESteamPacket.UPDATE_UNRELIABLE_BUFFER, new object[0]);
                 }
             }
             else if (Time.realtimeSinceStartup - PlayerInteract.lastKeyDown > this.salvageTime)
             {
                 PlayerInteract.isHoldingKey = false;
                 if (!PlayerUI.window.showCursor && PlayerInteract.interactable2 != null)
                 {
                     PlayerInteract.interactable2.use();
                 }
             }
         }
     }
 }
Exemple #16
0
 private static void onClickedReturnButton(SleekButton button)
 {
     PlayerPauseUI.close();
     PlayerLifeUI.open();
 }
Exemple #17
0
        public void OV_Update()
        {
            if (!DrawUtilities.ShouldRun())
            {
                return;
            }
            if (Player.player.stance.stance != EPlayerStance.DRIVING)
            {
                if (Player.player.stance.stance != EPlayerStance.SITTING)
                {
                    if (!Player.player.life.isDead && !Player.player.workzone.isBuilding)
                    {
                        if (Time.realtimeSinceStartup - OV_PlayerInteract.lastInteract > 0.1f)
                        {
                            int num = 0;
                            if (InteractionOptions.InteractThroughWalls && !PlayerCoroutines.IsSpying)
                            {
                                if (!InteractionOptions.NoHitBarricades)
                                {
                                    num |= RayMasks.BARRICADE;
                                }
                                if (!InteractionOptions.NoHitItems)
                                {
                                    num |= RayMasks.ITEM;
                                }
                                if (!InteractionOptions.NoHitResources)
                                {
                                    num |= RayMasks.RESOURCE;
                                }
                                if (!InteractionOptions.NoHitStructures)
                                {
                                    num |= RayMasks.STRUCTURE;
                                }
                                if (!InteractionOptions.NoHitVehicles)
                                {
                                    num |= RayMasks.VEHICLE;
                                }
                                if (!InteractionOptions.NoHitEnvironment)
                                {
                                    num |= (RayMasks.LARGE | RayMasks.MEDIUM | RayMasks.ENVIRONMENT | RayMasks.GROUND);
                                }
                            }
                            else
                            {
                                num = RayMasks.PLAYER_INTERACT;
                            }
                            OV_PlayerInteract.lastInteract = Time.realtimeSinceStartup;
                            float num2 = (!InteractionOptions.InteractThroughWalls || PlayerCoroutines.IsSpying) ? 4f : 20f;
                            PhysicsUtility.raycast(new Ray(OptimizationVariables.MainCam.transform.position, OptimizationVariables.MainCam.transform.forward), out OV_PlayerInteract.hit, (Player.player.look.perspective == EPlayerPerspective.THIRD) ? (num2 + 2f) : num2, num, QueryTriggerInteraction.UseGlobal);
                        }
                        Transform transform = (!(OV_PlayerInteract.hit.collider != null)) ? null : OV_PlayerInteract.hit.collider.transform;
                        if (!(transform != OV_PlayerInteract.focus))
                        {
                            goto IL_39E;
                        }
                        if (OV_PlayerInteract.focus != null && PlayerInteract.interactable != null)
                        {
                            InteractableDoorHinge componentInParent = OV_PlayerInteract.focus.GetComponentInParent <InteractableDoorHinge>();
                            if (componentInParent != null)
                            {
                                HighlighterTool.unhighlight(componentInParent.door.transform);
                            }
                            else
                            {
                                HighlighterTool.unhighlight(PlayerInteract.interactable.transform);
                            }
                        }
                        OV_PlayerInteract.focus         = null;
                        OV_PlayerInteract.target        = null;
                        OV_PlayerInteract.interactable  = null;
                        OV_PlayerInteract.interactable2 = null;
                        if (!(transform != null))
                        {
                            goto IL_39E;
                        }
                        OV_PlayerInteract.focus         = transform;
                        OV_PlayerInteract.interactable  = OV_PlayerInteract.focus.GetComponentInParent <Interactable>();
                        OV_PlayerInteract.interactable2 = OV_PlayerInteract.focus.GetComponentInParent <Interactable2>();
                        if (!(PlayerInteract.interactable != null))
                        {
                            goto IL_39E;
                        }
                        OV_PlayerInteract.target = PlayerInteract.interactable.transform.FindChildRecursive("Target");
                        if (!PlayerInteract.interactable.checkInteractable())
                        {
                            OV_PlayerInteract.target       = null;
                            OV_PlayerInteract.interactable = null;
                            goto IL_39E;
                        }
                        if (!PlayerUI.window.isEnabled)
                        {
                            goto IL_39E;
                        }
                        if (!PlayerInteract.interactable.checkUseable())
                        {
                            Color color = Color.red;
                            InteractableDoorHinge componentInParent2 = OV_PlayerInteract.focus.GetComponentInParent <InteractableDoorHinge>();
                            if (componentInParent2 != null)
                            {
                                HighlighterTool.highlight(componentInParent2.door.transform, color);
                                goto IL_39E;
                            }
                            HighlighterTool.highlight(PlayerInteract.interactable.transform, color);
                            goto IL_39E;
                        }
                        else
                        {
                            Color color;
                            if (!PlayerInteract.interactable.checkHighlight(out color))
                            {
                                color = Color.green;
                            }
                            InteractableDoorHinge componentInParent3 = OV_PlayerInteract.focus.GetComponentInParent <InteractableDoorHinge>();
                            if (componentInParent3 != null)
                            {
                                HighlighterTool.highlight(componentInParent3.door.transform, color);
                                goto IL_39E;
                            }
                            HighlighterTool.highlight(PlayerInteract.interactable.transform, color);
                            goto IL_39E;
                        }
                    }
                }
            }
            if (OV_PlayerInteract.focus != null && PlayerInteract.interactable != null)
            {
                InteractableDoorHinge componentInParent4 = OV_PlayerInteract.focus.GetComponentInParent <InteractableDoorHinge>();
                if (componentInParent4 != null)
                {
                    HighlighterTool.unhighlight(componentInParent4.door.transform);
                }
                else
                {
                    HighlighterTool.unhighlight(PlayerInteract.interactable.transform);
                }
            }
            OV_PlayerInteract.focus         = null;
            OV_PlayerInteract.target        = null;
            OV_PlayerInteract.interactable  = null;
            OV_PlayerInteract.interactable2 = null;
IL_39E:
            if (!Player.player.life.isDead)
            {
                EPlayerMessage message;
                string         text;
                Color          color2;
                if (!(PlayerInteract.interactable != null))
                {
                    if (OV_PlayerInteract.purchaseAsset != null && Player.player.movement.purchaseNode != null && !PlayerUI.window.showCursor)
                    {
                        PlayerUI.hint(null, EPlayerMessage.PURCHASE, string.Empty, Color.white, new object[]
                        {
                            OV_PlayerInteract.purchaseAsset.itemName,
                            Player.player.movement.purchaseNode.cost
                        });
                    }
                    else if (OV_PlayerInteract.focus != null && OV_PlayerInteract.focus.CompareTag("Enemy"))
                    {
                        Player player = DamageTool.getPlayer(OV_PlayerInteract.focus);
                        if (player != null && player != Player.player && !PlayerUI.window.showCursor)
                        {
                            PlayerUI.hint(null, EPlayerMessage.ENEMY, string.Empty, Color.white, new object[]
                            {
                                player.channel.owner
                            });
                        }
                    }
                }
                else if (PlayerInteract.interactable.checkHint(out message, out text, out color2) && !PlayerUI.window.showCursor)
                {
                    if (!PlayerInteract.interactable.CompareTag("Item"))
                    {
                        PlayerUI.hint((!(OV_PlayerInteract.target != null)) ? OV_PlayerInteract.focus : OV_PlayerInteract.target, message, text, color2, Array.Empty <object>());
                    }
                    else
                    {
                        PlayerUI.hint((!(OV_PlayerInteract.target != null)) ? OV_PlayerInteract.focus : OV_PlayerInteract.target, message, text, color2, new object[]
                        {
                            ((InteractableItem)PlayerInteract.interactable).item,
                            ((InteractableItem)PlayerInteract.interactable).asset
                        });
                    }
                }
                EPlayerMessage message2;
                float          data;
                if (PlayerInteract.interactable2 != null && PlayerInteract.interactable2.checkHint(out message2, out data) && !PlayerUI.window.showCursor)
                {
                    PlayerUI.hint2(message2, (!OV_PlayerInteract.isHoldingKey) ? 0f : ((Time.realtimeSinceStartup - OV_PlayerInteract.lastKeyDown) / this.salvageTime), data);
                }
                if ((Player.player.stance.stance == EPlayerStance.DRIVING || Player.player.stance.stance == EPlayerStance.SITTING) && !Input.GetKey(KeyCode.LeftShift))
                {
                    if (Input.GetKeyDown(KeyCode.F1))
                    {
                        this.hotkey(0);
                    }
                    if (Input.GetKeyDown(KeyCode.F2))
                    {
                        this.hotkey(1);
                    }
                    if (Input.GetKeyDown(KeyCode.F3))
                    {
                        this.hotkey(2);
                    }
                    if (Input.GetKeyDown(KeyCode.F4))
                    {
                        this.hotkey(3);
                    }
                    if (Input.GetKeyDown(KeyCode.F5))
                    {
                        this.hotkey(4);
                    }
                    if (Input.GetKeyDown(KeyCode.F6))
                    {
                        this.hotkey(5);
                    }
                    if (Input.GetKeyDown(KeyCode.F7))
                    {
                        this.hotkey(6);
                    }
                    if (Input.GetKeyDown(KeyCode.F8))
                    {
                        this.hotkey(7);
                    }
                    if (Input.GetKeyDown(KeyCode.F9))
                    {
                        this.hotkey(8);
                    }
                    if (Input.GetKeyDown(KeyCode.F10))
                    {
                        this.hotkey(9);
                    }
                }
                if (Input.GetKeyDown(ControlsSettings.interact))
                {
                    OV_PlayerInteract.lastKeyDown  = Time.realtimeSinceStartup;
                    OV_PlayerInteract.isHoldingKey = true;
                }
                if (Input.GetKeyDown(ControlsSettings.inspect))
                {
                    if (ControlsSettings.inspect != ControlsSettings.interact)
                    {
                        if (Player.player.equipment.canInspect)
                        {
                            Player.player.channel.send("askInspect", ESteamCall.SERVER, ESteamPacket.UPDATE_UNRELIABLE_BUFFER, Array.Empty <object>());
                        }
                    }
                }
                if (OV_PlayerInteract.isHoldingKey)
                {
                    if (!Input.GetKeyUp(ControlsSettings.interact))
                    {
                        if (Time.realtimeSinceStartup - OV_PlayerInteract.lastKeyDown > this.salvageTime)
                        {
                            OV_PlayerInteract.isHoldingKey = false;
                            if (!PlayerUI.window.showCursor && PlayerInteract.interactable2 != null)
                            {
                                PlayerInteract.interactable2.use();
                            }
                        }
                    }
                    else
                    {
                        OV_PlayerInteract.isHoldingKey = false;
                        if (!PlayerUI.window.showCursor)
                        {
                            if (Player.player.stance.stance != EPlayerStance.DRIVING)
                            {
                                if (Player.player.stance.stance != EPlayerStance.SITTING)
                                {
                                    if (OV_PlayerInteract.focus != null && PlayerInteract.interactable != null)
                                    {
                                        if (PlayerInteract.interactable.checkUseable())
                                        {
                                            PlayerInteract.interactable.use();
                                            return;
                                        }
                                        return;
                                    }
                                    else if (OV_PlayerInteract.purchaseAsset == null)
                                    {
                                        if (ControlsSettings.inspect != ControlsSettings.interact)
                                        {
                                            return;
                                        }
                                        if (Player.player.equipment.canInspect)
                                        {
                                            Player.player.channel.send("askInspect", ESteamCall.SERVER, ESteamPacket.UPDATE_UNRELIABLE_BUFFER, Array.Empty <object>());
                                            return;
                                        }
                                        return;
                                    }
                                    else
                                    {
                                        if (Player.player.skills.experience >= Player.player.movement.purchaseNode.cost)
                                        {
                                            Player.player.skills.sendPurchase(Player.player.movement.purchaseNode);
                                            return;
                                        }
                                        return;
                                    }
                                }
                            }
                            VehicleManager.exitVehicle();
                            return;
                        }
                        if (Player.player.inventory.isStoring && Player.player.inventory.shouldInteractCloseStorage)
                        {
                            PlayerDashboardUI.close();
                            PlayerLifeUI.open();
                            return;
                        }
                        if (PlayerBarricadeSignUI.active)
                        {
                            PlayerBarricadeSignUI.close();
                            PlayerLifeUI.open();
                            return;
                        }
                        if (PlayerBarricadeStereoUI.active)
                        {
                            PlayerBarricadeStereoUI.close();
                            PlayerLifeUI.open();
                            return;
                        }
                        if (PlayerBarricadeLibraryUI.active)
                        {
                            PlayerBarricadeLibraryUI.close();
                            PlayerLifeUI.open();
                            return;
                        }
                        if (PlayerBarricadeMannequinUI.active)
                        {
                            PlayerBarricadeMannequinUI.close();
                            PlayerLifeUI.open();
                            return;
                        }
                        if (PlayerNPCDialogueUI.active)
                        {
                            if (PlayerNPCDialogueUI.dialogueAnimating)
                            {
                                PlayerNPCDialogueUI.skipText();
                                return;
                            }
                            if (PlayerNPCDialogueUI.dialogueHasNextPage)
                            {
                                PlayerNPCDialogueUI.nextPage();
                                return;
                            }
                            PlayerNPCDialogueUI.close();
                            PlayerLifeUI.open();
                            return;
                        }
                        else
                        {
                            if (PlayerNPCQuestUI.active)
                            {
                                PlayerNPCQuestUI.closeNicely();
                                return;
                            }
                            if (PlayerNPCVendorUI.active)
                            {
                                PlayerNPCVendorUI.closeNicely();
                                return;
                            }
                        }
                    }
                }
                return;
            }
        }
 // Token: 0x060037EE RID: 14318 RVA: 0x0018CB9E File Offset: 0x0018AF9E
 private static void onClickedNoButton(SleekButton button)
 {
     PlayerLifeUI.open();
     PlayerBrowserRequestUI.close();
 }