Jump to content

návod Jak udělat jednoduché GPS


cemada77

Recommended Posts

Čus , tak ukážu vám jak udělat jednoduchou GPS navigaci s CP (ChechPointy)  :)

 

Nadefinujeme si DCMD

#define dcmd(%1,%2,%3) if ((strcmp((%3)[1], #%1, true, (%2)) == 0) && ((((%3)[(%2) + 1] == 0) && (dcmd_%1(playerid, "")))||(((%3)[(%2) + 1] == 32) && (dcmd_%1(playerid, (%3)[(%2) + 2]))))) return 1

Nyní vložíme DCMD příkaz někde do modu , nejlépe úplně na konec 

dcmd_gps(playerid,params[])
{
#pragma unused params // Pokud vám to bude psát warning 203: symbol is never used: "params"
ShowPlayerDialog(playerid,1,DIALOG_STYLE_LIST,"GPS","1.pozice\n2.pozice\nZrušit GPS","Rozumím","Konec"); //Toto vám vyskočí po zadání příkazu /gps

}

Do OnDialogResponse vložíme toto 

if(response)
{
switch(dialogid)
{
case 100: // ID Dialogu
{
switch(listitem)
{
case 0: // 1 tlačítko v dialogu
{
SendClientMessage(playerid,0xFFFFFFC8,"Pozice 1");
SetPlayerCheckpoint(playerid, X , Y , Z, 3.0); // zde si nastavíte svoje souřadnice
}


case 1: // 2 tlačítko v dialogu
{
SendClientMessage(playerid,0xFFFFFFC8,"Pozice 2");
SetPlayerCheckpoint(playerid, 1.93, 19.3, 6, 3.0);
}


case 2: // 3 tlačítko v dialogu
{
SendClientMessage(playerid,0xFFFFFFC8,"Vypnul jsi svojí GPS.");
DisablePlayerCheckpoint(playerid);
}
}
}
}
}

Nyní si můžete nastavit svoje místa .

Link to comment
Share on other sites

Kritika:


1. NEBUDE TO FUNGOVAŤ, LEBO SI NEDAL INCLUDE.
2. Pragmu unused nepíš nikomu - len to pokazí kód a zvyky EŠTE K TOMU NIE NOVÁČIKOM!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
3. Odriadkuj si to normálne.
4. Dialogid 100 tam ani nemáš.
5. NEBUDE TO FUNGOVAŤ, LEBO SI ZLE DAL DIALOGY.
7. Niesu to tlačidlá v dialogu, tlačidlá sú tie dole, listitem sú možnosti.
8. Nevšimol si si, že som vynechal bod 6.
9. Nebude to fungovať so žiadnym inym skriptom, lebo každý používa ID dialogu od začiatku - krížili by sa.


Moc návod to ani nieje. Skôr vysvetlenie skriptu.

Link to comment
Share on other sites

Kritika:

 

 

1. NEBUDE TO FUNGOVAŤ, LEBO SI NEDAL INCLUDE.

2. Pragmu unused nepíš nikomu - len to pokazí kód a zvyky EŠTE K TOMU NIE NOVÁČIKOM!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

3. Odriadkuj si to normálne.

4. Dialogid 100 tam ani nemáš.

5. NEBUDE TO FUNGOVAŤ, LEBO SI ZLE DAL DIALOGY.

7. Niesu to tlačidlá v dialogu, tlačidlá sú tie dole, listitem sú možnosti.

8. Nevšimol si si, že som vynechal bod 6.

9. Nebude to fungovať so žiadnym inym skriptom, lebo každý používa ID dialogu od začiatku - krížili by sa.

 

 

Moc návod to ani nieje. Skôr vysvetlenie skriptu.

Tango kdo tě tak natankoval ? poslední dobu se chováš jak kokosák . .. 

Link to comment
Share on other sites

#include <a_samp> //zakladny includ

#define SCM SendClientMessage //skratenie SCM
#define SPD ShowPlayerDialog  // skratenie SPD
#define DIALOG_GPS 1999 //čislo si možte zmeniť
#define B 0xFFFFFFFF //biela farba
#define R 0xFF0000C8 //cervena farba


public OnPlayerCommandText(playerid, cmdtext[])
{
	if(strcmp("/gps", cmdtext, true, 10) == 0)//prikaz
	{
        	SPD(playerid,DIALOG_GPS,DIALOG_STYLE_LIST,"GPS","1.pozice\n2.pozice\nZrušit GPS","Rozumím","Konec");//otvori dialog
 return 1;
 }
return 0;
}

public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{

if(dialogid == DIALOG_GPS)//Id dialogu ktoré sa  otvori
{
if(response == 1) //Tlačidlo 1 (Ľavé tlačidlo)
{
if(listitem == 0) //Prvá položka v dialógu
{
SCM(playerid,0xFFFFFFC8,"Pozice 1");
SetPlayerCheckpoint(playerid, X , Y , Z, 3.0); // Namiesto X , Y , Z si nastavime suradnice
}
}
else if(listitem == 1) 
{
SCM(playerid,0xFFFFFFC8,"Pozice 2");
SetPlayerCheckpoint(playerid, X, Y, Z, 3.0); // Namiesto X , Y , Z si nastavime suradnice
}
else if(listitem == 2) 
{
SCM(playerid,0xFFFFFFC8,"Vypnul jsi svojí GPS.");
DisablePlayerCheckpoint(playerid); //vymaže chekpoint
}
}
return 1;
}

Takto by to malo spravne fungovať :d

Link to comment
Share on other sites

  • 2 weeks later...

tango klud. Tu je vidno, že skript je skopirovany a nedava zmysel. Doplň potrebné includy a funkcie. DCMD is dead kamo to uz nepouzivaj.

--------

To bol vtip, Lax mi vždy hodnotí návody a vždy tam nájde dáku chybu :d.

Link to comment
Share on other sites

  • 3 weeks later...

Síce niesom nejaký pawner ale kámo toto si mohol spraviť jednoduchšie: obyčajný dialog a položky na ktoré keď klikneš zobrazí sa ti CP

 

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...