[AMX][Codes] Hỏi đáp về các code của AMX ...

  • Thread starter Thread starter sontung0
  • Ngày gửi Ngày gửi
Status
Không mở trả lời sau này.
Ukm em có download 1 cái plug sprites rồi .... hiện spr khi bom đang chạy
 
à, nếu mà takedamage cho nade = Ham thì nó đâu có tác dụng với Zbot đâu :(
 
ai xem hộ tớ plugin svdex với nha, tìm thấy lỗi nào fix dùm tớ nha...version gần cuối đấy...
PHP:
#include <amxmodx>
#include <cstrike>
#include <fakemeta>
#include <fun>
#include <fakemeta_util>
#include <zombieplague>
#include <engine>
#include <hamsandwich>

new Float:cl_pushangle[33][3]
new g_svd[33]
new g_m203_loaded[33]
new g_ammo[33]
new g_itemid
new g_hegren
/// new MaxPlayers
new g_MaxPlayers
//cvar of weapon
new cvar_trail ,cvar_radius ,cvar_damage , cvar_bonus ,cvar_reload ,cvar_remove , cvar_zoom , cvar_recoil , cvar_dmg_multi, cvar_speed, cvar_knockback
//message :D
new g_msgDeathMsg
new g_msgScoreInfo
new gMsgID
new g_hasZoom[33]
// Explode spr
new m_iTrail;
// TRail of Grenade
new xplode;
new Float:zoom_delay[33]

//weapon model
new V_MODEL[64] = "models/v_svdex.mdl"
new P_MODEL[64] = "models/p_svdex.mdl"
new W_MODEL[64] = "models/w_svdex.mdl"
new W_NADE[64] = "models/grenade.mdl"

//sound for weapon :D thanks Duy Linh
new const fire_sound[][] = {"weapons/svd-1.wav"}
new const sound_exp[][] = {"weapons/svdex-exp.wav"}

#define ICON_HIDE 0
#define ICON_SHOW 1
//weapon cost
const weapon_cost = 40
const m203_cost = 2

const m_fInReload = 54

public plugin_init() {
  register_plugin("[ZP] Extra Item : SVDEX","0.1","Teobrvt1995")
  
  register_event("DeathMsg","player_die","abd")  
  register_event("CurWeapon","checkWeapon","be","1=1")
  RegisterHam(Ham_Killed, "player", "player_die")
  RegisterHam(Ham_Spawn, "player", "player_spawn")
  RegisterHam(Ham_TakeDamage, "player", "fw_TakeDamage")
  
  //register m203 nade touch:D
  register_touch("m203_nade", "*", "m203_touch")
  
  //register forawrd
  register_forward(FM_CmdStart, "forward_CmdStart")
  register_forward(FM_SetModel, "forward_setmodel") 
  

//nax player
  g_MaxPlayers = get_maxplayers()
  //register the cvar
  cvar_knockback = register_cvar("zp_svd_knock", "2")
  cvar_speed = register_cvar("zp_svd_speed", "3.0")
  cvar_recoil = register_cvar("zp_svd_recoil", "0.2")
  cvar_dmg_multi = register_cvar("zp_svd_dmg_multi", "8") 
  cvar_trail = register_cvar("zp_svd_trail","1") 
  cvar_radius = register_cvar("zp_svd_rad","300")  
  cvar_damage = register_cvar("zp_svd_dmg","2000") 
  cvar_bonus = register_cvar("zp_svd_bonus","2") 
  cvar_reload = register_cvar("zp_svd_reloadtime","3.0") 
  cvar_remove = register_cvar("zp_svd_remove","0") 
  cvar_zoom = register_cvar("zp_svd_zoom", "1")
  
  // register extra item
  g_itemid = zp_register_extra_item("SVDEX",weapon_cost,ZP_TEAM_HUMAN)
  g_hegren = zp_register_extra_item("M203 for SVDEX",m203_cost, ZP_TEAM_HUMAN) 
  //message for weapon
  g_msgDeathMsg = get_user_msgid("DeathMsg")
  g_msgScoreInfo = get_user_msgid ( "ScoreInfo" )
  gMsgID = get_user_msgid("StatusIcon")

  // for recoil and sound weapon :D
  RegisterHam(Ham_Weapon_PrimaryAttack, "weapon_ak47", "fw_primary_attack")
  RegisterHam(Ham_Weapon_PrimaryAttack, "weapon_ak47", "fw_primary_attack_post",1) 
  //when player are reloading...
  RegisterHam(Ham_Weapon_Reload, "weapon_ak47", "fw_weapon_reload")
  //enable pick up the weapon
  RegisterHam(Ham_Item_AddToPlayer, "weapon_ak47", "fw_weapon_pickup")
   
}
//precache sound and model...
public plugin_precache()          
{
  
  m_iTrail = precache_model("sprites/smoke.spr")
  xplode = precache_model("sprites/zerogxplode.spr")
  precache_sound("weapons/svdex-shoot2.wav")
  for(new i = 0; i < sizeof sound_exp; i++)
  precache_sound(sound_exp[i])
  for(new i = 0; i < sizeof fire_sound; i++)
  precache_sound(fire_sound[i])
  precache_model(V_MODEL)
  precache_model(P_MODEL)
  precache_model(W_MODEL)
  precache_model(W_NADE)
  
}

public zp_user_infected_post(id)   /// Forward when user is infected
{	
   if(g_svd[id])
   ammo_hud(id,0)
   g_svd[id] = false
   g_ammo[id] = 0
}


public client_connect(id)      
{
  g_svd[id] = 0
  g_m203_loaded[id] = 1
  g_ammo[id] = 0     
}

//death/...
public player_die(id)        
{
  if(g_svd[id])
  ammo_hud(id,0)
  g_ammo[id] = 0
  g_svd[id] = 0
  return PLUGIN_CONTINUE
}

//for recoil and sound...
public fw_primary_attack(ent)
{
	new id = pev(ent,pev_owner)
	pev(id,pev_punchangle,cl_pushangle[id])
	return HAM_IGNORED
}
public fw_primary_attack_post(ent)
{
	new id = pev(ent,pev_owner)
	new clip, ammo
	new weap = get_user_weapon( id, clip, ammo )
	if( weap == CSW_AK47 && g_svd[id])
	{
		new Float:push[3]
		pev(id,pev_punchangle,push)
		xs_vec_sub(push,cl_pushangle[id],push)
		xs_vec_mul_scalar(push,get_pcvar_float(cvar_recoil),push)
		xs_vec_add(push,cl_pushangle[id],push)
		set_pev(id,pev_punchangle,push)
		if( clip > 0)
		{
		ExecuteHamB(Ham_Weapon_PlayEmptySound, ent)
		for(new i = 0; i < sizeof fire_sound; i++)
		emit_sound(id, CHAN_AUTO, fire_sound[i], 1.0, ATTN_NORM, 0, PITCH_NORM)
		}
	}	
		      
	return HAM_IGNORED
}

//when player reload ...
public fw_weapon_reload(ent)
{
	new id = pev(ent, pev_owner)
	new button = pev(id, pev_button)
	
	if(g_svd[id] && g_hasZoom[id] && button&IN_RELOAD)
	{
		g_ammo[id] = 0
		g_hasZoom[id] = false
		cs_set_user_zoom(id, CS_RESET_ZOOM, 0)
		
	}
	return HAM_IGNORED
}
//player pick up the weapon...
public fw_weapon_pickup(svd, id)
{
	if( is_valid_ent(svd) && is_user_connected(id) && entity_get_int(svd, EV_INT_impulse) == 1995)
	{
		// Update
		g_svd[id] = true
		
		// BP ammo
		cs_set_user_bpammo(id, CSW_AK47, pev(svd, pev_iuser2))
		
		// Reset weapon options
		entity_set_int(svd, EV_INT_impulse, 0)
		
		return HAM_HANDLED
	}
	
	return HAM_IGNORED
}	
	
public player_spawn(id)    // When player is respawn (But it the same when roudn start...So I :P )
{
             if ( get_pcvar_num(cvar_remove) == 1 &&  g_svd[id] )
            {
		      ammo_hud(id,0)
		      g_svd[id] = false
		      g_ammo[id] = 0		       
            }      	     
}
//set P and W model
public checkModel(id)
{
	if ( zp_get_user_zombie(id) )
		return PLUGIN_HANDLED
	
	new szWeapID = read_data(2)
	
	if ( szWeapID == CSW_AK47 && g_svd[id])
	{
		set_pev(id, pev_viewmodel2, V_MODEL)
		set_pev(id, pev_weaponmodel2, P_MODEL)
	}
	return PLUGIN_HANDLED
}
public checkWeapon(id)
{
	new plrClip, plrAmmo, plrWeapId
	plrWeapId = get_user_weapon(id, plrClip , plrAmmo)
	
	
	if (plrWeapId == CSW_AK47 && g_svd[id])
	{
		checkModel(id)

		
		new Ent = get_weapon_ent(id,plrWeapId)
		new Float:N_Speed
		if(Ent) 
		{
			N_Speed = get_pcvar_float(cvar_speed)
			new Float:Delay = get_pdata_float( Ent, 46, 4) * N_Speed	
			if (Delay > 0.0) {
				set_pdata_float( Ent, 46, Delay, 4)
			}
		}
	}
	else 
	{
		return PLUGIN_CONTINUE
	}
	

	
	return PLUGIN_HANDLED
}

// Create W class for weapon :D
public forward_setmodel(Entity, const Model [])
{
	// Entity is not valid
	if (!is_valid_ent(Entity))
		return FMRES_IGNORED
		
	// Not ak47
	if(!equal(Model, "models/w_ak47.mdl")) 
		return FMRES_IGNORED;
		
	// Get classname
	static szClassName[33]
	entity_get_string(Entity, EV_SZ_classname, szClassName, charsmax(szClassName))
		
	// Not a Weapon box
	if ( !equal ( szClassName, "weaponbox" ) )
		return FMRES_IGNORED
	
	// Some vars
	static iOwner, iStoredAkID
	
	// Get owner
	iOwner = entity_get_edict(Entity, EV_ENT_owner)
	
	// Get drop weapon index
	iStoredAkID = find_ent_by_owner(-1, "weapon_ak47", Entity)
	
	// Entity classname is weaponbox, and ak47 was founded
	if(g_svd[iOwner] && is_valid_ent(iStoredAkID))
	{
		// Setting weapon options
		entity_set_int(iStoredAkID, EV_INT_impulse, 1995)
		
		
		
		// Reset user vars
		g_svd [ iOwner ] = false
		
		
		entity_set_model(Entity, W_MODEL)
		
		return FMRES_SUPERCEDE
	}
	
	return FMRES_IGNORED
}

//someone has bought our extra item...

public zp_extra_item_selected(player, itemid) 
{
    if (itemid == g_hegren)
    {
        if(!g_svd[player])
        {
            client_print(player, print_chat, "[TEO] you need have a SVDEX first")
            zp_set_user_ammo_packs(player, zp_get_user_ammo_packs(player)+ m203_cost ) 
            
            return;
        }
        
        ammo_hud(player,0);
        g_ammo[player] += 5
        client_print(player,print_chat, "You bought 5 nade for SVDEX");
        ammo_hud(player,1);
    }
    
    if(itemid == g_itemid)
    {    
        if(g_svd[player] && user_has_weapon(player, CSW_AK47))
        {
            client_print(player, print_chat, "[TEO]You already have a SVDEX")
            zp_set_user_ammo_packs(player, zp_get_user_ammo_packs(player)+ weapon_cost )
	 
            
            return;
        }
        fm_give_item(player,"weapon_ak47")
        fm_give_item(player,"ammo_9mm")      
        client_print(player,print_chat,"[TEO] You Bought a SVDEX, Time to hunt Zombie ")
        client_print(player, print_chat, "[TEO] Press key E to zoom and ATTACK2 to launch the nade")
        g_svd[player] = true
        g_ammo[player] = 5
        ammo_hud(player,1)
	cs_set_user_bpammo(player, CSW_AK47, 90)			
    }    
}  

//when player press key Attack2 or E
public forward_CmdStart(id, uc_handle, seed)
{
	new button = get_uc(uc_handle, UC_Buttons)
	new ent = find_ent_by_owner(-1, "weapon_ak47", id)
	new fInReload = get_pdata_int(ent, m_fInReload, 4)
	if(is_user_alive(id) && !zp_get_user_zombie(id) && get_user_weapon(id) == CSW_AK47 && g_svd[id])
	{
		 if(entity_get_int(id, EV_INT_button) & IN_ATTACK2)
		 {
		 	launch_nade(id)
			return FMRES_IGNORED
		 }
		 if (button & IN_USE)
		 {
			set_pev(id, pev_button, button &~ IN_USE)
			if (get_gametime() - zoom_delay[id] >= 0.5  && !fInReload && get_pcvar_num(cvar_zoom))
			{
				if (g_hasZoom[id])
				{
					g_hasZoom[id] = false
					cs_set_user_zoom(id, CS_RESET_ZOOM, 0)
				}
				else
				{
					g_hasZoom[id] = true
					cs_set_user_zoom(id, CS_SET_AUGSG552_ZOOM, 0)
				}
				zoom_delay[id] = get_gametime()
			}
		}
	}
	return FMRES_IGNORED
}
	 	     
//dmg multipler
public fw_TakeDamage(victim, inflictor, attacker, Float:damage)
{
    if ( is_user_alive( attacker ) && get_user_weapon(attacker) == CSW_AK47 && g_svd[attacker] )
    {
        SetHamParamFloat(4, damage * get_pcvar_float( cvar_dmg_multi ) )
    }
}
   
  
//m203 fire...
public launch_nade(id)
{
  if(g_svd[id] == 0 || g_m203_loaded[id] == 0 || !(is_user_alive(id)))
    return PLUGIN_CONTINUE

  if(g_ammo[id] == 0)
  {
    client_print(id, print_center, "[TEO] You dont have more nade")
    return PLUGIN_CONTINUE
  }

  entity_set_int(id, EV_INT_weaponanim, 3)

  new Float: Origin[3], Float: Velocity[3], Float: vAngle[3], Ent

  entity_get_vector(id, EV_VEC_origin , Origin)
  entity_get_vector(id, EV_VEC_v_angle, vAngle)

  Origin[2] = Origin[2] + 10

  Ent = create_entity("info_target")

  if (!Ent) return PLUGIN_HANDLED

  entity_set_string(Ent, EV_SZ_classname, "m203_nade")
  entity_set_model(Ent, W_NADE)

  //set size
  new Float:MinBox[3] = {-1.0, -1.0, -1.0}
  new Float:MaxBox[3] = {1.0, 1.0, 1.0}
  entity_set_vector(Ent, EV_VEC_mins, MinBox)
  entity_set_vector(Ent, EV_VEC_maxs, MaxBox)

  entity_set_origin(Ent, Origin)
  entity_set_vector(Ent, EV_VEC_angles, vAngle)

  entity_set_int(Ent, EV_INT_effects, 2)
  entity_set_int(Ent, EV_INT_solid, 1)
  entity_set_int(Ent, EV_INT_movetype, 10)
  entity_set_edict(Ent, EV_ENT_owner, id)

  VelocityByAim(id, 2500 , Velocity)
  entity_set_vector(Ent, EV_VEC_velocity ,Velocity)
  //sound when lauch...
  emit_sound(id,CHAN_VOICE,"weapons/svdex-shoot2.wav", 1.0, ATTN_NORM, 0, PITCH_NORM) 

  g_m203_loaded[id] = 0

  ammo_hud(id,0)
  g_ammo[id]--
  ammo_hud(id,1)

  new parm[1]
  parm[0] = Ent

  if(get_pcvar_num(cvar_trail))
    set_task(0.2, "grentrail",id,parm,1)
  
  parm[0] = id
 
  set_task(get_pcvar_float(cvar_reload), "m203_reload",id+9910,parm,1)
  client_print(id, print_center, "[TEO]reloading")

  return PLUGIN_CONTINUE
}

public m203_reload(parm[])
{  
  g_m203_loaded[parm[0]] = 1
}
//when m203 nade touch something...
public m203_touch(Nade, Other)
{
	if(!pev_valid(Nade))
		return
		
	// Get it's origin
	static Float:origin[3]
	pev(Nade, pev_origin, origin)
	
	// Explosion
	engfunc ( EngFunc_MessageBegin, MSG_PVS, SVC_TEMPENTITY, origin, 0)
	write_byte (TE_EXPLOSION)
	engfunc(EngFunc_WriteCoord, origin[0]) // Position X
	engfunc(EngFunc_WriteCoord, origin[1]) // Position Y
	engfunc(EngFunc_WriteCoord, origin[2]) // Position Z
	write_short (xplode) // Sprite index
	write_byte (40) // Scale
	write_byte (30) // Frame rate
	write_byte (0) // Flags
	message_end ()
	new id = pev(Nade, pev_owner)
	
	for(new i = 0; i < sizeof sound_exp; i++)
        emit_sound(id,CHAN_VOICE,sound_exp[i], 1.0, ATTN_NORM, 0, PITCH_NORM) 
	
	
	// Owner
	static owner  ; owner = pev(Nade, pev_owner)	
	
	// Make a loop
	for(new i = 1; i < g_MaxPlayers;i++)
	{
		//not alive
		if (!is_user_alive(i))
		      continue
								
		// Godmode
		if (get_user_godmode(i) == 1)
			continue
			
		// Human/Survivor
		if (!zp_get_user_zombie(i) || zp_get_user_survivor(i))
			continue
			
		// Get victims origin
		static Float:origin2 [3]
		pev(i, pev_origin, origin2)
		
		// Get distance between those origins
		static Float:distance_f ; distance_f = get_distance_f(origin, origin2)
		
		// Convert distnace to non-float
		static distance ; distance = floatround(distance_f)
		
		// Radius
		static radius ; radius = get_pcvar_num(cvar_radius)
		
		// We are in damage radius
		if ( distance <= radius )
		{
			// Fake damage
			fakedamage(i, "grenade", 0.0, DMG_BLAST)
			
			// Max damage
			static maxdmg ; maxdmg = get_pcvar_num(cvar_damage)
			
			// Normal dmg
			new Damage
			Damage = maxdmg - floatround(floatmul(float(maxdmg), floatdiv(float(distance), float(radius))))
			
			// Calculate health
			new health = get_user_health(i)
			
			// We have at least 1 hp
			if(health - Damage >= 1)
			{
				// New health
				set_user_health(i, health - Damage) 
				make_knockback(i, origin, get_pcvar_float(cvar_knockback) * Damage)
			}
			else
			{
				// We must die
				death_message(owner,i,"grenade",1)
				
				// I hope they'll not find the bodies....
				origin2 [ 2 ] -= 45.0
			}
		}
	}
	
	// Breakable
	static ClassName[32]
	pev(Other, pev_classname, ClassName, charsmax(ClassName))
	if(equal(ClassName,"func_breakable"))
	{
		// Entity health
		static Float:health
		health = entity_get_float(Other, EV_FL_health)
		
		if (health <= get_pcvar_num(cvar_damage))
		{
			// Break it
			force_use(owner, Other)
		}
	}
	
	// Remove grenade
	engfunc(EngFunc_RemoveEntity, Nade)
}

// Death message
public death_message(Killer, Victim, const Weapon[], ScoreBoard)
{
	// Block death msg
	set_msg_block(g_msgDeathMsg, BLOCK_SET)
	ExecuteHamB(Ham_Killed, Victim, Killer, 2)
	set_msg_block(g_msgDeathMsg, BLOCK_NOT)
	
	// Death
	make_deathmsg(Killer, Victim, 0, Weapon)
	
	// Ammo packs
	zp_set_user_ammo_packs(Killer, zp_get_user_ammo_packs(Killer) + get_pcvar_num(cvar_bonus))
	
	// Update score board
	if ( ScoreBoard )
	{
		message_begin(MSG_BROADCAST, g_msgScoreInfo)
		write_byte( Killer ) // id
		write_short(pev(Killer, pev_frags)) // frags
		write_short(cs_get_user_deaths(Killer)) // deaths
		write_short(0) // class?
		write_short(get_user_team(Killer)) // team
		message_end()
		
		message_begin(MSG_BROADCAST, g_msgScoreInfo)
		write_byte(Victim) // id
		write_short(pev(Victim, pev_frags)) // frags
		write_short(cs_get_user_deaths(Victim)) // deaths
		write_short(0) // class?
		write_short(get_user_team(Victim)) // team
		message_end()
	}
}

 
ammo_hud(id, sw)
{
  new s_sprite[33]
  format(s_sprite,32,"number_%d",g_ammo[id])
  
  if(sw)
  {
    message_begin( MSG_ONE, gMsgID, {0,0,0}, id )
    write_byte( ICON_SHOW ) // status
    write_string( s_sprite ) // sprite name
    write_byte( 0 ) // red
    write_byte( 150 ) // green
    write_byte( 0 ) // blue
    message_end()
  }
  else
  {
    message_begin( MSG_ONE, gMsgID, {0,0,0}, id )
    write_byte( ICON_HIDE ) // status
    write_string( s_sprite ) // sprite name
    write_byte( 0 ) // red
    write_byte( 160 ) // green
    write_byte( 0 ) // blue
    message_end()
  }
}



public grentrail(parm[])
{
  new gid = parm[0]

  if (gid) 
  {
    message_begin( MSG_BROADCAST, SVC_TEMPENTITY )
    write_byte( TE_BEAMFOLLOW )
    write_short(gid) // entity
    write_short(m_iTrail)  // model
    write_byte( 10 )       // life
    write_byte( 5 )        // width
    write_byte( 255 )      // r, g, b
    write_byte( 255 )    // r, g, b
    write_byte( 255 )      // r, g, b
    write_byte( 100 ) // brightness
		
    message_end() // move PHS/PVS data sending into here (SEND_ALL, SEND_PVS, SEND_PHS)
  }
}
//knock back...
public make_knockback ( Victim, Float:origin [ 3 ], Float:maxspeed )
{
	// Get and set velocity
	new Float:fVelocity[3];
	kickback ( Victim, origin, maxspeed, fVelocity)
	entity_set_vector( Victim, EV_VEC_velocity, fVelocity);

	return (1);
}

//stock...

stock get_weapon_ent(id,wpnid=0,wpnName[]="")
{
	// who knows what wpnName will be
	static newName[24];

	// need to find the name
	if(wpnid) get_weaponname(wpnid,newName,23);

	// go with what we were told
	else formatex(newName,23,"%s",wpnName);

	// prefix it if we need to
	if(!equal(newName,"weapon_",7))
		format(newName,23,"weapon_%s",newName);

	return fm_find_ent_by_owner(get_maxplayers(),newName,id);
} 

stock kickback( ent, Float:fOrigin[3], Float:fSpeed, Float:fVelocity[3])
{
	// Find origin
	new Float:fEntOrigin[3];
	entity_get_vector( ent, EV_VEC_origin, fEntOrigin );

	// Do some calculations
	new Float:fDistance[3];
	fDistance[0] = fEntOrigin[0] - fOrigin[0];
	fDistance[1] = fEntOrigin[1] - fOrigin[1];
	fDistance[2] = fEntOrigin[2] - fOrigin[2];
	new Float:fTime = (vector_distance( fEntOrigin,fOrigin ) / fSpeed);
	fVelocity[0] = fDistance[0] / fTime;
	fVelocity[1] = fDistance[1] / fTime;
	fVelocity[2] = fDistance[2] / fTime;

	return (fVelocity[0] && fVelocity[1] && fVelocity[2]);
}

làm dc rồi nhưng chỉ cho extra item
đang tính làm SUV nhưng trình ko dủ cao
 
PHP:
forward zp_user_humanized_pre(id, survivor)
forward zp_user_humanized_post(id, survivor)
Dùng forward này give weapon , set values :d . Thế cũng đc mà :D
 
50c: cái plug time bom giống SA ông làm dùm tôi được không
 
@Ryokin
- phải xếp đúng vị trí nó mới chạy à. Vụ này mới à nha.
Hèn gì cái mod zombie mình làm ko dc =))
----------------------
ZOmbie mod làm dc rồi. Tiếp tục thôi...
 
Chỉnh sửa cuối:
Có khả năng nào làm 1 cái plugin mà extra 1 cái đèn pin soi hẳn hoi như flashlight rồi block chức năng block flashlight thông thường không nhỉ.

Có ai thấy cái ý tưởng này hay không @-), hình như hơi dở
 
Thế thì phải make 1 cái model đèn PIN và set cho model này ở chỗ của knife
43.gif
.
lúc chuyển dao thì cầm đèn pin. rồi tự bật cái Flashlight, chuyển súng thì flashlight tắt.

Hay là làm như tên meTaLiCroSS ấy. Dao mà bấm chuột phải là rocket. sao ko làm dao bấm chuột phải là đèn PIN
 
Yên tâm, ta có model đèn pin nên ta mới biểu mừ. Thích thì thêm cái hàm takedamage cho cái đèn pin vì cái model của ta nó đập được ;;), lúc đập thì không cho vùng bóng của flashlight được bật như thật ấy
 
Mà cấu hình mấy của mình là như thế này:

XP SP3 for all pc - Laptop version
Driver Full Version 3
Intel(R)
pentium(R) D CPU 3.00GHz
3.00GHz, 0.99 of Ram
Physical Address Extension

Mà khi cài amxmod thì vào game bị lỗi không bik là tại sao, hay không phù hợp version của game nhĩ chỉ mình với
 
Bên này là topic hỏi đáp code. :|.
----------------------------------------
Counter Strike 1.6 + Patch v23 + Amxmodx 1.8.1 là được
-------

@ Chief:
- Đèn PIN đập thì chết ai =))
 
Giờ dùng v48 cho ổn định. Máy móc chả liên quan gì đến cái AMXMODX cả =)
 
Mà cấu hình mấy của mình là như thế này:

XP SP3 for all pc - Laptop version
Driver Full Version 3
Intel(R)
pentium(R) D CPU 3.00GHz
3.00GHz, 0.99 of Ram
Physical Address Extension

Mà khi cài amxmod thì vào game bị lỗi không bik là tại sao, hay không phù hợp version của game nhĩ chỉ mình với

cài amx liên quan gì đến cấu hình =.=!. ai có plugin mà khi mình chết nó xuất hiện victim và hit và mình bắn được và tên thằng bắn mình không. mà xuất hiện trong các sever đấy.thanks
 
Mấy bác cứ nói sao ấy, tôi cài rồi vào game load map là nó...đơ như cây cơ

---------- Post added at 20:06 ---------- Previous post was at 20:03 ----------

cài bản v32 đó vào game cũng vậy

---------- Post added at 20:07 ---------- Previous post was at 20:06 ----------

mà bác nào hướng dẫn thêm plus-in hand nữ + hand nam giúp tôi tôi tìm hok thấy;))
 
Mấy bác cứ nói sao ấy, tôi cài rồi vào game load map là nó...đơ như cây cơ

---------- Post added at 20:06 ---------- Previous post was at 20:03 ----------

cài bản v32 đó vào game cũng vậy

---------- Post added at 20:07 ---------- Previous post was at 20:06 ----------

mà bác nào hướng dẫn thêm plus-in hand nữ + hand nam giúp tôi tôi tìm hok thấy;))

bác có chơi cso-nst không .lấy trong đấy ra là chuẩn nhất
 
Không có chơi CSO-NST được, mà tôi toàn chơi CS 1.6 cho nó nhẹ :))
 
Cái hand nam nữ ấy hơi phức tạp chút ==!
 
có phần mềm nào xem đc file AMX ko các bác...chỉ dùm mình với
 
Không có . Xem làm cái gì ?
 
À đúng rồi! Lần trước lão cool_man có share 1 trang của Vn-Zoom có plug-in chia hand đấy nhutthien,của gã thandieu nào đó,nhưng nhà dùng FF ko xem đc,cậu pm cool_man hỏi lão ấy nhé!
 
Status
Không mở trả lời sau này.
Back
Top