rubidium@9596: #include "ai_townlist_valuator.hpp" rubidium@9596: rubidium@9596: namespace SQConvert { truelight@9660: /* Allow AITownListRandomize to be used as Squirrel parameter */ truelight@9660: template <> AITownListRandomize *GetParam(ForceType, HSQUIRRELVM vm, int index) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return (AITownListRandomize *)instance; } truelight@9660: template <> AITownListRandomize &GetParam(ForceType, HSQUIRRELVM vm, int index) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return *(AITownListRandomize *)instance; } truelight@9660: template <> const AITownListRandomize *GetParam(ForceType, HSQUIRRELVM vm, int index) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return (AITownListRandomize *)instance; } truelight@9660: template <> const AITownListRandomize &GetParam(ForceType, HSQUIRRELVM vm, int index) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return *(AITownListRandomize *)instance; } truelight@9680: template <> int Return(HSQUIRRELVM vm, AITownListRandomize *res) { if (res == NULL) { sq_pushnull(vm); return 1; } res->AddRef(); Squirrel::CreateClassInstanceVM(vm, "AITownListRandomize", res, NULL, DefSQDestructorCallback); return 1; } truelight@9660: }; // namespace SQConvert truelight@9660: truelight@9660: void SQAITownListRandomizeRegister(Squirrel *engine) { truelight@9660: DefSQClass SQAITownListRandomize("AITownListRandomize"); truelight@9660: SQAITownListRandomize.PreRegister(engine); truelight@9660: SQAITownListRandomize.AddConstructor(engine, "x"); truelight@9660: truelight@9660: SQAITownListRandomize.DefSQStaticMethod(engine, &AITownListRandomize::GetClassName, "GetClassName", 1, "x"); truelight@9660: truelight@9660: SQAITownListRandomize.PostRegister(engine); truelight@9660: } truelight@9660: truelight@9660: namespace SQConvert { truelight@9616: /* Allow AITownListPopulation to be used as Squirrel parameter */ truelight@9616: template <> AITownListPopulation *GetParam(ForceType, HSQUIRRELVM vm, int index) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return (AITownListPopulation *)instance; } truelight@9616: template <> AITownListPopulation &GetParam(ForceType, HSQUIRRELVM vm, int index) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return *(AITownListPopulation *)instance; } truelight@9616: template <> const AITownListPopulation *GetParam(ForceType, HSQUIRRELVM vm, int index) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return (AITownListPopulation *)instance; } truelight@9616: template <> const AITownListPopulation &GetParam(ForceType, HSQUIRRELVM vm, int index) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return *(AITownListPopulation *)instance; } truelight@9680: template <> int Return(HSQUIRRELVM vm, AITownListPopulation *res) { if (res == NULL) { sq_pushnull(vm); return 1; } res->AddRef(); Squirrel::CreateClassInstanceVM(vm, "AITownListPopulation", res, NULL, DefSQDestructorCallback); return 1; } rubidium@9596: }; // namespace SQConvert rubidium@9596: truelight@9616: void SQAITownListPopulationRegister(Squirrel *engine) { truelight@9616: DefSQClass SQAITownListPopulation("AITownListPopulation"); truelight@9616: SQAITownListPopulation.PreRegister(engine); truelight@9635: SQAITownListPopulation.AddConstructor(engine, "x"); rubidium@9596: truelight@9616: SQAITownListPopulation.DefSQStaticMethod(engine, &AITownListPopulation::GetClassName, "GetClassName", 1, "x"); rubidium@9596: truelight@9616: SQAITownListPopulation.PostRegister(engine); rubidium@9596: } rubidium@9596: rubidium@9596: namespace SQConvert { truelight@9616: /* Allow AITownListLocation to be used as Squirrel parameter */ truelight@9616: template <> AITownListLocation *GetParam(ForceType, HSQUIRRELVM vm, int index) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return (AITownListLocation *)instance; } truelight@9616: template <> AITownListLocation &GetParam(ForceType, HSQUIRRELVM vm, int index) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return *(AITownListLocation *)instance; } truelight@9616: template <> const AITownListLocation *GetParam(ForceType, HSQUIRRELVM vm, int index) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return (AITownListLocation *)instance; } truelight@9616: template <> const AITownListLocation &GetParam(ForceType, HSQUIRRELVM vm, int index) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return *(AITownListLocation *)instance; } truelight@9680: template <> int Return(HSQUIRRELVM vm, AITownListLocation *res) { if (res == NULL) { sq_pushnull(vm); return 1; } res->AddRef(); Squirrel::CreateClassInstanceVM(vm, "AITownListLocation", res, NULL, DefSQDestructorCallback); return 1; } rubidium@9596: }; // namespace SQConvert rubidium@9596: truelight@9616: void SQAITownListLocationRegister(Squirrel *engine) { truelight@9616: DefSQClass SQAITownListLocation("AITownListLocation"); truelight@9616: SQAITownListLocation.PreRegister(engine); truelight@9635: SQAITownListLocation.AddConstructor(engine, "x"); rubidium@9596: truelight@9616: SQAITownListLocation.DefSQStaticMethod(engine, &AITownListLocation::GetClassName, "GetClassName", 1, "x"); rubidium@9596: truelight@9616: SQAITownListLocation.PostRegister(engine); rubidium@9596: } truelight@9655: truelight@9655: namespace SQConvert { truelight@9655: /* Allow AITownListDistanceManhattanToTile to be used as Squirrel parameter */ truelight@9655: template <> AITownListDistanceManhattanToTile *GetParam(ForceType, HSQUIRRELVM vm, int index) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return (AITownListDistanceManhattanToTile *)instance; } truelight@9655: template <> AITownListDistanceManhattanToTile &GetParam(ForceType, HSQUIRRELVM vm, int index) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return *(AITownListDistanceManhattanToTile *)instance; } truelight@9655: template <> const AITownListDistanceManhattanToTile *GetParam(ForceType, HSQUIRRELVM vm, int index) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return (AITownListDistanceManhattanToTile *)instance; } truelight@9655: template <> const AITownListDistanceManhattanToTile &GetParam(ForceType, HSQUIRRELVM vm, int index) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return *(AITownListDistanceManhattanToTile *)instance; } truelight@9680: template <> int Return(HSQUIRRELVM vm, AITownListDistanceManhattanToTile *res) { if (res == NULL) { sq_pushnull(vm); return 1; } res->AddRef(); Squirrel::CreateClassInstanceVM(vm, "AITownListDistanceManhattanToTile", res, NULL, DefSQDestructorCallback); return 1; } truelight@9655: }; // namespace SQConvert truelight@9655: truelight@9655: void SQAITownListDistanceManhattanToTileRegister(Squirrel *engine) { truelight@9655: DefSQClass SQAITownListDistanceManhattanToTile("AITownListDistanceManhattanToTile"); truelight@9655: SQAITownListDistanceManhattanToTile.PreRegister(engine); truelight@9655: SQAITownListDistanceManhattanToTile.AddConstructor(engine, "xi"); truelight@9655: truelight@9655: SQAITownListDistanceManhattanToTile.DefSQStaticMethod(engine, &AITownListDistanceManhattanToTile::GetClassName, "GetClassName", 1, "x"); truelight@9655: truelight@9655: SQAITownListDistanceManhattanToTile.PostRegister(engine); truelight@9655: } truelight@9655: truelight@9655: namespace SQConvert { truelight@9655: /* Allow AITownListDistanceSquareToTile to be used as Squirrel parameter */ truelight@9655: template <> AITownListDistanceSquareToTile *GetParam(ForceType, HSQUIRRELVM vm, int index) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return (AITownListDistanceSquareToTile *)instance; } truelight@9655: template <> AITownListDistanceSquareToTile &GetParam(ForceType, HSQUIRRELVM vm, int index) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return *(AITownListDistanceSquareToTile *)instance; } truelight@9655: template <> const AITownListDistanceSquareToTile *GetParam(ForceType, HSQUIRRELVM vm, int index) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return (AITownListDistanceSquareToTile *)instance; } truelight@9655: template <> const AITownListDistanceSquareToTile &GetParam(ForceType, HSQUIRRELVM vm, int index) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return *(AITownListDistanceSquareToTile *)instance; } truelight@9680: template <> int Return(HSQUIRRELVM vm, AITownListDistanceSquareToTile *res) { if (res == NULL) { sq_pushnull(vm); return 1; } res->AddRef(); Squirrel::CreateClassInstanceVM(vm, "AITownListDistanceSquareToTile", res, NULL, DefSQDestructorCallback); return 1; } truelight@9655: }; // namespace SQConvert truelight@9655: truelight@9655: void SQAITownListDistanceSquareToTileRegister(Squirrel *engine) { truelight@9655: DefSQClass SQAITownListDistanceSquareToTile("AITownListDistanceSquareToTile"); truelight@9655: SQAITownListDistanceSquareToTile.PreRegister(engine); truelight@9655: SQAITownListDistanceSquareToTile.AddConstructor(engine, "xi"); truelight@9655: truelight@9655: SQAITownListDistanceSquareToTile.DefSQStaticMethod(engine, &AITownListDistanceSquareToTile::GetClassName, "GetClassName", 1, "x"); truelight@9655: truelight@9655: SQAITownListDistanceSquareToTile.PostRegister(engine); truelight@9655: }