GTA Közösség - A magyar GTA fórum
Hatalmas Archívum => Fórum Archívum (Témák/Fórumok) => A témát indította: Csabiii - 2011. július 30. - 16:46:28
-
Helló elakadtam egy dialogal azt szeretném meg csinálni hogy ha valaki a szerveren be írja hogy /admins akkor azt dialogban irja ki nekem ami kodot most leirok abba benne van még a sima is hogy a chatba irja
[pawn]dcmd_admins(playerid,params[])
{
// Nem használjuk a params-ot
#pragma unused params
// Ugye a LADMINNAK 6 szintje van
// (0,1,2,3,4,5) + RCON
new sLevel[][]=
{
\"\"COL_WHITE\"Játékos\", // 0
\"\"COL_YELLOW\"V.I.P\", // 1
\"\"COL_ORANGE\"Próbaidõs Moderátor\", // 2
\"\"COL_LIGHTBLUE\"Moderátor\", // 3
\"\"COL_LGREEN\"Globális Moderátor\", // 4
\"\"COL_RED\"Adminisztrátor\" // 5
};
// Változók, tárolók
new iName[MAX_PLAYER_NAME],
iMax = 1,
iStr[128];
// Cím kiírása
SendClientMessage(playerid,green, \"[___Elérhetõ Adminisztrátorok____]\");
// Ciklus a játékosokon
for(new i = 0; i < GetMaxPlayers(); i++) if(IsPlayerConnected(i))
{
// Ha LADMIN / RCON admin
if(PlayerInfo[Level] > 0 || IsPlayerAdmin(i))
{
// Lekérjük a nevét
GetPlayerName(i,iName,sizeof(iName));
// Formázunk
format(iStr,sizeof(iStr),\"\"COL_WHITE\"%i. | %s | Id: %i | Szint: %i - %s\\n\",iMax,iName,i,PlayerInfo[Level],sLevel[PlayerInfo[Level]]);
ShowPlayerDialog(playerid,1130,DIALOG_STYLE_MSGBOX ,\"Adminok\",iStr,\"Rendben\",\"\");
// Kiírjuk az üzenetet
SendClientMessage(playerid,COLOR_LIGHTBLUE,iStr);
SendClientMessage(playerid,green, \" _______________________________________\");
// Növeljük a számlálást
iMax++;
}
}
// Ha nem volt admin
if(iMax < 2)
{
// Kiírjuk
SendClientMessage(playerid,COLOR_RED,\"Nincs jelenleg admin a szerveren!\");
SendClientMessage(playerid,green, \" _______________________________________\");
}
// Visszatérés
return 1;
}[/pawn]
ennél már ki írja de csak egy admint ir ki
-
pill
-
megtaláltam ez elég hülye kérdés volt most de nézem :)
-
Ennek Pedig jónak kell lennie nem látok benne hibát nemtudom hogy miért nem irja uj sorba :-[
-
Nincs tesztelve, nem akartam a változókat átnevezni.
A lényeg hogy egy nagyobb stringbe kell pakolni a sorokat és a legvégén megjeleníteni a dialogban.
[pawn]
dcmd_admins(playerid,params[])
{
#pragma unused params
new sLevel[][]=
{
\"\"COL_WHITE\"Játékos\", // 0
\"\"COL_YELLOW\"V.I.P\", // 1
\"\"COL_ORANGE\"Próbaidõs Moderátor\", // 2
\"\"COL_LIGHTBLUE\"Moderátor\", // 3
\"\"COL_LGREEN\"Globális Moderátor\", // 4
\"\"COL_RED\"Adminisztrátor\" // 5
};
new iName[MAX_PLAYER_NAME],
iMax = 1,
iStr[128],
Showstr[1024];
for(new i = 0, m = GetMaxPlayers(); i < m; i++) if(IsPlayerConnected(i))
{
if(PlayerInfo[Level] > 0 || IsPlayerAdmin(i))
{
GetPlayerName(i,iName,sizeof(iName));
format(iStr,sizeof(iStr),\"\"COL_WHITE\"%i. | %s | Id: %i | Szint: %i - %s\\n\",iMax,iName,i,PlayerInfo[Level],sLevel[PlayerInfo[Level]]);
strcat(Showstr, iStr);
SendClientMessage(playerid,COLOR_LIGHTBLUE,iStr);
iMax++;
}
}
if(iMax == 1)
SendClientMessage(playerid,COLOR_RED,\"Nincs jelenleg admin a szerveren!\");
else
ShowPlayerDialog(playerid,1130,DIALOG_STYLE_MSGBOX ,\"Adminok\",Showstr,\"Rendben\",\"\");
SendClientMessage(playerid,green, \" _______________________________________\");
return 1;
}
[/pawn]
Edit:
Most próbáld ki de még tesztelem amúgy csak észre vettem gyorsan egy hibát, és azt javítottam.
-
FAIL :D
beraktam beirtam hogy /admins és megállt a szerver :D
:D akkor csak kell tesztelnem egy kis türelem.
-
Próbáld ki újra javítottam rajt kicsit.
-
A fenti kódot mivel lehet módosítani a hozzá szólást és ezt megtettem feljebb.