Balkan SA:MP

PAWN skriptanje, gamemodovi, filterskripte, include fajlovi, mape, pluginovi => Razgovor u vezi PAWN - skriptanja => Temu započeo: Shaw Salcedo poslato Januar 28, 2015, 18:50:34 POSLE PODNE

Naslov: [Pomoc]Admini
Poruka od: Shaw Salcedo poslato Januar 28, 2015, 18:50:34 POSLE PODNE
Skripta koju koristim: Bm
Detaljan opis problema:Kako da napravim kada igrac ukuca /admini da mu izbaci dialog Lista online i lista svih i tako i za helpere :D
PS. Sory nisam video
Dio skripte:
Neke slike/video za lakse dobivanje pomoci(neobavezno):
Naslov: Odg: [Pomoc]Admini
Poruka od: ▂ ▃ ▅ Rudimental ▅ ▃ ▂ poslato Januar 28, 2015, 18:57:55 POSLE PODNE
Sredi taj formular kako treba po pravilima inace ide lock !
Naslov: Odg: [Pomoc]Admini
Poruka od: Shaw Salcedo poslato Januar 28, 2015, 18:59:10 POSLE PODNE
Eto
Naslov: Odg: [Pomoc]Admini
Poruka od: ▂ ▃ ▅ Rudimental ▅ ▃ ▂ poslato Januar 28, 2015, 19:04:18 POSLE PODNE
E sada se seti onog za lidere sto smo radili pa uradi na taj fazon samo varijable izmenis i text gde treba ...
Naslov: Odg: [Pomoc]Admini
Poruka od: arnel avdic poslato Januar 28, 2015, 19:05:10 POSLE PODNE
ovo je meni više postalo glupo trazite pomoć nit znamo level admina ,kakva vam je skripta,niti enume ,ništa ne znam tek tako meni treba cmd lista admina i to je to brale, morate se malo služiti googlom , šta mislite kako sam ja naučio , pa pitaj me šta god zelis napravit cu ti , ali ovako jbg-a , malo strpljenja trebate ja sam ucio godinu dana , prvo sam krenuo sa preimenovanjem moda, pa malo uredjivanje citao samp wiki , to se ne radi preko noci ljudi .. pokušaj izvuci iz nekog moda hajd i prilagodi svojim enumima

Naslov: Odg: [Pomoc]Admini
Poruka od: Shaw Salcedo poslato Januar 29, 2015, 15:05:10 POSLE PODNE
Ja sam uzeo sa LastStepa i editovao sam i ne izbacuje errore ja kucam admini i izbaci mi onaj dialog ja onda idem lista online admina kaze nema admina a ima mozda trebam da sredim cmd /makeadmin
Naslov: Odg: [Pomoc]Admini
Poruka od: [CH]Lenon poslato Januar 29, 2015, 15:06:14 POSLE PODNE
Citat: Kriso_Anderson poslato Januar 29, 2015, 15:05:10 POSLE PODNE
Ja sam uzeo sa LastStepa i editovao sam i ne izbacuje errore ja kucam admini i izbaci mi onaj dialog ja onda idem lista online admina kaze nema admina a ima mozda trebam da sredim cmd /makeadmin

Postavi komandu za prikaz online admina i /makeadmin.
Naslov: Odg: [Pomoc]Admini
Poruka od: Shaw Salcedo poslato Januar 29, 2015, 15:09:30 POSLE PODNE
/makeadmin
if(strcmp(cmd, "/makeadmin", true) == 0)
{
    if(IsPlayerConnected(playerid))
    {
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD2, "/makeadmin [ID Igraca/Dio Imena] [level]");
return 1;
}
new para1;
new level;
para1 = ReturnUser(tmp);
tmp = strtok(cmdtext, idx);
level = strval(tmp);

if(PlayerInfo[playerid][pAdmin] >= 1341)
{
    if(IsPlayerConnected(para1))
    {
        if(para1 != INVALID_PLAYER_ID)
        {
                    if(PlayerInfo[playerid][pOdobrenje] == 0)
                    {
                    new strod[128];
                    GetPlayerName(para1, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof(sendername));
                    SCM(playerid, 0xC0C0C0C8, "Nemas odobrenje, prijavljen si svim adminima !!!");
                    format(strod,sizeof(strod),"%s je pokusao da da admina igracu {FFFFFF}%s , {00FF80}ali nema odobrenje !! :( :D", sendername, giveplayer);
                    ABroadCast(0x00FF80C8,strod,1);
                    return 1;
                    }
                        if(level < 0 || level > 1341) return SCM(playerid, SIVA, "Ne moze vise od 1341 ili manje od 0!");
                        if(level == 0 && PlayerInfo[para1][pFreddy] > 0) return SCM(playerid, 0xC0C0C0C8, "ALO,NE MOZES DA SKINES FREDDY ADMINA BOTE !! :)");
                        SetPlayerSkin(para1, 59);
GetPlayerName(para1, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof(sendername));
PlayerInfo[para1][pAdmin] = level;
PlayerInfo[para1][pLeader] = 0;
printf("%s je promovisan od strane %s na admina level %d.", giveplayer, sendername, level);
format(string, sizeof(string), "ADMIN %s vam je dao ADMIN Level %d.", sendername,level);
SendClientMessage(para1, COLOR_LIGHTRED, string);
format(string, sizeof(string), "Dali ste %s-u ADMIN Level %d.", giveplayer,level);
ABroadCast(COLOR_RED, string, 1);
      format(string,sizeof(string), "Admin %s je dao administratora igracu %s (level %d)", sendername, giveplayer, level);
        ABroadCast(COLOR_RED, string, 1);
SendClientMessage(playerid, COLOR_LIGHTRED, string);
}
}
}
else
{
SendClientMessage(playerid, COLOR_GRAD1, "Ne mozes ti to.");
}
}
return 1;
}

A ako mislis ovo /admini onda evo ti ali ovo je sa BM Moda
if(strcmp(cmd,"/admini",true)==0)
{
format(string, sizeof(string), "");
foreach(Player, i)
{
if (PlayerInfo[i][pAdmin] >= 1 || PlayerInfo[i][pAdmin] >=1340)
{
new atext[20];
format(atext, sizeof(atext), "[ID %d] ", i);
strcat(string, atext);
strcat(string, " ADMIN [");
strcat(string, ImeIgraca(i));
strcat(string, " ]");
strcat(string, " ( ");
format(atext, sizeof(atext), "%d)", PlayerInfo[i][pAdmin]);
strcat(string, atext);
}
}
if(strlen(string) == 0) return SendClientMessage(playerid, COLOR_GREY, "Nema online Admina!");
ShowPlayerDialog(playerid, 5675, DIALOG_STYLE_MSGBOX, "ADMINISTRATORI", string, "OK", "");
return 1;
}
Naslov: Odg: [Pomoc]Admini
Poruka od: ▂ ▃ ▅ Rudimental ▅ ▃ ▂ poslato Januar 29, 2015, 15:39:57 POSLE PODNE

CMD:admini(playerid, params[])
{
    #pragma unused params
new string[1024];
format(string, sizeof(string), "");
foreach(Player, i)
{
if (PlayerInfo[i][pAdmin] >= 1)
{
new atext[20];
format(atext, sizeof(atext), "[ID %d] ", i);
strcat(string, atext);
strcat(string, " ");
strcat(string, GetName(i));
strcat(string, " | ");
strcat(string, "Admin Level: ");
format(atext, sizeof(atext), "%d", PlayerInfo[i][pAdmin]);
strcat(string, atext);
strcat(string, "\n");
}
}
if(strlen(string) == 0) return SendClientMessage(playerid, COLOR_GREY, "Nema online Admina!");
ShowPlayerDialog(playerid, 5675, DIALOG_STYLE_MSGBOX, "ADMINISTRATORI", string, "Ok", "");
return 1;
}
Naslov: Odg: [Pomoc]Admini
Poruka od: Shaw Salcedo poslato Januar 29, 2015, 15:57:42 POSLE PODNE
Neee ovo je od mog Srv a evo vam i od LastStepa /makeadmin i /admini


if(dialogid == DIALOG_ADMINI)
{
if(response)
{
if(listitem == 0)
{
    new str[500], str2[500], textic[65];
for(new i = 1; i < MAX_ADMINS; i++)
{
format(textic, sizeof(textic), "staff/admini/Admin_%d.ini", i);
if(fexist(textic))
{
if(IsPlayerConnected(GetPlayerIDS(AdminInfo[i][aIme])))
{
if(aduty[GetPlayerIDS(AdminInfo[i][aIme])] == 1)
{
format(str, sizeof(str), "{FFFFFF}ADMIN: {24DB40}•{FFFFFF} %s (%d)", AdminInfo[i][aIme], AdminInfo[i][aRank]);
}
else
{
format(str, sizeof(str), "{FFFFFF}ADMIN: • %s (%d)", AdminInfo[i][aIme], AdminInfo[i][aRank]);
}
strcat(str2, str);
strcat(str2, "\n");
}
}
}
if(strlen(str2) == 0) return SendClientMessage(playerid, GRAD2, "Trenutno nema online Admina!");
SPD(playerid, DIALOG_VADMLISTA, DIALOG_STYLE_MSGBOX, "{FFFF20}Lista Online Admina", str2, "OK", "");
}
if(listitem == 1)
{
new str1[500], str2[500], textic[65];
for(new i = 1; i < MAX_ADMINS; i++)
{
format(textic, sizeof(textic), "staff/admini/Admin_%d.ini", i);
if(fexist(textic))
{
//if(IsPlayerConnected(GetPlayerIDS(AdminInfo[i][aIme])))
// {
//format(str, sizeof(str), "{2F9FD0}[%d] %s {FFFFFF}| {2F9FD0}[A-%d]", GetPlayerIDS(AdminInfo[i][aIme]), AdminInfo[i][aIme], AdminInfo[i][aRank]);
//strcat(str2, str);
// strcat(str2, "\n");
format(str1, sizeof(str1), "{FFFFFF}ADMIN: • %s (%d)", AdminInfo[i][aIme], AdminInfo[i][aRank]);
strcat(str2, str1);
strcat(str2, "\n");
// }
}
}
SPD(playerid, DIALOG_VADMLISTA, DIALOG_STYLE_MSGBOX, "{FFFF20}Lista svih admina", str2, "OK", "");
}
}

}



/makeadmin


CMD:makeadmin(playerid, params[])
{
if(PlayerInfo[playerid][pAdmin] == 6)
{
new igr, lvl, str2[256], ime[MAX_PLAYER_NAME]; new textic[64];
if(sscanf(params, "ui", igr, lvl)) return SCM(playerid, -1, "KORISTI: /makeadmin [ID/ime] [level]");
if(igr == IPI) return SCM(playerid, COLOR_RED, "Igrac je offline.");
if(lvl > 6) return SCM(playerid, GRAD2,"Admin level ne moze biti veci od 6");
GetPlayerName(igr, ime, sizeof(ime));
new randomkod = 1000 + random(8999), kod[7];
format(kod, 7, "%d", randomkod);
if(lvl == 0)
{
if(PlayerInfo[igr][pAdmin] < 1) return SCM(playerid, GRAD2,"Taj igrac nije admin!");
new name3[MAX_PLAYER_NAME];
GetPlayerName(igr, name3, sizeof(name3));
for(new h = 1; h < MAX_ADMINS; h++)
{
new textic2[256];
format(textic2, sizeof(textic2), "staff/admini/Admin_%d.ini",h);
if(fexist(textic2))
{
if(strcmp(AdminInfo[h][aIme],name3, true) == 0)
{
format(str2, sizeof(str2), "[ADMIN] Vlasnik %s je postavio ADMINISTRATOR level na 0 igracu %s.", GetName(playerid), GetName(igr));
ABroadCast(ZUTA, str2, 4);
format(str2, sizeof(str2), "{07C1F5}Uspesno skidanje administratora igracu {FFFFFF}%s", GetName(igr));
SCM(playerid, COLOR_YELLOW, str2);
new jarmed66[236];
    new loginstring[256];
format(jarmed66,sizeof(jarmed66),"{FF0000}\t\t\t\t[OBAVESTENJE]\n{FFFFFF}Vas administratorski nivo je je postavljen na 0 od strane vlasnika %s",GetName(playerid));
format(loginstring,sizeof(loginstring),"%s",jarmed66);
ShowPlayerDialog(igr, 9999, DIALOG_STYLE_MSGBOX,"{07C1F5}Admin-Info",loginstring,"OK","");
format(jarmed66,sizeof(jarmed66),"{FFFFFF}Vas administratorski nivo je je postavljen na 0 od strane vlasnika %s",GetName(playerid));
SCM(igr,GRAD2,jarmed66);
PlayerInfo[igr][pAdmin] = 0;
strmid(AdminInfo[h][aIme], "", 0, strlen(""), 60);
strmid(AdminInfo[h][aPas], "", 0, strlen(""), 60);
AdminInfo[h][aRank] = 0;
AdminInfo[h][aNeakt] = 0;
SaveAdmin(h);
new File:examplef = fopen(textic2, io_write);
    fclose(examplef); //
fremove(textic2);
aduty[igr] = 0;
SetPlayerColor(igr,COLOR_GRAD2);
    SetPlayerArmour_H(igr, 0);
    SetPlayerSkin(igr, PlayerInfo[igr][pSkin]);
}
}
}
return 1;
}
if(PlayerInfo[igr][pAdmin] != 0)
{
for(new i = 1; i < MAX_ADMINS; i++)
{
if(strcmp(AdminInfo[i][aIme], ime, true) == 0)
{
PlayerInfo[igr][pAdmin] = lvl;
SetPlayerSkin(igr, 294);
    PlayerInfo[igr][pSkin] = 294;
AdminInfo[i][aRank] = lvl;
SaveAdmin(i);
}
}
}
else
{
PlayerInfo[igr][pAdmin] = lvl;
SetPlayerSkin(igr, 294);
PlayerInfo[igr][pSkin] = 294;
for(new i = 1; i < MAX_ADMINS; i++)
{
format(textic, sizeof(textic), "staff/admini/Admin_%d.ini", i);
if(!fexist(textic))
{
strmid(AdminInfo[i][aIme], ime, 0, strlen(ime), MAX_PLAYER_NAME);
strmid(AdminInfo[i][aPas], kod, 0, strlen(kod), 60);
AdminInfo[i][aRank] = lvl;
AdminInfo[i][aNeakt] = 0;
        new File:cuvanje = fopen(textic, io_write);
       fclose(cuvanje); //
SaveAdmin(i);
i = 998;
}
}
}
format(str2, sizeof(str2), "{07C1F5}Ustupili ste {FFFFFF}%s-u {07C1F5}administratorski nivo {FFFFFF}%d.", GetName(igr), lvl);
SCM(playerid, COLOR_YELLOW, str2);

format(str2, sizeof(str2), "[ADMIN] Vlasnik %s je postavio ADMINISTRATOR level %d igracu %s.", GetName(playerid), lvl, GetName(igr));
ABroadCast(ZUTA, str2, 4);




    new jarmed11[236];
        new jarmed22[236];
        new jarmed33[236];
        new jarmed44[236];
        new jarmed55[236];
        new jarmed66[236];
        new jarmed77[236];
new loginstring[1024];
        format(jarmed11,sizeof(jarmed11),"{07C1F5}Cestamo ! {FFFFFF}Dodeljena vam je pozicija Administratora LEVEL %d od Vlasnika %s.",lvl, GetName(playerid));
format(jarmed22,sizeof(jarmed22),"\nPozicija administratora nosi veliku odgovornost, te vas molimo da se potrudite da ne uprljate ugled servera.");
  format(jarmed33,sizeof(jarmed33),"\nSvaku odluku donosite iskljucivo na svoju odgovornost, pa shodno tome budite pazljivi.");
  format(jarmed44,sizeof(jarmed44),"\n{07C1F5}Vas Adminski kod je : {FFFFFF}%d",randomkod);
  format(jarmed55,sizeof(jarmed55),"\nAdminski kod vam sluzi kao zastita za vas nalog. Pri svakom loginu ukucacete gore upisane brojeve,");
  format(jarmed66,sizeof(jarmed66),"\nPa vas tim povodom molimo da kod zapisete, ili zapamtite.");
  format(jarmed77,sizeof(jarmed77),"\n\n\t\t\t\t\t{07C1F5}SRECNO ! {FFFFFF}");
  format(loginstring,sizeof(loginstring),"%s%s%s%s%s%s%s",jarmed11,jarmed22,jarmed33,jarmed44,jarmed55,jarmed66,jarmed77);
        ShowPlayerDialog(igr, 9999, DIALOG_STYLE_MSGBOX,"{07C1F5}Admin-Info",loginstring,"OK","");
        LoadAdmine();
}
else return NisiOvlascen(playerid);
Naslov: Odg: [Pomoc]Admini
Poruka od: ▂ ▃ ▅ Rudimental ▅ ▃ ▂ poslato Januar 29, 2015, 17:41:01 POSLE PODNE
Sta radis ti bre ? Jel znas ti sta hoces i sta ti ljudi pisu ? Trazio si listu online admina eto dobio si je od mene !
Naslov: Odg: [Pomoc]Admini
Poruka od: Shaw Salcedo poslato Januar 29, 2015, 19:19:42 POSLE PODNE
Ne razumes ja sam hteo kada igrac ukuca /admini da mu izbaci dialog Online Admini i Lista svih admina
Naslov: Odg: [Pomoc]Admini
Poruka od: ZC_Bob poslato Januar 29, 2015, 20:26:34 POSLE PODNE
Evo ja cu vam pomoci sta on zapravo oce, on oce prikaz i online i offline admina da mu izbaci kada kuca /admini, tj oce da kopira Balkan Underground ;)
Naslov: Odg: [Pomoc]Admini
Poruka od: Djuro_Guzijan poslato Januar 29, 2015, 22:59:44 POSLE PODNE
Po mom mišljenju najbolje ti je uraditi da ti sam stavljaš admin listu a ne da prikazuje online i offline admine. Ako prikaže ko je online od admina, a ne bude nikoga, svi će paliti cheat.

Prvo define boje.

#define D_TAMNOZELENA         "{006600}"
#define D_ZUTA "{FFFF00}"
#define D_CRVENA "{FF0000}"


Onda define dialog.

#define DIALOG_ADMINI       7

Onda ti je najlakše preko ZCMD dodati komandu.

CMD:admini(playerid,parmas[])
{
        new rcon[500];
        format(rcon,sizeof(rcon),""D_CRVENA"ADMIN LISTA\n"D_TAMNOZELENA"1. Vlado_Malinovic | "D_ZUTA"Vlasnik\n"D_TAMNOZELENA"2. Kriso_Anderson | "D_ZUTA"Helper level 1");
ShowPlayerDialog(playerid, DIALOG_ADMINI, DIALOG_STYLE_MSGBOX, "Admin Lista",rcon,"Zatvori","");
return 1;
}


I to bi ti izgledalo ovako http://i.imgur.com/mnMi4DS.png
PS : Preporučujem ti da ovako praviš i za lidere i helpere i sve, zato što ono kada samo uzima ko je šta zna dosta da ubaguje.