Ejemplo n.º 1
0
    // =====================================================================================================
    public void PutOffChip(GameObject chip)
    {
        Chip chipScript = chip.GetComponent <Chip>();

        if (chipScript.GridName != "Grid_Inventory")
        {
            chipScript.Uninstall();
            if (chipScript.Type == Chip.ChipType.TURRET || chipScript.Type == Chip.ChipType.SKILL)
            {
                if (chipScript.IsActive)
                {
                    chipScript.Deactivate();
                    Chip nextChip = GetNextChip(chipScript);
                    if (nextChip != chipScript)
                    {
                        ActivateChipExclusively(nextChip);
                    }
                }
            }
            else if (chipScript.Type == Chip.ChipType.STATE)
            {
                if (chipScript.IsActive)
                {
                    chipScript.Deactivate();
                }
            }
        }
    }
Ejemplo n.º 2
0
 private void updateSkillsKeysSelection()
 {
     // skills (0 - 9)
     for (int i = 48, j = 0; i <= 57; ++i, ++j)
     {
         if (Input.GetKeyDown((KeyCode)i))
         {
             if (_skillsTiles[j].transform.childCount > 0)
             {
                 Chip chipScript = _skillsTiles[j].transform.GetChild(0).GetComponent <Chip>();
                 if (chipScript.Type == Chip.ChipType.STATE || chipScript.Type == Chip.ChipType.CONSUMABLE)
                 {
                     if (chipScript.IsActive)
                     {
                         chipScript.Deactivate();
                     }
                     else
                     {
                         chipScript.Activate();
                     }
                 }
                 else if (chipScript.Type == Chip.ChipType.SKILL)
                 {
                     Inventory.Instance.ActivateChipExclusively(chipScript);
                 }
             }
         }
     }
 }
Ejemplo n.º 3
0
    // =====================================================================================================
    // activate chip and deactivate all Others at the same type
    public void ActivateChipExclusively(Chip chip)
    {
        // return if already active
        if (chip.IsActive)
        {
            return;
        }

        // deactivate all the rest with the same type
        Transform grid = chip.transform.parent.parent;

        foreach (Transform tileItem in grid)
        {
            if (tileItem.childCount > 0)
            {
                Chip chipInTileScript = tileItem.GetChild(0).GetComponent <Chip>();
                if (chipInTileScript.IsActive && chipInTileScript.Type == chip.Type)
                {
                    chipInTileScript.Deactivate();
                }
            }
        }

        // activate chosen
        chip.Activate();
    }
Ejemplo n.º 4
0
    private void updateTurretsScrollerSelection()
    {
        if (Input.GetAxis("Mouse ScrollWheel") != 0f)
        {
            bool isMoveForward = (Input.GetAxis("Mouse ScrollWheel") > 0f);

            Chip activeTurretChip = Inventory.Instance.GetActiveChip(Chip.ChipType.TURRET);
            if (activeTurretChip != null)
            {
                activeTurretChip.Deactivate();
                Chip nextChip = Inventory.Instance.GetNextChip(activeTurretChip, isMoveForward);
                Inventory.Instance.ActivateChipExclusively(nextChip);
            }
        }
    }