Pomoc oko komande.

Započeo Skazy_ Cappone, Januar 23, 2019, 00:51:51 PRE PODNE

prethodna tema - sledeća tema

0 članova i 1 gost pregledaju ovu temu.

Problem(error/warning): Pomoc oko komande /disarm Ja kada nekome dam /disarm , skine mu se oruzije i ode u GS i kupi oruzije i moze da puca.
Evo Komanda :
YCMD:disarm(playerid,params[],help)
{
    #pragma unused help
    if(UlogovanProvera[playerid] == 0) return SendMessage( playerid, "Morate se ulogovati da bi pisali.");
    new pid,vreme,str[128];
    if(PlayerInfo[playerid][pAdmin] < 5 ) return SendErrorMessage( playerid, "Samo A5+");
    if(AdminDuty[playerid] == 0 ) return SendErrorMessage( playerid, "Morate biti na Admin duznosti!");
    if(sscanf(params, "uis[48]", pid,vreme)) return SendUsageMessage( playerid, "disarm [id] [vreme(minut]");
    if(PlayerInfo[pid][pDisarm] == 1) return SendErrorMessage ( playerid, "Taj igrac je vec disarmovan!");
    if(!IsPlayerConnected(pid)) return SendErrorMessage( playerid, "Pogresan ID!");
    if( PlayerInfo[pid][pDisarm] == 1 && PlayerInfo[pid][pDisarmVreme] != 0 ) return SendErrorMessage( playerid, "Zabranjeno vam je koristenje oruzija");
    PlayerInfo[pid][pDisarm] = 1;
    PlayerInfo[pid][pDisarmVreme] = vreme * 60;
    ResetPlayerWeapons(pid);
    format(str,sizeof str,"{77FF00}Admin %s vam je zabranio koriscenje oruzija %d minuta.", GetName(playerid),vreme);
    SCM(pid,-1,str);

    format(str,sizeof str,""ZELENA"Zabranili ste rokanje igracu: %s na %d!", GetName(pid),vreme);
    SCM(playerid,-1,str);
    return 1;
}
Dio skripte: [ pawn ]//[ /pawn ]
Debug iz server_log(ukoliko je u pitanju crashanje servera - crashdetect log): [ code ]//[ /code ]
Slika/video ingame problema(obavezno ako je ingame problem): //

Jednostavno postavi proveru, ako je disarmovan da ne moze da kupi oruzje

Stavi pod OnPlayerUpdate ovako
if(PlayerInfo[playerid][pDisarmovan] == 1) //proverava da l je igrac disarmovan i ako jeste odradi sledece
{
    ResetPlayerWeapons(playerid); //resetuje oruzija
    SendClientMessage(playerid, -1, "Ne mozes da koristis oruzije jer imas disarm")! //salje poruku igracu
    return 1;
}

Citat: PazzOnee poslato Januar 23, 2019, 02:49:10 PRE PODNE
Stavi pod OnPlayerUpdate ovako
if(PlayerInfo[playerid][pDisarmovan] == 1) //proverava da l je igrac disarmovan i ako jeste odradi sledece
{
    ResetPlayerWeapons(playerid); //resetuje oruzija
    SendClientMessage(playerid, -1, "Ne mozes da koristis oruzije jer imas disarm")! //salje poruku igracu
    return 1;
}


Znaci ako je disarmovan da mu resetuje oruzija i salje poruku pri svakom updateu igraca (od prilike 100 updatea u sekundi)?
Zar nije logicnije da mu zabrani dobavljanje oruzija tipa funkciom GivePlayerWeapon ili da na komande stavi provjere...

Molim vas pomozi te mi ako moze neko lijepo citavu komandu da mi objavi jer mi je stvarno potrebno.

Daj nam komandu za nabavljanje oruzja

YCMD:kupi(playerid, params[], help)
{
    #pragma unused help
    if(UlogovanProvera[playerid] == 0) return SendMessage( playerid, "Morate se ulogovati da bi pisali.");
   new x;
   for(new i; i < MAX_FIRMI; i++)
    {
      if(IsPlayerInRangeOfPoint(playerid, 25.0, FirmaInfo[fIzlazX], FirmaInfo[fIzlazY], FirmaInfo[fIzlazZ]) && GetPlayerVirtualWorld(playerid) == FirmaInfo[fVW])
      {
         if(FirmaInfo[fVrsta] == VRSTA_MARKET)
         {
            x++;
            if(FirmaInfo[UsaoFirma[playerid]][fProizvodi] <= 0) return SCM(playerid,-1,""BELA"Nemamo vise proizvoda!");
             new string1[275], string2[275], string[550];
            format(string1,sizeof(string1),""CRVENA1"- "BELA"Mobilni Telefon (150$)\n"CRVENA1"- "BELA"Imenik (50$)\n"CRVENA1"- "BELA"Cigare (20$)\n"CRVENA1"- "BELA"Upaljac (10$)\n"CRVENA1"- "BELA"Dopuna od 50$\n"CRVENA1"- "BELA"Dopuna od 100$\n"CRVENA1"- "BELA"Kanap (350$)\n");
            format(string2,sizeof(string2),""CRVENA1"- "BELA"Naocare (300$)\n"CRVENA1"- "BELA"Cvece (100$)\n"CRVENA1"- "BELA"Sok (10$)\n"CRVENA1"- "BELA"Pivo (10$)\n"CRVENA1"- "BELA"MP3 (700$)\n"CRVENA1"- "BELA"Sprej (70$)\n"CRVENA1"- "BELA"Sat (130$)\n"CRVENA1"- "BELA"Marama (500$)\n"CRVENA1"- "BELA"Hrana (300$)\n");
             format(string, sizeof(string), "%s%s", string1, string2);
             SPD(playerid, 86, DIALOG_STYLE_LIST, ""BELA"Market Kupovina", string, "Kupi", "Izlaz");
            break;
         }
         else if(FirmaInfo[fVrsta] == VRSTA_SEXSHOP)
         {
            x++;
            if(FirmaInfo[UsaoFirma[playerid]][fProizvodi] <= 0) return SCM(playerid,-1,""PLAVA"[UG FIRMA] "BELA"Nemamo vise proizvoda!");
            SPD(playerid, 88, DIALOG_STYLE_LIST, ""BELA"Sex Shop", ""LJUB"- "BELA"Sivi Vibrator (50$)\n"LJUB"- "BELA"Beli Vibrator (50$)\n"LJUB"- "BELA"Ljubicasti Vibrator (70$)\n"LJUB"- "BELA"Cvece (10$)", "Kupi", "Izlaz");
            break;
         }
         else if(FirmaInfo[fVrsta] == VRSTA_GUNSHOP)
         {
            x++;
            if( UsaoFirma[playerid] == -1 ) return SCM( playerid,-1,""ZPLAVA"[Firma]: "BELA"Morate biti u firmi!");
            if(FirmaInfo[UsaoFirma[playerid]][fProizvodi] <= 0) return SCM(playerid,-1,""ZPLAVA"[Firma]: "BELA"Nemamo vise proizvoda!");
            if(PlayerInfo[playerid][pGunDozvola] == 0) return SCM(playerid,-1, ""SIVA"Morate imati dozvolu za oruzije da bi kupili oruzije!");
            SPD(playerid, 90, DIALOG_STYLE_LIST, ""BELA"Gun Shop", ""SPLAVA"- "BELA"Noz (2000$)\n"SPLAVA"- "BELA"Palica (60$)\n"SPLAVA"- "BELA"Shotgun (8500$)\n"SPLAVA"- "BELA"Padobran (250$)\n"SPLAVA"- "BELA"Dezert (3000$)\n"SPLAVA"- "BELA"M4 (8500$)\n"SPLAVA"- "BELA"AK-47 (8500$)\n"SPLAVA"- "BELA"MP5 (5500$)\n"SPLAVA"- "BELA"Sniper (10000$)\n"SPLAVA"- "BELA"Pancir (5000$)", "Kupi", "Izlaz");
            break;
         }
         else if(FirmaInfo[fVrsta] == VRSTA_KLADIONICA)
            {
                x++;
                new broj, brojk = random(300), string[128];
            if(FirmaInfo[UsaoFirma[playerid]][fProizvodi] <= 0) return SCM(playerid,-1,""PLAVA"[UG FIRMA] "BELA"Nemamo vise proizvoda!");
                if(sscanf(params, "i",broj)) return SCM(playerid, -1, ""CRVENA1"[FS:RPG] Pomoc | "BELA"/kupi [BROJ 1- 300 (100$)]");
                if(broj < 1 || broj > 300) return SCM(playerid,-1, ""CRVENA1"[FS:RPG] "BELA"Ne mozete ici ispod 1 i vise od 300!");
            if(PlayerInfo[playerid][pNovacDzep] < 100) return SCM(playerid,-1,""CRVENA1"[FS:RPG] | "SIVA"Nemate dovoljno novca!");
            KladionicaBroj[playerid] = broj; g_NovacMinus(playerid, 100);
            if(KladionicaBroj[playerid] == brojk)
             {
                 SCM(playerid,-1,""SPLAVA"[Kladionica]: "SIVA"Cestitamo pogodili ste broj, osvojili ste 50000000$!");
                   g_NovacPlus(playerid, 50000000);
                   format(string,sizeof(string),""CRVENA1"[AC] "SIVA"Igrac %s je osvojio na kladionici 50000000$!",GetName(playerid));
               AdminGm(-1, string);
               FirmaInfo[UsaoFirma[playerid]][fProizvodi]--; FirmaNovac(UsaoFirma[playerid], 50);
             }
             else
             {
                 SCM(playerid,-1,""CRVENA1"[Kladionica]: "SIVA"Zao nam je ovaj put niste osvojili na kladionici!");
                    FirmaInfo[UsaoFirma[playerid]][fProizvodi]--; FirmaNovac(UsaoFirma[playerid], 50);
            }
            break;
            }
      }
   }
   for(new i = 86; i < 91; i++)
      {
          if(IsPlayerInRangeOfPoint(playerid, 5.0, FirmaInfo[fUlazX], FirmaInfo[fUlazY], FirmaInfo[fUlazZ]))
      {
            if(FirmaInfo[fVrsta] == VRSTA_SBIZZ)
         {
            x++;
            KioskKupovina[playerid] = i;
            SPD(playerid, 222, DIALOG_STYLE_LIST, ""BELA"Trafika", ""CRVENA1"- "BELA"Dopuna (20$)\n"CRVENA1"- "BELA"Dopuna (50$)\n"CRVENA1"- "BELA"Dopuna (100$)\n"CRVENA1"- "BELA"Sok (10$)\n"CRVENA1"- "BELA"Cigare (20$)\n"CRVENA1"- "BELA"Upaljac (10$)\n"CRVENA1"- "BELA"Cokoladica (10$)\n"CRVENA1"- "BELA"Halo Kartica (50$)", "Odaberi", "Izlaz");
                break;
         }
         }
   }
   return 1;
}

         else if(FirmaInfo[fVrsta] == VRSTA_GUNSHOP)
         {
            x++;
         
            if( UsaoFirma[playerid] == -1 ) return SCM( playerid,-1,""ZPLAVA"[Firma]: "BELA"Morate biti u firmi!");
            if(FirmaInfo[UsaoFirma[playerid]][fProizvodi] <= 0) return SCM(playerid,-1,""ZPLAVA"[Firma]: "BELA"Nemamo vise proizvoda!");
            if(PlayerInfo[playerid][pGunDozvola] == 0) return SCM(playerid,-1, ""SIVA"Morate imati dozvolu za oruzije da bi kupili oruzije!");
            if(PlayerInfo[playerid][pDisarm] == 1) return SendClientMessage(playerid, -1 ""SIVA"Ne mozete kupovati oruzje jer ste disarmovani!"); // Dodaj ovu liniju
            SPD(playerid, 90, DIALOG_STYLE_LIST, ""BELA"Gun Shop", ""SPLAVA"- "BELA"Noz (2000$)\n"SPLAVA"- "BELA"Palica (60$)\n"SPLAVA"- "BELA"Shotgun (8500$)\n"SPLAVA"- "BELA"Padobran 
            (250$)\n"SPLAVA"- "BELA"Dezert (3000$)\n"SPLAVA"- "BELA"M4 (8500$)\n"SPLAVA"- "BELA"AK-47 (8500$)\n"SPLAVA"- "BELA"MP5 (5500$)\n"SPLAVA"- "BELA"Sniper (10000$)\n"SPLAVA"- 
           "BELA"Pancir (5000$)", "Kupi", "Izlaz");
            break;
         }

YCMD:disarm(playerid,params[],help)
{
    #pragma unused help
    if(UlogovanProvera[playerid] == 0) return SendMessage( playerid, "Morate se ulogovati da bi pisali.");
    new pid,vreme,str[128];
    if(PlayerInfo[playerid][pAdmin] < 5 ) return SendErrorMessage( playerid, "Samo A5+");
    if(AdminDuty[playerid] == 0 ) return SendErrorMessage( playerid, "Morate biti na Admin duznosti!");
    if(sscanf(params, "uis[48]", pid,vreme)) return SendUsageMessage( playerid, "disarm [id] [vreme(minut]");
    if(PlayerInfo[pid][pDisarm] == 1) return SendErrorMessage ( playerid, "Taj igrac je vec disarmovan!");
    if(!IsPlayerConnected(pid)) return SendErrorMessage( playerid, "Pogresan ID!");
    PlayerInfo[pid][pDisarm] = 1;
    PlayerInfo[pid][pDisarmVreme] = vreme * 60;
    ResetPlayerWeapons(pid);
    format(str,sizeof str,"{77FF00}Admin %s vam je zabranio koriscenje oruzija %d minuta.", GetName(playerid),vreme);
    SCM(pid,-1,str);

    format(str,sizeof str,""ZELENA"Zabranili ste rokanje igracu: %s na %d!", GetName(pid),vreme);
    SCM(playerid,-1,str);
    return 1;
}

Probaj ovako...
Naravno,prilagodi svom modu.

Momci hvala vam mnogo stvarno mi je ovo mnogo od pomoci , hvala jos jednom <3.