diff options
author | yexo <yexo@openttd.org> | 2009-02-19 07:40:08 +0000 |
---|---|---|
committer | yexo <yexo@openttd.org> | 2009-02-19 07:40:08 +0000 |
commit | c0e7ddeb9ee8892103a1314dac25e0d7250e6af4 (patch) | |
tree | fa0d25f1d5a2c7fdfd64122bd10dc5ee7291d2fe /src/ai/api/ai_waypointlist.hpp.sq | |
parent | c2d9c85c0fbb26b5db2ef20b7ac610e63de2b46b (diff) | |
download | openttd-c0e7ddeb9ee8892103a1314dac25e0d7250e6af4.tar.xz |
(svn r15519) -Add [NoAI]: support for waypoints by adding AIRail::Build/Remove RailWaypoint, AIWaypoint and AIWaypointList.
Diffstat (limited to 'src/ai/api/ai_waypointlist.hpp.sq')
-rw-r--r-- | src/ai/api/ai_waypointlist.hpp.sq | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/src/ai/api/ai_waypointlist.hpp.sq b/src/ai/api/ai_waypointlist.hpp.sq new file mode 100644 index 000000000..f9ea80c65 --- /dev/null +++ b/src/ai/api/ai_waypointlist.hpp.sq @@ -0,0 +1,38 @@ +/* $Id$ */ +/* THIS FILE IS AUTO-GENERATED; PLEASE DO NOT ALTER MANUALLY */ + +#include "ai_waypointlist.hpp" + +namespace SQConvert { + /* Allow AIWaypointList to be used as Squirrel parameter */ + template <> AIWaypointList *GetParam(ForceType<AIWaypointList *>, HSQUIRRELVM vm, int index, SQAutoFreePointers *ptr) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return (AIWaypointList *)instance; } + template <> AIWaypointList &GetParam(ForceType<AIWaypointList &>, HSQUIRRELVM vm, int index, SQAutoFreePointers *ptr) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return *(AIWaypointList *)instance; } + template <> const AIWaypointList *GetParam(ForceType<const AIWaypointList *>, HSQUIRRELVM vm, int index, SQAutoFreePointers *ptr) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return (AIWaypointList *)instance; } + template <> const AIWaypointList &GetParam(ForceType<const AIWaypointList &>, HSQUIRRELVM vm, int index, SQAutoFreePointers *ptr) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return *(AIWaypointList *)instance; } + template <> int Return<AIWaypointList *>(HSQUIRRELVM vm, AIWaypointList *res) { if (res == NULL) { sq_pushnull(vm); return 1; } res->AddRef(); Squirrel::CreateClassInstanceVM(vm, "AIWaypointList", res, NULL, DefSQDestructorCallback<AIWaypointList>); return 1; } +}; // namespace SQConvert + +void SQAIWaypointList_Register(Squirrel *engine) { + DefSQClass <AIWaypointList> SQAIWaypointList("AIWaypointList"); + SQAIWaypointList.PreRegister(engine, "AIAbstractList"); + SQAIWaypointList.AddConstructor<void (AIWaypointList::*)(), 1>(engine, "x"); + + SQAIWaypointList.PostRegister(engine); +} + +namespace SQConvert { + /* Allow AIWaypointList_Vehicle to be used as Squirrel parameter */ + template <> AIWaypointList_Vehicle *GetParam(ForceType<AIWaypointList_Vehicle *>, HSQUIRRELVM vm, int index, SQAutoFreePointers *ptr) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return (AIWaypointList_Vehicle *)instance; } + template <> AIWaypointList_Vehicle &GetParam(ForceType<AIWaypointList_Vehicle &>, HSQUIRRELVM vm, int index, SQAutoFreePointers *ptr) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return *(AIWaypointList_Vehicle *)instance; } + template <> const AIWaypointList_Vehicle *GetParam(ForceType<const AIWaypointList_Vehicle *>, HSQUIRRELVM vm, int index, SQAutoFreePointers *ptr) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return (AIWaypointList_Vehicle *)instance; } + template <> const AIWaypointList_Vehicle &GetParam(ForceType<const AIWaypointList_Vehicle &>, HSQUIRRELVM vm, int index, SQAutoFreePointers *ptr) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return *(AIWaypointList_Vehicle *)instance; } + template <> int Return<AIWaypointList_Vehicle *>(HSQUIRRELVM vm, AIWaypointList_Vehicle *res) { if (res == NULL) { sq_pushnull(vm); return 1; } res->AddRef(); Squirrel::CreateClassInstanceVM(vm, "AIWaypointList_Vehicle", res, NULL, DefSQDestructorCallback<AIWaypointList_Vehicle>); return 1; } +}; // namespace SQConvert + +void SQAIWaypointList_Vehicle_Register(Squirrel *engine) { + DefSQClass <AIWaypointList_Vehicle> SQAIWaypointList_Vehicle("AIWaypointList_Vehicle"); + SQAIWaypointList_Vehicle.PreRegister(engine, "AIAbstractList"); + SQAIWaypointList_Vehicle.AddConstructor<void (AIWaypointList_Vehicle::*)(VehicleID vehicle_id), 2>(engine, "xi"); + + SQAIWaypointList_Vehicle.PostRegister(engine); +} |