3 |
3 |
4 #include "ai_town.hpp" |
4 #include "ai_town.hpp" |
5 |
5 |
6 namespace SQConvert { |
6 namespace SQConvert { |
7 /* Allow AITown to be used as Squirrel parameter */ |
7 /* Allow AITown to be used as Squirrel parameter */ |
8 template <> AITown *GetParam(ForceType<AITown *>, HSQUIRRELVM vm, int index) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return (AITown *)instance; } |
8 template <> AITown *GetParam(ForceType<AITown *>, HSQUIRRELVM vm, int index, SQConvertedStrings *str) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return (AITown *)instance; } |
9 template <> AITown &GetParam(ForceType<AITown &>, HSQUIRRELVM vm, int index) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return *(AITown *)instance; } |
9 template <> AITown &GetParam(ForceType<AITown &>, HSQUIRRELVM vm, int index, SQConvertedStrings *str) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return *(AITown *)instance; } |
10 template <> const AITown *GetParam(ForceType<const AITown *>, HSQUIRRELVM vm, int index) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return (AITown *)instance; } |
10 template <> const AITown *GetParam(ForceType<const AITown *>, HSQUIRRELVM vm, int index, SQConvertedStrings *str) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return (AITown *)instance; } |
11 template <> const AITown &GetParam(ForceType<const AITown &>, HSQUIRRELVM vm, int index) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return *(AITown *)instance; } |
11 template <> const AITown &GetParam(ForceType<const AITown &>, HSQUIRRELVM vm, int index, SQConvertedStrings *str) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return *(AITown *)instance; } |
12 template <> int Return<AITown *>(HSQUIRRELVM vm, AITown *res) { if (res == NULL) { sq_pushnull(vm); return 1; } res->AddRef(); Squirrel::CreateClassInstanceVM(vm, "AITown", res, NULL, DefSQDestructorCallback<AITown>); return 1; } |
12 template <> int Return<AITown *>(HSQUIRRELVM vm, AITown *res) { if (res == NULL) { sq_pushnull(vm); return 1; } res->AddRef(); Squirrel::CreateClassInstanceVM(vm, "AITown", res, NULL, DefSQDestructorCallback<AITown>); return 1; } |
13 }; // namespace SQConvert |
13 }; // namespace SQConvert |
14 |
14 |
15 void SQAITown_Register(Squirrel *engine) { |
15 void SQAITown_Register(Squirrel *engine) { |
16 DefSQClass <AITown> SQAITown("AITown"); |
16 DefSQClass <AITown> SQAITown("AITown"); |