Exemple #1
0
    private void RemoveCharacterFromSlot()
    {
        //Disable interaction of the slot button
        GetComponent <Button>().interactable = false;

        /*	OPTIONAL */
        //UnSelectedCharacter
        string             nameOfBeingSelectedChar = prefabOfSelectedCharacter.GetComponent <Prisoner>().GetPrisonerName();
        SelectCharAvarList charAvarList            = GameObject.FindGameObjectWithTag("Select Char Avar List").GetComponent <SelectCharAvarList>();

        charAvarList.DeselectCharacterByName(nameOfBeingSelectedChar);


        prefabOfSelectedCharacter     = null;
        GetComponent <Image>().sprite = null;
        GetComponent <Image>().color  = new Color(1, 1, 1, 0);
        //if any slot contains the character selected on Screen, dont show arrow
        string nameOfAvarOnSelecting = charAvarList.GetIsOnInfoScrnCharacter().GetPrisonerPrefabName();

        CharacterSlot[] slots = transform.parent.GetComponentsInChildren <CharacterSlot>();
        for (int i = 0; i < slots.Length; i++)
        {
            if (slots[i].GetCharPrefNameInThisSlot() == nameOfAvarOnSelecting)
            {
                return;
            }
        }

        //Show arrows in every slots
        for (int i = 0; i < slots.Length; i++)
        {
            slots[i].ShowArrow();
        }
    }
Exemple #2
0
    public bool IsCharAvarSelectedInThisSlot()
    {
        //TODO promote this variable to member variable later
        SelectCharAvarList charAvarList = GameObject.FindGameObjectWithTag("Select Char Avar List").GetComponent <SelectCharAvarList>();

        string nameInPrefab = "";

        if (GetCharacterPrefabInThisSlot())
        {
            nameInPrefab = GetCharacterPrefabInThisSlot().GetComponent <Prisoner>().GetPrisonerName();
        }

        for (int i = 0; i < charAvarList.transform.childCount; i++)
        {
            string PrisonerPrefabName = charAvarList.transform.GetChild(0).GetComponent <Selection_CharAvar>().GetPrisonerPrefabName();
            if (nameInPrefab == PrisonerPrefabName)
            {
                print("hy not OK");
                return(true);
            }
        }
        return(false);
    }
Exemple #3
0
    private void SelectingCharacterToSlot()
    {
        if (prefabOfSelectedCharacter != null)
        {
            RemoveCharacterFromSlot();
        }

        //Get selecting character
        SelectCharAvarList charAvarList = GameObject.FindGameObjectWithTag("Select Char Avar List").GetComponent <SelectCharAvarList>();

        Selection_CharAvar selectingCharacter = charAvarList.GetIsOnInfoScrnCharacter();

        //De-effect of selection in avar list
        //charAvarList.DeselectAllCharacters();

        if (selectingCharacter == null)
        {
            return;
        }
        //get the selecting character sprite
        Transform actualImgSprtObj    = selectingCharacter.transform.GetChild(0);
        Sprite    selectingCharSprite = actualImgSprtObj.GetComponent <Image>().sprite;

        //Show effect of selection character
        selectingCharacter.SetCharSelected();
        selectingCharacter.MakeEffectOnSelected();

        //Get for-playing character prefab
        prefabOfSelectedCharacter = selectingCharacter.GetCharPrefabOfThisAvar();
        //set that to the image sprite in the slot
        GetComponent <Image>().sprite = selectingCharSprite;
        GetComponent <Image>().color  = new Color(1, 1, 1, 1);

        GetComponent <Button>().interactable = true;

        HideAllArrows();
    }