/skiniadmina /postaviadmina

Započeo Lian Chang
6. Jul 2018. Zaključano
548
pregleda
5
postova
Lian Chang
2
Street Runner
6. Jul 2018.
Problem(error/warning): Nije error samo mi treba pomoc kako da napravim ove 2 koamnde
Dio skripte: [ pawn ]Ako bude šta trebalo poslacu nije problem[ /pawn ]
Debug iz server_log(ukoliko je u pitanju crashanje servera - crashdetect log): [ code ]//[ /code ]
Dowla
5
Underboss
6. Jul 2018.
Evo ti iz SA moda prilagodi svom modu
YCMD:postaviadmina(playerid, params[],help)
{
    #pragma unused help
    if(UlogovanProvera == 0) return SCM(playerid,-1,"SA:RP | "CRVENA"Moras se ulogovati da bi koristio ovu komandu!");
if(PlayerInfo >= 6 || IsPlayerAdmin(playerid))
{
new player, level, string;
if(sscanf(params, "ud", player, level)) return SendClientMessage(playerid, -1, "SA:RP Pomoc | "ZUTA"/postaviadmina [ID/Ime] [Level (1-6)]");
if(!IsPlayerConnected(player)) return SCM(playerid, -1,""CRVENA"[SA:RP] "BELA"Pogresan ID!");
if(level < 0 || level > 6) return SendClientMessage(playerid, -1, ""CRVENA"[SA:RP] "SIVA"Admin Level ne moze biti manji od 0 i veci od 6!");
PlayerInfo = level;
format(string, sizeof(string), ""ZUTA"A | "BELA"Admin %s vam je postavio %d Admin Level.", GetName(playerid), level);
SendClientMessage(player, -1, string);
format(string, sizeof(string), ""ZUTA"A | "BELA"Igracu %s ste postavili Admin Level na %d.", GetName(player), level);
SendClientMessage(playerid, -1, string);
if(level == 0)
{
SetPlayerColor(player, BELA2);
AdminDuty = 0;
}
else
{
PlayerInfo = 10000+random(899999);
new INI:File = INI_Open(Korisnici(player));
INI_WriteInt(File,"Adminpin",PlayerInfo);
INI_Close(File);
format(string, sizeof(string), ""ZUTA"A | "BELA"Vas pin kod je: %d  "CRVENA"OBAVEZNO ZAPISI", PlayerInfo);
SendClientMessage(player, -1, string);
new arank;
if(PlayerInfo == 1) { arank = "Skripter"; }
else if(PlayerInfo == 1) { arank = "Vlasnik"; }
else if(PlayerInfo == 6) { arank = "Direktor"; }
else { arank = "Admin"; }
format(string, sizeof(string), "Cestitamo Vam, postali ste admin na Skill Arena RolePlay serveru!\nAdmin Level %d Vam je dao %s %s.\nVazno : Pri svakom ulasku na server trazice Vam se provera PIN koda radi sigurnosti!\nZapisite negde ovaj broj na papir ili neki txt dokument i sacuvajte, da znate za ubuduce!\nKOD : %d",level,arank, GetName(playerid),PlayerInfo);
ShowPlayerDialog(player, 336, DIALOG_STYLE_MSGBOX, "Admin", string, "Uredu", "");
}
SavePlayer(player);
}
else
{
    SendClientMessage(playerid, -1, ""CRVENA"[SA:RP] "SIVA"Samo Vlasnik!");
}
return 1;
}


bc-cod2
3
Hustler
6. Jul 2018.
COMMAND:posaviadmina(playerid, params[])
{
new id,alvl;
new Query;
if (!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, -1, "Samo RCON!");
if(sscanf(params, "ud", id,alvl)) return SendClientMessage(playerid, -1, "/postaviadmina [ ID ] [ Level ]");
if(alvl > 1338 || alvl < 1) return 1;
if(!IsPlayerConnected(id)) return 1;
if(alvl == 0) return 1;
mysql_format(bazaPodataka, Query, sizeof( Query ), "SELECT * FROM admini WHERE Ime = '%s'", ImeIgraca(id));
mysql_pquery( bazaPodataka, Query, "PostaviAdmina", "iii", playerid, id, alvl );
return 1;
}

COMMAND:smjeniadmina(playerid, params[])
{
if (!IsPlayerAdmin(playerid))
{
SendClientMessage(playerid, -1, "Samo RCON!");
return 1;
}
new smjeniadmina;
if (sscanf(params, "s", smjeniadmina))
{
SendClientMessage(playerid, -1, "/smjeniadmina [ Nick ]");
return 1;
}
new Query[ 1000 ];
mysql_format(bazaPodataka, Query, sizeof( Query ), "SELECT * FROM admini WHERE Ime = '%s'", smjeniadmina);
mysql_pquery( bazaPodataka, Query, "SmjeniAdmina", "is", playerid, smjeniadmina );
return 1;
}


Funkcije:
forward PostaviAdmina(playerid, id, alvl);
public PostaviAdmina(playerid, id, alvl)
{
    new string;
    new Query;
new rows;
    cache_get_row_count(rows);
if(rows ) // Igrac postoji u `admini` na bazi podataka
{
    SendClientMessage(playerid, -1, "Igrac je administrator!");
    return 1;
    }
    else // igrac postavljen za admina ...
    {
mysql_format(bazaPodataka, Query, sizeof(Query), "INSERT INTO `admini` (`Ime`, `Level`) VALUES ('%s', '%d')", ImeIgraca(id), alvl);
mysql_tquery( bazaPodataka,Query);
        SetPVarInt(id, "AdminLevel", alvl);
    format(string, sizeof(string), "Postavljen vam je level %d Admina.", alvl);
SendClientMessage(id, 0xFF6347AA, string);
    }
return 1;
}
forward SmjeniAdmina(playerid, ime[]);
public SmjeniAdmina(playerid, ime[])
{
    new rows;
    new Query;
    cache_get_row_count(rows);
    new trazimigraca;
if(rows )
{
    new jelonlinesmrad = 0; new idigraca = -1;
for(new i=0; i
if(IsPlayerConnected(i)) // Provjerava jel igrac online
{
      GetPlayerName(i, trazimigraca, sizeof(trazimigraca));
        if(strcmp(trazimigraca,ime,true)==0)
        {
            idigraca = i; // id igraca za online micanje admina
          jelonlinesmrad=1; // Igrac je online
  }
      }
}
if(jelonlinesmrad==1) // online micanje admina
{
  SendClientMessage(idigraca, -1, "Smjenjeni ste sa admin pozicije!");
SetPVarInt(idigraca, "AdminLevel", 0):
mysql_format( bazaPodataka,Query, sizeof(Query),"DELETE from `admini` where `Ime` = '%s'", ime);
mysql_tquery( bazaPodataka, Query );
    return 1;
}
else // offline micanje admina
{
mysql_format( bazaPodataka,Query, sizeof(Query),"DELETE from `admini` where `Ime` = '%s'", ime);
mysql_tquery( bazaPodataka, Query );
}
}
else
{
    SendClientMessage(playerid, -1, "Taj igrac nije admin!");
}
return 1;
}


Provjerava da li je igrac admin na logiranju
new Query;
format( Query, sizeof( Query ), "SELECT * FROM admini WHERE Ime = '%s'", ImeIgraca(playerid));
mysql_pquery( bazaPodataka, Query, "ProvjeraAdminPozicije", "i", playerid );

forward ProvjeraAdminPozicije(playerid);
public ProvjeraAdminPozicije(playerid)
{
    if(GetPVarInt(playerid, "AdminLevel") > 0)
{
    new rows;
    cache_get_row_count(rows);
if(rows )
{
    new lvl;
    cache_get_value_name_int(0, "Level", lvl);
    if(GetPVarInt(playerid, "AdminLevel") != lvl)
    {
        // igracu promjenjen admin level
        SetPVarInt(playerid, "AdminLevel);
    }
}
else
{
    // Tekst kad je igrac smjenjen
    SetPVarInt(playerid, "AdminLevel", 0);
}
}
return 1;
}

//----------- ime igraca (smrada)
stock ImeIgraca(playerid)
{
    new imesmrada;
    GetPlayerName(playerid, imesmrada, MAX_PLAYER_NAME);
    return imesmrada;
}


Komanda za listu admina
COMMAND:admini(playerid, params[])
{
  new qadmin;
SendClientMessage(playerid, COLOR_LIGHTBLUE, "admini na serveru:");
mysql_format( bazaPodataka, qadmin, sizeof( qadmin ), "SELECT * FROM `admini`");
mysql_pquery( bazaPodataka, qadmin, "serverAdmins", "i", playerid );
return 1;
}

// izvrsavanje querya

forward serverAdmins(playerid);
public serverAdmins(playerid)
{
    new rows, admBroj, adminBrojac = 1;
    cache_get_row_count(rows);
new adminIme, adminLevel;
new trazimigraca;
if( rows )
{
for( new i = 0; i < rows; i ++ )
{
    admBroj = adminBrojac;
    cache_get_value_name( i, "Ime", adminIme[ admBroj ], 129 );
    cache_get_value_name_int( i, "Level", adminLevel);
    new jelonlinesmrad = 0;
for(new p=0; p     {
    if(IsPlayerConnected(p))
    {
      GetPlayerName(p, trazimigraca, sizeof(trazimigraca));
        if(strcmp(trazimigraca,adminIme[ admBroj ],true)==0)
        {
          jelonlinesmrad=1;
  }
      }
}
new string;
new status;
if(jelonlinesmrad == 0) { status = "{DB023E}Offline"; } // nije tu
else if(jelonlinesmrad == 1) { status = "{33AA33}Online"; } // tu je
format(string, sizeof(string),"- %s (lvl: %d ) %s", adminIme[ admBroj ], adminLevel, status);
SendClientMessage(playerid, -1, string);// Ispisuje informacije o adminu
adminBrojac++;
}
}
return 1;
}




SQL
CREATE TABLE `admini` (
  `broj` int(11) NOT NULL,
  `Ime` varchar(129) NOT NULL,
  `Level` int(11) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

--
-- Indexes for table `admini`
--
ALTER TABLE `admini`
  ADD PRIMARY KEY (`broj`);

--
-- AUTO_INCREMENT for dumped tables
--

--
-- AUTO_INCREMENT for table `admini`
--
ALTER TABLE `admini`
  MODIFY `broj` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=7;
COMMIT;
Adam_Lay
6
Underboss
7. Jul 2018.
Ako na takav način misliš skriptati,poštedi i sebe i nas - Odustani.

Ako zaista želiš naučiti skriptati ne možeš početi "učiti" praviti takve komandu dok ne poznaješ neke osnovne stvari.
NenaD22
3
Hustler
8. Jul 2018.
@Paul Castellano je upravu , lepo odes na samp wiki i ucis malo  😎

Morate biti prijavljeni da biste odgovorili na ovu temu.

Prijava

© 2026 SmartShark. All rights reserved.

Powered by Momentum|v2026.3.001 Alpha