Peršokti į turinį
Negalima prašyti ar platinti betkokių žaidimą (multiplayer) palengvinančių programų ir scriptų! Kitaip bus taikoma 1.21. taisyklė

[Script] Žaidėjo nick'o gavimas (kitoks)


aurimasko

Ši tema yra neaktyvi. Paskutinis pranešimas šioje temoje buvo prieš 3326 dienas (-ų). Patariame sukurti naują temą, o ne rašyti naują pranešimą.

Už neaktyvių temų prikėlimą galite sulaukti įspėjimo ir pranešimo pašalinimo!

Recommended Posts

new g_szPlayerName[MAX_PLAYERS][MAX_PLAYER_NAME];
 
// Į gamemode pradžia, virš OnGameModeInit
stock _SetPlayerName(playerid, const name[], len = MAX_PLAYER_NAME)
{
         new iRet = SetPlayerName(playerid, name, len);
        
         if(iRet == 1)
             GetPlayerName(playerid, g_szPlayerName[playerid], MAX_PLAYER_NAME);

         return iRet;
}
#if defined _ALS_SetPlayerName

    #undef SetPlayerName

#else

    #define _ALS_SetPlayerName

#endif

#define SetPlayerName _SetPlayerName
 
 
public OnPlayerConnect(playerid)
{
         GetPlayerName(playerid, g_szPlayerName[playerid], MAX_PLAYER_NAME);
         return 1;
 
}

Naudojimas:

new szMsg[46];
format(szMsg, sizeof(szMsg), "* Tavo vardas yra %s.", g_szPlayerName[playerid]);
SendClientMessage(playerid, -1, szMsg);

Mano žiniomis tai geras būdas žaidėjo vardui gauti. Jei kažkas blogai ar būdas netinkamas - pasakykit.

Redaguota , nario aurimasko
Nuoroda į komentarą
Dalintis per kitą puslapį

  • Parašė po 1 mėnesio...

Na mano būdas optimalesnis (nors tokiam panaudojime tai neturi reikšmės), be to, aš niekur nenaudoju SetPlayerName komandos, todėl jos net ir neredaguoju savo mode, tad man mano būdas patogesnis ir geresnis.

vtf, man its izi pizi

stock playerName( playerid ) {
	new 
		pName[ MAX_PLAYER_NAME+1 ] ;
	GetPlayerName( playerid, pName, MAX_PLAYER_NAME+1 ) ;
	return pName ;
}
Nuoroda į komentarą
Dalintis per kitą puslapį

Arba tiesiog:

new pName[MAX_PLAYERS][MAX_PLAYER_NAME];
public OnPlayerConnect(playerid) 
{
    GetPlayerName(pid, pName[playerid], MAX_PLAYER_NAME);
    return true;
}

ir naudoti tiesiog 

format(string, 24, "Tavo vardas: %s", pName[pid]);

Faktas, kad kelios eilutės serverį apkraus mažiau, nei funkcijos. :)

Redaguota , nario Bit
Nuoroda į komentarą
Dalintis per kitą puslapį

Ši tema yra neaktyvi. Paskutinis pranešimas šioje temoje buvo prieš 3326 dienas (-ų). Patariame sukurti naują temą, o ne rašyti naują pranešimą.

Už neaktyvių temų prikėlimą galite sulaukti įspėjimo ir pranešimo pašalinimo!

Prisijungti prie diskusijos

Palikti atsakymą galite iš karto, o užsiregistruoti vėliau. Jeigu jau turite paskyrą mūsų forume, Prisijunkite.

Svečias
Atsakyti šioje temoje...

×   Įklijuotas tekstas turi teksto formatavimą.   Pašalinti teksto formatavimą

  Galimi tik 75 veidukai.

×   Nuoroda buvo automatiškai įterpta.   Įterpti nuorodą paprastai

×   Jūsų ankstesnis pranešimas buvo atkurtas.   Išvalyti redaktorių

×   Jūs negalite įkelti nuotraukas tiesiogiai.Įkelkite arba įdėkite nuotraukas iš URL.

  • Šiame puslapyje naršo:   0 nariai

    • Nėra registruotų narių peržiūrinčių šį forumą.

Skelbimai


×
×
  • Sukurti naują...