[Pomoc] Freeze Cars!

Započeo xXxPored, Oktobar 27, 2011, 22:19:44 POSLE PODNE

prethodna tema - sledeća tema

0 članova i 5 gostiju pregledaju ovu temu.

Skripta koju koristim: Moj Edit
Detaljan opis problema: Imam neki CarOwner e sad volio bih da napravim da auta koja stoje na izlogu tj koja su za prodaju budu uvijek freezana dakle ispadne dialog Zelite li kupiti vozilo
                                                                       DA                           NE

I kad stisnete da i ne vozate auto! A vi imate svoje posebno koje se spawna...e sad bi ja volio da to na izlogu ostane freezeano :)

Dio skripte:/
Neke slike/video za lakse dobivanje pomoci(neobavezno):/

Mozda sam malo zaspamo sa temam ovih 10 dana ima ih jedno 4 ali eto ucim se ovako puno sam naucio od vas ovdje...Eto ako neko zna da mi pomogne unaprijed HVALA!
big respect 4 Blaeks Vuzimir  Shoorty Scripter HamZa

dragan12

Pa koristis:
http://wiki.sa-mp.com/wiki/ShowPlayerDialog
I onda kada udje u ta kola stavis da mu izbacuje dialog .
I onda pod OnDialogResponse (http://wiki.sa-mp.com/wiki/OnDialogResponse) napravis za kupovinu ali napravis da kada kupi kreira novo vozilo tamo gde hoces(vidi u Ivex mislim da tamo kreira vozilo).  Ako nisi skontao reci uradicu neki primer

Ajd daj mi taj jedan primjer? Ako moze xD da vidim mozda skontam nesto I DA te napomenem da je ovo FS :)
Poslednja Izmena: Oktobar 27, 2011, 22:34:11 POSLE PODNE od DJeronimo
big respect 4 Blaeks Vuzimir  Shoorty Scripter HamZa

bolja opcija je ona sto ti je gagi predlozio!
ali ipak mozes i ovako..
stavis provjeru na OnPlayerStateChange
i freezas ga, a onda ako nece kupit da izlazi na neku komandu ili tipku iz tog vozila
TogglePlayerControllable(playerid, toggle);

Ovo je FS i gledaj sta ti ja goviim dakle ima taj dilaogi izade da ili ne i sve i kad kupis spwana se auto tvoje ali to sto je na izlgou mozes vozati a ja hocu da ono ostane freezano :) da samo mozes izaci iz njega :)
Poslednja Izmena: Oktobar 27, 2011, 23:31:46 POSLE PODNE od DJeronimo
big respect 4 Blaeks Vuzimir  Shoorty Scripter HamZa

dragan12

Citat: DJeronimo poslato Oktobar 27, 2011, 22:37:05 POSLE PODNE
Ovo je FS i gledaj sta ti ja goviim dakle ima taj dilaogi izade da ili ne i sve i kad kupis spwana se auto tvoje ali to sto je na izlgou mozes vozati a ja hocu da ono ostane freezano :) da samo mozes izaci iz njega :)
Pa napravi pod OnPlayerEnterVehicle da imas proveru da li je igrac u tom vozilu (tom id-u vozila) i onda ako jeste u tom vozilu koristis: http://wiki.sa-mp.com/wiki/Function:TogglePlayerControllable
E sada. Stavis ako izabere Ne na dialogu da ga izbaci iz vozila http://wiki.sa-mp.com/wiki/RemovePlayerFromVehicle.
Ne na dialogu ide ovako:
       if(!response) return RemovePlayerFromVehicle(playerid);

Ahham ima na Ne izbaci te ali mi jos na Da to fali
big respect 4 Blaeks Vuzimir  Shoorty Scripter HamZa

dragan12

Citat: DJeronimo poslato Oktobar 28, 2011, 11:36:42 PRE PODNE
Ahham ima na Ne izbaci te ali mi jos na Da to fali
Pa samo dodas tamo pod dialog kada kupi vozilo:
RemovePlayerFromVehicle(playerid);
TogglePlayerControllable(playerid,1);


E evo ti pa mi ti napravi ako mozes?

if(dialogid == DIALOG_VEHICLE_SELL)
{
if(response)
{
if(GetPlayerVehicles(playerid) >= MAX_PLAYER_VEHICLES)
{
ShowErrorDialog(playerid, "Ne mozes kupiti vise vozila! Max: " #MAX_PLAYER_VEHICLES );
return 1;
}
new targetid = GetPVarInt(playerid, "DialogValue1");
new vehicleid = GetPVarInt(playerid, "DialogValue2");
new price = GetPVarInt(playerid, "DialogValue3");
if(GetPlayerMoney(playerid) < price)
{
ShowErrorDialog(playerid, "Nemas dovoljno novca da kupis ovo vozilo!");
return 1;
}
new msg[128];
VehicleOwner[vehicleid] = PlayerName(playerid);
GivePlayerMoney(playerid, -price);
GivePlayerMoney(targetid, price);
SaveVehicle(vehicleid);
format(msg, sizeof(msg), "YKupio si ovo vozilo za $%d", price);
SendClientMessage(playerid, COLOR_WHITE, msg);
format(msg, sizeof(msg), "%s (%d) je prihvatio vasu ponudu i kupio vozilo", PlayerName(playerid), playerid);
SendClientMessage(targetid, COLOR_WHITE, msg);
}
else
{
new targetid = GetPVarInt(playerid, "DialogValue1");
new msg[128];
format(msg, sizeof(msg), "%s (%d) je odbio vasu ponudu!", PlayerName(playerid), playerid);
SendClientMessage(targetid, COLOR_WHITE, msg);
}
return 1;
}
big respect 4 Blaeks Vuzimir  Shoorty Scripter HamZa

dragan12

if(dialogid == DIALOG_VEHICLE_SELL)
{
if(response)
{
if(GetPlayerVehicles(playerid) >= MAX_PLAYER_VEHICLES)
{
ShowErrorDialog(playerid, "Ne mozes kupiti vise vozila! Max: " #MAX_PLAYER_VEHICLES );
return 1;
}
new targetid = GetPVarInt(playerid, "DialogValue1");
new vehicleid = GetPVarInt(playerid, "DialogValue2");
new price = GetPVarInt(playerid, "DialogValue3");
if(GetPlayerMoney(playerid) < price)
{
ShowErrorDialog(playerid, "Nemas dovoljno novca da kupis ovo vozilo!");
return 1;
}
new msg[128];
VehicleOwner[vehicleid] = PlayerName(playerid);
GivePlayerMoney(playerid, -price);
GivePlayerMoney(targetid, price);
SaveVehicle(vehicleid);
format(msg, sizeof(msg), "YKupio si ovo vozilo za $%d", price);
SendClientMessage(playerid, COLOR_WHITE, msg);
format(msg, sizeof(msg), "%s (%d) je prihvatio vasu ponudu i kupio vozilo", PlayerName(playerid), playerid);
SendClientMessage(targetid, COLOR_WHITE, msg);
RemovePlayerFromVehicle(playerid);
TogglePlayerControllable(playerid,1);
}
else
{
new targetid = GetPVarInt(playerid, "DialogValue1");
new msg[128];
format(msg, sizeof(msg), "%s (%d) je odbio vasu ponudu!", PlayerName(playerid), playerid);
SendClientMessage(targetid, COLOR_WHITE, msg);
}
return 1;
}

Eto
Samo ovo je kada prodaje nekom igarcu vozilo?
Poslednja Izmena: Oktobar 28, 2011, 20:42:26 POSLE PODNE od [BD]Gagi

Da upravu si :S

if(dialogid == DIALOG_VEHICLE_BUY)
{
if(response)
{
if(GetPlayerVehicles(playerid) >= MAX_PLAYER_VEHICLES)
{
ShowErrorDialog(playerid, "Ne mozes kupiti vise vozila!! Max: " #MAX_PLAYER_VEHICLES );
return 1;
}
new id = GetPVarInt(playerid, "DialogValue1");
if(GetPlayerMoney(playerid) < VehicleValue[id])
{
ShowErrorDialog(playerid, "Nemas dovoljno novca da kupis ovo vozilo!");
return 1;
}
new freeid;
for(new i=1; i < MAX_DVEHICLES; i++)
{
if(!VehicleCreated[i])
{
freeid = i; break;
}
}
if(!freeid)
{
ShowErrorDialog(playerid, "Nemamo vise tih modela!");
return 1;
}
GivePlayerMoney(playerid, -VehicleValue[id]);
new dealerid = strval(VehicleOwner[id]);
VehicleCreated[freeid] = VEHICLE_PLAYER;
VehicleModel[freeid] = VehicleModel[id];
VehiclePos[freeid] = DealershipPos[dealerid];
VehicleColor[freeid] = VehicleColor[id];
VehicleInterior[freeid] = VehicleInterior[id];
VehicleWorld[freeid] = VehicleWorld[id];
VehicleValue[freeid] = VehicleValue[id];
VehicleOwner[freeid] = PlayerName(playerid);
VehicleNumberPlate[freeid] = DEFAULT_NUMBER_PLATE;
for(new d=0; d < sizeof(VehicleTrunk[]); d++)
{
VehicleTrunk[freeid][d][0] = 0;
VehicleTrunk[freeid][d][1] = 0;
}
for(new d=0; d < sizeof(VehicleMods[]); d++)
{
VehicleMods[freeid][d] = 0;
}
VehiclePaintjob[freeid] = 255;
UpdateVehicle(freeid, 0);
SaveVehicle(freeid);
new msg[128];
format(msg, sizeof(msg), "Kupio si ovo vozilo za $%d", VehicleValue[id]);
SendClientMessage(playerid, COLOR_WHITE, msg);
                        [b]RemovePlayerFromVehicle(playerid);[/b]
                        [b]TogglePlayerControllable(playerid,1);[/b]
}
else
{
new vehicleid = GetPVarInt(playerid, "DialogValue1");
if(GetPlayerVehicleAccess(playerid, vehicleid) != 3)
{
RemovePlayerFromVehicle(playerid);
}
}
return 1;
}


To je ovo odradio sma tako i sad ga izbacuje hvala na pomoci  :* (L) Moze LOCK!
Poslednja Izmena: Oktobar 28, 2011, 21:28:23 POSLE PODNE od DJeronimo
big respect 4 Blaeks Vuzimir  Shoorty Scripter HamZa

dragan12

if(dialogid == DIALOG_VEHICLE_BUY)
{
if(response)
{
if(GetPlayerVehicles(playerid) >= MAX_PLAYER_VEHICLES)
{
ShowErrorDialog(playerid, "Ne mozes kupiti vise vozila!! Max: " #MAX_PLAYER_VEHICLES );
return 1;
}
new id = GetPVarInt(playerid, "DialogValue1");
if(GetPlayerMoney(playerid) < VehicleValue[id])
{
ShowErrorDialog(playerid, "Nemas dovoljno novca da kupis ovo vozilo!");
return 1;
}
new freeid;
for(new i=1; i < MAX_DVEHICLES; i++)
{
if(!VehicleCreated[i])
{
freeid = i; break;
}
}
if(!freeid)
{
ShowErrorDialog(playerid, "Nemamo vise tih modela!");
return 1;
}
GivePlayerMoney(playerid, -VehicleValue[id]);
new dealerid = strval(VehicleOwner[id]);
VehicleCreated[freeid] = VEHICLE_PLAYER;
VehicleModel[freeid] = VehicleModel[id];
VehiclePos[freeid] = DealershipPos[dealerid];
VehicleColor[freeid] = VehicleColor[id];
VehicleInterior[freeid] = VehicleInterior[id];
VehicleWorld[freeid] = VehicleWorld[id];
VehicleValue[freeid] = VehicleValue[id];
VehicleOwner[freeid] = PlayerName(playerid);
VehicleNumberPlate[freeid] = DEFAULT_NUMBER_PLATE;
for(new d=0; d < sizeof(VehicleTrunk[]); d++)
{
VehicleTrunk[freeid][d][0] = 0;
VehicleTrunk[freeid][d][1] = 0;
}
for(new d=0; d < sizeof(VehicleMods[]); d++)
{
VehicleMods[freeid][d] = 0;
}
VehiclePaintjob[freeid] = 255;
UpdateVehicle(freeid, 0);
SaveVehicle(freeid);
new msg[128];
format(msg, sizeof(msg), "Kupio si ovo vozilo za $%d", VehicleValue[id]);
SendClientMessage(playerid, COLOR_WHITE, msg);
           RemovePlayerFromVehicle(playerid);
TogglePlayerControllable(playerid,1);
}
else
{
new vehicleid = GetPVarInt(playerid, "DialogValue1");
if(GetPlayerVehicleAccess(playerid, vehicleid) != 3)
{
RemovePlayerFromVehicle(playerid);
}
}
return 1;
}

Tako probaj

Da da skotano sam od onog Vehicle Sell pa reko sigurno isto uradio sam to radi :D sve je ok HVALA
Moze LOCK!
big respect 4 Blaeks Vuzimir  Shoorty Scripter HamZa