src/ai/api/ai_pathfinder_stupid.hpp.sq
branchnoai
changeset 9831 634100485aca
parent 9830 506580e51cbb
child 9832 5a48d9234f15
equal deleted inserted replaced
9830:506580e51cbb 9831:634100485aca
     1 #include "ai_pathfinder_stupid.hpp"
       
     2 
       
     3 namespace SQConvert {
       
     4 	/* Allow AIPathFinderStupid to be used as Squirrel parameter */
       
     5 	template <> AIPathFinderStupid *GetParam(ForceType<AIPathFinderStupid *>, HSQUIRRELVM vm, int index) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return  (AIPathFinderStupid *)instance; }
       
     6 	template <> AIPathFinderStupid &GetParam(ForceType<AIPathFinderStupid &>, HSQUIRRELVM vm, int index) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return *(AIPathFinderStupid *)instance; }
       
     7 	template <> const AIPathFinderStupid *GetParam(ForceType<const AIPathFinderStupid *>, HSQUIRRELVM vm, int index) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return  (AIPathFinderStupid *)instance; }
       
     8 	template <> const AIPathFinderStupid &GetParam(ForceType<const AIPathFinderStupid &>, HSQUIRRELVM vm, int index) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return *(AIPathFinderStupid *)instance; }
       
     9 	template <> int Return<AIPathFinderStupid *>(HSQUIRRELVM vm, AIPathFinderStupid *res) { if (res == NULL) { sq_pushnull(vm); return 1; } res->AddRef(); Squirrel::CreateClassInstanceVM(vm, "AIPathFinderStupid", res, NULL, DefSQDestructorCallback<AIPathFinderStupid>); return 1; }
       
    10 }; // namespace SQConvert
       
    11 
       
    12 void SQAIPathFinderStupid_Register(Squirrel *engine) {
       
    13 	DefSQClass <AIPathFinderStupid> SQAIPathFinderStupid("AIPathFinderStupid");
       
    14 	SQAIPathFinderStupid.PreRegister(engine, "AIPathFinder");
       
    15 	SQAIPathFinderStupid.AddConstructor<void (AIPathFinderStupid::*)(AIPathFinder::PathFinderType type), 2>(engine, "xi");
       
    16 
       
    17 	SQAIPathFinderStupid.DefSQStaticMethod(engine, &AIPathFinderStupid::GetClassName, "GetClassName", 1, "x");
       
    18 
       
    19 	SQAIPathFinderStupid.DefSQMethod(engine, &AIPathFinderStupid::FindRoute,  "FindRoute",  3, "xxx");
       
    20 	SQAIPathFinderStupid.DefSQMethod(engine, &AIPathFinderStupid::BuildRoute, "BuildRoute", 2, "xp");
       
    21 	SQAIPathFinderStupid.DefSQMethod(engine, &AIPathFinderStupid::FreeRoute,  "FreeRoute",  2, "xp");
       
    22 
       
    23 	SQAIPathFinderStupid.PostRegister(engine);
       
    24 }