Add: [Scripts] "_typeof" metamethod

This commit is contained in:
glx22
2025-02-17 16:39:14 +01:00
committed by Loïc Guilloux
parent 35e58f68e4
commit d7bd67cda3
6 changed files with 16 additions and 19 deletions
+2 -4
View File
@@ -25,10 +25,7 @@ static bool CheckAPIVersion(const std::string &api_version)
return std::ranges::find(GameInfo::ApiVersions, api_version) != std::end(GameInfo::ApiVersions);
}
#if defined(_WIN32)
#undef GetClassName
#endif /* _WIN32 */
template <> const char *GetClassName<GameInfo, ScriptType::GS>() { return "GSInfo"; }
template <> SQInteger PushClassName<GameInfo, ScriptType::GS>(HSQUIRRELVM vm) { sq_pushstring(vm, "GSInfo", -1); return 1; }
/* static */ void GameInfo::RegisterAPI(Squirrel *engine)
{
@@ -36,6 +33,7 @@ template <> const char *GetClassName<GameInfo, ScriptType::GS>() { return "GSInf
DefSQClass<GameInfo, ScriptType::GS> SQGSInfo("GSInfo");
SQGSInfo.PreRegister(engine);
SQGSInfo.AddConstructor<void (GameInfo::*)(), 1>(engine, "x");
SQGSInfo.DefSQAdvancedStaticMethod(engine, &PushClassName<GameInfo, ScriptType::GS>, "_typeof");
SQGSInfo.DefSQAdvancedMethod(engine, &GameInfo::AddSetting, "AddSetting");
SQGSInfo.DefSQAdvancedMethod(engine, &GameInfo::AddLabels, "AddLabels");
SQGSInfo.DefSQConst(engine, SCRIPTCONFIG_NONE, "CONFIG_NONE");