• [THÔNG BÁO] CẢNH BÁO LỪA ĐẢO MẠO DANH QUẢN TRỊ VIÊN
    Chào các thành viên GameVN,
    Dạo gần đây tình trạng lừa đảo scamming và phishing đang gia tăng. Ban quản trị GameVN xin lưu ý toàn bộ thành viên:
    KHÔNG/ ĐỪNG / CẤM cho bất kỳ ai tự xưng là quản trị viên của server vay tiền.
    Mọi hành vi lân la làm quen, tự tiện nhắn tin trên Discord, Facebook, Zalo hoặc các nền tảng mạng xã hội khác,
    núp bóng dưới danh nghĩa sinh hoạt của quản trị viên, đều có tỉ lệ rất, rất cao là lừa đảo.
    Nếu có tài khoản lạ add friend hoặc nhắn tin xin tiền dưới danh nghĩa admin:
    Block ngay
    Report ngay
    Không chuyển khoản, không cung cấp thông tin cá nhân


    Quản trị viên của forum và Discord server GameVN không có nhu cầu vay tiền thành viên.
    Không có lý do nào để admin chủ động kết bạn rồi xin tiền.
    Mọi thông báo chính thức chỉ được đăng trên kênh thông báo của server và topic chính thức trên forum.
    Tin nhắn riêng từ tài khoản lạ không phải thông báo của ban quản trị.
    Cảm ơn các bạn đã chú ý và cùng giữ cộng đồng an toàn.
    — Ban quản trị GameVN

    Tắt thông báo bằng nút X bên góc phải của bảng thông báo*

[AMX] Tổng hợp Code, Plug do Mem chế hoặc giới thiệu

  • Thread starter Thread starter Orpheus
  • Ngày gửi Ngày gửi
@dias: Bác cho em hỏi làm sao để set lại đạn của clip vũ khí vậy
Em dùng cái cs_set_weapon_clip(ent,...) mà chỉ set được 1 lần. lúc thay đạn nó lại hết à

cái của cậu là phải set maxclip khi player đã hoàn thành reload ý.dùng ham item postframe mà làm.
 
@YuNo:
- Tui làm gắn vào 1 file sma duy nhất.

@buiducduy:
PHP:
new g_m4a1_clip[33], g_had_m4a1[33], g_reload[33]

#define M4A1_CLIP 50

public plugin_init()
{
	RegisterHam(Ham_Weapon_Reload, "weapon_m4a1", "ham_reload")
	RegisterHam(Ham_Weapon_Reload,  "weapon_m4a1", "ham_reload_post", 1)
        RegisterHam(Ham_Item_PostFrame, "weapon_m4a1", "ham_postframe")
}

public ham_reload(ent)
{
	if(!pev_valid(ent))
		return HAM_IGNORED
	
	static id
	id = pev(ent, pev_owner)
	
	if(is_user_alive(id) && is_user_connected(id) && g_had_m4a1[id])
	{		
		g_m4a1_clip[id] = -1
		
		new bpammo
		bpammo = cs_get_user_bpammo(id, CSW_M4A1)
		
		new iClip = get_pdata_int(ent, 51, 4)
		
		if (bpammo <= 0)
			return HAM_SUPERCEDE
		
		if(iClip >= M4A1_CLIP)
			return HAM_SUPERCEDE		
		
		g_m4a1_clip[id] = iClip
		g_reload[id] = 1
	}
	
	return HAM_IGNORED
}

public ham_reload_post(ent)
{
	if(!pev_valid(ent))
		return HAM_IGNORED
	
	static id
	id = pev(ent, pev_owner)
	
	if(is_user_alive(id) && is_user_connected(id) && g_had_m4a1[id])
	{	
		if (g_m4a1_clip[id] == -1)
			return HAM_IGNORED
		
                /*
		static Float:reload_time
		if(g_skull3_mode[id] == 1)
			reload_time = 2.2
		else if(g_skull3_mode[id] == 2)
			reload_time = 3.4
		
                set_pdata_float(ent, 48, reload_time, 4)
		set_pdata_float(id, 83, reload_time, 5)*/ // Cai nay de chinh time reload. Ko can thiet nen tat di

		set_pdata_int(ent, 51, g_m4a1_clip[id], 4)
		set_pdata_int(ent, 54, 1, 4)
		
		set_weapon_anim(id, 1) // Anim 1 = Reload Anim
	}
	
	return HAM_IGNORED
}

public ham_postframe(ent)
{
	if(!pev_valid(ent))
		return HAM_IGNORED
	
	static id
	id = pev(ent, pev_owner)
	
	if(is_user_alive(id) && is_user_connected(id) && g_had_m4a1[id])
	{	
		new Float:flNextAttack = get_pdata_float(id, 83, 5)
		
		new bpammo
		bpammo = cs_get_user_bpammo(id, CSW_M4A1)
		
		new iClip = get_pdata_int(ent, 51, 4)
		new fInReload = get_pdata_int(ent, 54, 4)
		
		if(fInReload && flNextAttack <= 0.0)
		{
			new temp1
			temp1 = min(M4A1_CLIP - iClip, bpammo)
			
			set_pdata_int(ent, 51, iClip + temp1, 4)
			
			cs_set_user_bpammo(id, CSW_M4A1, bpammo-temp1)	
			
			set_pdata_int(ent, 54, 0, 4)
			
			fInReload = 0
			g_reload[id] = 0
		}		
	}
	
	return HAM_IGNORED
}

stock set_weapon_anim(id, anim)
{ 
	set_pev(id, pev_weaponanim, anim)
	
	message_begin(MSG_ONE, SVC_WEAPONANIM, _, id)
	write_byte(anim)
	write_byte(pev(id, pev_body))
	message_end()
}
 
^
- Thử chưa ? mà la to...................
 
CSO Emotion
- Author: Dias
- Model: LuanKing

[video=youtube;8ExnI0DO2K0]http://www.youtube.com/watch?v=8ExnI0DO2K0[/URL][/video]
 
CSO Emotion
- Author: Dias
- Model: LuanKing

[video=youtube;8ExnI0DO2K0]http://www.youtube.com/watch?v=8ExnI0DO2K0[/URL][/video]

Cái này hay nè ! Lúc win round mình sẽ làm cái này ! Kingler đâu có công việc rồi nè em ! Tha hồ sáng tạo nha !
 
^
- Code hand gì ?

@Huucuong:
- CF làm gì có cái này nhỉ :))
 
Hajz,code súng của ôg dias làm toàn return handle...sửa lại nãn wá
 
^
- Code hand gì ?

@Huucuong:
- CF làm gì có cái này nhỉ :))

Ví dụ như CT 1 hand, TER 1 hand đó anh... Skin sub 2 hand!

PS: Mà sao để xem cái biến damge nó = bao nhiêu hả mấy anh
PHP:
/* Script generated by Pawn Studio */

#include <amxmodx>
#include <amxmisc>
#include <hamsandwich>

#define PLUGIN	"New Plugin"
#define AUTHOR	"Unknown"
#define VERSION	"1.0"


public plugin_init()
{
	register_plugin(PLUGIN, VERSION, AUTHOR)
	RegisterHam(Ham_TakeDamage, "player", "fw_takedamage")
}



public fw_takedamage(victim, inflictor, attacker, Float:damage)
{
	if (!is_user_connected(victim) || !is_user_connected(attacker))
		return HAM_IGNORED


	new a = floatround(damage)
	client_print(attacker, print_chat, "attack: %i",a)
	return HAM_IGNORED
}
 
Ví dụ như CT 1 hand, TER 1 hand đó anh... Skin sub 2 hand!

PS: Mà sao để xem cái biến damge nó = bao nhiêu hả mấy anh
[spoil]
PHP:
/* Script generated by Pawn Studio */

#include <amxmodx>
#include <amxmisc>
#include <hamsandwich>

#define PLUGIN	"New Plugin"
#define AUTHOR	"Unknown"
#define VERSION	"1.0"


public plugin_init()
{
	register_plugin(PLUGIN, VERSION, AUTHOR)
	RegisterHam(Ham_TakeDamage, "player", "fw_takedamage")
}



public fw_takedamage(victim, inflictor, attacker, Float:damage)
{
	if (!is_user_connected(victim) || !is_user_connected(attacker))
		return HAM_IGNORED


	new a = floatround(damage)
	client_print(attacker, print_chat, "attack: %i",a)
	return HAM_IGNORED
}
[/spoil]
PHP:
RegisterHam(Ham_TakeDamage, "player", "fw_Ham_TakeDamage_Post", 1)

public fw_Ham_TakeDamage_Post(iVictim, iInflictor, iAttacker, Float:fDamage, iDamageBits)
{
	if (!is_user_connected(iVictim) || !is_user_alive(iAttacker))
		return;

	client_print(iAttacker, print_chat, "Damage: %i", floatround(fDamage))
}
Còn cái hand thì hook Ham_Weapon_SendWeaponAnim, send SVC_WEAPONANIM rồi HAM_SUPERCEDE.
 
Chỉnh sửa cuối:
PHP:
RegisterHam(Ham_TakeDamage, "player", "fw_Ham_TakeDamage_Post", 1)

public fw_Ham_TakeDamage_Post(iVictim, iInflictor, iAttacker, Float:fDamage, iDamageBits)
{
	if (!is_user_connected(iVictim) || !is_user_alive(iAttacker))
		return;

	client_print(iAttacker, print_chat, "Damage: %i", floatround(fDamage))
}
Còn cái hand thì hook Ham_Weapon_SendWeaponAnim, send SVC_WEAPONANIM rồi HAM_SUPERCEDE.


Có print chat được đâu "_" !
 
return HAM_IGNORED dùm con 1 cái. return chỉ dành cho engine thôi. amx thì return PLUGIN_...., ham thì HAM_... còn fakemeta thì FMRES_
cứ thích đem râu ông này cắm cằm bà nọ. return 1 lần là nó tắt luôn cái Ham đấy =))
 
Chỉnh sửa cuối:
PHP:
#include <amxmodx>
#include <amxmisc>
#include <hamsandwich>

#define PLUGIN	"New Plugin"
#define AUTHOR	"Unknown"
#define VERSION	"1.0"


public plugin_init()
{
	register_plugin(PLUGIN, VERSION, AUTHOR)
	RegisterHam(Ham_TakeDamage, "player", "fw_takedamage")
}



public fw_takedamage(victim, inflictor, attacker, Float:damage)
{
	if (!is_user_connected(victim) || !is_user_connected(attacker))
		return HAM_IGNORED


	new a = floatround(damage)
	client_print(attacker, print_chat, "attack: %i",a)
	return HAM_IGNORED
}
[/B]

Nói về return thì cái này em return rồi cũng đâu được "_" :((

Vậy chỉ ra xem tôi sai ở chỗ nào mà ko print đc:-?
Ahhh, chắc cậu dùng ZBot:-j

Ukm... Dùng Zbot thì sao ?? Hay cái này cũng phải RegisterHam Cho bọn BOT *_* Để thử xem !!!!
 
hmm...không hỉu tại sao cứ deploy/fire súng là hud message+hud sync nó nhảy dựng lên :))
 
Ùi được rồi.. Register Ham cho bọn bot nó mới chạy ... Khẩu AK47 shoot phát vào đầu được 140 cơ đấy :))



P/S: Mọi người giúp em với.. Ngoài lúc reload và draw thì hand nó cứ nhảy loạn xạ

PHP:
/* Script generated by Pawn Studio */

#include <amxmodx>
#include <amxmisc>
#include <fakemeta>
#include <hamsandwich>


#define PLUGIN	"New Plugin"
#define AUTHOR	"Unknown"
#define VERSION	"1.0"

new hand[33]

public plugin_init()
{
	register_plugin(PLUGIN, VERSION, AUTHOR)
	RegisterHam(Ham_Weapon_SendWeaponAnim, "weapon_ak47", "ak47_anim")
	
	register_concmd("change_hand","change_hand")
}

public change_hand(id)
{
	new read[10]
	read_argv(id, read, 9)
	hand[id] = str_to_num(read)
}

public ak47_anim(ent, iAnim, skiplocal, body)
{
	new id = pev(ent, pev_owner)
	if (!is_user_connected(id)) return HAM_IGNORED
	SendAnim(id, iAnim, hand[id])
	
	return HAM_IGNORED
}

SendAnim(id, anim, pody)
{
	if (!is_user_alive(id)) return;
	
	set_pev(id, pev_weaponanim, anim)
	message_begin(MSG_ONE_UNRELIABLE, SVC_WEAPONANIM, _, id)
	write_byte(anim)
	write_byte(pody)
	message_end()
}
 
Chỉnh sửa cuối:
Back
Top