Page 1 of 1

Control HE Damage(s)

Posted: 02 Jul 2015, 22:13
by YONTU
Descriere: Cu acest plugin, puteti controla daunele provocate de grenada HE, anume: daca sa fii imun la explozia sa si cat dmg sa provoace inamicilor.

Descarcare
SMA | Afiseaza codul
#include <amxmodx>
#include <hamsandwich>

#define DMG_HEGRENADE 	(1<<24)

#define PLUGIN_NAME	"Control HE Dmg(s)"
#define PLUGIN_AUTHORS	"YONTU"
#define PLUGIN_VERSION	"1.1"

new cvar_dmg, cvar_no_attacker_dmg;

public plugin_init() 
{
	register_plugin(PLUGIN_NAME, PLUGIN_VERSION, PLUGIN_AUTHORS);
	cvar_dmg = register_cvar("he_dmg", "0.2");
	cvar_no_attacker_dmg = register_cvar("no_he_dmg_attacker", "1");

	RegisterHam(Ham_TakeDamage, "player", "fw_TakeDamage");
}

public fw_TakeDamage(victim, inflictor, attacker, Float:fDamage, iDmgType)
{
	if(!(iDmgType & DMG_HEGRENADE))
		return HAM_HANDLED;

	if(victim == attacker)
	{
		if(!get_pcvar_num(cvar_no_attacker_dmg))
			return HAM_IGNORED;

		return HAM_SUPERCEDE;
	}
	else
	{
		if(is_user_alive(victim) && get_user_team(victim) != get_user_team(attacker))
		{
			fDamage *= get_pcvar_float(cvar_dmg);
			SetHamParamFloat(4, fDamage);
			return HAM_HANDLED;
		}
	}
	return HAM_IGNORED;
}


Nume: Control HE Damage(s)
Versiune: 1.1 (optimizare de cod)
Autor: YONTU
Link oficial: http://www.extreamcs.com/forum/

Instalare:
1. Fisierul control_he_dmg.sma il puneti in addons/amxmodx/scripting
2. Fisierul control_he_dmg.amxx il puneti in addons/amxmodx/plugins
3. Intrati in fisierul addons/amxmodx/configs/plugins.ini si adaugati la urma:

Code: Select all

control_he_dmg.amxx
4. Alti pasi necesari....

Cvar-uri (se adauga in fisierul amxmodx\configs\amxx.cfg):
he_dmg "1.0" - acest cvar multiplica dmg-ul grenadei
- in cazul in care setati valoarea "0.0", inamicii nu vor mai lua dmg la explozia grenadei
- in cazul in care setati valoarea "1.0", inamicii vor lua dmg-ul default de la grenada HE
- puteti seta orice valoare doriti voi, ori pentru a mari dmg-ul, ori pentru a-l micsora
no_he_dmg_attacker "1" - acest cvar va bloca dmg-ul provocat de grenada, in cazul in care sunteti victima propriei grenade
- cvar-ul are 2 valori (1 - activat, 0 - dezactivat)


Comenzi administrative (se tasteaza in consola si trebuie sa fiti administrator):
  • Nu are
Comenzi publice (se tasteaza in joc prin apasarea tastei Y):
  • Nu are
Module necesare (se sterge ; din fata modulului de mai jos; acestea le gasiti in fisierul amxmodx\configs\modules.ini):
- Hamsandwich

Alte informatii:
Cativa de pe extream, m-au intrebat daca le pot face un plugin astfel incat sa micsoreze dmg-ul provocat de grenada HE pentru modul furien. Acum e posibil :) .
Imagini | Afiseaza codul
Image

Image

Re: Control HE Damage(s)

Posted: 02 Jul 2015, 22:26
by ksF-
frumos, felicitari

Re: Control HE Damage(s)

Posted: 02 Jul 2015, 22:35
by VegaS
Am știut eu că iNdio îl avea în PC, dar nu eram sigur. :gusta
https://forums.alliedmods.net/showthrea ... post627115

Re: Control HE Damage(s)

Posted: 02 Jul 2015, 22:48
by HamletEagle
if(iDmgType & DMG_HEGRENADE) asta ar trebui sa o verifici prima data, si doar o data, tu nu vrei sa faci nimic daca dmg-ul nu e produs de o grenada.

Re: Control HE Damage(s)

Posted: 02 Jul 2015, 23:29
by YONTU
HamletEagle wrote:if(iDmgType & DMG_HEGRENADE) asta ar trebui sa o verifici prima data, si doar o data, tu nu vrei sa faci nimic daca dmg-ul nu e produs de o grenada.
Pluginul functioneaza si fara acea verificare. Insa, trebuie sa tinem cont si de stil, nu? ;)
Am dat edit la primul post! :D

Re: Control HE Damage(s)

Posted: 03 Jul 2015, 00:19
by Challenger.
ksF- wrote:frumos, felicitari

Re: Control HE Damage(s)

Posted: 03 Jul 2015, 13:17
by HamletEagle
YONTU wrote:
HamletEagle wrote:if(iDmgType & DMG_HEGRENADE) asta ar trebui sa o verifici prima data, si doar o data, tu nu vrei sa faci nimic daca dmg-ul nu e produs de o grenada.
Pluginul functioneaza si fara acea verificare. Insa, trebuie sa tinem cont si de stil, nu? ;)
Am dat edit la primul post! :D
Habar nu ai ce am zis, nu ? Nu e vorba de niciun stil, gandeste-te putin. Tu deja verifici asta de mai multe ori, ce ti-am zis a fost sa o pui doar o data, deasupra codului ca sa nu o verifici mereu. E si mai corect, eviti sa apelezi native daca nu e cazu.

Eh, vad ca ai modificat.

Re: Control HE Damage(s)

Posted: 04 Aug 2015, 03:17
by Gabriel963
Felicitari!