Nie zawsze każdemu zielony obraz pasuje.
1.Odtwórz plik .sma zm plague
2.Dodaj nową zmienną
g_nvg[33][3]
3.
W client_putinserver forward dodaj
g_nvg[id] = { COLOR_RED, COLOR_GREEN, COLOR_BLUE }
Na przykład
g_nvg[id] = { 0, 255, 0 }
4.W funkcji set_user_nivision()
Zamień to
// Get player origin and alive status
static Float:originF[3], alive
pev(ID_NVISION, pev_origin, originF)
alive = is_user_alive(ID_NVISION)
Na to
// Get player origin and alive status
static Float:originF[3]
pev(ID_NVISION, pev_origin, originF)
Następnie
if (g_nemesis[ID_NVISION] || (g_zombie[ID_NVISION] && g_nodamage[ID_NVISION]) || (!alive && g_nemround))
{
write_byte(get_pcvar_num(cvar_nemnvgcolor[0])) // r
write_byte(get_pcvar_num(cvar_nemnvgcolor[1])) // g
write_byte(get_pcvar_num(cvar_nemnvgcolor[2])) // b
}
// Human / Spectator in normal round
else if (!g_zombie[ID_NVISION] || !alive)
{
write_byte(get_pcvar_num(cvar_humnvgcolor[0])) // r
write_byte(get_pcvar_num(cvar_humnvgcolor[1])) // g
write_byte(get_pcvar_num(cvar_humnvgcolor[2])) // b
}
// Zombie
else
{
write_byte(get_pcvar_num(cvar_nvgcolor[0])) // r
write_byte(get_pcvar_num(cvar_nvgcolor[1])) // g
write_byte(get_pcvar_num(cvar_nvgcolor[2])) // b
}
Na
if (g_nemesis[ID_NVISION] || (g_zombie[ID_NVISION] && g_nodamage[ID_NVISION]))
{
write_byte(255) // r
write_byte(0) // g
write_byte(0) // b
}
else
{
write_byte(g_nvg[ID_NVISION][0]) // r
write_byte(g_nvg[ID_NVISION][1]) // g
write_byte(g_nvg[ID_NVISION][2]) // b
}
5. Teraz musimy stworzyć menu gdzie użytkownik będzie mógł wybrać kolor
Dodajemy na konieć pluginu oto kod
// Show Menu Nvg
public show_menu_nvg(id)
{
new menu = menu_create("\yChoose your favorite color NightVision", "menu_nvg")
menu_additem(menu, "White", "1", 0)
menu_additem(menu, "Red", "2", 0)
// Add more Options if you wish
menu_display(id, menu, 0)
}
// Menu Nvg
public menu_nvg(id, menu, item)
{
if(item == MENU_EXIT)
{
menu_destroy(menu)
return PLUGIN_HANDLED
}
new data[6], iName[64], access, callback
menu_item_getinfo(menu, item, access, data, 5, iName, 63, callback)
switch(str_to_num(data))
{
case 1: g_nvg[id] = { 255, 255, 255 }
case 2: g_nvg[id] = { 255, 0, 0 }
// Add more Options if you wish
}
Poradnik z http://forums.alliedmods.net/index.php