modificare cutit

Cereri modificari/adaugari la un plugin! (postati .sma)
*Or!g!naL*
Nou Venit
Nou Venit
Mesaje: 9
Membru din: Sâm Feb 21, 2015 3:48 pm
Detinator Steam: Nu

modificare cutit

Mesaj de *Or!g!naL* »

nu merge dmgu la knifurile fara native

Cod: Selectaţi tot

#include <amxmodx>
#include <cstrike>
#include <fakemeta>
#include <hamsandwich>
#include <fun>

new const PLUGIN[] = "Furien Spawn Knife Menu";
new const VERSION[] = "0.1.1";

#define is_user_valid(%0)       (1 <= %0 <= g_iMaxPlayers)
#define is_user_vip(%1)         (get_user_flags(%1) & ADMIN_LEVEL_H)

// Customization vars
new g_iMaxPlayers, bool:g_bKnifeIgnes[33], bool:g_bKnifeKatana[33], bool:g_bKnifexFother[33], 
bool:g_bKnifeDualKatana[33], bool:g_bKnifeChoosen[33];

new const g_szKnifeModels[][] =
{
	"models/furien_knife/v_ignes.mdl",
	"models/furien_knife/v_katana.mdl",
	"models/furien_knife/v_xfother.mdl",
	"models/furien_knife/v_psiho.mdl"
};

//Native
native fcs_get_user_credits(id);
native fcs_set_user_credits(id, credits);
native give_saber(id, value);
//native remove_saber(id);
native set_user_ruyistick(id, value);
//native remove_ruyi(id);
native give_barlog9(id);

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

public plugin_init()
	{
	register_plugin(PLUGIN, VERSION, "Adventx");
	
	// Events
	register_event("CurWeapon", "event_CurrentWeapon", "be", "1=1");
	
	// HAM Forwards
	RegisterHam(Ham_Spawn, "player", "fw_PalyerSpawn_Post", 1);
	RegisterHam(Ham_TakeDamage, "player", "fw_PlayerTakeDamage");
	RegisterHam( Ham_Killed, "player", "fw_PlayerKilled" );

	// Client Commands
	register_clcmd("say /knife","clcmd_knife");
	
	// Vars
	g_iMaxPlayers = get_maxplayers();
}

public plugin_precache()
	{
	// Precache Models
	for (new i = 0; i < sizeof g_szKnifeModels; i++)
		engfunc(EngFunc_PrecacheModel, g_szKnifeModels[i]);
}

public client_putinserver(id)
	{
	// reset boolean's
	fm_reset_variable(id);
}

public fw_PalyerSpawn_Post(id)
	{
	if (!is_user_alive(id) || cs_get_user_team(id) != CS_TEAM_T)
		return;
	
	ShowMenuKnife(id);
	fm_reset_variable(id);
}

public ShowMenuKnife(id)
	{
	new szTitle[128];
	formatex(szTitle, charsmax(szTitle), "\rFurien Knife Menu^n\yCredite: \w%d", fcs_get_user_credits(id));
	
	new szMenu = menu_create(szTitle, "KnifeMenuHandler");
	
	menu_additem(szMenu, "Ignes", "1");
	menu_additem(szMenu, "Katana", "2");
	menu_additem(szMenu, "xFother^n", "3");
	menu_additem(szMenu, "Ruyi          \r[ \y15 Credits \r]", "4");
	menu_additem(szMenu, "Psiho   \r[ \y20 Credits \r]", "5");
	menu_additem(szMenu, "Saber Light   \r[ \y25 Credits \r]", "6");
	
	if(is_user_vip(id))
		menu_additem (szMenu, "Balrog XI   \r[ \rONLY VIP \r]", "7");
	else
	menu_additem (szMenu, "Balrog XI    \r[ \dONLY VIP \r]", "7");
	
	menu_setprop(szMenu, MPROP_EXIT, MEXIT_ALL);
	menu_display(id, szMenu, 0);
	
	return PLUGIN_HANDLED;
}

public KnifeMenuHandler(id, szMenu, item)
	{
	if(item == MENU_EXIT || !is_user_alive(id) || cs_get_user_team(id) != CS_TEAM_T)
		{
		menu_destroy(szMenu);
		return PLUGIN_HANDLED;
	}
	
	new data[6], szName[64], iaccess, callback;
	menu_item_getinfo(szMenu, item, iaccess, data,charsmax (data), szName,charsmax (szName), callback);
	new key = str_to_num(data);
	
	switch (key)
	{
		case 1:
		{
			g_bKnifeIgnes[id]   = true;
			g_bKnifeChoosen[id]   = true;
			
			event_CurrentWeapon(id);
			ChatColor(id, "!g[Furien] !nYou have chosen knife !tSkull");
		}
		
		case 2:
		{
			g_bKnifeKatana[id]   = true;
			g_bKnifeChoosen[id]   = true;
			
			event_CurrentWeapon(id);
			ChatColor(id, "!g[Furien] !nYou have chosen knife !tKatana");
		}
		
		case 3:
		{
			g_bKnifexFother[id]   = true;
			g_bKnifeChoosen[id]   = true;
			
			event_CurrentWeapon(id);
			ChatColor(id, "!g[Furien] !nYou have chosen knife !txFother");
		}
		
		case 4:
		{
			if (fcs_get_user_credits(id) < 15)
				{
				ShowMenuKnife(id);
				ChatColor(id, "!g[Furien] !nYou don't have enough credits to buy !tRuyi");
			}
			
			else
			{  
				set_user_ruyistick(id, 1);
				g_bKnifeChoosen[id]   = true;
				
				event_CurrentWeapon(id);            
				fcs_set_user_credits(id, fcs_get_user_credits(id) - 15);
				ChatColor(id, "!g[Furien] !nYou bought !tRuyi !nfor !t15 credits");
			}
		}
		
		case 5:
		{  
			if (fcs_get_user_credits(id) < 20)
				{
				ShowMenuKnife(id);
				ChatColor(id, "!g[Furien] !nYou don't have enough credits to buy !tPsiho");            
			}
			
			else
			{
				g_bKnifeDualKatana[id]   = true;
				g_bKnifeChoosen[id]   = true;
				
				event_CurrentWeapon(id);                                    
				fcs_set_user_credits(id, fcs_get_user_credits(id) - 20);
				ChatColor(id, "!g[Furien] !nYou bought !tPsiho !nfor !t20 credits");
			}
		}
		
		case 6:
		{
			if (fcs_get_user_credits(id) < 25)
				{
				ShowMenuKnife(id);
				ChatColor(id, "!g[Furien] !nYou don't have enough credits to buy !tSaber Light");
			}
			
			else
			{
				give_saber(id, 1);
				g_bKnifeChoosen[id]   = true;
				
				event_CurrentWeapon(id);
				fcs_set_user_credits(id, fcs_get_user_credits(id) - 25);            
				ChatColor(id, "!g[Furien] !nYou bought !tSaber Light !nfor !t25 credits");
			}
		}
		
		case 7:
		{
			if(is_user_vip(id))
				{
				give_barlog9(id);
				g_bKnifeChoosen[id]      = true;
				
				event_CurrentWeapon(id);
				ChatColor(id, "!g[Furien VIP] !nYou have chosen knife !tBalrog XI");
			}
			
			else
			{
				ChatColor(id, "!g[Furien VIP] !nFor more details contact owner.");
				ShowMenuKnife(id);
			}
		}
	}
	
	menu_destroy (szMenu);
	return PLUGIN_HANDLED;
}

public fw_PlayerTakeDamage(iVictim, iInflictor, iAttacker, Float:fDamage, iDamageBits)
	{
	if (IsPlayer ( iAttacker ) && get_user_weapon(iAttacker) == CSW_KNIFE)
		{
		if (g_bKnifeIgnes[iAttacker])
			SetHamParamFloat(4, fDamage * 1.5);
		
		if (g_bKnifeKatana[iAttacker])
			SetHamParamFloat(4, fDamage * 1.8);
		
		if (g_bKnifexFother[iAttacker])
			SetHamParamFloat(4, fDamage * 2.0);
		
		if (g_bKnifeDualKatana[iAttacker])
			SetHamParamFloat(4, fDamage * 3.0);
		
	}
}
public fw_PlayerKilled( victim, attacker, shouldgib ) {

	give_saber(victim, 0)	
}


public event_CurrentWeapon(id)
	{
	if (get_user_weapon(id) == CSW_KNIFE)
		{
		if(g_bKnifeIgnes[id])
			set_pev(id, pev_viewmodel2, g_szKnifeModels[0]);
		
		if(g_bKnifeKatana[id])
			set_pev(id, pev_viewmodel2, g_szKnifeModels[1]);
		
		if(g_bKnifexFother[id])
			set_pev(id, pev_viewmodel2, g_szKnifeModels[2]);
		
		if(g_bKnifeDualKatana[id])
			set_pev(id, pev_viewmodel2, g_szKnifeModels[3]);
	}
}

public ClCmdSayKnife(id)
	{
	if (!is_user_alive(id) || cs_get_user_team(id) != CS_TEAM_T && g_bKnifeChoosen[id])
		return;
	
	ShowMenuKnife(id);
}

public fm_reset_variable(id)
	{
	give_saber(id, 0)
	g_bKnifeIgnes[id]      = false;
	g_bKnifeKatana[id]      = false;
	g_bKnifexFother[id]      = false;
	g_bKnifeDualKatana[id]      = false;
	g_bKnifeChoosen[id]      = false;
	set_user_ruyistick(id, 0);// pe false

}

stock ChatColor(const id, const input[], any:...)
	{
	new count = 1, players[32];
	static msg[191];
	vformat(msg, 190, input, 3);
	
	replace_all(msg, 190, "!g", "^4"); // Green Color
	replace_all(msg, 190, "!n", "^1"); // Default Color
	replace_all(msg, 190, "!t", "^3"); // Team Color
	replace_all(msg, 190, "!t2", "^0"); // Team2 Color
	
	if (id) players[0] = id; else get_players(players, count, "ch"); {
		for (new i = 0; i < count; i++) {
			if (is_user_connected(players[i])) {
				message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players[i]);
				write_byte(players[i]);
				write_string(msg);
				message_end();
			}
		}
	}
}
Avatar utilizator
CryWolf
Sys Admin
Sys Admin
Mesaje: 443
Membru din: Mar Dec 15, 2009 11:32 am
Detinator Steam: Da
Cunostinte CS: Excelente
Reputatie: Detinator
Webmaster
Scripter
Trance Fan
Localitate: Botosani

Re: modificare cutit

Mesaj de CryWolf »

S-a inteleg ca nu functioneaza sau ce ?
Info: NU IMI DATI PM PENTRU CERERI AJUTOR ETC (NU RASPUND) FOLOSITI FORUMUL.
Imagine

Imagine
CUM SA NU LUPTI PENTRU IUBIRE ????
Daca lupti,inseamna ca vrei sa castigi ceva.Iubirea nu-i o miza.
*Or!g!naL*
Nou Venit
Nou Venit
Mesaje: 9
Membru din: Sâm Feb 21, 2015 3:48 pm
Detinator Steam: Nu

Re: modificare cutit

Mesaj de *Or!g!naL* »

deci ,sunt knifuri pe native si knifuri fara ,din plugin ,cele pe native merge adica merge dmgu pe care il setez din sursa..
celelalte nu merge ,nu le merge dmgu ,dau dmg ca si un knife default :|
Nubo
Nou Venit
Nou Venit
Mesaje: 3
Membru din: Dum Feb 22, 2015 4:18 pm
Detinator Steam: Nu

Re: modificare cutit

Mesaj de Nubo »

Salut.
Testeaza acest cod:

Cod: Selectaţi tot

#include <amxmodx>
#include <cstrike>
#include <fakemeta>
#include <hamsandwich>
#include <fun>

new const PLUGIN[] = "Furien Spawn Knife Menu";
new const VERSION[] = "0.1.1";

//#define is_user_valid(%0)       (1 <= %0 <= g_iMaxPlayers)
#define is_user_vip(%1)         (get_user_flags(%1) & ADMIN_LEVEL_H)

// Customization vars
new g_iMaxPlayers, bool:g_bKnifeIgnes[33], bool:g_bKnifeKatana[33], bool:g_bKnifexFother[33], 
bool:g_bKnifeDualKatana[33], bool:g_bKnifeChoosen[33];

new const g_szKnifeModels[][] =
{
	"models/furien_knife/v_ignes.mdl",
	"models/furien_knife/v_katana.mdl",
	"models/furien_knife/v_xfother.mdl",
	"models/furien_knife/v_psiho.mdl"
};

//Native
native fcs_get_user_credits(id);
native fcs_set_user_credits(id, credits);
native give_saber(id, value);
//native remove_saber(id);
native set_user_ruyistick(id, value);
//native remove_ruyi(id);
native give_barlog9(id);

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

public plugin_init()
	{
	register_plugin(PLUGIN, VERSION, "Adventx");
	
	// Events
	register_event("CurWeapon", "event_CurrentWeapon", "be", "1=1");
	
	// HAM Forwards
	RegisterHam(Ham_Spawn, "player", "fw_PalyerSpawn_Post", 1);
	RegisterHam(Ham_TakeDamage, "player", "fw_PlayerTakeDamage");
	RegisterHam( Ham_Killed, "player", "fw_PlayerKilled" );

	// Client Commands
	register_clcmd("say /knife","clcmd_knife");
	
	// Vars
	g_iMaxPlayers = get_maxplayers();
}

public plugin_precache()
	{
	// Precache Models
	for (new i = 0; i < sizeof g_szKnifeModels; i++)
		engfunc(EngFunc_PrecacheModel, g_szKnifeModels[i]);
}

public client_putinserver(id)
	{
	// reset boolean's
	fm_reset_variable(id);
}

public fw_PalyerSpawn_Post(id)
	{
	if (!is_user_alive(id) || cs_get_user_team(id) != CS_TEAM_T)
		return;
	
	ShowMenuKnife(id);
	fm_reset_variable(id);
}

public ShowMenuKnife(id)
	{
	new szTitle[128];
	formatex(szTitle, charsmax(szTitle), "\rFurien Knife Menu^n\yCredite: \w%d", fcs_get_user_credits(id));
	
	new szMenu = menu_create(szTitle, "KnifeMenuHandler");
	
	menu_additem(szMenu, "Ignes", "1");
	menu_additem(szMenu, "Katana", "2");
	menu_additem(szMenu, "xFother^n", "3");
	menu_additem(szMenu, "Ruyi          \r[ \y15 Credits \r]", "4");
	menu_additem(szMenu, "Psiho   \r[ \y20 Credits \r]", "5");
	menu_additem(szMenu, "Saber Light   \r[ \y25 Credits \r]", "6");
	
	if(is_user_vip(id))
		menu_additem (szMenu, "Balrog XI   \r[ \rONLY VIP \r]", "7");
	else
	menu_additem (szMenu, "Balrog XI    \r[ \dONLY VIP \r]", "7");
	
	menu_setprop(szMenu, MPROP_EXIT, MEXIT_ALL);
	menu_display(id, szMenu, 0);
	
	return PLUGIN_HANDLED;
}

public KnifeMenuHandler(id, szMenu, item)
	{
	if(item == MENU_EXIT || !is_user_alive(id) || cs_get_user_team(id) != CS_TEAM_T)
		{
		menu_destroy(szMenu);
		return PLUGIN_HANDLED;
	}
	
	new data[6], szName[64], iaccess, callback;
	menu_item_getinfo(szMenu, item, iaccess, data,charsmax (data), szName,charsmax (szName), callback);
	new key = str_to_num(data);
	
	switch (key)
	{
		case 1:
		{
			g_bKnifeIgnes[id]   = true;
			g_bKnifeChoosen[id]   = true;
			
			event_CurrentWeapon(id);
			ChatColor(id, "!g[Furien] !nYou have chosen knife !tSkull");
		}
		
		case 2:
		{
			g_bKnifeKatana[id]   = true;
			g_bKnifeChoosen[id]   = true;
			
			event_CurrentWeapon(id);
			ChatColor(id, "!g[Furien] !nYou have chosen knife !tKatana");
		}
		
		case 3:
		{
			g_bKnifexFother[id]   = true;
			g_bKnifeChoosen[id]   = true;
			
			event_CurrentWeapon(id);
			ChatColor(id, "!g[Furien] !nYou have chosen knife !txFother");
		}
		
		case 4:
		{
			if (fcs_get_user_credits(id) < 15)
				{
				ShowMenuKnife(id);
				ChatColor(id, "!g[Furien] !nYou don't have enough credits to buy !tRuyi");
			}
			
			else
			{  
				set_user_ruyistick(id, 1);
				g_bKnifeChoosen[id]   = true;
				
				event_CurrentWeapon(id);            
				fcs_set_user_credits(id, fcs_get_user_credits(id) - 15);
				ChatColor(id, "!g[Furien] !nYou bought !tRuyi !nfor !t15 credits");
			}
		}
		
		case 5:
		{  
			if (fcs_get_user_credits(id) < 20)
				{
				ShowMenuKnife(id);
				ChatColor(id, "!g[Furien] !nYou don't have enough credits to buy !tPsiho");            
			}
			
			else
			{
				g_bKnifeDualKatana[id]   = true;
				g_bKnifeChoosen[id]   = true;
				
				event_CurrentWeapon(id);                                    
				fcs_set_user_credits(id, fcs_get_user_credits(id) - 20);
				ChatColor(id, "!g[Furien] !nYou bought !tPsiho !nfor !t20 credits");
			}
		}
		
		case 6:
		{
			if (fcs_get_user_credits(id) < 25)
				{
				ShowMenuKnife(id);
				ChatColor(id, "!g[Furien] !nYou don't have enough credits to buy !tSaber Light");
			}
			
			else
			{
				give_saber(id, 1);
				g_bKnifeChoosen[id]   = true;
				
				event_CurrentWeapon(id);
				fcs_set_user_credits(id, fcs_get_user_credits(id) - 25);            
				ChatColor(id, "!g[Furien] !nYou bought !tSaber Light !nfor !t25 credits");
			}
		}
		
		case 7:
		{
			if(is_user_vip(id))
				{
				give_barlog9(id);
				g_bKnifeChoosen[id]      = true;
				
				event_CurrentWeapon(id);
				ChatColor(id, "!g[Furien VIP] !nYou have chosen knife !tBalrog XI");
			}
			
			else
			{
				ChatColor(id, "!g[Furien VIP] !nFor more details contact owner.");
				ShowMenuKnife(id);
			}
		}
	}
	
	menu_destroy (szMenu);
	return PLUGIN_HANDLED;
}

public fw_PlayerTakeDamage(iVictim, iInflictor, iAttacker, Float:fDamage, iDamageBits)
{
	if ( IsPlayer(iAttacker) && iAttacker == iInflictor && get_user_weapon(iAttacker) == CSW_KNIFE)
	{
		if (g_bKnifeIgnes[iAttacker])
			SetHamParamFloat(4, fDamage * 1.5);
		
		if (g_bKnifeKatana[iAttacker])
			SetHamParamFloat(4, fDamage * 1.8);
		
		if (g_bKnifexFother[iAttacker])
			SetHamParamFloat(4, fDamage * 2.0);
		
		if (g_bKnifeDualKatana[iAttacker])
			SetHamParamFloat(4, fDamage * 3.0);
		
		return HAM_HANDLED;
	}
	return HAM_IGNORED;
}
public fw_PlayerKilled( victim, attacker, shouldgib ) {

	give_saber(victim, 0)   
}


public event_CurrentWeapon(id)
	{
	if (get_user_weapon(id) == CSW_KNIFE)
		{
		if(g_bKnifeIgnes[id])
			set_pev(id, pev_viewmodel2, g_szKnifeModels[0]);
		
		if(g_bKnifeKatana[id])
			set_pev(id, pev_viewmodel2, g_szKnifeModels[1]);
		
		if(g_bKnifexFother[id])
			set_pev(id, pev_viewmodel2, g_szKnifeModels[2]);
		
		if(g_bKnifeDualKatana[id])
			set_pev(id, pev_viewmodel2, g_szKnifeModels[3]);
	}
}

public ClCmdSayKnife(id)
	{
	if (!is_user_alive(id) || cs_get_user_team(id) != CS_TEAM_T && g_bKnifeChoosen[id])
		return;
	
	ShowMenuKnife(id);
}

public fm_reset_variable(id)
	{
	give_saber(id, 0)
	g_bKnifeIgnes[id]      = false;
	g_bKnifeKatana[id]      = false;
	g_bKnifexFother[id]      = false;
	g_bKnifeDualKatana[id]      = false;
	g_bKnifeChoosen[id]      = false;
	set_user_ruyistick(id, 0);// pe false

}

stock ChatColor(const id, const input[], any:...)
	{
	new count = 1, players[32];
	static msg[191];
	vformat(msg, 190, input, 3);
	
	replace_all(msg, 190, "!g", "^4"); // Green Color
	replace_all(msg, 190, "!n", "^1"); // Default Color
	replace_all(msg, 190, "!t", "^3"); // Team Color
	replace_all(msg, 190, "!t2", "^0"); // Team2 Color
	
	if (id) players[0] = id; else get_players(players, count, "ch"); {
		for (new i = 0; i < count; i++) {
			if (is_user_connected(players[i])) {
				message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players[i]);
				write_byte(players[i]);
				write_string(msg);
				message_end();
			}
		}
	}
}
*Or!g!naL*
Nou Venit
Nou Venit
Mesaje: 9
Membru din: Sâm Feb 21, 2015 3:48 pm
Detinator Steam: Nu

Re: modificare cutit

Mesaj de *Or!g!naL* »

nu merge...a 2 lovitura daca dadeai imediat dadea 130..
Ultima oară modificat Dum Feb 22, 2015 6:22 pm de către *Or!g!naL*, modificat 1 dată în total.
*Or!g!naL*
Nou Venit
Nou Venit
Mesaje: 9
Membru din: Sâm Feb 21, 2015 3:48 pm
Detinator Steam: Nu

Re: modificare cutit

Mesaj de *Or!g!naL* »

am mai testat si asta

Cod: Selectaţi tot

#include <amxmodx>
#include <cstrike>
#include <fakemeta>
#include <hamsandwich>
#include <fun>

new const PLUGIN[] = "Furien Spawn Knife Menu";
new const VERSION[] = "0.1.1";

#define is_user_valid(%0)       (1 <= %0 <= g_iMaxPlayers)
#define is_user_vip(%1)         (get_user_flags(%1) & ADMIN_LEVEL_H)

// Customization vars
new g_iMaxPlayers, bool:g_bKnifeIgnes[33], bool:g_bKnifeKatana[33], bool:g_bKnifexFother[33], 
bool:g_bKnifeDualKatana[33], bool:g_bKnifeChoosen[33];

new const g_szKnifeModels[][] =
{
   "models/furien_knife/v_ignes.mdl",
   "models/furien_knife/v_katana.mdl",
   "models/furien_knife/v_xfother.mdl",
   "models/furien_knife/v_psiho.mdl"
};

//Native
native fcs_get_user_credits(id);
native fcs_set_user_credits(id, credits);
native give_saber(id, value);
//native remove_saber(id);
native set_user_ruyistick(id, value);
//native remove_ruyi(id);
native give_barlog9(id);

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

public plugin_init()
   {
   register_plugin(PLUGIN, VERSION, "Adventx");
   
   // Events
   register_event("CurWeapon", "event_CurrentWeapon", "be", "1=1");
   
   // HAM Forwards
   RegisterHam(Ham_Spawn, "player", "fw_PalyerSpawn_Post", 1);
   RegisterHam(Ham_TakeDamage, "player", "Player_TakeDamage");
   RegisterHam( Ham_Killed, "player", "fw_PlayerKilled" );

   // Client Commands
   register_clcmd("say /knife","clcmd_knife");
   
   // Vars
   g_iMaxPlayers = get_maxplayers();
}

public plugin_precache()
   {
   // Precache Models
   for (new i = 0; i < sizeof g_szKnifeModels; i++)
      engfunc(EngFunc_PrecacheModel, g_szKnifeModels[i]);
}

public client_putinserver(id)
   {
   // reset boolean's
   fm_reset_variable(id);
}

public fw_PalyerSpawn_Post(id)
   {
   if (!is_user_alive(id) || cs_get_user_team(id) != CS_TEAM_T)
      return;
   
   ShowMenuKnife(id);
   fm_reset_variable(id);
}

public ShowMenuKnife(id)
   {
   new szTitle[128];
   formatex(szTitle, charsmax(szTitle), "\rFurien Knife Menu^n\yCredite: \w%d", fcs_get_user_credits(id));
   
   new szMenu = menu_create(szTitle, "KnifeMenuHandler");
   
   menu_additem(szMenu, "Ignes", "1");
   menu_additem(szMenu, "Katana", "2");
   menu_additem(szMenu, "xFother^n", "3");
   menu_additem(szMenu, "Ruyi          \r[ \y15 Credits \r]", "4");
   menu_additem(szMenu, "Psiho   \r[ \y20 Credits \r]", "5");
   menu_additem(szMenu, "Saber Light   \r[ \y25 Credits \r]", "6");
   
   if(is_user_vip(id))
      menu_additem (szMenu, "Balrog XI   \r[ \rONLY VIP \r]", "7");
   else
   menu_additem (szMenu, "Balrog XI    \r[ \dONLY VIP \r]", "7");
   
   menu_setprop(szMenu, MPROP_EXIT, MEXIT_ALL);
   menu_display(id, szMenu, 0);
   
   return PLUGIN_HANDLED;
}

public KnifeMenuHandler(id, szMenu, item)
   {
   if(item == MENU_EXIT || !is_user_alive(id) || cs_get_user_team(id) != CS_TEAM_T)
      {
      menu_destroy(szMenu);
      return PLUGIN_HANDLED;
   }
   
   new data[6], szName[64], iaccess, callback;
   menu_item_getinfo(szMenu, item, iaccess, data,charsmax (data), szName,charsmax (szName), callback);
   new key = str_to_num(data);
   
   switch (key)
   {
      case 1:
      {
         g_bKnifeIgnes[id]   = true;
         g_bKnifeChoosen[id]   = true;
         
         event_CurrentWeapon(id);
         ChatColor(id, "!g[Furien] !nYou have chosen knife !tSkull");
      }
      
      case 2:
      {
         g_bKnifeKatana[id]   = true;
         g_bKnifeChoosen[id]   = true;
         
         event_CurrentWeapon(id);
         ChatColor(id, "!g[Furien] !nYou have chosen knife !tKatana");
      }
      
      case 3:
      {
         g_bKnifexFother[id]   = true;
         g_bKnifeChoosen[id]   = true;
         
         event_CurrentWeapon(id);
         ChatColor(id, "!g[Furien] !nYou have chosen knife !txFother");
      }
      
      case 4:
      {
         if (fcs_get_user_credits(id) < 15)
            {
            ShowMenuKnife(id);
            ChatColor(id, "!g[Furien] !nYou don't have enough credits to buy !tRuyi");
         }
         
         else
         {  
            set_user_ruyistick(id, 1);
            g_bKnifeChoosen[id]   = true;
            
            event_CurrentWeapon(id);            
            fcs_set_user_credits(id, fcs_get_user_credits(id) - 15);
            ChatColor(id, "!g[Furien] !nYou bought !tRuyi !nfor !t15 credits");
         }
      }
      
      case 5:
      {  
         if (fcs_get_user_credits(id) < 20)
            {
            ShowMenuKnife(id);
            ChatColor(id, "!g[Furien] !nYou don't have enough credits to buy !tPsiho");            
         }
         
         else
         {
            g_bKnifeDualKatana[id]   = true;
            g_bKnifeChoosen[id]   = true;
            
            event_CurrentWeapon(id);                                    
            fcs_set_user_credits(id, fcs_get_user_credits(id) - 20);
            ChatColor(id, "!g[Furien] !nYou bought !tPsiho !nfor !t20 credits");
         }
      }
      
      case 6:
      {
         if (fcs_get_user_credits(id) < 25)
            {
            ShowMenuKnife(id);
            ChatColor(id, "!g[Furien] !nYou don't have enough credits to buy !tSaber Light");
         }
         
         else
         {
            give_saber(id, 1);
            g_bKnifeChoosen[id]   = true;
            
            event_CurrentWeapon(id);
            fcs_set_user_credits(id, fcs_get_user_credits(id) - 25);            
            ChatColor(id, "!g[Furien] !nYou bought !tSaber Light !nfor !t25 credits");
         }
      }
      
      case 7:
      {
         if(is_user_vip(id))
            {
            give_barlog9(id);
            g_bKnifeChoosen[id]      = true;
            
            event_CurrentWeapon(id);
            ChatColor(id, "!g[Furien VIP] !nYou have chosen knife !tBalrog XI");
         }
         
         else
         {
            ChatColor(id, "!g[Furien VIP] !nFor more details contact owner.");
            ShowMenuKnife(id);
         }
      }
   }
   
   menu_destroy (szMenu);
   return PLUGIN_HANDLED;
}

public Player_TakeDamage ( iVictim, iInflictor, iAttacker, Float:fDamage, iDamageBits ) 
{
	if ( IsPlayer ( iAttacker ) ) {
		
		if( get_user_weapon( iAttacker) == CSW_KNIFE && g_bKnifeIgnes[ iAttacker ] ) {
			SetHamParamFloat( 4, fDamage * 1.5 );
			return HAM_HANDLED;
		}
		if( get_user_weapon( iAttacker) == CSW_KNIFE && g_bKnifeKatana[ iAttacker ] ) {
			SetHamParamFloat( 4, fDamage * 1.8 );
			return HAM_HANDLED;
		}
		if( get_user_weapon( iAttacker) == CSW_KNIFE && g_bKnifexFother[ iAttacker ] ) {
			SetHamParamFloat( 4, fDamage * 2.0 );
			return HAM_HANDLED;
		}
		if( get_user_weapon( iAttacker) == CSW_KNIFE && g_bKnifeDualKatana[ iAttacker ] ) {
			SetHamParamFloat( 4, fDamage * 3.0 );
			return HAM_HANDLED;
		}
	}
	
	return HAM_IGNORED;
}
public fw_PlayerKilled( victim, attacker, shouldgib ) {

   give_saber(victim, 0)   
}


public event_CurrentWeapon(id)
   {
   if (get_user_weapon(id) == CSW_KNIFE)
      {
      if(g_bKnifeIgnes[id])
         set_pev(id, pev_viewmodel2, g_szKnifeModels[0]);
      
      if(g_bKnifeKatana[id])
         set_pev(id, pev_viewmodel2, g_szKnifeModels[1]);
      
      if(g_bKnifexFother[id])
         set_pev(id, pev_viewmodel2, g_szKnifeModels[2]);
      
      if(g_bKnifeDualKatana[id])
         set_pev(id, pev_viewmodel2, g_szKnifeModels[3]);
   }
}

public ClCmdSayKnife(id)
   {
   if (!is_user_alive(id) || cs_get_user_team(id) != CS_TEAM_T && g_bKnifeChoosen[id])
      return;
   
   ShowMenuKnife(id);
}

public fm_reset_variable(id)
   {
   give_saber(id, 0)
   g_bKnifeIgnes[id]      = false;
   g_bKnifeKatana[id]      = false;
   g_bKnifexFother[id]      = false;
   g_bKnifeDualKatana[id]      = false;
   g_bKnifeChoosen[id]      = false;
   set_user_ruyistick(id, 0);// pe false

}

stock ChatColor(const id, const input[], any:...)
   {
   new count = 1, players[32];
   static msg[191];
   vformat(msg, 190, input, 3);
   
   replace_all(msg, 190, "!g", "^4"); // Green Color
   replace_all(msg, 190, "!n", "^1"); // Default Color
   replace_all(msg, 190, "!t", "^3"); // Team Color
   replace_all(msg, 190, "!t2", "^0"); // Team2 Color
   
   if (id) players[0] = id; else get_players(players, count, "ch"); {
      for (new i = 0; i < count; i++) {
         if (is_user_connected(players[i])) {
            message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players[i]);
            write_byte(players[i]);
            write_string(msg);
            message_end();
         }
      }
   }
}[/spoiler]
am mai testat si asta[/quote]
scz de 2x post deja ma doare capul..
Nubo
Nou Venit
Nou Venit
Mesaje: 3
Membru din: Dum Feb 22, 2015 4:18 pm
Detinator Steam: Nu

Re: modificare cutit

Mesaj de Nubo »

Am schimbat takedamage pe traceattack. Testeaza:

Cod: Selectaţi tot

#include <amxmodx>
#include <cstrike>
#include <fakemeta>
#include <hamsandwich>
#include <fun>

new const PLUGIN[] = "Furien Spawn Knife Menu";
new const VERSION[] = "0.1.1";

//#define is_user_valid(%0)       (1 <= %0 <= g_iMaxPlayers)
#define is_user_vip(%1)         (get_user_flags(%1) & ADMIN_LEVEL_H)

// Customization vars
new bool:g_bKnifeIgnes[33], bool:g_bKnifeKatana[33], bool:g_bKnifexFother[33], 
bool:g_bKnifeDualKatana[33], bool:g_bKnifeChoosen[33];

new const g_szKnifeModels[][] =
{
	"models/furien_knife/v_ignes.mdl",
	"models/furien_knife/v_katana.mdl",
	"models/furien_knife/v_xfother.mdl",
	"models/furien_knife/v_psiho.mdl"
};

//Native
native fcs_get_user_credits(id);
native fcs_set_user_credits(id, credits);
native give_saber(id, value);
//native remove_saber(id);
native set_user_ruyistick(id, value);
//native remove_ruyi(id);
native give_barlog9(id);

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

public plugin_init()
	{
	register_plugin(PLUGIN, VERSION, "Adventx");
	
	// Events
	register_event("CurWeapon", "event_CurrentWeapon", "be", "1=1");
	
	// HAM Forwards
	RegisterHam(Ham_Spawn, "player", "fw_PalyerSpawn_Post", 1);
	//RegisterHam(Ham_TakeDamage, "player", "fw_PlayerTakeDamage");
	RegisterHam(Ham_TraceAttack, "player", "fw_TraceAttack");
	RegisterHam( Ham_Killed, "player", "fw_PlayerKilled" );

	// Client Commands
	register_clcmd("say /knife","clcmd_knife");
	
	// Vars
	//g_iMaxPlayers = get_maxplayers();
}

public plugin_precache()
	{
	// Precache Models
	for (new i = 0; i < sizeof g_szKnifeModels; i++)
		engfunc(EngFunc_PrecacheModel, g_szKnifeModels[i]);
}

public client_putinserver(id)
	{
	// reset boolean's
	fm_reset_variable(id);
}

public fw_PalyerSpawn_Post(id)
	{
	if (!is_user_alive(id) || cs_get_user_team(id) != CS_TEAM_T)
		return;
	
	ShowMenuKnife(id);
	fm_reset_variable(id);
}

public ShowMenuKnife(id)
	{
	new szTitle[128];
	formatex(szTitle, charsmax(szTitle), "\rFurien Knife Menu^n\yCredite: \w%d", fcs_get_user_credits(id));
	
	new szMenu = menu_create(szTitle, "KnifeMenuHandler");
	
	menu_additem(szMenu, "Ignes", "1");
	menu_additem(szMenu, "Katana", "2");
	menu_additem(szMenu, "xFother^n", "3");
	menu_additem(szMenu, "Ruyi          \r[ \y15 Credits \r]", "4");
	menu_additem(szMenu, "Psiho   \r[ \y20 Credits \r]", "5");
	menu_additem(szMenu, "Saber Light   \r[ \y25 Credits \r]", "6");
	
	if(is_user_vip(id))
		menu_additem (szMenu, "Balrog XI   \r[ \rONLY VIP \r]", "7");
	else
	menu_additem (szMenu, "Balrog XI    \r[ \dONLY VIP \r]", "7");
	
	menu_setprop(szMenu, MPROP_EXIT, MEXIT_ALL);
	menu_display(id, szMenu, 0);
	
	return PLUGIN_HANDLED;
}

public KnifeMenuHandler(id, szMenu, item)
	{
	if(item == MENU_EXIT || !is_user_alive(id) || cs_get_user_team(id) != CS_TEAM_T)
		{
		menu_destroy(szMenu);
		return PLUGIN_HANDLED;
	}
	
	new data[6], szName[64], iaccess, callback;
	menu_item_getinfo(szMenu, item, iaccess, data,charsmax (data), szName,charsmax (szName), callback);
	new key = str_to_num(data);
	
	switch (key)
	{
		case 1:
		{
			g_bKnifeIgnes[id]   = true;
			g_bKnifeChoosen[id]   = true;
			
			event_CurrentWeapon(id);
			ChatColor(id, "!g[Furien] !nYou have chosen knife !tSkull");
		}
		
		case 2:
		{
			g_bKnifeKatana[id]   = true;
			g_bKnifeChoosen[id]   = true;
			
			event_CurrentWeapon(id);
			ChatColor(id, "!g[Furien] !nYou have chosen knife !tKatana");
		}
		
		case 3:
		{
			g_bKnifexFother[id]   = true;
			g_bKnifeChoosen[id]   = true;
			
			event_CurrentWeapon(id);
			ChatColor(id, "!g[Furien] !nYou have chosen knife !txFother");
		}
		
		case 4:
		{
			if (fcs_get_user_credits(id) < 15)
				{
				ShowMenuKnife(id);
				ChatColor(id, "!g[Furien] !nYou don't have enough credits to buy !tRuyi");
			}
			
			else
			{  
				set_user_ruyistick(id, 1);
				g_bKnifeChoosen[id]   = true;
				
				event_CurrentWeapon(id);            
				fcs_set_user_credits(id, fcs_get_user_credits(id) - 15);
				ChatColor(id, "!g[Furien] !nYou bought !tRuyi !nfor !t15 credits");
			}
		}
		
		case 5:
		{  
			if (fcs_get_user_credits(id) < 20)
				{
				ShowMenuKnife(id);
				ChatColor(id, "!g[Furien] !nYou don't have enough credits to buy !tPsiho");            
			}
			
			else
			{
				g_bKnifeDualKatana[id]   = true;
				g_bKnifeChoosen[id]   = true;
				
				event_CurrentWeapon(id);                                    
				fcs_set_user_credits(id, fcs_get_user_credits(id) - 20);
				ChatColor(id, "!g[Furien] !nYou bought !tPsiho !nfor !t20 credits");
			}
		}
		
		case 6:
		{
			if (fcs_get_user_credits(id) < 25)
				{
				ShowMenuKnife(id);
				ChatColor(id, "!g[Furien] !nYou don't have enough credits to buy !tSaber Light");
			}
			
			else
			{
				give_saber(id, 1);
				g_bKnifeChoosen[id]   = true;
				
				event_CurrentWeapon(id);
				fcs_set_user_credits(id, fcs_get_user_credits(id) - 25);            
				ChatColor(id, "!g[Furien] !nYou bought !tSaber Light !nfor !t25 credits");
			}
		}
		
		case 7:
		{
			if(is_user_vip(id))
				{
				give_barlog9(id);
				g_bKnifeChoosen[id]      = true;
				
				event_CurrentWeapon(id);
				ChatColor(id, "!g[Furien VIP] !nYou have chosen knife !tBalrog XI");
			}
			
			else
			{
				ChatColor(id, "!g[Furien VIP] !nFor more details contact owner.");
				ShowMenuKnife(id);
			}
		}
	}
	
	menu_destroy (szMenu);
	return PLUGIN_HANDLED;
}
/*
public fw_PlayerTakeDamage(iVictim, iInflictor, iAttacker, Float:fDamage, iDamageBits)
{
	if ( IsPlayer(iAttacker) && iAttacker == iInflictor && get_user_weapon(iAttacker) == CSW_KNIFE)
	{
		if (g_bKnifeIgnes[iAttacker])
			SetHamParamFloat(4, fDamage * 1.5);
		
		if (g_bKnifeKatana[iAttacker])
			SetHamParamFloat(4, fDamage * 1.8);
		
		if (g_bKnifexFother[iAttacker])
			SetHamParamFloat(4, fDamage * 2.0);
		
		if (g_bKnifeDualKatana[iAttacker])
			SetHamParamFloat(4, fDamage * 3.0);
		
		return HAM_HANDLED;
	}
	return HAM_IGNORED;
}*/

public fw_TraceAttack(Victim, Attacker, Float:Damage, Float:Direction[3], TraceHandle, DamageBit)
{
	if( !is_user_alive(Attacker) || !is_user_alive(Victim) )
		return HAM_IGNORED;
	if( cs_get_user_team(Attacker) == cs_get_user_team(Victim) )
		return HAM_IGNORED;
	if(get_user_weapon(Attacker) != CSW_KNIFE)
		return HAM_IGNORED;
	//if(!g_has_ruyi[Attacker])
	//	return HAM_IGNORED
		
	if(g_bKnifeIgnes[Attacker])
			SetHamParamFloat(3, Damage * 1.5);
	else if(g_bKnifeKatana[Attacker])
		SetHamParamFloat(3, Damage * 1.8);
	else if(g_bKnifexFother[Attacker])
		SetHamParamFloat(3, Damage * 2.0);
	else if(g_bKnifeDualKatana[Attacker])
		SetHamParamFloat(3, Damage * 3.0);
	
	//SetHamParamFloat(3, g_attack_type[Attacker] == ATTACK_SLASH ? RUYI_DAMAGE_SLASH : RUYI_DAMAGE_STAB)
	
	return HAM_IGNORED;
}

public fw_PlayerKilled( victim, attacker, shouldgib ) {

	give_saber(victim, 0)   
}


public event_CurrentWeapon(id)
	{
	if (get_user_weapon(id) == CSW_KNIFE)
		{
		if(g_bKnifeIgnes[id])
			set_pev(id, pev_viewmodel2, g_szKnifeModels[0]);
		
		if(g_bKnifeKatana[id])
			set_pev(id, pev_viewmodel2, g_szKnifeModels[1]);
		
		if(g_bKnifexFother[id])
			set_pev(id, pev_viewmodel2, g_szKnifeModels[2]);
		
		if(g_bKnifeDualKatana[id])
			set_pev(id, pev_viewmodel2, g_szKnifeModels[3]);
	}
}

public ClCmdSayKnife(id)
	{
	if (!is_user_alive(id) || cs_get_user_team(id) != CS_TEAM_T && g_bKnifeChoosen[id])
		return;
	
	ShowMenuKnife(id);
}

public fm_reset_variable(id)
	{
	give_saber(id, 0)
	g_bKnifeIgnes[id]      = false;
	g_bKnifeKatana[id]      = false;
	g_bKnifexFother[id]      = false;
	g_bKnifeDualKatana[id]      = false;
	g_bKnifeChoosen[id]      = false;
	set_user_ruyistick(id, 0);// pe false

}

stock ChatColor(const id, const input[], any:...)
	{
	new count = 1, players[32];
	static msg[191];
	vformat(msg, 190, input, 3);
	
	replace_all(msg, 190, "!g", "^4"); // Green Color
	replace_all(msg, 190, "!n", "^1"); // Default Color
	replace_all(msg, 190, "!t", "^3"); // Team Color
	replace_all(msg, 190, "!t2", "^0"); // Team2 Color
	
	if (id) players[0] = id; else get_players(players, count, "ch"); {
		for (new i = 0; i < count; i++) {
			if (is_user_connected(players[i])) {
				message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players[i]);
				write_byte(players[i]);
				write_string(msg);
				message_end();
			}
		}
	}
}
*Or!g!naL*
Nou Venit
Nou Venit
Mesaje: 9
Membru din: Sâm Feb 21, 2015 3:48 pm
Detinator Steam: Nu

Re: modificare cutit

Mesaj de *Or!g!naL* »

e super ok ^:)^

Cod: Selectaţi tot

#include <amxmodx>
#include <cstrike>
#include <fakemeta>
#include <hamsandwich>
#include <fun>

new const PLUGIN[] = "Furien Spawn Knife Menu";
new const VERSION[] = "0.1.1";

//#define is_user_valid(%0)       (1 <= %0 <= g_iMaxPlayers)
#define is_user_vip(%1)         (get_user_flags(%1) & ADMIN_LEVEL_H)

// Customization vars
new bool:g_bKnifeIgnes[33], bool:g_bKnifeKatana[33], bool:g_bKnifexFother[33], bool:g_bKnifeDualKatana[33], bool:g_bKnifeChoosen[33], bool:g_bKnifeRegeneratorElf[33];

new const g_szKnifeModels[][] =
{
   "models/furien_knife/v_ignes.mdl",
   "models/furien_knife/v_katana.mdl",
   "models/furien_knife/v_xfother.mdl",
   "models/furien_knife/v_psiho.mdl",
   "models/furien_knife/v_elf_christmas.mdl"
};

//Native
native fcs_get_user_credits(id);
native fcs_set_user_credits(id, credits);
native give_saber(id, value);
//native remove_saber(id);
native set_user_ruyistick(id, value);
//native remove_ruyi(id);
native give_barlog9(id);

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

public plugin_init()
   {
   register_plugin(PLUGIN, VERSION, "Adventx");
   
   // Events
   register_event("CurWeapon", "event_CurrentWeapon", "be", "1=1");
   
   // HAM Forwards
   RegisterHam(Ham_Spawn, "player", "fw_PalyerSpawn_Post", 1);
   //RegisterHam(Ham_TakeDamage, "player", "fw_PlayerTakeDamage");
   RegisterHam(Ham_TraceAttack, "player", "fw_TraceAttack");
   RegisterHam( Ham_Killed, "player", "fw_PlayerKilled" );

   // Client Commands
   register_clcmd("say /knife","clcmd_knife");
   
   // Vars
   //g_iMaxPlayers = get_maxplayers();
}

public plugin_precache()
   {
   // Precache Models
   for (new i = 0; i < sizeof g_szKnifeModels; i++)
      engfunc(EngFunc_PrecacheModel, g_szKnifeModels[i]);
}

public client_putinserver(id)
   {
   // reset boolean's
   fm_reset_variable(id);
}

public fw_PalyerSpawn_Post(id)
   {
   if (!is_user_alive(id) || cs_get_user_team(id) != CS_TEAM_T)
      return;
   
   ShowMenuKnife(id);
   fm_reset_variable(id);
}

public ShowMenuKnife(id)
   {
   new szTitle[128];
   formatex(szTitle, charsmax(szTitle), "\rFurien Knife Menu^n\yCredite: \w%d", fcs_get_user_credits(id));
   
   new szMenu = menu_create(szTitle, "KnifeMenuHandler");
   
   menu_additem(szMenu, "Ignes", "1");
   menu_additem(szMenu, "Katana", "2");
   menu_additem(szMenu, "xFother^n", "3");
   menu_additem(szMenu, "Ruyi          \r[ \y15 Credits \r]", "4");
   menu_additem(szMenu, "Psiho   \r[ \y20 Credits \r]", "5");
   menu_additem(szMenu, "Saber Light   \r[ \y25 Credits \r]", "6");
   if(is_user_vip(id))
      menu_additem (szMenu, "Elf   \r[ \rONLY VIP \r]", "7");
   else
   menu_additem (szMenu, "Elf    \r[ \dONLY VIP \r]", "7");
   if(is_user_vip(id))
      menu_additem (szMenu, "Balrog XI   \r[ \rONLY VIP \r]", "8");
   else
   menu_additem (szMenu, "Balrog XI    \r[ \dONLY VIP \r]", "8");
   
   menu_setprop(szMenu, MPROP_EXIT, MEXIT_ALL);
   menu_display(id, szMenu, 0);
   
   return PLUGIN_HANDLED;
}

public KnifeMenuHandler(id, szMenu, item)
   {
   if(item == MENU_EXIT || !is_user_alive(id) || cs_get_user_team(id) != CS_TEAM_T)
      {
      menu_destroy(szMenu);
      return PLUGIN_HANDLED;
   }
   
   new data[6], szName[64], iaccess, callback;
   menu_item_getinfo(szMenu, item, iaccess, data,charsmax (data), szName,charsmax (szName), callback);
   new key = str_to_num(data);
   
   switch (key)
   {
      case 1:
      {
         g_bKnifeIgnes[id]   = true;
         g_bKnifeChoosen[id]   = true;
         
         event_CurrentWeapon(id);
         ChatColor(id, "!g[Furien] !nYou have chosen knife !tSkull");
      }
      
      case 2:
      {
         g_bKnifeKatana[id]   = true;
         g_bKnifeChoosen[id]   = true;
         
         event_CurrentWeapon(id);
         ChatColor(id, "!g[Furien] !nYou have chosen knife !tKatana");
      }
      
      case 3:
      {
         g_bKnifexFother[id]   = true;
         g_bKnifeChoosen[id]   = true;
         
         event_CurrentWeapon(id);
         ChatColor(id, "!g[Furien] !nYou have chosen knife !txFother");
      }
      
      case 4:
      {
         if (fcs_get_user_credits(id) < 15)
            {
            ShowMenuKnife(id);
            ChatColor(id, "!g[Furien] !nYou don't have enough credits to buy !tRuyi");
         }
         
         else
         {  
            set_user_ruyistick(id, 1);
            g_bKnifeChoosen[id]   = true;
            
            event_CurrentWeapon(id);            
            fcs_set_user_credits(id, fcs_get_user_credits(id) - 15);
            ChatColor(id, "!g[Furien] !nYou bought !tRuyi !nfor !t15 credits");
         }
      }
      
      case 5:
      {  
         if (fcs_get_user_credits(id) < 20)
            {
            ShowMenuKnife(id);
            ChatColor(id, "!g[Furien] !nYou don't have enough credits to buy !tPsiho");            
         }
         
         else
         {
            g_bKnifeDualKatana[id]   = true;
            g_bKnifeChoosen[id]   = true;
            
            event_CurrentWeapon(id);                                    
            fcs_set_user_credits(id, fcs_get_user_credits(id) - 20);
            ChatColor(id, "!g[Furien] !nYou bought !tPsiho !nfor !t20 credits");
         }
      }
      
      case 6:
      {
         if (fcs_get_user_credits(id) < 25)
            {
            ShowMenuKnife(id);
            ChatColor(id, "!g[Furien] !nYou don't have enough credits to buy !tSaber Light");
         }
         
         else
         {
            give_saber(id, 1);
            g_bKnifeChoosen[id]   = true;
            
            event_CurrentWeapon(id);
            fcs_set_user_credits(id, fcs_get_user_credits(id) - 25);            
            ChatColor(id, "!g[Furien] !nYou bought !tSaber Light !nfor !t25 credits");
         }
      }
       case 7:
      {
         if(is_user_vip(id))
         {
            g_bKnifeRegeneratorElf[id]   = true;
            g_bKnifeChoosen[id]      = true;
            
            event_CurrentWeapon(id);
            ChatColor(id, "!g[Furien VIP] !nYou have chosen knife !tRegenerator Elf");
         }
         
         else
         {
            ChatColor(id, "!g[Furien VIP] !nFor more details contact owner");
            ShowMenuKnife(id);
         }
      }
      case 8:
      {
         if(is_user_vip(id))
            {
            give_barlog9(id);
            g_bKnifeChoosen[id]      = true;
            
            event_CurrentWeapon(id);
            ChatColor(id, "!g[Furien VIP] !nYou have chosen knife !tBalrog XI");
         }
         
         else
         {
            ChatColor(id, "!g[Furien VIP] !nFor more details contact owner.");
            ShowMenuKnife(id);
         }
      }
   }
   
   menu_destroy (szMenu);
   return PLUGIN_HANDLED;
}
/*
public fw_PlayerTakeDamage(iVictim, iInflictor, iAttacker, Float:fDamage, iDamageBits)
{
   if ( IsPlayer(iAttacker) && iAttacker == iInflictor && get_user_weapon(iAttacker) == CSW_KNIFE)
   {
      if (g_bKnifeIgnes[iAttacker])
         SetHamParamFloat(4, fDamage * 1.5);
      
      if (g_bKnifeKatana[iAttacker])
         SetHamParamFloat(4, fDamage * 1.8);
      
      if (g_bKnifexFother[iAttacker])
         SetHamParamFloat(4, fDamage * 2.0);
      
      if (g_bKnifeDualKatana[iAttacker])
         SetHamParamFloat(4, fDamage * 3.0);

      if (g_bKnifeRegeneratorElf[iAttacker])
	 SetHamParamFloat(4, fDamage *3.0);
      
      return HAM_HANDLED;
   }
   return HAM_IGNORED;
}*/

public fw_TraceAttack(Victim, Attacker, Float:Damage, Float:Direction[3], TraceHandle, DamageBit)
{
   if( !is_user_alive(Attacker) || !is_user_alive(Victim) )
      return HAM_IGNORED;
   if( cs_get_user_team(Attacker) == cs_get_user_team(Victim) )
      return HAM_IGNORED;
   if(get_user_weapon(Attacker) != CSW_KNIFE)
      return HAM_IGNORED;
   //if(!g_has_ruyi[Attacker])
   //   return HAM_IGNORED
      
   if(g_bKnifeIgnes[Attacker])
         SetHamParamFloat(3, Damage * 1.5);
   else if(g_bKnifeKatana[Attacker])
      SetHamParamFloat(3, Damage * 1.8);
   else if(g_bKnifexFother[Attacker])
      SetHamParamFloat(3, Damage * 2.0);
   else if(g_bKnifeDualKatana[Attacker])
      SetHamParamFloat(3, Damage * 3.0);
   else if(g_bKnifeRegeneratorElf[Attacker])
      SetHamParamFloat(3, Damage * 3.0);
   
   //SetHamParamFloat(3, g_attack_type[Attacker] == ATTACK_SLASH ? RUYI_DAMAGE_SLASH : RUYI_DAMAGE_STAB)
   
   return HAM_IGNORED;
}

public fw_PlayerKilled( victim, attacker, shouldgib ) {

   give_saber(victim, 0)   
}


public event_CurrentWeapon(id)
   {
   if (get_user_weapon(id) == CSW_KNIFE)
      {
      if(g_bKnifeIgnes[id])
         set_pev(id, pev_viewmodel2, g_szKnifeModels[0]);
      
      if(g_bKnifeKatana[id])
         set_pev(id, pev_viewmodel2, g_szKnifeModels[1]);
      
      if(g_bKnifexFother[id])
         set_pev(id, pev_viewmodel2, g_szKnifeModels[2]);
      
      if(g_bKnifeDualKatana[id])
         set_pev(id, pev_viewmodel2, g_szKnifeModels[3]);

      if(g_bKnifeRegeneratorElf[id])
         set_pev(id, pev_viewmodel2, g_szKnifeModels[4]);

   }
}

public ClCmdSayKnife(id)
   {
   if (!is_user_alive(id) || cs_get_user_team(id) != CS_TEAM_T && g_bKnifeChoosen[id])
      return;
   
   ShowMenuKnife(id);
}

public fm_reset_variable(id)
   {
   give_saber(id, 0)
   g_bKnifeIgnes[id]      = false;
   g_bKnifeKatana[id]      = false;
   g_bKnifexFother[id]      = false;
   g_bKnifeDualKatana[id]      = false;
   g_bKnifeChoosen[id]      = false;
   set_user_ruyistick(id, 0);// pe false
   g_bKnifeRegeneratorElf[id]   = false;

}

stock ChatColor(const id, const input[], any:...)
   {
   new count = 1, players[32];
   static msg[191];
   vformat(msg, 190, input, 3);
   
   replace_all(msg, 190, "!g", "^4"); // Green Color
   replace_all(msg, 190, "!n", "^1"); // Default Color
   replace_all(msg, 190, "!t", "^3"); // Team Color
   replace_all(msg, 190, "!t2", "^0"); // Team2 Color
   
   if (id) players[0] = id; else get_players(players, count, "ch"); {
      for (new i = 0; i < count; i++) {
         if (is_user_connected(players[i])) {
            message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players[i]);
            write_byte(players[i]);
            write_string(msg);
            message_end();
         }
      }
   }
}
am mai bagat eu un knife cum ii pun 150 hp cand il iei ?

Cod: Selectaţi tot

new bool:g_bKnifeIgnes[33], bool:g_bKnifeKatana[33], bool:g_bKnifexFother[33], bool:g_bKnifeDualKatana[33], bool:g_bKnifeChoosen[33], bool:g_bKnifeRegeneratorElf[33];
am pus asa ,o sa mai apara loc liber dupa primele 3 knifuri ? sau d eunde modific ?
Nubo
Nou Venit
Nou Venit
Mesaje: 3
Membru din: Dum Feb 22, 2015 4:18 pm
Detinator Steam: Nu

Re: modificare cutit

Mesaj de Nubo »

Pare sa fie pus bine. Nu iti merge?

Cod: Selectaţi tot

case 7:
      {
         if(is_user_vip(id))
         {
            g_bKnifeRegeneratorElf[id]   = true;
            g_bKnifeChoosen[id]      = true;
            
            //alegi una din ele, de la care stergi "//"
            //set_user_health(id, 150) // va seta 150hp indiferent de hp-ul avut
            //set_user_health(id, get_user_health(id) + 150) // adauga 150hp la hp-ul avut
            
            event_CurrentWeapon(id);
            ChatColor(id, "!g[Furien VIP] !nYou have chosen knife !tRegenerator Elf");
         }
         
         else
         {
            ChatColor(id, "!g[Furien VIP] !nFor more details contact owner");
            ShowMenuKnife(id);
         }
      }
*Or!g!naL*
Nou Venit
Nou Venit
Mesaje: 9
Membru din: Sâm Feb 21, 2015 3:48 pm
Detinator Steam: Nu

Re: modificare cutit

Mesaj de *Or!g!naL* »

aha deci set_user_health(id, 150) e pt a seta hpul ,dar cum fac sa scot acel loc liber ?
si e normal ca la 3 lovituri consecutive (click dreapta ) sa se dubleze dmgu ?la psiho de la 500 se duce la 1300 +