[POMOC] vezi sa toys

Započeo Ilcev1, Jun 15, 2016, 21:19:44 POSLE PODNE

prethodna tema - sledeća tema

0 članova i 3 gostiju pregledaju ovu temu.

Skripta koju koristim: pa sada za sada nemam to
Detaljan opis problema: ovako hocu da uradim da kad kucam slotovi da izadze u dialogu slot 1 slot 2 slot 3 slot 4 kad bi kupio tih stvari hocu da mi ispisuje imenom na slot 1 koju sam kupio


slot 1 vec ne postoi zbog toga sto sam kupio toys ali hocu slot 1 kad bi kupio vec da ispisuje primjer: TOYS ID: 13334 - imenom RolCaps1 https://www.google.com/search?q=toys++samp&biw=1920&bih=979&tbm=isch&imgil=o_Azv78wgtasqM%253A%253BjyR8S9_VqACFuM%253Bhttp%25253A%25252F%25252Fng-gaming.net%25252Fforums%25252Fshowthread.php%25253F42478-GOLD-vip-toylist&source=iu&pf=m&fir=o_Azv78wgtasqM%253A%252CjyR8S9_VqACFuM%252C_&usg=__-E4xfnGHafLvRywJX0fPfi_5vvY%3D&ved=0ahUKEwjUqd6F36rNAhWDSBQKHQvkDoQQyjcIKQ&ei=PqlhV9SSJYORUYvIu6AI#imgrc=mwny5o-nbRqKUM%3A
Dio skripte: /
Neke slike/video za lakse dobivanje pomoci(neobavezno): /

Gledaj za pocetak nam treba skripta toga za toys. Kad das to onda ti mozemo pomoci. Isto tako nisam te bas najbolje razumeo sta ti hoces ustvari..

selection onaj plugin imas.
heroin rap - Moskri u kuci, od sledece lajne glava ce mi puci

ne razumete me? ta se skripta lako radi nego imenom fali u dialogu

                    format(string,sizeof(string), "Slot1: %s \nSlot2: %s\nSlot3 %s\nSlot4 %s\nSlot5 %s ");
           SPD(playerid,TOYSMENU1, DIALOG_STYLE_LIST, "Odaberi", string, "Kupi", "Izlaz");

slot 1 - SetPlayerAttachedObject(playerid, 1, 19317, 2, 0.1,0.04,0.0,60.0,85.0,25.0,1.0,1.0,1.0);

id toy- 19317

kad bi stavio taj id hocu da mi ispisuje na format slot 1 toy imenom

Ako sam te bas dobro razumeo ti bi ovako nesto...
Uzecu taj id za primer.

new
    ime[4];
if (19317) { ime = "Text"; }

format(string, sizeof(string), "Slot1: %s" ime); // Na serveru ce u slotu 1 pisati Text jer smo to gore definisali

Citat: â–... â–† â–ˆ Rudimental â–ˆ â–† â–... poslato Jun 15, 2016, 23:25:19 POSLE PODNE
Ako sam te bas dobro razumeo ti bi ovako nesto...
Uzecu taj id za primer.

new
    ime[4];
if (19317) { ime = "Text"; }

format(string, sizeof(string), "Slot1: %s" ime); // Na serveru ce u slotu 1 pisati Text jer smo to gore definisali

da ali kako da uradim svih objekta da bude ovako vec imam oko 200  kako cu da nazivam svih ovako?

A sto ti to nebi uradio preko mSelection ? Ako vec imas 200 objekata ja bi u mSelection uradio da sam na tvom mestu :D

mselection? pa to je toys necu sa mselection vec imam sistema u dialogu

Pa nista onda radi tih 200 objekata na taj nacin na koji sam ti napisao. :D Mada po meni je ono bolje i jednostavnije imas slike imas sve a malo toga treba da definises ali kako hoces...

Citat: â–... â–† â–ˆ Rudimental â–ˆ â–† â–... poslato Jun 16, 2016, 16:49:38 POSLE PODNE
Pa nista onda radi tih 200 objekata na taj nacin na koji sam ti napisao. :D Mada po meni je ono bolje i jednostavnije imas slike imas sve a malo toga treba da definises ali kako hoces...
nece to sta si dao daje erora ] [

Normalno da ti daje errore ako si tako podesio kako sam ti poslao to je bio samo primer, scripta nema odakle da cita te brojeve niti zna sta ce sa njima i eto ti errora :D
Ne znam bas kako si sve to zamislio i sta posle sa tim ja ti mogu reci evo 2 nacina kako da to uradis, ako radis sa prvim nacinom onda definises tako kako sam ti poslao ali umesto tog broja on mora da cita iz nekog fajla taj broj pa posle onda radi jos sta hoces sa tim. Znaci trebala bi ti neka baza podataka gde bi definisao te ID-ove objekata...
A drugi nacin evo mozes ovako nesto da uradis.
Ovo negde na vrhu scripte kod ostalih enum-a mozes staviti.


enum AttachmentEnum
{
    attachmodel,
    attachname[24]
}

new AttachmentObjects[][AttachmentEnum] = {
{ID objekta, "Text"},
{ID objekta, "Text"},
{ID objekta, "Text"} // na zadnji ne stavljas zarez
};


A ovo ti ide kod dialoga.

for(new x; x < sizeof(AttachmentObjects); x++)
{
    format(string, sizeof(string), "%s%s\n", string, AttachmentObjects[x][attachname]);
}

Citat: â–... â–† â–ˆ Rudimental â–ˆ â–† â–... poslato Jun 17, 2016, 15:20:22 POSLE PODNE
Normalno da ti daje errore ako si tako podesio kako sam ti poslao to je bio samo primer, scripta nema odakle da cita te brojeve niti zna sta ce sa njima i eto ti errora :D
Ne znam bas kako si sve to zamislio i sta posle sa tim ja ti mogu reci evo 2 nacina kako da to uradis, ako radis sa prvim nacinom onda definises tako kako sam ti poslao ali umesto tog broja on mora da cita iz nekog fajla taj broj pa posle onda radi jos sta hoces sa tim. Znaci trebala bi ti neka baza podataka gde bi definisao te ID-ove objekata...
A drugi nacin evo mozes ovako nesto da uradis.
Ovo negde na vrhu scripte kod ostalih enum-a mozes staviti.


enum AttachmentEnum
{
    attachmodel,
    attachname[24]
}

new AttachmentObjects[][AttachmentEnum] = {
{ID objekta, "Text"},
{ID objekta, "Text"},
{ID objekta, "Text"} // na zadnji ne stavljas zarez
};


A ovo ti ide kod dialoga.

for(new x; x < sizeof(AttachmentObjects); x++)
{
    format(string, sizeof(string), "%s%s\n", string, AttachmentObjects[x][attachname]);
}

brate stavio sam to ali nz do cega je problem svaki put ucitava jedan item ja kupujem drugog ono ucita onaj koju sam imao kad kucam na njega objekta e novi sta sam kupio do cega bi bilo

Taj drugi primer sam ti izvukao iz FS sto postavlja objekte na igraca to mi je prvo palo na pamet pa reko da ti odatle izvucem ali nisam ti bas sve izvukao niti mozda objasnio kako neke stvari funkcionisu tako da je najbolje da ti to sam vidis pa ces razumeti :D
Evo ti FS za objekte ona ima tu slicnost sto ti hoces ili ti taj drugi primer koji sam ti slao http://pastebin.com/aspbDXFd

Citat: â–... â–† â–ˆ Rudimental â–ˆ â–† â–... poslato Jun 17, 2016, 16:26:31 POSLE PODNE
Taj drugi primer sam ti izvukao iz FS sto postavlja objekte na igraca to mi je prvo palo na pamet pa reko da ti odatle izvucem ali nisam ti bas sve izvukao niti mozda objasnio kako neke stvari funkcionisu tako da je najbolje da ti to sam vidis pa ces razumeti :D
Evo ti FS za objekte ona ima tu slicnost sto ti hoces ili ti taj drugi primer koji sam ti slao http://pastebin.com/aspbDXFd
Hvala puno brate kapirao sam i uradio sam sistem kako treba hvalati ali izvini ovako jel mozemo srediti jedna skripta anti weapon nez do cega je ne radi  da ne otvrim dr temu pa tu da sredimo
[pawn]

new weaponid = GetPlayerWeapon(playerid);
   new ammo;
//   new Float:Health;
   //GetPlayerHealth(playerid,Health);
   new name[MAX_PLAYER_NAME];
if(weaponid == 19 || weaponid == 20 || weaponid == 44 || weaponid == 45 || weaponid == 35 || weaponid == 36 || weaponid == 37 || weaponid == 38)
   { // weapon hack
        new string2[512];
        GetPlayerName(playerid, name, sizeof(name));
        format(string2, sizeof(string2), "AntiCheat(DR-ING):  %s e isklucen od server Pricina: Weapon Hack", name);
        SendClientMessageToAll(COLOR_NICERED, string2);
        AntiCheatLog(string2);
        SetTimerEx("KickAC",10, false, "i", playerid);
          return 1;
    }

imam i timera je na 100, ali ne radi nz do cega je to je to   [/pawn]

Ajde sredicemo jos i to. Ja bi to ovako uradio verovatno imas neki public od tajmera pa da ti ne pravim sada sve... Znaci tamo gde koristis SetTimer ne SetTimerEx imas public to verovatno znas godilo bi da uzmes neki brzi tajmer primer 1 sekunda i u njegov public ovo ubacis, ja cu dodati i foreach ti ako u publicu vec imas definisano za foreach ne treba ponovo.
foreach (Player, i)
{
if (GetPlayerWeapon(i) > 0)
{
new
weaponid = GetPlayerWeapon(i),
string2[128];
if (weaponid == 19 || weaponid == 20 || weaponid == 44 || weaponid == 45 || weaponid == 35 || weaponid == 36 || weaponid == 37 || weaponid == 38)
{ // weapon hack
format(string2, sizeof(string2), "AntiCheat(DR-ING):  %s e isklucen od server Pricina: Weapon Hack", GetName(i));
SendClientMessageToAll(COLOR_NICERED, string2);
AntiCheatLog(string2);
SetTimerEx("KickAC", 500, false, "d", i);
}
}
}


I evo ti stock GetName to je mnogo bolje i jednostavnije nego da uvek radis kao sto si ti uradio.
stock GetName(playerid)
{
    new pName[MAX_PLAYER_NAME];
    GetPlayerName(playerid, pName, MAX_PLAYER_NAME);
    return pName;
}


I to bi bilo to naravno ovaj anticheat ce kikovati igraca samo ako ima ova oruzja sto si ti definisao mozda to znas a mozda i ne pa mislis da ce kikovati za sve zivo sto se uzme preko cita ali ovo ce kikovati samo za ova oruzje bilo da je preko cita ili ovako da ih igrac dobije.