mirror of https://github.com/OpenTTD/OpenTTD
(svn r16585) -Add [NoAI]: AIBuoyList to get a list of all buoys
parent
121a569125
commit
d09d3566dd
|
@ -804,6 +804,16 @@ function Regression::Marine()
|
||||||
print(" IsCanalTile(): " + AIMarine.IsCanalTile(32127));
|
print(" IsCanalTile(): " + AIMarine.IsCanalTile(32127));
|
||||||
print(" GetBankBalance(): " + AICompany.GetBankBalance(AICompany.COMPANY_SELF));
|
print(" GetBankBalance(): " + AICompany.GetBankBalance(AICompany.COMPANY_SELF));
|
||||||
|
|
||||||
|
local list = AIBuoyList();
|
||||||
|
print("");
|
||||||
|
print("--AIBuoyList--");
|
||||||
|
print(" Count(): " + list.Count());
|
||||||
|
print(" Location ListDump:");
|
||||||
|
for (local i = list.Begin(); list.HasNext(); i = list.Next()) {
|
||||||
|
print(" " + i);
|
||||||
|
}
|
||||||
|
print("");
|
||||||
|
|
||||||
print(" RemoveWaterDepot(): " + AIMarine.RemoveWaterDepot(28479));
|
print(" RemoveWaterDepot(): " + AIMarine.RemoveWaterDepot(28479));
|
||||||
print(" RemoveDock(): " + AIMarine.RemoveDock(29253));
|
print(" RemoveDock(): " + AIMarine.RemoveDock(29253));
|
||||||
print(" RemoveBuoy(): " + AIMarine.RemoveBuoy(28481));
|
print(" RemoveBuoy(): " + AIMarine.RemoveBuoy(28481));
|
||||||
|
|
|
@ -7088,6 +7088,12 @@
|
||||||
IsLockTile(): true
|
IsLockTile(): true
|
||||||
IsCanalTile(): true
|
IsCanalTile(): true
|
||||||
GetBankBalance(): 805063
|
GetBankBalance(): 805063
|
||||||
|
|
||||||
|
--AIBuoyList--
|
||||||
|
Count(): 1
|
||||||
|
Location ListDump:
|
||||||
|
28481
|
||||||
|
|
||||||
RemoveWaterDepot(): true
|
RemoveWaterDepot(): true
|
||||||
RemoveDock(): true
|
RemoveDock(): true
|
||||||
RemoveBuoy(): true
|
RemoveBuoy(): true
|
||||||
|
|
|
@ -2587,6 +2587,10 @@
|
||||||
RelativePath=".\..\src\ai\api\ai_bridgelist.hpp"
|
RelativePath=".\..\src\ai\api\ai_bridgelist.hpp"
|
||||||
>
|
>
|
||||||
</File>
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath=".\..\src\ai\api\ai_buoylist.hpp"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
<File
|
<File
|
||||||
RelativePath=".\..\src\ai\api\ai_cargo.hpp"
|
RelativePath=".\..\src\ai\api\ai_cargo.hpp"
|
||||||
>
|
>
|
||||||
|
@ -2795,6 +2799,10 @@
|
||||||
RelativePath=".\..\src\ai\api\ai_bridgelist.cpp"
|
RelativePath=".\..\src\ai\api\ai_bridgelist.cpp"
|
||||||
>
|
>
|
||||||
</File>
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath=".\..\src\ai\api\ai_buoylist.cpp"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
<File
|
<File
|
||||||
RelativePath=".\..\src\ai\api\ai_cargo.cpp"
|
RelativePath=".\..\src\ai\api\ai_cargo.cpp"
|
||||||
>
|
>
|
||||||
|
|
|
@ -2584,6 +2584,10 @@
|
||||||
RelativePath=".\..\src\ai\api\ai_bridgelist.hpp"
|
RelativePath=".\..\src\ai\api\ai_bridgelist.hpp"
|
||||||
>
|
>
|
||||||
</File>
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath=".\..\src\ai\api\ai_buoylist.hpp"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
<File
|
<File
|
||||||
RelativePath=".\..\src\ai\api\ai_cargo.hpp"
|
RelativePath=".\..\src\ai\api\ai_cargo.hpp"
|
||||||
>
|
>
|
||||||
|
@ -2792,6 +2796,10 @@
|
||||||
RelativePath=".\..\src\ai\api\ai_bridgelist.cpp"
|
RelativePath=".\..\src\ai\api\ai_bridgelist.cpp"
|
||||||
>
|
>
|
||||||
</File>
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath=".\..\src\ai\api\ai_buoylist.cpp"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
<File
|
<File
|
||||||
RelativePath=".\..\src\ai\api\ai_cargo.cpp"
|
RelativePath=".\..\src\ai\api\ai_cargo.cpp"
|
||||||
>
|
>
|
||||||
|
|
|
@ -602,6 +602,7 @@ ai/api/ai_airport.hpp
|
||||||
ai/api/ai_base.hpp
|
ai/api/ai_base.hpp
|
||||||
ai/api/ai_bridge.hpp
|
ai/api/ai_bridge.hpp
|
||||||
ai/api/ai_bridgelist.hpp
|
ai/api/ai_bridgelist.hpp
|
||||||
|
ai/api/ai_buoylist.hpp
|
||||||
ai/api/ai_cargo.hpp
|
ai/api/ai_cargo.hpp
|
||||||
ai/api/ai_cargolist.hpp
|
ai/api/ai_cargolist.hpp
|
||||||
ai/api/ai_company.hpp
|
ai/api/ai_company.hpp
|
||||||
|
@ -655,6 +656,7 @@ ai/api/ai_airport.cpp
|
||||||
ai/api/ai_base.cpp
|
ai/api/ai_base.cpp
|
||||||
ai/api/ai_bridge.cpp
|
ai/api/ai_bridge.cpp
|
||||||
ai/api/ai_bridgelist.cpp
|
ai/api/ai_bridgelist.cpp
|
||||||
|
ai/api/ai_buoylist.cpp
|
||||||
ai/api/ai_cargo.cpp
|
ai/api/ai_cargo.cpp
|
||||||
ai/api/ai_cargolist.cpp
|
ai/api/ai_cargolist.cpp
|
||||||
ai/api/ai_company.cpp
|
ai/api/ai_company.cpp
|
||||||
|
|
|
@ -32,6 +32,7 @@
|
||||||
#include "api/ai_base.hpp.sq"
|
#include "api/ai_base.hpp.sq"
|
||||||
#include "api/ai_bridge.hpp.sq"
|
#include "api/ai_bridge.hpp.sq"
|
||||||
#include "api/ai_bridgelist.hpp.sq"
|
#include "api/ai_bridgelist.hpp.sq"
|
||||||
|
#include "api/ai_buoylist.hpp.sq"
|
||||||
#include "api/ai_cargo.hpp.sq"
|
#include "api/ai_cargo.hpp.sq"
|
||||||
#include "api/ai_cargolist.hpp.sq"
|
#include "api/ai_cargolist.hpp.sq"
|
||||||
#include "api/ai_company.hpp.sq"
|
#include "api/ai_company.hpp.sq"
|
||||||
|
@ -163,6 +164,7 @@ void AIInstance::RegisterAPI()
|
||||||
SQAIBridge_Register(this->engine);
|
SQAIBridge_Register(this->engine);
|
||||||
SQAIBridgeList_Register(this->engine);
|
SQAIBridgeList_Register(this->engine);
|
||||||
SQAIBridgeList_Length_Register(this->engine);
|
SQAIBridgeList_Length_Register(this->engine);
|
||||||
|
SQAIBuoyList_Register(this->engine);
|
||||||
SQAICargo_Register(this->engine);
|
SQAICargo_Register(this->engine);
|
||||||
SQAICargoList_Register(this->engine);
|
SQAICargoList_Register(this->engine);
|
||||||
SQAICargoList_IndustryAccepting_Register(this->engine);
|
SQAICargoList_IndustryAccepting_Register(this->engine);
|
||||||
|
|
|
@ -0,0 +1,14 @@
|
||||||
|
/* $Id$ */
|
||||||
|
|
||||||
|
/** @file ai_buoylist.cpp Implementation of AIBuoyList and friends. */
|
||||||
|
|
||||||
|
#include "ai_buoylist.hpp"
|
||||||
|
#include "../../station_base.h"
|
||||||
|
|
||||||
|
AIBuoyList::AIBuoyList()
|
||||||
|
{
|
||||||
|
Station *st;
|
||||||
|
FOR_ALL_STATIONS(st) {
|
||||||
|
if (st->IsBuoy()) this->AddItem(st->xy);
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,21 @@
|
||||||
|
/* $Id$ */
|
||||||
|
|
||||||
|
/** @file ai_buoylist.hpp List all the buoys. */
|
||||||
|
|
||||||
|
#ifndef AI_BUOYLIST_HPP
|
||||||
|
#define AI_BUOYLIST_HPP
|
||||||
|
|
||||||
|
#include "ai_abstractlist.hpp"
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Creates a list of buoys.
|
||||||
|
* @ingroup AIList
|
||||||
|
*/
|
||||||
|
class AIBuoyList : public AIAbstractList {
|
||||||
|
public:
|
||||||
|
static const char *GetClassName() { return "AIBuoyList"; }
|
||||||
|
AIBuoyList();
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
#endif /* AI_BUOYLIST_HPP */
|
|
@ -0,0 +1,21 @@
|
||||||
|
/* $Id$ */
|
||||||
|
/* THIS FILE IS AUTO-GENERATED; PLEASE DO NOT ALTER MANUALLY */
|
||||||
|
|
||||||
|
#include "ai_buoylist.hpp"
|
||||||
|
|
||||||
|
namespace SQConvert {
|
||||||
|
/* Allow AIBuoyList to be used as Squirrel parameter */
|
||||||
|
template <> AIBuoyList *GetParam(ForceType<AIBuoyList *>, HSQUIRRELVM vm, int index, SQAutoFreePointers *ptr) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return (AIBuoyList *)instance; }
|
||||||
|
template <> AIBuoyList &GetParam(ForceType<AIBuoyList &>, HSQUIRRELVM vm, int index, SQAutoFreePointers *ptr) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return *(AIBuoyList *)instance; }
|
||||||
|
template <> const AIBuoyList *GetParam(ForceType<const AIBuoyList *>, HSQUIRRELVM vm, int index, SQAutoFreePointers *ptr) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return (AIBuoyList *)instance; }
|
||||||
|
template <> const AIBuoyList &GetParam(ForceType<const AIBuoyList &>, HSQUIRRELVM vm, int index, SQAutoFreePointers *ptr) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return *(AIBuoyList *)instance; }
|
||||||
|
template <> int Return<AIBuoyList *>(HSQUIRRELVM vm, AIBuoyList *res) { if (res == NULL) { sq_pushnull(vm); return 1; } res->AddRef(); Squirrel::CreateClassInstanceVM(vm, "AIBuoyList", res, NULL, DefSQDestructorCallback<AIBuoyList>); return 1; }
|
||||||
|
}; // namespace SQConvert
|
||||||
|
|
||||||
|
void SQAIBuoyList_Register(Squirrel *engine) {
|
||||||
|
DefSQClass <AIBuoyList> SQAIBuoyList("AIBuoyList");
|
||||||
|
SQAIBuoyList.PreRegister(engine, "AIAbstractList");
|
||||||
|
SQAIBuoyList.AddConstructor<void (AIBuoyList::*)(), 1>(engine, "x");
|
||||||
|
|
||||||
|
SQAIBuoyList.PostRegister(engine);
|
||||||
|
}
|
Loading…
Reference in New Issue