// 無しのカードを入れる public void MissingCard() { CardData data = CardDataBase.GetCardData((int)IDType.NONE);// 欠番 // (11/14) -1を入れるとなしカードが欲しい この関数いらん SetCardData(data); // □えうれしあを消す gameObject.SetActive(false); }
private void Start() { cardData = CardDataBase.GetCardData(iDtype, number); var text = GetComponentInChildren <TMPro.TextMeshPro>(); text.text = IDName[iDtype] + "." + number; if (OnCardClick == null) { OnCardClick = new UEventCard(); } }
public void Marigan(SyncDeckInfo syncData) { Clear(); foreach (int yamahudaID in syncData.yamahuda) { if (yamahudaID == -1) { break; } yamahuda.Add(CardDataBase.GetCardData(yamahudaID)); } cardObjectManager.Marigan(yamahuda.ToArray()); }
public void Sync(SyncDeckInfo syncData) { Clear(); //foreach (int handID in syncData.hand) //{ // if (handID == -1) break; // hand.Add(CardDataBase.GetCardData(handID)); //} foreach (int yamahudaID in syncData.yamahuda) { if (yamahudaID == -1) { break; } // ★★★嫌な予感がする…(参照) //var cardData = new CardData(); //cardData = CardDataBase.GetCardData(yamahudaID); //var abilityData = cardData.GetAbilityData(); //if(abilityData != null) //{ // abilityData.SetMyPlayerFlag(player.isMyPlayer); //} var cardData = CardDataBase.GetCardData(yamahudaID); yamahuda.Add(cardData); } //foreach (int bochiID in syncData.bochi) //{ // if (bochiID == -1) break; // bochi.Add(CardDataBase.GetCardData(bochiID)); //} //foreach (int tuihouID in syncData.tuihou) //{ // if (tuihouID == -1) break; // tsuihou.Enqueue(CardDataBase.GetCardData(tuihouID)); //} // 向こうから来るやつにつかう cardObjectManager.SetDeckData(yamahuda.ToArray(), player.isMyPlayer); // その情報をもとにカードオブジェクト更新 //cardObjectManager.UpdateHand(hand, player); //cardObjectManager.UpdateYamahuda(yamahuda, player); }
public void SetDeckData(PlayerDeckData deckData, bool updateCardObject = true) { Clear(); int[] cardID = deckData.GetArray(); // デッキデータを山札に入れていく foreach (int id in cardID) { if (id != (int)IDType.NONE) { //// ★★★嫌な予感がする…(参照) //var cardData = new CardData(); //cardData = CardDataBase.GetCardData(id); //var abilityData = cardData.GetAbilityData(); //if (abilityData != null) //{ // abilityData.SetMyPlayerFlag(player.isMyPlayer); //} var cardData = CardDataBase.GetCardData(id); yamahuda.Add(cardData); //// 所持効果持ちファイターを保存 //if (cardData.cardType == CardType.AbilityFighter ) //{ // haveAbilityCards.Add(cardData); //} } } //foreach (CardData card in deckData.eventCards) //{ // if (card == null) continue; // yamahuda.Enqueue(card); //} //yamahuda.Enqueue(deckData.jorkerCard); // 山札シャッフル Shuffle(ref yamahuda); if (updateCardObject) { cardObjectManager.SetDeckData(yamahuda.ToArray(), player.isMyPlayer); } }
public void SarchAbilityCards(PlayerDeckData deckData) { haveAbilityCards.Clear(); int[] cardID = deckData.GetArray(); // デッキデータを山札に入れていく foreach (int id in cardID) { if (id != (int)IDType.NONE) { var cardData = CardDataBase.GetCardData(id); // 所持効果持ちファイターを保存 if (cardData.cardType == CardType.AbilityFighter) { haveAbilityCards.Add(cardData); } } } }
// Use this for initialization void Start() { SelectData.iDeckCollectLineNo = 0; //TouchCardObj.GetComponent<uGUICard>().SetCardData(CardDataBase.GetCardData(4)); //Arrow.SetActive(false); m_vTapPos = new Vector3(0, 0, 0); m_vCurrentPos = new Vector3(0, 0, 0); m_bCardTap = false; // (TODO)(A列車)システム初期化 を全て共通に oulSystem.Initialize(); // BGM oulAudio.PlayBGM("CollectionBGM", true); // カードのデータベースを初期化 //CardDataBase.Start(); CardData data = CardDataBase.GetCardData(3); // ID0番目のカードデータを取ってくる。 CardData[] all = CardDataBase.GetDeckSortedCardData(); // カード情報を全て取得する。1/12 デッキ選択用のソートした配列を取得 int size = all.Length; // カードの最大数 // ★Findは非アクティブ状態ではとれないから取ってから消すやで //m_uGraspCard=gameObject //m_uGraspCard = GameObject.Find("Canvas/uGUICard"); //.GetComponent<uGUICard>(); m_uGraspCard.GetComponent <uGUICard>().SetCardData(data); //m_uGraspCard.GetComponent<Ripple>().SetAlpha(1.0f); // 透明に m_uGraspCard.SetActive(false); // 取得したから消すやで for (int i = 0; i < PlayerDeckData.deckMax; i++) { // 変更前 // m_pCardPlateArray[i] = (GameObject)Instantiate(CardPlatePrefab); // m_pCardPlateArray[i].transform.SetParent(, false); /* * 差異としては、as句の方が高速であることと、失敗時にキャスト演算は例外を発生させas句はnullを返します。 * 例外は処理するのにもコストがかかるので、特別な事が無い限りはこの場合as句を利用するのが良いです。 */ // 変更後 //m_aCardPlate[i] = Instantiate(CardPlatePrefab, DeckCardGroup.transform) as GameObject; m_aMyDeckCard[i] = Instantiate(CardPrefab, DeckCardGroup.transform) as GameObject; m_aMyDeckCard[i].GetComponent <uGUICard>().SetMyDeck(true);// ★★★このカードは自分のデッキかどうか int StartX = 100; int StartY = 130; //m_aCardPlate[i].transform.localPosition = new Vector2(StartX + (150 * (i % 5)), StartY + (i / 5) * -185); m_aMyDeckCard[i].transform.localPosition = new Vector2(StartX + (150 * (i % 5)), StartY + (i / 5) * -185); // マイデッキ m_aMyDeckCard[i].GetComponent <ScreenOutAppeared>().SetNextPos(new Vector3(StartX + (150 * (i % 5)), StartY + (i / 5) * -185, 0.0f)); } // (TODO)自分のデッキやで 仮0スロット目のデッキのカードのID取得 int[] myDeckID = PlayerDataManager.GetPlayerData().GetDeckData(0).GetArray(); // ★デッキデータ for (int i = 0; i < PlayerDeckData.deckMax; i++) { // (11/13)(TODO)取得したデータが何も書かれていなかったら // SetActiveで消す int id = myDeckID[i]; //CardType type = CardType.Fighter; m_aMyDeckCard[i].GetComponent <uGUICard>().SetCardData(CardDataBase.GetCardData(id)); //;= strikerCards[i]; } // コレクション for (int i = 0; i < SelectData.DECK_COLLECTCARD_MAX; i++) { m_aCollectCard[i] = Instantiate(CardPrefab, CollectCardGroup.transform) as GameObject; int StartX = -620; int StartY = 128; m_aCollectCard[i].transform.localPosition = new Vector2(StartX + (150 * (i % 4)), StartY + (i / 4) * -185); m_aCollectCard[i].GetComponent <uGUICard>().SetCardData(all[i]); // (11/13)うんこソート // 先にデッキに入っていないカード状態に m_aCollectCard[i].GetComponent <uGUICard>().NotGrasp_Off(); for (int i2 = 0; i2 < PlayerDeckData.deckMax; i2++) { // ★コレクションにあるカードがすでに被ってたら暗くするソート if (m_aCollectCard[i].GetComponent <uGUICard>().cardData.id == m_aMyDeckCard[i2].GetComponent <uGUICard>().cardData.id) { // デッキに入っている状態 m_aCollectCard[i].GetComponent <uGUICard>().NotGrasp_On(); break; } } // ソート } // forコレクション EventMANTAN(); AbilityMANTAN(); //// カードタイプ //if (CardDataBase.GetCardData(11).cardType == CardType.Fighter) //{ // int a = 0; // a++; //} //if (CardDataBase.GetCardData(11).cardType == CardType.Intercept) //{ // int b = 0; // b++; //} //m_aMyDeckCard[PlayerDeckData.numStriker].GetComponent<uGUICard>().SetCardData;//PlayerDeckData.jorkerCard; //for (int i = 0; i < PlayerDeckData.numEvent; i++) //{ // cards[numStriker + numJoker + i] = eventCards[i]; //} // ステートマシンの初期化や切り替えは最後に行う m_pStateMachine = new BaseEntityStateMachine <SceneDeck>(this); m_pStateMachine.globalState = SceneDeckState.Global.GetInstance(); m_pStateMachine.ChangeState(SceneDeckState.Intro.GetInstance()); return; }