Skripta koju koristim:Cyber
Detaljan opis problema:imam komandu odjavi i kad odjavim odem rentat drugi pise da vec imam rentano vozilo evo komande:
CMD:odjavi(playerid,params[])
{
//new idcar = GetPlayerVehicleID(playerid);
if(RentaBike[playerid] != 0)
{
if(idcar == RentaBike[playerid])
{
TogglePlayerControllable(playerid, 1);
}
SetVehicleToRespawn(GetPlayerVehicleID(playerid));
RentaBike[playerid] = 299;
SendClientMessage(playerid,CRVENA,"{F3FF02}(rent) {FFFFFF}Uspjesno ste vratili {F3FF02}iznajmljeno {FFFFFF}vozilo.");
}
return 1;
}
Dio skripte:
Neke slike/video za lakse dobivanje pomoci(neobavezno):
Vjerojatno zato što si comment liniju gdje se definira varijabla idcar
if(RentaBike[playerid] != 0)
umjesto ovoga
if(RentaBike[playerid] != 299)
razlog
RentaBike[playerid] = 299;
tako sam i stavio i neko renta oke odjavi i ode opet rentat pise da vec ima rentano
CMD:iznajmi(playerid,params[])
{
new
string[128];
if(RentaBike[playerid] == 0)
{
if(GetPlayerMoney(playerid) < 60) { SCM(playerid,COLOR_GRAD4,"(greska) Nemate dovoljno novaca da izjamite vozilo.Cijena renta: $60"); return 1; }
new hirefee = HireCost(GetPlayerVehicleID(playerid));
if(SBizzInfo[15][sbProducts] == 0)
{
GameTextForPlayer(playerid, "~r~Nemamo vise zaliha", 5000, 1);
return 1;
}
if(HireCar[playerid] != 299)
{
gCarLock[HireCar[playerid]] = 0;
UnLockCar(HireCar[playerid]);
SendClientMessage(playerid, SIVA, "(greska) Morate prvo da vratite iznajmljeno vozilo!");
return 1;
}
foreach (Player, i)
{
if(HireCar == GetPlayerVehicleID(playerid))
{
SendClientMessage(playerid, COLOR_GREY, "Vozilo je vec iznajmljeno!");
RemovePlayerFromVehicle(playerid);
return 1;
}
}
HireCar[playerid] = GetPlayerVehicleID(playerid);
//RentaBike[playerid] = 1;
GivePlayerMoney(playerid,-60);
SBizzInfo[15][sbTill] += 60;
ExtortionSBiz(15, SBizzInfo[15][sbEntranceCost]);
SBizzInfo[15][sbProducts]--;
OnPropUpdate();
PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0);
SendClientMessage(playerid,CRVENA,"{F3FF02}(rent) {FFFFFF}Uspjesno ste iznajmili vozilo,da ga odjavite kucajte {F3FF02}/odjavi.");
format(string, sizeof(string), "~w~koristi ~p~/lock",hirefee);
TogglePlayerControllable(playerid, 1);
GameTextForPlayer(playerid, string, 5000, 3);
}
else
{
SCM(playerid,COLOR_GRAD4,"(greska) Vi vec imate rentano vozilo.");
}
return 1;
}
CMD:odjavi(playerid,params[])
{
new idcar = GetPlayerVehicleID(playerid);
if(RentaBike[playerid] != 299)
{
if(idcar == RentaBike[playerid])
{
TogglePlayerControllable(playerid, 1);
}
SetVehicleToRespawn(GetPlayerVehicleID(playerid));
RentaBike[playerid] = 299;
SendClientMessage(playerid,CRVENA,"{F3FF02}(rent) {FFFFFF}Uspjesno ste vratili {F3FF02}iznajmljeno {FFFFFF}vozilo.");
}
return 1;
}
opet mi nece vako kak sam stavio ide ja iznajmim oke kad sam kucao da odjavim oke sjednem u to auto/motor koje sam rentao ne pise da je na rentu samo sam sjeo i mogu vozit kad sam osao u drugo i idem rentat pise da ve imam iznajmljeno vozilo
Zasto 2 puta saljes istu poruku poruku.Izbrisi u CMD:odjavi omu
SCM(playerid,COLOR ....
i stavi ovako
GameTextForPlayer(playerid, string, 5000, 3);
}
}
return 1;
}
Kakve veze ima što 2 put piše? Može 1000 puta , nema to nikakve veze.
Nije mi jasno kako u /iznajmi nemas nigde da ti podesi RentBike[playerid] a u /odjavi imas? :/ odnosno u iznajmi ti nigde ne gleda RentBike[playerid] a u odjavi gleda :/ (samo sam bacio pogled pa mozda gresim, bole me oci tek sam usto, al ako sam upravu mesas babe i zabe :P)