if(g_FireFlamethrower[id]) { if(g_FuelTank[id] > 0) { if((g_Delay[id] + 0.2) < get_gametime()) { g_FuelTank[id] -= 1 g_Delay[id] = get_gametime() } new Float:fOrigin[3], Float:fVelocity[3] entity_get_vector(id,EV_VEC_origin, fOrigin) VelocityByAim(id, 35, fVelocity) new Float:fTemp[3], iFireOrigin[3] xs_vec_add(fOrigin, fVelocity, fTemp) FVecIVec(fTemp, iFireOrigin) new Float:fFireVelocity[3], iFireVelocity[3] VelocityByAim(id, get_pcvar_num(cvar_damage_dis), fFireVelocity) FVecIVec(fFireVelocity, iFireVelocity) create_flames_n_sounds(id, iFireOrigin, iFireVelocity) new doDamage switch(get_cvar_num("mp_friendlyfire")) { case 0: doDamage = 0 case 1: doDamage = 1 } show_fuel_percentage(id) direct_damage(id, doDamage) indirect_damage(id, doDamage) custom_weapon_shot(wpn_ft, id) } else client_print(id, print_center, "Out of Fuel") } return FMRES_IGNORED } public think_Flamethrower(ent) { if(is_valid_ent(ent) && entity_get_float(ent, EV_FL_health) < 950.0) { new Float:fOrigin[3], iOrigin[3] entity_get_vector(ent, EV_VEC_origin, fOrigin) FVecIVec(fOrigin, iOrigin) message_begin(MSG_BROADCAST, SVC_TEMPENTITY) write_byte(99) write_short(ent) message_end() message_begin(MSG_BROADCAST, SVC_TEMPENTITY) write_byte(3) write_coord(iOrigin[0]) write_coord(iOrigin[1]) write_coord(iOrigin[2]) write_short(sprite_xplo) write_byte(50) write_byte(15) write_byte(0) message_end() RadiusDamage(fOrigin, get_pcvar_num(cvar_xplode_dmg), entity_get_int(ent, EV_INT_iuser4)) remove_entity(ent) } if(is_valid_ent(ent)) entity_set_float(ent, EV_FL_nextthink, halflife_time() + 0.01) }