Skripta koju koristim:od 0
Detaljan opis problema:pa ovako kreiram biz,kupim ga i odem offf udjem ponovo pickupa nema....
Dio skripte:dacu sta treba
Neke slike/video za lakse dobivanje pomoci(neobavezno):
Citat: David (Sabljak) A.k.A SABO(T) poslato Jun 28, 2013, 19:31:14 POSLE PODNE
odes off ili restartas server?
ma iskljucim sve i ponovo upalim samp server i nema pickupa
A napravio si kreiranje pickup-ova i labela i ucitavanje svih bizeva kada upalis mod? Ako jesi daj kod
BizInfo[id][bPickup] = CreatePickup(1272, 1, BizInfo[id][bUlazX], BizInfo[id][bUlazY], BizInfo[id][bUlazZ], BizInfo[id][bWorld]);
format(String,sizeof(String),"{00FF00}Stanje: {FF0000}Na prodaju \n{00FF00}Cijena: {FF0000}$%d \n{00FF00}Id Biznisa: {FF0000}%d", cijena, id);
Create3DTextLabel(String, -1, X, Y, Z, 10.0, GetPlayerVirtualWorld(playerid));
ovo mi je sve od publica vezano za bizeve
forward SacuvajBiz(id);
public SacuvajBiz(id)
{
new file4[40];
format(file4, sizeof(file4), BIZNISIPATH, id);
new INI:File = INI_Open(file4);
INI_SetTag(File,"Biznis Informacije");
INI_WriteInt(File,"Stanje", BizInfo[id][bStanje]);
INI_WriteInt(File,"Cijena", BizInfo[id][bCijena]);
INI_WriteString(File,"Vlasnik", BizInfo[id][bVlasnik]);
INI_WriteInt(File,"Tip", BizInfo[id][bTip]);
INI_WriteInt(File,"Zakljucan", BizInfo[id][bZakljucan]);
INI_WriteInt(File,"Novac", BizInfo[id][bNovac]);
INI_WriteFloat(File,"UlazX", BizInfo[id][bUlazX]);
INI_WriteFloat(File,"UlazY", BizInfo[id][bUlazY]);
INI_WriteFloat(File,"UlazZ", BizInfo[id][bUlazZ]);
INI_WriteFloat(File,"UlazA", BizInfo[id][bUlazA]);
INI_WriteFloat(File,"IzlazX", BizInfo[id][bIzlazX]);
INI_WriteFloat(File,"IzlazY", BizInfo[id][bIzlazY]);
INI_WriteFloat(File,"IzlazZ", BizInfo[id][bIzlazZ]);
INI_WriteFloat(File,"IzlazA", BizInfo[id][bIzlazA]);
INI_WriteInt(File,"Int", BizInfo[id][bInt]);
INI_WriteInt(File,"World", BizInfo[id][bWorld]);
INI_WriteInt(File,"InsideInt", BizInfo[id][bInsideInt]);
INI_WriteInt(File,"InsideWorld", BizInfo[id][bInsideWorld]);
INI_WriteString(File,"Ime", BizInfo[id][bIme]);
INI_Close(File);
return 1;
}
forward ocitajbiz_data(idx, name[], value[]);
public ocitajbiz_data(idx, name[], value[])
{
INI_Int("Stanje", BizInfo[idx][bStanje]);
INI_Int("Cijena", BizInfo[idx][bCijena]);
INI_String("Vlasnik", BizInfo[idx][bVlasnik], 24);
INI_Int("Tip", BizInfo[idx][bTip]);
INI_Int("Zakljucan", BizInfo[idx][bZakljucan]);
INI_Int("Novac", BizInfo[idx][bNovac]);
INI_Float("UlazX", BizInfo[idx][bUlazX]);
INI_Float("UlazY", BizInfo[idx][bUlazY]);
INI_Float("UlazZ", BizInfo[idx][bUlazZ]);
INI_Float("UlazA", BizInfo[idx][bUlazA]);
INI_Float("IzlazX", BizInfo[idx][bIzlazX]);
INI_Float("IzlazY", BizInfo[idx][bIzlazY]);
INI_Float("IzlazZ", BizInfo[idx][bIzlazZ]);
INI_Float("IzlazA", BizInfo[idx][bIzlazA]);
INI_Int("bInt", BizInfo[idx][bInt]);
INI_Int("bWorld", BizInfo[idx][bWorld]);
INI_Int("bInsideInt", BizInfo[idx][bInsideInt]);
INI_Int("bInsideWorld", BizInfo[idx][bInsideWorld]);
INI_String("bIme", BizInfo[idx][bIme], 128);
return 1;
}
Mogu li ceo taj deo da dobijem celu tu for petlju posto verovatno njom loop-as sve, da vidim kako se na sta pozivas i kako sta radis, i probaj promeniti na dinamicne pickup-ove mozda probijes limit...
evo ti komanda napravifirmu pa pogledaj
CMD:napravifirmu(playerid, params[])
{
new String[128];
if(!IsPlayerAdmin(playerid)) return SCM(playerid, COLOR_LIGHTRED, "Niste Ovlasteni");
new cijena, level, id, int, world, string[128], Float:Xi, Float:Yi, Float:Zi, inti;
if(sscanf(params, "dddfff", cijena, level, inti, Xi, Yi, Zi)) return SendClientMessage(playerid, COLOR_LIGHTRED, "{FF0000}[C++]:{00FF00} /napravifirmu [cijena] [tip] [interior] [X] [Y] [Z]");
if(level < 0 || level > 4) return SendClientMessage(playerid, COLOR_LIGHTRED, "{FF0000}Nemoze preko 4");
if(cijena < 10000) return SendClientMessage(playerid, COLOR_LIGHTRED, "{FF0000}Nemoze ispod 10K.");
for(new h = 1;h < sizeof(BizInfo);h++)
{
if(BizInfo[h][bCijena] == 0)
{
id = h;
break;
}
}
new Float:X,Float:Y,Float:Z,Float:A;
GetPlayerPos(playerid, X, Y, Z);
GetPlayerFacingAngle(playerid, A);
int = GetPlayerInterior(playerid);
world = GetPlayerVirtualWorld(playerid);
BizInfo[id][bInsideInt] = inti;
BizInfo[id][bIzlazX] = Xi;
BizInfo[id][bIzlazY] = Yi;
BizInfo[id][bIzlazZ] = Zi;
BizInfo[id][bStanje] = 0;
BizInfo[id][bCijena] = cijena;
BizInfo[id][bTip] = level;
BizInfo[id][bUlazX] = X;
BizInfo[id][bUlazY] = Y;
BizInfo[id][bUlazZ] = Z;
BizInfo[id][bUlazA] = A;
BizInfo[id][bZakljucan] = 1;
BizInfo[id][bInt] =int;
BizInfo[id][bWorld] =world;
BizInfo[id][bInsideWorld] =id;
format(string, sizeof(string), "Vlasnistvo Balkan Investment Banke");
strmid(BizInfo[id][bIme], string, 0, strlen(string), 255);
BizInfo[id][bPickup] = CreatePickup(1272, 1, BizInfo[id][bUlazX], BizInfo[id][bUlazY], BizInfo[id][bUlazZ], BizInfo[id][bWorld]);
format(String,sizeof(String),"{00FF00}Stanje: {FF0000}Na prodaju \n{00FF00}Cijena: {FF0000}$%d \n{00FF00}Id Biznisa: {FF0000}%d", cijena, id);
Create3DTextLabel(String, -1, X, Y, Z, 10.0, GetPlayerVirtualWorld(playerid));
new file4[40];
format(file4, sizeof(file4), BIZNISIPATH, id);
new INI:File = INI_Open(file4);
INI_SetTag(File,"Biznis Informacije");
INI_WriteInt(File,"Stanje", BizInfo[id][bStanje]);
INI_WriteInt(File,"Cijena", BizInfo[id][bCijena]);
INI_WriteString(File,"Vlasnik", BizInfo[id][bVlasnik]);
INI_WriteInt(File,"Tip", BizInfo[id][bTip]);
INI_WriteInt(File,"Zakljucan", BizInfo[id][bZakljucan]);
INI_WriteInt(File,"Novac", BizInfo[id][bNovac]);
INI_WriteFloat(File,"UlazX", BizInfo[id][bUlazX]);
INI_WriteFloat(File,"UlazY", BizInfo[id][bUlazY]);
INI_WriteFloat(File,"UlazZ", BizInfo[id][bUlazZ]);
INI_WriteFloat(File,"UlazA", BizInfo[id][bUlazA]);
INI_WriteFloat(File,"IzlazX", BizInfo[id][bIzlazX]);
INI_WriteFloat(File,"IzlazY", BizInfo[id][bIzlazY]);
INI_WriteFloat(File,"IzlazZ", BizInfo[id][bIzlazZ]);
INI_WriteFloat(File,"IzlazA", BizInfo[id][bIzlazA]);
INI_WriteInt(File,"Int", BizInfo[id][bInt]);
INI_WriteInt(File,"World", BizInfo[id][bWorld]);
INI_WriteInt(File,"InsideInt", BizInfo[id][bInsideInt]);
INI_WriteInt(File,"InsideWorld", BizInfo[id][bInsideWorld]);
INI_WriteString(File,"Ime", BizInfo[id][bIme]);
INI_Close(File);
return 1;
}
i evo ti petlja
new str[40];
for(new idx = 1; idx < sizeof(BizInfo); idx++)
{
format(str, sizeof(str), BIZNISIPATH, idx);
INI_ParseFile(str, "loadbiz_%s", .bExtra = true, .extra = idx );
}
Posto si mi dao na PM da objasnim ovde znao sam da je to problem.
Napravio si kardinalnu gresku:
new str[40],String[128];
for(new idx = 1; idx < sizeof(BizInfo); idx++)
{
format(str, sizeof(str), BIZNISIPATH, idx);
INI_ParseFile(str, "loadbiz_%s", .bExtra = true, .extra = idx );
BizInfo[idx][bPickup] = CreatePickup(1272, 1, BizInfo[idx][bUlazX], BizInfo[idx][bUlazY], BizInfo[idx][bUlazZ], BizInfo[idx][bWorld]);
format(String,sizeof(String),"{00FF00}Stanje: {FF0000}Na prodaju \n{00FF00}Cijena: {FF0000}$%d \n{00FF00}Id Biznisa: {FF0000}%d", BizInfo[idx][bCijena], idx);
Create3DTextLabel(String, -1, BizInfo[idx][bUlazX], BizInfo[idx][bUlazY], BizInfo[idx][bUlazZ], 10.0, BizInfo[idx][bWorld]);
}
To sve moras ponovo kreirati
EDIT:
To je samo primer, ti napravi proveru ako je biz kupljen da bude drugi pickup i label, a ako nije kupljen da bude ovaj to znas valjda ako ne znas reci..
EDIT2:
evo ako je bStanje da li je prodan ili ne valjda je 0 ako nije prodan koliko sam skontao ako je tako evo kod:
new str[40],String[128];
for(new idx = 1; idx < sizeof(BizInfo); idx++)
{
format(str, sizeof(str), BIZNISIPATH, idx);
INI_ParseFile(str, "loadbiz_%s", .bExtra = true, .extra = idx );
if(BizInfo[idx][bStanje] == 0)
{
BizInfo[idx][bPickup] = CreatePickup(1272, 1, BizInfo[idx][bUlazX], BizInfo[idx][bUlazY], BizInfo[idx][bUlazZ], BizInfo[idx][bWorld]);
format(String,sizeof(String),"{00FF00}Stanje: {FF0000}Na prodaju \n{00FF00}Cijena: {FF0000}$%d \n{00FF00}Id Biznisa: {FF0000}%d", BizInfo[idx][bCijena], idx);
Create3DTextLabel(String, -1, BizInfo[idx][bUlazX], BizInfo[idx][bUlazY], BizInfo[idx][bUlazZ], 10.0, BizInfo[idx][bWorld]);
}
else
{
//Samo podesis kako treba kada je prodan, label i pickup
BizInfo[idx][bPickup] = CreatePickup(1272, 1, BizInfo[idx][bUlazX], BizInfo[idx][bUlazY], BizInfo[idx][bUlazZ], BizInfo[idx][bWorld]);
format(String,sizeof(String),"{00FF00}Stanje: {FF0000}Prodan \n{00FF00}Cijena: {FF0000}$%d \n{00FF00}Id Biznisa: {FF0000}%d", BizInfo[idx][bCijena], idx);
Create3DTextLabel(String, -1, BizInfo[idx][bUlazX], BizInfo[idx][bUlazY], BizInfo[idx][bUlazZ], 10.0, BizInfo[idx][bWorld]);
}
}
Idem probat tako
Gagi Pro resio stvar Lock