//SendSeverDataArrayをRecvClientDataclassに変換 public RecvCliantData RecvArrayConvertClass(SendSeverDataArray sever) { RecvCliantData rData = new RecvCliantData(new FieldDataProxy[global.FieldSize.y, global.FieldSize.x], null, -1, null, null); int severCount = 0; for (int i = 0; i < sever.AllFeildData.Length / global.FieldSize.x; i++) { for (int j = 0; j < sever.AllFeildData.Length / global.FieldSize.y; j++) { //カードデータをClassに変換する rData.AllFeildData[i, j]._CardData.Cost = sever.AllFeildData[severCount].SendCardData.Cost; rData.AllFeildData[i, j]._CardData.Name = sever.AllFeildData[severCount].SendCardData.Name; rData.AllFeildData[i, j]._CardData.Number = sever.AllFeildData[severCount].SendCardData.Number; rData.AllFeildData[i, j]._CardData.Rarity = sever.AllFeildData[severCount].SendCardData.Rarity; rData.AllFeildData[i, j]._CardData.Score = sever.AllFeildData[severCount].SendCardData.Score; rData.AllFeildData[i, j]._CardData.Text = sever.AllFeildData[severCount].SendCardData.Text; rData.AllFeildData[i, j]._CardData.Type = sever.AllFeildData[severCount].SendCardData.Type; //残りも変換 rData.AllFeildData[i, j].IsRankUp = sever.AllFeildData[severCount].IsRankUp; rData.AllFeildData[i, j].MaptipNumber = sever.AllFeildData[severCount].MaptipNumber; rData.AllFeildData[i, j].PossessionPlayer = sever.AllFeildData[severCount].PossessionPlayer; rData.AllFeildData[i, j].RankID = sever.AllFeildData[severCount].RankID; severCount++; } } //プレイヤーデータを構造体に変換 for (int i = (int)PlayerType.Player1; i < (int)PlayerType.EndPlayer; i++) { rData.AllPlayerData[i].PlayerNumber = sever.AllPlayerData[i].PlayerNumber; rData.AllPlayerData[i].Ranking = sever.AllPlayerData[i].Ranking; rData.AllPlayerData[i].ScorePerTurn = sever.AllPlayerData[i].ScorePerTurn; rData.AllPlayerData[i].TotalScore = sever.AllPlayerData[i].TotalScore; } //描画メソッドを構造体に変換 for (int i = 0; i < sever.DrawDataList.Length; i++) { for (int j = 0; j < sever.DrawDataList[i].vs.Length; j++) { rData.DrawDataList[i][j] = sever.DrawDataList[i].vs[j]; } } //引くカードのデータを構造体に変換 for (int i = 0; i < sever.DrawCardList.Length; i++) { rData.DrawCardList[i].Name = sever.DrawCardList[i].Name; rData.DrawCardList[i].Number = sever.DrawCardList[i].Number; rData.DrawCardList[i].Rarity = sever.DrawCardList[i].Rarity; rData.DrawCardList[i].Score = sever.DrawCardList[i].Score; rData.DrawCardList[i].Text = sever.DrawCardList[i].Text; rData.DrawCardList[i].Type = sever.DrawCardList[i].Type; } return(rData); }
//SendSeverDataArrayをRecvClientDataclassに変換 public RecvCliantData RecvArrayConvertClass(SendSeverDataArray sever) { RecvCliantData rData = new RecvCliantData(new FieldDataProxy[global.FieldSize.y, global.FieldSize.x], null, -1, null, null); int severCount = 0; for (int i = 0; i < global.FieldSize.y; i++) { for (int j = 0; j < global.FieldSize.x; j++) { CardDataProxy InitCard = new CardDataProxy(-1, "", "", -1, -1, -1, -1); FieldDataProxy Init = new FieldDataProxy(InitCard, -1, -1, false, -1); rData.AllFeildData[i, j] = Init; } } //プレイヤー初期化 PlayerDataProxy InitPlayer = new PlayerDataProxy(-1, -1, -1, -1); rData.AllPlayerData = new PlayerDataProxy[4]; for (int i = 0; i < 4; i++) { rData.AllPlayerData[i] = InitPlayer; } List <List <int> > InitDrawList = new List <List <int> >(); rData.DrawDataList = InitDrawList; List <CardDataProxy> InitCardData = new List <CardDataProxy>(); rData.DrawCardList = InitCardData; for (int i = 0; i < sever.AllFeildData.Length / global.FieldSize.x; i++) { for (int j = 0; j < sever.AllFeildData.Length / global.FieldSize.y; j++) { //カードデータをClassに変換する rData.AllFeildData[i, j]._CardData.Cost = sever.AllFeildData[severCount].SendCardData.Cost; rData.AllFeildData[i, j]._CardData.Name = sever.AllFeildData[severCount].SendCardData.Name; rData.AllFeildData[i, j]._CardData.Number = sever.AllFeildData[severCount].SendCardData.Number; rData.AllFeildData[i, j]._CardData.Rarity = sever.AllFeildData[severCount].SendCardData.Rarity; rData.AllFeildData[i, j]._CardData.Score = sever.AllFeildData[severCount].SendCardData.Score; rData.AllFeildData[i, j]._CardData.Text = sever.AllFeildData[severCount].SendCardData.Text; rData.AllFeildData[i, j]._CardData.Type = sever.AllFeildData[severCount].SendCardData.Type; //残りも変換 rData.AllFeildData[i, j].IsRankUp = sever.AllFeildData[severCount].IsRankUp; rData.AllFeildData[i, j].MaptipNumber = sever.AllFeildData[severCount].MaptipNumber; rData.AllFeildData[i, j].PossessionPlayer = sever.AllFeildData[severCount].PossessionPlayer; rData.AllFeildData[i, j].RankID = sever.AllFeildData[severCount].RankID; severCount++; } } //プレイヤーデータを構造体に変換 for (int i = (int)PlayerType.Player1; i < (int)PlayerType.EndPlayer; i++) { rData.AllPlayerData[i].PlayerNumber = sever.AllPlayerData[i].PlayerNumber; rData.AllPlayerData[i].Ranking = sever.AllPlayerData[i].Ranking; rData.AllPlayerData[i].ScorePerTurn = sever.AllPlayerData[i].ScorePerTurn; rData.AllPlayerData[i].TotalScore = sever.AllPlayerData[i].TotalScore; } //描画メソッドを構造体に変換 List <List <int> > AddData = new List <List <int> >(); for (int i = 0; i < sever.DrawDataList.Length; i++) { List <int> ListData = new List <int>(); for (int j = 0; j < sever.DrawDataList[i].vs.Length; j++) { ListData.Add(sever.DrawDataList[i].vs[j]); //rData.DrawDataList[i][j] = sever.DrawDataList[i].vs[j]; } AddData.Add(ListData); } rData.DrawDataList = new List <List <int> >(AddData); //引くカードのデータを構造体に変換 for (int i = 0; i < sever.DrawCardList.Length; i++) { CardDataProxy AddCardData = new CardDataProxy(sever.DrawCardList[i].Number, sever.DrawCardList[i].Name, sever.DrawCardList[i].Text, sever.DrawCardList[i].Cost, sever.DrawCardList[i].Score, sever.DrawCardList[i].Type, sever.DrawCardList[i].Rarity); rData.DrawCardList.Add(AddCardData); //rData.DrawCardList[i].Name = sever.DrawCardList[i].Name; //rData.DrawCardList[i].Number = sever.DrawCardList[i].Number; //rData.DrawCardList[i].Rarity = sever.DrawCardList[i].Rarity; //rData.DrawCardList[i].Score = sever.DrawCardList[i].Score; //rData.DrawCardList[i].Text = sever.DrawCardList[i].Text; //rData.DrawCardList[i].Type = sever.DrawCardList[i].Type; } return(rData); }