Add property requirements to safe traits

This commit is contained in:
atlimit8
2015-07-11 16:30:27 -05:00
parent 7881ff40bf
commit 1bcc07ce69
50 changed files with 68 additions and 41 deletions

View File

@@ -17,7 +17,7 @@ namespace OpenRA.Mods.Common.Traits
{
public class TerrainModifiesDamageInfo : ITraitInfo
{
[FieldLoader.LoadUsing("LoadPercents")]
[FieldLoader.LoadUsing("LoadPercents", true)]
[Desc("Damage percentage for specific terrain types. 120 = 120%, 80 = 80%, etc.")]
public readonly Dictionary<string, int> TerrainModifier = null;
@@ -28,12 +28,7 @@ namespace OpenRA.Mods.Common.Traits
static object LoadPercents(MiniYaml y)
{
MiniYaml percents;
if (!y.ToDictionary().TryGetValue("TerrainModifier", out percents))
return new Dictionary<string, int>();
return percents.Nodes.ToDictionary(
return y.ToDictionary()["TerrainModifier"].Nodes.ToDictionary(
kv => FieldLoader.GetValue<string>("(key)", kv.Key),
kv => FieldLoader.GetValue<int>("(value)", kv.Value.Value));
}