public virtual void Initiate(CardInfo_Base cardInfo, CardShowMode cardShowMode, ClientPlayer clientPlayer = null) { ClientPlayer = clientPlayer; CardInfo = cardInfo.Clone(); SetCardShowMode(cardShowMode); transform.rotation = Quaternion.Euler(0, 0, 0); transform.Rotate(Vector3.up, 180); Usable = false; if (DragComponent) { DragComponent.enabled = true; } BoxCollider.enabled = true; M_Metal = CardInfo.BaseInfo.Metal; M_Energy = CardInfo.BaseInfo.Energy; M_Coin = CardInfo.BaseInfo.Coin; string cur_Language = LanguageManager.Instance ? LanguageManager.Instance.GetCurrentLanguage() : "zh"; M_Name = CardInfo.BaseInfo.CardNames[cur_Language] + (CardInfo.BaseInfo.IsTemp ? "*" : ""); M_Desc = CardInfo.GetCardDescShow(); CardDescComponent.SetTempCard(false); ChangeCardPicture(CardInfo.BaseInfo.PictureID); CardDescComponent?.SetCardTypeText(CardInfo.GetCardTypeDesc()); SetBlockCountValue(0, true); SetBlockCountMaxValue(CardInfo.BaseInfo.LimitNum, true); SetBannerType(CardNoticeComponent.BannerTypes.None); SetArrowType(CardNoticeComponent.ArrowTypes.None); SetStarNumber(CardInfo.UpgradeInfo.CardLevel, CardInfo.UpgradeInfo.CardLevelMax); RefreshCardAllColors(); }
public override void Initiate(CardInfo_Base cardInfo, CardShowMode cardShowMode, ClientPlayer clientPlayer = null) { base.Initiate(cardInfo, cardShowMode, clientPlayer); M_MechTotalLife = CardInfo.LifeInfo.TotalLife; M_MechAttack = CardInfo.BattleInfo.BasicAttack; M_MechArmor = CardInfo.BattleInfo.BasicArmor; M_MechShield = CardInfo.BattleInfo.BasicShield; InitSlots(); if (M_CardShowMode == CardShowMode.CardSelect) { ResetSelectCountBlockPosition(); } if (M_CardShowMode == CardShowMode.SelectedCardPreview || M_CardShowMode == CardShowMode.CardUpgradePreview) { RefreshSelectCountBlockPosition(); } }
private void SetCardShowMode(CardShowMode value) { foreach (KeyValuePair <CardComponentTypes, CardComponentBase> kv in CardComponents) { kv.Value?.gameObject.SetActive(CardShowModeComponentList[value].Contains(kv.Key)); } //TODO 特例 ShowCardBloom(value != CardShowMode.CardSelect); ShowAllSlotBlooms(value != CardShowMode.CardSelect); ShowAllSlotLights(true); if (value == CardShowMode.CardSelect || value == CardShowMode.SelectedCardPreview) { ResetCoinPosition(); } if (value == CardShowMode.CardUpgradePreview) { RefreshCoinPosition(); } CardLifeComponent?.gameObject.SetActive(CardInfo != null && CardInfo.BaseInfo.CardType == CardTypes.Mech); M_CardShowMode = value; }
public static CardBase InstantiateCardByCardInfo(CardInfo_Base cardInfo, Transform parent, CardShowMode cardShowMode, ClientPlayer clientPlayer = null) { CardBase newCard; switch (cardInfo.BaseInfo.CardType) { case CardTypes.Mech: newCard = GameObjectPoolManager.Instance.PoolDict[GameObjectPoolManager.PrefabNames.MechCard].AllocateGameObject <CardMech>(parent); break; case CardTypes.Equip: newCard = GameObjectPoolManager.Instance.PoolDict[GameObjectPoolManager.PrefabNames.EquipCard].AllocateGameObject <CardEquip>(parent); ((CardEquip)newCard).M_EquipType = cardInfo.EquipInfo.SlotType; break; case CardTypes.Spell: newCard = GameObjectPoolManager.Instance.PoolDict[GameObjectPoolManager.PrefabNames.SpellCard].AllocateGameObject <CardSpell>(parent); break; case CardTypes.Energy: newCard = GameObjectPoolManager.Instance.PoolDict[GameObjectPoolManager.PrefabNames.SpellCard].AllocateGameObject <CardSpell>(parent); break; default: newCard = GameObjectPoolManager.Instance.PoolDict[GameObjectPoolManager.PrefabNames.MechCard].AllocateGameObject <CardMech>(parent); break; } newCard.Initiate(cardInfo, cardShowMode, clientPlayer); return(newCard); }
public override void Initiate(CardInfo_Base cardInfo, CardShowMode cardShowMode, ClientPlayer clientPlayer = null) { base.Initiate(cardInfo, cardShowMode, clientPlayer); }