PARTNERI:

* Marketing

-UPOZORENJE-

Samo registrovani članovi mogu da vide/koriste forum u celini.
Prijavite se ili registrujte nalog na Balkan SA-MP forumu.


Autor Tema: [Pomoć] Za /setadmin  (Pročitano 79 puta)

0 članova i 1 gost pregledaju ovu temu.

Van mreže Simić

  • Newbie
  • *
  • Poruke: 11
Za /setadmin
« poslato: Jul 11, 2019, 20:14:32 posle podne »
Problem(error/warning): Imate slike
Deo skripte: [ pawn ]CMD:postaviadmina(playerid,params[])
{
   if(IsPlayerAdmin(playerid))
   {
      new targetid,level;
      if(sscanf(params,"ud",targetid,level)) return SCM(playerid,-1,"/postaviadmina [ID igraca/Deo imena] [Admin Level]");
      if(!IsPlayerConnected(targetid)) return SCM(playerid,-1,"Igrac nije na serveru!");
      if(level >5 || level <1) return SCM(playerid,-1,"Najveci admin level je 5, a najmanji 1!");
      new str[100],str1[100];
      format(str,sizeof(str),"Postavili ste admin level %s igracu %d!",level,GetName(targetid));
      format(str1,sizeof(str1),"Admin %s te je promovisao na admin level %d!"),GetName(targetid),level;
      SCM(playerid,-1,str);
      SCM(targetid,-1,str1);
      PlayerInfo[targetid][pAdmin] = level;
   }
   else
   {
       SCM(playerid,-1,"Niste ovlasceni da koristite ovu komandu!");
   }
   return 1;
}[ /pawn ]
Debug iz server_log(ukoliko je u pitanju crashanje servera - crashdetect log): Jednostavno mi ne pise ko je dao Admina i koji level
Slika/video ingame problema(obavezno ako je ingame problem): https://imgur.com/3CtxJNp
 

Van mreže anderson87

Odg: Za /setadmin
« Odgovor #1 poslato: Jul 11, 2019, 20:21:58 posle podne »
Pawno Code: [Izaberi]
CMD:postaviadmina(playerid,params[]) {
   
   if(IsPlayerAdmin(playerid))
   {
      new targetid,level;
      if(sscanf(params,"ud",targetid,level)) return SCM(playerid,-1,"/postaviadmina [ID igraca/Deo imena] [Admin Level]");
      if(!IsPlayerConnected(targetid)) return SCM(playerid,-1,"Igrac nije na serveru!");
      if(level >5 || level <1) return SCM(playerid,-1,"Najveci admin level je 5, a najmanji 1!");
      new str[100],str1[100];
      format(str,sizeof(str),"Postavili ste admin level %d igracu %s!",level,GetName(playerid));
      format(str1,sizeof(str1),"Admin %s te je promovisao na admin level %d!",GetName(playerid),level);
      SCM(playerid,-1,str);
      SCM(targetid,-1,str1);
      PlayerInfo[targetid][pAdmin] = level;
   }
   else
   {
       SCM(playerid,-1,"Niste ovlasceni da koristite ovu komandu!");
   }
   return 1;
}
« Poslednja izmena: Jul 11, 2019, 20:23:00 posle podne anderson87 »
• G A M E M O D E •
• F I L T E R S C R I P T •
• T U T O R I A L •

Citat
You are what you believe yoursefl to be.
 

Van mreže Simić

  • Newbie
  • *
  • Poruke: 11
Odg: Za /setadmin
« Odgovor #2 poslato: Jul 11, 2019, 20:31:00 posle podne »
Pawno Code: [Izaberi]
CMD:postaviadmina(playerid,params[]) {
   
   if(IsPlayerAdmin(playerid))
   {
      new targetid,level;
      if(sscanf(params,"ud",targetid,level)) return SCM(playerid,-1,"/postaviadmina [ID igraca/Deo imena] [Admin Level]");
      if(!IsPlayerConnected(targetid)) return SCM(playerid,-1,"Igrac nije na serveru!");
      if(level >5 || level <1) return SCM(playerid,-1,"Najveci admin level je 5, a najmanji 1!");
      new str[100],str1[100];
      format(str,sizeof(str),"Postavili ste admin level %d igracu %s!",level,GetName(playerid));
      format(str1,sizeof(str1),"Admin %s te je promovisao na admin level %d!",GetName(playerid),level);
      SCM(playerid,-1,str);
      SCM(targetid,-1,str1);
      PlayerInfo[targetid][pAdmin] = level;
   }
   else
   {
       SCM(playerid,-1,"Niste ovlasceni da koristite ovu komandu!");
   }
   return 1;
}
https://imgur.com/uDH8SxC
Opet mi ne pise koji je admin dao i kom igracu
 

Van mreže mumitza.

  • Ne treba vjerovati ljudima s kojima smo se tek sprijateljili, a koji pokazuju da smo im draži od njihovih starih prijatelja – tako će se ponašati i s nama kada steknu nove prijatelje.
  • Godfather
  • *
  • Poruke: 9755
  • Broj zahvalnica: 573
  • I can ease your pain.
Odg: Za /setadmin
« Odgovor #3 poslato: Jul 11, 2019, 20:58:26 posle podne »
Pawno Code: [Izaberi]
CMD:postaviadmina(playerid,params[])
{
   if(IsPlayerAdmin(playerid))
   {
      new targetid,level;
      if(sscanf(params,"ud",targetid,level)) return SCM(playerid,-1,"/postaviadmina [ID igraca/Deo imena] [Admin Level]");
      if(!IsPlayerConnected(targetid)) return SCM(playerid,-1,"Igrac nije na serveru!");
      if(level >5 || level <1) return SCM(playerid,-1,"Najveci admin level je 5, a najmanji 1!");

      new str[100];
      format(str,sizeof(str), "Postavili ste admin level %d igracu %s!", level, GetName(targetid));
      SCM(playerid,-1,str);

      format(str,sizeof(str),"Admin %s te je promovisao na admin level %d!", GetName(playerid), level);
      SCM(targetid,-1,str);

      PlayerInfo[targetid][pAdmin] = level;
   }
   else
   {
       SCM(playerid,-1,"Niste ovlasceni da koristite ovu komandu!");
   }
   return 1;
}

I zamijeni svoju GetName funkciju sa ovom
Pawno Code: [Izaberi]
stock GetName(id)
{
new name[MAX_PLAYER_NAME];
GetPlayerName(id, name, sizeof(name));
return name;
}
« Poslednja izmena: Jul 11, 2019, 20:59:45 posle podne mumitza. »
 

Van mreže Yansi42O

Odg: Za /setadmin
« Odgovor #4 poslato: Jul 11, 2019, 21:42:38 posle podne »
%d - GetName
%s - level
HAHA
 

Van mreže Vasic

Odg: Za /setadmin
« Odgovor #5 poslato: Jul 11, 2019, 23:13:45 posle podne »
Ovako brate, u skriptanju postoje formati, svaki format ima svoje znacenje.
%i Integer (whole number)
%d Integer (whole number).
%s String
%f Floating-point number (Float: tag)
%c ASCII character
%x Hexadecimal number
%b Binary number
%% Literal '%'
%q Escape a text for SQLite. (Added in 0.3.7 R2)
A tvoja greska je u ovoj liniji:
Pawno Code: [Izaberi]
format(str,sizeof(str), "Postavili ste admin level %d igracu %s!", level, GetName(targetid));Sad ce ti verovatno jasnije biti sta si pogresio ako si procitao tabelu iznad. %d koristis za brojeve a %s za stringove. Znaci, pravilno bi trebalo biti ovako:
Pawno Code: [Izaberi]
format(str,sizeof(str), "Postavili ste admin level %s igracu %d!", level, GetName(targetid));Cak imas gresku i ovoj liniji:
Pawno Code: [Izaberi]
format(str1,sizeof(str1),"Admin %s te je promovisao na admin level %d!"),GetName(targetid),level;Koristis 'targetid' u GetName za admina. Znaci igracu ce izaci poruka da je Admin zapravo on. Nisi ni dovrsio liniju kako treba. Pravilno bi trebalo ovako biti:
Pawno Code: [Izaberi]
format(str1,sizeof(str1),"Admin %s te je promovisao na admin level %d!",GetName(playerid),level);I nemas potrebe definisati dva stringa, jer gubis memoriju dzaba. To mozes u jednom stringu raditi.
« Poslednja izmena: Jul 11, 2019, 23:18:13 posle podne Vasic »
Respect List: Mister Naithan | mumitza. | Purdinho | daddy. | fuksich