Данный скрипт позволит включать/выключать туман для одного/всех игроков в любое время моментально.
Т.е. если вы ставили на карте env_fog - забудьте этот страшный сон! А все на самом деле очень просто:
Code
message_begin(MSG_ALL, get_user_msgid("Fog"), {0,0,0}, id)
write_byte(Red) // R
write_byte(Green) // G
write_byte(Blue) // B
write_byte(0) // Ignoring? But it must be Start Distance
write_byte(0) // Ignoring? But it must be End Distance
write_byte(outamt) // ammount - 0..255 of 57, 58, 59 and 60 levels
write_byte(level) // level - 57,58,59,60
message_end()
Все значения я получил эксперементальным путём. Хочу заметить, что значения для Start Distance и End Distance не влияют на туман :(, но они должны быть. По поводу плотности: есть несколько уровней тумана по 256 значений. Я немного продвинут идею и создал специальную функцию:
Code
public MsgFogToggle(id, Red, Green, Blue, Ammount)
{
new outamt, level
if (Ammount > 0 && Ammount <= 255)
{
outamt = Ammount
level = 57
}
else if (Ammount >= 256 && Ammount <= 511)
{
outamt = Ammount - 256
level = 58
}
else if (Ammount >= 512 && Ammount <= 767)
{
outamt = Ammount - 512
level = 59
}
else if (Ammount >= 768 && Ammount <= 1023)
{
outamt = Ammount - 768
level = 60
}else if (Ammount <= 0 || Ammount > 1023)
{
outamt = 0
level = 0
}
message_begin(MSG_ALL, get_user_msgid("Fog"), {0,0,0}, id)
write_byte(Red) // R
write_byte(Green) // G
write_byte(Blue) // B
write_byte(0) // Ignoring? But it must be Start Distance
write_byte(0) // Ignoring? But it must be End Distance
write_byte(outamt) // ammount - 0..255 of 57, 58, 59 and 60 levels
write_byte(level) // level - 57,58,59,60
message_end()
}
MsgFogToggle(ИД ИГРОКА (если 0 - то для всех), Red, Green, Blue, Плотность тумана)
Плотность задается в интервале от 1 до 1023, любое другое значение выключит туман. Также для тех, кто хочет просматривать любый настройки тумана в игре - написан плагин. Пишем в консоле "g_fog RED GREEN BLUE AMMOUNT", где соответственно задаём свои значения. Жмём [Enter] и вуаля!
зы. неплохо было б, научить эту функцию понимать hex цвета
ззы. я в плагине "реализовал" "плавное" включение тумана. просто введите mist в консоли, закройте ее и смотрите