skripta: moja od 0
opis problema: radim firma system click (http://balkan-samp.com/forum/index.php?topic=68798.0) i sad cu da radim u ZCMD ali zanimaju me ovi prethodni kodovi da li ce uticati na to
evo ovaj
new str[40];
for(new idx = 1; idx < sizeof(FirmaInformacije); idx++)// Kreira loop, koji ce ici kroz sve firme
{
format(str, sizeof(str), FPATH, idx);// Ovo ide u spremanje, koje smo napravili ranije
INI_ParseFile(str, "sacuvajbiz_%s", .fExtra = true, .extra = idx );
FirmaInformacije[idx][fIkona] = CreateDynamicPickup(1272, 1, FirmaInformacije[idx][fUlazX], FirmaInformacije[idx][fUlazY], FirmaInformacije[idx][fUlazZ], FirmaInformacije[idx][fVW]); // Ovo ce automatski napravi pickup (ULAZ)
FirmaInformacije[idx][fIzvanIkone] = CreateDynamicPickup(1272, 1, FirmaInformacije[idx][fIzasaoX], FirmaInformacije[idx][fIzasaoY], FirmaInformacije[idx][fIzasaoZ], FirmaInformacije[idx][fUvw]); // Kreira pickup unutar interijera
}
To je ucitavanje preko Y_Ini nema to veze, nece ti praviti probleme sto koristis zcmd, a ne ycmd.
EDIT:
Ako si to pitao...
to sam pitao ali treba cete mi posle za prevodjenje posto nikad nisam radio pa xD
stigo sam do ovde
YCMD:napravifirmu(playerid, params[])
{
if(!IsPlayerAdmin(playerid)) return SCM(playerid, COLOR_GREY, "Nisi ovlasten da koristis ovu komandu");//Provjerava da li je igraÄ RCON admin... Ovo promjenite u vas Admin system, tj. u vasu provjeru jeli admin, ako zelite se koristiti svojim adminom iz GameMode-a
new cijena, level, id, int, fVW, string[128], Float:Xi, Float:Yi, Float:Zi, inti;// Sve definicije koje trebamo
if(sscanf(params, "dddfff", cijena, level, inti, Xi, Yi, Zi)) return SendClientMessage(playerid, COLOR_GREY, "Server: /napravi firmu [cijena] [tip firme] [interior] [X] [Y] [Z]");
if(level < 0 || level > 4) return SendClientMessage(playerid, COLOR_GREY, "Server: Ne ispod 0 ne vise od 10");//
if(cijena < 10000) return SendClientMessage(playerid, COLOR_GREY, "Server: cijena ne smije biti ispod 10.000 $");// Provjerava koliko unosi cjenu, slobodno promjenite u koju ocete
for(new h = 1;h < sizeof(FirmaInformacije);h++)
{
if(FirmaInformacije[h][fCijena] == 0)
{
id = h;
break;
}
}
new Float:X,Float:Y,Float:Z,Float:A;//Jos definicija
GetPlayerPos(playerid, X, Y, Z);//Dobiva igraÄevu poziciju, i sprema je u float
GetPlayerFacingAngle(playerid, A);
int = GetPlayerInterior(playerid);//Dobiva igraÄev interijer
world = GetPlayerVirtualWorld(playerid);//Virutal World
FirmaInformacije[id][fUinterioru] = inti;
FirmaInformacije[id][fIzasaoX] = Xi;
FirmaInformacije[id][fIzasaoY] = Yi;
FirmaInformacije[id][fIzasaoZ] = Zi;
FirmaInformacije[id][fOwned] = 0;
FirmaInformacije[id][fCijena] = cijena;
FirmaInformacije[id][fTip] = level;
FirmaInformacije[id][fUlazX] = X;
FirmaInformacije[id][fUlazY] = Y;
FirmaInformacije[id][fUlazZ] = Z;
FirmaInformacije[id][fUlazA] = A;
FirmaInformacije[id][fZakljucano] = 1;
FirmaInformacije[id][fInt] =int;
FirmaInformacije[id][fVW] =world;
FirmaInformacije[id][fUvw] =id;
format(string, sizeof(string), "Nema");
strmid(FirmaInformacije[id][fIme], string, 0, strlen(string), 255);
if(FirmaInformacije[id][fIzvanIkone]) DestroyDynamicPickup(FirmaInformacije[id][fIzvanIkone]);
if(FirmaInformacije[id][fIkona]) DestroyDynamicPickup(FirmaInformacije[id][fIkona]);
FirmaInformacije[id][fIzvanIkone] = CreateDynamicPickup(1272, 1, FirmaInformacije[id][fUlazX], FirmaInformacije[id][fUlazY], FirmaInformacije[id][fUlazZ], FirmaInformacije[id][fVW]);//Stvara pickup na vasoj lokaciji
FirmaInformacije[id][fIkona] = CreateDynamicPickup(1272, 1, FirmaInformacije[id][fIzasaoX], FirmaInformacije[id][fIzasaoY], FirmaInformacije[id][fIzasaoZ], FirmaInformacije[id][fUvw]);//Stvara pickup na vasoj lokaciji
new file4[40];
format(file4, sizeof(file4), FPATH, id);
new INI:File = INI_Open(file4);
INI_SetTag(File,"data");
INI_WriteInt(File,"fOwned", FirmaInformacije[id][fOwned]);
INI_WriteInt(File,"fCijena", FirmaInformacije[id][fCijena]);
INI_WriteString(File,"fVlasnik", FirmaInformacije[id][fVlasnik]);
INI_WriteInt(File,"fTip", FirmaInformacije[id][fTip]);
INI_WriteInt(File,"fZakljucano", FirmaInformacije[id][fZakljucano]);
INI_WriteInt(File,"fNovac", FirmaInformacije[id][fNovac]);
INI_WriteFloat(File,"fUlazX", FirmaInformacije[id][fUlazX]);
INI_WriteFloat(File,"fUlazY", FirmaInformacije[id][fUlazY]);
INI_WriteFloat(File,"fUlazZ", FirmaInformacije[id][fUlazZ]);
INI_WriteFloat(File,"fUlazA", FirmaInformacije[id][fUlazA]);
INI_WriteFloat(File,"fIzasaoX", FirmaInformacije[id][fIzasaoX]);
INI_WriteFloat(File,"fIzasaoY", FirmaInformacije[id][fIzasaoY]);
INI_WriteFloat(File,"fIzasaoZ", FirmaInformacije[id][fIzasaoZ]);
INI_WriteFloat(File,"fIzasaoA", FirmaInformacije[id][fIzasaoA]);
INI_WriteInt(File,"fInt", FirmaInformacije[id][fInt]);
INI_WriteInt(File,"fVW", FirmaInformacije[id][fVW]);
INI_WriteInt(File,"fUinterioru", FirmaInformacije[id][fUinterioru]);
INI_WriteInt(File,"fUvw", FirmaInformacije[id][fUvw]);
INI_WriteString(File,"fIme", FirmaInformacije[id][fIme]);
INI_Close(File);
return 1;
}
sad to hocu u zcmd ali nije mi jasno... nesto sam poceo ali hocu i nesto da izmenim pa na primer ovo pozicije x, y, z tu zelim da stavim da mi kreira na trenutnoj poziciji pa jel to mogu sa GetPlayerPos i tako nekako...
Bilo bi jos bolje kad bi mi neko preveo u zcmd samo ovaj primer dalje cu sam shvatiti
CMD:napravifirmu(playerid, params[])
{
if(!IsPlayerAdmin(playerid)) return SCM(playerid, COLOR_GREY, "Nisi ovlasten da koristis ovu komandu");//Provjerava da li je igraÄ RCON admin... Ovo promjenite u vas Admin system, tj. u vasu provjeru jeli admin, ako zelite se koristiti svojim adminom iz GameMode-a
new cijena, level, id, int, fVW, string[128], Float:Xi, Float:Yi, Float:Zi, inti;// Sve definicije koje trebamo
if(sscanf(params, "ddd", cijena, level, inti)) return SendClientMessage(playerid, COLOR_GREY, "Server: /napravi firmu [cijena] [tip firme] [interior]");
if(level < 0 || level > 4) return SendClientMessage(playerid, COLOR_GREY, "Server: Ne ispod 0 ne vise od 10");//
if(cijena < 10000) return SendClientMessage(playerid, COLOR_GREY, "Server: cijena ne smije biti ispod 10.000 $");// Provjerava koliko unosi cjenu, slobodno promjenite u koju ocete
for(new h = 1;h < sizeof(FirmaInformacije);h++)
{
if(FirmaInformacije[h][fCijena] == 0)
{
id = h;
break;
}
}
GetPlayerPos(playerid,Xi, Yi, Zi);
new Float:X,Float:Y,Float:Z,Float:A;//Jos definicija
GetPlayerPos(playerid, X, Y, Z);//Dobiva igraÄevu poziciju, i sprema je u float
GetPlayerFacingAngle(playerid, A);
int = GetPlayerInterior(playerid);//Dobiva igraÄev interijer
world = GetPlayerVirtualWorld(playerid);//Virutal World
FirmaInformacije[id][fUinterioru] = inti;
FirmaInformacije[id][fIzasaoX] = Xi;
FirmaInformacije[id][fIzasaoY] = Yi;
FirmaInformacije[id][fIzasaoZ] = Zi;
FirmaInformacije[id][fOwned] = 0;
FirmaInformacije[id][fCijena] = cijena;
FirmaInformacije[id][fTip] = level;
FirmaInformacije[id][fUlazX] = X;
FirmaInformacije[id][fUlazY] = Y;
FirmaInformacije[id][fUlazZ] = Z;
FirmaInformacije[id][fUlazA] = A;
FirmaInformacije[id][fZakljucano] = 1;
FirmaInformacije[id][fInt] =int;
FirmaInformacije[id][fVW] =world;
FirmaInformacije[id][fUvw] =id;
format(string, sizeof(string), "Nema");
strmid(FirmaInformacije[id][fIme], string, 0, strlen(string), 255);
if(FirmaInformacije[id][fIzvanIkone]) DestroyDynamicPickup(FirmaInformacije[id][fIzvanIkone]);
if(FirmaInformacije[id][fIkona]) DestroyDynamicPickup(FirmaInformacije[id][fIkona]);
FirmaInformacije[id][fIzvanIkone] = CreateDynamicPickup(1272, 1, FirmaInformacije[id][fUlazX], FirmaInformacije[id][fUlazY], FirmaInformacije[id][fUlazZ], FirmaInformacije[id][fVW]);//Stvara pickup na vasoj lokaciji
FirmaInformacije[id][fIkona] = CreateDynamicPickup(1272, 1, FirmaInformacije[id][fIzasaoX], FirmaInformacije[id][fIzasaoY], FirmaInformacije[id][fIzasaoZ], FirmaInformacije[id][fUvw]);//Stvara pickup na vasoj lokaciji
new file4[40];
format(file4, sizeof(file4), FPATH, id);
new INI:File = INI_Open(file4);
INI_SetTag(File,"data");
INI_WriteInt(File,"fOwned", FirmaInformacije[id][fOwned]);
INI_WriteInt(File,"fCijena", FirmaInformacije[id][fCijena]);
INI_WriteString(File,"fVlasnik", FirmaInformacije[id][fVlasnik]);
INI_WriteInt(File,"fTip", FirmaInformacije[id][fTip]);
INI_WriteInt(File,"fZakljucano", FirmaInformacije[id][fZakljucano]);
INI_WriteInt(File,"fNovac", FirmaInformacije[id][fNovac]);
INI_WriteFloat(File,"fUlazX", FirmaInformacije[id][fUlazX]);
INI_WriteFloat(File,"fUlazY", FirmaInformacije[id][fUlazY]);
INI_WriteFloat(File,"fUlazZ", FirmaInformacije[id][fUlazZ]);
INI_WriteFloat(File,"fUlazA", FirmaInformacije[id][fUlazA]);
INI_WriteFloat(File,"fIzasaoX", FirmaInformacije[id][fIzasaoX]);
INI_WriteFloat(File,"fIzasaoY", FirmaInformacije[id][fIzasaoY]);
INI_WriteFloat(File,"fIzasaoZ", FirmaInformacije[id][fIzasaoZ]);
INI_WriteFloat(File,"fIzasaoA", FirmaInformacije[id][fIzasaoA]);
INI_WriteInt(File,"fInt", FirmaInformacije[id][fInt]);
INI_WriteInt(File,"fVW", FirmaInformacije[id][fVW]);
INI_WriteInt(File,"fUinterioru", FirmaInformacije[id][fUinterioru]);
INI_WriteInt(File,"fUvw", FirmaInformacije[id][fUvw]);
INI_WriteString(File,"fIme", FirmaInformacije[id][fIme]);
INI_Close(File);
return 1;
}
Stavio sam i getplayerpos za one koordinate tako da ce kreirati tamo gde se nalazi igrac. Posto je u tom tutu fali nesto za ycmd sada ti je lakse da menjas samo YCMD: u CMD:
znaci samo promenim YCMD: neka komanda u CMD: neka komanda..... ty..... treba ce mi pomoci posle :)
ima ovaj kod IsPlayerBlizuUlazaFirme(playerid)
{
for(new b = 1; b < sizeof(FirmaInformacije); b++)
{
if(IsPlayerInRangeOfPoint(playerid, 2.0, FirmaInformacije[b][fUlazX], FirmaInformacije[b][fUlazY], FirmaInformacije[b][fUlazZ])) return b;
}
return -1;
}
jel tu izostavljeno Public ili sta?
i jos izbacuje mi ovvaj error
error 017: undefined symbol "fExtra"