private static void SetTimeAppears <T>(StandardThreatInfo <T> nextThreatInfo, string timeAppears, int currentThreatIndex) where T : Threat { if (nextThreatInfo == null || nextThreatInfo.TimeAppears.HasValue) { throw new InvalidOperationException("Error on external threat #" + currentThreatIndex); } nextThreatInfo.TimeAppears = TryParseInt(timeAppears); if (!nextThreatInfo.TimeAppears.HasValue) { throw new InvalidOperationException("Error on external threat #" + currentThreatIndex); } }
private static InternalThreat SetExtraInternalThreat <T>( string extraInternalThreatId, StandardThreatInfo <T> nextThreatInfo, int currentThreatIndex) where T : Threat { var bonusInternalThreat = InternalThreatFactory.CreateThreat <InternalThreat>(extraInternalThreatId); if (nextThreatInfo == null || bonusInternalThreat == null) { throw new InvalidOperationException("Error on external threat #" + currentThreatIndex); } AddBonusThreatInfo(nextThreatInfo, bonusInternalThreat); return(bonusInternalThreat); }