1111#include " CLuaTeamDefs.h"
1212#include " CLuaGenericDefs.h"
1313#include " CStaticFunctionDefinitions.h"
14- #include " CGame.h"
1514#include < lua/CLuaFunctionParser.h>
1615
1716void CLuaTeamDefs::LoadFunctions ()
@@ -68,17 +67,14 @@ void CLuaTeamDefs::AddClass(lua_State* luaVM)
6867
6968std::variant<CTeam*, bool > CLuaTeamDefs::CreateTeam (lua_State* lua, const std::string_view name, const std::uint8_t red, const std::uint8_t green, const std::uint8_t blue) noexcept
7069{
71- CLuaMain* vm = g_pGame->GetLuaManager ()->GetVirtualMachine (lua);
72- 73- if (!vm)
74- return false ;
75- 76- CResource* resource = vm->GetResource ();
70+ CLuaMain& vm = lua_getownercluamain (lua);
71+ CResource* resource = vm.GetResource ();
7772
7873 if (!resource)
7974 return false ;
8075
81- CTeam* team = CStaticFunctionDefinitions::CreateTeam (resource, name.data (), red, green, blue);
76+ std::string string (name);
77+ CTeam* team = CStaticFunctionDefinitions::CreateTeam (resource, string.c_str (), red, green, blue);
8278
8379 if (!team)
8480 return false ;
@@ -93,15 +89,16 @@ std::variant<CTeam*, bool> CLuaTeamDefs::CreateTeam(lua_State* lua, const std::s
9389
9490std::variant<CTeam*, bool > CLuaTeamDefs::GetTeamFromName (const std::string_view name) noexcept
9591{
96- CTeam* team = m_pTeamManager->GetTeam (name.data ());
92+ std::string string (name);
93+ CTeam* team = m_pTeamManager->GetTeam (string.c_str ());
9794
9895 if (!team)
9996 return false ;
10097
10198 return team;
10299}
103100
104- std::string CLuaTeamDefs::GetTeamName (CTeam* team)noexcept
101+ std::string CLuaTeamDefs::GetTeamName (CTeam* team)
105102{
106103 return team->GetTeamName ();
107104}
@@ -122,7 +119,7 @@ bool CLuaTeamDefs::GetTeamFriendlyFire(CTeam* team) noexcept
122119 return team->GetFriendlyFire ();
123120}
124121
125- std::vector<CPlayer*> CLuaTeamDefs::GetPlayersInTeam (CTeam* team)noexcept
122+ std::vector<CPlayer*> CLuaTeamDefs::GetPlayersInTeam (CTeam* team)
126123{
127124 return team->GetPlayers ();
128125}
0 commit comments