Peršokti į turinį

Pickup su iėjimu


Velnio_Senelis

Ši tema yra neaktyvi. Paskutinis pranešimas šioje temoje buvo prieš 3096 dienas (-ų). Patariame sukurti naują temą, o ne rašyti naują pranešimą.

Už neaktyvių temų prikėlimą galite sulaukti įspėjimo ir pranešimo pašalinimo!

Recommended Posts

Sveiki visi nusprendžiau sukurti pamoką. nežinau ar buvo tokia tema jei buvo tai nepykit.


 


visu pirma mums reikia sužinoti pickup koordinates.: Taigi einam į savo serverį, susirandam vieta kurioje bus pickupas. susiradę vietą rašome: /save [Pickup pavadinimas]. 


 


Dabar galime išeiti iš serverio. susirandam faila savedposicions. ieškoti nemokinsiu tai labai paprasta.


tada susirandam mūsų išsaugotas kordinates pvz: AddPlayerClass(0,-2032.3959,161.4899,29.0461);// [Pickup pavadinimas]. mums reiks tik šių kordinačių: -2032.3959,161.4899,29.0461. nusikopijuojam jas.


 


Dabar einame į mūsų serverio gamemodą. 


Po: public OnGameModeInit(). rašome: 



CreatePickup(1559,2,-2032.3959,161.4899,29.0461);

Paaiškinimai:


CreatePickup - Sukuria pickup.


1559 - musu pickup id. pickup id galite rasti čia: http://weedarr.wikidot.com/pickups.


2 - Tai mūsų pickup type. Type galite rasti čia: http://wiki.sa-mp.com/wiki/PickupTypes.


-2032.3959,161.4899,29.0461 - Tai mūsų pickup koordinatės.


 


Dabar susirandam callbacka'a: public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)


ir rašome: 



if (newkeys & KEY_SECONDARY_ATTACK)
{
 
if(IsPlayerInRangeOfPoint(playerid, 1.0, -2032.3959,161.4899,29.0461))
{
SetPlayerPos(playerid,-25.884498,-185.868988,1003.546875);
SetPlayerInterior(playerid, 17);
}

Paaiškinimai: 


KEY_SECONDARY_ATTACK - Tai su kokiu mygtuku žaidėjas įeis į interjerą. Juos galite rasti čia: https://wiki.sa-mp.com/wiki/Keys.


IsPlayerInRangeOfPoint - Kiek žaidėjas nutolęs nuo mūsų pickup.


1.0 - Tai mūsų nustatytas nuotolis nuo kurio jau galima ieiti.


SetPlayerPos - Nustato žaidėjo pozicija interjero viduje. Juos Galima rasti čia: http://weedarr.wikidot.com/interior.


 SetPlayerInterior - Nustato interjero id mano buvo 17. jus pasirenkite čia: http://weedarr.wikidot.com/interior.


 


Dabar jau susikūrėme iėjimą. dabar reikia išėjimo: 


Po: public OnPlayerKeyStateChange(playerid, newkeys, oldkeys) callbacku rašome:



if(IsPlayerInRangeOfPoint(playerid, 1.0, -25.884498,-185.868988,1003.546875))
{
SetPlayerPos(playerid,-2032.3959,161.4899,29.0461);
}

 

Paaiškinimas: 

SetPlayerPos(playerid,-2032.3959,161.4899,29.0461); - Tai mūsų įėjimo koordinatės.

 

Dabar mums dar reikia susikurti išėjimo callbacką: 

Po: public OnGameModeInit() rašome:

 



 CreatePickup(1559,2,-25.884498,-185.868988,1003.546875);


 


Paaiškinimas: 


-25.884498,-185.868988,1003.546875 - Tai mūsų interjero vidaus išėjimo kordinatė.


 


Viskas išėjimas/įėjimas padarytas liko susikurti 3D textą


Po: public OnGameModeInit() rašome:



 Create3DTextLabel("{FF8000}Degalinė\n{FFFFFF}įėjimas: spauskite ENTER", 0xFFD400FF, -2032.3959,161.4899,29.0461,10, 0, 0);
 Create3DTextLabel("{FF8000}Degalinė\n{FFFFFF}įšėjimas: spauskite ENTER", 0xFFD400FF, -25.884498,-185.868988,1003.546875,10, 0, 0);

 

Viskas jau padaryta. tema kurta 100% mano. Jei rasite klaidų ar kažkas neišėjo rašykite komentaruose arba į skype gytis183 . Nepamirškit +REP :D Sekmės visiems. @2015
Redaguota , nario Velnio_Senelis
Nuoroda į komentarą
Dalintis per kitą puslapį

 

Sveiki visi nusprendžiau sukurti pamoką. nežinau ar buvo tokia tema jei buvo tai nepykit.

 

visu pirma mums reikia sužinoti pickup koordinates.: Taigi einam į savo serverį, susirandam vieta kurioje bus pickupas. susiradę vietą rašome: /save [Pickup pavadinimas]. 

 

Dabar galime išeiti iš serverio. susirandam faila savedposicions. ieškoti nemokinsiu tai labai paprasta.

tada susirandam mūsų išsaugotas kordinates pvz: AddPlayerClass(0,-2032.3959,161.4899,29.0461);// [Pickup pavadinimas]. mums reiks tik šių kordinačių: -2032.3959,161.4899,29.0461. nusikopijuojam jas.

 

Dabar einame į mūsų serverio gamemodą. 

Po: public OnGameModeInit(). rašome: 

CreatePickup(1559,2,-2032.3959,161.4899,29.0461);

Paaiškinimai:

CreatePickup - Sukuria pickup.

1559 - musu pickup id. pickup id galite rasti čia: http://weedarr.wikidot.com/pickups.

2 - Tai mūsų pickup type. Type galite rasti čia: http://wiki.sa-mp.com/wiki/PickupTypes.

-2032.3959,161.4899,29.0461 - Tai mūsų pickup koordinatės.

 

Dabar susirandam callbacka'a: public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)

ir rašome: 

if (newkeys & KEY_SECONDARY_ATTACK)
{
 
if(IsPlayerInRangeOfPoint(playerid, 1.0, -2032.3959,161.4899,29.0461))
{
SetPlayerPos(playerid,-25.884498,-185.868988,1003.546875);
SetPlayerInterior(playerid, 17);
}

Paaiškinimai: 

KEY_SECONDARY_ATTACK - Tai su kokiu mygtuku žaidėjas įeis į interjerą. Juos galite rasti čia: https://wiki.sa-mp.com/wiki/Keys.

IsPlayerInRangeOfPoint - Kiek žaidėjas nutolęs nuo mūsų pickup.

1.0 - Tai mūsų nustatytas nuotolis nuo kurio jau galima ieiti.

SetPlayerPos - Nustato žaidėjo pozicija interjero viduje. Juos Galima rasti čia: http://weedarr.wikidot.com/interior.

 SetPlayerInterior - Nustato interjero id mano buvo 17. jus pasirenkite čia: http://weedarr.wikidot.com/interior.

 

Dabar jau susikūrėme iėjimą. dabar reikia išėjimo: 

Po: public OnPlayerKeyStateChange(playerid, newkeys, oldkeys) callbacku rašome:

if(IsPlayerInRangeOfPoint(playerid, 1.0, -25.884498,-185.868988,1003.546875))
{
SetPlayerPos(playerid,-2032.3959,161.4899,29.0461);
}
 
Paaiškinimas: 
SetPlayerPos(playerid,-2032.3959,161.4899,29.0461); - Tai mūsų įėjimo koordinatės.
 
Dabar mums dar reikia susikurti išėjimo callbacką: 
Po: public OnGameModeInit() rašome:
 
 CreatePickup(1559,2,-25.884498,-185.868988,1003.546875);

 

Paaiškinimas: 

-25.884498,-185.868988,1003.546875 - Tai mūsų interjero vidaus išėjimo kordinatė.

 

Viskas išėjimas/įėjimas padarytas liko susikurti 3D textą

Po: public OnGameModeInit() rašome:

 Create3DTextLabel("{FF8000}Degalinė\n{FFFFFF}įėjimas: spauskite ENTER", 0xFFD400FF, -2032.3959,161.4899,29.0461,10, 0, 0);
 Create3DTextLabel("{FF8000}Degalinė\n{FFFFFF}įšėjimas: spauskite ENTER", 0xFFD400FF, -25.884498,-185.868988,1003.546875,10, 0, 0);
 
Viskas jau padaryta. tema kurta 100% mano. Jei rasite klaidų ar kažkas neišėjo rašykite komentaruose arba į skype gytis183 . Nepamirškit +REP :D Sekmės visiems. @2015

 

nelengviau dinamini pasidaryti ? ir sutaupyto kodo, bei vietos..

Nuoroda į komentarą
Dalintis per kitą puslapį

Kažkaip man tas dinaminis ne prie širdies man šitas kad ir didesnis ir daugiau darbo bet man jis patogesnis. :D 


Manau naujokams pravers ši pamoka spaudžiu žalia už darba. :)

Ačių


Sorry, netyčia -rep užmečiau, bet užmečiau 2 +rep :D pamoka gal ir gera, gal kam pravers. 

Nieko tokio :D

Nuoroda į komentarą
Dalintis per kitą puslapį

Ši tema yra neaktyvi. Paskutinis pranešimas šioje temoje buvo prieš 3096 dienas (-ų). Patariame sukurti naują temą, o ne rašyti naują pranešimą.

Už neaktyvių temų prikėlimą galite sulaukti įspėjimo ir pranešimo pašalinimo!

Prisijungti prie diskusijos

Palikti atsakymą galite iš karto, o užsiregistruoti vėliau. Jeigu jau turite paskyrą mūsų forume, Prisijunkite.

Svečias
Atsakyti šioje temoje...

×   Įklijuotas tekstas turi teksto formatavimą.   Pašalinti teksto formatavimą

  Galimi tik 75 veidukai.

×   Nuoroda buvo automatiškai įterpta.   Įterpti nuorodą paprastai

×   Jūsų ankstesnis pranešimas buvo atkurtas.   Išvalyti redaktorių

×   Jūs negalite įkelti nuotraukas tiesiogiai.Įkelkite arba įdėkite nuotraukas iš URL.

  • Šiame puslapyje naršo:   0 nariai

    • Nėra registruotų narių peržiūrinčių šį forumą.

Skelbimai


×
×
  • Sukurti naują...