示例#1
0
 private void CreateCraftingActionWidgetsInternal(UiElementContainer container, GameObject prefab, int start = 0, params CraftingAction[] actions)
 {
     for (int i = start; i < actions.Length; i++)
     {
         this.CreateCraftingActionWidgetInternal(container, prefab, actions[i]);
     }
 }
示例#2
0
    public CraftingMenu(CraftingManager craftingManager) : this(craftingManager.gameObject)
    {
        craftingSequenceDisplay = craftingManager.progressDisplay.GetOrAddComponent <TextMeshProUGUI>();

        occupiablePositionContainer = new OccupiablePositionContainer(craftingManager.itemObjectPositions);

        CraftingButtonContainer = craftingManager.craftingActionButtonParent.GetOrAddComponent <UiElementContainer>();
    }
示例#3
0
    public void CreateDefaultCraftingActionWidget(GameObject prefab, UiElementContainer container, bool setContainerInactive = true)
    {
        this.CreateCraftingActionWidgetInternal(container, prefab, CraftingAction.ATTACH);

        if (setContainerInactive)
        {
            container.gameObject.SetActive(false);
        }
    }
示例#4
0
    private void CreateCraftingActionWidgetInternal(UiElementContainer container, GameObject prefab, CraftingAction action, int?position = null)
    {
        Debug.LogFormat("Creating Crafting action button {0}", action);
        container.SpawnAtAlternatingVerticalPositions(prefab, 100, 150, position: position);
        CraftingActionWidget craftAction = container.GetLastChildComponent <CraftingActionWidget>();

        craftAction.InitializeWidgetComponents();

        craftAction.SetCraftingActionButton(action, craftingManager);
        craftAction.EnableFidgeting();
    }
示例#5
0
    public void CreateCraftingActionWidgetsForToolkit(GameObject prefab, UiElementContainer container, bool withDefaultAction = false, bool clearAllChildren = false)
    {
        var actions = this.toolKitMenu.ActiveToolCraftingActions;

        if (clearAllChildren)
        {
            container.DetachAndClearChildren();
        }

        if (withDefaultAction)
        {
            this.CreateDefaultCraftingActionWidget(prefab, container, setContainerInactive: false);
        }

        this.CreateCraftingActionWidgetsInternal(container, prefab, 0, actions);
    }
示例#6
0
 public void CreateCraftingActionWidgets(GameObject prefab, UiElementContainer container)
 {
     CraftingAction[] actions = (CraftingAction[])Enum.GetValues(typeof(CraftingAction));
     this.CreateCraftingActionWidgetsInternal(container, prefab, 1, actions);
     container.gameObject.SetActive(false);
 }