hlmod.hu
https://hlmod.hu/

Fegyver sprite API
https://hlmod.hu/viewtopic.php?f=101&t=30456
Oldal: 1 / 1

Szerző:  Vieni [ 2020.06.05. 16:57 ]
Hozzászólás témája:  Fegyver sprite API

Plugin Neve:
Fegyver sprite API
Plugint készitette:
Vieni
Játék:
Mind
Kategória:
Technikai/Fejlesztő
Eredeti link:
Nincs megadva
Jóváhagyó:


Sziasztok!
Az elmúlt napokban szükségem volt rá, így írtam egy fegyver sprite API plugint és gondoltam közzé teszem, viszonylag egyszerű kis plugin.
Azoknak ajánlom a használatát, akik egyedi fegyverekkel dolgoznak és nem szeretnék fegyverenként megírni a kliens felé az üzenet küldést, szimplán elég egy paranccsal helyettesíteni azt.

Két paranccsal rendelkezik az API:
Kód:
msg_set_player_weapon_sprite(id, weaponId, const newWeaponName[], flags = -1)
id - A játékos játék id-je
weaponId - A fegyver cstrike_constban található id-je (CSW_*)
newWeaponName - A fegyver és egyben txt fájljának új neve
flags - Bit flagek, a constban találhatóak

Ha a flags-hez semmi nem kerül, az alapjáraton fegyvernek szánt flagek lesznek használva.


msg_reset_player_weapon_sprite(id, weaponId, flags = -1)
id - A játékos játék id-je
weaponId - A fegyver cstrike_constban található id-je (CSW_*)
flags - Bit flagek, a constban találhatóak

Szimplán visszaállítja az alapra a játékosnak a fegyver sprite-ját ezen a típuson.
Flags azért került ide is, hogy ha esetleg a fegyver sprite-okat elvennénk, de az általunk adott tulajdonságait megtartanánk, ezzel lehetséges legyen. Fontos, ha ide semmit nem írunk, akkor az ALAP FEGYVER flag-jei kerülnek be!


Valamint pár kifejezést találhatunk az msg_weap_sprite_api_const.inc fájlban:
Kód:
WEAP_FL_SELECTONEMPTY      (1<<0)
WEAP_FL_NOAUTORELOAD       (1<<1)
WEAP_FL_NOAUTOSWITCHEMPTY   (1<<2)
WEAP_FL_LIMITINWORLD      (1<<3)
WEAP_FL_EXHAUSTIBLE      (1<<4)

WEAP_FL_SELECTONEMPTY - Ha jól tippelem, ez azt takarja, hogy egy másik fegyver kifogyása esetén erre vált. Szerintem ez nem íródik felül, ha más fegyverhez is regisztráljuk ezt a tulajdonságot, szimplán csak felállít automata egy sorrendet(valszeg id szerint növekvő/csökkenő sorrendben)
WEAP_FL_NOAUTORELOAD - Kifogyáskor nincs automata újratöltés
WEAP_FL_NOAUTOSWITCHEMPTY - Ez valószínüleg a legelső bit-ünket írja felül az ezzel regisztrált fegyvereknék
WEAP_FL_LIMITINWORLD - Ezt nem tudom, hogy pontosan mit takarhat, de az alap tulajdonságok alapján arra gondolok, hogy megvan adva egy egzakt maximum töltény szám a fegyvernek és azt nem lépheti tovább(?)
WEAP_FL_EXHAUSTIBLE - Ha kifogy, elveszik a fegyver


Példa:
msg_set_player_weapon_sprite(id, CSW_AK47, "weapon_tesztak", (WEAP_FL_EXHAUSTIBLE|WEAP_FL_NOAUTORELOAD))

Ezzel pluginunk a (ak47 alapú)fegyverhez tartozó képeket a "sprites/weapon_tesztak.txt"-ből fogja beolvasni.
- Töltény kép jobb alul
- Fegyverváltási kép, mikor görgővel váltjuk a fegyvert
- Fegyver szerzési kép(jobb oldalt, mikor felveszel vagy megszerzel egy fegyvert)
- Célkereszt (Az alap half-life-os állítható[A 4pont spectatorban célkereszt helyén] és csak akkor látható, ha egy nem használt zoom mennyiséget használunk[használt zoom mérték pl. az awp nagyítása vagy az alap nagyítás(90(?))])

Valamint ha teljesen kifogy elveszti a tulajdonosa a fegyvert és automata újratöltés sincs rajta.


msg_reset_player_weapon_sprite(id, CSW_AK47)

Szimplán visszarakja a játékosnak az AK-ra az alap sprite-ot és alap tulajdonságokat.

A msg_reset_player_weapon_sprite parancsot akkor kell használni, mikor fegyverünk elveszik, így a sprite is visszaáll a régire.(Ha használunk cs_weap_models_api-t, akkor mehet a cs_reset_player_(view/weap)_model parancsok mellé)

Fegyverváltást is kezeli!



SMA
AMXX
Tömörített fájl
*A fordítás a aghl.ru oldalon történik.

    Szerző:  DexoN [ 2020.06.06. 19:18 ]
    Hozzászólás témája:  Re: Fegyver sprite API

    Nagyon hasznosnak tűnik, gratulálok. :)
    Csak sajnos egyhamar nem fogják elfogadni.

    Oldal: 1 / 1 Minden időpont UTC+01:00 időzóna szerinti
    Powered by phpBB® Forum Software © phpBB Limited
    https://www.phpbb.com/