public BattleBaseData(Mem_deck deck)
        {
            List <Mem_ship> memShip = deck.Ship.getMemShip();

            this.ShipData       = new List <Mem_ship>();
            this.SlotData       = new List <List <Mst_slotitem> >();
            this.StartHp        = new List <int>();
            this.SlotLevel      = new List <List <int> >();
            this.SlotExperience = new Dictionary <int, int[]>();
            memShip.ForEach(delegate(Mem_ship x)
            {
                this.SlotData.Add(x.GetMstSlotItems());
                List <int> list = null;
                this.setSlotLevel(x.Slot, false, out list, ref this.SlotExperience);
                this.SlotLevel.Add(list);
                Mst_ship mst_data     = Mst_DataManager.Instance.Mst_ship.get_Item(x.Ship_id);
                Mem_shipBase baseData = new Mem_shipBase(x);
                Mem_ship mem_ship     = new Mem_ship();
                mem_ship.Set_ShipParamPracticeShip(baseData, mst_data);
                this.ShipData.Add(mem_ship);
                this.StartHp.Add(mem_ship.Nowhp);
            });
            this.Enemy_Name        = deck.Name;
            this.haveBattleCommand = false;
        }