fix #2709 CustomBuildTimeValue should not desync
remove redundant code by outsourcing raw build time calculation
This commit is contained in:
@@ -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;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user