diff --git a/OpenRA.Game/GameRules/WeaponInfo.cs b/OpenRA.Game/GameRules/WeaponInfo.cs index 267bd39914..86c069975f 100644 --- a/OpenRA.Game/GameRules/WeaponInfo.cs +++ b/OpenRA.Game/GameRules/WeaponInfo.cs @@ -139,7 +139,11 @@ namespace OpenRA.GameRules { if (!yaml.ToDictionary().TryGetValue("Projectile", out var proj)) return null; + var ret = Game.CreateObject(proj.Value + "Info"); + if (ret == null) + return null; + FieldLoader.Load(ret, proj); return ret; } @@ -150,6 +154,9 @@ namespace OpenRA.GameRules foreach (var node in yaml.Nodes.Where(n => n.Key.StartsWith("Warhead"))) { var ret = Game.CreateObject(node.Value.Value + "Warhead"); + if (ret == null) + continue; + FieldLoader.Load(ret, node.Value); retList.Add(ret); }