Detaljan opis problema: Kada idem /rac,respawnuje mi sva vozila,i vozila koja vozi neki igrac,sve respawnuje
Dio skripte: Sta treba
Neke slike/video za lakse dobivanje pomoci(neobavezno): //
Treba da posaljes sve vezano za rac :D
vrv nisi stavio IsPlayerInAnyVehicle
Komanda:
[pawn]YCMD:rac(playerid, params[],help)
{
if(UlogovanProvera[playerid] == 0) return SendErrorMessage(playerid, "Nisi ulogovan/a ili nisi registrovan/a!");
if(PI[playerid][Admin] < 2) return SendErrorMessage(playerid, "Niste ovlasceni da koristite ovu komandu.");
if(RespawnVozila) return SCM(playerid, COLORSET, "Respawn je vec pokrenut.");
new secs,string[128];
if(sscanf(params,"i",secs)) return SCM(playerid, COLORSET, ""col_newg"[KORISTENJE] "BELA"/rac [sekunde]");
if(secs > 60 || secs < 1) return SCM(playerid, COLORSET, "Broj sekundi ne sme biti veci od 60 i manji od 1.");
SetTimer("Respawn", secs*1000, false);
RespawnVozila = 1;
format(string, sizeof(string), "[RESPAWN]{FFFFFF} Pokrenut je respawn. Sva vozila ce biti respawnovana za %d sekudni! (Admin: %s)",secs, Ime_Igraca(playerid));
SendClientMessageToAll(SRPLAVA, string);
format(nellys, sizeof(nellys), "{FBE204}[INFO] Admin %s je pokrenuo respawn", Ime_Igraca(playerid));
AdminPoruka(COLOR_WHITE, nellys);
return 1;
}[/pawn]
public i function:
[pawn]forward Respawn();
public Respawn()
{
new bool:unwanted[MAX_VOZILA];
for(new player=0; player<MAX_PLAYERS; player++)
{
if(IsPlayerInAnyVehicle(player))
{
unwanted[GetPlayerVehicleID(player)]=true;
unwanted[390] = true;
unwanted[394] = true;
unwanted[393] = true;
unwanted[391] = true;
unwanted[392] = true;
}
}
for(new car = 1; car < MAX_VOZILA; car++)
{
if(!unwanted[car]) SetVehicleToRespawn(car);
}
RespawnVozila = 0;
SCMTA(-1, "{1A94E6}[RESPAWN] {FFFFFF}Sva vozila su respawnovana, sledeci respawn za sat vremena.");
return 1;
}
function IsVehicleEmpty(vehicleid)
{
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
if(IsPlayerInVehicle(i, vehicleid)) return false;
}
}
return 1;
}[/pawn]
P.S Samo mi ne respawna vozila za poslove,tj ako je neki igrac u vozilu koji radi posao onda se ne respawna
BUMP
[pawn]
YCMD:rac(playerid, params[], help)
{
#pragma unused help
if(UlogovanProvera[playerid] == 0) return SCM(playerid,-1,"[GT] | "CRVENA"Moras se ulogovati da bi koristio ovu komandu!");
if(PlayerInfo[playerid][pVlasnik] < 1) return SCM(playerid, -1, ""CRVENA"[GT] "SIVA"Samo Vlasnik.");
if(AdminDuty[playerid] == 0) return SCM(playerid,-1,""CRVENA"[GT] "SIVA"Morate biti na admin duznosti!");
if(RespawnVozila == 1) return SCM(playerid, -1, ""CRVENA"[GRESKA] "BELA"Respawn je vec pokrenut!");
new string[512]; RespawnVozila = 1;
format(string,sizeof string, ""CRVENA"<<< "BELA"Admin %s je pokrenuo respawn privatnih vozila za 20 sec! "CRVENA">>>", GetName(playerid));
SendClientMessageToAll(-1, string);
SendClientMessageToAll(-1, ""CRVENA"<<< "BELA"Udjite u svoje vozilo ukoliko zelite da ga zadrzite! "CRVENA">>>");
SetTimer("Respawn", 20000, false);
return 1;
}
forward Respawn();
public Respawn()
{
new bool:unwanted[MAX_VOZILA];
for(new player=0; player<MAX_PLAYERS; player++)
{
if(IsPlayerInAnyVehicle(player)) { unwanted[GetPlayerVehicleID(player)]=true; }
}
for(new car = 1; car < MAX_VOZILA; car++)
{
if(!unwanted[car]) RTC(car);
}
RespawnVozila = 0; SendClientMessageToAll(-1, ""PDBOJA"[GT INFO] Vozila Respawnovana!");
return 1;
}
[/pawn]
Prilagodi skripti
Citat: Nodze poslato Februar 24, 2018, 21:24:57 POSLE PODNE
[pawn]
YCMD:rac(playerid, params[], help)
{
#pragma unused help
if(UlogovanProvera[playerid] == 0) return SCM(playerid,-1,"[GT] | "CRVENA"Moras se ulogovati da bi koristio ovu komandu!");
if(PlayerInfo[playerid][pVlasnik] < 1) return SCM(playerid, -1, ""CRVENA"[GT] "SIVA"Samo Vlasnik.");
if(AdminDuty[playerid] == 0) return SCM(playerid,-1,""CRVENA"[GT] "SIVA"Morate biti na admin duznosti!");
if(RespawnVozila == 1) return SCM(playerid, -1, ""CRVENA"[GRESKA] "BELA"Respawn je vec pokrenut!");
new string[512]; RespawnVozila = 1;
format(string,sizeof string, ""CRVENA"<<< "BELA"Admin %s je pokrenuo respawn privatnih vozila za 20 sec! "CRVENA">>>", GetName(playerid));
SendClientMessageToAll(-1, string);
SendClientMessageToAll(-1, ""CRVENA"<<< "BELA"Udjite u svoje vozilo ukoliko zelite da ga zadrzite! "CRVENA">>>");
SetTimer("Respawn", 20000, false);
return 1;
}
forward Respawn();
public Respawn()
{
new bool:unwanted[MAX_VOZILA];
for(new player=0; player<MAX_PLAYERS; player++)
{
if(IsPlayerInAnyVehicle(player)) { unwanted[GetPlayerVehicleID(player)]=true; }
}
for(new car = 1; car < MAX_VOZILA; car++)
{
if(!unwanted[car]) RTC(car);
}
RespawnVozila = 0; SendClientMessageToAll(-1, ""PDBOJA"[GT INFO] Vozila Respawnovana!");
return 1;
}
[/pawn]
Prilagodi skripti
Radio sam i to,isto je...
Citat: #Montana poslato Februar 24, 2018, 21:26:00 POSLE PODNE
Radio sam i to,isto je...
[pawn]
forward Respawn();
public Respawn()
{
new bool:unwanted[MAX_VOZILA];
for(new player=0; player<MAX_PLAYERS; player++)
{
if(IsPlayerInAnyVehicle(player)) { unwanted[GetPlayerVehicleID(player)]=true; }
}
for(new car = 1; car < MAX_VOZILA; car++)
{
if(!unwanted[car]) RTC(car);
}
RespawnVozila = 0; SendClientMessageToAll(-1, ""PDBOJA"[GT INFO] Vozila Respawnovana!");
return 1;
}
[/pawn]
Probaj ovo bolan promeni samo, ako ne mogne, javi se PP
Debugaj pa vidi gde koci.
Radio debug,nema nista,sve je okej,samo sto respawna privatna vozila iako ima neko u njima
Koliko ti je definisano MAX_VOZILA? Da mozda ne prelazis definiciju, probaj sa MAX_VEHICLES (2000)
[pawn]#define MAX_VOZILA 1000[/pawn]
Ne prelazim nista...
Gdje pozivas IsVehicleEmpty?
TakoÄ'er dodaj ovaj kod umjesto tog, dodao sam ti ako vozac kamiona vozi kamion sa prikolicom da mu ne respawna prikolicu
[pawn] new bool:unwanted[MAX_VOZILA];
foreach(new i : Player)
{
if(IsPlayerInAnyVehicle(i))
{
unwanted[GetPlayerVehicleID(i)]=true;
if(GetPlayerVehicleID(i) == 403 || GetPlayerVehicleID(i) == 514 || GetPlayerVehicleID(i) == 515)
{
new vehicleid = GetPlayerVehicleID(i);
if(IsTrailerAttachedToVehicle(vehicleid)) return 0;
}
}
}
for(new car = 0; car < MAX_VOZILA; car++)
{
if(!unwanted[car]) SetVehicleToRespawn(car);
}[/pawn] valjda bi trebalo raditi nisam testirao
imas provjeru je li neko u autu, ako jest onda preko unwanted varijable stavlja se da to auto ako je neko u njemu se ne respawna i ovdje checkira
[pawn]if(!unwanted[car]) SetVehicleToRespawn(car);[/pawn]
ako je false da respawna, mozda sam se zbunio ali sve bi trebalo raditi kako treba?
Citat: Åukmember=1996][/member] link=topic=120038.msg823790#msg823790 date=1519509342]
Gdje pozivas IsVehicleEmpty?
TakoÄ'er dodaj ovaj kod umjesto tog, dodao sam ti ako vozac kamiona vozi kamion sa prikolicom da mu ne respawna prikolicu
[pawn] new bool:unwanted[MAX_VOZILA];
foreach(new i : Player)
{
if(IsPlayerInAnyVehicle(i))
{
unwanted[GetPlayerVehicleID(i)]=true;
if(GetPlayerVehicleID(i) == 403 || GetPlayerVehicleID(i) == 514 || GetPlayerVehicleID(i) == 515)
{
new vehicleid = GetPlayerVehicleID(i);
if(IsTrailerAttachedToVehicle(vehicleid)) return 0;
}
}
}
for(new car = 0; car < MAX_VOZILA; car++)
{
if(!unwanted[car]) SetVehicleToRespawn(car);
}[/pawn] valjda bi trebalo raditi nisam testirao
imas provjeru je li neko u autu, ako jest onda preko unwanted varijable stavlja se da to auto ako je neko u njemu se ne respawna i ovdje checkira
[pawn]if(!unwanted[car]) SetVehicleToRespawn(car);[/pawn]
ako je false da respawna, mozda sam se zbunio ali sve bi trebalo raditi kako treba?
Opet isto haha... Znaci vec 2 dana se drkam oko ovog..
Ae neko jos neke ideje da predlozi
P.S Pogledao sam server_log,izbacuje mi kao nesto da se desava u OnPlayerState
[pawn][23:06:53] [Montanaâ,,¢-DEBUG] OnPlayerStateChange 0, 2, 1
[23:07:18] [Montanaâ,,¢-DEBUG] OnPlayerStateChange 0, 1, 2[/pawn]
Citat: #Montana poslato Februar 24, 2018, 23:08:12 POSLE PODNE
Opet isto haha... Znaci vec 2 dana se drkam oko ovog..
Ae neko jos neke ideje da predlozi
P.S Pogledao sam server_log,izbacuje mi kao nesto da se desava u OnPlayerState
[pawn][23:06:53] [Montanaâ,,¢-DEBUG] OnPlayerStateChange 0, 2, 1
[23:07:18] [Montanaâ,,¢-DEBUG] OnPlayerStateChange 0, 1, 2[/pawn]
tebi je problem sto respawna privatna vozila iako je neko u njima?
Citat: Åukmember=1996][/member] link=topic=120038.msg823806#msg823806 date=1519510554]
tebi je problem sto respawna privatna vozila iako je neko u njima?
Da,bas to
onda nesto tipa ovako dodaj
koristi IsPlayerInVehicle da provjeris jel igrac u svom vozilu, ako jest onda stavi da je to vozilo unwanted
[pawn] if(IsPlayerInVehicle(i, VoziloInfo[Vozilo_1][vID])
{
unwanted[VoziloInfo[Vozilo_1][vID]] = true;
}[/pawn]
malo sam zahrdjao, ovako bi trebalo nekako? naravno poslije respawna da stavis na false
edit: ovo VoziloInfo[Vozilo_1][vID] sam koristio iz BExtazy moda od Save samo za primjer
Citat: Åukmember=1996][/member] link=topic=120038.msg823818#msg823818 date=1519512076]
onda nesto tipa ovako dodaj
koristi IsPlayerInVehicle da provjeris jel igrac u svom vozilu, ako jest onda stavi da je to vozilo unwanted
[pawn] if(IsPlayerInVehicle(i, VoziloInfo[Vozilo_1][vID])
{
unwanted[VoziloInfo[Vozilo_1][vID]] = true;
}[/pawn]
malo sam zahrdjao, ovako bi trebalo nekako? naravno poslije respawna da stavis na false
edit: ovo VoziloInfo[Vozilo_1][vID] sam koristio iz BExtazy moda od Save samo za primjer
A buraz,sta cu ako je npr vozilo moje a ti ga vozis?
P.S Ima tri definice za vozila, MAX_AUTA, MAX_VOZILA, MAX_VOZILARAC
Citat: #Montana poslato Februar 24, 2018, 23:48:02 POSLE PODNE
A buraz,sta cu ako je npr vozilo moje a ti ga vozis?
nmp za tvoje varijable etc, kreiras provjeru u kojoj provjeravas jel auto koje igrac vozi njegovo
Citat: Åukmember=1996][/member] link=topic=120038.msg823823#msg823823 date=1519512682]
nmp za tvoje varijable etc, kreiras provjeru u kojoj provjeravas jel auto koje igrac vozi njegovo
Bani mi PP
#Sorry za dupli post ( Ne mogu slati PP vise..)#
[pawn]forward Respawn();
public Respawn()
{
new bool:unwanted[MAX_VEHICLES];
foreach(Player, i)
{
if(IsPlayerInAnyVehicle(i))
{
unwanted[GetPlayerVehicleID(i)] = true;
printf("Playerid = %d, unwanted[vehicleid] = %d", i, GetPlayerVehicleID(i));
}
}
for(new car = 1; car < MAX_VEHICLES; car++)
{
if(car == 351) continue;
if(IsValidVehicle(car))
{
if(!unwanted[car]) { SetVehicleToRespawn(car); printf("RespawnVehicleID = %d", car); }
}
}
RespawnVozila = 0; SendClientMessageToAll(-1, "[GT INFO] Vozila Respawnovana!");
return true;
}[/pawn]
Po ovoj skripti,on ne bi trebao da repsawna vozilo id 351,ali on to radi.Ima li neko resenje?
@Luk4 @\nLucius
izbrisi if(car == 351) continue;
dodaj gore
unwanted[351] = true;
Citat: Åukmember=1996][/member] link=topic=120038.msg823839#msg823839 date=1519514380]
izbrisi if(car == 351) continue;
dodaj gore
unwanted[351] = true;
Opet respawna....
Nije moguce da ti respawna na bilo koji nacin
Upload cu ti mod,poslati link skini,udji na server,i buraz vidi sam ako ne verujes
#SORY ZA DUPLI POST#
Vozila kada se respawnaju,ako se vozilo koristi,ono se ne respawna,samo nestane,ali kordinate ostanu na mestu gde je vozilo bilo,ali vozila nema
Zabranjen bump