forked from mattkimber/openttd_villages_is_villages
-
Notifications
You must be signed in to change notification settings - Fork 0
/
cargohelper.nut
37 lines (31 loc) · 856 Bytes
/
cargohelper.nut
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
class CargoHelper
{
mail_cargo = null;
pass_cargo = null;
constructor()
{
this.mail_cargo = EvaluateCargo(GSCargo.CC_MAIL, GSCargo.TE_MAIL);
this.pass_cargo = EvaluateCargo(GSCargo.CC_PASSENGERS, GSCargo.TE_PASSENGERS);
}
function GetPAXCargo()
{
return this.pass_cargo;
}
function GetMailCargo()
{
return this.mail_cargo;
}
function EvaluateCargo(cargo_flag, town_flag)
{
local cargo_list = GSCargoList();
cargo_list.Valuate(GSCargo.HasCargoClass, cargo_flag);
cargo_list.KeepValue(1);
cargo_list.Valuate(GSCargo.GetTownEffect);
cargo_list.KeepValue(town_flag);
if(cargo_list.Count() < 1) {
GSLog.Error("No cargo found for flag " + cargo_flag);
return -1;
}
return cargo_list.Begin();
}
}