Ejemplo n.º 1
0
        public void SolveNextPresetData()
        {
            if (this.card == null)
            {
                Debug.Log("Cannot solve the card, because the card is null. Is StartSolvingPresetDataCard called first?");
                return;
            }
            this.presetIndex++;
            //if(this.presetIndex >= card.CardData.cardBase.baseBuildingBlockChain.p)

            if (this.presetIndex >= presetData.Count)
            {
                // TODO: preset is done!
                SolveCard();
                return;
            }

            DataObject currentDataObject = presetData[this.presetIndex];

            if (currentDataObject.objectRef != null)
            {
                //data is already set, continue
                SolveNextPresetData();
                return;
            }

            playerDataProviderActive = GetPlayerDataProvider(currentDataObject.objectType);

            // No additional info is required (event itself will tell what is requires, (todo: perhaps later send more info if more specific conditions are required)
            List <DataHolder> dh = new List <DataHolder>();

            dh.Add(new DataHolder("card", this.card));
            playerDataProviderActive.request.Raise(dh, this);
        }
Ejemplo n.º 2
0
 private void ResetCard()
 {
     this.card                = null;
     this.presetIndex         = -1; //will be set to 0 in SolveNext();
     presetData               = new List <DataObject>();
     playerDataProviderActive = null;
 }