Detaljan opis problema: Imam problem kod posla smetlar, nece da ostavi smece u vozilo
Dio skripte:
kupljenje smeca:
if(!IsPlayerInAnyVehicle(playerid) && kupismece == 1)
{
new Float:Pos;
for(new i = 0; i < sizeof(KontenjerInfo); i++)
{
GetDynamicObjectPos(KontenjerInfo, Pos,Pos,Pos);
if(IsPlayerInRangeOfPoint(playerid,3.0,Pos,Pos,Pos))
{
if(KontenjerInfo == 0) return SCM(playerid, COLOR_TOMATO, " U ovom kontenjeru vise nema smeca !");
if(PokupljenoSmeca > 10) return SCM(playerid, COLOR_TOMATO, " Vec ste ispraznili 10 kontenjera, molimo da ispraznite vozilo !");
SetPlayerAttachedObject(playerid, 1, 1265, 6, 0.298000, -0.031999, -0.050000, 0.000000, -104.599983, 0.000000, 0.683000, 0.648999, 1.077999, 0, 0);
KontenjerInfo = 0;
SCM(playerid, COLOR_AQUA, " Molimo vas da ubacite vrecu smeca u vozilo !");
DestroyDynamicMapIcon(KontenjerIkona);
KreirajLabelKontenjer(i);
return 1;
}
}
}
ostavljanje smeca
if(!IsPlayerInAnyVehicle(playerid) && kupismece == 1)
{
new Float:x, Float:y, Float:z;
new newcar;
if(newcar >= SmecarPrvo && newcar <= SmecarZadnje)
{
GetPosBehindVehicle(newcar, x, y, z);
if(IsPlayerInRangeOfPoint( playerid, 2.0, x, y, z))
{
if(IsPlayerAttachedObjectSlotUsed(playerid, 1)) RemovePlayerAttachedObject(playerid, 1);
PokupljenoSmeca++;
SCMF(playerid, COLOR_AQUA, " Uspesno ste ispraznili kontenjer, trenutno ste ispraznili %d od 10 kontenjera !", PokupljenoSmeca);
SCM(playerid, COLOR_YELLOW, "Uspesno ste ubacili vrecu za smece u vozilo, molimo nastavite dalje !");
}
}
}
funkcije
stock GetPosBehindVehicle(vehicleid, &Float:x, &Float:y, &Float:z, Float:offset=0.5)
{
new Float:vehicleSize, Float:vehiclePos;
GetVehiclePos(vehicleid, vehiclePos, vehiclePos, vehiclePos);
GetVehicleModelInfo(GetVehicleModel(vehicleid), VEHICLE_MODEL_INFO_SIZE, vehicleSize, vehicleSize, vehicleSize);
GetXYBehindVehicle(vehicleid, vehiclePos, vehiclePos, (vehicleSize/2)+offset);
x = vehiclePos;
y = vehiclePos;
z = vehiclePos;
return 1;
}
GetXYBehindVehicle(vehicleid, &Float:q, &Float:w, Float:distance)
{
new Float:a;
GetVehiclePos(vehicleid, q, w, a);
GetVehicleZAngle(vehicleid, a);
q += (distance * -floatsin(-a, degrees));
w += (distance * -floatcos(-a, degrees));
}
Neke slike/video za lakse dobivanje pomoci(neobavezno):