Skripta koju koristim: LARP
Problem: Kada rentam auto nece da mi pokrene motor,moram da izadjem iz vozila napolje i udjem kada /rentveh moram izaci i uci da bi hteo engine da radi,i kad izadjem i udjem radi uvek ali prvi put nece. Cak sam i dodao da respawn auto na komandi /rentveh i da vrati igraca u auto ali samo nekad radi tako. Jel mi moze neko reci u cemu je problem sa tim
Deo koda:
if(strcmp(cmd, "/rentveh", true) == 0)
{
if(IsPlayerConnected(playerid))
{
new str[128],sendername1[MAX_PLAYER_NAME];
GetPlayerName(playerid, sendername1,sizeof(sendername1));
new hirefee = HireCost(GetPlayerVehicleID(playerid));
if(SBizzInfo[1][sbProducts] == 0)
{
GameTextForPlayer(playerid, "~r~No Products", 5000, 1);
return 1;
}
if(!IsARentableVeh(GetPlayerVehicleID(playerid)))
{
SCM(playerid, COLOR_GRAD2, " [INFO] - You are not in Rentable car !");
return 1;
}
if(GetPlayerMoney(playerid) < SBizzInfo[1][sbEntranceCost])
{
SCM(playerid, COLOR_GRAD2, " [INFO] - You don't have enough money to Rent a Car !");
return 1;
}
if(HireCar[playerid] != 9999)
{
UnLockCar(HireCar[playerid]);
SCM(playerid, COLOR_GREY, " [INFO] - You need unrent your current car/bike/boat first !");
return 1;
}
foreach(Player, i)
{
if(HireCar[i] == GetPlayerVehicleID(playerid))
{
SCM(playerid, COLOR_GREY, " [INFO] - Someone already rents this car !");
return 1;
}
}
SetVehicleToRespawn(idcar);
SafeGivePlayerMoney(playerid,-SBizzInfo[1][sbEntranceCost]);
SBizzInfo[1][sbTill] += SBizzInfo[1][sbEntranceCost];
ExtortionSBiz(1, SBizzInfo[1][sbEntranceCost]);
SBizzInfo[1][sbProducts]--;
HireCar[playerid] = GetPlayerVehicleID(playerid);
OnPropUpdate(3,1);
PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0);
format(str, sizeof(str), "~w~Don't forget to ~r~/unrentveh~n~~g~/lock ~w~to lock your car.",hirefee);
SCM(playerid, COLOR_YELLOW2, "You can start engine now !");
gEngine[playerid] = 0;
engineOn[GetPlayerVehicleID(playerid)] = false;
GameTextForPlayer(playerid, str, 5000, 3);
PutPlayerInVehicle(playerid, idcar, 0);
new y, m, d;
new h,mi,s;
getdate(y,m,d);
gettime(h,mi,s);
format(string,sizeof(string), "(%d/%d/%d)[%d:%d:%d] %s [CMD] -> /rentveh",d,m,y,h,mi,s,sendername);
CommandLog(string);
}
return 1;
}
if(!strcmp(cmd, "/engine", true))
{
if(IsPlayerInAnyVehicle(playerid))
{
new carid = GetPlayerVehicleID(playerid)
if(CarInfo[carid][cBrokeVehicle] == 0)
{
if(!engineOn[GetPlayerVehicleID(playerid)])
{
new idcar1 = GetPlayerVehicleID(playerid);
if(GetPlayerState(playerid) == PLAYER_STATE_PASSENGER) return 1;
if(idcar1 == 510 || idcar1 == 462 || idcar1 == 481 || idcar1 == 509) return 1;
if(IsARentableVeh(idcar))
{
if(HireCar[playerid] != idcar) return 1;
}
if(IsAHarvest(idcar)) return 1;
if(IsADrugHarvest(idcar)) return 1;
if(IsASweeper(idcar)) return 1;
if(IsASalesVehicle(idcar)) return 1;
if(CanTurnEngine[playerid] != idcar && CanTurnEngine[playerid] == 9999)
return SCM(playerid, COLOR_GREY,"* You cannot turn this car's engine!");
new plname[MAX_PLAYER_NAME];
GetPlayerName(playerid, plname, sizeof(plname));
format(string, sizeof(string), "The Driver spins the key of his car and Starts the engine.");
ProxDetector(30.0, playerid, string, COLOR_LIGHTBLUE,COLOR_LIGHTBLUE,COLOR_LIGHTBLUE,COLOR_LIGHTBLUE,COLOR_LIGHTBLUE);
SCM(playerid, COLOR_WHITE, "You turned the engine {00FF00}On");
if(PlayerInfo[playerid][pAdmin] < 1336 && PlayerInfo[playerid][pAdminDuty] == 1)
{
SetTimerEx("StartingTheVehicle",1,0,"i",playerid);
}
else
{
SetTimerEx("StartingTheVehicle",1,0,"i",playerid);
}
gEngine[playerid] = 1;
new vid = GetPlayerVehicleID(playerid);
new engine,lights,alarm,doors,bonnet,boot,objective;
GetVehicleParamsEx(vid,engine,lights,alarm,doors,bonnet,boot,objective);
SetVehicleParamsEx(vid,VEHICLE_PARAMS_ON,lights,alarm,doors,bonnet,boot,objective);
engineOn[GetPlayerVehicleID(playerid)] = true; //// engineOn[GetPlayerVehicleID(playerid)] = true;
new y, m, d;
new h,mi,s;
getdate(y,m,d);
gettime(h,mi,s);
format(string,sizeof(string), "(%d/%d/%d)[%d:%d:%d] %s [CMD] -> /engine",d,m,y,h,mi,s,sendername);
CommandLog(string);
return 1;
}
else if(engineOn[GetPlayerVehicleID(playerid)])
{
if(GetPlayerState(playerid) == PLAYER_STATE_PASSENGER) return 1;
if(pveh == 510 || pveh == 462 || pveh == 481 || pveh == 509) return 1;
if(IsARentableVeh(idcar))
{
if(HireCar[playerid] != idcar) return 1;
}
if(IsASalesVehicle(idcar))
{
if(HireCar[playerid] != idcar) return 1;
}
if(IsAHarvest(idcar)) return 1;
if(IsADrugHarvest(idcar)) return 1;
if(IsASweeper(idcar)) return 1;
if(CanTurnEngine[playerid] != idcar && CanTurnEngine[playerid] == 9999)
return SCM(playerid, COLOR_GREY,"* You cannot turn this car's engine!");
format(string, sizeof(string), "The Driver spins a key and turns off the engine", sendername);
ProxDetector(30.0, playerid, string, COLOR_LIGHTBLUE,COLOR_LIGHTBLUE,COLOR_LIGHTBLUE,COLOR_LIGHTBLUE,COLOR_LIGHTBLUE);
SCM(playerid, COLOR_WHITE, "You turned the engine {FF0000}Off");
gEngine[playerid] = 0;
new vid = GetPlayerVehicleID(playerid);
new engine,lights,alarm,doors,bonnet,boot,objective;
GetVehicleParamsEx(vid,engine,lights,alarm,doors,bonnet,boot,objective);
SetVehicleParamsEx(vid,VEHICLE_PARAMS_OFF,lights,alarm,doors,bonnet,boot,objective);
engineOn[GetPlayerVehicleID(playerid)] = false;
TogglePlayerControllable(playerid, true);
new y, m, d;
new h,mi,s;
getdate(y,m,d);
gettime(h,mi,s);
format(string,sizeof(string), "(%d/%d/%d)[%d:%d:%d] %s [CMD] -> /engine",d,m,y,h,mi,s,sendername);
CommandLog(string);
return 1;
}
}
else
{
SCM(playerid, COLOR_GREY, "Your vehicle engine is broken, call a mechanic!");
}
}
return 1;
}
pa u rent komandi si postavio
engineOn[GetPlayerVehicleID(playerid)] = false;
sad razmisli zasto nece...
Citat: C++ poslato Decembar 25, 2013, 13:44:17 POSLE PODNE
pa u rent komandi si postavio
engineOn[GetPlayerVehicleID(playerid)] = false;
sad razmisli zasto nece...
Nije,kad stavim true onda neradi u opste komanda /engine na rent vozilima.
@Sabot,
Kada kucam /rentveh i uradim /engine kaze da nemogu pokrenuti motor,kada pritisnem f izadjem iz auta i vrtim se u rentani auto i idem opet /engine radi.
E sad pokusao sam i sa respawncar i putplayerincar ali neradi moram izaci iz auta i uci da bi radilo ne kontam u cemu je problem zasto moram izaci i uci da bi /engine radio svaki put kad /rentveh