From c1822d1cef1870e5159674d9689e3fb1601a674d Mon Sep 17 00:00:00 2001 From: abcdefg30 Date: Wed, 22 Jun 2022 17:01:57 +0200 Subject: [PATCH] Fix NREs in CheckUnknownWeaponFields --- OpenRA.Mods.Common/Lint/CheckUnknownWeaponFields.cs | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/OpenRA.Mods.Common/Lint/CheckUnknownWeaponFields.cs b/OpenRA.Mods.Common/Lint/CheckUnknownWeaponFields.cs index df1e00a350..7445c0427d 100644 --- a/OpenRA.Mods.Common/Lint/CheckUnknownWeaponFields.cs +++ b/OpenRA.Mods.Common/Lint/CheckUnknownWeaponFields.cs @@ -68,6 +68,12 @@ namespace OpenRA.Mods.Common.Lint { var projectileName = NormalizeName(field.Value.Value); var projectileInfo = modData.ObjectCreator.FindType(projectileName + "Info"); + if (projectileInfo == null) + { + emitError($"{field.Location} defines unknown projectile `{projectileName}`."); + continue; + } + foreach (var projectileField in field.Value.Nodes) { var projectileFieldName = NormalizeName(projectileField.Key); @@ -85,6 +91,12 @@ namespace OpenRA.Mods.Common.Lint var warheadName = NormalizeName(field.Value.Value); var warheadInfo = modData.ObjectCreator.FindType(warheadName + "Warhead"); + if (warheadInfo == null) + { + emitError($"{field.Location} defines unknown warhead `{warheadName}`."); + continue; + } + foreach (var warheadField in field.Value.Nodes) { var warheadFieldName = NormalizeName(warheadField.Key);