truelight@9460: class Regression extends AIController { truelight@9460: stop = false; truelight@9460: truelight@9460: function Start(); truelight@9460: function Stop(); truelight@9460: } truelight@9460: truelight@9460: truelight@9460: truelight@9460: function Regression::TestInit() truelight@9460: { truelight@9460: print(""); truelight@9460: print("--TestInit--"); truelight@9460: print(" TickTest: " + this.GetTick()); truelight@9557: this.Sleep(1); truelight@9460: print(" TickTest: " + this.GetTick()); truebrain@9749: print(" SetCommandDelay: " + AISettings.SetCommandDelay(1)); truebrain@10649: require("require.nut"); truelight@9460: } truelight@9460: truelight@9487: function Regression::Std() truelight@9487: { truelight@9487: print(""); truelight@9487: print("--Std--"); truelight@9487: print(" abs(-21): " + abs(-21)); truelight@9487: print(" abs( 21): " + abs(21)); truelight@9487: } truelight@9487: truelight@9460: function Regression::Base() truelight@9460: { truelight@9460: print(""); truelight@9460: print("--AIBase--"); truebrain@9737: print(" Rand(): " + AIBase.Rand()); truebrain@9737: print(" Rand(): " + AIBase.Rand()); truebrain@9737: print(" Rand(): " + AIBase.Rand()); truebrain@9737: print(" RandRange(0): " + AIBase.RandRange(0)); truebrain@9737: print(" RandRange(0): " + AIBase.RandRange(0)); truebrain@9737: print(" RandRange(0): " + AIBase.RandRange(0)); truebrain@9737: print(" RandRange(1): " + AIBase.RandRange(1)); truebrain@9737: print(" RandRange(1): " + AIBase.RandRange(1)); truebrain@9737: print(" RandRange(1): " + AIBase.RandRange(1)); truebrain@9737: print(" RandRange(2): " + AIBase.RandRange(2)); truebrain@9737: print(" RandRange(2): " + AIBase.RandRange(2)); truebrain@9737: print(" RandRange(2): " + AIBase.RandRange(2)); truebrain@9737: print(" RandRange(9): " + AIBase.RandRange(9)); truebrain@9737: print(" RandRange(9): " + AIBase.RandRange(9)); truebrain@9737: print(" RandRange(9): " + AIBase.RandRange(9)); truebrain@9737: print(" Chance(1, 2): " + AIBase.Chance(1, 2)); truebrain@9737: print(" Chance(1, 2): " + AIBase.Chance(1, 2)); truebrain@9737: print(" Chance(1, 2): " + AIBase.Chance(1, 2)); truelight@9460: } truelight@9460: truelight@9654: function Regression::Airport() truelight@9654: { truelight@9654: print(""); truelight@9654: print("--AIAirport--"); truelight@9654: truebrain@9737: print(" IsHangarTile(): " + AIAirport.IsHangarTile(32116)); truebrain@9737: print(" IsAirportTile(): " + AIAirport.IsAirportTile(32116)); truebrain@9737: print(" GetHangarOfAirport(): " + AIAirport.GetHangarOfAirport(32116)); truelight@9654: truelight@9654: for (local i = -1; i < 10; i++) { truebrain@9773: print(" AirportAvailable(" + i + "): " + AIAirport.AirportAvailable(i)); truebrain@9737: print(" GetAirportWidth(" + i + "): " + AIAirport.GetAirportWidth(i)); truebrain@9737: print(" GetAirportHeight(" + i + "): " + AIAirport.GetAirportHeight(i)); truebrain@9737: print(" GetAirportCoverageRadius(" + i + "): " + AIAirport.GetAirportCoverageRadius(i)); truelight@9654: } truelight@9654: truebrain@9737: print(" GetBankBalance(): " + AICompany.GetBankBalance(AICompany.MY_COMPANY)); truebrain@9737: print(" BuildAirport(): " + AIAirport.BuildAirport(32116, 0)); truebrain@9737: print(" IsHangarTile(): " + AIAirport.IsHangarTile(32116)); truebrain@9737: print(" IsAirportTile(): " + AIAirport.IsAirportTile(32116)); truebrain@9737: print(" GetHangarOfAirport(): " + AIAirport.GetHangarOfAirport(32116)); truebrain@9737: print(" IsHangarTile(): " + AIAirport.IsHangarTile(32119)); truebrain@9737: print(" IsAirportTile(): " + AIAirport.IsAirportTile(32119)); truebrain@9737: print(" GetBankBalance(): " + AICompany.GetBankBalance(AICompany.MY_COMPANY)); truelight@9654: truebrain@9737: print(" RemoveAirport(): " + AIAirport.RemoveAirport(32118)); truebrain@9737: print(" IsHangarTile(): " + AIAirport.IsHangarTile(32119)); truebrain@9737: print(" IsAirportTile(): " + AIAirport.IsAirportTile(32119)); truebrain@9737: print(" GetBankBalance(): " + AICompany.GetBankBalance(AICompany.MY_COMPANY)); truebrain@9737: print(" BuildAirport(): " + AIAirport.BuildAirport(32116, 0)); truelight@9654: } truelight@9654: truebrain@9792: function Regression::Bridge() truebrain@9792: { truebrain@9792: local j = 0; truebrain@9792: truebrain@9792: print(""); truebrain@9792: print("--Bridge--"); truebrain@9792: for (local i = -1; i < 14; i++) { truebrain@9792: if (AIBridge.IsValidBridge(i)) j++; truebrain@9792: print(" Bridge " + i); truebrain@9792: print(" IsValidBridge(): " + AIBridge.IsValidBridge(i)); truebrain@9792: print(" GetName(): " + AIBridge.GetName(i)); truebrain@9792: print(" GetMaxSpeed(): " + AIBridge.GetMaxSpeed(i)); truebrain@9792: print(" GetPrice(): " + AIBridge.GetPrice(i, 5)); truebrain@9792: print(" GetMaxLength(): " + AIBridge.GetMaxLength(i)); truebrain@9792: print(" GetMinLength(): " + AIBridge.GetMinLength(i)); truebrain@9792: print(" GetYearAvailable(): " + AIBridge.GetYearAvailable(i)); truebrain@9792: } truebrain@9792: print(" Valid Bridges: " + j); truebrain@9793: truebrain@9793: print(" IsBridgeTile(): " + AIBridge.IsBridgeTile(33160)); truebrain@9793: print(" RemoveBridge(): " + AIBridge.RemoveBridge(33155)); rubidium@9867: print(" GetLastErrorString(): " + AIError.GetLastErrorString()); glx@10691: print(" GetOtherBridgeEnd(): " + AIBridge.GetOtherBridgeEnd(33160)); truebrain@9793: print(" BuildBridge(): " + AIBridge.BuildBridge(AIVehicle.VEHICLE_ROAD, 5, 33160, 33155)); truebrain@9793: print(" IsBridgeTile(): " + AIBridge.IsBridgeTile(33160)); truebrain@9793: print(" IsBridgeTile(): " + AIBridge.IsBridgeTile(33155)); glx@10691: print(" GetOtherBridgeEnd(): " + AIBridge.GetOtherBridgeEnd(33160)); rubidium@9867: print(" BuildBridge(): " + AIBridge.BuildBridge(AIVehicle.VEHICLE_ROAD, 5, 33160, 33155)); rubidium@9867: print(" GetLastErrorString(): " + AIError.GetLastErrorString()); truebrain@9793: print(" RemoveBridge(): " + AIBridge.RemoveBridge(33155)); truebrain@9793: print(" IsBridgeTile(): " + AIBridge.IsBridgeTile(33160)); truebrain@9792: } truebrain@9792: truebrain@9792: function Regression::BridgeList() truebrain@9792: { truebrain@9792: local list = AIBridgeList(); truebrain@9792: truebrain@9792: print(""); truebrain@9792: print("--BridgeList--"); truebrain@9792: print(" Count(): " + list.Count()); truebrain@9814: list.Valuate(AIBridge.GetMaxSpeed); truebrain@9792: print(" MaxSpeed ListDump:"); truebrain@9792: for (local i = list.Begin(); list.HasNext(); i = list.Next()) { truebrain@9792: print(" " + i + " => " + list.GetValue(i)); truebrain@9792: } truebrain@9814: list.Valuate(AIBridge.GetPrice, 5); truebrain@9792: print(" Price ListDump:"); truebrain@9792: for (local i = list.Begin(); list.HasNext(); i = list.Next()) { truebrain@9792: print(" " + i + " => " + list.GetValue(i)); truebrain@9792: } truebrain@9814: list.Valuate(AIBridge.GetMaxLength); truebrain@9792: print(" MaxLength ListDump:"); truebrain@9792: for (local i = list.Begin(); list.HasNext(); i = list.Next()) { truebrain@9792: print(" " + i + " => " + list.GetValue(i)); truebrain@9792: } truebrain@9814: list.Valuate(AIBridge.GetMinLength); truebrain@9792: print(" MinLength ListDump:"); truebrain@9792: for (local i = list.Begin(); list.HasNext(); i = list.Next()) { truebrain@9792: print(" " + i + " => " + list.GetValue(i)); truebrain@9792: } truebrain@9814: list.Valuate(AIBridge.GetYearAvailable); truebrain@9792: print(" YearAvailable ListDump:"); truebrain@9792: for (local i = list.Begin(); list.HasNext(); i = list.Next()) { truebrain@9792: print(" " + i + " => " + list.GetValue(i)); truebrain@9792: } truebrain@9792: truebrain@9792: local list = AIBridgeList_Length(14); truebrain@9792: truebrain@9792: print(""); truebrain@9792: print("--BridgeList_Length--"); truebrain@9792: print(" Count(): " + list.Count()); truebrain@9814: list.Valuate(AIBridge.GetMaxSpeed); truebrain@9792: print(" MaxSpeed ListDump:"); truebrain@9792: for (local i = list.Begin(); list.HasNext(); i = list.Next()) { truebrain@9792: print(" " + i + " => " + list.GetValue(i)); truebrain@9792: } truebrain@9814: list.Valuate(AIBridge.GetPrice, 14); truebrain@9792: print(" Price ListDump:"); truebrain@9792: for (local i = list.Begin(); list.HasNext(); i = list.Next()) { truebrain@9792: print(" " + i + " => " + list.GetValue(i)); truebrain@9792: } truebrain@9792: } truebrain@9792: truelight@9460: function Regression::Cargo() truelight@9460: { truelight@9460: print(""); truelight@9460: print("--AICargo--"); truelight@9460: for (local i = -1; i < 15; i++) { truelight@9460: print(" Cargo " + i); truebrain@9737: print(" IsValidCargo(): " + AICargo.IsValidCargo(i)); truebrain@9737: print(" GetCargoLabel(): '" + AICargo.GetCargoLabel(i)+ "'"); truebrain@9737: print(" IsFreight(): " + AICargo.IsFreight(i)); truebrain@10675: print(" HasCargoClass(): " + AICargo.HasCargoClass(i, AICargo.CC_PASSENGERS)); truebrain@9814: print(" GetCargoIncome(0, 0): " + AICargo.GetCargoIncome(i, 0, 0)); truebrain@9814: print(" GetCargoIncome(10, 10): " + AICargo.GetCargoIncome(i, 10, 10)); truebrain@9814: print(" GetCargoIncome(100, 10): " + AICargo.GetCargoIncome(i, 100, 10)); truebrain@9814: print(" GetCargoIncome(10, 100): " + AICargo.GetCargoIncome(i, 10, 100)); truelight@9460: } truelight@9460: } truelight@9460: truebrain@9785: function Regression::CargoList() truebrain@9785: { truebrain@9785: local list = AICargoList(); truebrain@9785: truebrain@9785: print(""); truebrain@9785: print("--CargoList--"); truebrain@9785: print(" Count(): " + list.Count()); truebrain@9814: list.Valuate(AICargo.IsFreight); truebrain@9788: print(" IsFreight ListDump:"); truebrain@9785: for (local i = list.Begin(); list.HasNext(); i = list.Next()) { truebrain@9788: print(" " + i + " => " + list.GetValue(i)); truebrain@9788: } truebrain@9788: truebrain@9814: list.Valuate(AICargo.GetCargoIncome, 100, 100); truebrain@9788: print(" CargoIncomes(100, 100) ListDump:"); truebrain@9788: for (local i = list.Begin(); list.HasNext(); i = list.Next()) { truebrain@9788: print(" " + i + " => " + list.GetValue(i)); truebrain@9785: } truebrain@9785: } truebrain@9785: truelight@9460: function Regression::Company() truelight@9460: { truelight@9460: print(""); truelight@9460: print("--Company--"); truelight@9558: truelight@9558: /* Test AIXXXMode() in scopes */ truelight@9558: { truelight@9558: local test = AITestMode(); truebrain@9737: print(" SetCompanyName(): " + AICompany.SetCompanyName("Regression")); truebrain@9737: print(" SetCompanyName(): " + AICompany.SetCompanyName("Regression")); truelight@9558: { truelight@9558: local exec = AIExecMode(); truebrain@9737: print(" SetCompanyName(): " + AICompany.SetCompanyName("Regression")); truebrain@9737: print(" SetCompanyName(): " + AICompany.SetCompanyName("Regression")); rubidium@9865: print(" GetLastErrorString(): " + AIError.GetLastErrorString()); truelight@9558: } truelight@9558: } truelight@9558: truebrain@9737: print(" GetCompanyName(): " + AICompany.GetCompanyName(AICompany.MY_COMPANY)); truebrain@9737: print(" GetPresidentName(): " + AICompany.GetPresidentName(AICompany.MY_COMPANY)); truebrain@9737: print(" SetPresidentName(): " + AICompany.SetPresidentName("Regression AI")); truebrain@9737: print(" GetPresidentName(): " + AICompany.GetPresidentName(AICompany.MY_COMPANY)); truebrain@9737: print(" GetCompanyValue(): " + AICompany.GetCompanyValue(AICompany.MY_COMPANY)); truebrain@9737: print(" GetBankBalance(): " + AICompany.GetBankBalance(AICompany.MY_COMPANY)); truebrain@9737: print(" GetCompanyName(): " + AICompany.GetCompanyName(240)); truebrain@9737: print(" GetLoanAmount(): " + AICompany.GetLoanAmount()); truebrain@9737: print(" GetMaxLoanAmount(): " + AICompany.GetMaxLoanAmount()); truebrain@9737: print(" GetLoanInterval(): " + AICompany.GetLoanInterval()); truebrain@9737: print(" SetLoanAmount(1): " + AICompany.SetLoanAmount(1)); truebrain@9737: print(" SetLoanAmount(100): " + AICompany.SetLoanAmount(100)); truebrain@9737: print(" SetLoanAmount(10000): " + AICompany.SetLoanAmount(10000)); rubidium@9865: print(" GetLastErrorString(): " + AIError.GetLastErrorString()); truebrain@9737: print(" GetBankBalance(): " + AICompany.GetBankBalance(AICompany.MY_COMPANY)); truebrain@9737: print(" GetLoanAmount(): " + AICompany.GetLoanAmount()); truebrain@9737: print(" SetMinimumLoanAmount(31337): " + AICompany.SetMinimumLoanAmount(31337)); truebrain@9737: print(" GetBankBalance(): " + AICompany.GetBankBalance(AICompany.MY_COMPANY)); truebrain@9737: print(" GetLoanAmount(): " + AICompany.GetLoanAmount()); truebrain@9737: print(" SetLoanAmount(10000): " + AICompany.SetLoanAmount(AICompany.GetMaxLoanAmount())); truebrain@9737: print(" GetBankBalance(): " + AICompany.GetBankBalance(AICompany.MY_COMPANY)); truebrain@9737: print(" GetLoanAmount(): " + AICompany.GetLoanAmount()); truebrain@9808: print(" GetCompanyHQ(): " + AICompany.GetCompanyHQ(AICompany.MY_COMPANY)); truebrain@9808: print(" BuildCompanyHQ(): " + AICompany.BuildCompanyHQ(AIMap.GetTileIndex(127, 129))); truebrain@9808: print(" GetCompanyHQ(): " + AICompany.GetCompanyHQ(AICompany.MY_COMPANY)); truebrain@9808: print(" BuildCompanyHQ(): " + AICompany.BuildCompanyHQ(AIMap.GetTileIndex(129, 129))); truebrain@9808: print(" GetCompanyHQ(): " + AICompany.GetCompanyHQ(AICompany.MY_COMPANY)); rubidium@9865: print(" BuildCompanyHQ(): " + AICompany.BuildCompanyHQ(AIMap.GetTileIndex(129, 128))); rubidium@9865: print(" GetLastErrorString(): " + AIError.GetLastErrorString()); glx@10291: print(" GetAutoRenewStatus(); " + AICompany.GetAutoRenewStatus(AICompany.MY_COMPANY)); glx@10291: print(" SetAutoRenewStatus(true); " + AICompany.SetAutoRenewStatus(true)); glx@10291: print(" GetAutoRenewStatus(); " + AICompany.GetAutoRenewStatus(AICompany.MY_COMPANY)); glx@10291: print(" SetAutoRenewStatus(true); " + AICompany.SetAutoRenewStatus(true)); glx@10291: print(" SetAutoRenewStatus(false); " + AICompany.SetAutoRenewStatus(false)); glx@10291: print(" GetAutoRenewMonths(); " + AICompany.GetAutoRenewMonths(AICompany.MY_COMPANY)); glx@10291: print(" SetAutoRenewMonths(-12); " + AICompany.SetAutoRenewMonths(-12)); glx@10291: print(" GetAutoRenewMonths(); " + AICompany.GetAutoRenewMonths(AICompany.MY_COMPANY)); glx@10291: print(" SetAutoRenewMonths(-12); " + AICompany.SetAutoRenewMonths(-12)); glx@10291: print(" SetAutoRenewMonths(6); " + AICompany.SetAutoRenewMonths(6)); glx@10291: print(" GetAutoRenewMoney(); " + AICompany.GetAutoRenewMoney(AICompany.MY_COMPANY)); glx@10291: print(" SetAutoRenewMoney(200000); " + AICompany.SetAutoRenewMoney(200000)); glx@10291: print(" GetAutoRenewMoney(); " + AICompany.GetAutoRenewMoney(AICompany.MY_COMPANY)); glx@10291: print(" SetAutoRenewMoney(200000); " + AICompany.SetAutoRenewMoney(200000)); glx@10291: print(" SetAutoRenewMoney(100000); " + AICompany.SetAutoRenewMoney(100000)); truelight@9460: } truelight@9460: truelight@9711: function Regression::Engine() truelight@9711: { truelight@9711: local j = 0; truelight@9711: truelight@9711: print(""); truelight@9711: print("--Engine--"); truelight@9711: for (local i = -1; i < 257; i++) { truebrain@9737: if (AIEngine.IsValidEngine(i)) j++; truelight@9711: print(" Engine " + i); truebrain@9737: print(" IsValidEngine(): " + AIEngine.IsValidEngine(i)); truebrain@9737: print(" GetName(): " + AIEngine.GetName(i)); truebrain@9737: print(" GetCargoType(): " + AIEngine.GetCargoType(i)); truebrain@9809: print(" CanRefitCargo(): " + AIEngine.CanRefitCargo(i, 1)); truebrain@9737: print(" GetCapacity(): " + AIEngine.GetCapacity(i)); truebrain@9737: print(" GetReliability(): " + AIEngine.GetReliability(i)); truebrain@9737: print(" GetMaxSpeed(): " + AIEngine.GetMaxSpeed(i)); truebrain@9737: print(" GetPrice(): " + AIEngine.GetPrice(i)); truebrain@9737: print(" GetMaxAge(): " + AIEngine.GetMaxAge(i)); truebrain@9737: print(" GetRunningCost(): " + AIEngine.GetRunningCost(i)); truebrain@9737: print(" GetVehicleType(): " + AIEngine.GetVehicleType(i)); truebrain@10668: print(" GetRoadType(): " + AIEngine.GetRoadType(i)); truelight@9711: } truelight@9711: print(" Valid Engines: " + j); truelight@9711: } truelight@9711: truelight@9714: function Regression::EngineList() truelight@9714: { truelight@9714: local list = AIEngineList(AIVehicle.VEHICLE_ROAD); truelight@9714: truelight@9714: print(""); truelight@9714: print("--EngineList--"); truelight@9714: print(" Count(): " + list.Count()); truebrain@9814: list.Valuate(AIEngine.GetCargoType); truelight@9714: print(" CargoType ListDump:"); truelight@9714: for (local i = list.Begin(); list.HasNext(); i = list.Next()) { truelight@9714: print(" " + i + " => " + list.GetValue(i)); truelight@9714: } truebrain@9814: list.Valuate(AIEngine.GetCapacity); truelight@9714: print(" Capacity ListDump:"); truelight@9714: for (local i = list.Begin(); list.HasNext(); i = list.Next()) { truelight@9714: print(" " + i + " => " + list.GetValue(i)); truelight@9714: } truebrain@9814: list.Valuate(AIEngine.GetReliability); truelight@9714: print(" Reliability ListDump:"); truelight@9714: for (local i = list.Begin(); list.HasNext(); i = list.Next()) { truelight@9714: print(" " + i + " => " + list.GetValue(i)); truelight@9714: } truebrain@9814: list.Valuate(AIEngine.GetMaxSpeed); truelight@9714: print(" MaxSpeed ListDump:"); truelight@9714: for (local i = list.Begin(); list.HasNext(); i = list.Next()) { truelight@9714: print(" " + i + " => " + list.GetValue(i)); truelight@9714: } truebrain@9814: list.Valuate(AIEngine.GetPrice); truelight@9714: print(" Price ListDump:"); truelight@9714: for (local i = list.Begin(); list.HasNext(); i = list.Next()) { truelight@9714: print(" " + i + " => " + list.GetValue(i)); truelight@9714: } truelight@9714: } truelight@9714: truelight@9682: function Regression::Event() truelight@9682: { truelight@9682: print(""); truelight@9682: print("--Event--"); truelight@9682: AIEventController.Test(); truelight@9682: local e = AIEventController.GetNextEvent(); truelight@9684: print(" GetNextEvent: " + (e == null ? "null" : "instance")); truelight@9682: print(" GetEventType: " + e.GetEventType()); truelight@9682: local c = AIEventTest.Convert(e); truelight@9684: print(" Convert: " + (c == null ? "null" : "instance")); truelight@9682: print(" GetTest: " + c.GetTest()); truelight@9682: truelight@9682: print(" DisableEvent(1): done"); truelight@9682: AIEventController.DisableEvent(1); truelight@9682: AIEventController.Test(); truelight@9682: e = AIEventController.GetNextEvent(); truelight@9684: print(" GetNextEvent: " + (e == null ? "null" : "instance")); truelight@9682: truelight@9682: print(" EnableEvent(1): done"); truelight@9682: AIEventController.EnableEvent(1); truelight@9682: AIEventController.Test(); truelight@9682: e = AIEventController.GetNextEvent(); truelight@9684: print(" GetNextEvent: " + (e == null ? "null" : "instance")); truelight@9682: truelight@9682: { truelight@9682: print(" DisableAllEvents():done"); truelight@9682: AIEventController.DisableAllEvents(); truelight@9682: AIEventController.Test(); truelight@9682: e = AIEventController.GetNextEvent(); truelight@9684: print(" GetNextEvent: " + (e == null ? "null" : "instance")); truelight@9682: } truelight@9682: truelight@9682: print(" EnableEvent(1): done"); truelight@9682: AIEventController.EnableEvent(1); truelight@9682: AIEventController.Test(); truelight@9682: e = AIEventController.GetNextEvent(); truelight@9684: print(" GetNextEvent: " + (e == null ? "null" : "instance")); truelight@9684: e = AIEventController.GetNextEvent(); truelight@9684: print(" GetNextEvent: " + (e == null ? "null" : "instance")); truebrain@9823: truebrain@9823: AIEventController.EnableAllEvents(); truelight@9682: } truelight@9682: truelight@9460: function Regression::Industry() truelight@9460: { truelight@9460: local j = 0; truelight@9460: truelight@9460: print(""); truelight@9460: print("--Industry--"); truebrain@9737: print(" GetMaxIndustryID(): " + AIIndustry.GetMaxIndustryID()); truebrain@9737: print(" GetIndustryCount(): " + AIIndustry.GetIndustryCount()); truebrain@9737: for (local i = -1; i < AIIndustry.GetMaxIndustryID() + 1; i++) { truebrain@9737: if (AIIndustry.IsValidIndustry(i)) j++; truelight@9460: print(" Industry " + i); truebrain@9737: print(" IsValidIndustry(): " + AIIndustry.IsValidIndustry(i)); truebrain@9737: print(" GetName(): " + AIIndustry.GetName(i)); truebrain@9737: print(" GetLocation(): " + AIIndustry.GetLocation(i)); truebrain@9737: print(" GetProduction(): " + AIIndustry.GetProduction(i, 1)); truebrain@9737: print(" IsCargoAccepted(): " + AIIndustry.IsCargoAccepted(i, 1)); truebrain@9810: truebrain@9810: local cargo_list = AICargoList(); truebrain@9810: for (local j = cargo_list.Begin(); cargo_list.HasNext(); j = cargo_list.Next()) { truebrain@9810: if (AIIndustry.GetProduction(i, j) > 0) { truebrain@9810: print(" GetLastMonthProduction(): " + AIIndustry.GetLastMonthProduction(i, j)); truebrain@9810: print(" GetLastMonthTransported(): " + AIIndustry.GetLastMonthTransported(i, j)); truebrain@9810: } truebrain@9810: } truelight@9460: } truelight@9460: print(" Valid Industries: " + j); truebrain@9737: print(" GetIndustryCount(): " + AIIndustry.GetIndustryCount()); truelight@9460: } truelight@9460: truelight@9649: function Regression::IndustryList() truelight@9649: { truelight@9649: local list = AIIndustryList(); truelight@9649: truelight@9649: print(""); truelight@9649: print("--IndustryList--"); truelight@9649: print(" Count(): " + list.Count()); truebrain@9814: list.Valuate(AIIndustry.GetLocation); truelight@9649: print(" Location ListDump:"); truelight@9649: for (local i = list.Begin(); list.HasNext(); i = list.Next()) { truelight@9649: print(" " + i + " => " + list.GetValue(i)); truelight@9649: } truebrain@9814: list.Valuate(AIIndustry.GetDistanceManhattanToTile, 30000); truelight@9655: print(" DistanceManhattanToTile(30000) ListDump:"); truelight@9655: for (local i = list.Begin(); list.HasNext(); i = list.Next()) { truelight@9655: print(" " + i + " => " + list.GetValue(i)); truelight@9655: } truebrain@9814: list.Valuate(AIIndustry.GetDistanceSquareToTile, 30000); truelight@9655: print(" DistanceSquareToTile(30000) ListDump:"); truelight@9655: for (local i = list.Begin(); list.HasNext(); i = list.Next()) { truelight@9655: print(" " + i + " => " + list.GetValue(i)); truelight@9655: } truebrain@10383: list.Valuate(AIIndustry.GetAmountOfStationsAround); truebrain@10383: print(" GetAmountOfStationsAround(30000) ListDump:"); truebrain@10383: for (local i = list.Begin(); list.HasNext(); i = list.Next()) { truebrain@10383: print(" " + i + " => " + list.GetValue(i)); truebrain@10383: } truebrain@9814: list.Valuate(AIIndustry.IsCargoAccepted, 1); truelight@9710: print(" CargoAccepted(1) ListDump:"); truelight@9710: for (local i = list.Begin(); list.HasNext(); i = list.Next()) { truelight@9710: print(" " + i + " => " + list.GetValue(i)); truelight@9710: } truebrain@9814: list.Valuate(AIIndustry.GetProduction, 1); truelight@9649: list.KeepAboveValue(50); truelight@9649: print(" KeepAboveValue(50): done"); truelight@9649: print(" Count(): " + list.Count()); truelight@9649: print(" Production ListDump:"); truelight@9649: for (local i = list.Begin(); list.HasNext(); i = list.Next()) { truelight@9649: print(" " + i + " => " + list.GetValue(i)); truelight@9649: } truebrain@9776: truebrain@9776: list = AIIndustryList_CargoAccepting(1); truebrain@9776: print("--IndustryList_CargoAccepting--"); truebrain@9776: print(" Count(): " + list.Count()); truebrain@9814: list.Valuate(AIIndustry.GetLocation); truebrain@9776: print(" Location ListDump:"); truebrain@9776: for (local i = list.Begin(); list.HasNext(); i = list.Next()) { truebrain@9776: print(" " + i + " => " + list.GetValue(i)); truebrain@9776: } truebrain@9776: truebrain@9776: list = AIIndustryList_CargoProducing(1); truebrain@9776: print("--IndustryList_CargoProducing--"); truebrain@9776: print(" Count(): " + list.Count()); truebrain@9814: list.Valuate(AIIndustry.GetLocation); truebrain@9776: print(" Location ListDump:"); truebrain@9776: for (local i = list.Begin(); list.HasNext(); i = list.Next()) { truebrain@9776: print(" " + i + " => " + list.GetValue(i)); truebrain@9776: } truelight@9649: } truelight@9649: truebrain@9814: function CustomValuator(list_id) truebrain@9814: { truebrain@9814: return list_id * 4343; truebrain@9814: } truebrain@9814: truelight@9579: function Regression::List() truelight@9579: { truelight@9579: local list = AIList(); truelight@9579: truelight@9579: print(""); truelight@9579: print("--List--"); truelight@9579: truelight@9579: print(" IsEmpty(): " + list.IsEmpty()); truelight@9664: list.AddItem(1, 1); truelight@9664: list.AddItem(2, 2); truelight@9579: for (local i = 1000; i < 1100; i++) { truelight@9664: list.AddItem(i, i); truelight@9579: } truelight@9579: list.RemoveItem(1050); truelight@9579: list.RemoveItem(1150); truelight@9664: list.ChangeItem(1051, 12); truelight@9579: print(" Count(): " + list.Count()); truelight@9579: print(" HasItem(1050): " + list.HasItem(1050)); truelight@9579: print(" HasItem(1051): " + list.HasItem(1051)); truelight@9579: print(" IsEmpty(): " + list.IsEmpty()); rubidium@9665: list.Sort(AIAbstractList.SORT_BY_ITEM, true); truelight@9579: print(" List Dump:"); truelight@9579: for (local i = list.Begin(); list.HasNext(); i = list.Next()) { truelight@9579: print(" " + i + " => " + list.GetValue(i)); truelight@9579: } truebrain@9814: list.Valuate(CustomValuator); truebrain@9814: print(" Custom ListDump:"); truebrain@9814: for (local i = list.Begin(); list.HasNext(); i = list.Next()) { truebrain@9814: print(" " + i + " => " + list.GetValue(i)); truebrain@9814: } truebrain@9814: list.Valuate(AIBase.RandItem); truelight@9660: print(" Randomize ListDump:"); truelight@9660: for (local i = list.Begin(); list.HasNext(); i = list.Next()) { truelight@9660: print(" " + i + " => " + list.GetValue(i)); truelight@9660: } rubidium@9665: rubidium@9665: list.KeepTop(10); rubidium@9665: print(" KeepTop(10):"); rubidium@9665: for (local i = list.Begin(); list.HasNext(); i = list.Next()) { rubidium@9665: print(" " + i + " => " + list.GetValue(i)); rubidium@9665: } rubidium@9665: list.KeepBottom(8); rubidium@9665: print(" KeepBottom(8):"); rubidium@9665: for (local i = list.Begin(); list.HasNext(); i = list.Next()) { rubidium@9665: print(" " + i + " => " + list.GetValue(i)); rubidium@9665: } rubidium@9665: list.RemoveBottom(2); rubidium@9665: print(" RemoveBottom(2):"); rubidium@9665: for (local i = list.Begin(); list.HasNext(); i = list.Next()) { rubidium@9665: print(" " + i + " => " + list.GetValue(i)); rubidium@9665: } rubidium@9665: list.RemoveTop(2); rubidium@9665: print(" RemoveTop(2):"); rubidium@9665: for (local i = list.Begin(); list.HasNext(); i = list.Next()) { rubidium@9665: print(" " + i + " => " + list.GetValue(i)); rubidium@9665: } rubidium@9665: rubidium@9665: local list2 = AIList(); rubidium@9665: list2.AddItem(1003, 0); rubidium@9665: list2.AddItem(1004, 0); rubidium@9665: list.RemoveList(list2); rubidium@9665: print(" RemoveList({1003, 1004}):"); rubidium@9665: for (local i = list.Begin(); list.HasNext(); i = list.Next()) { rubidium@9665: print(" " + i + " => " + list.GetValue(i)); rubidium@9665: } rubidium@9665: list2.AddItem(1005, 0); rubidium@9665: list.KeepList(list2); rubidium@9665: print(" KeepList({1003, 1004, 1005}):"); rubidium@9665: for (local i = list.Begin(); list.HasNext(); i = list.Next()) { rubidium@9665: print(" " + i + " => " + list.GetValue(i)); rubidium@9665: } truebrain@9796: list2.Clear(); truebrain@9796: for (local i = 4000; i < 4003; i++) { truebrain@9796: list2.AddItem(i, i); truebrain@9796: } truebrain@9796: list2.AddItem(1005, 1005); truebrain@9796: list.AddList(list2); truebrain@9796: print(" AddList({1005, 4000, 4001, 4002}):"); truebrain@9796: for (local i = list.Begin(); list.HasNext(); i = list.Next()) { truebrain@9796: print(" " + i + " => " + list.GetValue(i)); truebrain@9796: } rubidium@9665: truelight@9579: list.Clear(); truelight@9579: print(" IsEmpty(): " + list.IsEmpty()); truelight@9579: } truelight@9579: truelight@9460: function Regression::Map() truelight@9460: { truelight@9460: print(""); truelight@9460: print("--Map--"); truebrain@9737: print(" GetMapSize(): " + AIMap.GetMapSize()); truebrain@9737: print(" GetMapSizeX(): " + AIMap.GetMapSizeX()); truebrain@9737: print(" GetMapSizeY(): " + AIMap.GetMapSizeY()); truebrain@9737: print(" GetTileX(123): " + AIMap.GetTileX(123)); truebrain@9737: print(" GetTileY(123): " + AIMap.GetTileY(123)); truebrain@9737: print(" GetTileIndex(): " + AIMap.GetTileIndex(123, 0)); truebrain@9737: print(" GetTileIndex(): " + AIMap.GetTileIndex(0, 123)); truebrain@9737: print(" GetTileIndex(): " + AIMap.GetTileIndex(0, 0)); truebrain@9737: print(" GetTileIndex(): " + AIMap.GetTileIndex(-1, -1)); truebrain@9737: print(" GetTileIndex(): " + AIMap.GetTileIndex(10000, 10000)); truebrain@9737: print(" IsValidTile(123): " + AIMap.IsValidTile(123)); truebrain@9737: print(" GetTileX(124): " + AIMap.GetTileX(124)); truebrain@9737: print(" GetTileY(124): " + AIMap.GetTileY(124)); truebrain@9737: print(" IsValidTile(124): " + AIMap.IsValidTile(124)); truebrain@9737: print(" IsValidTile(0): " + AIMap.IsValidTile(0)); truebrain@9737: print(" IsValidTile(-1): " + AIMap.IsValidTile(-1)); truebrain@9737: print(" IsValidTile(): " + AIMap.IsValidTile(AIMap.GetMapSize())); truebrain@9801: print(" IsValidTile(): " + AIMap.IsValidTile(AIMap.GetMapSize() - AIMap.GetMapSizeX() - 2)); truebrain@9834: print(" DemolishTile(): " + AITile.DemolishTile(19592)); truebrain@9834: print(" DemolishTile(): " + AITile.DemolishTile(19335)); truelight@9492: print(" Distance"); truebrain@9737: print(" DistanceManhattan(): " + AIMap.DistanceManhattan(1, 10000)); truebrain@9737: print(" DistanceMax(): " + AIMap.DistanceMax(1, 10000)); truebrain@9737: print(" DistanceSquare(): " + AIMap.DistanceSquare(1, 10000)); truebrain@9737: print(" DistanceFromEdge(): " + AIMap.DistanceFromEdge(10000)); truelight@9460: } truelight@9460: truelight@9691: function Regression::Marine() truelight@9691: { truelight@9691: print(""); truelight@9691: print("--AIMarine--"); truelight@9691: truebrain@9737: print(" IsWaterDepotTile(): " + AIMarine.IsWaterDepotTile(32116)); truebrain@9737: print(" IsDockTile(): " + AIMarine.IsDockTile(32116)); truebrain@9737: print(" IsBuoyTile(): " + AIMarine.IsBuoyTile(32116)); truebrain@9737: print(" IsLockTile(): " + AIMarine.IsLockTile(32116)); truebrain@9737: print(" IsCanalTile(): " + AIMarine.IsCanalTile(32116)); truelight@9691: truebrain@9737: print(" GetBankBalance(): " + AICompany.GetBankBalance(AICompany.MY_COMPANY)); truebrain@9737: print(" BuildWaterDepot(): " + AIMarine.BuildWaterDepot(28479, false)); truebrain@9737: print(" BuildDock(): " + AIMarine.BuildDock(29253)); truebrain@9737: print(" BuildBuoy(): " + AIMarine.BuildBuoy(28481)); truebrain@9737: print(" BuildLock(): " + AIMarine.BuildLock(28487)); truebrain@9737: print(" BuildCanal(): " + AIMarine.BuildCanal(32127)); truebrain@9737: print(" IsWaterDepotTile(): " + AIMarine.IsWaterDepotTile(28479)); truebrain@9737: print(" IsDockTile(): " + AIMarine.IsDockTile(29253)); truebrain@9737: print(" IsBuoyTile(): " + AIMarine.IsBuoyTile(28481)); truebrain@9737: print(" IsLockTile(): " + AIMarine.IsLockTile(28487)); truebrain@9737: print(" IsCanalTile(): " + AIMarine.IsCanalTile(32127)); truebrain@9737: print(" GetBankBalance(): " + AICompany.GetBankBalance(AICompany.MY_COMPANY)); truelight@9691: truebrain@9737: print(" RemoveWaterDepot(): " + AIMarine.RemoveWaterDepot(28479)); truebrain@9737: print(" RemoveDock(): " + AIMarine.RemoveDock(29253)); truebrain@9737: print(" RemoveBuoy(): " + AIMarine.RemoveBuoy(28481)); truebrain@9737: print(" RemoveLock(): " + AIMarine.RemoveLock(28487)); truebrain@9737: print(" RemoveCanal(): " + AIMarine.RemoveCanal(32127)); truebrain@9737: print(" IsWaterDepotTile(): " + AIMarine.IsWaterDepotTile(28479)); truebrain@9737: print(" IsDockTile(): " + AIMarine.IsDockTile(29253)); truebrain@9737: print(" IsBuoyTile(): " + AIMarine.IsBuoyTile(28481)); truebrain@9737: print(" IsLockTile(): " + AIMarine.IsLockTile(28487)); truebrain@9737: print(" IsCanalTile(): " + AIMarine.IsCanalTile(32127)); truebrain@9737: print(" GetBankBalance(): " + AICompany.GetBankBalance(AICompany.MY_COMPANY)); truelight@9691: truebrain@9737: print(" BuildWaterDepot(): " + AIMarine.BuildWaterDepot(28479, false)); truebrain@9737: print(" BuildDock(): " + AIMarine.BuildDock(29253)); truelight@9691: } truelight@9691: truelight@9546: function Regression::Order() truelight@9546: { truelight@9546: print(""); truelight@9546: print("--Order--"); truebrain@9737: print(" GetNumberOfOrders(): " + AIOrder.GetNumberOfOrders(11)); truebrain@9737: print(" GetOrderDestination(): " + AIOrder.GetOrderDestination(11, 1)); truebrain@9737: print(" AreOrderFlagsValid(): " + AIOrder.AreOrderFlagsValid(33416, AIOrder.AIOF_TRANSFER)); truebrain@9737: print(" IsValidVehicleOrder(): " + AIOrder.IsValidVehicleOrder(11, 1)); truebrain@9737: print(" GetOrderFlags(): " + AIOrder.GetOrderFlags(11, 1)); truebrain@9737: print(" AppendOrder(): " + AIOrder.AppendOrder(11, 33416, AIOrder.AIOF_TRANSFER)); truebrain@9737: print(" InsertOrder(): " + AIOrder.InsertOrder(11, 0, 33416, AIOrder.AIOF_TRANSFER)); truebrain@9737: print(" GetNumberOfOrders(): " + AIOrder.GetNumberOfOrders(11)); truebrain@9737: print(" IsValidVehicleOrder(): " + AIOrder.IsValidVehicleOrder(11, 1)); truebrain@9737: print(" RemoveOrder(): " + AIOrder.RemoveOrder(11, 0)); truebrain@9737: print(" ChangeOrder(): " + AIOrder.ChangeOrder(11, 0, AIOrder.AIOF_FULL_LOAD)); truebrain@9737: print(" GetOrderDestination(): " + AIOrder.GetOrderDestination(11, 0)); truebrain@9737: print(" CopyOrders(): " + AIOrder.CopyOrders(11, 1)); truebrain@9737: print(" CopyOrders(): " + AIOrder.CopyOrders(12, 11)); truebrain@9737: print(" ShareOrders(): " + AIOrder.ShareOrders(12, 1)); truebrain@9737: print(" ShareOrders(): " + AIOrder.ShareOrders(12, 11)); truebrain@9737: print(" UnshareOrders(): " + AIOrder.UnshareOrders(12)); truebrain@9737: print(" AppendOrder(): " + AIOrder.AppendOrder(11, 33421, AIOrder.AIOF_NONE)); truelight@9645: truebrain@9745: local list = AIStationList_Vehicle(11); truelight@9645: truelight@9645: print(""); truebrain@9745: print("--StationList_Vehicle--"); truelight@9645: print(" Count(): " + list.Count()); truebrain@9814: list.Valuate(AIStation.GetLocation); truelight@9645: print(" Location ListDump:"); truelight@9645: for (local i = list.Begin(); list.HasNext(); i = list.Next()) { truelight@9645: print(" " + i + " => " + list.GetValue(i)); truelight@9645: } truebrain@9814: list.Valuate(AIStation.GetCargoWaiting, 0); truelight@9645: print(" CargoWaiting(0) ListDump:"); truelight@9645: for (local i = list.Begin(); list.HasNext(); i = list.Next()) { truelight@9645: print(" " + i + " => " + list.GetValue(i)); truelight@9645: } truebrain@9814: list.Valuate(AIStation.GetCargoWaiting, 1); truelight@9645: print(" CargoWaiting(1) ListDump:"); truelight@9645: for (local i = list.Begin(); list.HasNext(); i = list.Next()) { truelight@9645: print(" " + i + " => " + list.GetValue(i)); truelight@9645: } truebrain@9814: list.Valuate(AIStation.GetCargoRating, 1); truelight@9648: print(" CargoRating(1) ListDump:"); truelight@9648: for (local i = list.Begin(); list.HasNext(); i = list.Next()) { truelight@9648: print(" " + i + " => " + list.GetValue(i)); truelight@9648: } truebrain@9814: list.Valuate(AIStation.GetDistanceManhattanToTile, 30000); truelight@9655: print(" DistanceManhattanToTile(30000) ListDump:"); truelight@9655: for (local i = list.Begin(); list.HasNext(); i = list.Next()) { truelight@9655: print(" " + i + " => " + list.GetValue(i)); truelight@9655: } truebrain@9814: list.Valuate(AIStation.GetDistanceSquareToTile, 30000); truelight@9655: print(" DistanceSquareToTile(30000) ListDump:"); truelight@9655: for (local i = list.Begin(); list.HasNext(); i = list.Next()) { truelight@9655: print(" " + i + " => " + list.GetValue(i)); truelight@9655: } truebrain@10361: list.Valuate(AIStation.IsWithinTownInfluence, 0); truebrain@10361: print(" IsWithinTownInfluence(0) ListDump:"); truebrain@10360: for (local i = list.Begin(); list.HasNext(); i = list.Next()) { truebrain@10360: print(" " + i + " => " + list.GetValue(i)); truebrain@10360: } truelight@9647: truebrain@9745: list = AIVehicleList_Station(3); truelight@9647: truelight@9647: print(""); truebrain@9745: print("--VehicleList_Station--"); truelight@9647: print(" Count(): " + list.Count()); truebrain@9814: list.Valuate(AIVehicle.GetLocation); truelight@9647: print(" Location ListDump:"); truelight@9647: for (local i = list.Begin(); list.HasNext(); i = list.Next()) { truelight@9647: print(" " + i + " => " + list.GetValue(i)); truelight@9647: } truelight@9546: } truelight@9546: truelight@9485: function Regression::Road() truelight@9485: { truelight@9485: print(""); truelight@9485: print("--Road--"); truelight@9485: print(" Road"); truebrain@9737: print(" IsRoadTile(): " + AIRoad.IsRoadTile(33411)); truebrain@9737: print(" BuildRoad(): " + AIRoad.BuildRoad(0, 1)); truebrain@9737: print(" BuildRoad(): " + AIRoad.BuildRoad(33411, 33411)); truebrain@9737: print(" BuildRoad(): " + AIRoad.BuildRoad(33411, 33414)); truebrain@9737: print(" AreRoadTilesConnected(): " + AIRoad.AreRoadTilesConnected(33412, 33413)); truebrain@9737: print(" IsRoadTile(): " + AIRoad.IsRoadTile(33411)); truebrain@10668: print(" HasRoadType(Road): " + AIRoad.HasRoadType(33411, AIRoad.ROADTYPE_ROAD)); truebrain@10668: print(" HasRoadType(Tram): " + AIRoad.HasRoadType(33411, AIRoad.ROADTYPE_TRAM)); truebrain@9737: print(" GetNeighbourRoadCount(): " + AIRoad.GetNeighbourRoadCount(33412)); truebrain@9737: print(" RemoveRoad(): " + AIRoad.RemoveRoad(33411, 33411)); truebrain@9737: print(" RemoveRoad(): " + AIRoad.RemoveRoad(33411, 33412)); truebrain@9737: print(" RemoveRoad(): " + AIRoad.RemoveRoad(19590, 19590)); truebrain@10668: print(" IsRoadTypeAvailable(Road): " + AIRoad.IsRoadTypeAvailable(AIRoad.ROADTYPE_ROAD)); truebrain@10668: print(" IsRoadTypeAvailable(Tram): " + AIRoad.IsRoadTypeAvailable(AIRoad.ROADTYPE_TRAM)); truebrain@10668: print(" SetCurrentRoadType(Tram): " + AIRoad.SetCurrentRoadType(AIRoad.ROADTYPE_TRAM)); truebrain@10668: print(" GetCurrentRoadType(): " + AIRoad.GetCurrentRoadType()); truelight@9485: truelight@9485: print(" Depot"); truebrain@9737: print(" IsRoadTile(): " + AIRoad.IsRoadTile(33411)); truebrain@9737: print(" BuildRoadDepot(): " + AIRoad.BuildRoadDepot(0, 1)); truebrain@9737: print(" BuildRoadDepot(): " + AIRoad.BuildRoadDepot(33411, 33411)); truebrain@9737: print(" BuildRoadDepot(): " + AIRoad.BuildRoadDepot(33411, 33414)); truebrain@9737: print(" BuildRoadDepot(): " + AIRoad.BuildRoadDepot(33411, 33412)); truebrain@10668: print(" HasRoadType(Road): " + AIRoad.HasRoadType(33411, AIRoad.ROADTYPE_ROAD)); truebrain@10668: print(" HasRoadType(Tram): " + AIRoad.HasRoadType(33411, AIRoad.ROADTYPE_TRAM)); truebrain@9844: print(" GetLastError(): " + AIError.GetLastError()); truebrain@9844: print(" GetLastErrorString(): " + AIError.GetLastErrorString()); truebrain@9844: print(" GetErrorCategory(): " + AIError.GetErrorCategory()); truebrain@9737: print(" IsRoadTile(): " + AIRoad.IsRoadTile(33411)); truebrain@9737: print(" GetRoadDepotFrontTile(): " + AIRoad.GetRoadDepotFrontTile(33411)); truebrain@9737: print(" IsRoadDepotTile(): " + AIRoad.IsRoadDepotTile(33411)); truebrain@9769: print(" IsBuildable(): " + AITile.IsBuildable(33411)); truebrain@9737: print(" RemoveRoadDepot(): " + AIRoad.RemoveRoadDepot(33411)); truebrain@9737: print(" RemoveRoadDepot(): " + AIRoad.RemoveRoadDepot(33411)); truelight@9485: truelight@9485: print(" Station"); truebrain@9737: print(" IsRoadTile(): " + AIRoad.IsRoadTile(33411)); truebrain@9737: print(" BuildRoadStation(): " + AIRoad.BuildRoadStation(0, 1, false, false)); truebrain@9737: print(" BuildRoadStation(): " + AIRoad.BuildRoadStation(33411, 33411, false, false)); truebrain@9737: print(" BuildRoadStation(): " + AIRoad.BuildRoadStation(33411, 33414, false, false)); truebrain@9737: print(" BuildRoadStation(): " + AIRoad.BuildRoadStation(33411, 33412, false, false)); truebrain@10668: print(" HasRoadType(Road): " + AIRoad.HasRoadType(33411, AIRoad.ROADTYPE_ROAD)); truebrain@10668: print(" HasRoadType(Tram): " + AIRoad.HasRoadType(33411, AIRoad.ROADTYPE_TRAM)); truebrain@9737: print(" IsRoadTile(): " + AIRoad.IsRoadTile(33411)); truebrain@9737: print(" GetDriveThroughBackTile(): " + AIRoad.GetDriveThroughBackTile(33411)); truebrain@9737: print(" GetRoadStationFrontTile(): " + AIRoad.GetRoadStationFrontTile(33411)); truebrain@9737: print(" IsRoadStationTile(): " + AIRoad.IsRoadStationTile(33411)); truebrain@9737: print(" IsDriveThroughRoadStationTile: " + AIRoad.IsDriveThroughRoadStationTile(33411)); truebrain@9737: print(" RemoveRoadStation(): " + AIRoad.RemoveRoadStation(33411)); truebrain@9737: print(" RemoveRoadStation(): " + AIRoad.RemoveRoadStation(33411)); truelight@9485: truelight@9485: print(" Station Types"); truebrain@9737: print(" BuildRoadStation(bus): " + AIRoad.BuildRoadStation(33411, 33410, false, false)); truebrain@9737: print(" BuildRoadStation(truck): " + AIRoad.BuildRoadStation(33421, 33422, true, false)); truebrain@9737: print(" BuildRoadStation(truck): " + AIRoad.BuildRoadStation(33412, 33413, true, false)); truebrain@9737: print(" BuildRoadStation(bus): " + AIRoad.BuildRoadStation(33411 + 256, 33411, false, false)); truebrain@9737: print(" BuildRoadStation(truck): " + AIRoad.BuildRoadStation(33412 + 256, 33412 + 256 + 256, true, false)); truebrain@9737: print(" BuildRoadStation(bus-drive): " + AIRoad.BuildRoadStation(33413, 33412, false, true)); truebrain@9737: print(" BuildRoadStation(truck-drive): " + AIRoad.BuildRoadStation(33414, 33413, true, true)); truebrain@9737: print(" BuildRoadStation(bus-drive): " + AIRoad.BuildRoadStation(33415, 33414, false, true)); truebrain@9737: print(" BuildRoadStation(truck-drive): " + AIRoad.BuildRoadStation(33416, 33415, true, true)); truebrain@9737: print(" BuildRoadDepot(): " + AIRoad.BuildRoadDepot(33417, 33418)); truebrain@9737: print(" GetRoadStationFrontTile(): " + AIRoad.GetRoadStationFrontTile(33411 + 256)); truebrain@9737: print(" GetRoadStationFrontTile(): " + AIRoad.GetRoadStationFrontTile(33412 + 256)); truebrain@9737: print(" IsDriveThroughRoadStationTile: " + AIRoad.IsDriveThroughRoadStationTile(33415)); truebrain@9769: print(" IsBuildable(): " + AITile.IsBuildable(33415)); truebrain@9737: print(" GetDriveThroughBackTile(): " + AIRoad.GetDriveThroughBackTile(33415)); truebrain@9737: print(" GetRoadStationFrontTile(): " + AIRoad.GetRoadStationFrontTile(33415)); truebrain@9737: print(" IsRoadTile(): " + AIRoad.IsRoadTile(33415)); truelight@9485: } truelight@9485: rubidium@9511: function Regression::Sign() rubidium@9511: { rubidium@9511: local j = 0; rubidium@9511: rubidium@9511: print(""); rubidium@9511: print("--Sign--"); truebrain@9737: print(" BuildSign(33410, 'Some Sign'): " + AISign.BuildSign(33410, "Some Sign")); truebrain@9737: local AISign_id = AISign.BuildSign(33409, "Some other Sign"); truebrain@9737: print(" BuildSign(33409, 'Some other Sign'): " + AISign_id); truebrain@9737: print(" RemoveSign(" + AISign_id + "): " + AISign.RemoveSign(AISign_id)); rubidium@9511: print(""); truebrain@9737: print(" GetMaxSignID(): " + AISign.GetMaxSignID()); truebrain@9737: for (local i = -1; i < AISign.GetMaxSignID() + 1; i++) { truebrain@9737: if (AISign.IsValidSign(i)) j++; rubidium@9511: print(" Sign " + i); truebrain@9737: print(" IsValidSign(): " + AISign.IsValidSign(i)); truebrain@9737: print(" GetText(): " + AISign.GetText(i)); truebrain@9737: print(" GetLocation(): " + AISign.GetLocation(i)); rubidium@9511: } rubidium@9511: print(" Valid Signs: " + j); rubidium@9511: } rubidium@9511: truelight@9638: function Regression::Station() truelight@9638: { truelight@9638: print(""); truelight@9638: print("--Station--"); truebrain@9737: print(" IsValidStation(0): " + AIStation.IsValidStation(0)); truebrain@9737: print(" IsValidStation(1000): " + AIStation.IsValidStation(1000)); truebrain@9737: print(" GetName(0): " + AIStation.GetName(0)); truebrain@10381: print(" SetName(0): " + AIStation.SetName(0, "Look, a station")); truebrain@10381: print(" GetName(0): " + AIStation.GetName(0)); truebrain@9737: print(" GetLocation(1): " + AIStation.GetLocation(1)); truebrain@9737: print(" GetLocation(1000): " + AIStation.GetLocation(1000)); truebrain@9737: print(" GetStationID(33411): " + AIStation.GetStationID(33411)); truebrain@9737: print(" GetStationID(34411): " + AIStation.GetStationID(34411)); truebrain@9737: print(" GetCargoWaiting(0, 0): " + AIStation.GetCargoWaiting(0, 0)); truebrain@9737: print(" GetCargoWaiting(1000, 0): " + AIStation.GetCargoWaiting(1000, 0)); truebrain@9737: print(" GetCargoWaiting(0, 1000): " + AIStation.GetCargoWaiting(0, 1000)); truelight@9638: truebrain@10668: print(" GetStationID(33411): " + AIStation.GetStationID(33411)); truebrain@10668: print(" HasRoadType(3, TRAM): " + AIStation.HasRoadType(3, AIRoad.ROADTYPE_TRAM)); truebrain@10668: print(" HasRoadType(3, ROAD): " + AIStation.HasRoadType(3, AIRoad.ROADTYPE_ROAD)); truebrain@10668: print(" HasRoadType(33411, TRAM): " + AIRoad.HasRoadType(33411, AIRoad.ROADTYPE_TRAM)); truebrain@10668: print(" HasRoadType(33411, ROAD): " + AIRoad.HasRoadType(33411, AIRoad.ROADTYPE_ROAD)); truebrain@10668: truebrain@9737: print(" GetCoverageRadius(bus): " + AIStation.GetCoverageRadius(AIStation.STATION_BUS_STOP)); truebrain@9737: print(" GetCoverageRadius(truck): " + AIStation.GetCoverageRadius(AIStation.STATION_TRUCK_STOP)); truebrain@9737: print(" GetCoverageRadius(train): " + AIStation.GetCoverageRadius(AIStation.STATION_TRAIN)); truelight@9670: truelight@9670: local list = AIStationList(AIStation.STATION_BUS_STOP + AIStation.STATION_TRUCK_STOP); truelight@9638: truelight@9638: print(""); truelight@9638: print("--StationList--"); truelight@9638: print(" Count(): " + list.Count()); truebrain@9814: list.Valuate(AIStation.GetLocation); truelight@9638: print(" Location ListDump:"); truelight@9638: for (local i = list.Begin(); list.HasNext(); i = list.Next()) { truelight@9638: print(" " + i + " => " + list.GetValue(i)); truelight@9638: } truebrain@9814: list.Valuate(AIStation.GetCargoWaiting, 0); truelight@9638: print(" CargoWaiting(0) ListDump:"); truelight@9638: for (local i = list.Begin(); list.HasNext(); i = list.Next()) { truelight@9638: print(" " + i + " => " + list.GetValue(i)); truelight@9638: } truebrain@9814: list.Valuate(AIStation.GetCargoWaiting, 1); truelight@9638: print(" CargoWaiting(1) ListDump:"); truelight@9638: for (local i = list.Begin(); list.HasNext(); i = list.Next()) { truelight@9638: print(" " + i + " => " + list.GetValue(i)); truelight@9638: } truelight@9638: } truelight@9638: truelight@9592: function Regression::TileList() truelight@9592: { truelight@9592: local list = AITileList(); truelight@9592: truelight@9592: print(""); truelight@9592: print("--TileList--"); truelight@9592: print(" Count(): " + list.Count()); truebrain@10191: list.AddRectangle(27631 - 256 * 1, 256 * 1 + 27631 + 2); truebrain@10191: print(" Count(): " + list.Count()); truebrain@10191: truebrain@10191: list.Valuate(AITile.GetSlope); truebrain@10191: print(" Slope(): done"); truebrain@10191: print(" Count(): " + list.Count()); truebrain@10191: print(" ListDump:"); truebrain@10191: for (local i = list.Begin(); list.HasNext(); i = list.Next()) { truebrain@10191: print(" " + i + " => " + list.GetValue(i)); truebrain@10191: print(" " + i + " => " + AITile.GetComplementSlope(list.GetValue(i))); truebrain@10191: print(" " + i + " => " + AITile.IsSteepSlope(list.GetValue(i))); truebrain@10191: print(" " + i + " => " + AITile.IsHalftileSlope(list.GetValue(i))); truebrain@10191: } truebrain@10191: list.Clear(); truebrain@10191: truebrain@10191: print(""); truebrain@10191: print("--TileList--"); truebrain@10191: print(" Count(): " + list.Count()); truelight@9605: list.AddRectangle(41895 - 256 * 2, 256 * 2 + 41895 + 8); truelight@9592: print(" Count(): " + list.Count()); truelight@9609: truebrain@9814: list.Valuate(AITile.GetHeight); truelight@9700: print(" Height(): done"); truelight@9700: print(" Count(): " + list.Count()); truelight@9700: print(" ListDump:"); truelight@9700: for (local i = list.Begin(); list.HasNext(); i = list.Next()) { truelight@9700: print(" " + i + " => " + list.GetValue(i)); truelight@9700: } truelight@9700: truebrain@9814: list.Valuate(AITile.GetSlope); truelight@9611: list.KeepValue(0); truelight@9611: print(" Slope(): done"); truelight@9611: print(" KeepValue(0): done"); truelight@9611: print(" Count(): " + list.Count()); truelight@9611: print(" ListDump:"); truelight@9611: for (local i = list.Begin(); list.HasNext(); i = list.Next()) { truelight@9611: print(" " + i + " => " + list.GetValue(i)); truelight@9611: } truelight@9611: truebrain@9814: list.Valuate(AITile.IsBuildable); truelight@9592: list.KeepValue(1); truelight@9605: print(" Buildable(): done"); truelight@9609: print(" KeepValue(1): done"); truelight@9605: print(" Count(): " + list.Count()); truelight@9609: truebrain@9814: list.Valuate(AITile.IsBuildableRectangle, 3, 3); truelight@9657: print(" BuildableRectangle(3, 3) ListDump:"); truelight@9657: for (local i = list.Begin(); list.HasNext(); i = list.Next()) { truelight@9657: print(" " + i + " => " + list.GetValue(i)); truelight@9657: } truebrain@9814: list.Valuate(AITile.GetDistanceManhattanToTile, 30000); truelight@9655: print(" DistanceManhattanToTile(30000) ListDump:"); truelight@9655: for (local i = list.Begin(); list.HasNext(); i = list.Next()) { truelight@9655: print(" " + i + " => " + list.GetValue(i)); truelight@9655: } truebrain@9814: list.Valuate(AITile.GetDistanceSquareToTile, 30000); truelight@9655: print(" DistanceSquareToTile(30000) ListDump:"); truelight@9655: for (local i = list.Begin(); list.HasNext(); i = list.Next()) { truelight@9655: print(" " + i + " => " + list.GetValue(i)); truelight@9655: } truebrain@10360: list.Valuate(AITile.GetOwner); truebrain@10360: print(" GetOwner() ListDump:"); truebrain@10360: for (local i = list.Begin(); list.HasNext(); i = list.Next()) { truebrain@10360: print(" " + i + " => " + list.GetValue(i)); truebrain@10360: } truelight@9655: truebrain@9814: list.Valuate(AITile.GetCargoAcceptance, 0, 1, 1, 3); truelight@9609: list.KeepAboveValue(10); truelight@9609: print(" CargoAcceptance(): done"); truelight@9609: print(" KeepAboveValue(10): done"); truelight@9609: print(" Count(): " + list.Count()); truelight@9609: print(" ListDump:"); truelight@9609: for (local i = list.Begin(); list.HasNext(); i = list.Next()) { truelight@9609: print(" " + i + " => " + list.GetValue(i)); truelight@9609: } truelight@9609: truebrain@9814: list.Valuate(AIRoad.IsRoadTile); truelight@9605: list.KeepValue(1); truelight@9605: print(" RoadTile(): done"); truelight@9609: print(" KeepValue(1): done"); truelight@9605: print(" Count(): " + list.Count()); truelight@9609: print(" ListDump:"); truelight@9609: for (local i = list.Begin(); list.HasNext(); i = list.Next()) { truelight@9609: print(" " + i + " => " + list.GetValue(i)); truelight@9609: } truelight@9609: truebrain@9814: list.Valuate(AIRoad.GetNeighbourRoadCount); truelight@9605: list.KeepValue(1); truelight@9617: print(" NeighbourRoadCount():done"); truelight@9609: print(" KeepValue(1): done"); truelight@9592: print(" Count(): " + list.Count()); truelight@9592: print(" ListDump:"); truelight@9592: for (local i = list.Begin(); list.HasNext(); i = list.Next()) { truelight@9592: print(" " + i + " => " + list.GetValue(i)); truelight@9592: } truelight@9698: truelight@9698: list.AddRectangle(54421 - 256 * 2, 256 * 2 + 54421 + 8); truebrain@9814: list.Valuate(AITile.IsWater); truelight@9698: print(" Water(): done"); truelight@9698: print(" Count(): " + list.Count()); truelight@9698: print(" ListDump:"); truelight@9698: for (local i = list.Begin(); list.HasNext(); i = list.Next()) { truelight@9698: print(" " + i + " => " + list.GetValue(i)); truelight@9698: } truebrain@9758: truebrain@9758: local list = AITileList_IndustryAccepting(0, 3); truebrain@9758: print(""); truebrain@9758: print("--TileList_IndustryAccepting--"); truebrain@9758: print(" Count(): " + list.Count()); truebrain@9814: list.Valuate(AITile.GetCargoAcceptance, 3, 1, 1, 3); truebrain@9758: print(" Location ListDump:"); truebrain@9758: for (local i = list.Begin(); list.HasNext(); i = list.Next()) { truebrain@9758: print(" " + i + " => " + list.GetValue(i)); truebrain@9758: } truebrain@9758: truebrain@9758: local list = AITileList_IndustryProducing(1, 3); truebrain@9758: print(""); truebrain@9758: print("--TileList_IndustryProducing--"); truebrain@9758: print(" Count(): " + list.Count()); truebrain@9814: list.Valuate(AITile.GetCargoProduction, 7, 1, 1, 3); truebrain@9758: print(" Location ListDump:"); truebrain@9758: for (local i = list.Begin(); list.HasNext(); i = list.Next()) { truebrain@9758: print(" " + i + " => " + list.GetValue(i)); truebrain@9758: } truelight@9592: } truelight@9592: truelight@9460: function Regression::Town() truelight@9460: { truelight@9460: local j = 0; truelight@9460: truelight@9460: print(""); truelight@9460: print("--Town--"); truebrain@9737: print(" GetMaxTownID(): " + AITown.GetMaxTownID()); truebrain@9737: print(" GetTownCount(): " + AITown.GetTownCount()); truebrain@9737: for (local i = -1; i < AITown.GetMaxTownID() + 1; i++) { truebrain@9737: if (AITown.IsValidTown(i)) j++; truelight@9460: print(" Town " + i); truebrain@9737: print(" IsValidTown(): " + AITown.IsValidTown(i)); truebrain@9737: print(" GetName(): " + AITown.GetName(i)); truebrain@9737: print(" GetPopulation(): " + AITown.GetPopulation(i)); truebrain@9737: print(" GetLocation(): " + AITown.GetLocation(i)); truelight@9460: } rubidium@9511: print(" Valid Towns: " + j); truebrain@9737: print(" GetTownCount(): " + AITown.GetTownCount()); truelight@9460: } truelight@9460: truelight@9589: function Regression::TownList() truelight@9589: { truelight@9589: local list = AITownList(); truelight@9589: truelight@9589: print(""); truelight@9589: print("--TownList--"); truelight@9589: print(" Count(): " + list.Count()); truebrain@9814: list.Valuate(AITown.GetLocation); truelight@9649: print(" Location ListDump:"); truelight@9649: for (local i = list.Begin(); list.HasNext(); i = list.Next()) { truelight@9649: print(" " + i + " => " + list.GetValue(i)); truelight@9649: } truebrain@9814: list.Valuate(AITown.GetDistanceManhattanToTile, 30000); truelight@9655: print(" DistanceManhattanToTile(30000) ListDump:"); truelight@9655: for (local i = list.Begin(); list.HasNext(); i = list.Next()) { truelight@9655: print(" " + i + " => " + list.GetValue(i)); truelight@9655: } truebrain@9814: list.Valuate(AITown.GetDistanceSquareToTile, 30000); truelight@9655: print(" DistanceSquareToTile(30000) ListDump:"); truelight@9655: for (local i = list.Begin(); list.HasNext(); i = list.Next()) { truelight@9655: print(" " + i + " => " + list.GetValue(i)); truelight@9655: } truebrain@10361: list.Valuate(AITown.IsWithinTownInfluence, AITown.GetLocation(0)); truebrain@10361: print(" IsWithinTownInfluence(" + AITown.GetLocation(0) + ") ListDump:"); truebrain@10360: for (local i = list.Begin(); list.HasNext(); i = list.Next()) { truebrain@10360: print(" " + i + " => " + list.GetValue(i)); truebrain@10360: } truebrain@9814: list.Valuate(AITown.GetPopulation); truelight@9589: list.KeepAboveValue(500); truelight@9589: print(" KeepAboveValue(500): done"); truelight@9589: print(" Count(): " + list.Count()); truelight@9649: print(" Population ListDump:"); truelight@9589: for (local i = list.Begin(); list.HasNext(); i = list.Next()) { truelight@9589: print(" " + i + " => " + list.GetValue(i)); truelight@9589: } truelight@9589: } truelight@9589: truebrain@9794: function Regression::Tunnel() truebrain@9794: { truebrain@9794: print(" IsTunnelTile(): " + AITunnel.IsTunnelTile(29050)); truebrain@9794: print(" RemoveTunnel(): " + AITunnel.RemoveTunnel(29050)); truebrain@9807: print(" GetOtherTunnelEnd(): " + AITunnel.GetOtherTunnelEnd(29050)); truebrain@9794: print(" BuildTunnel(): " + AITunnel.BuildTunnel(AIVehicle.VEHICLE_ROAD, 29050)); truebrain@9807: print(" GetOtherTunnelEnd(): " + AITunnel.GetOtherTunnelEnd(29050)); truebrain@9794: print(" IsTunnelTile(): " + AITunnel.IsTunnelTile(29050)); truebrain@9807: print(" IsTunnelTile(): " + AITunnel.IsTunnelTile(28026)); truebrain@9794: print(" RemoveTunnel(): " + AITunnel.RemoveTunnel(29050)); truebrain@9794: print(" IsTunnelTile(): " + AITunnel.IsTunnelTile(29050)); rubidium@10088: rubidium@10088: print(" --Errors--"); rubidium@10088: print(" BuildTunnel(): " + AITunnel.BuildTunnel(AIVehicle.VEHICLE_ROAD, 7529)); rubidium@10088: print(" BuildTunnel(): " + AITunnel.BuildTunnel(AIVehicle.VEHICLE_ROAD, 8043)); rubidium@10088: print(" GetLastErrorString(): " + AIError.GetLastErrorString()); rubidium@10088: print(" RemoveTunnel(): " + AITunnel.RemoveTunnel(7529)); truebrain@9794: } truebrain@9794: truelight@9518: function Regression::Vehicle() truelight@9518: { truelight@9557: local accounting = AIAccounting(); truelight@9518: truelight@9518: print(""); truelight@9518: print("--Vehicle--"); truebrain@9737: print(" IsValidVehicle(-1): " + AIVehicle.IsValidVehicle(-1)); truebrain@9737: print(" IsValidVehicle(0): " + AIVehicle.IsValidVehicle(0)); truebrain@9737: print(" IsValidVehicle(11): " + AIVehicle.IsValidVehicle(11)); truebrain@9737: print(" ISValidVehicle(9999): " + AIVehicle.IsValidVehicle(9999)); truelight@9518: truebrain@9737: local bank = AICompany.GetBankBalance(AICompany.MY_COMPANY); truelight@9557: truelight@9560: { truelight@9560: local transaction = AITransactionMode(); truebrain@9737: print(" BuildVehicle(): " + AIVehicle.BuildVehicle(33417, 153)); truebrain@9737: print(" IsValidVehicle(11): " + AIVehicle.IsValidVehicle(11)); truelight@9560: truelight@9560: print(" --Transaction--"); truelight@9560: print(" GetCosts(): " + transaction.GetCosts()); truelight@9560: print(" Execute(): " + transaction.Execute()); truelight@9560: truebrain@9737: print(" IsValidVehicle(11): " + AIVehicle.IsValidVehicle(11)); truelight@9560: } truebrain@9737: print(" CloneVehicle(): " + AIVehicle.CloneVehicle(33417, 11, true)); truelight@9557: truebrain@9737: local bank_after = AICompany.GetBankBalance(AICompany.MY_COMPANY); truelight@9557: truelight@9557: print(" --Accounting--"); truelight@9557: print(" GetCosts(): " + accounting.GetCosts()); truelight@9557: print(" Should be: " + (bank - bank_after)); truelight@9557: print(" ResetCosts(): " + accounting.ResetCosts()); truelight@9557: truebrain@9737: bank = AICompany.GetBankBalance(AICompany.MY_COMPANY); truelight@9557: truebrain@9737: print(" SellVehicle(12): " + AIVehicle.SellVehicle(12)); truebrain@9737: print(" IsInDepot(): " + AIVehicle.IsInDepot(11)); truebrain@9737: print(" IsStoppedInDepot(): " + AIVehicle.IsStoppedInDepot(11)); truebrain@9737: print(" StartStopVehicle(): " + AIVehicle.StartStopVehicle(11)); truebrain@9737: print(" IsInDepot(): " + AIVehicle.IsInDepot(11)); truebrain@9737: print(" IsStoppedInDepot(): " + AIVehicle.IsStoppedInDepot(11)); truebrain@9737: print(" SendVehicleToDepot(): " + AIVehicle.SendVehicleToDepot(11)); truebrain@9737: print(" IsInDepot(): " + AIVehicle.IsInDepot(11)); truebrain@9737: print(" IsStoppedInDepot(): " + AIVehicle.IsStoppedInDepot(11)); truelight@9557: truebrain@9737: bank_after = AICompany.GetBankBalance(AICompany.MY_COMPANY); truelight@9557: truelight@9557: print(" --Accounting--"); truelight@9557: print(" GetCosts(): " + accounting.GetCosts()); truelight@9557: print(" Should be: " + (bank - bank_after)); truelight@9557: truebrain@9737: print(" GetName(): " + AIVehicle.GetName(11)); truebrain@9737: print(" SetName(): " + AIVehicle.SetName(11, "MyVehicleName")); truebrain@9737: print(" GetName(): " + AIVehicle.GetName(11)); truebrain@9737: print(" CloneVehicle(): " + AIVehicle.CloneVehicle(33417, 11, true)); truelight@9614: truelight@9615: print(" --VehicleData--"); truebrain@9737: print(" GetLocation(): " + AIVehicle.GetLocation(11)); truebrain@9737: print(" GetEngineType(): " + AIVehicle.GetEngineType(11)); truebrain@9737: print(" GetUnitNumber(): " + AIVehicle.GetUnitNumber(11)); truebrain@9737: print(" GetAge(): " + AIVehicle.GetAge(11)); truebrain@9737: print(" GetMaxAge(): " + AIVehicle.GetMaxAge(11)); truebrain@9737: print(" GetAgeLeft(): " + AIVehicle.GetAgeLeft(11)); truebrain@10187: print(" GetCurrentSpeed(): " + AIVehicle.GetCurrentSpeed(11)); truebrain@9737: print(" GetRunningCost(): " + AIVehicle.GetRunningCost(11)); truebrain@9737: print(" GetProfitThisYear(): " + AIVehicle.GetProfitThisYear(11)); truebrain@9737: print(" GetProfitLastYear(): " + AIVehicle.GetProfitLastYear(11)); truebrain@9737: print(" GetVehicleType(): " + AIVehicle.GetVehicleType(11)); truebrain@10668: print(" GetRoadType(): " + AIVehicle.GetRoadType(11)); truebrain@10193: print(" GetCapacity(): " + AIVehicle.GetCapacity(11, 10)); truebrain@10193: print(" GetCargoLoad(): " + AIVehicle.GetCargoLoad(11, 10)); truebrain@9737: print(" IsInDepot(): " + AIVehicle.IsInDepot(11)); truebrain@9737: print(" IsStoppedInDepot(): " + AIVehicle.IsStoppedInDepot(11)); truelight@9615: truebrain@10360: print(" GetOwner(): " + AITile.GetOwner(32119)); truebrain@9737: print(" BuildVehicle(): " + AIVehicle.BuildVehicle(32119, 219)); truebrain@9737: print(" IsValidVehicle(13): " + AIVehicle.IsValidVehicle(13)); truebrain@9737: print(" IsInDepot(13): " + AIVehicle.IsInDepot(13)); truebrain@9737: print(" IsStoppedInDepot(13): " + AIVehicle.IsStoppedInDepot(13)); truebrain@9737: print(" IsValidVehicle(14): " + AIVehicle.IsValidVehicle(14)); truebrain@9737: print(" IsInDepot(14): " + AIVehicle.IsInDepot(14)); truebrain@9737: print(" IsStoppedInDepot(14): " + AIVehicle.IsStoppedInDepot(14)); truelight@9691: truebrain@9737: print(" BuildVehicle(): " + AIVehicle.BuildVehicle(28479, 204)); truebrain@9737: print(" IsValidVehicle(15): " + AIVehicle.IsValidVehicle(15)); truebrain@9737: print(" IsInDepot(15): " + AIVehicle.IsInDepot(15)); truebrain@9737: print(" IsStoppedInDepot(15): " + AIVehicle.IsStoppedInDepot(15)); truelight@9654: truebrain@9874: print(" --Errors--"); truebrain@9874: print(" RefitVehicle(): " + AIVehicle.RefitVehicle(11, 0)); truebrain@9874: print(" GetLastErrorString(): " + AIError.GetLastErrorString()); truebrain@9874: print(" SellVehicle(): " + AIVehicle.SellVehicle(11)); truebrain@9874: print(" GetLastErrorString(): " + AIError.GetLastErrorString()); truebrain@9874: print(" SendVehicleToDepot(): " + AIVehicle.SendVehicleToDepot(12)); truebrain@9874: print(" GetLastErrorString(): " + AIError.GetLastErrorString()); truebrain@9874: truelight@9614: local list = AIVehicleList(); truelight@9614: truelight@9614: print(""); truelight@9614: print("--VehicleList--"); truelight@9614: print(" Count(): " + list.Count()); truebrain@9814: list.Valuate(AIVehicle.GetLocation); truelight@9614: print(" Location ListDump:"); truelight@9614: for (local i = list.Begin(); list.HasNext(); i = list.Next()) { truelight@9614: print(" " + i + " => " + list.GetValue(i)); truelight@9614: } truebrain@9814: list.Valuate(AIVehicle.GetEngineType); truelight@9614: print(" EngineType ListDump:"); truelight@9614: for (local i = list.Begin(); list.HasNext(); i = list.Next()) { truelight@9614: print(" " + i + " => " + list.GetValue(i)); truelight@9614: } truebrain@9814: list.Valuate(AIVehicle.GetUnitNumber); truelight@9614: print(" UnitNumber ListDump:"); truelight@9614: for (local i = list.Begin(); list.HasNext(); i = list.Next()) { truelight@9614: print(" " + i + " => " + list.GetValue(i)); truelight@9614: } truebrain@9814: list.Valuate(AIVehicle.GetAge); truelight@9614: print(" Age ListDump:"); truelight@9614: for (local i = list.Begin(); list.HasNext(); i = list.Next()) { truelight@9614: print(" " + i + " => " + list.GetValue(i)); truelight@9614: } truebrain@9814: list.Valuate(AIVehicle.GetMaxAge); truelight@9614: print(" MaxAge ListDump:"); truelight@9614: for (local i = list.Begin(); list.HasNext(); i = list.Next()) { truelight@9614: print(" " + i + " => " + list.GetValue(i)); truelight@9614: } truebrain@9814: list.Valuate(AIVehicle.GetAgeLeft); truelight@9614: print(" AgeLeft ListDump:"); truelight@9614: for (local i = list.Begin(); list.HasNext(); i = list.Next()) { truelight@9614: print(" " + i + " => " + list.GetValue(i)); truelight@9614: } truebrain@10187: list.Valuate(AIVehicle.GetCurrentSpeed); truebrain@10187: print(" CurrentSpeed ListDump:"); truebrain@10187: for (local i = list.Begin(); list.HasNext(); i = list.Next()) { truebrain@10187: print(" " + i + " => " + list.GetValue(i)); truebrain@10187: } truebrain@9814: list.Valuate(AIVehicle.GetRunningCost); truebrain@9806: print(" RunningCost ListDump:"); truebrain@9806: for (local i = list.Begin(); list.HasNext(); i = list.Next()) { truebrain@9806: print(" " + i + " => " + list.GetValue(i)); truebrain@9806: } truebrain@9814: list.Valuate(AIVehicle.GetProfitThisYear); truelight@9614: print(" ProfitThisYear ListDump:"); truelight@9614: for (local i = list.Begin(); list.HasNext(); i = list.Next()) { truelight@9614: print(" " + i + " => " + list.GetValue(i)); truelight@9614: } truebrain@9814: list.Valuate(AIVehicle.GetProfitLastYear); truelight@9614: print(" ProfitLastYear ListDump:"); truelight@9614: for (local i = list.Begin(); list.HasNext(); i = list.Next()) { truelight@9614: print(" " + i + " => " + list.GetValue(i)); truelight@9614: } truebrain@9814: list.Valuate(AIVehicle.GetVehicleType); truelight@9684: print(" VehicleType ListDump:"); truelight@9684: for (local i = list.Begin(); list.HasNext(); i = list.Next()) { truelight@9684: print(" " + i + " => " + list.GetValue(i)); truelight@9684: } truebrain@10668: list.Valuate(AIVehicle.GetRoadType); truebrain@10668: print(" RoadType ListDump:"); truebrain@10668: for (local i = list.Begin(); list.HasNext(); i = list.Next()) { truebrain@10668: print(" " + i + " => " + list.GetValue(i)); truebrain@10668: } truebrain@10193: list.Valuate(AIVehicle.GetCapacity, 10); truebrain@10193: print(" VehicleType ListDump:"); truebrain@10193: for (local i = list.Begin(); list.HasNext(); i = list.Next()) { truebrain@10193: print(" " + i + " => " + list.GetValue(i)); truebrain@10193: } truebrain@10193: list.Valuate(AIVehicle.GetCargoLoad, 10); truebrain@10193: print(" VehicleType ListDump:"); truebrain@10193: for (local i = list.Begin(); list.HasNext(); i = list.Next()) { truebrain@10193: print(" " + i + " => " + list.GetValue(i)); truebrain@10193: } truelight@9518: } truelight@9518: truebrain@10344: function Regression::PrintSubsidy(subsidy_id) truebrain@10344: { truebrain@10344: print(" --Subsidy (" + subsidy_id + ") --"); truebrain@10344: print(" IsValidSubsidy(): " + AISubsidy.IsValidSubsidy(subsidy_id)); truebrain@10344: print(" IsAwarded(): " + AISubsidy.IsAwarded(subsidy_id)); truebrain@10344: print(" GetAwardedTo(): " + AISubsidy.GetAwardedTo(subsidy_id)); truebrain@10344: print(" GetExpireDate(): " + AISubsidy.GetExpireDate(subsidy_id)); truebrain@10344: print(" SourceIsTown(): " + AISubsidy.SourceIsTown(subsidy_id)); truebrain@10344: print(" GetSource(): " + AISubsidy.GetSource(subsidy_id)); truebrain@10344: print(" DestionationIsTown(): " + AISubsidy.DestinationIsTown(subsidy_id)); truebrain@10344: print(" GetDestionation(): " + AISubsidy.GetDestination(subsidy_id)); truebrain@10344: print(" GetCargoType(): " + AISubsidy.GetCargoType(subsidy_id)); truebrain@10344: } truebrain@10344: truelight@9460: truelight@9460: function Regression::Start() truelight@9460: { truelight@9460: this.TestInit(); truelight@9487: this.Std(); truelight@9460: this.Base(); truelight@9691: this.List(); truelight@9654: this.Airport(); truebrain@9792: this.Bridge(); truebrain@9792: this.BridgeList(); truelight@9460: this.Cargo(); truebrain@9785: this.CargoList(); truelight@9460: this.Company(); truelight@9711: this.Engine(); truelight@9714: this.EngineList(); truelight@9682: this.Event(); truelight@9460: this.Industry(); truelight@9649: this.IndustryList(); truelight@9460: this.Map(); truelight@9691: this.Marine(); truelight@9485: this.Road(); rubidium@9511: this.Sign(); truelight@9638: this.Station(); truelight@9592: this.TileList(); truelight@9460: this.Town(); truelight@9589: this.TownList(); truebrain@9794: this.Tunnel(); truelight@9518: this.Vehicle(); truelight@9546: /* Order has to be after Vehicle */ truelight@9546: this.Order(); truebrain@10344: PrintSubsidy(0); truebrain@9823: truebrain@9823: /* Sleep now, to give time for events to happen */ truebrain@9823: Sleep(4000); truebrain@9823: truebrain@9823: while (AIEventController.IsEventWaiting()) { truebrain@9823: local e = AIEventController.GetNextEvent(); truebrain@9823: print(" GetNextEvent: " + (e == null ? "null" : "instance")); truebrain@9823: print(" GetEventType: " + e.GetEventType()); truebrain@9823: switch (e.GetEventType()) { rubidium@10086: case AIEvent.AI_ET_SUBSIDY_OFFER: rubidium@10086: local c = AIEventSubsidyOffer.Convert(e); rubidium@10086: print(" EventName: SubsidyOffer"); truebrain@10344: PrintSubsidy(c.GetSubsidyID()); truebrain@9823: break; truebrain@9823: truebrain@10370: case AIEvent.AI_ET_VEHICLE_WAITING_IN_DEPOT: truebrain@10370: local c = AIEventVehicleWaitingInDepot.Convert(e); truebrain@10370: print(" EventName: VehicleWaitingInDepot"); truebrain@10370: print(" VehicleID: " + c.GetVehicleID()); truebrain@10370: break; truebrain@10370: truebrain@9823: default: truebrain@9823: print(" Unknown Event"); truebrain@9823: break; truebrain@9823: } truebrain@9823: } truebrain@9823: print(" IsEventWaiting: false"); truelight@9460: } truelight@9460: truelight@9460: function Regression::Stop() truelight@9460: { truelight@9460: this.stop = true; truelight@9460: } truelight@9460: