Sziasztok, ebben a tutorialban megmutatom hogyan tudtok sprite ikonokat csinálni a hudra, persze konstans helyeken, amiket nem tudsz megváltoztatni!
Felhasznált függvénykönyvtárak:
#include <amxmodx>
#include <fakemeta>
Az első lépés a globális változók létrehozása!
Második lépés az init létrehozása!
public plugin_init()
{
register_plugin("Plugin neve", "1.0", "Keszito");
register_forward(FM_PlayerPreThink,"fw_prethink"); //PreThink forward regisztrálása, ebben fogjuk "mutatni" az ikont!
cvarom = register_cvar("ikon_helye", "1") //Értékek: 0 - sehol ; 1 - bal oldalt; 2 - alul a számláló mellett!
ellenorzes() // Az ellenőrzés függvény meghívása, itt ellenőrzi hova akarjuk tenni az adott ikont!
}
Harmadik lépés az ellenőrzés függvény:
public ellenorzes()
{
if(!get_pcvar_num(cvarom)) //Ha a cvarnak nincs értéke akkor visszalépés
return 1;
new ertek = get_pcvar_num(cvarom);
if (ertek == 0) //Ha a cvarom értéke 0 akkor nem fog látszódni sehol sem az ikon!
ikonom = 0;
if (ertek == 1)
ikonom = get_user_msgid("StatusIcon"); //Bal oldali
if (ertek == 2)
ikonom = get_user_msgid("Scenario"); //Alul
return PLUGIN_CONTINUE;
}
Negyedik lépésnek jöhet a prethink függvény, de előtte vegyük át a szükséges messaget
A message kezdése:
message_begin(MSG_ONE,ikonom,{0,0,0},id) //Gondolom ezt most nem kell részleteznem, ha érdekel nézd meg funkciók között!
Majd az első structure:
write_byte(1) // Az 1 érték helyére az alábbi konstans értékeket rakhatod:
0 = Eltüntetés
1 = Mutatás
2 = Villogása következő paraméter a sprite elérése! (Az elérhető spritekről lejjebb írok)
write_string("sprite neve") //Ide jön a sprite neve, amiket majd pár sorral lejjebb láthatsz!
Következő 3 paraméter a sprite színe:
write_byte(r)
write_byte(b)
write_byte(g)
ezeket most nem részletezem, ha ez nem világos kérdezz bátran!
majd a message lezárása:
és akkor a prethink:
public fw_prethink(id)
{
message_begin(MSG_ONE,ikonom,{0,0,0},id);
write_byte(1); // Effekt (0=eltüntetés, 1=mutatás, 2=villogás)
write_string("dmg_poison"); // Sprite neve
write_byte(0); // Piros
write_byte(255); // Zöld
write_byte(0); // Kék
message_end();
}
és így meg is vagyunk a pluginnal, akkor itt vannak az elérhető ikonok:
Kód:
selection
bucket1
bucket2
bucket3
bucket4
bucket5
bucket0
dmg_bio
dmg_poison
dmg_chem
dmg_cold
dmg_drown
dmg_heat
dmg_gas
dmg_rad
dmg_shock
number_0
number_1
number_2
number_3
number_4
number_5
number_6
number_7
number_8
number_9
divider
cross
dollar
minus
plus
c4
defuser
stopwatch
smallskull
smallc4
smallvip
buyzone
rescue
escape
vipsafety
suit_full
suit_empty
suithelmet_full
suithelmet_empty
flash_full
flash_empty
flash_beam
train_back
train_stop
train_forward1
train_forward2
train_forward3
autoaim_c
title_half
title_life
d_knife
d_ak47
d_awp
d_deagle
d_flashbang
d_fiveseven
d_g3sg1
d_glock18
d_grenade
d_m249
d_m3
d_m4a1
d_mp5navy
d_p228
d_p90
d_scout
d_sg550
d_sg552
d_ump45
d_usp
d_tmp
d_xm1014
d_skull
d_tracktrain
d_aug
d_mac10
d_elite
d_headshot
item_battery
item_healthkit
item_longjump
radar
Pár kép a bal oldali spritekről:
1; dmg_rad
2; dmg_heat
3; dmg_gas
4; dmg_drown
5; dmg_cold
6; dmg_bio
7; dmg_shock
8; item_longjump
9; item_battery