[SAVJET]Pomoc

Započeo luka2223
30. Nov. 2014. Zaključano
155
pregleda
2
postova
luka2223
4
Enforcer
30. Nov. 2014.
O kakvom savjetu se radi😄ali mi mozete reci sad kad bi ja napravio drugu org i nista ne dirao u vezi sefa dali bi naprimer igrac koji je lider te druge org mogao uzimat iz prve org iz sefa..evo koda dole
Detaljan opis savjeta:
// Ovo ispod dodajte na pocetak skripte
// Ovo je dio koda u kojem definiramo gdje ce bit spremljeni podaci o organizaciji, tj. o kolicini materijala u sefu organizacije
enum E_ORG_DATA
{
E_ORG_MATS,
E_ORG_DROGS
};

new
gOrgData;

CMD:sef(playerid, params[])
{
new
userOption,
userItems,
userAmount,
orgID;

if (gPlayerData > 0) // Ako je igrac lider organizacije
{
// Uzimamo ID organizacije, ali smanjujemo taj broj jer u PAWN-u array (niz) pocinje sa 0, a ne sa 1, a mi spremamo ID organizacije od 1
// Primjer: nekiNiz = 0; - Pocetni element tog niza je sad 0
//          nekiNiz = 0; - Drugi element tog niza je sada 0, a ne prvi element niza
orgID = gPlayerData - 1;

if (sscanf(params, "s{sd}", userOption)) // Ako igrac nije upisao sve potrebne parametre, ispisuje mu poruku i opcije koje moze koristiti
{
SendClientMessage(playerid, C_WHITE, "OPCIJE: uzmi ostavi");
SendClientMessage(playerid, C_WHITE, "KORISTI: /sef [mats/droga] ");
return 1;
}

if (!strcmp(userOption, "uzmi", true)) // Ako je igrac odabrao opciju 'uzmi'
{
if (sscanf(params, "{s}s{d}", userItems))
return SendClientMessage(playerid, C_WHITE, "KORISTI: /sef uzmi [mats/droga] ");

if (!strcmp(userItems, "mats", true)) // Ako je igrac odabrao opciju 'mats'
{
if (sscanf(params, "{ss}d", userAmount))
return SendClientMessage(playerid, C_WHITE, "KORISTI: /sef uzmi mats ");
else if (gOrgData < userAmount)
return SendClientMessage(playerid, C_WHITE, "ERROR: Nema toliko materijala u sefu");

gOrgData -= userAmount; // Oduzmemo tu kolicinu materijala iz sefa
gPlayerData += userAmount; // I dodamo tu kolicinu materijala igracu

SendClientMessage(playerid, C_WHITE, "Uspjesno si uzeo materijale");
}
else if (!strcmp(userItems, "droga", true)) // Ako je igrac odabrao opciju 'droga'
{
if (sscanf(params, "{ss}d", userAmount))
return SendClientMessage(playerid, C_WHITE, "KORISTI: /sef uzmi droga ");
else if (gOrgData < userAmount)
return SendClientMessage(playerid, C_WHITE, "ERROR: Nema toliko droge u sefu");

gOrgData -= userAmount; // Oduzmemo tu kolicinu droge iz sefa
gPlayerData += userAmount; // I dodamo tu kolicinu droge igracu

SendClientMessage(playerid, C_WHITE, "Uspjesno si uzeo drogu");
}
}
else if (!strcmp(userOption, "ostavi", true)) // Ako je igrac odabrao opciju 'ostavi'
{
if (sscanf(params, "{s}s{d}", userItems))
return SendClientMessage(playerid, C_WHITE, "KORISTI: /sef ostavi [mats/droga] ");

if (!strcmp(userItems, "mats", true)) // Ako je igrac odabrao opciju 'mats'
{
if (sscanf(params, "{ss}d", userAmount))
return SendClientMessage(playerid, C_WHITE, "KORISTI: /sef ostavi mats ");
else if (gPlayerData < userAmount)
return SendClientMessage(playerid, C_WHITE, "ERROR: Nemas toliko materijala kod sebe");

gOrgData += userAmount; // Dodamo tu kolicinu materijala u sefa
gPlayerData -= userAmount; // I oduzmemo tu kolicinu materijala igracu

SendClientMessage(playerid, C_WHITE, "Uspjesno si ostavio materijale");
}
else if (!strcmp(userItems, "droga", true)) // Ako je igrac odabrao opciju 'droga'
{
if (sscanf(params, "{ss}d", userAmount))
return SendClientMessage(playerid, C_WHITE, "KORISTI: /sef ostavi droga ");
else if (gPlayerData < userAmount)
return SendClientMessage(playerid, C_WHITE, "ERROR: Nemas toliko droge kod sebe");

gOrgData += userAmount; // Dodamo tu kolicinu droge u sefa
gPlayerData -= userAmount; // I oduzmemo tu kolicinu droge igracu

SendClientMessage(playerid, C_WHITE, "Uspjesno si ostavio drogu");
}
}
}
else if (gPlayerData > 0) // Ako je igrac clan organizacije
{
// Uzimamo ID organizacije, ali smanjujemo taj broj jer u PAWN-u array (niz) pocinje sa 0, a ne sa 1, a mi spremamo ID organizacije od 1
// Primjer: nekiNiz = 0; - Pocetni element tog niza je sad 0
//          nekiNiz = 0; - Drugi element tog niza je sada 0, a ne prvi element niza
orgID = gPlayerData - 1;

if (sscanf(params, "s{sd}", userOption)) // Ako igrac nije upisao sve potrebne parametre, ispisuje mu poruku i opcije koje moze koristiti
{
SendClientMessage(playerid, C_WHITE, "OPCIJE: ostavi");
SendClientMessage(playerid, C_WHITE, "KORISTI: /sef [mats/droga] ");
return 1;
}

if (!strcmp(userOption, "ostavi", true)) // Ako je igrac odabrao opciju 'ostavi'
{
if (sscanf(params, "{s}s{d}", userItems))
return SendClientMessage(playerid, C_WHITE, "KORISTI: /sef ostavi [mats/droga] ");

if (!strcmp(userItems, "mats", true)) // Ako je igrac odabrao opciju 'mats'
{
if (sscanf(params, "{ss}d", userAmount))
return SendClientMessage(playerid, C_WHITE, "KORISTI: /sef ostavi mats ");
else if (gPlayerData < userAmount)
return SendClientMessage(playerid, C_WHITE, "ERROR: Nemas toliko materijala kod sebe");

gOrgData += userAmount; // Dodamo tu kolicinu materijala u sefa
gPlayerData -= userAmount; // I oduzmemo tu kolicinu materijala igracu

SendClientMessage(playerid, C_WHITE, "Uspjesno si ostavio materijale");
}
else if (!strcmp(userItems, "droga", true)) // Ako je igrac odabrao opciju 'droga'
{
if (sscanf(params, "{ss}d", userAmount))
return SendClientMessage(playerid, C_WHITE, "KORISTI: /sef ostavi droga ");
else if (gPlayerData < userAmount)
return SendClientMessage(playerid, C_WHITE, "ERROR: Nemas toliko droge kod sebe");

gOrgData += userAmount; // Dodamo tu kolicinu droge u sefa
gPlayerData -= userAmount; // I oduzmemo tu kolicinu droge igracu

SendClientMessage(playerid, C_WHITE, "Uspjesno si ostavio drogu");
}
}
}
else return SendClientMessage(playerid, C_WHITE, "ERROR: Nisi niti lider organizacije niti clan");
return 1;
}

Komentar:I ako moze pomoc kako da uradim drugi sef I da bude isto ovq komanda
osman2578
7
Underboss
🔥2
30. Nov. 2014.
mozes napraviti isto tako, ali da je pod istom komandom to ne mozes

Morate biti prijavljeni da biste odgovorili na ovu temu.

Prijava

© 2026 SmartShark. All rights reserved.

Powered by Momentum|v2026.3.001 Alpha