Raised This Month: $ Target: $400
 0% 

Biohazard Smoker class


Post New Thread Reply   
 
Thread Tools Display Modes
Author Message
alexclaudiu2003
Senior Member
Join Date: Aug 2011
Location: Romania
Old 12-07-2014 , 05:16   Biohazard Smoker class
Reply With Quote #1

Hello,
i want to drag humans with USE BUTTON (E)

Code:
#include <amxmodx>
#include <biohazard>
#include <fakemeta>
#include <hamsandwich>
#include <engine>
#define PLUGIN  "Class: Smoker (trage oamenii)"
#define AUTHOR  "MaHu"
#define VERSION "0.1"
//Main Class, modelT & Sprite Beam
new g_Line
#define ICON_HIDE 0
#define ICON_SHOW 1
#define ICON_FLASH 2
new const generic_models[][] = { "models/alex/gonome/gonome.mdl" } 
//Sounds
new g_sndMiss[] = "left4dead/Smoker_TongueHit_miss.wav"
new g_sndDrag[] = "left4dead/Smoker_TongueHit_drag.wav"
//Some vars
new g_hooked[33], g_hooksLeft[33], g_unable2move[33], g_ovr_dmg[33]
new Float:g_lastHook[33]
new bool: g_bind_use[33] = false, bool: g_bind_or_not[33] = false, bool: g_drag_i[33] = false
//Cvars
new cvar_maxdrags, cvar_dragspeed, cvar_cooldown, cvar_dmg2stop, cvar_mates, cvar_unb2move
//Menu keys
new keys = MENU_KEY_1|MENU_KEY_2|MENU_KEY_3
new g_class
new gmsgIcon
public plugin_precache( )
{
 precache_sound(g_sndDrag)
 precache_sound(g_sndMiss)
 g_Line = precache_model("sprites/zbeam4.spr")
 
 for (new i = 0; i < sizeof generic_models; i++)
 precache_model(generic_models[i])
}
public plugin_init()
{
 gmsgIcon = get_user_msgid("StatusIcon")
 cvar_dragspeed = register_cvar("smoker_dragspeed", "220")
 cvar_maxdrags = register_cvar("smoker_maxdrags", "14")
 cvar_cooldown = register_cvar("smoker_cooldown", "1")
 cvar_dmg2stop = register_cvar("smoker_dmg2stop", "100")
 cvar_mates = register_cvar("smoker_mates", "0")
 cvar_unb2move = register_cvar("smoker_unable_move", "1")
 register_event("ResetHUD", "newSpawn", "b")
 register_event("DeathMsg", "smoker_death", "a")
 register_forward(FM_PlayerPreThink, "fw_PlayerPreThink")
 RegisterHam(Ham_TakeDamage, "player", "fw_TakeDamage")
 register_clcmd("+drag","drag_start", ADMIN_USER, "bind ^"key^" ^"+drag^"")
 register_clcmd("-drag","drag_end")
 register_menucmd(register_menuid("bind q +drag?"), keys, "bind_q_key")
        register_plugin(PLUGIN, VERSION, AUTHOR)
        
        g_class = register_class("Smoker (trage oamenii)", "pe Q")
 if(g_class != -1)
 {
 set_class_data(g_class, DATA_HEALTH, 500.0)
 set_class_data(g_class, DATA_SPEED, 290.0)
 set_class_data(g_class, DATA_GRAVITY, 1.0)
 set_class_data(g_class, DATA_DEFENCE, 0.087)
 set_class_data(g_class, DATA_HITSPEED, 0.95)
 set_class_data(g_class, DATA_HITDELAY, 0.15)
 set_class_data(g_class, DATA_REGENDLY, 0.20)
 set_class_data(g_class, DATA_HITREGENDLY, 2.2)
 set_class_data(g_class, DATA_KNOCKBACK, 0)
 }
}
public event_infect(victim){
        if(get_user_class(victim) == g_class){
 g_hooksLeft[victim] = get_pcvar_num(cvar_maxdrags)
  
 if (!g_bind_or_not[victim])
 {
 message_begin( MSG_ONE, gmsgIcon, {0,0,0}, victim )
 write_byte( ICON_FLASH ) // status
 write_string( "Smoker (trage oamenii)" ) // sprite name
 write_byte( 255 ) // red
 write_byte( 0 ) // green
 write_byte( 0 ) // blue
 message_end()
 return PLUGIN_CONTINUE
 }
 }
 return PLUGIN_CONTINUE
}
public newSpawn(id)
{
 if (g_hooked[id])
  drag_end(id)
}
public drag_start(id) // starts drag, checks if player is Smoker, checks cvars
{  
 if (is_user_zombie(id) && (get_user_class(id) == g_class) && !g_drag_i[id]) {
  
  static Float:cdown
  cdown = get_pcvar_float(cvar_cooldown)
  if (!is_user_alive(id)) {
   client_print(id, print_chat, "Nu poti trage mort!")
   return PLUGIN_HANDLED
  }
  if (g_hooksLeft[id] <= 0) {
   client_print(id, print_chat, "Nu poti trage!")
   return PLUGIN_HANDLED
  }
  if (get_gametime() - g_lastHook[id] < cdown) {
   client_print(id, print_chat, "Asteapta %.f0 sec.!", get_pcvar_float(cvar_cooldown) - (get_gametime() - g_lastHook[id]))
   return PLUGIN_HANDLED
  }
  
  new hooktarget, body
  get_user_aiming(id, hooktarget, body)
  
  if (is_user_alive(hooktarget)) {
   if (!is_user_zombie(hooktarget))
    {
     
     g_hooked[id] = hooktarget
     emit_sound(hooktarget, CHAN_BODY, g_sndDrag, 1.0, ATTN_NORM, 0, PITCH_HIGH)
    }
   else
    {
     if (get_pcvar_num(cvar_mates) == 1)
     {
      g_hooked[id] = hooktarget
      emit_sound(hooktarget, CHAN_BODY, g_sndDrag, 1.0, ATTN_NORM, 0, PITCH_HIGH)
     }
     else
     {
      client_print(id, print_chat, "Este coechipier!")
      return PLUGIN_HANDLED
     }
    }
   if (get_pcvar_float(cvar_dragspeed) <= 0.0)
    cvar_dragspeed = 1
   
   new parm[2]
   parm[0] = id
   parm[1] = hooktarget
   
   set_task(0.1, "smoker_reelin", id, parm, 2, "b")
   harpoon_target(parm)
   
   g_hooksLeft[id]--
   client_print(id, print_chat, "Poti trage de %d time%s", g_hooksLeft[id], (g_hooksLeft[id] < 2) ? "" : "s")
   g_drag_i[id] = true
   
   if(get_pcvar_num(cvar_unb2move) == 1)
    g_unable2move[hooktarget] = true
    
   if(get_pcvar_num(cvar_unb2move) == 2)
    g_unable2move[id] = true
    
   if(get_pcvar_num(cvar_unb2move) == 3)
   {
    g_unable2move[hooktarget] = true
    g_unable2move[id] = true
   }
  } else {
   g_hooked[id] = 33
   noTarget(id)
   emit_sound(hooktarget, CHAN_BODY, g_sndMiss, 1.0, ATTN_NORM, 0, PITCH_HIGH)
   g_drag_i[id] = true
   g_hooksLeft[id]--
   client_print(id, print_chat, "Poti trage de %d time%s", g_hooksLeft[id], (g_hooksLeft[id] < 2) ? "" : "s")
  }
 }
 else
  return PLUGIN_HANDLED
 
 return PLUGIN_CONTINUE
}
public smoker_reelin(parm[]) // dragging player to smoker
{
 new id = parm[0]
 new victim = parm[1]
 if (!g_hooked[id] || !is_user_alive(victim))
 {
  drag_end(id)
  return
 }
 new Float:fl_Velocity[3]
 new idOrigin[3], vicOrigin[3]
 get_user_origin(victim, vicOrigin)
 get_user_origin(id, idOrigin)
 new distance = get_distance(idOrigin, vicOrigin)
 if (distance > 1) {
  new Float:fl_Time = distance / get_pcvar_float(cvar_dragspeed)
  fl_Velocity[0] = (idOrigin[0] - vicOrigin[0]) / fl_Time
  fl_Velocity[1] = (idOrigin[1] - vicOrigin[1]) / fl_Time
  fl_Velocity[2] = (idOrigin[2] - vicOrigin[2]) / fl_Time
 } else {
  fl_Velocity[0] = 0.0
  fl_Velocity[1] = 0.0
  fl_Velocity[2] = 0.0
 }
 entity_set_vector(victim, EV_VEC_velocity, fl_Velocity) //<- rewritten. now uses engine
}
public drag_end(id) // drags end function
{
 g_hooked[id] = 0
 beam_remove(id)
 remove_task(id)
 
 if (g_drag_i[id])
  g_lastHook[id] = get_gametime()
 
 g_drag_i[id] = false
 g_unable2move[id] = false
}
public smoker_death() // if smoker dies drag off
{
 new id = read_data(2)
 
 beam_remove(id)
 
 if (g_hooked[id])
  drag_end(id)
}
public fw_TakeDamage(victim, inflictor, attacker, Float:damage) // if take damage drag off
{
 if (is_user_alive(attacker) && (get_pcvar_num(cvar_dmg2stop) > 0))
 {
  g_ovr_dmg[victim] = g_ovr_dmg[victim] + floatround(damage)
  if (g_ovr_dmg[victim] >= get_pcvar_num(cvar_dmg2stop))
  {
   g_ovr_dmg[victim] = 0
   drag_end(victim)
   return HAM_IGNORED;
  }
 }
 return HAM_IGNORED;
}
public fw_PlayerPreThink(id)
{
 if (!is_user_alive(id))
  return FMRES_IGNORED
 
 new button = get_user_button(id)
 new oldbutton = get_user_oldbutton(id)
 
 if (g_bind_use[id] && is_user_zombie(id) && get_user_class(id) == g_class)
 {
  if (!(oldbutton & IN_USE) && (button & IN_USE))
   drag_start(id)
  
  if ((oldbutton & IN_USE) && !(button & IN_USE))
   drag_end(id)
 }
 
 if (!g_drag_i[id]) {
  g_unable2move[id] = false
 }
  
 if (g_unable2move[id] && get_pcvar_num(cvar_unb2move) > 0)
 {
  set_pev(id, pev_maxspeed, 1.0)
 }
 
 return PLUGIN_CONTINUE
}
public harpoon_target(parm[]) // set beam (ex. tongue:) if target is player
{
 new id = parm[0]
 new hooktarget = parm[1]
 message_begin(MSG_BROADCAST, SVC_TEMPENTITY)
 write_byte(8) // TE_BEAMENTS
 write_short(id)
 write_short(hooktarget)
 write_short(g_Line) // sprite index
 write_byte(0) // start frame
 write_byte(0) // framerate
 write_byte(200) // life
 write_byte(8) // width
 write_byte(1) // noise
 write_byte(155) // r, g, b
 write_byte(155) // r, g, b
 write_byte(55) // r, g, b
 write_byte(90) // brightness
 write_byte(10) // speed
 message_end()
}
public bind_q_key(id, keys)
{
 g_bind_or_not[id] = true
 switch(keys)
 {
  case 0:
   client_cmd(id, "bind q ^"+drag^"")
 
  case 1:
   client_print(id, print_chat, "Pentru a trage (bind ^'^'key^'^' ^'^'+drag^'^') hold binded key")
  default:
   g_bind_or_not[id] = false
 }
 
 return PLUGIN_HANDLED
}
public noTarget(id) // set beam if target isn't player
{
 new endorigin[3]
 get_user_origin(id, endorigin, 3)
 message_begin(MSG_BROADCAST, SVC_TEMPENTITY)
 write_byte( TE_BEAMENTPOINT ); // TE_BEAMENTPOINT
 write_short(id)
 write_coord(endorigin[0])
 write_coord(endorigin[1])
 write_coord(endorigin[2])
 write_short(g_Line) // sprite index
 write_byte(0) // start frame
 write_byte(0) // framerate
 write_byte(200) // life
 write_byte(8) // width
 write_byte(1) // noise
 write_byte(155) // r, g, b
 write_byte(155) // r, g, b
 write_byte(55) // r, g, b
 write_byte(75) // brightness
 write_byte(0) // speed
 message_end()
}
public beam_remove(id) // remove beam
{
 message_begin(MSG_BROADCAST, SVC_TEMPENTITY)
 write_byte(99) //TE_KILLBEAM
 write_short(id) //entity
 message_end()
}
alexclaudiu2003 is offline
zmd94
Veteran Member
Join Date: Nov 2013
Location: Malaysia (9w2zow).
Old 12-07-2014 , 05:44   Re: Biohazard Smoker class
Reply With Quote #2

That code already has the feature to use the ability with IN_USE button:
Code:
public fw_PlayerPreThink(id)
{
    if (!is_user_alive(id))
        return FMRES_IGNORED
    
    new button = get_user_button(id)
    new oldbutton = get_user_oldbutton(id)
    
    if (g_bind_use[id] && is_user_zombie(id) && get_user_class(id) == g_class)
    {
        if (!(oldbutton & IN_USE) && (button & IN_USE))
            drag_start(id)
        
        if ((oldbutton & IN_USE) && !(button & IN_USE))
            drag_end(id)
    }
    
    if (!g_drag_i[id]) {
        g_unable2move[id] = false
    }
    
    if (g_unable2move[id] && get_pcvar_num(cvar_unb2move) > 0)
    {
        set_pev(id, pev_maxspeed, 1.0)
    }
    
    return PLUGIN_CONTINUE
}
zmd94 is offline
alexclaudiu2003
Senior Member
Join Date: Aug 2011
Location: Romania
Old 12-07-2014 , 06:30   Re: Biohazard Smoker class
Reply With Quote #3

It has but don't work . Work only if manualy bind q +drag
alexclaudiu2003 is offline
zmd94
Veteran Member
Join Date: Nov 2013
Location: Malaysia (9w2zow).
Old 12-07-2014 , 06:41   Re: Biohazard Smoker class
Reply With Quote #4

So, do you want to completely remove the bind feature?
zmd94 is offline
alexclaudiu2003
Senior Member
Join Date: Aug 2011
Location: Romania
Old 12-07-2014 , 06:52   Re: Biohazard Smoker class
Reply With Quote #5

Yes, bind is not ok, use button it perfect
alexclaudiu2003 is offline
zmd94
Veteran Member
Join Date: Nov 2013
Location: Malaysia (9w2zow).
Old 12-07-2014 , 08:33   Re: Biohazard Smoker class
Reply With Quote #6

New update. ;)
PHP Code:
#include <amxmodx>
#include <biohazard>
#include <fakemeta>
#include <hamsandwich>
#include <engine>

#define PLUGIN  "Class: Smoker (trage oamenii)"
#define AUTHOR  "MaHu"
#define VERSION "0.1"

//Main Class, modelT & Sprite Beam
new g_Line

#define ICON_HIDE 0
#define ICON_SHOW 1
#define ICON_FLASH 2

new const generic_models[][] = { "models/alex/gonome/gonome.mdl" 

//Sounds
new g_sndMiss[] = "left4dead/Smoker_TongueHit_miss.wav"
new g_sndDrag[] = "left4dead/Smoker_TongueHit_drag.wav"

//Some vars
new g_hooked[33], g_hooksLeft[33], g_unable2move[33], g_ovr_dmg[33]
new 
Float:g_lastHook[33]
new 
boolg_drag_i[33] = false

//Cvars
new cvar_maxdragscvar_dragspeedcvar_cooldowncvar_dmg2stopcvar_matescvar_unb2move

new g_class

public plugin_precache( )
{
    
precache_sound(g_sndDrag)
    
precache_sound(g_sndMiss)
    
g_Line precache_model("sprites/zbeam4.spr")
    
    for (new 
0sizeof generic_modelsi++)
        
precache_model(generic_models[i])
}

public 
plugin_init()
{
    
register_plugin(PLUGINVERSIONAUTHOR)
    
    
cvar_dragspeed register_cvar("smoker_dragspeed""220")
    
cvar_maxdrags register_cvar("smoker_maxdrags""14")
    
cvar_cooldown register_cvar("smoker_cooldown""1")
    
cvar_dmg2stop register_cvar("smoker_dmg2stop""100")
    
cvar_mates register_cvar("smoker_mates""0")
    
cvar_unb2move register_cvar("smoker_unable_move""1")
    
    
register_event("ResetHUD""newSpawn""b")
    
register_event("DeathMsg""smoker_death""a")
    
    
register_forward(FM_CmdStart"FwdCmdStart");
    
    
RegisterHam(Ham_TakeDamage"player""fw_TakeDamage")
    
    
g_class register_class("Smoker (trage oamenii)""pe Q")
    if(
g_class != -1)
    {
        
set_class_data(g_classDATA_HEALTH500.0)
        
set_class_data(g_classDATA_SPEED290.0)
        
set_class_data(g_classDATA_GRAVITY1.0)
        
set_class_data(g_classDATA_DEFENCE0.087)
        
set_class_data(g_classDATA_HITSPEED0.95)
        
set_class_data(g_classDATA_HITDELAY0.15)
        
set_class_data(g_classDATA_REGENDLY0.20)
        
set_class_data(g_classDATA_HITREGENDLY2.2)
        
set_class_data(g_classDATA_KNOCKBACK0.0)
    }
}

public 
event_infect(victim)
{
    if(
get_user_class(victim) == g_class)
    {
        
g_hooksLeft[victim] = get_pcvar_num(cvar_maxdrags)
    }
}

public 
newSpawn(id)
{
    if (
g_hooked[id])
        
drag_end(id)
}

public 
drag_start(id// starts drag, checks if player is Smoker, checks cvars
{  
    if (
is_user_zombie(id) && (get_user_class(id) == g_class) && !g_drag_i[id]) {
        
        static 
Float:cdown
        cdown 
get_pcvar_float(cvar_cooldown)
        if (!
is_user_alive(id)) {
            
client_print(idprint_chat"Nu poti trage mort!")
            return 
PLUGIN_HANDLED
        
}
        if (
g_hooksLeft[id] <= 0) {
            
client_print(idprint_chat"Nu poti trage!")
            return 
PLUGIN_HANDLED
        
}
        if (
get_gametime() - g_lastHook[id] < cdown) {
            
client_print(idprint_chat"Asteapta %.f0 sec.!"get_pcvar_float(cvar_cooldown) - (get_gametime() - g_lastHook[id]))
            return 
PLUGIN_HANDLED
        
}
        
        new 
hooktargetbody
        get_user_aiming
(idhooktargetbody)
        
        if (
is_user_alive(hooktarget)) {
            if (!
is_user_zombie(hooktarget))
            {
                
                
g_hooked[id] = hooktarget
                emit_sound
(hooktargetCHAN_BODYg_sndDrag1.0ATTN_NORM0PITCH_HIGH)
            }
            else
            {
                if (
get_pcvar_num(cvar_mates) == 1)
                {
                    
g_hooked[id] = hooktarget
                    emit_sound
(hooktargetCHAN_BODYg_sndDrag1.0ATTN_NORM0PITCH_HIGH)
                }
                else
                {
                    
client_print(idprint_chat"Este coechipier!")
                    return 
PLUGIN_HANDLED
                
}
            }
            if (
get_pcvar_float(cvar_dragspeed) <= 0.0)
                
cvar_dragspeed 1
            
            
new parm[2]
            
parm[0] = id
            parm
[1] = hooktarget
            
            set_task
(0.1"smoker_reelin"idparm2"b")
            
harpoon_target(parm)
            
            
g_hooksLeft[id]--
            
client_print(idprint_chat"Poti trage de %d time%s"g_hooksLeft[id], (g_hooksLeft[id] < 2) ? "" "s")
            
g_drag_i[id] = true
            
            
if(get_pcvar_num(cvar_unb2move) == 1)
                
g_unable2move[hooktarget] = true
            
            
if(get_pcvar_num(cvar_unb2move) == 2)
                
g_unable2move[id] = true
            
            
if(get_pcvar_num(cvar_unb2move) == 3)
            {
                
g_unable2move[hooktarget] = true
                g_unable2move
[id] = true
            
}
            } else {
            
g_hooked[id] = 33
            noTarget
(id)
            
emit_sound(hooktargetCHAN_BODYg_sndMiss1.0ATTN_NORM0PITCH_HIGH)
            
g_drag_i[id] = true
            g_hooksLeft
[id]--
            
client_print(idprint_chat"Poti trage de %d time%s"g_hooksLeft[id], (g_hooksLeft[id] < 2) ? "" "s")
        }
    }
    else
        return 
PLUGIN_HANDLED
    
    
return PLUGIN_CONTINUE
}

public 
smoker_reelin(parm[]) // dragging player to smoker
{
    new 
id parm[0]
    new 
victim parm[1]
    if (!
g_hooked[id] || !is_user_alive(victim))
    {
        
drag_end(id)
        return
    }
    new 
Float:fl_Velocity[3]
    new 
idOrigin[3], vicOrigin[3]
    
get_user_origin(victimvicOrigin)
    
get_user_origin(ididOrigin)
    new 
distance get_distance(idOriginvicOrigin)
    if (
distance 1) {
        new 
Float:fl_Time distance get_pcvar_float(cvar_dragspeed)
        
fl_Velocity[0] = (idOrigin[0] - vicOrigin[0]) / fl_Time
        fl_Velocity
[1] = (idOrigin[1] - vicOrigin[1]) / fl_Time
        fl_Velocity
[2] = (idOrigin[2] - vicOrigin[2]) / fl_Time
        
} else {
        
fl_Velocity[0] = 0.0
        fl_Velocity
[1] = 0.0
        fl_Velocity
[2] = 0.0
    
}
    
entity_set_vector(victimEV_VEC_velocityfl_Velocity//<- rewritten. now uses engine
}

public 
drag_end(id// drags end function
{
    
g_hooked[id] = 0
    beam_remove
(id)
    
remove_task(id)
    
    if (
g_drag_i[id])
        
g_lastHook[id] = get_gametime()
    
    
g_drag_i[id] = false
    g_unable2move
[id] = false
}

public 
smoker_death() // if smoker dies drag off
{
    new 
id read_data(2)
    
    
beam_remove(id)
    
    if (
g_hooked[id])
        
drag_end(id)
}

public 
fw_TakeDamage(victiminflictorattackerFloat:damage// if take damage drag off
{
    if (
is_user_alive(attacker) && (get_pcvar_num(cvar_dmg2stop) > 0))
    {
        
g_ovr_dmg[victim] = g_ovr_dmg[victim] + floatround(damage)
        if (
g_ovr_dmg[victim] >= get_pcvar_num(cvar_dmg2stop))
        {
            
g_ovr_dmg[victim] = 0
            drag_end
(victim)
            return 
HAM_IGNORED;
        }
    }
    return 
HAM_IGNORED;
}

public 
FwdCmdStart(iduc_handle)
{
    if (!
is_user_alive(id) || !is_user_zombie(id))
        return
    
    static 
ButtonOldButtons;
    
Button get_uc(uc_handleUC_Buttons);
    
OldButtons pev(idpev_oldbuttons);
   
    if((
Button IN_USE) && (OldButtons IN_USE))
    {
        
drag_start(id)
    }
    
    if(!(
Button IN_USE) && (OldButtons IN_USE))
    {
        
drag_end(id)
    }
    
    if (!
g_drag_i[id]) 
    {
        
g_unable2move[id] = false
    
}
    
    if (
g_unable2move[id] && get_pcvar_num(cvar_unb2move) > 0)
    {
        
set_pev(idpev_maxspeed1.0)
    }
}

public 
harpoon_target(parm[]) // set beam (ex. tongue:) if target is player
{
    new 
id parm[0]
    new 
hooktarget parm[1]
    
message_begin(MSG_BROADCASTSVC_TEMPENTITY)
    
write_byte(8// TE_BEAMENTS
    
write_short(id)
    
write_short(hooktarget)
    
write_short(g_Line// sprite index
    
write_byte(0// start frame
    
write_byte(0// framerate
    
write_byte(200// life
    
write_byte(8// width
    
write_byte(1// noise
    
write_byte(155// r, g, b
    
write_byte(155// r, g, b
    
write_byte(55// r, g, b
    
write_byte(90// brightness
    
write_byte(10// speed
    
message_end()
}

public 
noTarget(id// set beam if target isn't player
{
    new 
endorigin[3]
    
get_user_origin(idendorigin3)
    
message_begin(MSG_BROADCASTSVC_TEMPENTITY)
    
write_byteTE_BEAMENTPOINT ); // TE_BEAMENTPOINT
    
write_short(id)
    
write_coord(endorigin[0])
    
write_coord(endorigin[1])
    
write_coord(endorigin[2])
    
write_short(g_Line// sprite index
    
write_byte(0// start frame
    
write_byte(0// framerate
    
write_byte(200// life
    
write_byte(8// width
    
write_byte(1// noise
    
write_byte(155// r, g, b
    
write_byte(155// r, g, b
    
write_byte(55// r, g, b
    
write_byte(75// brightness
    
write_byte(0// speed
    
message_end()
}

public 
beam_remove(id// remove beam
{
    
message_begin(MSG_BROADCASTSVC_TEMPENTITY)
    
write_byte(99//TE_KILLBEAM
    
write_short(id//entity
    
message_end()


Last edited by zmd94; 12-07-2014 at 10:38.
zmd94 is offline
alexclaudiu2003
Senior Member
Join Date: Aug 2011
Location: Romania
Old 12-07-2014 , 09:12   Re: Biohazard Smoker class
Reply With Quote #7

Can't compile

Last edited by alexclaudiu2003; 12-07-2014 at 09:13.
alexclaudiu2003 is offline
zmd94
Veteran Member
Join Date: Nov 2013
Location: Malaysia (9w2zow).
Old 12-07-2014 , 10:00   Re: Biohazard Smoker class
Reply With Quote #8

I have updated the code. ;)
zmd94 is offline
alexclaudiu2003
Senior Member
Join Date: Aug 2011
Location: Romania
Old 12-07-2014 , 10:17   Re: Biohazard Smoker class
Reply With Quote #9

Almost done, only 2 errors, fail to compile.


Last edited by alexclaudiu2003; 12-07-2014 at 10:17.
alexclaudiu2003 is offline
zmd94
Veteran Member
Join Date: Nov 2013
Location: Malaysia (9w2zow).
Old 12-07-2014 , 10:38   Re: Biohazard Smoker class
Reply With Quote #10

Alright. I have updated again the code. ;)
zmd94 is offline
Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -4. The time now is 02:16.


Powered by vBulletin®
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
Theme made by Freecode