当前位置: 首页>>代码示例>>C#>>正文


C# AC.IsPointInside方法代码示例

本文整理汇总了C#中AC.IsPointInside方法的典型用法代码示例。如果您正苦于以下问题:C# AC.IsPointInside方法的具体用法?C# AC.IsPointInside怎么用?C# AC.IsPointInside使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在AC的用法示例。


在下文中一共展示了AC.IsPointInside方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: UpdateElements

        private void UpdateElements(AC.Menu menu, int languageNumber)
        {
            if (!menu.HasTransition () && menu.IsFading ())
            {
                // Stop until no longer "fading" so that it appears in right place
                return;
            }

            if (KickStarter.settingsManager.inputMethod == InputMethod.MouseAndKeyboard && menu.IsPointInside (KickStarter.playerInput.GetInvertedMouse ()))
            {
                elementIdentifier = menu.id.ToString ();
            }

            foreach (MenuElement element in menu.elements)
            {
                if ((element.GetNumSlots () == 0 || !element.isVisible) && menu.menuSource != MenuSource.AdventureCreator)
                {
                    element.HideAllUISlots ();
                }

                for (int i=0; i<element.GetNumSlots (); i++)
                {
                    element.PreDisplay (i, languageNumber, menu.IsPointerOverSlot (element, i, KickStarter.playerInput.GetInvertedMouse ()));

                    if (element.isVisible && SlotIsInteractive (menu, element, i))
                    {
                        if ((!interactionMenuIsOn || menu.appearType == AppearType.OnInteraction)
                            && (KickStarter.playerInput.GetDragState () == DragState.None || (KickStarter.playerInput.GetDragState () == DragState.Inventory && CanElementBeDroppedOnto (element))))
                        {
                            if (KickStarter.sceneSettings && element.hoverSound && lastElementIdentifier != (menu.id.ToString () + element.ID.ToString () + i.ToString ()))
                            {
                                KickStarter.sceneSettings.PlayDefaultSound (element.hoverSound, false);
                            }

                            elementIdentifier = menu.id.ToString () + element.ID.ToString () + i.ToString ();
                        }

                        if (KickStarter.stateHandler.gameState != GameState.Cutscene)
                        {
                            if (element is MenuInventoryBox)
                            {
                                //if (KickStarter.stateHandler.gameState == GameState.Normal)
                                if (KickStarter.stateHandler.gameState == GameState.Normal || KickStarter.stateHandler.gameState == GameState.Paused)
                                {
                                    if (KickStarter.settingsManager.interactionMethod == AC_InteractionMethod.ChooseInteractionThenHotspot && KickStarter.settingsManager.inventoryInteractions == InventoryInteractions.Single && KickStarter.runtimeInventory.selectedItem == null)
                                    {
                                        KickStarter.playerCursor.ResetSelectedCursor ();
                                    }

                                    MenuInventoryBox inventoryBox = (MenuInventoryBox) element;
                                    if (inventoryBox.inventoryBoxType == AC_InventoryBoxType.HotspotBased)
                                    {
                                        if (KickStarter.cursorManager.addHotspotPrefix)
                                        {
                                            if (KickStarter.runtimeInventory.hoverItem != null)
                                            {
                                                hotspotLabel = KickStarter.runtimeInventory.hoverItem.GetLabel (languageNumber);
                                            }
                                            else
                                            {
                                                hotspotLabel = KickStarter.playerInteraction.GetLabel (languageNumber);
                                            }

                                            if ((KickStarter.runtimeInventory.selectedItem == null && !interactionMenuIsOn) || interactionMenuIsOn)
                                            {
                                                hotspotLabel = KickStarter.runtimeInventory.GetHotspotPrefixLabel (inventoryBox.GetItem (i), inventoryBox.GetLabel (i, languageNumber), languageNumber) + hotspotLabel;
                                            }
                                        }
                                    }
                                    else
                                    {
                                        foundMouseOverInventory = true;

                                        if (!mouseOverInteractionMenu)
                                        {
                                            InvItem newHoverItem = inventoryBox.GetItem (i);
                                            //KickStarter.runtimeInventory.hoverItem = newHoverItem;
                                            KickStarter.runtimeInventory.SetHoverItem (newHoverItem, inventoryBox.displayType);
                                            if (oldHoverItem != newHoverItem)
                                            {
                                                KickStarter.runtimeInventory.MatchInteractions ();
                                                KickStarter.playerInteraction.RestoreInventoryInteraction ();
                                                activeInventoryBoxCentre = menu.GetSlotCentre (inventoryBox, i);

                                                if (interactionMenuIsOn)
                                                {
                                                    SetInteractionMenus (false);
                                                }
                                            }
                                        }

                                        if (KickStarter.settingsManager.SelectInteractionMethod () == SelectInteractions.CyclingCursorAndClickingHotspot)
                                        {}
                                        else
                                        {
                                            if (!interactionMenuIsOn)
                                            {
                                                if (inventoryBox.displayType == ConversationDisplayType.IconOnly)
                                                {
                                                    if (KickStarter.settingsManager.interactionMethod == AC_InteractionMethod.ChooseInteractionThenHotspot)
//.........这里部分代码省略.........
开发者ID:Davetheallthing,项目名称:Space-Walk,代码行数:101,代码来源:PlayerMenus.cs

示例2: UpdateMenu

        private void UpdateMenu(AC.Menu menu)
        {
            Vector2 invertedMouse = KickStarter.playerInput.GetInvertedMouse ();
            UpdateMenuPosition (menu, invertedMouse);

            menu.HandleTransition ();

            if (KickStarter.settingsManager.inputMethod == InputMethod.KeyboardOrController && menu.IsEnabled ())
            {
                KickStarter.playerInput.InputControlMenu (menu);
            }

            if (menu.appearType == AppearType.Manual)
            {
                if (menu.IsVisible () && !menu.isLocked && menu.IsPointInside (invertedMouse) && !menu.ignoreMouseClicks)
                {
                    foundMouseOverMenu = true;
                }
            }

            else if (menu.appearType == AppearType.DuringGameplay)
            {
                if (KickStarter.stateHandler.gameState == GameState.Normal && !menu.isLocked)
                {
                    if (menu.IsOff ())
                    {
                        menu.TurnOn (true);
                    }

                    if (menu.IsOn () && menu.IsPointInside (invertedMouse))
                    {
                        foundMouseOverMenu = true;
                    }
                }
                else if (KickStarter.stateHandler.gameState == GameState.Paused)
                {
                    menu.TurnOff (true);
                }
                //else if (KickStarter.stateHandler.gameState != GameState.Normal && menu.IsOn () && (KickStarter.actionListManager.AreActionListsRunning () || KickStarter.playerInput.activeConversation != null))
                else if (menu.IsOn () && KickStarter.actionListManager.IsGameplayBlocked ())
                {
                    menu.TurnOff (true);
                }
            }

            else if (menu.appearType == AppearType.MouseOver)
            {
                if (KickStarter.stateHandler.gameState == GameState.Normal && !menu.isLocked && menu.IsPointInside (invertedMouse))
                {
                    if (menu.IsOff ())
                    {
                        menu.TurnOn (true);
                    }

                    if (!menu.ignoreMouseClicks)
                    {
                        foundMouseOverMenu = true;
                    }
                }
                else if (KickStarter.stateHandler.gameState == GameState.Paused)
                {
                    menu.ForceOff ();
                }
                else
                {
                    menu.TurnOff (true);
                }
            }

            else if (menu.appearType == AppearType.OnContainer)
            {
                if (KickStarter.playerInput.activeContainer != null && !menu.isLocked && (KickStarter.stateHandler.gameState == GameState.Normal || (KickStarter.stateHandler.gameState == AC.GameState.Paused && menu.pauseWhenEnabled)))
                {
                    if (menu.IsVisible () && menu.IsPointInside (invertedMouse) && !menu.ignoreMouseClicks)
                    {
                        foundMouseOverMenu = true;
                    }
                    menu.TurnOn (true);
                }
                else
                {
                    menu.TurnOff (true);
                }
            }

            else if (menu.appearType == AppearType.DuringConversation)
            {
                if (KickStarter.playerInput.activeConversation != null && KickStarter.stateHandler.gameState == GameState.DialogOptions)
                {
                    menu.TurnOn (true);
                }
                else if (KickStarter.stateHandler.gameState == GameState.Paused)
                {
                    menu.ForceOff ();
                }
                else
                {
                    menu.TurnOff (true);
                }
            }
//.........这里部分代码省略.........
开发者ID:Davetheallthing,项目名称:Space-Walk,代码行数:101,代码来源:PlayerMenus.cs

示例3: CheckClicks

        private void CheckClicks(AC.Menu menu)
        {
            if (!menu.HasTransition () && menu.IsFading ())
            {
                // Stop until no longer "fading" so that it appears in right place
                return;
            }

            if (KickStarter.settingsManager.inputMethod == InputMethod.MouseAndKeyboard && menu.IsPointInside (KickStarter.playerInput.GetInvertedMouse ()))
            {
                elementIdentifier = menu.id.ToString ();
            }

            foreach (MenuElement element in menu.elements)
            {
                if (element.isVisible)
                {
                    for (int i=0; i<element.GetNumSlots (); i++)
                    {
                        if (SlotIsInteractive (menu, element, i))
                        {
                            if (!menu.IsUnityUI () && KickStarter.playerInput.GetMouseState () != MouseState.Normal && (KickStarter.playerInput.GetDragState () == DragState.None || KickStarter.playerInput.GetDragState () == DragState.Menu))
                            {
                                if (KickStarter.playerInput.GetMouseState () == MouseState.SingleClick || KickStarter.playerInput.GetMouseState () == MouseState.LetGo || KickStarter.playerInput.GetMouseState () == MouseState.RightClick)
                                {
                                    if (element is MenuInput) {}
                                    else DeselectInputBox ();

                                    CheckClick (menu, element, i, KickStarter.playerInput.GetMouseState ());
                                }
                                else if (KickStarter.playerInput.GetMouseState () == MouseState.HeldDown)
                                {
                                    CheckContinuousClick (menu, element, i, KickStarter.playerInput.GetMouseState ());
                                }
                            }
                            else if (menu.IsUnityUI () && KickStarter.runtimeInventory.selectedItem == null && KickStarter.settingsManager.inventoryDragDrop && KickStarter.playerInput.GetMouseState () == MouseState.HeldDown && KickStarter.playerInput.GetDragState () == DragState.None)
                            {
                                if (element is MenuInventoryBox || element is MenuCrafting)
                                {
                                    // Begin UI drag drop
                                    CheckClick (menu, element, i, MouseState.SingleClick);
                                }
                            }
                            else if (KickStarter.playerInteraction.IsDroppingInventory () && CanElementBeDroppedOnto (element))
                            {
                                if (menu.IsUnityUI () && KickStarter.settingsManager.inventoryDragDrop && (element is MenuInventoryBox || element is MenuCrafting))
                                {
                                    // End UI drag drop
                                    element.ProcessClick (menu, i, MouseState.SingleClick);
                                }
                                else
                                {
                                    DeselectInputBox ();
                                    CheckClick (menu, element, i, MouseState.SingleClick);
                                }
                            }
                        }
                    }
                }
            }
        }
开发者ID:Davetheallthing,项目名称:Space-Walk,代码行数:61,代码来源:PlayerMenus.cs


注:本文中的AC.IsPointInside方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。