|
@ -436,12 +436,24 @@ namespace GWConquest |
|
|
if (BattleState == BattleUnitState.MovingToFlank) |
|
|
if (BattleState == BattleUnitState.MovingToFlank) |
|
|
{ |
|
|
{ |
|
|
BattleState = BattleUnitState.OnFlank; |
|
|
BattleState = BattleUnitState.OnFlank; |
|
|
|
|
|
|
|
|
|
|
|
int requiredFuel = GetFuelCostForFlank(); |
|
|
|
|
|
if(requiredFuel <= TotalFuel) |
|
|
|
|
|
{ |
|
|
|
|
|
ConsumeTotalFuel(requiredFuel); |
|
|
|
|
|
} |
|
|
} |
|
|
} |
|
|
else if (BattleState == BattleUnitState.MovingToReserve) |
|
|
else if (BattleState == BattleUnitState.MovingToReserve) |
|
|
{ |
|
|
{ |
|
|
BattleState = BattleUnitState.InReserve; |
|
|
BattleState = BattleUnitState.InReserve; |
|
|
CurrentFlank.RemoveUnit(this); |
|
|
CurrentFlank.RemoveUnit(this); |
|
|
CurrentFlank = null; |
|
|
CurrentFlank = null; |
|
|
|
|
|
|
|
|
|
|
|
int requiredFuel = GetFuelCostForFlank(); |
|
|
|
|
|
if(requiredFuel <= TotalFuel) |
|
|
|
|
|
{ |
|
|
|
|
|
ConsumeTotalFuel(requiredFuel); |
|
|
|
|
|
} |
|
|
} |
|
|
} |
|
|
else if(BattleState == BattleUnitState.StartingShelling) |
|
|
else if(BattleState == BattleUnitState.StartingShelling) |
|
|
{ |
|
|
{ |
|
@ -559,6 +571,11 @@ namespace GWConquest |
|
|
return Mathf.RoundToInt(length / GameManager.Instance.DefaultFuelJumpLength * Class.FuelConsumption); |
|
|
return Mathf.RoundToInt(length / GameManager.Instance.DefaultFuelJumpLength * Class.FuelConsumption); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
public int GetFuelCostForFlank() |
|
|
|
|
|
{ |
|
|
|
|
|
return Mathf.RoundToInt(GameManager.Instance.FlankFuelConsumptionFactor * Class.FuelConsumption); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
public int TotalFuel { |
|
|
public int TotalFuel { |
|
|
get => Fuel + Inventory.GetItemAmount("Fuel"); |
|
|
get => Fuel + Inventory.GetItemAmount("Fuel"); |
|
|
} |
|
|
} |
|
|