hlmod.hu

Magyar Half-Life Mód közösség!
Pontos idő: 2024.04.28. 14:05



Jelenlévő felhasználók

Jelenleg 522 felhasználó van jelen :: 2 regisztrált, 0 rejtett és 520 vendég

A legtöbb felhasználó (1565 fő) 2020.11.21. 11:26-kor tartózkodott itt.

Regisztrált felhasználók: Bing [Bot], Google [Bot] az elmúlt 5 percben aktív felhasználók alapján

Utoljára aktív
Ahhoz hogy lásd ki volt utoljára aktív, be kell jelentkezned.



Az oldal teljeskörű
használatához regisztrálj.

Regisztráció

Kereső


Új téma nyitása  Hozzászólás a témához  [ 8 hozzászólás ] 
Szerző Üzenet
 Hozzászólás témája: [Tutorial] ZP Extra cucc készítése
HozzászólásElküldve: 2012.12.21. 17:50 
Offline
Fanatikus

Csatlakozott: 2012.12.04. 19:05
Hozzászólások: 158
Megköszönt másnak: 3 alkalommal
Megköszönték neki: 10 alkalommal
[kozep]Zombie Plague: Extra cucc készítése[/kozep]

Sziasztok!

Ebben a kis rövid bemutatómban megmutatom, hogyan tudtok extra cuccokat készíteni :)

[kozep]
-[ Szükségünk lesz: ]-
1. Pawn programozási nyelv írására képes programra
2. Egy kis észre (az mindig jól jön :D)
[/kozep]

Kezdjük is.

1. Ezekre a függvénykönyvtárakra lesz szükségünk:
SMA Forráskód: [ Mindet kijelol ]
  1. #include <amxmodx>
  2. #include <amxmisc>
  3. #include <fun>
  4. #include <zombieplague>


2. Definiáljuk a pluginunk információit:
SMA Forráskód: [ Mindet kijelol ]
  1. #define PLUGIN "[ZP] Extra cucc: Elet vasarlas"
  2. #define VERSION "1.0"
  3. #define AUTHOR "Chaos Killer"


3. Létrehozunk egy változót, ami majd tárolja nekünk a regisztrált itemet
SMA Forráskód: [ Mindet kijelol ]
  1. new g_itemid_elet


4. Plugint init :arrow: A változónkba elmentjük a zp_register_extra_item függvényt, paraméterekkel együtt (később azt is leírom, miért van erre szükség!)
SMA Forráskód: [ Mindet kijelol ]
  1. public plugin_init() {
  2. register_plugin(PLUGIN, VERSION, AUTHOR)
  3.  
  4. g_itemid_elet = zp_register_extra_item("\r+10 000 Elet", 25, ZP_TEAM_HUMAN)
  5. }


5. Ez egy fontos rész: a zp_extra_item_selected függvénnyel lekérjük, hogy a játékos választott egy extra cuccot. Itt jön be az a probléma, hogy kiválasztotta a játékos hogy mire szeretné költeni lőszercsomagjait, de a pluginunknak tudnia kell, hogy mit válaszott? Ezért van szükség a globális változónkra, amibe belementettük az extra itemet, hogy le tudjuk csekkolni, hogy a játékost melyik extra dolgot válsztotta. Innentől már csak egy egyszerű if, és egy return kell.
SMA Forráskód: [ Mindet kijelol ]
  1. public zp_extra_item_selected(id, itemid)
  2. {
  3. if(itemid != g_itemid_elet)
  4. return
  5.  
  6. eletadas(id)
  7. }


6. eletadas parancssor:
Megnézzük, hogy a játékosunk, aki kiválasztotta az extra cuccot, él-e, ha nem megállítjuk a pluginunk lefutását az errorok elkerülése végett:
SMA Forráskód: [ Mindet kijelol ]
  1. public eletadas(id)
  2. {
  3. if(!is_user_alive(id))
  4. return PLUGIN_HANDLED
  5.  


7. Létrehozunk egy változót, amiben tároljuk a játékosunk lőszercsomagjait (ez még az eletadas paracssoron belül van!)
SMA Forráskód: [ Mindet kijelol ]
  1. new ammo = zp_get_user_ammo_packs(id)


8. Maga az élet beállítása:
SMA Forráskód: [ Mindet kijelol ]
  1. if (ammo < 25) // Megnézzük, hogy elegendő LCS-a van-e, és ha kevesebb, tudatjuk vele!
  2. {
  3. client_print(id, print_chat, "[ZP] Ehez nincs eleg loszercsomagod!")
  4. return PLUGIN_HANDLED // Majd kilépünk
  5. }
  6. else // Ha pedig elég LCS-a van
  7. {
  8. client_print(id, print_center, "Vasaroltal +10000 HP-t!") // Kiírjuk hogy sikeresen vásárolt életet
  9. set_user_health(id, get_user_health(id)+10000) // Beállítjuk az életét
  10. zp_set_user_ammo_packs(id, ammo-25) // Levonjuk az extra cuccunk árát
  11. }


:arrow: +1.: Egy kis leírás, a zp_register_extra_item függvényről:
Függvény: zp_register_extra_item
Függvénykönyvtár: zombieplague.inc
Paraméterek: zp_register_extra_item(conts name[], cost, teams)
conts name[] = A neve az extra cuccunknak, contstantban.
cost = Az extra cuccunk ára (Lőszercsomagban!)
teams = Az extra cucc megvásárlására képes csapat.
Csapatok:
    ZP_TEAM_ANY - Mindegyik csapat (Zombi és ember is)
    ZP_TEAM_HUMAN - Ember csapat
    ZP_TEAM_ZOMBIE - Zombi csapat


És befejezésül az egész kód, megjegyzések nélkül:
SMA Forráskód: [ Mindet kijelol ]
  1. /* Plugin generated by AMXX-Studio */
  2.  
  3. #include <amxmodx>
  4. #include <amxmisc>
  5. #include <fun>
  6. #include <zombieplague>
  7.  
  8. #define PLUGIN "[ZP] Extra cucc: Elet vasarlas"
  9. #define VERSION "1.0"
  10. #define AUTHOR "Chaos Killer"
  11.  
  12. new g_itemid_elet
  13.  
  14. public plugin_init() {
  15. register_plugin(PLUGIN, VERSION, AUTHOR)
  16.  
  17. g_itemid_elet = zp_register_extra_item("\r+10 000 Elet", 25, ZP_TEAM_HUMAN)
  18.  
  19. }
  20.  
  21. public zp_extra_item_selected(id, itemid)
  22. {
  23. if(itemid != g_itemid_elet)
  24. return
  25.  
  26. eletadas(id)
  27. }
  28.  
  29. public eletadas(id)
  30. {
  31. if(!is_user_alive(id))
  32. return PLUGIN_HANDLED
  33.  
  34. new ammo = zp_get_user_ammo_packs(id)
  35.  
  36. if (ammo < 25)
  37. {
  38. client_print(id, print_chat, "[ZP] Ehez nincs eleg loszercsomagod!")
  39. }
  40. else
  41. {
  42. client_print(id, print_center, "Vasaroltal +10000 HP-t!")
  43. set_user_health(id, get_user_health(id)+10000)
  44. zp_set_user_ammo_packs(id, ammo-25)
  45. }
  46.  
  47. return PLUGIN_CONTINUE
  48. }



Remélem valakinek hasznára válik, én nem hiszem hogy fogom használni, de azért örülök, hogy bemutathattam.

Köszönöm a figyelmet!

_________________
[mozgo][kozep]
Ha szeretnél tutorialt (bemutatót) kérni, írj, szívesen megcsinálom!
[/kozep][/mozgo]


A hozzászólást 1 alkalommal szerkesztették, utoljára Chaos Killer 2012.12.21. 19:08-kor.

Hozzászólás jelentése
Vissza a tetejére
   
HozzászólásElküldve: 2012.12.21. 19:02 
Offline
Őstag

Csatlakozott: 2011.06.12. 20:51
Hozzászólások: 1089
Megköszönt másnak: 3 alkalommal
Megköszönték neki: 44 alkalommal
csak én nem látom h h használod a cstrike-t? szerintem még mindig meglehet írni jegyzettömbbe egy plugint ahogy az előző tutorialodba más mondta.
egyébként szép lett

_________________
[img]semmi[/img]


Hozzászólás jelentése
Vissza a tetejére
   
HozzászólásElküldve: 2012.12.21. 19:08 
Offline
Fanatikus

Csatlakozott: 2012.12.04. 19:05
Hozzászólások: 158
Megköszönt másnak: 3 alkalommal
Megköszönték neki: 10 alkalommal
fuck604, nem tudom, de valahogy alapból beleteszi nekem a cstrike modult, pedig ebben a pluginban még használva sincs :D
Köszi hogy szóltál, leírás javítva!

És köszönöm a dicséretedet is, jól esik látni, hogy más vett fáradságot, és elolvasta :)

_________________
[mozgo][kozep]
Ha szeretnél tutorialt (bemutatót) kérni, írj, szívesen megcsinálom!
[/kozep][/mozgo]


Hozzászólás jelentése
Vissza a tetejére
   
HozzászólásElküldve: 2012.12.22. 13:53 
Offline
Veterán

Csatlakozott: 2012.11.01. 20:49
Hozzászólások: 1837
Megköszönt másnak: 25 alkalommal
Megköszönték neki: 78 alkalommal
Szép kis tutorialokat irsz :)
Gratulálok :)
Szép leírás, csak így tovább.


Hozzászólás jelentése
Vissza a tetejére
   
HozzászólásElküldve: 2012.12.22. 14:30 
Offline
Fanatikus

Csatlakozott: 2012.12.04. 19:05
Hozzászólások: 158
Megköszönt másnak: 3 alkalommal
Megköszönték neki: 10 alkalommal
m0csy652 írta:
Szép kis tutorialokat irsz :)
Gratulálok :)
Szép leírás, csak így tovább.

Köszönöm, m0csy652!
Valaki kér tutorialt?

_________________
[mozgo][kozep]
Ha szeretnél tutorialt (bemutatót) kérni, írj, szívesen megcsinálom!
[/kozep][/mozgo]


Hozzászólás jelentése
Vissza a tetejére
   
HozzászólásElküldve: 2012.12.22. 17:02 
Offline
Tiszteletbeli
Avatar

Csatlakozott: 2011.09.18. 13:01
Hozzászólások: 4270
Megköszönt másnak: 55 alkalommal
Megköszönték neki: 513 alkalommal
Foleg hogy bennevan a zombieplague-script mappajaba:)Nem ugyan ez de azis pelda.

_________________
Idk. Csak ugy funbooo.
Kép


Hozzászólás jelentése
Vissza a tetejére
   
HozzászólásElküldve: 2012.12.22. 17:33 
Offline
Fanatikus

Csatlakozott: 2012.12.04. 19:05
Hozzászólások: 158
Megköszönt másnak: 3 alkalommal
Megköszönték neki: 10 alkalommal
DeteCTOR, én nem láttam hogy ott is le van írva, én csak megcsináltam. Remélem ez itt maradhat, ha már annyit dolgoztam vele :roll:

_________________
[mozgo][kozep]
Ha szeretnél tutorialt (bemutatót) kérni, írj, szívesen megcsinálom!
[/kozep][/mozgo]


Hozzászólás jelentése
Vissza a tetejére
   
HozzászólásElküldve: 2013.01.04. 11:49 
Offline
Imperátor
Avatar

Csatlakozott: 2009.04.21. 09:33
Hozzászólások: 3991
Megköszönt másnak: 5 alkalommal
Megköszönték neki: 135 alkalommal
Kicsit javítaná Bence:

"4. Plugint init A változónkba elmentjük a zp_register_extra_item függvényt, paraméterekkel együtt (később azt is leírom, miért van erre szükség!)"
Függvényt nem mentünk, csak a visszatérési értékét tárolhatjuk el. (Nem funkcionális prognyelv ez)

_________________
Kód:
I'm back

Kép


Hozzászólás jelentése
Vissza a tetejére
   
Hozzászólások megjelenítése:  Rendezés  
Új téma nyitása  Hozzászólás a témához  [ 8 hozzászólás ] 


Ki van itt

Jelenlévő fórumozók: nincs regisztrált felhasználó valamint 4 vendég


Nyithatsz új témákat ebben a fórumban.
Válaszolhatsz egy témára ebben a fórumban.
Nem szerkesztheted a hozzászólásaidat ebben a fórumban.
Nem törölheted a hozzászólásaidat ebben a fórumban.
Nem küldhetsz csatolmányokat ebben a fórumban.

Keresés:
Ugrás:  
Powered by phpBB® Forum Software © phpBB Limited
Magyar fordítás © Magyar phpBB Közösség
Portal: Kiss Portal Extension © Michael O'Toole