Charge now using ticks and fixed extra bar time formula.
ChargeTime has been changed to ChargeDelay and is measured in ticks rather than seconds. The formula for working out the extra bar time has been fixed to work properly at different charge delays.
This commit is contained in:
@@ -20,8 +20,8 @@ namespace OpenRA.Mods.RA.Traits
|
|||||||
{
|
{
|
||||||
class PortableChronoInfo : ITraitInfo
|
class PortableChronoInfo : ITraitInfo
|
||||||
{
|
{
|
||||||
[Desc("Cooldown in seconds until the unit can teleport.")]
|
[Desc("Cooldown in ticks until the unit can teleport.")]
|
||||||
public readonly int ChargeTime = 20;
|
public readonly int ChargeDelay = 500;
|
||||||
|
|
||||||
[Desc("Can the unit teleport only a certain distance?")]
|
[Desc("Can the unit teleport only a certain distance?")]
|
||||||
public readonly bool HasDistanceLimit = true;
|
public readonly bool HasDistanceLimit = true;
|
||||||
@@ -97,7 +97,7 @@ namespace OpenRA.Mods.RA.Traits
|
|||||||
|
|
||||||
public void ResetChargeTime()
|
public void ResetChargeTime()
|
||||||
{
|
{
|
||||||
chargeTick = 25 * Info.ChargeTime;
|
chargeTick = Info.ChargeDelay;
|
||||||
}
|
}
|
||||||
|
|
||||||
public bool CanTeleport
|
public bool CanTeleport
|
||||||
@@ -107,7 +107,7 @@ namespace OpenRA.Mods.RA.Traits
|
|||||||
|
|
||||||
public float GetValue()
|
public float GetValue()
|
||||||
{
|
{
|
||||||
return (float)((chargeTick - (25 * Info.ChargeTime)) * (Info.ChargeTime * -0.0001));
|
return (float)(Info.ChargeDelay - chargeTick) / Info.ChargeDelay;
|
||||||
}
|
}
|
||||||
|
|
||||||
public Color GetColor() { return Color.Magenta; }
|
public Color GetColor() { return Color.Magenta; }
|
||||||
|
|||||||
Reference in New Issue
Block a user