public void Construct(CardData_CostBased data) { cardImage = data.cardImage; cardName = data.cardName; cardTypes = data.cardTypes; costTypes = data.costTypes; costAmounts = data.costAmounts; }
private void CreateCostly() { CardData_CostBased temp = CreateInstance <CardData_CostBased>(); temp.Construct(cardName, cardImage, cardTypes, manaTypes, amounts); gO = temp; }
private void DisplayCostBasedData(CardData_CostBased card) { if (display.costImages.Count < liveData.currentCost.Count || display.costTexts.Count < liveData.currentCost.Count) { Debug.LogError("Insufficent containers for cost data on card"); } else { for (int i = 0; i < liveData.currentCost.Count; i++) { display.costImages[i].gameObject.SetActive(true); display.costImages[i].sprite = liveData.currentCost.FirstValues[i].manaDepictionSprite; display.costTexts[i].gameObject.SetActive(true); display.costTexts[i].text = liveData.currentCost.SecondValues[i].ToString(); } } }
public void AssignCard(CardData data) { if (data is CardData_Commander commanderData) { CardData_Commander commander = ScriptableObject.CreateInstance <CardData_Commander>(); commander.Construct(commanderData); var liveData = gameObject.AddComponent <LiveData_Commander>(); liveData.card = commander; } else if (data is CardData_CostBased costlyData) { CardData_CostBased costly = ScriptableObject.CreateInstance <CardData_CostBased>(); costly.Construct(costlyData); } if (data is CardData_Unit unitData) { CardData_Unit unit = ScriptableObject.CreateInstance <CardData_Unit>(); unit.Construct(unitData); } }