Jump to content

Cerere tutorial GPS


marian2001

Recommended Posts

Descriere tutorial: Puteti sa imi faceti un tutorial gps cu coordonatele astea:

AddStaticVehicle(560,1028.9440,-1558.5614,13.2462,343.7151,1,1); // Examen DMV
AddStaticVehicle(560,711.4622,-1432.2728,13.2393,194.7305,1,1); // The Triads
AddStaticVehicle(560,666.9611,-1282.9161,13.1656,354.8552,1,1); // Varios Los Aztecas
AddStaticVehicle(560,549.8950,-1270.1644,16.9496,155.0780,1,1); // RentCar Ls
AddStaticVehicle(560,1791.4735,-1166.5736,23.5441,348.2956,1,1); // Gun Shop 
AddStaticVehicle(560,1791.0420,-1293.5339,13.2371,237.9274,1,1); // News reporter
AddStaticVehicle(560,2032.2506,-1409.3840,16.7905,329.7090,1,1); // Medic		
AddStaticVehicle(560,2130.6013,-1460.1730,23.5266,355.2462,1,1); // Ballas
AddStaticVehicle(560,2495.4548,-1667.1882,13.0483,241.4853,1,1); // Grove
AddStaticVehicle(560,1541.7828,-1674.5450,13.2579,175.1407,1,1); // Police Departament
AddStaticVehicle(560,1483.5800,-1771.5785,13.2515,175.8850,1,1); // Primarie
AddStaticVehicle(560,1421.4164,-1679.4807,13.2525,0.5203,1,1); // Banca
AddStaticVehicle(560,1326.9592,-1558.8041,13.2459,213.2587,1,1); // Dealership
AddPlayerClass(286,1901.5883,703.2072,10.8203,102.1710,0,0,0,0,0,0); // Federal Bureau of Investigation
AddPlayerClass(287,-1606.5780,679.6290,-5.2422,0.0000,0,0,0,0,0,0); // National Guard
AddPlayerClass(113,1022.0779,-1124.0498,23.8694,180.4817,0,0,0,0,0,0); // The Mafia
AddPlayerClass(268,-397.2649,-427.5502,16.2031,168.8882,0,0,0,0,0,0); // Tow Car Company
AddPlayerClass(294,1068.7241,-326.9589,73.9922,132.2279,0,0,0,0,0,0); // Hitman
AddPlayerClass(61,304.2654,-1524.8188,24.9219,0.0000,0,0,0,0,0,0); // Taxi
AddPlayerClass(171,-2026.0669,-97.7846,35.1641,0.0000,0,0,0,0,0,0); // License faction
AddPlayerClass(147,2621.0313,1825.0426,11.0234,91.4942,0,0,0,0,0,0); // NFS Club
AddPlayerClass(147,2482.1902,1526.6140,11.4886,316.4462,0,0,0,0,0,0); // NRG Club
AddPlayerClass(147,-1567.9252,-2730.1885,48.7435,155.7281,0,0,0,0,0,0); // Bikers

 

Link to comment
Share on other sites

Pasul 1 : Mergi pe undeva pe la inceputul gamemode-ului si adaugi urmatoarele :

new GPS[MAX_PLAYERS];
#define DIALOG_GPS 100

Mergi la "public OnPlayerConnect(playerid)" si adauga : GPS[playerid] = 0;

Pasul 2 : Mergi la "public OnPlayerCommandText(playerid, cmdtext[])" si vei adauga urmatoarea comanda :

if(strcmp(cmd, "/gps", true) == 0)
{
	if(IsPlayerConnected(playerid))
	{
	    ShowPlayerDialog(playerid, DIALOG_GPS, DIALOG_STYLE_LIST, "Locatii", "Locatia1\nLocatia2\nLocatia3", "Alege", "Inchide");
	    return 1;
 }

Functia "ShowPlayerDialog" va arata celui care tasteaza comanda "/gps" un dialog cu locatiile pe care sa le aleaga .

DIALOG_GPS - Reprezinta id-ul dialogului din gamemode, cel care va fi apelat mai tarziu la "OnDialogResponse" .

DIALOG_STYLE_LIST - Reprezinta stilul dialogului, in cazul tau o lista din care se vor putea alege locatiile .

"Locatii" - Reprezinta numele dialogului .

"Locatia1\nLocatia2\nLocatia3" - Reprezinta numele locatiei pe care o vei putea modifica in functie de cum asezi tu . Acel "\n" inseamna capat de rand, adica urmatorul cuvant va incepe de la capat . Tu vei putea adauga mai multe locatii .

"Alege" - Este butonul pe care-l vei apasa pentru a alege o locatie .

"Inchide" - Este butonul pe care-l vei apasa daca vrei sa inchizi dialogul .

 

Pasul 3 :

Dupa ce ai creeat dialogul va trebui sa setezi ce sa se intample atunci cand un player alege o locatie . Mergi la functia "public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])" unde vei adauga asta :

if(dialogid == DIALOG_GPS)
	{
		if(response)
		{
  			if(listitem == 0)
	    	{
      			SetPlayerCheckpoint(playerid, coordonatele pentru prima locatie pusa la comanda /gps, 3);
	        	SendClientMessage(playerid, COLOR_BLUE, "Ai activat GPS-ul catre "Numele Locatiei", mergi la punctul rosu de pe harta !");
				GPS[playerid] = 500;
			}

if(dialogid == DIALOG_GPS) - Verifica daca id-ul dialogului este id-ul dialogului pentru gps .

if(response) - Verifica daca se raspunde la dialog .

if(listitem == 0) - Verifica ce locatie a fost aleasa, in cazul nostru este prima locatie trecuta la /gps .

SetPlayerCheckpoint - Va seta player-ului un checkpoint (punct pe harta) catre zona aleasa (cea pusa de tine) .

SendClientMessage - Va trimite player-ului un mesaj in care il va anunta ca a setat gps-ul catre o locatie .

GPS[playerid] = 500; - Ii seteaza player-ul valoarea 500 la GPS pentru a fi mai usor sa-l opresti cand ajunge la destinatie .

 

Pasul 4 :

Dupa ce ai pus toate locatiile la OnDialogResponse vei merge la functia "public OnPlayerEnterCheckpoint(playerid)" unde vei adauga :

if(GPS[playerid] == 500)
{
    SendClientMessage(playerid, -1, "Ai ajuns la destinatie, gps-ul a fost dezactivat .");
    DisablePlayerCheckpoint(playerid);
    GPS[playerid] = 0;
    return 1;
}

if(GPS[playerid] == 500) - Verifica daca player-ul area valoarea pusa mai sus, adica daca GPS-ul este activat .

SendClientMessage - Ii trimite player-ului un mesaj care-l anunta ca a ajuns la destinatie si ca gps-ul a fost dezactivat .

DisablePlayerCheckpoint - Ii opreste player-ului checkpoint-ul (punctul de pe harta)

GPS[playerid] = 0; - Ii da player-ului valoarea 0 la GPS, noi vom zice ca gps-ul este "dezactivat" .

 

Acesta este tutorialul . Iti urez succes !

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. For more details you can also review our Terms of Use and Privacy Policy.