public void RpcReplaceCard(int slot, int advCardIndex)
    {
        AdventureAsset oldCard = CardsInPlay[slot].adventureAsset;
        AdventureAsset card    = _gm.adventureDeck.adventureDeck[advCardIndex];

        _player.ReplaceCardInHand(oldCard, card);
    }
Exemple #2
0
    public void HideHandCard(AdventureAsset card)
    {
        AdventureCardManager acm = FindCardInHand(card);

        if (acm != null)
        {
            acm.GetComponent <HoverPreview>().ThisPreviewEnabled = false;
            acm.GetComponent <BetterCardRotation>().CardBack.gameObject.SetActive(true);
        }
    }
Exemple #3
0
    public void GivePlayerACard(AdventureAsset ca, int UniqueID)
    {
        GameObject card;

        card = CreateACardAtPosition(ca, new Vector3(0, 0, 0), new Vector3(0, 0, 0));
        foreach (Transform t in card.GetComponentInChildren <Transform>())
        {
            t.tag = owner.ToString() + "Card";
        }
    }
Exemple #4
0
 AdventureCardManager FindCardInHand(AdventureAsset card)
 {
     foreach (GameObject go in hand.cardsDealt)
     {
         AdventureCardManager acm = go.GetComponent <AdventureCardManager>();
         if (acm.adventureAsset == card)
         {
             return(acm);
         }
     }
     return(null);
 }
Exemple #5
0
    public AdventureCardManager AddCardToHand(bool isCardFaceUp, AdventureAsset newCard)
    {
        //Created CardLogic for that card with assigned owner and index
        CardLogic newCardLogic = new CardLogic(newCard);

        newCardLogic.owner = this;
        //Added to player's hand
        hand.cardsInHand.Insert(0, newCardLogic);
        //Created the card on visual

        return(CreateACardAtPosition(newCard, newCardLogic, isCardFaceUp ? default(Vector3) : new Vector3(0, -180, 0)));
    }
    public void RpcAddCardToHand(int cardIndex)
    {
        if (_gm == null)
        {
            _gm = FindObjectOfType <GameManager>();
        }

        AdventureAsset       card = _gm.adventureDeck.adventureDeck[cardIndex];
        AdventureCardManager cm   = _player.AddCardToHand(!_player.isAI, card);

        cm.Index = cardIndex;
    }
Exemple #7
0
    public CardLogic(AdventureAsset newCardAsset)
    {
        this.ca = newCardAsset;

        if (newCardAsset.Description == "F O E")
        {
            string stage1 = newCardAsset.CharacterPower.Split(' ') [0];
            string stage2 = stage1.Split('/') [0];
            characterPower = int.Parse(stage2);
        }
        UniqueCardID = IDFactory.GetUniqueID();
        CardsCreatedThisTime.Add(UniqueCardID, this);
    }
Exemple #8
0
    public void ReplaceCardInHand(AdventureAsset oldCard, AdventureAsset newCard)
    {
        AdventureCardManager acm = FindCardInHand(oldCard);

        if (acm != null)
        {
            acm.adventureAsset = newCard;
            acm.ReadCardFromAsset();
            if (!isAI)
            {
                acm.GetComponent <HoverPreview>().ThisPreviewEnabled = true;
                acm.GetComponent <BetterCardRotation>().CardBack.gameObject.SetActive(false);
            }
        }
    }
    public void RpcPutCardIntoPlay(int slot, int cardIndex)
    {
        AdventureAsset card = _gm.adventureDeck.adventureDeck[cardIndex];

        CardsInPlay[slot].adventureAsset = card;
        CardsInPlay[slot].ReadCardFromAsset();
        CardsInPlay[slot].gameObject.SetActive(true);
        if (_player.isAI)
        {
            CardsInPlay[slot].GetComponent <HoverPreview>().ThisPreviewEnabled = false;
            CardsInPlay[slot].GetComponent <BetterCardRotation>().CardBack.gameObject.SetActive(true);
        }
        //else
        //	_player.HideHandCard(card);
    }
Exemple #10
0
    GameObject CreateACardAtPositionX(AdventureAsset c, Vector3 position, Vector3 eulerAngles)
    {
        // Instantiate a card depending on its type
        GameObject NewCard;
        Vector3    temp;

        NewCard = GameObject.Instantiate(allyCardPrefab, position, Quaternion.Euler(eulerAngles)) as GameObject;

        temp = new Vector3(newDeck.transform.position.x + 0.5f, newDeck.transform.position.y, newDeck.transform.position.z);
        NewCard.transform.position = temp;
        AdventureCardManager manager = NewCard.GetComponent <AdventureCardManager>();

        manager.adventureAsset = c;
        manager.ReadCardFromAsset();
        return(NewCard);
    }
Exemple #11
0
    public void DistributeCards()
    {
        GameObject createNewCardInHand;

        if (oldDeck.adventureDeck.Count > 0)
        {
            AdventureAsset newCard = oldDeck.adventureDeck[0];
            //enemyHand.allyWeaponDeck.Add(newCard);
            newDeck.adventureDeck.Insert(0, newCard);
            createNewCardInHand = CreateACardAtPositionX(newCard, new Vector3(0, 0, 0), new Vector3(0f, 0f, 0f));
            //testing.ThisPreviewEnabled = true;
        }

        oldDeck.adventureDeck.RemoveAt(0);
        //new DrawACardCommand(hand.cardsInHand[0], this);
    }
Exemple #12
0
    //VISUAL
    AdventureCardManager CreateACardAtPosition(AdventureAsset newAdventureCard, CardLogic newLogic, Vector3 eulerAngles = default(Vector3), Vector3 position = default(Vector3))
    {
        // Instantiate a card depending on its type
        GameObject NewCard;
        Vector3    temp;

        if (newAdventureCard.Description.ToString().Equals("ALLY"))
        {
            NewCard = GameObject.Instantiate(allyCardPrefab, position, Quaternion.Euler(eulerAngles)) as GameObject;
        }
        else if (newAdventureCard.Description.ToString().Equals("WEAPON"))
        {
            NewCard = GameObject.Instantiate(weaponCardPrefab, position, Quaternion.Euler(eulerAngles)) as GameObject;
        }
        else if (newAdventureCard.Description.ToString().Equals("AMOUR"))
        {
            NewCard = GameObject.Instantiate(amourCardPrefab, position, Quaternion.Euler(eulerAngles)) as GameObject;
        }
        else if (newAdventureCard.Description.ToString().Equals("TEST"))
        {
            NewCard = GameObject.Instantiate(testCardPrefab, position, Quaternion.Euler(eulerAngles)) as GameObject;
        }
        else
        {
            NewCard = GameObject.Instantiate(foeCardPrefab, position, Quaternion.Euler(eulerAngles)) as GameObject;
        }

        EventTrigger trigger = NewCard.gameObject.GetComponent <EventTrigger> ();

        EventTrigger.Entry entry = new EventTrigger.Entry();
        entry.eventID = EventTriggerType.PointerClick;
        entry.callback.AddListener((evenData) => {
            UseCard(NewCard.GetComponent <AdventureCardManager>());
        });
        trigger.triggers.Add(entry);

        temp = new Vector3(hand.transform.position.x + cardIndex, hand.transform.position.y, hand.transform.position.z);

        NewCard.transform.position = temp;
        NewCard.transform.SetParent(hand.transform, true);
        cardIndex++;

        AdventureCardManager manager = NewCard.GetComponent <AdventureCardManager>();

        manager.adventureAsset = newAdventureCard;
        manager.ReadCardFromAsset();

        IDHolder id = NewCard.AddComponent <IDHolder>();

        id.UniqueID = newLogic.UniqueCardID;

        //add to cards dealt
        hand.cardsDealt.Add(NewCard);

        //hide enemy card from player
        if (isAI)
        {
            NewCard.GetComponent <HoverPreview> ().ThisPreviewEnabled = false;
        }

        return(manager);
    }
Exemple #13
0
 GameObject CreateACardAtPosition(AdventureAsset c, Vector3 position, Vector3 eulerAngles)
 {
     return(null);
 }
Exemple #14
0
 public void AddCardToList(List <AdventureCardManager> whichCardList, int cardIndex, AdventureAsset ca)
 {
     whichCardList [cardIndex].adventureAsset = ca;
     whichCardList [cardIndex].ReadCardFromAsset();
     whichCardList [cardIndex].gameObject.SetActive(true);
 }