fix #2709 CustomBuildTimeValue should not desync

remove redundant code by outsourcing raw build time calculation
This commit is contained in:
Matthias Mailänder
2013-03-07 21:48:54 +01:00
parent e3fbd40278
commit f3e0ff8758
4 changed files with 27 additions and 18 deletions

View File

@@ -16,8 +16,25 @@ namespace OpenRA.Mods.RA.Buildings
public class CustomBuildTimeValueInfo : TraitInfo<CustomBuildTimeValue>
{
public readonly int Value = 0; //in milisecons
public readonly int Value = 0;
}
public class CustomBuildTimeValue { }
public static class CustomBuildTimeValueExts
{
public static int GetBuildTime(this ActorInfo a)
{
var csv = a.Traits.GetOrDefault<CustomBuildTimeValueInfo>();
if (csv != null)
return csv.Value;
var cost = a.Traits.Contains<ValuedInfo>() ? a.Traits.Get<ValuedInfo>().Cost : 0;
var time = cost
* (25 * 60) /* frames per min */
/ 1000;
return
time;
}
}
}