Jump to content
  • 0

pomoc Vehicle system


Mivčo

Dotaz

Zdravím... 

Ako by som spravil vehicle system ked mam autosalon a vstupim do autosalonu a bude tam pickup a yobrayí sa mi tam dialog a tam si auto vzberem a kupim a ono ma to dá do toho auta ktoré som si kupil.... ale ked si to auto kupim tak tam už to auto neostane v autosalone ("myslím ako že ked si kupiš auto a odídeš a to iste auto tam zas nebude") ale ked si hráč nekupy auto tak ho vzhodí z auta..

Link to comment
Share on other sites

4 odpovědí na tuto otázku

Recommended Posts

  • 0

 

#include
#include

#define DIALOG_CARSALON (950)

public OnGameModeInit(){
CreateDynamicPickup(1272,0,1786.1952,-1764.5594,13.7285,-1);
CreateDynamicPickup(1272,0,1786.1952,-1764.5594,13.7285,-1);
CreateDynamicPickup(1272,0,1786.1493,-1759.7550,20.6972,-1);

CreateVehicle(480,1769.2498000,-1753.2544000,20.5589000,200.9459000,2,2,15); //Comet
CreateVehicle(500,1766.7665000,-1766.3256000,20.8954000,280.3944000,7,104,15); //Mesa
CreateVehicle(495,1766.6792000,-1786.7676000,21.1353000,303.2723000,98,98,15); //Sandking
CreateVehicle(506,1778.3607000,-1787.7627000,20.4905000,13.0540000,7,7,15); //Super GT
CreateVehicle(518,1788.8315000,-1775.1764000,20.4569000,150.9530000,21,1,15); //Buccaneer
CreateVehicle(535,1777.5945000,-1771.6549000,20.5515000,110.9973000,129,129,15); //Slamvan
CreateVehicle(567,1786.1334000,-1752.9331000,20.6572000,169.4717000,6,6,15); //Savanna
CreateVehicle(558,1779.7177000,-1754.2277000,20.4156000,198.7994000,8,6,15); //Uranus
CreateVehicle(573,1749.7111000,-1749.3965000,15.1403000,37.7197000,85,6,15); //Duneride
CreateVehicle(424,1706.8065000,-1748.6846000,14.4056000,231.9650000,24,53,15); //BF Injection
CreateVehicle(494,1727.7894000,-1749.2201000,14.4153000,178.3912000,92,101,15); //Hotring
CreateVehicle(503,1717.6016000,-1748.7712000,14.5023000,160.2046000,123,36,15); //Hotring Racer B
CreateVehicle(502,1737.9453000,-1748.3475000,14.4878000,180.3412000,7,94,15); //Hotring Racer A
CreateVehicle(535,1778.5243000,-1787.8978000,13.5511000,21.6301000,6,6,15); //Slamvan
CreateVehicle(545,1801.6971000,-1781.4606000,13.5956000,82.8634000,28,96,15); //Hustler
CreateVehicle(534,1771.1902000,-1771.1672000,13.5120000,70.5284000,127,3,15); //Remington
CreateVehicle(555,1767.5038000,-1752.1283000,13.4691000,132.8478000,13,1,15); //Windsor
CreateVehicle(560,1787.1737000,-1753.4999000,13.4913000,210.2189000,41,29,15); //Sultan
CreateVehicle(576,1788.6173000,-1772.9250000,13.3921000,112.5802000,122,127,15); //Tornado
CreateVehicle(581,1780.8528000,-1778.1194000,13.3818000,135.1635000,39,106,15); //BF-400
CreateVehicle(586,1789.1492000,-1766.4817000,20.3049000,337.4438000,1,1,15); //Wayfarer
CreateVehicle(522,1766.8083000,-1781.7701000,13.3524000,296.3410000,51,118,15); //NRG-500
CreateVehicle(506,1769.7397000,-1787.4740000,13.4925000,341.0192000,3,3,15); //Super GT
CreateVehicle(461,1793.5275000,-1788.2117000,13.3710000,19.8302000,135,135,15); //PCJ-600
CreateVehicle(445,1717.4645000,-1773.5160000,13.4967000,180.7581000,48,48,15); //Admiral
return 1;
}

public OnGameModeExit(){
return 1;
}


public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger){
return 1;
}

public OnPlayerExitVehicle(playerid, vehicleid){
return 1;
}


public OnPlayerPickUpPickup(playerid, pickupid){
if(IsPlayerInRangeOfPoint(playerid, 1.0, 1786.1952,-1764.5594,13.7285) ||
IsPlayerInRangeOfPoint(playerid, 1.0, 1787.3651,-1780.6044,13.7295) ||
IsPlayerInRangeOfPoint(playerid, 1.0, 1786.1493,-1759.7550,20.6972)){
new str[512];
strcat(str,"Comet\n");
strcat(str,"Mesa\n");
strcat(str,"Sandking\n");
strcat(str,"Super GT\n");
strcat(str,"Buccaneer\n");
strcat(str,"Slamvan\n");
strcat(str,"Savanna\n");
strcat(str,"Uranus\n");
strcat(str,"Duneride\n");
strcat(str,"BF Injection\n");
strcat(str,"Hotring\n");
strcat(str,"Hotring Racer B\n");
strcat(str,"Hotring Racer A\n");
strcat(str,"Slamvan\n");
strcat(str,"Hustler\n");
strcat(str,"Remington\n");
strcat(str,"Windsor\n");
strcat(str,"Sultan\n");
strcat(str,"Tornado\n");
strcat(str,"BF-400\n");
strcat(str,"Wayfarer\n");
strcat(str,"NRG-500\n");
strcat(str,"Super GT\n");
strcat(str,"PCJ-600\n");
strcat(str,"Admiral\n");
ShowPlayerDialog(playerid,DIALOG_CARSALON,DIALOG_STYLE_LIST,"VRLS Car Salon",str,"Pokracovat","Koniec");
}
return 1;
}


public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]){
if(dialogid == DIALOG_CARSALON){
if(response){
switch (listitem){
case 0:{

}
case 1:{

}
case 3:{

}
case 4:{

}
case 5:{

}
}
}
}
return 1;
}

 

 

Ewwíku a ako dalej.. že kúpy si auto a dá ho presne do toho auta a potom to auto sa tam nikdy nezobrazí...


.....

Link to comment
Share on other sites

  • 0

1.) Všetky tie strcat() taj preč. Zbytočne ti to spomalí mód, daj to do jedného strcatu. Ak ti ide o prehľadnosť, dá sa to napr. takto:

strcat(str, "Comet\n" \
"Mesa\n" \
"Sandking\n" \
"Super GT\n");

2.) 

Najprv všetky vozidlá z obchodu ulož do premennej. (array / pole)
A do ďalšej premennej, že či tie vozidlá niekto vlastní (stačí true / false).
(Potom aj pre každého hráča jednu premennú, že či vlastní niektoré z tých aut a ak áno, tak ktoré.)

A potom v OnVehicleSpawn() porovnáš ID vozidla.
Potom zistíš, že či to ID niekto vlastní.
Ak áno, tak ho premiestniš niekam ďaleko do hôr, kde ho nikto nenájde. AK nie, normálne ho tam spawneš.

PS.: Dobrý roleplay nápad.



 

Link to comment
Share on other sites

  • 0

Do news:

new autosalon;

Do OnPlayerKeyStateChange:

if (newkeys & KEY_WALK){
if (IsPlayerInRangeOfPoint(playerid, 2.0,X,Y,Z))//XYZ-pickupu (předpokládám že už ho máš vytvořenej)
{
ShowPlayerDialog(playerid, ID, DIALOG_STYLE_LIST, "{FF0000}Autosalon","{FFFFFF}Infernus - {00FF00}Cena: 100.000$\n{FFFFFF}Elegy - {00FF00}Cena 100.000$\n{FFFFFF}ATD. - {00FF00}ATD: ATD.", "Ok", "Zavřít");
}
}

Do OnDialogResponse:

if(dialogid == ID)
{
if(response == 1)
{
if(listitem == 0)
{
if(GetPlayerMoney(playerid) < 100000) return SendClientMessage(playerid, BARVA, "Nemáš dostatek financí!"); //když nemá love
{
GivePlayerMoney(playerid, -100000);
SendClientMessage(playerid, BARVA, "Koupil sis infernus za 100.000$");
autosalon = CreateVehicle(ID AUTA, X, Y, Z, BARVA1, BARVA2, 1000); //XYZ-Kam se auto spawne
PutPlayerInVehicle(playerid, autosalon,0); //Posadího do auta
}
}
if(listitem == 1)
{
if(GetPlayerMoney(playerid) < 100000) return SendClientMessage(playerid, BARVA, "Nemáš dostatek financí!"); //když nemá love
{
GivePlayerMoney(playerid, -100000);
SendClientMessage(playerid, BARVA, "Koupil sis elegy za 100.000$");
autosalon = CreateVehicle(ID AUTA, X, Y, Z, BARVA1, BARVA2, 1000); //XYZ-Kam se auto spawne
PutPlayerInVehicle(playerid, autosalon,0); //Posadího do auta
}
}
ATD
}}
}
}

Snad je to Ok, pro rejpali domluvili sme se v chatu že chce vytvořit nové auto mimo salon.

Edited by P4tRiCk
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...