1. sayfa (Toplam 1 sayfa)

Az hasar yeme

Gönderilme zamanı: Pzt Haz 01, 2020 7:52 pm
gönderen MrFoTo
Merhabalar bir plugin isteğim var bu değişkene bağlı olursa sevinirim örnek new degisken[id] = true olunca açık false olunca kapalı gibi

true olunca oyuncu ct takımından az hasar yiyecek false olursa normale dönecek teşekkürler

Az hasar yeme

Gönderilme zamanı: Prş Nis 08, 2021 1:16 am
gönderen Beta
+güncel

Az hasar yeme

Gönderilme zamanı: Prş Nis 08, 2021 1:25 pm
gönderen bestcore
Değişken true ise hasar veren kişi hasar alan kişiye vurdugu hasarın yarısını vuracak.

Buyur;

Kod: Tümünü seç

#pragma semicolon 1

#include <amxmodx>
#include <reapi>

new bool:g_blDamage[MAX_PLAYERS+1];

public plugin_init(){
	register_plugin("Hasar Azalt", "0.1", "` BesTCore;");

	register_clcmd("say /damageayarla", "clcmd_damageayarla");

	RegisterHookChain(RG_CBasePlayer_TakeDamage, "RG_CBasePlayer_TakeDamage_Pre", .post = false);
}
public clcmd_damageayarla(id){
	if(!g_blDamage[id]){
		g_blDamage[id] = true;
		// Hasar azaltmayı actik.
	}
	else {
		g_blDamage[id] = false;
		// Hasar azaltmayı kapattık.
	}
}
public RG_CBasePlayer_TakeDamage_Pre(const this, pInflictor, pAttacker, Float:flDamage, bitsDamageType){
	if(!(is_user_alive(pAttacker) || is_user_connected(this) || this != pAttacker || g_blDamage[this] || get_member(pAttacker, m_iTeam) == TEAM_CT)){
		return;
	}
	SetHookChainArg(4, ATYPE_FLOAT, flDamage/2);
}

Az hasar yeme

Gönderilme zamanı: Prş Nis 08, 2021 5:53 pm
gönderen Colditz
const olan bir değerin tekrar oyunda olup olmadığını kontrol etmene gerek yok.

Kod: Tümünü seç

public RG_CBasePlayer_TakeDamage_Pre(const pVictim, pInflictor, pAttacker, Float:flDamage, bitsDamageType){
//if(!(is_user_alive(pAttacker) || is_user_connected(this) || this != pAttacker || g_blDamage[this] || get_member(pAttacker, m_iTeam) == TEAM_CT)){
if(is_user_connected(pAttacker) && pVictim != pAttacker && rg_is_player_can_takedamage(pVictim, pAttacker)) {
	if(g_blDamage[pVictim] && get_member(pAttacker, m_iTeam) == TEAM_CT) {
		SetHookChainArg(4, ATYPE_FLOAT, flDamage / 2);
	}
}