|pomoc|Kako da napravim /aon i /aoff


Započeo Martin_Jankovic, Decembar 25, 2013, 20:23:01 POSLE PODNE

prethodna tema - sledeća tema

0 članova i 1 gost pregledaju ovu temu.

Skripta koju koristim: EGRP
Detaljan opis problema: Kako da napravim da nebude vise /aduty da napravim kad je Admin na duznosti da mu je komanda /aon a kad oce off /aoff
Dio skripte:
Citat///////////////////////////////////////////////////////
CMD:aduty(playerid, params[])
{

    //#pragma unused help
   //#pragma unused params
    if(UlogovanProvera[playerid] == 0) return SCM(playerid,-1,"CFRP | "CRVENA"Moras se ulogovati da bi koristio ovu komandu!");
   if(PlayerInfo[playerid][pAdmin] == 0) return SCM(playerid, -1, ""SPLAVA"[CFRP] "BELA"Samo Admini!");
   new string[256];
   if(AdminDuty[playerid] == 0)
   {
      format(string,sizeof(string),"{F3FF02}(( {FFFFFF}Administrator {F3FF02}%s {FFFFFF}je na duznosti, za pomoc kucajte {F81414}/report! {F3FF02}))",GetName(playerid));
      AdminGameMaster(-1,string);
      AdminDuty[playerid] = 1;
      SetPlayerColor(playerid,CRVENAADUTY);
      GivePlayerWeapon(playerid, 4, 1);
      GivePlayerWeapon(playerid, 24, 9999);
      SetPlayerArmour(playerid, 99.0);
      g_SetPlayerHealth(playerid, 99.0);
      SetPlayerAttachedObject(playerid, 3, 373, 1, 0.286006, -0.034657, -0.158132, 67.128456, 21.916156, 33.972290, 1.000000, 1.000000, 1.000000);
      SetPlayerAttachedObject(playerid, NOVAC_SLOT, 3, 1550, 1, 0.1, -0.3, 0, 0, 40, 0, 1, 1, 1);
      SetPlayerAttachedObject(playerid, 8, 19078, 1, 0.311434, -0.063826, -0.161611, 0.000000, 0.000000, 0.000000, 1.000000, 1.000000, 1.000000 ); // TheParrot1 - papag
   }
   else if(AdminDuty[playerid] == 1)
   {
      SetPlayerArmour(playerid, 0);
      g_SetPlayerHealth(playerid, 99.0);
      SetPlayerColor(playerid,BELA2);
      format(string,sizeof(string),"{F3FF02}(( {FFFFFF}Administrator {F3FF02}%s {FFFFFF}vise nije na duznosti! {F3FF02}))",GetName(playerid));
      AdminGameMaster(-1,string);
      AdminDuty[playerid] = 0;
      RemovePlayerAttachedObject(playerid, 8);
   }
   return 1;
}
//////////////////////////////////////////////////////
Tko oce samnom otvoriti srv i da zna spojiti datubazu. Ja cu placati hosting .NEek me doda na FB https://www.facebook.com/jankovic.martin

DHV

*

CMD:aon(playerid, params[])
{

    //#pragma unused help
   //#pragma unused params
    if(UlogovanProvera[playerid] == 0) return SCM(playerid,-1,"CFRP | "CRVENA"Moras se ulogovati da bi koristio ovu komandu!");
   if(PlayerInfo[playerid][pAdmin] == 0) return SCM(playerid, -1, ""SPLAVA"[CFRP] "BELA"Samo Admini!");
   if(AdminDuty[playerid] == 1) return SCM(playerid, -1, "Vec si na duznosti);
   new string[256];
   format(string,sizeof(string),"{F3FF02}(( {FFFFFF}Administrator {F3FF02}%s {FFFFFF}je na duznosti, za pomoc kucajte {F81414}/report! {F3FF02}))",GetName(playerid));
   AdminGameMaster(-1,string);
   AdminDuty[playerid] = 1;
   SetPlayerColor(playerid,CRVENAADUTY);
   GivePlayerWeapon(playerid, 4, 1);
   GivePlayerWeapon(playerid, 24, 9999);
   SetPlayerArmour(playerid, 99.0);
   g_SetPlayerHealth(playerid, 99.0);
   SetPlayerAttachedObject(playerid, 3, 373, 1, 0.286006, -0.034657, -0.158132, 67.128456, 21.916156, 33.972290, 1.000000, 1.000000, 1.000000);
   SetPlayerAttachedObject(playerid, NOVAC_SLOT, 3, 1550, 1, 0.1, -0.3, 0, 0, 40, 0, 1, 1, 1);
   SetPlayerAttachedObject(playerid, 8, 19078, 1, 0.311434, -0.063826, -0.161611, 0.000000, 0.000000, 0.000000, 1.000000, 1.000000, 1.000000 ); // TheParrot1 - papag
   return 1;
}


CMD:aoff(playerid, params[])
{

    //#pragma unused help
   //#pragma unused params
    if(UlogovanProvera[playerid] == 0) return SCM(playerid,-1,"CFRP | "CRVENA"Moras se ulogovati da bi koristio ovu komandu!");
   if(PlayerInfo[playerid][pAdmin] == 0) return SCM(playerid, -1, ""SPLAVA"[CFRP] "BELA"Samo Admini!");
   if(AdminDuty[playerid] == 0) return SCM(playerid, -1, "Moras prvo na duznost");
   new string[256];
   SetPlayerArmour(playerid, 0);
   g_SetPlayerHealth(playerid, 99.0);
   SetPlayerColor(playerid,BELA2);
   format(string,sizeof(string),"{F3FF02}(( {FFFFFF}Administrator {F3FF02}%s {FFFFFF}vise nije na duznosti! {F3FF02}))",GetName(playerid));
   AdminGameMaster(-1,string);
   AdminDuty[playerid] = 0;
   RemovePlayerAttachedObject(playerid, 8);
   return 1;
}

Citat: Vlado_Plavsic aka Plavsa poslato Decembar 25, 2013, 20:37:04 POSLE PODNE
CMD:aon(playerid, params[])
{

    //#pragma unused help
   //#pragma unused params
    if(UlogovanProvera[playerid] == 0) return SCM(playerid,-1,"CFRP | "CRVENA"Moras se ulogovati da bi koristio ovu komandu!");
   if(PlayerInfo[playerid][pAdmin] == 0) return SCM(playerid, -1, ""SPLAVA"[CFRP] "BELA"Samo Admini!");
   if(AdminDuty[playerid] == 1) return SCM(playerid, -1, "Vec si na duznosti);
   new string[256];
   format(string,sizeof(string),"{F3FF02}(( {FFFFFF}Administrator {F3FF02}%s {FFFFFF}je na duznosti, za pomoc kucajte {F81414}/report! {F3FF02}))",GetName(playerid));
   AdminGameMaster(-1,string);
   AdminDuty[playerid] = 1;
   SetPlayerColor(playerid,CRVENAADUTY);
   GivePlayerWeapon(playerid, 4, 1);
   GivePlayerWeapon(playerid, 24, 9999);
   SetPlayerArmour(playerid, 99.0);
   g_SetPlayerHealth(playerid, 99.0);
   SetPlayerAttachedObject(playerid, 3, 373, 1, 0.286006, -0.034657, -0.158132, 67.128456, 21.916156, 33.972290, 1.000000, 1.000000, 1.000000);
   SetPlayerAttachedObject(playerid, NOVAC_SLOT, 3, 1550, 1, 0.1, -0.3, 0, 0, 40, 0, 1, 1, 1);
   SetPlayerAttachedObject(playerid, 8, 19078, 1, 0.311434, -0.063826, -0.161611, 0.000000, 0.000000, 0.000000, 1.000000, 1.000000, 1.000000 ); // TheParrot1 - papag
   return 1;
}


CMD:aoff(playerid, params[])
{

    //#pragma unused help
   //#pragma unused params
    if(UlogovanProvera[playerid] == 0) return SCM(playerid,-1,"CFRP | "CRVENA"Moras se ulogovati da bi koristio ovu komandu!");
   if(PlayerInfo[playerid][pAdmin] == 0) return SCM(playerid, -1, ""SPLAVA"[CFRP] "BELA"Samo Admini!");
   if(AdminDuty[playerid] == 0) return SCM(playerid, -1, "Moras prvo na duznost");
   new string[256];
   SetPlayerArmour(playerid, 0);
   g_SetPlayerHealth(playerid, 99.0);
   SetPlayerColor(playerid,BELA2);
   format(string,sizeof(string),"{F3FF02}(( {FFFFFF}Administrator {F3FF02}%s {FFFFFF}vise nije na duznosti! {F3FF02}))",GetName(playerid));
   AdminGameMaster(-1,string);
   AdminDuty[playerid] = 0;
   RemovePlayerAttachedObject(playerid, 8);
   return 1;
}


zasto 256 cellova kreirati kad je SA:MP chat maksimalan output 128 karaktera
new string[256]; // 256 cellova * 4 bajta po jednom cellu = 1024 bajta - 1KB -.-
new string[128 char]; // 128 bajtova

Dobim erore

C:\Users\Mario\Desktop\MTA - marek\Cimer fraj\gamemodes\FarkiasRP.pwn(30177) : warning 217: loose indentation
C:\Users\Mario\Desktop\MTA - marek\Cimer fraj\gamemodes\FarkiasRP.pwn(35118) : warning 217: loose indentation
C:\Users\Mario\Desktop\MTA - marek\Cimer fraj\gamemodes\FarkiasRP.pwn(35119) : error 037: invalid string (possibly non-terminated string)
C:\Users\Mario\Desktop\MTA - marek\Cimer fraj\gamemodes\FarkiasRP.pwn(35119) : error 017: undefined symbol "Vec"
C:\Users\Mario\Desktop\MTA - marek\Cimer fraj\gamemodes\FarkiasRP.pwn(35119) : error 017: undefined symbol "si"
C:\Users\Mario\Desktop\MTA - marek\Cimer fraj\gamemodes\FarkiasRP.pwn(35119) : fatal error 107: too many error messages on one line

Compilation aborted.Pawn compiler 3.2.3664           Copyright (c) 1997-2006, ITB CompuPhase


4 Errors.
Tko oce samnom otvoriti srv i da zna spojiti datubazu. Ja cu placati hosting .NEek me doda na FB https://www.facebook.com/jankovic.martin

jao kako si ti lijen bre pa ljudi ti sve nacrtaju a ti svaki warning stavljas

losse identition - poravnaj kod
if(AdminDuty[playerid] == 1) return SCM(playerid, -1, "Vec si na duznosti);


na ovoj liniji fali "

if(AdminDuty[playerid] == 1) return SCM(playerid, -1, "Vec si na duznosti");
69

DHV

*

@maCHine65535, nisam ni gledao, samo sam razdvajao u 2 komande.

Inače sam fanatik za čuvanje memorije i optimizaciju i dok radim sa stringom u C++ nema curenja memorije.  8)

Rijesio sam se waringa
Poslednja Izmena: Decembar 25, 2013, 21:04:22 POSLE PODNE od Martin_Jankovic
Tko oce samnom otvoriti srv i da zna spojiti datubazu. Ja cu placati hosting .NEek me doda na FB https://www.facebook.com/jankovic.martin

E i neoj kod svake komande provjeravat jel ulogovan, jednostavno provjeri kad igrac upise bilo koji cmdtext, tj kad se poziva OnPlayerCommand(text/performed/recieved)

Primjer:

public OnPlayerCommandPerformed(playerid, cmdtext[], success)
{
    if( !UlogovanProvera[ playerid ] ) 
        return SendClientMessage(playerid, -1, "Nisi ulogovan ! ");
}
Citat: Vlado_Plavsic aka Plavsa poslato Decembar 25, 2013, 20:58:24 POSLE PODNE
@maCHine65535, nisam ni gledao, samo sam razdvajao u 2 komande.

Inače sam fanatik za čuvanje memorije i optimizaciju i dok radim sa stringom u C++ nema curenja memorije.  8)

Izvinjavam se, mislio sam da si mu ti postavio komandu, moja greska.

CMD:aon(playerid, params[])
{

    #pragma unused help
    #pragma unused params
   if(!PlayerInfo[playerid][pAdmin]) return SCM(playerid, -1, ""SPLAVA"[CFRP] "BELA"Samo Admini!");
   if(AdminDuty[playerid]) return SCM(playerid, -1, "Vec si na duznosti");
   new string[128];
   format(string,sizeof(string),"{F3FF02}(( {FFFFFF}Administrator {F3FF02}%s {FFFFFF}je na duznosti, za pomoc kucajte {F81414}/report! {F3FF02}))",GetName(playerid));
   AdminGameMaster(-1,string);
   SetPlayerColor(playerid,CRVENAADUTY);
   GivePlayerWeapon(playerid, 4, 1);
   GivePlayerWeapon(playerid, 24, 9999);
   SetPlayerArmour(playerid, 99.0);
   g_SetPlayerHealth(playerid, 99.0);
   SetPlayerAttachedObject(playerid, 3, 373, 1, 0.286006, -0.034657, -0.158132, 67.128456, 21.916156, 33.972290, 1.000000, 1.000000, 1.000000);
   SetPlayerAttachedObject(playerid, NOVAC_SLOT, 3, 1550, 1, 0.1, -0.3, 0, 0, 40, 0, 1, 1, 1);
   SetPlayerAttachedObject(playerid, 8, 19078, 1, 0.311434, -0.063826, -0.161611, 0.000000, 0.000000, 0.000000, 1.000000, 1.000000, 1.000000 ); // TheParrot1 - papag
   return AdminDuty[playerid] = 1;
}


CMD:aoff(playerid, params[])
{

    #pragma unused help
   #pragma unused params
   if(!PlayerInfo[playerid][pAdmin]) return SCM(playerid, -1, ""SPLAVA"[CFRP] "BELA"Samo Admini!");
   if(!AdminDuty[playerid]) return SCM(playerid, -1, "Moras prvo na duznost");
   SetPlayerArmour(playerid, 0);
   g_SetPlayerHealth(playerid, 99.0);
   SetPlayerColor(playerid,BELA2);
   new string[128];
   format(string,sizeof(string),"{F3FF02}(( {FFFFFF}Administrator {F3FF02}%s {FFFFFF}vise nije na duznosti! {F3FF02}))",GetName(playerid));
   AdminGameMaster(-1,string);
   RemovePlayerAttachedObject(playerid, 8);
   return AdminDuty[playerid] = 0;
}

KAk da jos napravim da se na mapi vidi crvena tocka kada je admin na duty

i kada admin pise IC chetu da mu je ime crveno
Tko oce samnom otvoriti srv i da zna spojiti datubazu. Ja cu placati hosting .NEek me doda na FB https://www.facebook.com/jankovic.martin


Ok a kako da ovo napravim kada je admin na duty i kada nesto pise u IC chet da mu je ime u boji a kada ugasi duty da mu se vrati u bijelo
Tko oce samnom otvoriti srv i da zna spojiti datubazu. Ja cu placati hosting .NEek me doda na FB https://www.facebook.com/jankovic.martin

DHV

*

Citat: Martin_Jankovic poslato Decembar 25, 2013, 21:25:22 POSLE PODNE
Ok a kako da ovo napravim kada je admin na duty i kada nesto pise u IC chet da mu je ime u boji a kada ugasi duty da mu se vrati u bijelo

OnPlayerText callback, staviš proveru da ako je admin na dužnosti piše poruku sa crvenom bojom a ako nije bela.

mozes mi ti to napraviti ja sam tek novi
Tko oce samnom otvoriti srv i da zna spojiti datubazu. Ja cu placati hosting .NEek me doda na FB https://www.facebook.com/jankovic.martin

OnPlayerText(playerid, text[])
{
    new pName[MAX_PLAYER_NAME];
    GetPlayerName(playerid, pName, sizeof pName);
    new string[128];
    if(AdminDuty[playerid])
    {
         format(string, sizeof string, "%s: {FFFFFF}%s.", pName, text);
         return ProxDetector(playerid, 30.0, 0xFF293EFF, 0xFF4F61FF, 0xFF6978FF, 0xFF8591FF, 0xFF99A3FF);
    }
    else
    {
        format(string, sizeof string, "%s: %s", pName, text);
        ProxDetector(playerid, 30.0, FADE1, FADE2, FADE3, FADE4, FADE5);
    }
    return false;
}