public StarbaseInfoAccessController(StarbaseCmdData data) : base(data) { }
// 7.10.16 Eliminated usage of ElementReports to calculate partial Unit values. // 7.18.16 If Cmd's IntelCoverage does not allow full view of selected values // a partial value is calculated from element's data and their infoAccessCntlr. public StarbaseCmdReport(StarbaseCmdData cmdData, Player player, IStarbaseCmd_Ltd item) : base(cmdData, player, item) { }
private BaseComposition CalcPartialUnitComposition(StarbaseCmdData cmdData) { var elementsData = GetElementsData(cmdData).Cast<FacilityData>(); IList<FacilityHullCategory> knownElementCategories = new List<FacilityHullCategory>(); foreach (var eData in elementsData) { var accessCntlr = eData.InfoAccessCntlr; if (accessCntlr.HasAccessToInfo(Player, ItemInfoID.Category)) { knownElementCategories.Add(eData.HullCategory); } } if (knownElementCategories.Count > Constants.Zero) { // Player will always know about the HQElement (since knows Cmd) but Category may not yet be revealed return new BaseComposition(knownElementCategories); } return null; }
private StarbaseCategory CalcPartialCmdCategory(StarbaseCmdData cmdData) { if (UnitComposition != null) { return cmdData.GenerateCmdCategory(UnitComposition); } return StarbaseCategory.None; }
public StarbaseReportGenerator(StarbaseCmdData data) { _data = data; _gameMgr = References.GameManager; _stringBuilder = new StringBuilder(); }