void SetEnemy(RawBattleBase rpData) { Participants.EnemyMain = rpData.EnemyShipTypeIDs.Skip(1).TakeWhile(r => r != -1).Select((r, i) => { var rLevel = rpData.EnemyShipLevels[i + 1]; var rEquipment = rpData.EnemyEquipment[i]; return(new EnemyShip(r, rLevel, rEquipment)); }).ToArray <IParticipant>(); var rEnemyCombinedFleetData = rpData as IRawEnemyCombinedFleet; if (rEnemyCombinedFleetData == null) { return; } Participants.EnemyEscort = rEnemyCombinedFleetData.EnemyEscortShipTypeIDs.Skip(1).TakeWhile(r => r != -1).Select((r, i) => { var rLevel = rEnemyCombinedFleetData.EnemyEscortShipLevels[i + 1]; var rEquipment = rEnemyCombinedFleetData.EnemyEscortShipEquipment[i]; return(new EnemyShip(r, rLevel, rEquipment)); }).ToArray <IParticipant>(); }
void SetEnemy(RawBattleBase rpData) { Participants.Enemy = rpData.EnemyShipTypeIDs.Skip(1).TakeWhile(r => r != -1).Select((r, i) => { var rLevel = rpData.EnemyShipLevels[i + 1]; var rEquipment = rpData.EnemyEquipment[i]; return(new EnemyShip(r, rLevel, rEquipment)); }).ToList <IParticipant>().AsReadOnly(); }