예제 #1
0
int CLuaPlayerDefs::GetPlayerNametagText(lua_State* luaVM)
{
    //  string getPlayerNametagText ( player thePlayer )
    CClientPlayer* pPlayer;

    CScriptArgReader argStream(luaVM);
    argStream.ReadUserData(pPlayer);

    if (!argStream.HasErrors())
    {
        // Grab his nametag text and return it
        const char* szName = pPlayer->GetNametagText();
        if (szName)
        {
            lua_pushstring(luaVM, szName);
            return 1;
        }
    }
    else
        m_pScriptDebugging->LogCustom(luaVM, argStream.GetFullErrorMessage());

    // Failed
    lua_pushboolean(luaVM, false);
    return 1;
}
예제 #2
0
void CClient::GetPlayerNames(std::vector<SString>& vPlayerNames)
{
    if (g_pClientGame)
    {
        vPlayerNames.clear();
        for (std::vector<CClientPlayer*>::const_iterator iter = g_pClientGame->GetPlayerManager()->IterBegin();
             iter != g_pClientGame->GetPlayerManager()->IterEnd(); ++iter)
        {
            CClientPlayer* pClient = *iter;
            SString        strPlayerName = pClient->GetNametagText();
            vPlayerNames.push_back(strPlayerName);
        }
    }
}