←  Pytania

AMXX.pl: Support AMX Mod X i SourceMod

»

2x wieksze dmg z ak

  • +
  • -
patryk445333's Photo patryk445333 18.03.2016

MAm pytanie. Mam serwer Jailbreak i chce zrobić ,żeby Svip miał złote ak + 2x wieksze dmg z niego (plugin do modeli mam) . Otóż jak zrobić by z tego akacza było 2x wieksze dmg? Cvar jakiś to jest? 

Quote

  • +
  • -
wonsz żeczny's Photo wonsz żeczny 18.03.2016

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

#define PLUGIN "SVIP 2x DMG AK"
#define WERSJA "1.0"
#define AUTOR "wonsz"


#define FLAGA_VIPA "" //// w cudzyslow wstaw jaka flage ma svip np. ADMIN_LEVEL_H


public plugin_init()
{
	register_plugin( PLUGIN, WERSJA, AUTOR )

	RegisterHam(Ham_TakeDamage, "player", "TakeDamage")
}

public TakeDamage( this, idinflictor, idattacker, Float:damage, damagebits ) 
{
	if( !is_user_connected( idattacker ) || !is_user_connected( this ) )
		return HAM_IGNORED

	if( !is_user_alive( idattacker ) || !is_user_alive( this ) )
		return HAM_IGNORED

	if( !has_flag( idattacker, FLAGA_VIPA ) )
		return HAM_IGNORED

	if( get_user_weapon(idattacker) == CSW_AK47 )
	{
		damage *= 2
	}

	SetHamParamFloat( 4, damage )

	return HAM_IGNORED
}

Dodaj tam wyżej flage svipa, skompiluj i wrzuć na serwer.

Quote

  • +
  • -
patryk445333's Photo patryk445333 18.03.2016

Dzięki można zamknac + idzie.

Quote

  • +
  • -
wonsz żeczny's Photo wonsz żeczny 18.03.2016

Pomyłka jeszcze, nie będzie chyba vipa czytać.

#define FLAGA_VIPA "" //// w cudzyslow wstaw jaka flage ma svip np. ADMIN_LEVEL_H

w cudzyslow wstaw jednak literke flagi czyli gdy np. masz ADMIN_LEVEL_H to wstaw tam "t" itd.. myślę, że wiesz o co chodzi.

Bo najpierw miałem zamiar użyć get_user_flags() ale jednak użyłem has_flag() i zapomniałem to zmienić :)

Quote

  • +
  • -
Asiap's Photo Asiap 18.03.2016

po co podajesz bledny kod @wonsz zeczny??

Quote

  • +
  • -
Asiap's Photo Asiap 18.03.2016

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

#define IsUserVip(%1) (get_user_flags(%1) & ADMIN_LEVEL_H)

public plugin_init()
{
	register_plugin("AK47 Multiple Damage", "0.1", "asiap123");

	RegisterHamPlayer(Ham_TraceAttack, "TraceAttack");
}

public TraceAttack(iVictim, iAttacker, Float:fDamage)
{
	if(!is_user_connected(iVictim) || !is_user_connected(iAttacker) || !IsUserVip(iAttacker) || get_pdata_int(get_pdata_cbase(iAttacker, 373), 43, 4) != CSW_AK47)
	{
		return HAM_IGNORED;
	}

	SetHamParamFloat(3, fDamage * 2);
	return HAM_HANDLED;
}
Quote