Problem(error/warning): Kreiram ingame trafiku ili jukebox ili atm i sacuvam ga ne pojavljuje se label za koriscenje i ne cuva ih u scriptfiles, ko moze nek pomogne nije veliki problem al ne znam sta moze da bude, citao bih po sajtovima al glavni forumi su off...
Deo skripte: [pawn]Ako bude potrebno saljem[/pawn]
Debug iz server_log(ukoliko je u pitanju crashanje servera - crashdetect log): /
Posalji kod za kreiranje trafike, cuvanje i ucitavanje
Mogu poslati kasnije nisam sad kod kuce, saljem posle i za trafike i za sve sto ne ucitava, hvala za pomoc posle saljem
Citat: V01D poslato Septembar 27, 2020, 16:45:44 POSLE PODNE
Posalji kod za kreiranje trafike, cuvanje i ucitavanje
Evo kodovi
Trafike:
[pawn] YCMD:napravitrafiku(playerid, params[], help)
{
if( UlogovanIgrac[ playerid ] == 0) return SEM( playerid, "Moras se ulogovati da bi koristio ovu komandu!" );
if( PI[ playerid ][ pAdmin ] < 6) return SEM( playerid, "Nisi ovlascen // Nemate autorizaciju za koristenje ove naredbe!" );
if( UlogovanIgrac[ playerid ] == 0) return SEM( playerid, "Nisi ulogovan!" );
new trafid = 0;
GetPlayerPos(playerid, X,Y,Z);
for(new b = 0; b < sizeof(TI); b++)
{
if( TI
[tPostavljena] == 1)
{
trafid = b + 1;
}
}
if( trafid > 200) return SEM( playerid, "Ne mozete napraviti vise od 200 trafika." );
if( sscanf(params, "ii", tlvl, tcena))
{
SKP(playerid, "/napravitrafiku (level) (cena)" );
return true;
}
tobjekat[ playerid ] = CreateDynamicObjectEx(1571, X, Y+4, Z, 0, 0, 0, 300.0, 300.0);
EditDynamicObject(playerid, tobjekat[ playerid ]);
editing[ playerid ] = 8;
SCMF(playerid, -1, ""COL_ARP"[A] {FFFFFF}Editujes trafiku ID:%d. (Kada pritisnete save, tamo gde ste stajali tu ce se nalaziti pickup i label)",trafid);
return true;
} [/pawn]
[pawn] for(new b = 0; b < sizeof(TI); b++)
{
new gFile[60];
format(gFile, sizeof(gFile), "trafike/Trafika_%d.ini" ,b);
if( fexist(gFile))
{
INI_ParseFile(gFile, "UcitajTrafike", .bExtra = true, .extra = b);
if( TI[tPostavljena] == 1)
{
if( TI[tImaVlasnika] == 0)
{
format(string,sizeof(string),"[ Trafika: (%d) ]\nCijena: $%d\nNivo: %d\nZa kupovinu: /kupitrafiku", b, TI[tCena], TI[tLevel ]);
TrafikaLabel = C3D(string ,PRODAJESE,TI[tPickX], TI[tPickY], TI[tPickZ],15);
TrafikaPickup = CDP(1274, 1, TI[tPickX], TI[tPickY], TI[tPickZ ]);
CreateDynamicObject(1571, TI[tTrafX], TI[tTrafY], TI[tTrafZ], TI[tRotX], TI[tRotY], TI[tRotZ ]);
C3D("{0084e3}/tkupi\n/robtrafika", BELA, TI[tTrafX], TI[tTrafY], TI[tTrafZ], 15);
}
if( TI[tImaVlasnika] == 1)
{
format(string,sizeof(string),"[ Trafika: (%d) ]\nVlasnik: %s\nNivo: %d\nCijena: $%d\nNeaktivnost: %dh", b, TI[tVlasnik], TI[tLevel], TI[tCena], TI[tNeakt ]);
TrafikaLabel = C3D(string ,KUPLJENO,TI[tPickX], TI[tPickY], TI[tPickZ],15);
TrafikaPickup = CDP(1274, 1, TI[tPickX], TI[tPickY], TI[tPickZ ]);
CreateDynamicObject(1571, TI[tTrafX], TI[tTrafY], TI[tTrafZ], TI[tRotX], TI[tRotY], TI[tRotZ ]);
C3D("{0084e3}/tkupi\n/robtrafika", BELA, TI[tTrafX], TI[tTrafY], TI[tTrafZ], 15);
}
}
}
} [/pawn]
[pawn] stock SledecaTrafika()
{
new trf[64];
for(new idtrafike = 0; idtrafike <= MAX_TRAFIKA; idtrafike++)
{
format(trf, sizeof(trf), "trafike/Trafika_%d.ini", idtrafike);
if( !fexist(trf)) return idtrafike;
}
return true;
}
_callback: UcitajTrafike(idtrafe, name[], value[])
{
INI_Int( "tImaVlasnika",TI[idtrafe][tImaVlasnika ]);
INI_String("tVlasnik",TI[idtrafe][tVlasnik],32);
INI_Float("tTrafX",TI[idtrafe][tTrafX ]);
INI_Float("tTrafY",TI[idtrafe][tTrafY ]);
INI_Float("tTrafZ",TI[idtrafe][tTrafZ ]);
INI_Float("tRotX",TI[idtrafe][tRotX ]);
INI_Float("tRotY",TI[idtrafe][tRotY ]);
INI_Float("tRotZ",TI[idtrafe][tRotZ ]);
INI_Float("tPickX",TI[idtrafe][tPickX ]);
INI_Float("tPickY",TI[idtrafe][tPickY ]);
INI_Float("tPickZ",TI[idtrafe][tPickZ ]);
INI_Int( "tLevel",TI[idtrafe][tLevel ]);
INI_Int( "tCena",TI[idtrafe][tCena ]);
INI_Int( "tKasa",TI[idtrafe][tKasa ]);
INI_Int( "tNeakt",TI[idtrafe][tNeakt ]);
INI_Int( "tPostavljena",TI[idtrafe][tPostavljena ]);
return true;
}
_callback: SacuvajTrafiku(idtrafe)
{
new dFile[128];
format(dFile, sizeof(dFile),"trafike/Trafika_%d.ini",idtrafe);
new INI:File = INI_Open(dFile);
INI_WriteInt( File, "tImaVlasnika",TI[idtrafe][tImaVlasnika ]);
INI_WriteString(File,"tVlasnik",TI[idtrafe][tVlasnik ]);
INI_WriteFloat(File,"tTrafX",TI[idtrafe][tTrafX ]);
INI_WriteFloat(File,"tTrafY",TI[idtrafe][tTrafY ]);
INI_WriteFloat(File,"tTrafZ",TI[idtrafe][tTrafZ ]);
INI_WriteFloat(File,"tRotX",TI[idtrafe][tRotX ]);
INI_WriteFloat(File,"tRotY",TI[idtrafe][tRotY ]);
INI_WriteFloat(File,"tRotZ",TI[idtrafe][tRotZ ]);
INI_WriteFloat(File,"tPickX",TI[idtrafe][tPickX ]);
INI_WriteFloat(File,"tPickY",TI[idtrafe][tPickY ]);
INI_WriteFloat(File,"tPickZ",TI[idtrafe][tPickZ ]);
INI_WriteInt( File, "tLevel",TI[idtrafe][tLevel ]);
INI_WriteInt( File, "tCena",TI[idtrafe][tCena ]);
INI_WriteInt( File, "tKasa",TI[idtrafe][tKasa ]);
INI_WriteInt( File, "tNeakt",TI[idtrafe][tNeakt ]);
INI_WriteInt( File, "tPostavljena",TI[idtrafe][tPostavljena ]);
INI_Close(File);
return true;
}
[/pawn]
takodje ne cuva ni poklone ni jelke nista sto se kreira ingame... a da su objekti, atm trafike jukebox jelke pokloni nemoguce da je sve to ubagano... mislim da je neki globalni problem
Pa imaš li kreirane fajlove gdje se treba spremiti ?
Imaju folderi kreirani su vec tipa atmovi, trafike itd
Ako može da postaviš kod koji se poziva na EditDynamicObject.
[pawn]public OnPlayerEditDynamicObject(playerid, objectid, response, Float:x, Float:y, Float:z, Float:rx, Float:ry, Float:rz)
{
return true;
}
[/pawn]
samo ovo mi stoji ostalo je tipa ovo
[pawn]EditDynamicObject(playerid, objekat[ playerid ]);[/pawn]
Moras da napravis da sacuva trafiku kada zavrsi editovanje objekta.. Pogledaj sa nekog moda
Imas li neku preporuku odakle da vidim tj kod moda? i kako otp izgleda to cuvanje
San Marino, Athlone
hvala pokusacu pa javljam
Citat: V01D poslato Septembar 27, 2020, 20:51:11 POSLE PODNE
San Marino, Athlone
Druze pogledaj ovo, ovo mi je sumnjivo nesto evo ti kodovi, negde je EditObject negde EditDynamicObject
[pawn] YCMD:napravijukebox(playerid, params[], help)
{
new str[128];
if( PI[ playerid ][ pAdmin ] < 6) return SEM( playerid, "Nisi ovlasten // Nemate autorizaciju za koristenje ove naredbe!" );
if( editing[ playerid ] > 0) return SEM( playerid, "Vec editujete nesto." );
if( UlogovanIgrac[ playerid ] == 0) return SEM( playerid, "Nisi ulogovan!" );
new atmid = 0;
for(new b = 0; b < sizeof(JUI); b++)
{
if( JUI
[jPostavljen] == 1)
{
atmid = b + 1;
}
}
if( atmid > 100) return SEM( playerid, "Ne mozete napraviti vise od 100 jukeboxova." );
format(str, sizeof(str), ""COL_ARP"[A] {FFFFFF}Editujes JukeBox ID:%d.", atmid);
SCM( playerid, -1, str);
new Float:x, Float:y, Float:z;
GetPlayerPos(playerid, x,y,z);
objekat[ playerid ] = CreateDynamicObjectEx(2779, x, y+1, z, 0, 0, 0, 300.0, 300.0);
EditDynamicObject(playerid, objekat[ playerid ]);
editing[ playerid ] = 14;
return true;
}[/pawn]
A OVDE
[pawn] public OnPlayerEditObject(playerid, playerobject, objectid, response, Float:fX, Float:fY, Float:fZ, Float:fRotX, Float:fRotY, Float:fRotZ)
{
new string[512];
new Float:oldX, Float:oldY, Float:oldZ,
Float:oldRotX, Float:oldRotY, Float:oldRotZ;
GetObjectPos(objectid, oldX, oldY, oldZ);
GetObjectRot(objectid, oldRotX, oldRotY, oldRotZ);
if( editing[ playerid ] == 3)
{
if( response == EDIT_RESPONSE_FINAL)
{
new atmid = 0;
for(new b = 0; b < sizeof(AI); b++)
{
if( AI[aPostavljen] == 1)
{
atmid = b + 1;
}
}
DestroyDynamicObject(objekat[ playerid ]);
editing[ playerid ] = 0;
CreateDynamicObject(2942, Float:fX, Float:fY, Float:fZ, Float:fRotX, Float:fRotY, Float:fRotZ);
AI[atmid][aPostavljen] = 1;
AI[atmid][aAtmX] = Float:fX;
AI[atmid][aAtmY] = Float:fY;
AI[atmid][aAtmZ] = Float:fZ;
AI[atmid][aRotX] = Float:fRotX;
AI[atmid][aRotY] = Float:fRotY;
AI[atmid][aRotZ] = Float:fRotZ;
format(string,sizeof(string),"{008080}[ {FFFFFF}ATM: (%d) {008080}]\n{FFFFFF}/atm\n/robatm", atmid);
ATMLabel[atmid] = C3D(string ,-1,AI[atmid][aAtmX], AI[atmid][aAtmY], AI[atmid][aAtmZ],10);
format(string, sizeof(string), ""COL_ARP"[A] {FFFFFF}Napravio si ATM [ID:%d].", atmid);
SCM( playerid, -1, string);
new str[128];
format(str,128,"{95AB09}(UPOZORENJE) %s je napravio ATM [ID: %d]!", GetName( playerid ), atmid);
PAdm(ZUTA,str,1);
atmovi++;
SacuvajAtm(atmid);
}
if( response == EDIT_RESPONSE_CANCEL)
{
DestroyDynamicObject(objekat[ playerid ]);
SCM( playerid, -1, ""COL_ARP"[A] {FFFFFF}Unistili ste ATM." );
editing[ playerid ] = 0;
}
}
else if( editing[ playerid ] == 5)
{
if( response == EDIT_RESPONSE_FINAL)
{
new spikeid = 0;
for(new b = 0; b < sizeof(SPI); b++)
{
if( SPI[spPostavljen] == 1)
{
spikeid = b + 1;
}
}
DestroyObject(sobjekat[ playerid ]);
editing[ playerid ] = 0;
SpikeObject[spikeid] = CreateObject(2899, Float:fX, Float:fY, Float:fZ, Float:fRotX, Float:fRotY, Float:fRotZ);
SPI[spikeid][spPostavljen] = 1;
SPI[spikeid][spSpikeX] = Float:fX;
SPI[spikeid][spSpikeY] = Float:fY;
SPI[spikeid][spSpikeZ] = Float:fZ;
SPI[spikeid][spRotX] = Float:fRotX;
spikeovi++;
SPI[spikeid][spRotY] = Float:fRotY;
SPI[spikeid][spRotZ] = Float:fRotZ;
format(string, sizeof(string), ""COL_ARP"[A] {FFFFFF}Napravio si spike [ID:%d].", spikeid);
SCM( playerid, -1, string);
new str[128];
format(str,128,"{95AB09}(UPOZORENJE) %s je napravio spike [ID: %d]!", GetName( playerid ), spikeid);
PAdm(ZUTA,str,1);
//SacuvajSpike(spikeid);
}
if( response == EDIT_RESPONSE_CANCEL)
{
DestroyObject(sobjekat[ playerid ]);
SCM( playerid, -1, ""COL_ARP"[A] {FFFFFF}Unistili ste spike." );
editing[ playerid ] = 0;
}
}
else if( editing[ playerid ] == 6)
{
if( response == EDIT_RESPONSE_FINAL)
{
new grafid = 0;
for(new b = 0; b < sizeof(GI); b++)
{
if( GI[gPostavljen] == 1)
{
grafid = b + 1;
}
}
DestroyObject(dobjekat[ playerid ]);
new str[300];
format(str, 300, "{FFFFFF}%s", textora);
editing[ playerid ] = 0;
GI[grafid][gPostavljen] = 1;
strmid(GI[grafid][gText],str,0,strlen(str),255);
GI[grafid][gGraffitX] = Float:fX;
GI[grafid][gGraffitY] = Float:fY;
GI[grafid][gGraffitZ] = Float:fZ;
GI[grafid][gRotX] = Float:fRotX;
GI[grafid][gRotY] = Float:fRotY;
GI[grafid][gRotZ] = Float:fRotZ;
graf[grafid] = CreateObject(19479, GI[grafid][gGraffitX], GI[grafid][gGraffitY], GI[grafid][gGraffitZ], GI[grafid][gRotX], GI[grafid][gRotY], GI[grafid][gRotZ ]);
SetObjectMaterialText(graf[grafid], GI[grafid][gText], 0, 100, "Bold", 24, 0, -32256, 0, 1);
format(string, sizeof(string), ""COL_ARP"[A] {FFFFFF}Napravio si graffit [ID:%d], text: %s.", grafid, textora);
SCM( playerid, -1, string);
format(str,128,"{95AB09}(UPOZORENJE) %s je napravio graffit [ID: %d]!", GetName( playerid ), grafid);
PAdm(ZUTA,str,1);
SacuvajGraffit(grafid);
graffiti++;
}
if( response == EDIT_RESPONSE_CANCEL)
{
DestroyObject(dobjekat[ playerid ]);
SCM( playerid, -1, ""COL_ARP"[A] {FFFFFF}Unistili ste graffit." );
editing[ playerid ] = 0;
}
}
else if( editing[ playerid ] == 7)
{
if( response == EDIT_RESPONSE_FINAL)
{
new govid = 0;
for(new b = 0; b < sizeof(GOI); b++)
{
if( GOI[goPostavljen] == 1)
{
govid = b + 1;
}
}
DestroyObject(gobjekat[ playerid ]);
editing[ playerid ] = 0;
GOI[govid][goPostavljen] = 1;
GOI[govid][goPosX] = Float:fX;
GOI[govid][goPosY] = Float:fY;
GOI[govid][goPosZ] = Float:fZ;
GOI[govid][goRotX] = Float:fRotX;
GOI[govid][goRotY] = Float:fRotY;
GOI[govid][goRotZ] = Float:fRotZ;
GovornicaLabel[govid] = C3D("{0084e3}/govornica",BELA,GOI[govid][goPosX], GOI[govid][goPosY], GOI[govid][goPosZ],10);
CreateDynamicObject(1216, GOI[govid][goPosX], GOI[govid][goPosY], GOI[govid][goPosZ], GOI[govid][goRotX], GOI[govid][goRotY], GOI[govid][goRotZ ]);
format(string, sizeof(string), ""COL_ARP"[A] {FFFFFF}Napravio si govornicu [ID:%d].", govid);
SCM( playerid, -1, string);
new str[128];
format(str,128,"{95AB09}(UPOZORENJE) %s je napravio govornicu [ID: %d]!", GetName( playerid ), govid);
PAdm(ZUTA,str,1);
govornice++;
SacuvajGovornicu(govid);
}
if( response == EDIT_RESPONSE_CANCEL)
{
DestroyObject(gobjekat[ playerid ]);
SCM( playerid, -1, ""COL_ARP"[A] {FFFFFF}Unistili ste govornicu." );
editing[ playerid ] = 0;
}
}
else if( editing[ playerid ] == 8)
{
if( response == EDIT_RESPONSE_FINAL)
{
new trafid = 0;
for(new b = 0; b < sizeof(TI); b++)
{
if( TI[tPostavljena] == 1)
{
trafid = b + 1;
}
}
DestroyDynamicObject(tobjekat[ playerid ]);
new Float:px, Float:py, Float:pz;
GetPlayerPos(playerid, px, py, pz);
TI[trafid][tTrafX] = Float:fX;
TI[trafid][tTrafY] = Float:fY;
TI[trafid][tTrafZ] = Float:fZ;
TI[trafid][tRotX] = Float:fRotX;
TI[trafid][tRotY] = Float:fRotY;
TI[trafid][tRotZ] = Float:fRotZ;
TI[trafid][tCena] = tcena;
TI[trafid][tLevel] = tlvl;
TI[trafid][tPickX] = px;
TI[trafid][tPickY] = py;
TI[trafid][tPickZ] = pz;
TI[trafid][tImaVlasnika] = 0;
TI[trafid][tKasa] = 0;
TI[trafid][tPostavljena] = 1;
strmid(TI[trafid][tVlasnik],"Niko",0,strlen("Niko"),255);
format(string,sizeof(string),"[ Trafika: (%d) ]\nCijena: $%d\nNivo: %d\nZa kupovinu: /kupitrafiku", trafid, TI[trafid][tCena], TI[trafid][tLevel ]);
TrafikaLabel[trafid] = C3D(string ,PRODAJESE,TI[trafid][tPickX], TI[trafid][tPickY], TI[trafid][tPickZ],15);
TrafikaPickup[trafid] = CDP(1274, 1, TI[trafid][tPickX], TI[trafid][tPickY], TI[trafid][tPickZ ]);
CreateDynamicObject(1571, TI[trafid][tTrafX], TI[trafid][tTrafY], TI[trafid][tTrafZ], TI[trafid][tRotX], TI[trafid][tRotY], TI[trafid][tRotZ ]);
C3D("{0084e3}/tkupi\n/robtrafika", BELA, TI[trafid][tTrafX], TI[trafid][tTrafY], TI[trafid][tTrafZ], 15);
format(string,sizeof(string),""COL_ARP"[A] {FFFFFF}Trafika [ID:%d] je napravljena.",trafid);
SCM( playerid,SIVA,string);
TrafikaLabelIPickup(trafid);
SacuvajTrafiku(trafid);
new str[128];
format(str,128,"{95AB09}(UPOZORENJE) Admin %s je napravio trafiku [ID: %d]!", GetName( playerid ), trafid);
PAdm(ZUTA,str,1);
editing[ playerid ] = 0;
}
if( response == EDIT_RESPONSE_CANCEL)
{
DestroyDynamicObject(tobjekat[ playerid ]);
SCM( playerid, -1, ""COL_ARP"[A] {FFFFFF}Unistili ste trafiku." );
editing[ playerid ] = 0;
}
}
else if( editing[ playerid ] == 9)
{
if( response == EDIT_RESPONSE_FINAL)
{
new jelkaid = 0;
for(new b = 0; b < sizeof(JI); b++)
{
if( JI[jPostavljena] == 1)
{
jelkaid = b + 1;
}
}
DestroyObject(jobjekat[ playerid ]);
JI[jelkaid][jJelkaX] = Float:fX;
JI[jelkaid][jJelkaY] = Float:fY;
JI[jelkaid][jJelkaZ] = Float:fZ;
JI[jelkaid][jRotX] = Float:fRotX;
JI[jelkaid][jRotY] = Float:fRotY;
JI[jelkaid][jRotZ] = Float:fRotZ;
JI[jelkaid][jPostavljena] = 1;
format(string,sizeof(string),"{00FFEE}Zelimo vam srecne Bozicne\ni novogodisnje praznike!\n*** 2020 ***" );
C3D(string ,-1,JI[jelkaid][jJelkaX], JI[jelkaid][jJelkaY], JI[jelkaid][jJelkaZ]+3,15);
CreateDynamicObject(19076, JI[jelkaid][jJelkaX], JI[jelkaid][jJelkaY], JI[jelkaid][jJelkaZ], JI[jelkaid][jRotX], JI[jelkaid][jRotY], JI[jelkaid][jRotZ ]);
format(string,sizeof(string),""COL_ARP"[A] {FFFFFF}Jelka [ID:%d] je napravljena.",jelkaid);
SCM( playerid,SIVA,string);
SacuvajJelku(jelkaid);
new str[128];
jelke++;
format(str,128,"{95AB09}(UPOZORENJE) Admin %s je napravio jelku [ID: %d]!", GetName( playerid ), jelkaid);
PAdm(ZUTA,str,1);
editing[ playerid ] = 0;
}
if( response == EDIT_RESPONSE_CANCEL)
{
DestroyObject(jobjekat[ playerid ]);
SCM( playerid, -1, ""COL_ARP"[A] {FFFFFF}Unistili ste jelku." );
editing[ playerid ] = 0;
}
}
else if( editing[ playerid ] == 10)
{
if( response == EDIT_RESPONSE_FINAL)
{
new poklonid = 0;
for(new b = 0; b < sizeof(POI); b++)
{
if( POI[poPostavljena] == 1)
{
poklonid = b + 1;
}
}
DestroyObject(pobjekat[ playerid ]);
POI[poklonid][poPoklonX] = Float:fX;
POI[poklonid][poPoklonY] = Float:fY;
POI[poklonid][poPoklonZ] = Float:fZ;
POI[poklonid][poRotX] = Float:fRotX;
POI[poklonid][poRotY] = Float:fRotY;
POI[poklonid][poRotZ] = Float:fRotZ;
POI[poklonid][poPostavljena] = 1;
POI[poklonid][poUzet] = 0;
format(string,sizeof(string),"{FFFFFF}Poklon nije otvoren!\n\n{0084e3}/poklon" );
PoklonLabel[poklonid] = C3D(string ,-1,POI[poklonid][poPoklonX], POI[poklonid][poPoklonY], POI[poklonid][poPoklonZ],3);
PoklonObject[poklonid] = CreateDynamicObject(19054, POI[poklonid][poPoklonX], POI[poklonid][poPoklonY], POI[poklonid][poPoklonZ], POI[poklonid][poRotX], POI[poklonid][poRotY], POI[poklonid][poRotZ ]);
format(string,sizeof(string),""COL_ARP"[A] {FFFFFF}Poklon [ID:%d] je napravljen.",poklonid);
SCM( playerid,SIVA,string);
SacuvajPoklon(poklonid);
new str[128];
format(str,128,"{95AB09}(UPOZORENJE) Admin %s je napravio poklon [ID: %d]!", GetName( playerid ), poklonid);
PAdm(ZUTA,str,1);
editing[ playerid ] = 0;
pokloni++;
}
if( response == EDIT_RESPONSE_CANCEL)
{
DestroyObject(pobjekat[ playerid ]);
SCM( playerid, -1, ""COL_ARP"[A] {FFFFFF}Unistili ste poklon." );
editing[ playerid ] = 0;
}
}
else if( editing[ playerid ] == 11)
{
if( response == EDIT_RESPONSE_FINAL)
{
new objekatid = 0;
for(new b = 0; b < sizeof(OI); b++)
{
if( OI[oPostavljen] == 1)
{
objekatid = b + 1;
}
}
DestroyObject(oobjekat[ playerid ]);
OI[objekatid][oObjectX] = Float:fX;
OI[objekatid][oObjectY] = Float:fY;
OI[objekatid][oObjectZ] = Float:fZ;
OI[objekatid][oRotX] = Float:fRotX;
OI[objekatid][oRotY] = Float:fRotY;
OI[objekatid][oRotZ] = Float:fRotZ;
OI[objekatid][oPostavljen] = 1;
OI[objekatid][oObject] = oobj;
format(string,sizeof(string),"{FFFFFF}[ Object ID:%d ]",objekatid);
ObjectLabel[objekatid] = C3D(string ,-1,OI[objekatid][oObjectX], OI[objekatid][oObjectY], OI[objekatid][oObjectZ],10);
ObjObject[objekatid] = CreateObject(oobj, OI[objekatid][oObjectX], OI[objekatid][oObjectY], OI[objekatid][oObjectZ], OI[objekatid][oRotX], OI[objekatid][oRotY], OI[objekatid][oRotZ ]);
format(string,sizeof(string),""COL_ARP"[A] {FFFFFF}Object [ID:%d] je napravljen.",objekatid);
SCM( playerid,SIVA,string);
SacuvajObjekat(objekatid);
new str[128];
format(str,128,"{95AB09}(UPOZORENJE) Admin %s je napravio objekat [ID: %d]!", GetName( playerid ), objekatid);
PAdm(ZUTA,str,1);
editing[ playerid ] = 0;
}
if( response == EDIT_RESPONSE_CANCEL)
{
DestroyObject(oobjekat[ playerid ]);
SCM( playerid, -1, ""COL_ARP"[A] {FFFFFF}Unistili ste objekat." );
editing[ playerid ] = 0;
}
}
else if( editing[ playerid ] == 12)
{
if( response == EDIT_RESPONSE_FINAL)
{
new spikeid = 0;
for(new b = 0; b < sizeof(BA); b++)
{
if( BA[baPostavljen] == 1)
{
spikeid = b + 1;
}
}
DestroyObject(bobjekat[ playerid ]);
editing[ playerid ] = 0;
BarricadeObject[spikeid] = CreateObject(3578, Float:fX, Float:fY, Float:fZ, Float:fRotX, Float:fRotY, Float:fRotZ);
BA[spikeid][baPostavljen] = 1;
BA[spikeid][baBarX] = Float:fX;
BA[spikeid][baBarY] = Float:fY;
BA[spikeid][baBarZ] = Float:fZ;
BA[spikeid][baRotX] = Float:fRotX;
BA[spikeid][baRotY] = Float:fRotY;
BA[spikeid][baRotZ] = Float:fRotZ;
format(string, sizeof(string), ""COL_ARP"[A] {FFFFFF}Napravio si barikadu [ID:%d].", spikeid);
SCM( playerid, -1, string);
new str[128];
format(str,128,"{95AB09}(UPOZORENJE) %s je napravio barikadu [ID: %d]!", GetName( playerid ), spikeid);
PAdm(ZUTA,str,1);
//SacuvajBarikadu(spikeid);
}
if( response == EDIT_RESPONSE_CANCEL)
{
DestroyObject(bobjekat[ playerid ]);
SCM( playerid, -1, ""COL_ARP"[A] {FFFFFF}Unistili ste barikadu." );
editing[ playerid ] = 0;
}
}
else if( editing[ playerid ] == 13)
{
if( response == EDIT_RESPONSE_FINAL)
{
new spikeid = 0;
for(new b = 0; b < sizeof(CA); b++)
{
if( CA[caPostavljen] == 1)
{
spikeid = b + 1;
}
}
DestroyObject(cobjekat[ playerid ]);
editing[ playerid ] = 0;
CunjObject[spikeid] = CreateObject(1237, Float:fX, Float:fY, Float:fZ, Float:fRotX, Float:fRotY, Float:fRotZ);
CA[spikeid][caPostavljen] = 1;
CA[spikeid][caBarX] = Float:fX;
CA[spikeid][caBarY] = Float:fY;
CA[spikeid][caBarZ] = Float:fZ;
CA[spikeid][caRotX] = Float:fRotX;
CA[spikeid][caRotY] = Float:fRotY;
CA[spikeid][caRotZ] = Float:fRotZ;
format(string, sizeof(string), ""COL_ARP"[A] {FFFFFF}Napravio si cunj [ID:%d].", spikeid);
SCM( playerid, -1, string);
new str[128];
format(str,128,"{95AB09}(UPOZORENJE) %s je napravio cunj [ID: %d]!", GetName( playerid ), spikeid);
PAdm(ZUTA,str,1);
//SacuvajCunj(spikeid);
}
if( response == EDIT_RESPONSE_CANCEL)
{
DestroyObject(cobjekat[ playerid ]);
SCM( playerid, -1, ""COL_ARP"[A] {FFFFFF}Unistili ste cunj." );
editing[ playerid ] = 0;
}
}
else if( editing[ playerid ] == 14)
{
if( response == EDIT_RESPONSE_FINAL)
{
new atmid = 0;
for(new b = 0; b < sizeof(JUI); b++)
{
if( JUI[jPostavljen] == 1)
{
atmid = b + 1;
}
}
DestroyDynamicObject(objekat[ playerid ]);
editing[ playerid ] = 0;
CreateDynamicObject(2779, Float:fX, Float:fY, Float:fZ, Float:fRotX, Float:fRotY, Float:fRotZ);
JUI[atmid][jPostavljen] = 1;
JUI[atmid][jAtmX] = Float:fX;
JUI[atmid][jAtmY] = Float:fY;
JUI[atmid][jAtmZ] = Float:fZ;
JUI[atmid][jRotX] = Float:fRotX;
JUI[atmid][jRotY] = Float:fRotY;
JUI[atmid][jRotZ] = Float:fRotZ;
format(string,sizeof(string),"{F3FF02}.:: JukeBox [%d] ::.\n{FFFFFF}/oocshop",atmid);
JukeboxLabel[atmid] = C3D(string ,-1,JUI[atmid][jAtmX], JUI[atmid][jAtmY], JUI[atmid][jAtmZ]+2,10);
format(string, sizeof(string), ""COL_ARP"[A] {FFFFFF}Napravio si JukeBox [ID:%d].", atmid);
SCM( playerid, -1, string);
new str[128];
format(str,128,"{95AB09}(UPOZORENJE) %s je napravio JukeBox [ID: %d]!", GetName( playerid ), atmid);
PAdm(ZUTA,str,1);
atmovi++;
SacuvajJukebox(atmid);
}
if( response == EDIT_RESPONSE_CANCEL)
{
DestroyDynamicObject(objekat[ playerid ]);
SCM( playerid, -1, ""COL_ARP"[A] {FFFFFF}Unistili ste Jukebox." );
editing[ playerid ] = 0;
}
}
else if( editing[ playerid ] == 16)
{
if( response == EDIT_RESPONSE_FINAL)
{
new kontejnerid = 0;
for(new b = 0; b < sizeof(KO); b++)
{
if( KO[kPostavljen] == 1)
{
kontejnerid = b + 1;
}
}
DestroyDynamicObject(objekat[ playerid ]);
editing[ playerid ] = 0;
CreateDynamicObject(1343, Float:fX, Float:fY, Float:fZ, Float:fRotX, Float:fRotY, Float:fRotZ);
KO[kontejnerid][kVrsta] = 1;
KO[kontejnerid][kPostavljen] = 1;
KO[kontejnerid][kKoX] = Float:fX;
KO[kontejnerid][kKoY] = Float:fY;
KO[kontejnerid][kKoZ] = Float:fZ;
KO[kontejnerid][kRotX] = Float:fRotX;
KO[kontejnerid][kRotY] = Float:fRotY;
KO[kontejnerid][kRotZ] = Float:fRotZ;
format(string,sizeof(string),"{008080}(Kontejner: 'Mali') || (ID: %d)\n(Da pretrazite ovaj kontejner: /pretrazikontejner!)",kontejnerid);
KontejnerLabel[kontejnerid] = C3D(string ,-1,KO[kontejnerid][kKoX], KO[kontejnerid][kKoY], KO[kontejnerid][kKoZ],10);
format(string, sizeof(string), ""COL_ARP"[A] {FFFFFF}Napravio si 'mali' kontejner [ID:%d]!", kontejnerid);
SCM( playerid, -1, string);
new str[128];
format(str,128,"{95AB09}(UPOZORENJE) %s je napravio 'mali' kontejner [ID: %d]!", GetName( playerid ), kontejnerid);
PAdm(ZUTA,str,1);
atmovi++;
SacuvajKontejner(kontejnerid);
}
if( response == EDIT_RESPONSE_CANCEL)
{
DestroyDynamicObject(objekat[ playerid ]);
SCM( playerid, -1, ""COL_ARP"[A] {FFFFFF}Unistili ste 'mali' kontejner." );
editing[ playerid ] = 0;
}
}
else if( editing[ playerid ] == 17)
{
if( response == EDIT_RESPONSE_FINAL)
{
new kontejnerid = 0;
for(new b = 0; b < sizeof(KO); b++)
{
if( KO[kPostavljen] == 1)
{
kontejnerid = b + 1;
}
}
DestroyDynamicObject(objekat[ playerid ]);
editing[ playerid ] = 0;
CreateDynamicObject(1331, Float:fX, Float:fY, Float:fZ, Float:fRotX, Float:fRotY, Float:fRotZ);
KO[kontejnerid][kVrsta] = 2;
KO[kontejnerid][kPostavljen] = 1;
KO[kontejnerid][kKoX] = Float:fX;
KO[kontejnerid][kKoY] = Float:fY;
KO[kontejnerid][kKoZ] = Float:fZ;
KO[kontejnerid][kRotX] = Float:fRotX;
KO[kontejnerid][kRotY] = Float:fRotY;
KO[kontejnerid][kRotZ] = Float:fRotZ;
format(string,sizeof(string),"{008080}(Kontejner: 'Srednji') || (ID: %d)\n(Da pretrazite ovaj kontejner: /pretrazikontejner!)",kontejnerid);
KontejnerLabel[kontejnerid] = C3D(string ,-1,KO[kontejnerid][kKoX], KO[kontejnerid][kKoY], KO[kontejnerid][kKoZ],10);
format(string, sizeof(string), ""COL_ARP"[A] {FFFFFF}Napravio si 'srednji' kontejner [ID:%d]!", kontejnerid);
SCM( playerid, -1, string);
new str[128];
format(str,128,"{95AB09}(UPOZORENJE) %s je napravio 'srednji' kontejner [ID: %d]!", GetName( playerid ), kontejnerid);
PAdm(ZUTA,str,1);
atmovi++;
SacuvajKontejner(kontejnerid);
}
if( response == EDIT_RESPONSE_CANCEL)
{
DestroyDynamicObject(objekat[ playerid ]);
SCM( playerid, -1, ""COL_ARP"[A] {FFFFFF}Unistili ste 'srednji' kontejner." );
editing[ playerid ] = 0;
}
}
else if( editing[ playerid ] == 18)
{
if( response == EDIT_RESPONSE_FINAL)
{
new kontejnerid = 0;
for(new b = 0; b < sizeof(KO); b++)
{
if( KO[kPostavljen] == 1)
{
kontejnerid = b + 1;
}
}
DestroyDynamicObject(objekat[ playerid ]);
editing[ playerid ] = 0;
CreateDynamicObject(3035, Float:fX, Float:fY, Float:fZ, Float:fRotX, Float:fRotY, Float:fRotZ);
KO[kontejnerid][kVrsta] = 3;
KO[kontejnerid][kPostavljen] = 1;
KO[kontejnerid][kKoX] = Float:fX;
KO[kontejnerid][kKoY] = Float:fY;
KO[kontejnerid][kKoZ] = Float:fZ;
KO[kontejnerid][kRotX] = Float:fRotX;
KO[kontejnerid][kRotY] = Float:fRotY;
KO[kontejnerid][kRotZ] = Float:fRotZ;
format(string,sizeof(string),"{008080}(Kontejner: 'Veliki') || (ID: %d)\n(Da pretrazite ovaj kontejner: /pretrazikontejner!)",kontejnerid);
KontejnerLabel[kontejnerid] = C3D(string ,-1,KO[kontejnerid][kKoX], KO[kontejnerid][kKoY], KO[kontejnerid][kKoZ],10);
format(string, sizeof(string), ""COL_ARP"[A] {FFFFFF}Napravio si 'veliki' kontejner [ID:%d]!", kontejnerid);
SCM( playerid, -1, string);
new str[128];
format(str,128,"{95AB09}(UPOZORENJE) %s je napravio 'veliki' kontejner [ID: %d]!", GetName( playerid ), kontejnerid);
PAdm(ZUTA,str,1);
atmovi++;
SacuvajKontejner(kontejnerid);
}
if( response == EDIT_RESPONSE_CANCEL)
{
DestroyDynamicObject(objekat[ playerid ]);
SCM( playerid, -1, ""COL_ARP"[A] {FFFFFF}Unistili ste 'veliki' kontejner." );
editing[ playerid ] = 0;
}
}
return true;
}
[/pawn]
Kontam da treba da izmenim iz Dynamic u Object obican i umesto objekat da pise svoje tipa za trafike tobjekat itd
Ako si kreirao dinamican objekat, logicno da pozivas EditDynamicObject i da odreaguje OnPlayerEditDynamicObject
Ako je obican, onda pozivas EditObject i koristis callback OnPlayerEditObject
Da da, al nema mi nigde nista za dynamicne video si prazan public, jel bi mogao od ove jedne obicne da mi napravis za ovu dynamic pa cu ja za ostale da vidim kako izgleda?
[pawn]YCMD:napraviatm(playerid, params[], help)
{
new str[128];
if( PI[ playerid ][ pAdmin ] < 6) return SEM( playerid, "Nisi ovlasten // Nemate autorizaciju za koristenje ove naredbe!" );
if( editing[ playerid ] > 0) return SEM( playerid, "Vec editujete nesto." );
if( UlogovanIgrac[ playerid ] == 0) return SEM( playerid, "Nisi ulogovan!" );
new atmid = -1;
for(new b = 0; b < sizeof(AI); b++)
{
if( AI[aPostavljen] == 0)
{
atmid = b;
break;
}
}
if( atmid == -1 ) return SEM( playerid, "Ne mozete napraviti vise od 55 bankomata." );
if( atmid > 55) return SEM( playerid, "Ne mozete napraviti vise od 55 bankomata." );
format(str, sizeof(str), ""COL_ARP"[A] {FFFFFF}Editujes ATM [ID:%d].", atmid);
SCM( playerid, -1, str);
new Float:x, Float:y, Float:z;
GetPlayerPos(playerid, x,y,z);
objekat[ playerid ] = CreateDynamicObjectEx(2942, x, y+1, z, 0, 0, 0, 300.0, 300.0);
EditDynamicObject(playerid, objekat[ playerid ]);
editing[ playerid ] = 3;
return true;
}[/pawn]
Zar ne treba ovo dole da bude u dynamic objekt sada je u obicne objekte... ne kapiram sto je to tako uradjeno a nisam dirao nista, pre je radilo sad nece
[pawn]
new string[512];
new Float:oldX, Float:oldY, Float:oldZ,
Float:oldRotX, Float:oldRotY, Float:oldRotZ;
GetObjectPos(objectid, oldX, oldY, oldZ);
GetObjectRot(objectid, oldRotX, oldRotY, oldRotZ);
if( editing[ playerid ] == 3)
{
if( response == EDIT_RESPONSE_FINAL)
{
new atmid = 0;
for(new b = 0; b < sizeof(AI); b++)
{
if( AI[aPostavljen] == 1)
{
atmid = b + 1;
}
}
DestroyDynamicObject(objekat[ playerid ]);
editing[ playerid ] = 0;
CreateDynamicObject(2942, Float:fX, Float:fY, Float:fZ, Float:fRotX, Float:fRotY, Float:fRotZ);
AI[atmid][aPostavljen] = 1;
AI[atmid][aAtmX] = Float:fX;
AI[atmid][aAtmY] = Float:fY;
AI[atmid][aAtmZ] = Float:fZ;
AI[atmid][aRotX] = Float:fRotX;
AI[atmid][aRotY] = Float:fRotY;
AI[atmid][aRotZ] = Float:fRotZ;
format(string,sizeof(string),"{008080}[ {FFFFFF}ATM: (%d) {008080}]\n{FFFFFF}/atm\n/robatm", atmid);
ATMLabel[atmid] = C3D(string ,-1,AI[atmid][aAtmX], AI[atmid][aAtmY], AI[atmid][aAtmZ],10);
format(string, sizeof(string), ""COL_ARP"[A] {FFFFFF}Napravio si ATM [ID:%d].", atmid);
SCM( playerid, -1, string);
new str[128];
format(str,128,"{95AB09}(UPOZORENJE) %s je napravio ATM [ID: %d]!", GetName( playerid ), atmid);
PAdm(ZUTA,str,1);
atmovi++;
SacuvajAtm(atmid);
}
if( response == EDIT_RESPONSE_CANCEL)
{
DestroyDynamicObject(objekat[ playerid ]);
SCM( playerid, -1, ""COL_ARP"[A] {FFFFFF}Unistili ste ATM." );
editing[ playerid ] = 0;
}
}[/pawn]
Probaj prebaci ga u OnPlayerEditDynamicObject, ovaj donji kod, mozda si greskom promenio u CDO
evo sad cu brt
namestio sam dynamic rade svi, ali createobject sad nece ni edit da prikaze samo pise editujes objekat i nista se ne desava
reseno hvala