Balkan SA:MP

PAWN skriptanje, gamemodovi, filterskripte, include fajlovi, mape, pluginovi => Razgovor u vezi PAWN - skriptanja => Temu započeo: Roby Mapper poslato Februar 17, 2019, 23:28:23 POSLE PODNE

Naslov: Kako trebam definisati
Poruka od: Roby Mapper poslato Februar 17, 2019, 23:28:23 POSLE PODNE
Problem(error/warning): Kako trebam definisati if( PlayerInfo za Spec Admina da pise kad ulazi ingame probao sam i ne ide kako trebam napraviti da pise kada ulazi spec admin na server dole sam napravio za specadmin?
Dio skripte: https://pastebin.com/HLrg5fzK
Debug iz server_log(ukoliko je u pitanju crashanje servera - crashdetect log): //
Slika/video ingame problema(obavezno ako je ingame problem): //
Naslov: Odg: Kako trebam definisati
Poruka od: dazer poslato Februar 17, 2019, 23:35:27 POSLE PODNE
Napravi nesto kao AdminPoruka primjer AdminSpecadminPoruka te stavi da se i njima prikazuje poruka
Naslov: Odg: Kako trebam definisati
Poruka od: Roby Mapper poslato Februar 17, 2019, 23:38:57 POSLE PODNE
Citat: Miki11 poslato Februar 17, 2019, 23:35:27 POSLE PODNE
Napravi nesto kao AdminPoruka primjer AdminSpecadminPoruka te stavi da se i njima prikazuje poruka
Mozes mi ti staviti ne ide mi bas ovo @Miki11
Naslov: Odg: Kako trebam definisati
Poruka od: dazer poslato Februar 17, 2019, 23:45:59 POSLE PODNE
Probaj nezz dal ce radit

[pawn]AdminSpecAdminPoruka( color, string[] ) {
    for( new i = 0; i < MAX_PLAYERS; i++) {
      if( IsPlayerConnected( i ) ) {
          if( PlayerInfo[ i ][ xAdmin ] >= 1 || PlayerInfo[ i ][ xSpecAdmin] == 1 ) {
            SCM( i, color, string ); } } }
    return true;
}[/pawn]

i tamo zamjeni AdminPoruka sa AdminSpecAdminPoruka
Naslov: Odg: Kako trebam definisati
Poruka od: Roby Mapper poslato Februar 18, 2019, 10:25:45 PRE PODNE
Citat: Miki11 poslato Februar 17, 2019, 23:45:59 POSLE PODNE
Probaj nezz dal ce radit

[pawn]AdminSpecAdminPoruka( color, string[] ) {
    for( new i = 0; i < MAX_PLAYERS; i++) {
      if( IsPlayerConnected( i ) ) {
          if( PlayerInfo[ i ][ xAdmin ] >= 1 || PlayerInfo[ i ][ xSpecAdmin] == 1 ) {
            SCM( i, color, string ); } } }
    return true;
}[/pawn]

i tamo zamjeni AdminPoruka sa AdminSpecAdminPoruka
Ubacio sam i opet isto
Naslov: Odg: Kako trebam definisati
Poruka od: Roby Mapper poslato Februar 18, 2019, 21:13:37 POSLE PODNE
Zna li neko neki dobar nacin ?
Naslov: Odg: Kako trebam definisati
Poruka od: .agency poslato Februar 20, 2019, 04:20:48 PRE PODNE
zameni za svojim samo

[pawn]if(PlayerInfo[playerid][pAdmin] >= 1 || PlayerInfo[playerid][pTestAdmin] >= 1)
   {
        new org[20];
      if(PlayerInfo[id][pAdmin] >= 1) { org = "admin"; }
      else if(PlayerInfo[id][pTestAdmin] >= 1) { org = "test admin"; }
      format(string,sizeof(string),""CRVENA"[SA:RP Admin System] "ZELENA"Igrac %s je %s level %d!", GetName(playerid),org,PlayerInfo[playerid][pAdmin]);
      SendAdminMessage(-1, string);
         }
new org[20];
        if(PlayerInfo[id][pAdmin] >= 1) { org = "admin"; }
        else if(PlayerInfo[id][pTestAdmin] >= 1) { org = "test admin"; }
        format(string,sizeof(string),""CRVENA"[SA:RP Admin System] "ZELENA"Igrac %s je %s level %d!", GetName(playerid),org,PlayerInfo[playerid][pAdmin]);
        SendAdminLoginMassage(-1, string);

///////////////////////////////////////////////////////////////////////////
forward SendAdminLoginMassage(color, string[]);
public SendAdminLoginMassage(color, string[])
{
    foreach(Player,i)
    {
        if(PlayerInfo[pAdmin] >= 1 || PlayerInfo[pVlasnikV] == 1 || PlayerInfo[pTAdmin] == 1 || PlayerInfo[pMaper] == 1)
        {
            SendClientMessage(i, color, string);
        }
    }[/pawn]
Naslov: Odg: Kako trebam definisati
Poruka od: Shaw Salcedo poslato Februar 20, 2019, 04:31:07 PRE PODNE
Nisam te bas razumeo kad udje taj specadmin da izbacu njemu ili serveru celom ili svim spec adminima?
Naslov: Odg: Kako trebam definisati
Poruka od: --Lood-- poslato Februar 20, 2019, 08:52:52 PRE PODNE
POsalji kod gdje mu postavljas spec admina, takodje
ako je taj admin u isto vrijeme spec admin i xAdmin izbacice ti samo poruku za xAdmina
Sto znaci komanda npr dajadmina bi trebala izgeldati ovako
[pawn]

CMD:daj admina
PlayerInfo[id][xAdmin] = 0;
PlayeriInfo[id][xspecAdmin] = 1; // e sada ce ti ocitat ono else if. Prekopruka koristi samp wiki
PlayerInfo[id][xScriptaAdmin] =0; // takodje zbog if provjere

/*
Sada da ti objasnim malo sta si ti uradio
ti sa else if provjera ide redom od prve do zadnje i zaustavlja se na prvom TRUE odgovoru
sto znaci da ako je tebi admin xAdmin i scriptadmin i spec admin
nece mu izbacity poruku za specAdmina jer je vec dobio TRUE(tacan) odgovor iznad znaci za takve situacije koristi samo if bez else if, ali opet moja preporuka ti je da xAdmina u davanju admina postavljas na 0, a spec admina postavljas na 1

*/

[/pawn]
Naslov: Odg: Kako trebam definisati
Poruka od: {Makenzi} poslato Februar 20, 2019, 09:39:42 PRE PODNE
Na telefonu pišem kod izvini ako ima grešku...
[pawn]public OnPlayerConnect(playerid)
{
    SendLoginMessage(0xFF0000FF, "[JOIN] {FFFFFF}Igrac %s se ulogovao na server!", GetName(playerid));
    return 1;
}[/pawn]
[pawn]static stock SendLoginMessage(boja, const fmt[], va_args<>)
{
    new str[145];
    va_format(str, sizeof str, fmt, va_start<2>);
    foreach( new i : Player)
    {
         if(PI[pSpecAdmin] > 0)
         {
              SCM(i, boja, str);
         }
    }
    return 1;
}[/pawn]
[pawn]static stock GetName(playerid)
{
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid, name, sizeof name);
    return name;
} [/pawn]
Ukoliko imaš bilo šta od YSI paketa includeovano ovo će ti raditi al svakako update YSI na 5x jer 5x supportuje Just In Time compiler koji ubrzava celu skriptu za oko 300%