Beispiel #1
0
    public void OnPointerClick(PointerEventData eventData)
    {
        // on click, if the card is in the deck view overlay, is not upgraded, and a mastery point is available - upgrade it.
        if (isInDeckOverlay)
        {
            if (!reference.isUpgraded && GameState.mastery > 0)
            {
                GameObject deckOverlay = GameObject.Find("ViewDeckDisplay");
                GameState.mastery -= 1;
                reference.Upgrade();
                deckOverlay.SetActive(false);        // refresh deck overlay
                deckOverlay.SetActive(true);
            }
            return;
        }
        if (isInRewardOverlay)
        {
            GameState.mainChar.AddCardToPermaDeck(this.reference.ID, this.reference.isUpgraded);
            RenderNegotiation renderer = GameObject.Find("RenderNegotiation").GetComponent <RenderNegotiation>();
            renderer.EndNegotiationRender();
            return;
        }
        if (isInCardOverlay)
        {
            selectedInCardOverlay = !selectedInCardOverlay;
            // TODO: Probably change from GameObject.Find("SelectCardOverlay(Clone)") to instead grab parent directly
            // Grabbing parent directly should work since isInCardOverlay is checked
            SelectCardOverlay instance = GameObject.Find("SelectCardOverlay(Clone)").GetComponent <SelectCardOverlay>();

            if (selectedInCardOverlay)
            {
                instance.selectedCards.Add(reference);
                cardBG.color = Color.green;
            }
            else
            {
                instance.selectedCards.Remove(reference);
                cardBG.color = new Color32(50, 50, 50, 255);
            }
            instance.EnableButtonIfConditionsMet();
        }
    }