
 public Mist(id, skill, prop)
 {
	new level = PlayersLevel(id)
	new Float:mist_origin[3];
	pev(id, pev_origin, mist_origin)
	skillAoEdamage(id, mist_origin, level*10, clamp(-1*level/9,-100,-1), skill)

	FVecIVec( mist_origin, origin[id] );

	message_begin(MSG_BROADCAST, SVC_TEMPENTITY) //message begin
	write_byte(TE_SPRITE)
	write_coord(origin[id][0]) // start position
	write_coord(origin[id][1])
	write_coord(origin[id][2])
	write_short(SPRITE_INDEX[SPR_GAS]) // sprite index
	write_byte(10) // scale in 0.1's
	write_byte(100) // brightness
	message_end()

	poke_sound(id, CHAN_VOICE, SND_WADE)

	ResetStatus(id)

	end_rep_use(id, skill, 2.5)
	return PLUGIN_CONTINUE;
 }
 public Blizzard(id, skill, prop)
 {
	sound_cast(id)
	set_bind(id, WAIT_TIME)

	new parm[3];
	parm[0] = id;
	parm[1] = skill;
	parm[2] = floatround(BLIZZARD_TIME*2+PlayersLevel(id)/10);

	set_task(0.5, "Do_Blizzard", id+BLIZZARD_TASK, parm, 3)
	return PLUGIN_CONTINUE;
 }
 public Do_Blizzard(parm[])
 {
	new id = parm[0];
	if( !is_user_alive(id) )
		return

	parm[2]--;
	if( !parm[2] ){
		bind_used(parm[0], parm[1]);
		return;
	}

	new level = PlayersLevel(id)
	new players[MAX_PLAYERS], pnum, tid
	poke_get_players(players, pnum, "ag")

	for(new i=0; i<pnum; i++){
		tid = players[i]
		if( fm_entity_range(id,tid) > level*10 )
			continue

		make_snow(tid)
		if(Team(id)!=Team(tid)){
			ApplyStatus( id, tid, STATUS_FROZEN, 0.0 )
		}
	}
	set_task(0.5, "Do_Blizzard", id+BLIZZARD_TASK, parm, 3)
 }
 public Haze(id, skill, prop)
 {
	if( HasStatus(id) ){
		ResetStatus(id);
		poke_print(id, print_center, "Haze chroni przed zmiana stanu");
		return PLUGIN_HANDLED;
	}
	return PLUGIN_CONTINUE;
 }