Sunday - 09. 08. 2026 •  Ucitavanje...
Link #1 Link #2 Link #3 Link #4 Link #5

!!

Registruj se i otključaj pun sadržaj

Kao gost imaš ograničen pristup forumu.
Registracijom dobijaš pristup svim temama, možeš pisati poruke, učestvovati u diskusijama i biti dio naše zajednice.

Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - Ronald

Pages: [1]
1
Pomoc u vezi skrptanja / Re: error 035: argument type mismatch (argument 4)
« on: December 08, 2024, 12:19:47 PM »
You are not allowed to view links. Register or Login
Vas Problem : error 035: argument type mismatch (argument 4)
Linija Koda :

    new playerName[50]; // Za čuvanje imena igrača
    format(playerName, sizeof(playerName), "%s", ImeIgraca(playerid)); // Formatiranje imena


    new tmpobjid, object_world, object_int;
    tmpobjid = CreateDynamicObject(7914, 1422.062744, -973.979187, 56.023708, 0.000000, 0.000000, -15.200000, object_world, object_int, -1, 300.00, 300.00);
    SetDynamicObjectMaterialText(tmpobjid, 0, "DOBRODOSLI\n{7E60BF} %s", playerName, 130, "Arial", 30, 1, 0xFFFFFFFF, 0x00000000, 2);  //error error 035: argument type mismatch (argument 4)
    tmpobjid = CreateDynamicObject(7914, 1422.096801, -973.967773, 55.943721, 0.000000, 0.000000, -15.200000, object_world, object_int, -1, 300.00, 300.00);
    SetDynamicObjectMaterialText(tmpobjid, 0, "{000000}DOBRODOSLI\n %s", playerName, 130, "Arial", 30, 1, 0xFFFFFFFF, 0x00000000, 2);  //error error 035: argument type mismatch (argument 4)

 

Dodatan Komentar : Pokazuje mi error na linijama za ime ,vjerovatno je problem u formatiranju ali ja ne znam popraviti
Slika / Video :
Nemozes tako stavljat na teksture moras prvo formatirat i onda umjesto stringa nakacis formatisan tekst a u format dopises sve ajde probaj ovako stavit

Code: You are not allowed to view links. Register or Login
    new playerName[50]; // Za čuvanje imena igrača
    format(playerName, sizeof(playerName), "{000000}DOBRODOSLI\n %s", ImeIgraca(playerid)); // Formatiranje imena


    new tmpobjid, object_world, object_int;
    tmpobjid = CreateDynamicObject(7914, 1422.062744, -973.979187, 56.023708, 0.000000, 0.000000, -15.200000, object_world, object_int, -1, 300.00, 300.00);
    SetDynamicObjectMaterialText(tmpobjid, 0, playerName, 130, "Arial", 30, 1, 0xFFFFFFFF, 0x00000000, 2);  //error error 035: argument type mismatch (argument 4)
    tmpobjid = CreateDynamicObject(7914, 1422.096801, -973.967773, 55.943721, 0.000000, 0.000000, -15.200000, object_world, object_int, -1, 300.00, 300.00);
    SetDynamicObjectMaterialText(tmpobjid, 0, playerName, 130, "Arial", 30, 1, 0xFFFFFFFF, 0x00000000, 2);  //error error 035: argument type mismatch (argument 4)
nabrzinu sam odradio nisam provjeravo ako neradi probaj obrisat ovo \n pa probaj opet ok

2
OFFTOPIC / Re: #1 -> Glavni Razgovor
« on: December 08, 2024, 11:54:42 AM »
You are not allowed to view links. Register or Login
You are not allowed to view links. Register or Login
Moze pomoc oko medkid sistema ??
Pokusavam ga napravit al nece svaki put treci put ga ubije odma
Radio sam sa OnPlayerTakeDamage, stavljo i timer na igraca kad ima ispod 15hp da ga freeze i animaciju i vrati helt al opet nekad umre odma
Trebam savjet kako dalje koju funkciju na koji princip to radi vidjao sam u meanwhile modu tamo npr radi 10/10 puta
Probo sam i OnPlayerDeath koristit al isto mi nije islo dobro jedino da napravim da sacuva pozicije di ima ispod 15hp i onda ga teleportira na to mjesto zafreeza i nastima animaciju al nezz jel tako ispravno ili moze nekako lakse drugacije
hvala ucim skriptati 2 godine i objavljivat cu svoje radove gamemod napravit filterscript nekome ce koristit medkit sistem i markere

Nije greska, ali nije ni najbolja metoda.

Morao bi u OnPlayerTakeDamage da proveravas svaki put health igraca. Ako bi mu pao health ispod 15 prilikom primanja damage-a da vrati 0

To bi izgledalo ovako :

Code: You are not allowed to view links. Register or Login
public OnPlayerTakeDamage(playerid, issuerid, Float:amount, weaponid, bodypart) {

new Float:hp;
GetPlayerHealth(playerid, hp); //uzmemo trenutni hp igraca

new Float:newHP = hp - amount; //deklarisemo newHP gde cemo oduzeti trenutni hp sa damage-am koji je primio
if(newHP <= 15.0) { //ovde proveravamo ako ce broj biti manji ili jedan 15 ( sto znaci da kada primi damage health bi mu bio ispod 15 ili bi umro )
//ovde postavimo animaciju da padne, postavimo promenljivu neku da znamo da je pao itd...
SetPlayerHealth(playerid, 15.0); //postavljamo mu hp na 15
return 0; //vracamo 0 da ne bi primio damage
}

return 1;
}


Nisam siguran kako ce ovo da radi, mada trebalo bi, bolje bi bilo koristiti weapon config i OnPlayerDamage, mada ovako kako je napisano trebalo bi da radi
Stavio sam sve kako si rekao i RADIII prvo sam nadodo return 0 pa sam odma umro nije radilo sjetio se ovo za amount ubacio i svaki put radi freeza bez timera sad rjesit medkit za kupnju i podizanje timer i FS je spremna za objavljivanje
Mucio se oko toga a ustv je lagano kad znas kako treba sta..

3
OFFTOPIC / Re: #1 -> Glavni Razgovor
« on: December 08, 2024, 12:26:37 AM »
You are not allowed to view links. Register or Login
You are not allowed to view links. Register or Login
Moze pomoc oko medkid sistema ??
Pokusavam ga napravit al nece svaki put treci put ga ubije odma
Radio sam sa OnPlayerTakeDamage, stavljo i timer na igraca kad ima ispod 15hp da ga freeze i animaciju i vrati helt al opet nekad umre odma
Trebam savjet kako dalje koju funkciju na koji princip to radi vidjao sam u meanwhile modu tamo npr radi 10/10 puta
Probo sam i OnPlayerDeath koristit al isto mi nije islo dobro jedino da napravim da sacuva pozicije di ima ispod 15hp i onda ga teleportira na to mjesto zafreeza i nastima animaciju al nezz jel tako ispravno ili moze nekako lakse drugacije
hvala ucim skriptati 2 godine i objavljivat cu svoje radove gamemod napravit filterscript nekome ce koristit medkit sistem i markere

Nije greska, ali nije ni najbolja metoda.

Morao bi u OnPlayerTakeDamage da proveravas svaki put health igraca. Ako bi mu pao health ispod 15 prilikom primanja damage-a da vrati 0

To bi izgledalo ovako :

Code: You are not allowed to view links. Register or Login
public OnPlayerTakeDamage(playerid, issuerid, Float:amount, weaponid, bodypart) {

new Float:hp;
GetPlayerHealth(playerid, hp); //uzmemo trenutni hp igraca

new Float:newHP = hp - amount; //deklarisemo newHP gde cemo oduzeti trenutni hp sa damage-am koji je primio
if(newHP <= 15.0) { //ovde proveravamo ako ce broj biti manji ili jedan 15 ( sto znaci da kada primi damage health bi mu bio ispod 15 ili bi umro )
//ovde postavimo animaciju da padne, postavimo promenljivu neku da znamo da je pao itd...
SetPlayerHealth(playerid, 15.0); //postavljamo mu hp na 15
return 0; //vracamo 0 da ne bi primio damage
}

return 1;
}


Nisam siguran kako ce ovo da radi, mada trebalo bi, bolje bi bilo koristiti weapon config i OnPlayerDamage, mada ovako kako je napisano trebalo bi da radi
E taj return sam zaboravio stavit zato je meni ispisalo poruku i ubilo igraca bez da ga je freezovalo pa sam napravio timer na 100 kroz sve igrace da provjerava health i zamrzne ako je ispod 15 i da postavi na npr 50 i zamrzne igraca al trecinu puta to nije radilo kad se odma jako rani umro bi timer nebi detektirao
Ovo da odma uzima GetPlayerHealth i damage amount je vrhunska ideja toga se nebi sjetio zapamtiti cu to isto dodat pa pisem jel rjesilo problem timer cu obrisat valjda ce se sve moc sa OnPlayerTakeDamage sredit jer nevolim dodatne plugine stavljat komplikacije bezveze ako ovako radi

Markere vec imam gotove skoro jako prosto jedan enum sa pozicijama i iz njega se ucitava jedna random al da nije IsPlayerInRangeOfPoint da nebi dobio dva ista ili jedan blizu drugog i smanjujes P-var zamrznes par sekundi na timer sve dok ne pocisti sve markere jedino sad onaj dio sa metlom me muci dodat objekt na igraca da drzi u ruci zabavljam se sa virtual worldovima da svaki bude u svom i testiram PlayerObject da se stvori i nestane kad pocisti da bude realnije kad usavrsim objavim FS to ce koristit puno njih trazi

4
Filterscipts | Includes | Plugins / Re: [FS] premium shop
« on: December 07, 2024, 11:58:19 PM »
You are not allowed to view links. Register or Login
Code: You are not allowed to view links. Register or Login
\shopTest.pwn(17) : warning 235: public function lacks forward declaration (symbol "LoadPlayerData")
\shopTest.pwn(23) : error 017: undefined symbol "INI_ReadInt"
\shopTest.pwn(29) : warning 235: public function lacks forward declaration (symbol "SavePlayerData")
\shopTest.pwn(35) : error 017: undefined symbol "INI_WriteInt"
\shopTest.pwn(103) : error 017: undefined symbol "COLOR_GREEN"
\shopTest.pwn(111) : warning 203: symbol is never used: "checkgold"
\shopTest.pwn(111) : warning 203: symbol is never used: "kupiitem"
\shopTest.pwn(111) : warning 203: symbol is never used: "premiumshop"

Ovo nije FS za pocetak :)

Code: You are not allowed to view links. Register or Login
new message[256];Da nije malo mnogo xD ?

Zar nije malo bolje staviti sve u dialog a ne slati 7 poruka u chat igracu?

Code: You are not allowed to view links. Register or Login
SendClientMessage(playerid, COLOR_YELLOW, "Welcome to the Premium Shop!");
    for (new i = 0; i < MAX_PREMIUM_ITEMS; i++) {
        format(message, sizeof(message), "Item #%d: Cena: %d Gold", i + 1, g_PremiumItems[i][1]);
        SendClientMessage(playerid, COLOR_GREEN, message);
    }

    SendClientMessage(playerid, COLOR_YELLOW, "Koristi /kupiitem [item_id] da kupis item.");

Pritom kako ce da zna sta kupuje?

Code: You are not allowed to view links. Register or Login
if (strlen(params) == 0) {
        SendClientMessage(playerid, COLOR_RED, "Usage: /kupiitem [item_id]");
        return 1;
    }

    new itemID = strval(params);

    if (itemID < 1 || itemID > MAX_PREMIUM_ITEMS) {
        SendClientMessage(playerid, COLOR_RED, "Invalid item ID.");
        return 1;
    }

Malo je pametnije koristiti sscanf

Array ti nije tacno napisan :

Code: You are not allowed to view links. Register or Login
new g_PremiumItems[MAX_PREMIUM_ITEMS][5] = {
    {1, 50, 0},    // Item 1: Vehicle ID 1, Price: 50 Golda
    {2, 100, 1},   // Item 2: Weapon ID 2, Price: 100 Golda
    {3, 200, 0},   // Item 3: Vehicle ID 3, Price: 200 Golda
    {4, 150, 1},   // Item 4: Weapon ID 4, Price: 150 Golda
    {5, 300, 0}    // Item 5: Vehicle ID 5, Price: 300 Golda
};

Deklarisano 5, a imas 3 elementa

Takodje nema razloga da cuvas ID itema u nizu

Malo "cistija" verzija tvog koda :

Code: You are not allowed to view links. Register or Login
#define MAX_PREMIUM_ITEMS 5  // broj premium itema u shop

new g_PremiumItems[MAX_PREMIUM_ITEMS][2] = { //cuvamo 2 elementa ( ID vozila/oruzija i cenu koliko kosta )
    {511, 50}, 
    {24, 100}, 
    {522, 200},
    {31, 150}, 
    {518, 300} 
};

// komanda
CMD:premiumshop(playerid, params[])
{
    new message[32]; //nema potrebe vise

    SendClientMessage(playerid, COLOR_YELLOW, "Welcome to the Premium Shop!");
    for (new i = 0; i < MAX_PREMIUM_ITEMS; i++) {
        format(message, sizeof(message), "Item #%d: Cena: %d Gold", i+1, g_PremiumItems[i][1]); //prikazujemo ID i cenu
        SendClientMessage(playerid, COLOR_GREEN, message);
    }

    SendClientMessage(playerid, COLOR_YELLOW, "Koristi /kupiitem [item_id] da kupis item.");
    return 1;
}

// Komanda za kupovinu Premium Shop
CMD:kupiitem(playerid, params[])
{

    new itemID;
    if(sscanf(params, "d", itemID)) return SendClientMessage(playerid, COLOR_RED, "Usage: /kupiitem [item_id]");

    if (itemID < 1 || itemID > MAX_PREMIUM_ITEMS) return SendClientMessage(playerid, COLOR_RED, "Invalid item ID.");
    if (g_PlayerGold[playerid] < g_PremiumItems[itemID-1][1]) return SendClientMessage(playerid, COLOR_RED, "Nemas dovoljno golda da kupis ovaj item.");

    g_PlayerGold[playerid] -= g_PremiumItems[itemID-1][1];

    if(g_PremiumItems[itemID-1][0] > 46) { //ako je ID itema veci od 46 znaci da nije oruzije, posto je max ID oruzija 46 ( padobran )

        GivePlayerVehicle(playerid, g_PremiumItems[itemID-1][0]);
        SendClientMessage(playerid, COLOR_GREEN, "Uspesno ste kupili premium vozilo!");
    }
    else {
        GivePlayerWeapon(playerid, g_PremiumItems[itemID-1][0], 999);
        SendClientMessage(playerid, COLOR_GREEN, "Uspesno ste kupili premium oružje!");
    }

    SavePlayerData(playerid);

    return 1;
}

E sada opet kazem, dobro bi bilo da cuvas i naziv sta je u pitanju, i to bi izgledalo ovako :

Code: You are not allowed to view links. Register or Login
#define MAX_PREMIUM_ITEMS 5  // broj premium itema u shop

enum premiumItems { //deklarisemo koje informacije cuvamo

    itemName[32], //ime itema
    itemID, //ID
    itemPrice //Cena
};

new g_PremiumItems[MAX_PREMIUM_ITEMS][premiumItems] = { //sada cemo ovde popuniti array
    {"Infernus", 511, 50},  //stavljamo naziv itema, ID i cenu
    {"Deagle", 24, 100}, 
    {"NRG-500", 522, 200},
    {"M4", 31, 150}, 
    {"Buccaneer", 518, 300} 
};

// komanda
CMD:premiumshop(playerid, params[])
{
    new message[64];

    SendClientMessage(playerid, COLOR_YELLOW, "Welcome to the Premium Shop!");
    for (new i = 0; i < MAX_PREMIUM_ITEMS; i++) {
        format(message, sizeof(message), "Item %s(ID %d): Cena: %d Gold", g_PremiumItems[i][itemName], i-1, g_PremiumItems[i][itemPrice]); //prikazujemo naziv, id i cenu
        SendClientMessage(playerid, COLOR_GREEN, message);
    }

    SendClientMessage(playerid, COLOR_YELLOW, "Koristi /kupiitem [item_id] da kupis item.");
    return 1;
}

// Komanda za kupovinu Premium Shop
CMD:kupiitem(playerid, params[])
{

    new itemID;
    if(sscanf(params, "d", itemID)) return SendClientMessage(playerid, COLOR_RED, "Usage: /kupiitem [item_id]");

    if (itemID < 1 || itemID > MAX_PREMIUM_ITEMS) return SendClientMessage(playerid, COLOR_RED, "Invalid item ID.");
    if (g_PlayerGold[playerid] < g_PremiumItems[itemID-1][2]) return SendClientMessage(playerid, COLOR_RED, "Nemas dovoljno golda da kupis ovaj item.");

    g_PlayerGold[playerid] -= g_PremiumItems[itemID-1][2];

    if(g_PremiumItems[itemID-1][1] > 46) { //ako je ID itema veci od 46 znaci da nije oruzije, posto je max ID oruzija 46 ( padobran )

        GivePlayerVehicle(playerid, g_PremiumItems[itemID-1][1]);
    }
    else {
        GivePlayerWeapon(playerid, g_PremiumItems[itemID-1][0], 999);
    }

    va_SendClientMessage(playerid, -1, "Uspesno ste kupili %s za %d golda!", g_PremiumItems[itemID-1][itemName], g_PremiumItems[itemID-1][itemPrice]);

    SavePlayerData(playerid);

    return 1;
}
E dobro si ovo napisao!!! Popravit ovu Fs iskoristit kao ideju i bazu da napravim svoju sa prepravkama da bude bolja u dijalogu sa svim predlozima npr super ti je ova ideja za provjeru kad je oruzije kad je auto...Dodao bi spremanje sta je igrac kupio to nisam vidio da ima i nakon reloga dok ne potrosi municiju ili slupa auto..i vip skinove da ima mjenjat mozda al to se prkosi id-jevi oruzija i skinova su isti imas ideju neki programerski trik kako to savladat?
Ovo za kupiitem ima listu ispise u chatu kolko vidim i onda odaberes po ID koju stavku oces kupit al treba to u dijalog bude preglednije mozda kategorije napravit ili npr da dijalog prvo prikaze oruzija pa onda auta jer se ona manje kupuju itd ili sortirat po cijeni nesto vidjet kako to izvest moram zapocet isprobat te prijedloge za array jer nisam puno bas s njima radio a sscanf plugine nebi koristio jer ja pratim kako je na wikiju klasicne funkcije ono da svima radi bez da se dodatno sta moga ubacivat eto ako mozete pomoc da ovo unaprijedimo napravim FS bolju u dijalog i da sprema kad kupi dok ne potrosi mozda da se dinamicno admin dodaje stvari iz igrice pokusat napravit pa cu objavit tu da posluzi i drugima za premium/donator sistem

5
Filterscipts | Includes | Plugins / Re: [FS] premium shop
« on: December 07, 2024, 10:52:44 PM »
You are not allowed to view links. Register or Login
1. Umjesto da svaki put u komandi kupiitem provjeravaš stanje Golda, možeš napraviti funkciju koja će obraditi sve aspekte kupovine (provjera Golda, kupovina, dodela predmeta), što smanjuje dupliciranje koda i čini ga modularnijim.

2.U funkcijama za učitavanje i spremanje podataka (LoadPlayerData i SavePlayerData), možeš izbjeći dupliciranje koda za rad sa fajlovima
Planiram da popravim ovu FS za moj mod da koristim i napravim sve u dijalog kako V01D kaze i nikako da shhvatim ovo sto si napisao jer npr ja nevidim da se u komandi kupiitem provjerava stanje golda više od jedamput i to na liniji 73..ispravi me kako da bude bolje i modularnije jer pretvoricu u filterscipru (sad ima 9 errora) i dijaloge sve da se bira sta da kupi itd

2. LoadPlayerData i SavePlayerData imaju oko 3 linije ja tu nevidim nista dupliciran kod jedino ako mislis na format da bude 1 za obje funkcije posto su iste linije drugo ja nenalazim duplirano?

6
OFFTOPIC / Re: #1 -> Glavni Razgovor
« on: December 07, 2024, 08:58:57 PM »
Moze pomoc oko medkid sistema ??
Pokusavam ga napravit al nece svaki put treci put ga ubije odma
Radio sam sa OnPlayerTakeDamage, stavljo i timer na igraca kad ima ispod 15hp da ga freeze i animaciju i vrati helt al opet nekad umre odma
Trebam savjet kako dalje koju funkciju na koji princip to radi vidjao sam u meanwhile modu tamo npr radi 10/10 puta
Probo sam i OnPlayerDeath koristit al isto mi nije islo dobro jedino da napravim da sacuva pozicije di ima ispod 15hp i onda ga teleportira na to mjesto zafreeza i nastima animaciju al nezz jel tako ispravno ili moze nekako lakse drugacije
hvala ucim skriptati 2 godine i objavljivat cu svoje radove gamemod napravit filterscript nekome ce koristit medkit sistem i markere

7
Zalbe / Prigovor na sliku administratora
« on: December 07, 2024, 03:50:44 PM »
Moderator/Admin na kojeg postavljate zalbu :_slyz422
Razlog :svetogrđe
Slika / Video :https://zbsamp.com/index.php?action=dlattach;attach=2;type=avatar
Dodatan komentar :zastava republike na goloj guzi neprimjereno

8
Filterscipts | Includes | Plugins / Re: ( FS ) RP nick check Ime_Prezime
« on: December 07, 2024, 02:02:07 PM »
You are not allowed to view links. Register or Login
Code: You are not allowed to view links. Register or Login
IsValidRoleplayName(const name[]) {

if(!name[ 0 ] || strfind(name, "_") == -1)
    return 0;

else for (new i = 0, len = strlen(name); i != len; i ++) {
    if((i == 0) && (name[ i ] < 'A' || name[ i ] > 'Z'))
        return 0;

else if((i != 0 && i < len  && name[ i ] == '_') && (name[i + 1] < 'A' || name[i + 1] > 'Z'))
    return 0;

else if((name[ i ] < 'A' || name[ i ] > 'Z') && (name[ i ] < 'a' || name[ i ] > 'z') && name[ i ] != '_' && name[ i ] != '.')
    return 0;
}
return 1;
}

Here you go....
Meni treba fs radim modularni mod ako neces check samo odcitas fs
a ovdje ni nepise razlog zasto je izbacen jer zbog ceg nevalja nick

9
Filterscipts | Includes | Plugins / Re: ( FS ) RP nick check Ime_Prezime
« on: December 07, 2024, 01:49:07 PM »
You are not allowed to view links. Register or Login
PosluziteljIzbaci, sve mi je jasno
Guys, use regex
Zasto nevalja PosluziteljIzbaci zbsamp wiki kaze mora timer You are not allowed to view links. Register or Login bzvz je stock za 1x izvrsenje funkcije
obj regex nezz za to nisam cuo necu neki include plugin jer onda mora svako ubacivat uz fs itd

10
Filterscipts | Includes | Plugins / Re: ( FS ) RP nick check Ime_Prezime
« on: December 07, 2024, 01:35:47 PM »
You are not allowed to view links. Register or Login
svaka čast
Hvalaa trudio sam se za sve provjere al nestali komentari jbg

11
Filterscipts | Includes | Plugins / ( FS ) RP nick check Ime_Prezime
« on: November 30, 2024, 09:00:43 PM »
Filterskritu za provijeru RolePlay imena sam radio po naruđbi.
Može pomoć početnicima i ja ću je koristit na svom modu.
Slike, script sve ima u Attach-u.

12
Forum / Prjedlog za učenje skriptanja
« on: November 24, 2024, 04:25:43 PM »
Predlažem da se otvori tema gdje ćemo učiti skriptati
i rješavati razne probleme ako bude neki error ili warn

13
OFFTOPIC / Re: #1 -> Glavni Razgovor
« on: November 24, 2024, 10:53:05 AM »
Pozz tu ćemo učiti skriptati

Pages: [1]

Vrati se na pocetak
SMF 2.0.19 | SMF © 2021, Simple Machines
Page created in 0.535 seconds with 24 queries.
ZBS © 2011 - 2024, Zapadni Balkan SA:MP
Weiss X 10.2 © 2014, Jade Works Studio
Footer background belongs to GTA Forums
SimplePortal 2.3.7 © 2008-2026, SimplePortal