[POMOC]Nestajanje CreatePlayerObject

Započeo [BS]Paolo, April 20, 2017, 11:07:13 PRE PODNE

prethodna tema - sledeća tema

0 članova i 1 gost pregledaju ovu temu.

Skripta koju koristim: UP
Detaljan opis problema: Pozdrav svima htio sam da pitam da li se nekome javljalo ovaj problem
U modu imam ae da kazemo 30 objekata u CreateObject mada u CreatePlayerObject imam stotinak koji pojavljuju preko cmd znam da je  limit CO i CreatePlayerObject 1000 i sad imam sve ukupno oko 150 i kad pokrenem preko cmd neke CreatePlayerObject pola njih se prikaze pola ne dok su prije radili.
Streamer koji koristim je 2.8.2  da li ima neko neki savjet.
Hvala na odvojenom vremenu
Dio skripte:Nije potreban jer kod radi kad maknem Cobject ali kad ih ubacim 30 obicno su to podloge onda mi se ne pojavljuju svi CPO



Nije se bas najbolje pokazao citao sam da crasha server nije jos sredjen


Ti mozes i sa streamerom kreirati player objekte tako da se time i rijesavas limita od 1000 objekata

koja je funkcija da preko streamera kreiram za samo jednog igrca objekteda ih drugi ne vide ? ima li ista funkcija kao CreatePlayerObject ?



Evo ti primjer dynamic player objekata

new Grass[MAX_PLAYERS][1];//ovo na vrh ide

//kreiranje
Grass[playerid][0] = CreateDynamicObject (866, 1957.60437, -1228.80933, 18.94360,   0.00000, 0.00000, 0.00000, -1, -1, playerid, 200.0);

//unistavanje
DestroyDynamicObject( Grass[ playerid ][ 0 ] );

//provjera pozicije objekta ako ti treba
new Float:TPos[ 3 ];
GetDynamicObjectPos( Grass[ playerid ][ 0 ], TPos[ 0 ], TPos[ 1 ], TPos[ 2 ] );


odradio sam brt radi oke mada imam problem napravio sam timer da mu se update i i ukupno ima 35 objekata i sad sams tavio da kad dodje da mu se brise objekat sve radi ali mi baca u server logo
[23:18:31] [debug] AMX backtrace:
[23:18:31] [debug] #0 0025664c in public TimerTrava (playerid=0) at C:\Users\Ivan\Desktop\BS\gamemodes\BSRP.pwn:13340
[23:18:31] [debug] Run time error 4: "Array index out of bounds"
[23:18:31] [debug]  Accessing element at index 36 past array upper bound 35

a to je linija
GetDynamicObjectPos( Travas[ playerid ][ i ], TPos[ 0 ], TPos[ 1 ], TPos[ 2 ] );
a evo ga co timer
forward TimerTrava(playerid);
public TimerTrava(playerid)
{
new Float:TPos[ 3 ];
new pokoseno = 0;
for(new i = 0; i < sizeof(Travas); i++)
{
GetDynamicObjectPos( Travas[ playerid ][ i ], TPos[ 0 ], TPos[ 1 ], TPos[ 2 ] );
if(IsPlayerInRangeOfPoint(playerid, 4.0, TPos[ 0 ], TPos[ 1 ], TPos[ 2 ]) && KosenjeVozila(GetPlayerVehicleID(playerid)))
{
DestroyDynamicObject(Travas[ playerid ][ i ]);
Travas[ playerid ][ i ] = 999;
}
if(Travas[ playerid ][ i ] == 999)
{
pokoseno++;
}
}


Nemoj dynamic global idi na player objekte ako ti je to vec za kosenje trave

Isao sam vec na createplayerobject ali posto imam nekih objekata kao podlogu na server nekih 100tinak nece mi ucita odjednom svih 35 objekata trave zato moram dynamic