Ahoj ..
rozhodl jsem se Vám tu napsat další TuT, teďka o pozicích v sa:mp
Jak jistě všichni znáte z matematiky, existují pozice třeba když děláte grafy, dělí se na Xouvou, Ypsilonovou a nakonec i Ztkovou
X,Y, Z
Takže, jestli nevíte jak uložit pozici ve hře tak k tomu Vám poslouží tento TuT :
a) Uložte si ve hře pomocí příkazu /save pozici
b) Potom jeďte do svých dokumentů, tam by mělo být někde Gta User Files ...
c) Otevřete to, klikněte na SAMP a potom jak to rozkliknete tak tam bude soubor "savedpositions.txt"
Takže, takhle jsme se dostali až k oné uložené pozici
Takže, teďka jste rozklikli a v souboru budou buď:
AddPlayerClass(.....)
nebo
AddStaticVehicle(...)
[size=150]AddPlayerClass[/size]
Rozkliknuli jsme si soubor a zobrazilo se nám tam AddPlayerClass- to znamená že jsme si pozici uložili a nebyli jsme v autě
Př.
AddPlayerClass(0,3884.7776,-1735.5977,23.9092,287.2555,0,0,0,0,0,0);
http://wiki.sa-mp.com/wiki/AddPlayerClass
Vyznačené barevně jsou pozice které nás teďka zajímají, X,Y,Z.
[size=150]AddStaticVehicle[/size]
TO znamená že jsme pozici uložili ve vozidle
Př.:
AddStaticVehicle(543,2055.8347,-1903.6213,13.3682,178.4617,0,48);
http://wiki.sa-mp.com/wiki/AddStaticVehicle
[size=200]Funkce, použití[/size]
Použití s pozicemi je mnoho, díky tomu můžeme vytvořit primitivní věc jako je třeba /zabij "ID"
Ale to až zachvilinku, teďka klasický příkaz pro teleportování se
SetPlayerPos - V překladu DátHráčeNaPozici
playerid - komu se funkce vyvolá
x,y,z - souřadnice
Můžeme využít třeba když děláme mapy tak na příkaz aby se někam teleportoval
To je velmi jednoduché, kdyby bylo něco nejasné pište
[size=150]Jak zjistit hráčovu pozici ?[/size]
Je to jednoduchá funkce taktéž..
Nejdříve si můsíme udělat proměnné s kterými budeme pracovat, pro nás jsou to Float, teda pozice
A teďka využití:
GetPlayerPos - V překladu je to něco jako VzítHráčovuPozici
playerid - komu se funkce vyvolá ..
x,y,z - to jsou ty proměnné které jsme si udělali
Využití:
[size=150]Jak udělat aby se něco portlo vedle mě ?[/size]
Jak jsme si řekli, uděláme si funkci pro zjištění pozice, tu hned využijeme
To angle je rotace vozidla
A teď jak je x+1, to znamená že přidá k souřadnici Xové +1 tj portne se těsně vedle vás
======================================================
Tak to by bylo asi vše, kdyžtak něco doplním a kdyby byly otázky tak směřujte mně do pošty nebo napište dolů příspěvek.
Kaczmi
rozhodl jsem se Vám tu napsat další TuT, teďka o pozicích v sa:mp
Jak jistě všichni znáte z matematiky, existují pozice třeba když děláte grafy, dělí se na Xouvou, Ypsilonovou a nakonec i Ztkovou
X,Y, Z
Takže, jestli nevíte jak uložit pozici ve hře tak k tomu Vám poslouží tento TuT :
a) Uložte si ve hře pomocí příkazu /save pozici
b) Potom jeďte do svých dokumentů, tam by mělo být někde Gta User Files ...
c) Otevřete to, klikněte na SAMP a potom jak to rozkliknete tak tam bude soubor "savedpositions.txt"
Takže, takhle jsme se dostali až k oné uložené pozici
Takže, teďka jste rozklikli a v souboru budou buď:
AddPlayerClass(.....)
nebo
AddStaticVehicle(...)
[size=150]AddPlayerClass[/size]
Rozkliknuli jsme si soubor a zobrazilo se nám tam AddPlayerClass- to znamená že jsme si pozici uložili a nebyli jsme v autě
Př.
AddPlayerClass(0,3884.7776,-1735.5977,23.9092,287.2555,0,0,0,0,0,0);
http://wiki.sa-mp.com/wiki/AddPlayerClass
Vyznačené barevně jsou pozice které nás teďka zajímají, X,Y,Z.
[size=150]AddStaticVehicle[/size]
TO znamená že jsme pozici uložili ve vozidle
Př.:
AddStaticVehicle(543,2055.8347,-1903.6213,13.3682,178.4617,0,48);
http://wiki.sa-mp.com/wiki/AddStaticVehicle
[size=200]Funkce, použití[/size]
Použití s pozicemi je mnoho, díky tomu můžeme vytvořit primitivní věc jako je třeba /zabij "ID"
Ale to až zachvilinku, teďka klasický příkaz pro teleportování se
- kód:
SetPlayerPos(playerid, x , y , z);
SetPlayerPos - V překladu DátHráčeNaPozici
playerid - komu se funkce vyvolá
x,y,z - souřadnice
Můžeme využít třeba když děláme mapy tak na příkaz aby se někam teleportoval
- kód:
if(strcmp(cmdtext,"/portnime",true)==0)
{
SetPlayerPos(playerid,x,y,z);
return true;
}
To je velmi jednoduché, kdyby bylo něco nejasné pište
[size=150]Jak zjistit hráčovu pozici ?[/size]
Je to jednoduchá funkce taktéž..
Nejdříve si můsíme udělat proměnné s kterými budeme pracovat, pro nás jsou to Float, teda pozice
- kód:
new Float:x;
new Float:y;
new Float:z;
A teďka využití:
- kód:
GetPlayerPos(playerid,x,y,z);
GetPlayerPos - V překladu je to něco jako VzítHráčovuPozici
playerid - komu se funkce vyvolá ..
x,y,z - to jsou ty proměnné které jsme si udělali
Využití:
- kód:
if(strcmp(cmdtext,"/pos",true)==0)
{
new Float:x, Float:y, Float:z;
GetPlayerPos(playerid, x, y, z);
printf("Jsi na pozici %f,%f,%f.", x, y, z);
return true;
}
[size=150]Jak udělat aby se něco portlo vedle mě ?[/size]
Jak jsme si řekli, uděláme si funkci pro zjištění pozice, tu hned využijeme
- kód:
if(strcmp(cmdtext,"/auto",true)==0)
{
new Float:x, Float:y, Float:z , Float:angle;
GetPlayerPos(playerid, x, y, z);
AddStaticVehicle(543,x+1,y,z,angle,0,48);
return true;
}
To angle je rotace vozidla
A teď jak je x+1, to znamená že přidá k souřadnici Xové +1 tj portne se těsně vedle vás
======================================================
Tak to by bylo asi vše, kdyžtak něco doplním a kdyby byly otázky tak směřujte mně do pošty nebo napište dolů příspěvek.
Kaczmi
Naposledy upravil Kaczmi dňa Ne máj 22, 2011 12:22 am, celkom upravené 1 krát.