[AMXX] Modificarea DMG-ul făcut de o arma.

Tutoriale scripting, cod si portiuni de cod.

Moderators: Moderatori ajutatori, Moderatori

User avatar
JaiLBreaK
Scripter eXtreamCS
Scripter eXtreamCS
Posts: 1694
Joined: 05 Jan 2016, 18:17
Detinator Steam: Nu
Detinator server CS: Da
Reputatie: Membru Club eXtreamCS (2 luni)
Scripter eXtreamCS
Fond eXtream: 0
Has thanked: 3 times
Been thanked: 7 times
Contact:

10 Jun 2017, 17:13

"avand in vedere ca a folost classname-ul 'player' in RegisterHam()"

cand entitatea "player" primeste damage => entitatea player va fi victima deci orice ii da dmg este atacator si din cate am inteles in topic ii seteaza la atacator dmg mai mare => trb sa valideze indexul(IsPlayer) altfel va da o eroare index range parca

P.S: nu sunt bun la explicat =]]
Image
IG-BOOST.org - Instagram Followers Best, Cheap, Reliable
User avatar
Nubo
Fost moderator
Fost moderator
Posts: 2771
Joined: 11 Jul 2012, 17:45
Detinator Steam: Da
CS Status: [əˈnɒn.ɪ.məs]
Reputatie: Fost scripter eXtreamCS
Fost eXtream Mod
Has thanked: 8 times
Been thanked: 26 times
Contact:

10 Jun 2017, 19:33

Cea ce inseamna ca codurile care le-am postat sunt folositoare, avand in vedere ca verifici si daca e jucator si daca jucatorul e valid ...
Primul, cu get_playersnum(), nu functioneaza cum crezi. Daca din 10 playeri vor iesi primii 5 si apoi intra 1, get_playersnum() iti intoarce 6, dar jucatorii vor fi cu index: 1, 6, 7, 8, 9, 10.
Al doilea, cu classname, e super inutil, de ce sa afli classname din index sa vezi daca e "player", daca poti verifica range la index, 1 -> MaxPlayers = player ???
chiar si asa , mi se pare inutil avand in vedere ca a folost classname-ul 'player' in RegisterHam(), ar mai trebui verificata doar validitatea jucatorului cu is_user_alive() in cazul asta.
Classname "player" va fi la victim nu la attacker. E cazul sa cunosti asa ceva intainte sa te contrazici cu cineva.
Si btw, te-am intrebat frumos, nu trebuie sa adopti o atitudine de grandoman intelectual.
Inteleg ca te simti, dar mai intai vezi al tau "Ok, in opinia ta, care ar fi diferenta dintre cele 2 ?".
Acel "in opinia ta" e un fel de "ia zi ma tu, desteptule". Numai nu spune ca nu este asa. Cand ai vazut ca te contrazic cu codul tau, sigur la asta te-ai gandit, fii cinstit.
Cand intr-adevar vrei sa afli raspunsul intrebi frumos "spune-mi, te rog, care e diferenta" sau simplu "care este diferenta, nu inteleg".

Asadar, ca sa vedem daca damage provine de la un player, folosim: 0 < attacker <= MaxPlayers.
Daca mai apoi vrem sa executam cod pe attacker: is_user_connected/alive(attacker)
Cand nu merge acest forum sunt online aici:
  • * Skype: nubo_cs
    * Y!M ID: nubo_cs
User avatar
Fuffy
Membru, skill +1
Membru, skill +1
Posts: 299
Joined: 07 Jan 2016, 08:34
Detinator Steam: Da
CS Status: Citesc forumul eXtreamCS.com...!
Fond eXtream: 0
Contact:

11 Jun 2017, 11:54

dap, am facut cateva teste pentru debug si ai dreptate, scuze :P
AMXX Blue e acum doar pe github.
User avatar
Lemon9
Membru, skill 0
Membru, skill 0
Posts: 14
Joined: 18 Jan 2018, 18:01
Detinator Steam: Da
CS Status: Citesc forumul eXtreamCS.com...!
Detinator server CS: Da
Fond eXtream: 0
Location: Alexandria
Contact:

25 Sep 2018, 20:59

Stie cineva cum pot scadea din dmg doar la un knife , nu la toate knife-urile?
User avatar
Laurentiu P.
Fost moderator
Fost moderator
Posts: 2275
Joined: 10 Jul 2013, 20:26
Detinator Steam: Nu
CS Status: Retras
Detinator server CS: Da
Reputatie: Fost super moderator
Fond eXtream: 100
Location: Constanta
Has thanked: 8 times
Been thanked: 26 times

25 Sep 2018, 21:00

Lemon9 wrote:Stie cineva cum pot scadea din dmg doar la un knife , nu la toate knife-urile?
Sursa pluginului ar fi utila.
Image
User avatar
Lemon9
Membru, skill 0
Membru, skill 0
Posts: 14
Joined: 18 Jan 2018, 18:01
Detinator Steam: Da
CS Status: Citesc forumul eXtreamCS.com...!
Detinator server CS: Da
Fond eXtream: 0
Location: Alexandria
Contact:

25 Sep 2018, 21:09

Do[N]e ;3 wrote:
Lemon9 wrote:Stie cineva cum pot scadea din dmg doar la un knife , nu la toate knife-urile?
Sursa pluginului ar fi utila.
Nu detin sma , detin doar modelul knife-ului...
User avatar
iriminescu0132
Membru, skill 0
Membru, skill 0
Posts: 74
Joined: 21 Feb 2019, 22:53
Detinator Steam: Da
CS Status: Va invit la un Cs 1.6 PaintBall Mod
Detinator server CS: Pb.WtfCs.Com
SteamID: KenZ0_WTFCS
Fond eXtream: 0
Location: Targoviste
Contact:

03 Jun 2019, 23:07

Aici avem sursa pluginului pentru damange knife! (un singur model)
| Afiseaza codul
/* Plugin generated by AMXX-Studio */

#include <  amxmodx  >
#include <  hamsandwich  >

#define PLUGIN "Modificare Damage"
#define VERSION "0.1"
#define AUTHOR "hadesownage"

#define IsPlayer(%0)    ( 1 <= %0 <= g_iMaxPlayers )

new g_iMaxPlayers;

public plugin_init ( ) {
    
    register_plugin ( PLUGIN, VERSION, AUTHOR );
    
    g_iMaxPlayers = get_maxplayers ( )
    RegisterHam ( Ham_TakeDamage, "player", "Player_TakeDamage" );
}

public Player_TakeDamage ( iVictim, iInflictor, iAttacker, Float:fDamage ) {
    
    if ( iInflictor == iAttacker && IsPlayer ( iAttacker ) && get_user_weapon ( iAttacker ) == CSW_KNIFE ) { 
    
        SetHamParamFloat ( 4, fDamage * 4.0 );
        return HAM_HANDLED;
        
    }
    
    return HAM_IGNORED;
    
}


Iar aici avem sursa plugin setare Damage pentru he!
| 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", "3.2");
	cvar_no_attacker_dmg = register_cvar("no_he_dmg_attacker", "0");

	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;
}
PaintBall.WtfCs.Com
Pb.WtfCs.Com
Pb.WtfCs.Ro
zLow69
Membru, skill 0
Membru, skill 0
Posts: 5
Joined: 08 Oct 2019, 20:14
Detinator Steam: Da
CS Status: Uite stau
Detinator server CS: Fury.PubZone.RO
SteamID: zlow411
Fond eXtream: 0
Location: Undeva cu barca
Contact:

08 Oct 2019, 20:26

Daca vreau sa fac damage fix?
User avatar
L E V I N
Scripter eXtreamCS
Scripter eXtreamCS
Posts: 2455
Joined: 24 Aug 2011, 11:24
Detinator Steam: Da
CS Status:
Detinator server CS: ☯∴
SteamID: riseofevo
Reputatie: Scripter eXtreamCS
Nume anterior: Adryyy
Location: ҳ̸Ҳ̸ҳ
Has thanked: 36 times
Been thanked: 375 times
Contact:

09 Oct 2019, 16:24

setezi doar =
Nu fac nimic contra cost! Faceți cerere bine detaliată aici, pe forum. Nu-mi mai dați add pe Steam doar pentru a mă avea în lista de prieteni.
Am cont și activez doar aici! Aveți grijă la cei ce încearcă să mă copieze..Puteți lua legătura cu mine dacă aveți o problemă/nelămurire în acest caz.
În cazul în care utilizați ceva din addonsurile postate de mine aici, e bine să fiți la curent cu modificările aduse unor plugine, aici.
zLow69
Membru, skill 0
Membru, skill 0
Posts: 5
Joined: 08 Oct 2019, 20:14
Detinator Steam: Da
CS Status: Uite stau
Detinator server CS: Fury.PubZone.RO
SteamID: zlow411
Fond eXtream: 0
Location: Undeva cu barca
Contact:

10 Oct 2019, 16:26

Pai da , dar unde pun = ......
Post Reply

Return to “Scripting”

  • Information
  • Who is online

    Users browsing this forum: No registered users and 1 guest