Esempio n. 1
0
    public void Show(DataUnitParam _dataChara, MasterCharaParam _masterChara, List <MasterCardParam> _master_card_list, List <MasterCharaCardParam> _chara_card_list, List <MasterCardSymbolParam> _symbol_list)
    {
        m_imgIcon.sprite    = SpriteManager.Instance.Get(string.Format(Defines.STR_FORMAT_FACEICON, _masterChara.chara_id));
        m_txtCharaName.text = _masterChara.name;
        m_txtHP.text        = _dataChara.hp_max.ToString();
        m_txtSTR.text       = _dataChara.str.ToString();
        m_txtMAG.text       = _dataChara.magic.ToString();
        m_txtHEAL.text      = _dataChara.heal.ToString();
        m_txtFood.text      = _dataChara.food.ToString();

        m_barTension.SetValueCurrent(_dataChara.tension);

        Card[] arr = m_goCardRoot.GetComponentsInChildren <Card>();
        foreach (Card c in arr)
        {
            GameObject.Destroy(c.gameObject);
        }

        foreach (MasterCharaCardParam p in _chara_card_list.FindAll(p => p.chara_id == _masterChara.chara_id))
        {
            //Debug.Log(p.card_id);
            Card c = PrefabManager.Instance.MakeScript <Card>(m_prefCard, m_goCardRoot);

            DataCardParam data_card = new DataCardParam();

            data_card.Copy(_master_card_list.Find(a => a.card_id == p.card_id), _masterChara.chara_id, 0);
            c.Initialize(data_card, _symbol_list);
        }
    }
Esempio n. 2
0
    public void card_initialize()
    {
        // 初期設定
        dataCard.list.Clear();

        int serial = 1;

        List <DataUnitParam> unit_param_list = dataUnit.list.FindAll(p => p.unit == "chara" && (p.position == "left" || p.position == "right" || p.position == "back"));

        foreach (DataUnitParam unit in unit_param_list)
        {
            List <MasterCharaCardParam> card_list = masterCharaCard.list.FindAll(p => p.chara_id == unit.chara_id);
            foreach (MasterCharaCardParam c in card_list)
            {
                DataCardParam dc = new DataCardParam();

                //dc.chara_id = c.chara_id;
                //dc.card_id = c.card_id;
                //dc.card_serial = serial;
                dc.Copy(masterCard.list.Find(p => p.card_id == c.card_id), c.chara_id, serial);

                dc.status = (int)DataCard.STATUS.DECK;
                if (unit.position == "back")
                {
                    dc.status = (int)DataCard.STATUS.NOTUSE;
                }
                serial += 1;
                dataCard.list.Add(dc);
            }
        }

        Debug.LogWarning(dataCard.list.Count);

        dataCard.CardFill(5);
    }
Esempio n. 3
0
    public void Initialize(int _iStageId, int _iWave, int[] _iCharaIdArr)
    {
        //Debug.Log(_iStageId);
        foreach (Card c in card_list)
        {
            Destroy(c.gameObject);
        }
        card_list.Clear();

        for (int i = 0; i < _iCharaIdArr.Length; i++)
        {
            Card c = PrefabManager.Instance.MakeScript <Card>(m_prefCard, m_goCardRoot);
            card_list.Add(c);
        }

        List <MasterStageCardParam> appear_card = DataManagerGame.Instance.masterStageCard.list.FindAll(p => p.stage_id == _iStageId && p.wave == _iWave);

        if (appear_card.Count == 0)
        {
            appear_card = DataManagerGame.Instance.masterStageCard.list.FindAll(p => p.stage_id == _iStageId && p.wave == 0);
        }

        int[] item_prob = new int[appear_card.Count];
        //Debug.Log(appear_card.Count);
        for (int i = 0; i < appear_card.Count; i++)
        {
            item_prob[i] = appear_card[i].prob;
        }

        for (int i = 0; i < _iCharaIdArr.Length; i++)
        {
            int index = UtilRand.GetIndex(item_prob);

            DataCardParam add_card = new DataCardParam();
            // tempシリアルを配布

            MasterCardParam master = DataManagerGame.Instance.masterCard.list.Find(p => p.card_id == appear_card[index].card_id);

            add_card.Copy(master, _iCharaIdArr[i], i);

            /*
             * add_card.card_id = appear_card[index].card_id;
             * add_card.chara_id = _iCharaIdArr[i];
             * //Debug.Log(add_card.chara_id);
             *
             * add_card.card_serial = i;
             */


            //add_card.card_type = appear_card[index].card_type;
            //add_card.power = appear_card[index].power;

            card_list[i].Initialize(add_card, DataManagerGame.Instance.masterCardSymbol.list);
        }
    }
Esempio n. 4
0
        public override void OnEnter()
        {
            base.OnEnter();

            List <MasterStageCardParam> appear_card = simulator.masterStageCard.list.FindAll(p => p.stage_id == stage_id.Value && p.wave == wave.Value);

            if (appear_card.Count == 0)
            {
                appear_card = simulator.masterStageCard.list.FindAll(p => p.stage_id == stage_id.Value && p.wave == 0);
            }

            int[] item_prob = new int[appear_card.Count];
            //Debug.Log(appear_card.Count);
            for (int i = 0; i < appear_card.Count; i++)
            {
                item_prob[i] = appear_card[i].prob;
            }

            int index = UtilRand.GetIndex(item_prob);

            DataUnitParam left_chara = simulator.dataUnit.list.Find(p => p.unit == "chara" && p.position == "left");

            DataCardParam add_card = new DataCardParam();
            // tempシリアルを配布
            //add_card.card_id = appear_card[index].card_id;
            //add_card.chara_id = left_chara.chara_id;
            //Debug.Log(add_card.chara_id);


            MasterCardParam master = simulator.masterCard.list.Find(p => p.card_id == appear_card[index].card_id);

            if (master == null)
            {
            }


            // シリアルはAddNewCardで設定し直し
            add_card.Copy(master, left_chara.chara_id, 0);

            simulator.dataCard.AddNewCard(add_card, DataCard.STATUS.DECK);
            Finish();
        }
Esempio n. 5
0
        private void create_enemy(int _enemy_chara_id)
        {
            simulator.dataUnit.list.RemoveAll(p => p.unit == "enemy");
            MasterCharaParam master_enemy = simulator.masterChara.list.Find(p => p.chara_id == _enemy_chara_id);
            DataUnitParam    enemy        = DataUnit.MakeUnit(master_enemy, 1, "enemy", 60);

            simulator.dataUnit.list.Add(enemy);

            //Debug.LogError(_enemy_chara_id);

            simulator.dataCardEnemy.list.Clear();
            int iSerial = 1;

            foreach (MasterCharaCardParam cc in simulator.masterCharaCard.list.FindAll(p => p.chara_id == _enemy_chara_id))
            {
                DataCardParam   add         = new DataCardParam();
                MasterCardParam master_card = simulator.masterCard.list.Find(p => p.card_id == cc.card_id);
                add.Copy(master_card, _enemy_chara_id, iSerial);
                simulator.dataCardEnemy.list.Add(add);
                iSerial += 1;
            }
        }
Esempio n. 6
0
        public override void OnEnter()
        {
            base.OnEnter();

            battleMain.Opening();

            battleMain.m_animChara.Play("idle");
            battleMain.m_animEnemy.Play("idle");


            if (battleMain.player_card != null)
            {
                GameObject.Destroy(battleMain.player_card.gameObject);
                battleMain.player_card = null;
            }
            if (battleMain.enemy_card != null)
            {
                GameObject.Destroy(battleMain.enemy_card.gameObject);
                battleMain.enemy_card = null;
            }
            battleMain.dataCardEnemy.list.Clear();

            BattleIcon[] arr = battleMain.m_goBattleChara.GetComponentsInChildren <BattleIcon>();
            foreach (BattleIcon c in arr)
            {
                GameObject.Destroy(c.gameObject);
            }
            arr = battleMain.m_goBattleEnemy.GetComponentsInChildren <BattleIcon>();
            foreach (BattleIcon c in arr)
            {
                GameObject.Destroy(c.gameObject);
            }

            // 敵のデッキデータ
            //Debug.LogWarning(DataManagerGame.Instance.masterCharaCard.list.FindAll(p => p.chara_id == enemy_chara_id.Value).Count);


            MasterCharaParam master_enemy = DataManagerGame.Instance.masterChara.list.Find(p => p.chara_id == enemy_chara_id.Value);

            battleMain.dataCardEnemy.SetSaveFilename(Defines.FILENAME_CARD_ENEMY);


            if (0 == DataManagerGame.Instance.gameData.ReadInt(Defines.KEY_GAME_BATTLE_ENEMY_ID))
            {
                // 敵は1体消して新規に追加
                DataManagerGame.Instance.dataUnit.list.RemoveAll(p => p.unit == "enemy");

                // 敵にこっそりテンションを入れるならここ
                DataUnitParam enemy = DataUnit.MakeUnit(master_enemy, 1, "enemy", 60);
                DataManagerGame.Instance.dataUnit.list.Add(enemy);

                DataManagerGame.Instance.gameData.WriteInt(Defines.KEY_GAME_BATTLE_ENEMY_ID, enemy_chara_id.Value);

                int iSerial = 1;
                foreach (MasterCharaCardParam cc in DataManagerGame.Instance.masterCharaCard.list.FindAll(p => p.chara_id == enemy_chara_id.Value))
                {
                    DataCardParam   add         = new DataCardParam();
                    MasterCardParam master_card = DataManagerGame.Instance.masterCard.list.Find(p => p.card_id == cc.card_id);
                    add.Copy(master_card, enemy_chara_id.Value, iSerial);
                    battleMain.dataCardEnemy.list.Add(add);
                    iSerial += 1;
                }
            }
            else
            {
                Debug.Log("battle resume");
                enemy_chara_id.Value = DataManagerGame.Instance.gameData.ReadInt(Defines.KEY_GAME_BATTLE_ENEMY_ID);
                master_enemy         = DataManagerGame.Instance.masterChara.list.Find(p => p.chara_id == enemy_chara_id.Value);

                battleMain.dataCardEnemy.LoadMulti();
            }


            battleMain.m_sprEnemy.sprite = SpriteManager.Instance.Get(master_enemy.sprite_name);
            battleMain.HpRefresh();


            battleMain.OnOpeningEnd.AddListener(() =>
            {
                battleMain.OnOpeningEnd.RemoveAllListeners();
                if (is_boss.Value)
                {
                    BGMControl.Instance.Play(Defines.BGM_NAME_BOSS);
                }
                else
                {
                    BGMControl.Instance.Play(Defines.BGM_NAME_BATTLE);
                }
                Finish();
            });
        }
Esempio n. 7
0
 public void Initialize(MasterCardParam _master_card, List <MasterCardSymbolParam> _master_card_symbol_list)
 {
     data_card = new DataCardParam();
     data_card.Copy(_master_card, 0, 0);
     _initialize(_master_card_symbol_list);
 }