Codechange: Use SQInteger for generic numbers in script_cargo

This commit is contained in:
glx22 2023-02-09 22:47:44 +01:00 committed by Loïc Guilloux
parent 83826b1793
commit 40424601c6
2 changed files with 14 additions and 5 deletions

View File

@ -70,9 +70,12 @@
return (ScriptCargo::TownEffect)::CargoSpec::Get(cargo_type)->town_effect;
}
/* static */ Money ScriptCargo::GetCargoIncome(CargoID cargo_type, uint32 distance, uint32 days_in_transit)
/* static */ Money ScriptCargo::GetCargoIncome(CargoID cargo_type, SQInteger distance, SQInteger days_in_transit)
{
if (!IsValidCargo(cargo_type)) return -1;
distance = Clamp<SQInteger>(distance, 0, UINT32_MAX);
return ::GetTransportedGoodsIncome(1, distance, Clamp(days_in_transit * 2 / 5, 0, 255), cargo_type);
}
@ -82,8 +85,11 @@
return (ScriptCargo::DistributionType)_settings_game.linkgraph.GetDistributionType(cargo_type);
}
/* static */ int64 ScriptCargo::GetWeight(CargoID cargo_type, uint32 amount)
/* static */ SQInteger ScriptCargo::GetWeight(CargoID cargo_type, SQInteger amount)
{
if (!IsValidCargo(cargo_type)) return -1;
amount = Clamp<SQInteger>(amount, 0, UINT32_MAX);
return ::CargoSpec::Get(cargo_type)->WeightOfNUnits(amount);
}

View File

@ -142,10 +142,12 @@ public:
* @param cargo_type The cargo to transport.
* @pre ScriptCargo::IsValidCargo(cargo_type).
* @param distance The distance the cargo travels from begin to end.
* @param days_in_transit Amount of (game) days the cargo is in transit. The max value of this variable is 637. Any value higher returns the same as 637 would.
* The value will be clamped to 0 .. MAX(uint32).
* @param days_in_transit Amount of (game) days the cargo is in transit.
* The max value of this variable is 637. Any value higher returns the same as 637 would.
* @return The amount of money that would be earned by this trip.
*/
static Money GetCargoIncome(CargoID cargo_type, uint32 distance, uint32 days_in_transit);
static Money GetCargoIncome(CargoID cargo_type, SQInteger distance, SQInteger days_in_transit);
/**
* Get the cargo distribution type for a cargo.
@ -159,10 +161,11 @@ public:
* cargo for the specified type.
* @param cargo_type The cargo to check on.
* @param amount The quantity of cargo.
* The value will be clamped to 0 .. MAX(uint32).
* @pre ScriptCargo::IsValidCargo(cargo_type).
* @return The weight in tonnes for that quantity of cargo.
*/
static int64 GetWeight(CargoID cargo_type, uint32 amount);
static SQInteger GetWeight(CargoID cargo_type, SQInteger amount);
};
#endif /* SCRIPT_CARGO_HPP */