Pretraga

Pritisnite Enter za pretragu ili Escape za zatvaranje

Zaključano

[Pomoc] Error na komandi /posadidrvo

pre 11 godina
400
pregleda
13
postova
Ova tema je zaključana. Samo moderatori i administratori mogu odgovarati.
Snoopy.amx
Wheel Man
pre 11 godina
Skripta koju koristim: NGRP
Detaljan opis: Ovako, imam komandu /posadidrvo, i skoro sam stavio ovde pomoc sto samo sprema jedno drvo u folder, i skontao sam da sam bio obrisao liniju " new iddrva = SledeceDrvo(); " i da zbog toga nije ubacivalo ostala imena u folder, sada je problem sto imam error bas na toj liniji a error glasi:

error 017: undefined symbol "SledeceDrvo"

Kako da napravim taj public/stock "SledeceDrvo" ili sta vec treba molim vas pomozite mi
Evo cijela komanda /posadidrvo:

CMD:posadidrvo(playerid, params[])
{
        new iddrva = SledeceDrvo();
    new stringv;
    new randcode = 100 + random(899);
    new randtext = 100 + random(899);
    new Float:pozx, Float:pozy, Float:pozz;
    GetPlayerPos(playerid, pozx, pozy, pozz);
        new idi = PlayerInfo;
    new vrstad;
    if(sscanf(params, "i", vrstad))
        {
                SCM(playerid, -1,"/posadidrvo [1/2/3]");
                SCM(playerid, -1,"Vrste Drva | 1: Sljiva | 2: Kruska | 3: Jabuka");
                return 1;
        }
        if(vrstad == 1)
        {
        for(new i; i < sizeof(DI); i++)
          {
      if(IsPlayerInRangeOfPoint(playerid, 5.0, DI, DI, DI)) return SCM(playerid, -1,"{FF0000}ERROR: {FFFFFF}Izmedju voca mora biti razmak 5 koraka!");
            }
        if(!IsPlayerInRangeOfPoint(playerid, II, II, II, II)) return SCM(playerid, -1,"{FF0000}ERROR: {FFFFFF}Nisi na svom imanju!");
        if(PlayerInfo == 2555) return SCM(playerid, -1,"{FF0000}ERROR: {FFFFFF}Nemate imanje!");
        if(PlayerInfo == 0) return SCM(playerid, -1,"{FF0000}ERROR: {FFFFFF}Nemate sjemena za sljive!");
        if(PlayerInfo > 100) return SCM(playerid, -1,"{FF0000}ERROR: {FFFFFF}Ne mozete vise od 100 da posadite!");
                DI = 1;
                DI = 777;//777
                DI = 20;
            DI = 1;
            DI = randcode;
        DI = randtext;
        DI = pozx;
        DI = pozy;
        DI = pozz;
        new vrsta;
        if(DI == 1) { vrsta = "Sljiva"; }
            else if(DI == 2) { vrsta = "Kruska"; }
        else if(DI == 3) { vrsta = "Jabuka"; }
        format(stringv,256,"{FD722F}Voce jos nije izraslo!\nVreme do izrastanja: {FFFFFF}%d sati, %d minuta\n{FD722F}Vrsta drveta:{FFFFFF}%s",DI,DI,vrsta);
                DI = CreateDynamicObject(DI, DI+1,DI,DI-4, 0.0000000, 0.0000000, 0.0000000);
                DrvoLabel = CreateDynamic3DTextLabel(stringv, -1, DI+1,DI,DI, 15);
                SCM(playerid,-1,"Posadili ste sljivu!");
            DI = idi;
            DI = 1;
            PlayerInfo --;
            PlayerInfo ++;
            SacuvajDrvo(iddrva);
        Sigraca(playerid);
        }
        else if(vrstad == 2)
        {
        for(new i; i < sizeof(DI); i++)
        {
          if(IsPlayerInRangeOfPoint(playerid, 5.0, DI, DI, DI)) return SCM(playerid, -1,"{FF0000}ERROR: {FFFFFF}Izmedju voca mora biti razmak 5 koraka!");
          }
      if(!IsPlayerInRangeOfPoint(playerid, II, II, II, II)) return SCM(playerid, -1,"{FF0000}ERROR: {FFFFFF}Nisi na svom imanju!");
          if(PlayerInfo == 2555) return SCM(playerid, -1,"{FF0000}ERROR: {FFFFFF}Nemate imanje!");
          if(PlayerInfo == 0) return SCM(playerid, -1,"{FF0000}ERROR: {FFFFFF}Nemate sjemena za kruske!");
          if(PlayerInfo > 100) return SCM(playerid, -1,"{FF0000}ERROR: {FFFFFF}Ne mozete vise od 100 da posadite!");
      DI = 2;
      DI = 673;
      DI = 20;
          DI = 1;
          DI = randcode;
      DI = randtext;
      DI = pozx;
          DI = pozy;
          DI = pozz;
          new vrsta;
      if(DI == 1) { vrsta = "Sljiva"; }
          else if(DI == 2) { vrsta = "Kruska"; }
      else if(DI == 3) { vrsta = "Jabuka"; }
          format(stringv,256,"{FD722F}Voce jos nije izraslo!\nVreme do izrastanja: {FFFFFF}%d sati, %d minuta\n{FD722F}Vrsta drveta:{FFFFFF}%s",DI,DI,vrsta);
          DI = CreateDynamicObject(DI, DI+1,DI,DI-4, 0.0000000, 0.0000000, 0.0000000);
          DrvoLabel = CreateDynamic3DTextLabel(stringv, -1, DI+1,DI,DI, 15);
          SCM(playerid,-1,"Posadili ste krusku!");
          DI = idi;
          DI = 1;
          PlayerInfo --;
          PlayerInfo ++;
          SacuvajDrvo(iddrva);
      Sigraca(playerid);
        }
        else if(vrstad == 3)
        {
      for(new i; i < sizeof(DI); i++)
          {
          if(IsPlayerInRangeOfPoint(playerid, 5.0, DI, DI, DI)) return SCM(playerid, -1,"{FF0000}ERROR: {FFFFFF}Izmedju voca mora biti razmak 5 koraka!");
          }
          if(!IsPlayerInRangeOfPoint(playerid, II, II, II, II)) return SCM(playerid, -1,"{FF0000}ERROR: {FFFFFF}Nisi na svom imanju!");
          if(PlayerInfo == 2555) return SCM(playerid, -1,"{FF0000}ERROR: {FFFFFF}Nemate imanje!");
          if(PlayerInfo == 0) return SCM(playerid, -1,"{FF0000}ERROR: {FFFFFF}Nemate sjemena za jabuke!");
          if(PlayerInfo > 100) return SCM(playerid, -1,"{FF0000}ERROR: {FFFFFF}Ne mozete vise od 100 da posadite!");
      DI = 3;
      DI = 773;
      DI = 20;
          DI = 1;
          DI = randcode;
      DI = randtext;
      DI = pozx;
          DI = pozy;
          DI = pozz;
          new vrsta;
      if(DI == 1) { vrsta = "Sljiva"; }
          else if(DI == 2) { vrsta = "Kruska"; }
      else if(DI == 3) { vrsta = "Jabuka"; }
          format(stringv,256,"{FD722F}Voce jos nije izraslo!\nVreme do izrastanja: {FFFFFF}%d sati, %d minuta\n{FD722F}Vrsta drveta:{FFFFFF}%s",DI,DI,vrsta);
          DI = CreateDynamicObject(DI, DI+1,DI,DI-4, 0.0000000, 0.0000000, 0.0000000);
      DrvoLabel = CreateDynamic3DTextLabel(stringv, -1, DI+1,DI,DI, 15);
      SCM(playerid,-1,"Posadili ste jabuku!");
          DI = idi;
          DI = 1;
          PlayerInfo --;
          PlayerInfo ++;
          SacuvajDrvo(iddrva);
      Sigraca(playerid);
        }
        return 1;
}


Video/Slike: //
Rudimental
OG Legend
pre 11 godina
Pa nemas stock/public za to, i zato imas error...
Inace sta tebe ovde muci to sto ne pravi nove fajlove ? Posalji SacuvajDrvo
Snoopy.amx
Wheel Man
pre 11 godina
Imao sam komandu /posadidrvo, i bio mi izbacivao taj error i ja izbrisem tu liniju, onda kasnije skontam da zbog toga ne pravi nove fajlove i vratim tu liniju nazad, sad mi je problem kako da napravim taj public ili sta je vec "SledeceDrvo"
Evo ti sacuvajdrvo:


Funkcija SacuvajDrvo(iddrveta)
{
        new dFile;
        format(dFile, sizeof(dFile),"drva/Drvo_%d.ini",iddrveta);
        new INI:File = INI_Open(dFile);
        INI_WriteFloat(File,"dDrvoX",DI);
        INI_WriteFloat(File,"dDrvoY",DI);
        INI_WriteFloat(File,"dDrvoZ",DI);
        INI_WriteInt(File,"dIDImanja",DI);
        INI_WriteInt(File,"dVrijeme",DI);
        INI_WriteInt(File,"dPostavljeno",DI);
        INI_WriteInt(File,"dObjd",DI);
        INI_WriteInt(File,"dText",DI);
        INI_WriteInt(File,"dVrsta",DI);
        INI_WriteInt(File,"dMinuta",DI);
        INI_WriteInt(File,"dSat",DI);
        INI_WriteInt(File,"dDrvo",DI);

        INI_Close(File);
        return 1;
}


Funkcija je definirano kao forward i public
Rudimental
OG Legend
pre 11 godina
Ovo moze i kao stock da ti bude...
Dobro posto si imao taj problem sa fajlovima i sad radi kazi mi sta to SledeceDrvo treba da predstavlja ?
Snoopy.amx
Wheel Man
pre 11 godina
Vjerovatno da napravi sledeci id drveta da upisuje u fodler "drva",
Jer mi je tu bio error izbriso sam tu liniju i onda mi je  samo Drvo0.ini bilo i svako drvo koje posadim upise se u drvo0.ini,  vjerovatno treba napraviti public/stock "SledeceDrvo" koje ce da reda ostale id ove drva u folder, znaÅ¡ li to mozda? ili mozes li nekako drugačije probati napraviti dali da reda drva, drv0.ini, drvo1.ini, drvo2.ini itd.?
Rudimental
OG Legend
pre 11 godina
Pa ovo SacuvajDrvo ceti praviti nova drva samo sto mu treba ID ... E sad ne znam kako si ti sve to zamislio jesi zamislio na imanju da moze imati 1 drvo ili vise drva... Uzmimo primer da si zamislio 1 drvo i onda bi mogao dobiti taj ID preko varijable od samog imanja pImaImanje i preko tog da zapisuje IDove...
Takodje za enum oko ovih drva trebas staviti neki broj kao max ako ga nemas.
Snoopy.amx
Wheel Man
pre 11 godina
Vidim da nisi baÅ¡ dobro skontao  😄 , na imanju je napravljeno da se smije posaditi max 100 drva, problem je sto pise samo jedno drvo  u folder ostala se ne broje, znači na svakom imanju na serveru ko god posadi drvo to drvo se upisuje u folder pod Drvo0.ini, i nema dalje da reda, da mi je napravit da reda dalje ako ima drvo0.ini da napravi sledece drvo1.ini itd... zato mi fali public/stock "SledeceDrvo", mozemo li nekako drugacije to napraviti, to redanje u folder?
Rudimental
OG Legend
pre 11 godina
Pa razumem ja tebe sta ti hoces ali moras napraviti neke provere gde ces imati neke IDove i onda po tim IDovima da pravis sve to... Nije ti sad bas tako jednostavno jos ako imas vise tih imanja...
Snoopy.amx
Wheel Man
pre 11 godina
hmm komanda /napraviimanje, ne trazi ID nego samo reda id ove i sve radi, mogu li ti dati tu komandu pa da po toj komandi probas napraviti komandu /posadidrvo?
Rudimental
OG Legend
pre 11 godina
Nisi me razumeo funckija koju si napravio SacuvajDrvo(iddrveta) ti ovde imas iddrveta ali koji ID to ti svo vreme pricam potrebni su ti IDovi razliciti da bi se i fajlovi pravili tako... Mozda da napravis neko seme za ta drva pa preko tih semena kako bude trosio tako i preko njegove vrednosti da dobijes ID za drvo ali onda za svako imanje ti trebaju posebni fajlovi jer uzmimo primer da ti zasadis kod tebe 100 drveca i ja kod mene 100 drveca i sta ce biti posle s fajlovima izmesace se nesto ce biti tvoje nesto moje 😄

Ili kao sto sam vec rekao da napravis neki fajl i kom ces imati taj neki max drva kolko moze na srwu da se zasadi i onda preko njega da ti cita ID novi i kako sta zasadis tako tamo da se broj smanjuje...
Snoopy.amx
Wheel Man
pre 11 godina
Sve te razumijem, problem je sto ja to ne znam  😢
Snoopy.amx
Wheel Man
pre 11 godina
Riješio sam, našo sam stock rovio sam po interentu dok nisam naš'o haha, sada imam problem imam u enumu pSljiva, pkrusaka itd.. ali te sljive i kruske imaju neku brojčanu vrijednost npr pšljiva = 35; kako da napravim spremanje psljiva pjabuka i tako to? je l' na isti način kao i ostalo?
Rudimental
OG Legend
pre 11 godina


Molimo te da procitas pravila foruma te da onda otvoris temu po pravilima.

Razlog zakljucavanja:

Trebalo bi da znas da je BUMP dozvoljen tek kada prodje 24h

Pravila:

Glavna pravila Balkan SA:MP foruma .

Razgovor u vezi PAWN-Skriptanja .

Morate biti prijavljeni da biste odgovorili na ovu temu.

Prijava