Welcome Soldier.



[Zombie Escape] agregar arma segundaria al rr1

GabsHp Sin conexión
Lord Gabs
#12
(04-06-2019, 05:35 AM)GOKU2019 escribió:
(04-06-2019, 04:09 AM)GabsHp escribió: Todos puñetas. Eso sólo es una skin, no tiene función alguna.
Para que funcione como arma necesitan el código script de un plugin que le de función a esa arma. Ahí solo aportan la apariencia, más no funcionará como ustedes dicen.

Pues ha eso me estoy llendo se puede crear el script y el plugins fácil Wink

Solo dedicamos que no está mal la arma nada más!

Quien te dijo que crear un plugin era fácil? Jajaja, y menos si se trata de un arma.

Aquí te dejo el ejemplo del plugin de la Thanatos, hazte una idea para ver si puedes crear el plugin tú:

[spoiler="Ejemplo de plugin de Thanatos"]


Código PHP:
#include <amxmodx> 
#include <engine> 
#include <fakemeta> 
#include <fakemeta_util> 
#include <fun> 
#include <hamsandwich> 
#include <xs> 
#include <cstrike> 
#include <zombieplague> 

#define PLUGIN "[CSO] Pri: Thanatos-7" 
#define VERSION "1.0" 
#define VERSION "1.0" 
#define AUTHOR "Dev!l" 

#define ENG_NULLENT        -1 
#define EV_INT_WEAPONKEY    EV_INT_impulse 

#define WEAPONKEY 754247 

const USE_STOPPED 
const PDATA_SAFE 
const OFFSET_LINUX_WEAPONS 
const OFFSET_WEAPONOWNER 41 
const m_flNextAttack 83 
const m_szAnimExtention 492 

#define WEAP_LINUX_XTRA_OFF        4 
#define m_flTimeWeaponIdle            48 
#define m_iClip                    51 
#define m_fInReload                54 
#define PLAYER_LINUX_XTRA_OFF    5 

#define RELOAD_TIME        4.5 

new const v_model[] = "models/cso/v_thanatos7.mdl" 
new const p_model[] = "models/cso/p_thanatos7.mdl" 
new const w_model[] = "models/cso/w_thanatos7.mdl" 
new const SCYTHE_MODEL[] = "models/cso/thanatos7_scythe.mdl" 

new const sound[10][] =  

 
  "weapons/thanatos7-1.wav"
 
  "weapons/thanatos7_bdraw.wav"
 
  "weapons/thanatos7_bidle2.wav"
 
  "weapons/thanatos7_clipin1.wav"
 
  "weapons/thanatos7_clipin2.wav"
 
  "weapons/thanatos7_clipout1.wav"
 
  "weapons/thanatos7_clipout2.wav"
 
  "weapons/thanatos7_draw.wav"
 
  "weapons/thanatos7_scythereload.wav"
 
  "weapons/thanatos7_scytheshoot.wav" 


new const 
sprite[4][] =  

 
  "sprites/weapon_thanatos7.txt"
 
  "sprites/cso/640hud7.spr"
 
  "sprites/cso/640hud13.spr"
 
  "sprites/cso/640hud117.spr" 


enum 

 
  IDLE 0
 
  BIDLE
 
  BIDLE2
 
  SHOOT1
 
  BSHOOT1
 
  SHOOT2
 
  BSHOOT2
 
  RELOAD
 
  BRELOAD
 
  SCYTHESHOOT
 
  SCYTHERELOAD
 
  DRAW
 
  BDRAW 


#define write_coord_f(%1)    engfunc(EngFunc_WriteCoord,%1) 

new const GUNSHOT_DECALS[] = { 4142434445 

new 
g_had_thanatos7[33], g_thanatos7_ammo[33], g_mode[33], g_reload[33], g_thanatos7 
new Float:cl_pushangle[33][3], g_clip_ammo[33], g_old_weapon[33
new 
g_IsInPrimaryAttackg_orig_event_thanatos7g_thanatos7_TmpClip[33], EntgmsgWeaponListg_MaxPlayers ,g_Msg_StatusIcon 
new cvar_dmg_scythecvar_clip_thanatos7cvar_thanatos7_ammocvar_recoil_thanatos7cvar_dmg_thanatos7 
new const WEAPONENTNAMES[][] = { """weapon_p228""""weapon_scout""weapon_hegrenade""weapon_xm1014""weapon_c4""weapon_mac10"
 
          "weapon_aug""weapon_smokegrenade""weapon_elite""weapon_fiveseven""weapon_ump45""weapon_sg550"
 
          "weapon_mp5navy""weapon_famas""weapon_usp""weapon_glock18""weapon_awp""weapon_mp5navy""weapon_m249"
 
          "weapon_m3""weapon_m4a1""weapon_tmp""weapon_g3sg1""weapon_flashbang""weapon_deagle""weapon_sg552"
 
          "weapon_ak47""weapon_knife""weapon_p90" 
 
           
enum 

 
  MODE_NOLMAL 1
 
  MODE_CHANGING_1
 
  MODE_CHANGING_2
 
  MODE_BOLT 


public 
plugin_init() 

 
  register_plugin(PLUGINVERSIONAUTHOR
 
  register_forward(FM_PlaybackEvent"fwPlaybackEvent"
 
  register_forward(FM_CmdStart"fw_CmdStart"
 
  register_forward(FM_SetModel"fw_SetModel"
 
  register_touch("scythe""*""fw_Touch"
 
  register_forward(FM_UpdateClientData"fw_UpdateClientData_Post"1
 
  register_event("CurWeapon""Event_CurWeapon""be""1=1"
 
   
   RegisterHam
(Ham_Use"func_tank""fw_UseStationary_Post"1
 
  RegisterHam(Ham_Use"func_tankmortar""fw_UseStationary_Post"1
 
  RegisterHam(Ham_Use"func_tankrocket""fw_UseStationary_Post"1
 
  RegisterHam(Ham_Use"func_tanklaser""fw_UseStationary_Post"1
 
   
   RegisterHam
(Ham_TraceAttack"player""fw_TraceAttack"
 
  RegisterHam(Ham_TraceAttack"worldspawn""fw_TraceAttack"
 
  RegisterHam(Ham_TraceAttack"func_breakable""fw_TraceAttack"1
 
  RegisterHam(Ham_TraceAttack"func_wall""fw_TraceAttack"1
 
  RegisterHam(Ham_TraceAttack"func_door""fw_TraceAttack"1
 
  RegisterHam(Ham_TraceAttack"func_door_rotating""fw_TraceAttack"1
 
  RegisterHam(Ham_TraceAttack"func_plat""fw_TraceAttack"1
 
  RegisterHam(Ham_TraceAttack"func_rotating""fw_TraceAttack"1
 
   
   
for (new 1sizeof WEAPONENTNAMESi++) 
 
      if (WEAPONENTNAMES[i][0]) RegisterHam(Ham_Item_DeployWEAPONENTNAMES[i], "fw_Item_Deploy_Post"1
 
   
   RegisterHam
(Ham_Item_AddToPlayer"weapon_m249""fw_AddToPlayer_Post"1
 
  RegisterHam(Ham_Weapon_PrimaryAttack"weapon_m249""fw_PrimaryAttack"
 
  RegisterHam(Ham_Weapon_PrimaryAttack"weapon_m249""fw_PrimaryAttack_Post"1
 
  RegisterHam(Ham_Item_PostFrame"weapon_m249""fw_ItemPostFrame"
 
  RegisterHam(Ham_Weapon_Reload"weapon_m249""fw_Reload"
 
  RegisterHam(Ham_Weapon_Reload"weapon_m249""fw_Reload_Post"1
 
  RegisterHam(Ham_Weapon_WeaponIdle"weapon_m249""fw_Idleanim"1
 
  RegisterHam(Ham_Killed"player""fw_PlayerKilled"
 
   
   cvar_recoil_thanatos7 
register_cvar("cso_thanatos7_recoil""0.45"
 
  cvar_dmg_thanatos7 register_cvar("cso_dmg_thanatos7""60.0"
 
  cvar_dmg_scythe register_cvar("cso_dmg_scythe""100.0"
 
  cvar_clip_thanatos7 register_cvar("cso_thanatos7_clip""120"
 
  cvar_thanatos7_ammo register_cvar("cso_thanatos7_ammo""240"
 
   
   g_thanatos7 
zp_register_extra_item("Thanatos-7"50ZP_TEAM_HUMAN
 
   
   gmsgWeaponList 
get_user_msgid("WeaponList"
 
  g_Msg_StatusIcon get_user_msgid("StatusIcon"
 
  g_MaxPlayers get_maxplayers() 
 
   
   register_clcmd
("weapon_thanatos7""hook_weapon"


public 
plugin_precache() 

 
  precache_model(v_model
 
  precache_model(p_model
 
  precache_model(w_model
 
  precache_model(SCYTHE_MODEL
 
   
   
for(new 0sizeof(sound); i++)  
       precache_sound
(sound[i]) 
 
       
   
for(new 1sizeof(sprite); i++) 
 
      precache_model(sprite[i]) 
 
       
   register_forward
(FM_PrecacheEvent"fw_PrecacheEvent_Post"1


public 
zp_user_infected_post(id

 
  remove_thanatos7(id


public 
fw_PlayerKilled(id

 
  remove_thanatos7(id



public 
hook_weapon(id

 
  engclient_cmd(id"weapon_m249"
 
  return 


public 
fw_PrecacheEvent_Post(type, const name[]) 

 
  if(equal("events/m249.sc"name)) 
 
      g_orig_event_thanatos7 get_orig_retval() 


public 
zp_extra_item_selected(iditemid

 
  if(itemid == g_thanatos7get_thanatos(id


public 
get_thanatos(id

 
  if(!is_user_alive(id)) 
 
      return 
 
       
   
new iWep2 give_item(id,"weapon_m249"
 
  if( iWep2 
 
  
 
      cs_set_weapon_ammo(iWep2get_pcvar_num(cvar_clip_thanatos7)) 
 
      cs_set_user_bpammo (idCSW_M249get_pcvar_num(cvar_thanatos7_ammo)) 
 
      set_weapons_timeidle(idCSW_M2492.0
 
      set_player_nextattackx(id2.0
 
      set_weapon_anim(idDRAW
 
  
 
  g_had_thanatos7[id] = 
   g_mode
[id] = MODE_NOLMAL 
   g_thanatos7_ammo
[id] = 
   g_reload
[id] = 
   update_specialammo
(idg_thanatos7_ammo[id], g_thanatos7_ammo[id] > 0
 
   
   message_begin
(MSG_ONEgmsgWeaponList, {0,0,0}, id
 
  write_string("weapon_thanatos7"
 
  write_byte(3
 
  write_byte(200
 
  write_byte(-1
 
  write_byte(-1
 
  write_byte(0
 
  write_byte(4
 
  write_byte(CSW_M249
 
  write_byte(0
 
  message_end() 


public 
remove_thanatos7(id

 
  update_specialammo(idg_thanatos7_ammo[id], 0
 
       
   g_had_thanatos7
[id] = 
   g_thanatos7_ammo
[id] = 
   g_reload
[id] = 


public 
fw_TraceAttack(iEntiAttackerFloat:flDamageFloat:fDir[3], ptriDamageType

 
  if(!is_user_alive(iAttacker)) 
 
      return 

 
  new g_currentweapon get_user_weapon(iAttacker

 
  if(g_currentweapon != CSW_M249 || !g_had_thanatos7[iAttacker]) 
 
      return 
 
       
   SetHamParamFloat
(3get_pcvar_float(cvar_dmg_thanatos7)) 
 
   
   
static Float:flEnd[3], Float:myOrigin[3
 
   
   pev
(iAttackerpev_originmyOrigin
 
  get_tr2(ptrTR_vecEndPosflEnd
 
       
   
if(!is_user_alive(iEnt)) 
 
  
 
      message_begin(MSG_BROADCASTSVC_TEMPENTITY
 
      write_byte(TE_DECAL
 
      write_coord_f(flEnd[0]) 
 
      write_coord_f(flEnd[1]) 
 
      write_coord_f(flEnd[2]) 
 
      write_byte(GUNSHOT_DECALS[random_num (0sizeof GUNSHOT_DECALS -1)]) 
 
      write_short(iEnt
 
      message_end() 

 
      message_begin(MSG_BROADCASTSVC_TEMPENTITY
 
      write_byte(TE_WORLDDECAL
 
      write_coord_f(flEnd[0]) 
 
      write_coord_f(flEnd[1]) 
 
      write_coord_f(flEnd[2]) 
 
      write_byte(GUNSHOT_DECALS[random_num (0sizeof GUNSHOT_DECALS -1)]) 
 
      message_end() 
 
       
       message_begin
(MSG_BROADCASTSVC_TEMPENTITY
 
      write_byte(TE_GUNSHOTDECAL
 
      write_coord_f(flEnd[0]) 
 
      write_coord_f(flEnd[1]) 
 
      write_coord_f(flEnd[2]) 
 
      write_short(iAttacker
 
      write_byte(GUNSHOT_DECALS[random_num (0sizeof GUNSHOT_DECALS -1)]) 
 
      message_end() 
 
  


public 
fw_UpdateClientData_Post(idsendweaponsCD_Handle

 
  if(!is_user_alive(id) || (get_user_weapon(id) != CSW_M249 || !g_had_thanatos7[id])) 
 
      return FMRES_IGNORED 
    
   set_cd
(CD_HandleCD_flNextAttackhalflife_time () + 0.001
 
   
   
return FMRES_HANDLED 


public 
fw_SetModel(entitymodel[]) 

 
  if(!is_valid_ent(entity)) 
 
      return FMRES_IGNORED 
    
   
static szClassName[33
 
  entity_get_string(entityEV_SZ_classnameszClassNamecharsmax(szClassName)) 
 
       
   
if(!equal(szClassName"weaponbox")) 
 
      return FMRES_IGNORED 
    
   
static iOwner 
    
   iOwner 
entity_get_edict(entityEV_ENT_owner
 
   
   
if(equal(model"models/w_m249.mdl")) 
 
  
 
      static iStoredAugID 
    
       iStoredAugID 
find_ent_by_owner(ENG_NULLENT"weapon_m249"entity

 
      if(!is_valid_ent(iStoredAugID)) 
 
          return FMRES_IGNORED 
    
       
if(g_had_thanatos7[iOwner]) 
 
      
 
          g_had_thanatos7[iOwner] = 
            
           entity_set_int
(iStoredAugIDEV_INT_WEAPONKEYWEAPONKEY
 
          set_pev(iStoredAugIDpev_iuser4g_thanatos7_ammo[iOwner]) 
 
          entity_set_model(entityw_model
 
           
           
return FMRES_SUPERCEDE 
       

 
  
 
  return FMRES_IGNORED 


public 
fw_UseStationary_Post(entitycalleractivatoruse_type

 
  if (use_type == USE_STOPPED && is_user_connected(caller)) 
 
      replace_weapon_models(callerget_user_weapon(caller)) 


public 
fw_Item_Deploy_Post(weapon_ent

 
  static owner 
   owner 
fm_cs_get_weapon_ent_owner(weapon_ent
 
   
   
static weaponid 
   weaponid 
cs_get_weapon_id(weapon_ent
 
   
   replace_weapon_models
(ownerweaponid


public 
Event_CurWeapon(id

 
  if(!is_user_alive(id)) 
 
      return 
 
       
   
if(get_user_weapon(id) != CSW_M249 && g_old_weapon[id] == CSW_M249 
   

 
      update_specialammo(idg_thanatos7_ammo[id], 0
 
  
 
  g_old_weapon[id] = get_user_weapon(id
 
       
   replace_weapon_models
(idread_data(2)) 


replace_weapon_models(idweaponid

 
  switch (weaponid
 
  
 
      case CSW_M249
 
      
 
          if(g_had_thanatos7[id]) 
 
          
 
              set_pev(idpev_viewmodel2v_model
 
              set_pev(idpev_weaponmodel2p_model
 
              update_specialammo(idg_thanatos7_ammo[id], g_thanatos7_ammo[id] > 0
 
              g_reload[id] = 
               
if(g_mode[id] == MODE_NOLMAL
 
              
 
                  if(g_old_weapon[id] != CSW_M249 
                   

 
                      set_weapon_anim(idDRAW
 
                      set_weapons_timeidle(idCSW_M2492.0
 
                      set_player_nextattackx(id2.0

 
                      remove_task(id
 
                      message_begin(MSG_ONEgmsgWeaponList, {0,0,0}, id
 
                      write_string("weapon_thanatos7"
 
                      write_byte(3
 
                      write_byte(200
 
                      write_byte(-1
 
                      write_byte(-1
 
                      write_byte(0
 
                      write_byte(4
 
                      write_byte(CSW_M249
 
                      write_byte(0
 
                      message_end() 
 
                  
 
              
 
              else if(g_mode[id] == MODE_BOLT && g_thanatos7_ammo[id] == 1
 
              
 
                  if(g_old_weapon[id] != CSW_M249 
                   

 
                      set_weapon_anim(idBDRAW
 
                      set_weapons_timeidle(idCSW_M2492.0
 
                      set_player_nextattackx(id2.0
 
                       
                       remove_task
(id
 
                      message_begin(MSG_ONEgmsgWeaponList, {0,0,0}, id
 
                      write_string("weapon_thanatos7"
 
                      write_byte(3
 
                      write_byte(200
 
                      write_byte(-1
 
                      write_byte(-1
 
                      write_byte(0
 
                      write_byte(4
 
                      write_byte(CSW_M249
 
                      write_byte(0
 
                      message_end() 
 
                  
 
              
 
          
 
      
 
  
 
  g_old_weapon[id] = get_user_weapon(id


public 
fw_AddToPlayer_Post(weaponid

 
  if(!is_valid_ent(weapon) || !is_user_connected(id)) 
 
      return HAM_IGNORED 
    
   
if(entity_get_int(weaponEV_INT_WEAPONKEY) == WEAPONKEY
 
  
 
      g_had_thanatos7[id] = 
       g_thanatos7_ammo
[id] = pev(weaponpev_iuser4
 
       
       message_begin
(MSG_ONEgmsgWeaponList, {0,0,0}, id
 
      write_string("weapon_thanatos7"
 
      write_byte(3
 
      write_byte(200
 
      write_byte(-1
 
      write_byte(-1
 
      write_byte(0
 
      write_byte(4
 
      write_byte(CSW_M249
 
      write_byte(0
 
      message_end() 
 
  
 
  else 
 
  
 
      message_begin(MSG_ONEgmsgWeaponList, {0,0,0}, id
 
      write_string("weapon_m249"
 
      write_byte(3
 
      write_byte(200
 
      write_byte(-1
 
      write_byte(-1
 
      write_byte(0
 
      write_byte(4
 
      write_byte(CSW_M249
 
      write_byte(0
 
      message_end() 
 
  
 
  return HAM_IGNORED 


public 
fw_PrimaryAttack(Weapon

 
  new Player get_pdata_cbase(Weapon414
 
   
   
if (!g_had_thanatos7[Player]) 
 
      return 
 
   
   g_IsInPrimaryAttack 

   pev
(Player,pev_punchangle,cl_pushangle[Player]) 
 
   
   g_clip_ammo
[Player] = cs_get_weapon_ammo(Weapon


public 
fw_PrimaryAttack_Post(Weapon

 
  g_IsInPrimaryAttack 
   
new Player get_pdata_cbase(Weapon414
 
   
   
new szClipszAmmo 
   get_user_weapon
(PlayerszClipszAmmo
 
       
   
if(g_had_thanatos7[Player]) 
 
  
 
      if(szClip <= 0emit_sound(PlayerCHAN_WEAPONsound[5], VOL_NORMATTN_NORM0PITCH_NORM
 
  
 
   
   
if(g_had_thanatos7[Player]) 
 
  
 
      if (!g_clip_ammo[Player]) 
 
          return 
 
           
       
new Float:push[3
 
      pev(Player,pev_punchangle,push
 
      xs_vec_sub(push,cl_pushangle[Player],push
 
       
       xs_vec_mul_scalar
(push,get_pcvar_float(cvar_recoil_thanatos7),push
 
      xs_vec_add(push,cl_pushangle[Player],push
 
      set_pev(Player,pev_punchangle,push
 
      emit_sound(PlayerCHAN_WEAPONsound[0], 1.0ATTN_NORM0PITCH_NORM
 
      if(g_mode[Player] == MODE_NOLMAL
 
          
           set_weapon_anim
(PlayerSHOOT1
 
      
 
      else if(g_mode[Player] == MODE_BOLT
 
      
 
          set_weapon_anim(PlayerBSHOOT1
 
      
 
       
   



public 
fw_CmdStart(iduc_handleseed

 
  if(!is_user_alive(id) || !is_user_connected(id)) 
 
      return 
 
  if(get_user_weapon(id) != CSW_M249 || !g_had_thanatos7[id]) 
 
      return 
 
   
   
static entent fm_get_user_weapon_entity(idCSW_M249
 
  if(!pev_valid(ent)) 
 
      return 
 
       
   
new szClipszAmmo 
   get_user_weapon
(idszClipszAmmo
 
   
   
static CurButton 
   CurButton 
get_uc(uc_handleUC_Buttons
 
   
   
if(CurButton IN_ATTACK2 && szClip >= 1
 
  
 
      CurButton &= ~IN_ATTACK2 
       set_uc
(uc_handleUC_ButtonsCurButton
 
       
       
if(get_pdata_float(ent464) > 0.0 || get_pdata_float(ent474) > 0.0 
           
return 
 
           
       
if(g_mode[id] == MODE_NOLMAL
 
      
 
          set_weapons_timeidle(idCSW_M2494.0
 
          set_player_nextattackx(id4.0
 
          set_weapon_anim(idSCYTHERELOAD
 
          g_reload[id] = 
           emit_sound
(idCHAN_WEAPONsound[8], 1.0ATTN_NORM0PITCH_NORM
 
          set_task(0.1"change_mode"id
 
          g_mode[id] = MODE_CHANGING_1 
        
       

 
      else if(g_mode[id] == MODE_BOLT
 
      
 
          if(g_thanatos7_ammo[id] == 0
 
              return 
 
               
           set_weapons_timeidle
(idCSW_M2494.0
 
          set_player_nextattackx(id4.0
 
          Scythe_Shoot(id
 
          static Float:PunchAngles[3
 
          PunchAngles[0] = -10.0 
           update_specialammo
(idg_thanatos7_ammo[id], 0
 
          g_thanatos7_ammo[id]-- 
 
          update_specialammo(idg_thanatos7_ammo[id], g_thanatos7_ammo[id] > 0
 
          g_reload[id] = 
           set_weapon_anim
(idSCYTHESHOOT
 
          emit_sound(idCHAN_WEAPONsound[9], 1.0ATTN_NORM0PITCH_NORM
 
          set_task(0.1"change_mode"id
 
          g_mode[id] = MODE_CHANGING_2 
       

 
  


public 
change_mode(id

 
  if(g_mode[id] == MODE_CHANGING_1
 
  
 
      g_mode[id] = MODE_NOLMAL 
       set_task
(3.5"fil_scythe"id
 
  
 
  else if(g_mode[id] == MODE_CHANGING_2
 
  
 
      g_reload[id] = 
       g_mode
[id] = MODE_NOLMAL 
   



public 
fil_scythe(id

 
  set_weapons_timeidle(idCSW_M2490.5
 
  set_player_nextattackx(id0.5
 
  g_mode[id] = MODE_BOLT 
   update_specialammo
(idg_thanatos7_ammo[id], 0
 
  g_thanatos7_ammo[id]++ 
 
  update_specialammo(idg_thanatos7_ammo[id], 1
 
  reload_on(id


public 
reload_on(id

 
  g_reload[id] = 


public 
Scythe_Shoot(id

 
  static Float:StartOrigin[3], Float:TargetOrigin[3], Float:angles[3], Float:angles_fix[3
 
  get_position(id2.04.0, -1.0StartOrigin

 
  pev(id,pev_v_angle,angles
 
  Ent engfunc(EngFunc_CreateNamedEntityengfunc(EngFunc_AllocString"info_target")) 
 
  if(!pev_valid(Ent)) return 
 
  angles_fix[0] = 360.0 angles[0
 
  angles_fix[1] = angles[1
 
  angles_fix[2] = angles[2
 
  set_pev(Entpev_movetypeMOVETYPE_FLY
 
  set_pev(Entpev_ownerid
 
   
   entity_set_string
(EntEV_SZ_classname"scythe"
 
  engfunc(EngFunc_SetModelEntSCYTHE_MODEL
 
  set_pev(Entpev_mins,{ -0.1, -0.1, -0.1 }) 
 
  set_pev(Entpev_maxs,{ 0.10.10.1 }) 
 
  set_pev(Entpev_originStartOrigin
 
  set_pev(Entpev_anglesangles_fix
 
  set_pev(Entpev_solidSOLID_BBOX
 
  set_pev(Entpev_frame0.0
 
  set_entity_anim(Ent1
 
  entity_set_float(EntEV_FL_nextthinkhalflife_time() + 0.01
 
   
   
static Float:Velocity[3
 
  fm_get_aim_origin(idTargetOrigin
 
  get_speed_vector(StartOriginTargetOrigin750.0Velocity
 
  set_pev(Entpev_velocityVelocity


public 
fw_Touch(EntId

 
  // If ent is valid 
 
  if(!pev_valid(Ent)) 
 
      return 
 
  if(pev(Entpev_movetype) == MOVETYPE_NONE
 
      return 
 
       
   set_pev
(Entpev_movetypeMOVETYPE_NONE
 
  set_pev(Entpev_solidSOLID_NOT
 
  set_entity_anim(Ent1
 
  entity_set_float(EntEV_FL_nextthinkhalflife_time() + 0.01
 
   
   set_task
(0.1"action_scythe"Ent
 
  set_task(9.0"remove"Ent


public 
remove(Ent

 
  if(!pev_valid(Ent)) 
 
      return 
 
       
   remove_entity
(Ent


public 
action_scythe(Ent

 
  if(!pev_valid(Ent)) 
 
      return 
 
       
   Damage_scythe
(Ent


public 
Damage_scythe(Ent

 
  if(!pev_valid(Ent)) 
 
      return 
 
   
   
static idid pev(Entpev_owner
 
  new Float:origin[3
 
  pev(Entpev_originorigin
 
   
   
// Alive... 
 
  new FM_NULLENT 
   
// Get distance between victim and epicenter 
 
  while((find_ent_in_sphere(aorigin80.0)) != 0
 
  
 
      if (id == a
 
          continue 
 
   
       
if(pev(apev_takedamage) != DAMAGE_NO
 
      
 
          ExecuteHamB(Ham_TakeDamageaididget_pcvar_float(cvar_dmg_scythe), DMG_BULLET
 
      
 
  
 
  set_task(0.1"action_scythe"Ent

 
   
public fw_Idleanim(Weapon

 
  new id get_pdata_cbase(Weapon414
 
  g_reload[id] = 

   
if(!is_user_alive(id) || !g_had_thanatos7[id] || get_user_weapon(id) != CSW_M249
 
      return HAM_IGNORED
 
   
   
if(g_mode[id] == MODE_NOLMAL && g_thanatos7_ammo[id] == && get_pdata_float(Weapon484) <= 0.25
 
  
 
      set_weapon_anim(idIDLE
 
      set_pdata_float(Weapon4820.04
 
      return HAM_SUPERCEDE
 
  
 
   
   
if(g_mode[id] == MODE_BOLT && g_thanatos7_ammo[id] == && get_pdata_float(Weapon484) <= 0.25 
   

 
      set_weapon_anim(idrandom_num(BIDLEBIDLE2)) 
 
      set_pdata_float(Weapon4820.04
 
      return HAM_SUPERCEDE
 
  

 
  return HAM_IGNORED


public 
update_ammo(id

 
  if(!is_user_alive(id)) 
 
      return 
 
   
   
static weapon_entweapon_ent fm_find_ent_by_owner(-1"weapon_m249"id
 
  if(pev_valid(weapon_ent)) cs_set_weapon_ammo(weapon_ent1    
    
   cs_set_user_bpammo
(idCSW_M2490
 
   
   engfunc
(EngFunc_MessageBeginMSG_ONE_UNRELIABLEget_user_msgid("CurWeapon"), {000}, id
 
  write_byte(1
 
  write_byte(CSW_M249
 
  write_byte(-1
 
  message_end() 
 
   
   message_begin
(MSG_ONE_UNRELIABLEget_user_msgid("AmmoX"), _id
 
  write_byte(3
 
  write_byte(g_thanatos7_ammo[id]) 
 
  message_end() 


public 
update_specialammo(idAmmoOn

 
  static AmmoSprites[33
 
  format(AmmoSpritessizeof(AmmoSprites), "number_%d"Ammo
 
     
   message_begin
(MSG_ONE_UNRELIABLEg_Msg_StatusIcon, {0,0,0}, id
 
  write_byte(On
 
  write_string(AmmoSprites
 
  write_byte(42// red 
 
  write_byte(212// green 
 
  write_byte(255// blue 
 
  message_end() 


public 
fw_ItemPostFramewpn 

 
  new id pev(wpnpev_owner
 
  if(!is_user_connected(id)) 
 
      return HAM_IGNORED 
    
   
if(!g_had_thanatos7[id]) 
 
      return HAM_IGNORED 
        
   
if(g_reload[id] == 0
 
      return HAM_IGNORED 
                
   
new Float:flNextAttack get_pdata_float(idm_flNextAttackPLAYER_LINUX_XTRA_OFF
 
  new iBpAmmo cs_get_user_bpammo(idCSW_M249
 
  new iClip get_pdata_int(wpnm_iClipWEAP_LINUX_XTRA_OFF
 
  new fInReload get_pdata_int(wpnm_fInReloadWEAP_LINUX_XTRA_OFF
 
   
   
if(fInReload && flNextAttack <= 0.0
 
  
 
      new min(get_pcvar_num(cvar_clip_thanatos7) - iClipiBpAmmo
 
      set_pdata_int(wpnm_iClipiClip jWEAP_LINUX_XTRA_OFF
 
      cs_set_user_bpammo(idCSW_M249iBpAmmo-j
 
      set_pdata_int(wpnm_fInReload0WEAP_LINUX_XTRA_OFF
 
      fInReload 
   

 
  return HAM_IGNORED 


public 
fw_Reloadwpn ) { 
 
  new id pev(wpnpev_owner
 
  if(!is_user_connected(id)) 
 
      return HAM_IGNORED 
    
   
if(!g_had_thanatos7[id]) 
 
      return HAM_IGNORED 
        
   
if(g_reload[id] == 0
 
      return HAM_IGNORED 
                
   g_thanatos7_TmpClip
[id] = -
   
new iBpAmmo cs_get_user_bpammo(idCSW_M249
 
  new iClip get_pdata_int(wpnm_iClipWEAP_LINUX_XTRA_OFF
 
  if(iBpAmmo <= 0
 
      return HAM_SUPERCEDE 
    
   
if(iClip >= get_pcvar_num(cvar_clip_thanatos7)) 
 
      return HAM_SUPERCEDE 
    
   g_thanatos7_TmpClip
[id] = iClip 
   
return HAM_IGNORED 


public 
fw_Reload_Post(weapon) { 
 
  new id pev(weaponpev_owner
 
  if(!is_user_connected(id)) 
 
      return HAM_IGNORED 
        
   
if(!g_had_thanatos7[id]) 
 
      return HAM_IGNORED 
        
   
if(g_thanatos7_TmpClip[id] == -1
 
      return HAM_IGNORED 
        
   
if(g_reload[id] == 0
 
      return HAM_IGNORED 
        
   set_pdata_int
(weaponm_iClipg_thanatos7_TmpClip[id], WEAP_LINUX_XTRA_OFF
 
  set_pdata_float(weaponm_flTimeWeaponIdleRELOAD_TIMEWEAP_LINUX_XTRA_OFF
 
  set_pdata_float(idm_flNextAttackRELOAD_TIMEPLAYER_LINUX_XTRA_OFF
 
  set_pdata_int(weaponm_fInReload1WEAP_LINUX_XTRA_OFF
 
   
   
if(g_mode[id] == MODE_NOLMAL && g_thanatos7_ammo[id] == 0
 
  
 
      set_weapon_anim(idRELOAD
 
      set_pdata_float(weapon4820.04
 
  
 
  else if(g_mode[id] == MODE_BOLT && g_thanatos7_ammo[id] == 1
 
  
 
      set_weapon_anim(idBRELOAD
 
      set_pdata_float(weapon4820.04
 
  
 
  return HAM_IGNORED 


public 
fwPlaybackEvent(flagsinvokereventidFloat:delayFloat:origin[3], Float:angles[3], Float:fparam1Float:fparam2iParam1iParam2bParam1bParam2

 
  if ((eventid != g_orig_event_thanatos7) || !g_IsInPrimaryAttack
 
      return FMRES_IGNORED 
   
if (!(<= invoker <= g_MaxPlayers)) 
 
      return FMRES_IGNORED 

   playback_event
(flags FEV_HOSTONLYinvokereventiddelayoriginanglesfparam1fparam2iParam1iParam2bParam1bParam2
 
   
   
return FMRES_SUPERCEDE 


stock set_weapon_anim(idanim

 
  if(!is_user_alive(id)) 
 
      return 
 
   
   set_pev
(idpev_weaponanimanim
 
   
   message_begin
(MSG_ONE_UNRELIABLESVC_WEAPONANIM, {000}, id
 
  write_byte(anim
 
  write_byte(pev(idpev_body)) 
 
  message_end() 


stock get_speed_vector(const Float:origin1[3],const Float:origin2[3],Float:speedFloat:new_velocity[3]) 

 
  new_velocity[0] = origin2[0] - origin1[0
 
  new_velocity[1] = origin2[1] - origin1[1
 
  new_velocity[2] = origin2[2] - origin1[2
 
  static Float:numnum floatsqroot(speed*speed / (new_velocity[0]*new_velocity[0] + new_velocity[1]*new_velocity[1] + new_velocity[2]*new_velocity[2])) 
 
  new_velocity[0] *= num 
   new_velocity
[1] *= num 
   new_velocity
[2] *= num 
    
   
return 1


stock get_position(id,Float:forwFloat:rightFloat:upFloat:vStart[]) 

 
  static Float:vOrigin[3], Float:vAngle[3], Float:vForward[3], Float:vRight[3], Float:vUp[3
 
   
   pev
(idpev_originvOrigin
 
  pev(idpev_view_ofsvUp//for player 
 
  xs_vec_add(vOriginvUpvOrigin
 
  pev(idpev_v_anglevAngle// if normal entity ,use pev_angles 
 
   
   angle_vector
(vAngleANGLEVECTOR_FORWARDvForward//or use EngFunc_AngleVectors 
 
  angle_vector(vAngleANGLEVECTOR_RIGHTvRight
 
  angle_vector(vAngleANGLEVECTOR_UPvUp
 
   
   vStart
[0] = vOrigin[0] + vForward[0] * forw vRight[0] * right vUp[0] * up 
   vStart
[1] = vOrigin[1] + vForward[1] * forw vRight[1] * right vUp[1] * up 
   vStart
[2] = vOrigin[2] + vForward[2] * forw vRight[2] * right vUp[2] * up 


stock set_weapons_timeidle(idWeaponId ,Float:TimeIdle

 
  if(!is_user_alive(id)) 
 
      return 
 
       
   
static entwpnentwpn fm_get_user_weapon_entity(idWeaponId
 
  if(!pev_valid(entwpn))  
       
return 
 
       
   set_pdata_float
(entwpn46TimeIdleOFFSET_LINUX_WEAPONS
 
  set_pdata_float(entwpn47TimeIdleOFFSET_LINUX_WEAPONS
 
  set_pdata_float(entwpn48TimeIdle 0.5OFFSET_LINUX_WEAPONS


stock set_player_nextattackx(idFloat:nexttime

 
  if(!is_user_alive(id)) 
 
      return 
 
       
   set_pdata_float
(idm_flNextAttacknexttime5


stock fm_cs_get_weapon_ent_owner(ent

 
  return get_pdata_cbase(entOFFSET_WEAPONOWNEROFFSET_LINUX_WEAPONS


stock set_entity_anim(entanim

 
  entity_set_float(entEV_FL_animtimeget_gametime()) 
 
  entity_set_float(entEV_FL_framerate1.0
 
  entity_set_int(entEV_INT_sequenceanim    
  




[/spoiler]
[+] 1 user says Thank You to GabsHp for this post
Responder



Mensajes en este tema
RE: agregar arma segundaria al rr1 - por GabsHp - 04-05-2019, 04:06 AM
RE: agregar arma segundaria al rr1 - por GOKU2019 - 04-05-2019, 09:55 PM
RE: agregar arma segundaria al rr1 - por [F]RO5T - 04-05-2019, 10:46 PM
RE: agregar arma segundaria al rr1 - por GOKU2019 - 04-05-2019, 10:49 PM
RE: agregar arma segundaria al rr1 - por [F]RO5T - 04-05-2019, 11:02 PM
RE: agregar arma segundaria al rr1 - por GOKU2019 - 04-05-2019, 11:09 PM
RE: agregar arma segundaria al rr1 - por STRIKEZ - 04-06-2019, 02:48 AM
RE: agregar arma segundaria al rr1 - por GOKU2019 - 04-06-2019, 03:37 AM
RE: agregar arma segundaria al rr1 - por GabsHp - 04-06-2019, 04:09 AM
RE: agregar arma segundaria al rr1 - por GOKU2019 - 04-06-2019, 05:35 AM
RE: agregar arma segundaria al rr1 - por GabsHp - 04-06-2019, 05:47 AM
RE: agregar arma segundaria al rr1 - por GOKU2019 - 04-06-2019, 06:17 AM
RE: agregar arma segundaria al rr1 - por STRIKEZ - 05-02-2019, 10:48 AM
RE: agregar arma segundaria al rr1 - por xCherryGun - 05-02-2019, 01:29 PM



Usuarios navegando en este tema:
15 invitado(s)



Sobre M X E M E X I C O

Comunidad MxE © 2020 - La mejorar comunidad de Counter Strike 1.6 .