Szerző Téma: strcmp hasznalat segitseg  (Megtekintve 918 alkalommal)

strcmp hasznalat segitseg
« Dátum: 2012. augusztus 28. - 20:07:03 »
0 Show voters
Hello.Ismét akadt egy kis gondom.
az strcmp nél akadtam le.
Akarok egy olyan cuccot csinálni hogy tiltott nevek.
A tiltott neveket meg csináltam így:
 

new TiltottNevek[][]={
\"név1\",
\"név2\",
\"név3\"
};

 
A kérdés egyszerû, viszont a választ még nem tudom rá.
Hogyan tudom azt meg csinálni hogy ha a játékos neve egyenlõ ezekkel a nevekkel.
Próbáltam több féle képpen, de sehogy sem mûködik.
 

new PlayerName[MAX_PLAYER_NAME];
GetPlayerName(playerid, PlayerName, sizeof(PlayerName));
if(!strcmp(TiltottNevek<valami>,PlayerName,true)) {
}

 
Ezt kéne kiegészíteni.
« Utoljára szerkesztve: 2012. augusztus 28. - 21:35:58 írta XDarkStormX »

Nem elérhető nyE

  • 1745
    • Profil megtekintése
strcmp hasznalat segitseg
« Válasz #1 Dátum: 2012. augusztus 28. - 20:24:42 »
+1 Show voters
LuxAdminban így van, talán ez segít.
 
new BlockedNames[100][100],
BlockedNamesCount = 0;
if(ServerInfo[NameKick] == 1)
{
for(new s = 0; s < BlockedNamesCount; s++)
{
           if(!strcmp(BlockedNames,PlayerName,true))
   {
   SendClientMessage(playerid,red, \"ATTENTION: Your name is on our Black List, you have been Kicked.\");
   format(string,sizeof(string),\"|- Player %s (Id:%d) has been Automatically Kicked. | Reason: Forbidden Name -|\",PlayerName,playerid);
   SendClientMessageToAll(red, string);
   print(string);
   SaveIn(\"KickLog\",string);
   Kick(playerid);
   return 1;
   }
}
}

strcmp hasznalat segitseg
« Válasz #2 Dátum: 2012. augusztus 28. - 20:38:07 »
0 Show voters
Nekem is LuxAdmin van, viszont ezt akarom tudni.Utána néztem itt is.De ezt nem értem.
 
BlockedNames[100][100]

 
a blockednames ot nem tudom hol veszi át a tiltott neveket.
De ha elmagyaráznád, akk lehet megérteném

Nem elérhető Rupert

  • 2301
    • Profil megtekintése
strcmp hasznalat segitseg
« Válasz #3 Dátum: 2012. augusztus 28. - 20:49:48 »
+1 Show voters
Tehát nézzük.. adott egy tömb teli nevekkel.
Azokon végig kell lépegetnünk, pl. a for ciklussal. A te esetedben így néz ki:
 

new PlayerName[MAX_PLAYER_NAME];
GetPlayerName(playerid, PlayerName, sizeof(PlayerName));
for(new i;i<sizeof(TiltottNevek);i++)
{
if(!strcmp(TiltottNevek,PlayerName,true)) return Kick(playerid);
}

strcmp hasznalat segitseg
« Válasz #4 Dátum: 2012. augusztus 28. - 21:35:44 »
0 Show voters
Áh értem.Kössz.Megy a +.

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal