Discord sunucumuz açılmıştır, hepinizi bekleriz

https://discord.gg/43gGDQe6tS

m4a1 silencer remember like csdm

Eklenti sorunlarınız ve özel eklenti istekleriniz

Moderatör: Moderatörler


Konu Sahibi
Midnight1338
Mesajlar: 25
Kayıt: Sal Nis 28, 2020 9:17 pm

m4a1 silencer remember like csdm

Mesaj gönderen Midnight1338 »

I search for plugin that after player been killed if he had previous used silencer on m4a1 after he respawn, and he choose again m4a1 silencer to be on weapon so he have not to put it again, i found 1 plugin if can be reworked on REAPI

Kod: Tümünü seç

#include < amxmodx > 
#include < hamsandwich > 
#include < cstrike >

const m_pPlayer = 41
const XO_WEAPON = 4
new szm4a1[ 33 ]

public plugin_init( ) {
	register_plugin("Silencer", "1.0", "");

	RegisterHam( Ham_Item_Deploy, "weapon_m4a1", "OnM4A1_Deploy", 1 ); 
	RegisterHam( Ham_Weapon_SecondaryAttack, "weapon_m4a1", "OnM4A1_SecondaryAttack", 1 );
} 
public OnM4A1_Deploy( m4a1 ) { 
	new id = get_pdata_cbase( m4a1, m_pPlayer, XO_WEAPON );

	if( szm4a1[ id ] )
		cs_set_weapon_silen( m4a1, 1, 0 );
}
public OnM4A1_SecondaryAttack( m4a1 ) { 
	new id = get_pdata_cbase( m4a1, m_pPlayer, XO_WEAPON );
	
	if( szm4a1[ id ] )
		szm4a1[ id ] = false;
	else
		szm4a1[ id ] = true; 
}

Link:
Linklerini gizle
Linki Kopyala
Kullanıcı avatarı

Colditz
Mesajlar: 2574
Kayıt: Çrş Ağu 23, 2017 9:17 pm

m4a1 silencer remember like csdm

Mesaj gönderen Colditz »

Can you try it? @Midnight1338

Kod: Tümünü seç

#include <amxmodx>
#include <hamsandwich>
#include <reapi>

new bool:g_blSilencer[MAX_CLIENTS + 1];

public plugin_init() {
	register_plugin("M4a1 Silencer", "1.0", "PurposeLess");

	RegisterHam(Ham_Weapon_SecondaryAttack, "weapon_m4a1", "@Ham_Weapon_SecondaryAttack_Post", .Post = true);
	RegisterHookChain(RG_CBasePlayer_AddPlayerItem, "@CBasePlayer_AddPlayerItem_Post", .post = true);
}

@Ham_Weapon_SecondaryAttack_Post(pWeapon) {
	new pPlayer = get_member(pWeapon, m_pPlayer);

	g_blSilencer[pPlayer] = bool:get_member(pWeapon, m_Weapon_bSecondarySilencerOn);
}

@CBasePlayer_AddPlayerItem_Post(const pPlayer, const pItem) {
	if(get_member(pItem, m_iId) != WEAPON_M4A1) {
		return;
	}

	set_member(pItem, m_Weapon_bSecondarySilencerOn, g_blSilencer[pPlayer]);
}

Link:
Linklerini gizle
Linki Kopyala

Konu Sahibi
Midnight1338
Mesajlar: 25
Kayıt: Sal Nis 28, 2020 9:17 pm

m4a1 silencer remember like csdm

Mesaj gönderen Midnight1338 »

Colditz yazdı: Cmt Oca 16, 2021 1:03 am Can you try it? @Midnight1338

Kod: Tümünü seç

#include <amxmodx>
#include <hamsandwich>
#include <reapi>

new bool:g_blSilencer[MAX_CLIENTS + 1];

public plugin_init() {
	register_plugin("M4a1 Silencer", "1.0", "PurposeLess");

	RegisterHam(Ham_Weapon_SecondaryAttack, "weapon_m4a1", "@Ham_Weapon_SecondaryAttack_Post", .Post = true);
	RegisterHookChain(RG_CBasePlayer_AddPlayerItem, "@CBasePlayer_AddPlayerItem_Post", .post = true);
}

@Ham_Weapon_SecondaryAttack_Post(pWeapon) {
	new pPlayer = get_member(pWeapon, m_pPlayer);

	g_blSilencer[pPlayer] = bool:get_member(pWeapon, m_Weapon_bSecondarySilencerOn);
}

@CBasePlayer_AddPlayerItem_Post(const pPlayer, const pItem) {
	if(get_member(pItem, m_iId) != WEAPON_M4A1) {
		return;
	}

	set_member(pItem, m_Weapon_bSecondarySilencerOn, g_blSilencer[pPlayer]);
}
not working

Link:
Linklerini gizle
Linki Kopyala

Konu Sahibi
Midnight1338
Mesajlar: 25
Kayıt: Sal Nis 28, 2020 9:17 pm

m4a1 silencer remember like csdm

Mesaj gönderen Midnight1338 »

Thanks to @Colditz fixed problem, thread can be locked

Link:
Linklerini gizle
Linki Kopyala
Kullanıcı avatarı

Colditz
Mesajlar: 2574
Kayıt: Çrş Ağu 23, 2017 9:17 pm

m4a1 silencer remember like csdm

Mesaj gönderen Colditz »

Midnight1338 yazdı: Pzr Oca 17, 2021 11:57 am Thanks to @Colditz fixed problem, thread can be locked
You're welcome

Link:
Linklerini gizle
Linki Kopyala
Cevapla