modificare plugin weapons>>knife

Categoria cu cereri de pluginuri si nu numai.

Moderators: Moderatori ajutatori, Moderatori, Echipa eXtreamCS.com

Forum rules
Accesează link-ul pentru a putea vedea regulile forumului

Daca doriti sa vi se modifice un plugin, va rugam postati aici .
Post Reply
User avatar
Rony
Utilizator neserios (tepar)
Utilizator neserios (tepar)
Posts: 966
Joined: 11 Mar 2013, 11:43
Detinator Steam: Da
CS Status: CO-FOUNDER BETANO
Detinator server CS: CS1.6 , CS:GO
SteamID: 31r1
Reputatie: Membru Club eXtreamCS (1 luna)
Membru Club eXtreamCs (28 Feb)
Utilizator neserios (tepar)
Location: NAPOLI
Has thanked: 173 times
Been thanked: 66 times
Contact:

22 Aug 2013, 18:49

cand iau armele nu-mi da knife... care il poate pune si la ct si t

Code: Select all

#include <  amxmodx  >
#include <  cstrike  >
#include <  engine  >
#include <  hamsandwich  >
#include <  fun  >
#include <  ColorChat  >

#pragma semicolon 1


#define PLUGIN "FMU Weapons Menu"
#define VERSION "1.0"



// Null ( do not modify )
#define 	NULL			0

// Max number of secondary weapons ( Pistols.. ).Do not modify.
#define		MAX_SECONDARY		7



// These determine if these secondary weapons ( Pistols.. ) should be enabled or disabled.
// 1 = enabled
// 0 = disabled

#define		ENABLE_USP		1
#define		ENABLE_GLOCK		1
#define		ENABLE_DEAGLE		1
#define		ENABLE_P228		1
#define		ENABLE_ELITE		1
#define		ENABLE_FIVESEVEN	1




// Max number of primary weapons ( Guns.. ).Do not modify.
#define 	MAX_PRIMARY		19


// These determine if these primary weapons ( Guns.. ) should be enabled or disabled.
// 1 = enabled
// 0 = disabled

#define		ENABLE_M4A1		1
#define		ENABLE_AK47		1
#define		ENABLE_AUG		1
#define		ENABLE_SG552		1
#define		ENABLE_GALIL		1
#define		ENABLE_FAMAS		1
#define		ENABLE_SCOUT		1
#define		ENABLE_AWP		1
#define		ENABLE_SG550		1
#define		ENABLE_M249		1
#define		ENABLE_G3SG1		1
#define		ENABLE_UMP45		1
#define		ENABLE_MP5NAVY		1
#define		ENABLE_M3		1
#define		ENABLE_XM1014		1
#define		ENABLE_TMP		1
#define		ENABLE_MAC10		1
#define		ENABLE_P90		1



// Max number of Grenades .Do not modify.
#define 	MAX_NADES		5


// These determine if these grenades should be enabled or disabled.
// 1 = enabled
// 0 = disabled

#define		ENABLE_FURIEN_NADES		1


#define		ENABLE_FURIEN_HE		1
#define		ENABLE_FURIEN_FLASHBANG1	0
#define		ENABLE_FURIEN_FLASHBANG2	1
#define		ENABLE_FURIEN_SMOKEGRENADE	1



#define		ENABLE_ANTIFURIEN_NADES		1


#define		ENABLE_ANTIFURIEN_HE     	0
#define		ENABLE_ANTIFURIEN_FLASHBANG1	0
#define		ENABLE_ANTIFURIEN_FLASHBANG2	1
#define		ENABLE_ANTIFURIEN_SMOKEGRENADE	1


/*======================================= - | Askhanar | - =======================================*/

new const gSecondaryWeaponsEnabled[  MAX_SECONDARY  ]  =
{
	
	NULL,
	ENABLE_USP,
	ENABLE_GLOCK,
	ENABLE_DEAGLE,
	ENABLE_P228,
	ENABLE_ELITE,
	ENABLE_FIVESEVEN
	
};

/*======================================= - | Askhanar | - =======================================*/

new const gSecondaryWeaponsName[  MAX_SECONDARY  ][    ]  =
{
	
"",
	"MK23 w[r30 ygloantew]",
	"Glock w[r30 ygloantew]",
	"Deagle w[r20 ygloantew]",
	"P228 w[r40 ygloantew]",
	"Dual-Deagle w[r60 ygloantew]",
	"Kimbear w[r60 ygloantew]"
	
};

/*======================================= - | Askhanar | - =======================================*/

new const gSecondaryWeaponsItemName[  MAX_SECONDARY  ][    ]  =
{
	
	"",
	"weapon_usp",
	"weapon_glock18",
	"weapon_deagle",
	"weapon_p228",
	"weapon_elite",
	"weapon_fiveseven"
	
};

/*======================================= - | Askhanar | - =======================================*/

new const gSecondaryWeaponsItemNum[  MAX_SECONDARY  ]  =
{
	
	NULL,
	CSW_USP,
	CSW_GLOCK18,
	CSW_DEAGLE,
	CSW_P228,
	CSW_ELITE,
	CSW_FIVESEVEN
	
};

/*======================================= - | Askhanar | - =======================================*/

new const gSecondaryWeaponsMaxClip[  MAX_SECONDARY  ]  =
{
	NULL,
	30,
	30,
	20,
	40,
	60,
	60
	
};

/*======================================= - | Askhanar | - =======================================*/

new const gSecondaryWeaponsMaxAmmo[  MAX_SECONDARY  ]  =
{
	NULL,
	80,
	80,
	80,
	80,
	80,
	80
	
};

/*======================================= - | Askhanar | - =======================================*/

new const gPrimaryWeaponsEnabled[  MAX_PRIMARY  ]  =
{
	
	NULL,
	ENABLE_M4A1,
	ENABLE_AK47,
	ENABLE_AUG,
	ENABLE_SG552,
	ENABLE_GALIL,
	ENABLE_FAMAS,
	ENABLE_SCOUT,
	ENABLE_AWP,
	ENABLE_SG550,
	ENABLE_M249,
	ENABLE_G3SG1,
	ENABLE_UMP45,
	ENABLE_MP5NAVY,
	ENABLE_M3,
	ENABLE_XM1014,
	ENABLE_TMP,
	ENABLE_MAC10,
	ENABLE_P90
	
};

/*======================================= - | Askhanar | - =======================================*/

new const gPrimaryWeaponsName[  MAX_PRIMARY  ][    ]  =
{
	
	"",
	"M4A1 w[r45 ygloantew]",
	"AK47 -Gold-Edition w[r45 ygloantew]",
	"AUG -PrO w[r70 ygloantew]",
	"XM8 -PrO w[r75 ygloantew]",
	"Galil -Gold-Edition w[r75 ygloantew]",
	"Famas BR2-PrO w[r35 ygloantew]",
	"Scout -Gold-Edition w[r30 ygloantew]",
	"AWP -Gold-Edition w[r30 ygloantew]",
	"M16A4 Sniper-PrO w[r70 ygloantew]",
	"M249 -PrO w[180 ygloantew]",
	"G3SG1 -Gold-Edition w[r70 ygloantew]",
	"UMP 45 -PrOw[r50 ygloantew]",
	"MP5 Navy -Dula-PrO w[r100 ygloantew]",
	"M3 -Gold-Edition w[r25 ygloantew]",
	"XM1014 -Pro w[r25 ygloantew]",
	"TMP -Pro w[r60 ygloantew]",
	"Mac 10 -Gold-Edition w[r50 ygloantew]",
	"P90 -DuaL -Prow[r100 ygloantew]"
	
};

/*======================================= - | Askhanar | - =======================================*/

new const gPrimaryWeaponsItemName[  MAX_PRIMARY  ][    ]  =
{
	
	"",
	"weapon_m4a1",
	"weapon_ak47",
	"weapon_aug",
	"weapon_sg552",
	"weapon_galil",
	"weapon_famas",
	"weapon_scout",
	"weapon_awp",
	"weapon_sg550",
	"weapon_m249",
	"weapon_g3sg1",
	"weapon_ump45",
	"weapon_mp5navy",
	"weapon_m3",
	"weapon_xm1014",
	"weapon_tmp",
	"weapon_mac10",
	"weapon_p90"
	
};

/*======================================= - | Askhanar | - =======================================*/

new const gPrimaryWeaponsItemNum[  MAX_PRIMARY  ]  =
{
	
	NULL,
	CSW_M4A1,
	CSW_AK47,
	CSW_AUG,
	CSW_SG552,
	CSW_GALIL,
	CSW_FAMAS,
	CSW_SCOUT,
	CSW_AWP,
	CSW_SG550,
	CSW_M249,
	CSW_G3SG1,
	CSW_UMP45,
	CSW_MP5NAVY,
	CSW_M3,
	CSW_XM1014,
	CSW_TMP,
	CSW_MAC10,
	CSW_P90
	
};

/*======================================= - | Askhanar | - =======================================*/

new const gPrimaryWeaponsMaxClip[  MAX_PRIMARY  ]  =
{
	
	NULL,
	45,
	45,
	30,
	30,
	30,
	35,
	30,
	30,
	30,
	40,
	70,
	50,
	35,
	25,
	25,
	60,
	50,
	100
	
};

/*======================================= - | Askhanar | - =======================================*/

new const gPrimaryWeaponsMaxAmmo[  MAX_PRIMARY  ]  =
{
	
	NULL,
	200,
	200,
	200,
	200,
	200,
	200,
	200,
	200,
	200,
	200,
	200,
	200,
	200,
	200,
	200,
	200,
	200,
	200,
	
};

/*======================================= - | Askhanar | - =======================================*/

new const gGrenadesEnabled[  CsTeams  ]  =
{
	
	NULL,
	ENABLE_FURIEN_NADES,
	ENABLE_ANTIFURIEN_NADES,
	NULL
	
};

new const gFurienNadeEnabled[  MAX_NADES  ]  =
{
	
	NULL,
	ENABLE_FURIEN_HE,
	ENABLE_FURIEN_FLASHBANG1,
	ENABLE_FURIEN_FLASHBANG2,
	ENABLE_FURIEN_SMOKEGRENADE
	
};

new const gAntiFurienNadeEnabled[  MAX_NADES  ]  =
{
	
	NULL,
	ENABLE_ANTIFURIEN_HE,
	ENABLE_ANTIFURIEN_FLASHBANG1,
	ENABLE_ANTIFURIEN_FLASHBANG2,
	ENABLE_ANTIFURIEN_SMOKEGRENADE
	
};

/*======================================= - | Askhanar | - =======================================*/

new const gGrenadesItemName[  MAX_NADES  ][    ]  =
{
	
	"",
	"weapon_hegrenade",
	"weapon_flashbang",
	"weapon_flashbang",
	"weapon_smokegrenade"
	
};

/*======================================= - | Askhanar | - =======================================*/

new gUserLastSecondaryWeapons[  33  ];
new gUserLastPrimaryWeapons[  33  ];

/*======================================= - | Askhanar | - =======================================*/

public plugin_init(    )
{
	register_plugin(  PLUGIN,  VERSION,  "Askhanar"  );
	
	register_clcmd(  "say /weapons", "ClCmdSayWeapons"  );
	
	RegisterHam(  Ham_Spawn,  "player",  "Ham_PlayerSpawnPost",  true  );
	
}

/*======================================= - | Askhanar | - =======================================*/

public client_putinserver(  id  )
{
	
	if(  is_user_bot(  id  )  ||  is_user_hltv(  id  )  )  return 0;
	
	gUserLastSecondaryWeapons[  id  ]  =  0;
	gUserLastPrimaryWeapons[  id  ]  =  0;
		
	return 0;
}

/*======================================= - | Askhanar | - =======================================*/

public client_disconnect(  id  )
{
		
	if(  is_user_bot(  id  )  ||  is_user_hltv(  id  )  )  return 0;
	
	gUserLastSecondaryWeapons[  id  ]  =  0;
	gUserLastPrimaryWeapons[  id  ]  =  0;
		
	return 0;
}

/*======================================= - | Askhanar | - =======================================*/

public ClCmdSayWeapons(  id  )
{
	if(  !IsUserAntiFurien(  id  )  ||  !is_user_alive(  id  )  )  return 1;
	
	if(  UserHasNoWeapon(  id  )  )
	{
		ShowWeaponsMenu(  id  );
		return 0;
	}
	else
	{
		ColorChat(  id,  RED, "^x04[Furien Ultimate]^x03 Ti-ai ales deja armele !"  );
		return 1;
	}
	
	return 0;
}
	
/*======================================= - | Askhanar | - =======================================*/

public Ham_PlayerSpawnPost(  id  )
{
	if( is_user_alive(  id  )  && !is_user_bot(  id  )  &&  !is_user_hltv(  id  )  )
	{
		
		new CsTeams:Team  =  cs_get_user_team(  id  );
		if( Team  ==  CS_TEAM_T  ||  Team  ==  CS_TEAM_CT  )
		{
			
			if(  Team  == CS_TEAM_CT  )	ShowWeaponsMenu(  id  );
			
			if(  gGrenadesEnabled[  Team  ]  )
			{
				switch(  Team  )
				{
					case CS_TEAM_T:
					{
						for(  new  i  = 1;  i  <  MAX_NADES;  i++  )
						{
							if(  gFurienNadeEnabled[  i  ]  )
							{
								give_item(  id,  gGrenadesItemName[  i  ]  );
							}
						}
					}
					case CS_TEAM_CT:
					{
						for(  new  i  = 1;  i  <  MAX_NADES;  i++  )
						{
							if(  gAntiFurienNadeEnabled[  i  ]  )
							{
								give_item(  id,  gGrenadesItemName[  i  ]  );
							}
						}
					}
				}
			}
		}
	}
	
	return HAM_IGNORED;
}

/*======================================= - | Askhanar | - =======================================*/

public ShowWeaponsMenu(  id  )
{
	new menu = menu_create(  "rAntiFurien:y Ultimate Weapons w[MENU]", "WeaponsMenuHandler" );	
	
	menu_additem(  menu,  "New Weapons",  "1", 0  );
	menu_additem(  menu,  "Previous Setup",  "2", 0  );
	
	menu_setprop( menu, MPROP_EXIT , MEXIT_NEVER );
	menu_display(  id,  menu,  0 );

}

/*======================================= - | Askhanar | - =======================================*/

public WeaponsMenuHandler(  id,  menu,  item  )
{
	
	new data[ 6 ], iName[ 64 ];
	new iaccess, callback;
	
	menu_item_getinfo(  menu,  item,  iaccess,  data,  5,  iName,  63,  callback );
	menu_destroy(  menu  );
	
	new key = str_to_num(  data  );
	
	switch(  key  )
	{
		case 1:
		{
			if(  IsUserAntiFurien(  id  )  )
			{
				ShowSecondaryWeaponsMenu(  id,  0  );
			}
			return 1;
		}
		case 2:
		{
			if(  IsUserAntiFurien(  id  )  )
			{
			
			
				if(  gUserLastPrimaryWeapons[  id  ]  <=  0  ||  gUserLastSecondaryWeapons[  id  ]  <=  0  )
				{
					ShowWeaponsMenu(  id  );
					ColorChat(  id,  RED, "^x04[Furien Ultimate]^x03 Prima data trebuie sa alegi armele!"  );
					return 1;
				}
				
				GiveWeaponAndSetClipAndAmmo(  id,  gSecondaryWeaponsItemName[  gUserLastSecondaryWeapons[  id  ]  ],  gSecondaryWeaponsItemNum[  gUserLastSecondaryWeapons[  id  ]  ],
						gSecondaryWeaponsMaxClip[  gUserLastSecondaryWeapons[  id  ]  ],  gSecondaryWeaponsMaxAmmo[  gUserLastSecondaryWeapons[  id  ]  ]  );
						
				GiveWeaponAndSetClipAndAmmo(  id,  gPrimaryWeaponsItemName[  gUserLastPrimaryWeapons[  id  ]  ],  gPrimaryWeaponsItemNum[  gUserLastPrimaryWeapons[  id  ]  ],
						gPrimaryWeaponsMaxClip[  gUserLastPrimaryWeapons[  id  ]  ],  gPrimaryWeaponsMaxAmmo[  gUserLastPrimaryWeapons[  id  ]  ]  );
				
				return 1;
			}
		}
	}
	
	return 1;
}

/*======================================= - | Askhanar | - =======================================*/

public ShowSecondaryWeaponsMenu(  id,  page  )
{
	new menu = menu_create(  "rAntiFurien:y Secondary Weapons", "SecondaryWeaponsMenuHandler" );	
	new callback = menu_makecallback(  "CallbackSecondaryWeapons"  );
	
	for(  new i = 1; i  <  MAX_SECONDARY;  i++  )
	{
		new  szMenuKey[  32  ];
		num_to_str(  i,  szMenuKey,  sizeof  (  szMenuKey  )  );
		
		menu_additem(  menu,  gSecondaryWeaponsName[  i  ],  szMenuKey,  _,  callback  );
	}
	
	menu_setprop( menu, MPROP_EXIT , MEXIT_NEVER );
	menu_display(  id,  menu,  page );

}

/*======================================= - | Askhanar | - =======================================*/

public SecondaryWeaponsMenuHandler(  id,  menu,  item  )
{
	
	new data[ 6 ], iName[ 64 ];
	new iaccess, callback;
	
	menu_item_getinfo(  menu,  item,  iaccess,  data,  5,  iName,  63,  callback );
	menu_destroy(  menu  );
	
	new key = str_to_num(  data  );
	
	if(  IsUserAntiFurien(  id  )  )
	{
			
		GiveWeaponAndSetClipAndAmmo(  id,  gSecondaryWeaponsItemName[  key  ],  gSecondaryWeaponsItemNum[  key  ],
						gSecondaryWeaponsMaxClip[  key  ],  gSecondaryWeaponsMaxAmmo[  key  ]  );
		
		gUserLastSecondaryWeapons[  id  ]  =  key;
		ShowPrimaryWeaponsMenu(  id,  0  );
	}
	
	return 1;
}

/*======================================= - | Askhanar | - =======================================*/

public CallbackSecondaryWeapons(  id,  menu,  item  )
{
	static  _access,  info[  4  ],  callback;
	menu_item_getinfo(  menu,  item,  _access,  info,  sizeof (  info  )  - 1,  _,  _,  callback  );
	
	if(  !gSecondaryWeaponsEnabled[  str_to_num(  info  )  ]  )  return ITEM_DISABLED;
	
	return ITEM_ENABLED;
}

/*======================================= - | Askhanar | - =======================================*/

public ShowPrimaryWeaponsMenu(  id,  page  )
{
	new menu = menu_create(  "rAntiFurien:y Primary Weapons", "PrimaryWeaponsMenuHandler" );	
	new callback = menu_makecallback(  "CallbackPrimaryWeapons"  );
	
	for(  new i = 1; i  <  MAX_PRIMARY;  i++  )
	{
		new  szMenuKey[  32  ];
		num_to_str(  i,  szMenuKey,  sizeof  (  szMenuKey  )  );
		
		menu_additem(  menu,  gPrimaryWeaponsName[  i  ],  szMenuKey,  _,  callback  );
	}
	
	menu_setprop( menu, MPROP_EXIT , MEXIT_NEVER );
	menu_display(  id,  menu,  page );

}

/*======================================= - | Askhanar | - =======================================*/

public PrimaryWeaponsMenuHandler(  id,  menu,  item  )
{
	
	new data[ 6 ], iName[ 64 ];
	new iaccess, callback;
	
	menu_item_getinfo(  menu,  item,  iaccess,  data,  5,  iName,  63,  callback  );
	menu_destroy(  menu  );
	
	new key = str_to_num( data );
	
	if(  IsUserAntiFurien(  id  )  )
	{
		GiveWeaponAndSetClipAndAmmo(  id,  gPrimaryWeaponsItemName[  key  ],  gPrimaryWeaponsItemNum[  key  ],
						gPrimaryWeaponsMaxClip[  key  ],  gPrimaryWeaponsMaxAmmo[  key  ]  );
		
		gUserLastPrimaryWeapons[  id  ]  =  key;
	
	}
	
	return 1;
}

/*======================================= - | Askhanar | - =======================================*/

public CallbackPrimaryWeapons(  id,  menu,  item  )
{
	static _access, info[4], callback;
	menu_item_getinfo(menu, item, _access, info, sizeof(info) - 1, _, _, callback);
	
	if(  !gPrimaryWeaponsEnabled[  str_to_num(  info  )  ]  )  return ITEM_DISABLED;
	
	return ITEM_ENABLED;
}

/*======================================= - | Askhanar | - =======================================*/

public GiveWeaponAndSetClipAndAmmo(  id,  const WeaponName[    ],  const WeaponId,  const WeaponMaxClip,  const WeaponMaxAmmo  )
{
	
	if( !is_user_alive(  id  )  )  return 1;
	
	give_item(  id,  WeaponName  );
	new WeapId  =  find_ent_by_owner(  -1,  WeaponName,  id  );
	
	if(  WeapId  )
	{
		cs_set_weapon_ammo(  WeapId, WeaponMaxClip  );
	} 
	
	if(  WeaponId  !=  0  )
		cs_set_user_bpammo(  id,  WeaponId,  WeaponMaxAmmo  );
	
	return 0;
	
}

/*======================================= - | Askhanar | - =======================================*/

stock bool:IsUserAntiFurien(  id  )
{
	if(  get_user_team(  id  )  ==  2  )
		return true;
		
	return false;
}

/*======================================= - | Askhanar | - =======================================*/

stock bool:UserHasNoWeapon(  id  )
{
	
	new bool:WeaponFound  =  false;
	
	for(  new i  =  1;  i <  MAX_PRIMARY ; i++  )
	{
		if( user_has_weapon(  id,  gPrimaryWeaponsItemNum[  i  ]  )  )
		{
			WeaponFound  =  true;
			break;
		}
	}
	
	for(  new i  =  1;  i <  MAX_SECONDARY ; i++  )
	{
		if( user_has_weapon(  id,  gSecondaryWeaponsItemNum[  i  ]  )  )
		{
			WeaponFound  =  true;
			break;
		}
	}
	
	return WeaponFound  ?  false  :  true;
	
}		

/*======================================= - | Askhanar | - =======================================*/
RoyalServer
User avatar
levin
Scripter eXtreamCS
Scripter eXtreamCS
Posts: 3844
Joined: 24 Aug 2011, 12:24
Detinator Steam: Da
CS Status:
Detinator server CS: ☯∴
SteamID: riseofevo
Reputatie: Scripter eXtreamCS
Nume anterior: Adryyy
Location: ҳ̸Ҳ̸ҳ
Discord: devilclass
Has thanked: 36 times
Been thanked: 594 times
Contact:

22 Aug 2013, 19:05

La stock-ul isuserantifurien dupa " get_user_team( id ) == 2 " adaugi " && get_user_team( id ) == 1 " in caz ca nu vrei si stock pentru isuserfurien. Si de ce iti trebuie knife ??
| Afiseaza codul
stock bool:IsUserAntiFurien( id )
{
   if(  get_user_team( id )  ==  2 && get_user_team( id ) == 1  )
      return true;
      
   return false;
}
Pentru ajutor, faceți cerere bine detaliată, completând și respectând modelul corespunzător.
Nu-mi mai dați cereri doar pentru a mă avea în lista de prieteni.
Dacă te ajut, și mă ignori/etc > te adaug în „foe”.
Aveți grijă la cei ce încearcă să mă copieze sau să dea drept mine..Puteți lua legătura cu mine prin STEAM dacă aveți o problemă/nelămurire în acest caz! Cont de forum am doar aici.
În cazul în care utilizați ceva din ce am postat(ex: aici), e bine să fiți la curent cu modificările aduse și de aici, iar dacă sunt ceva probleme nu ezitați să luați legătura cu mine. Actualizarea unor coduri nu se vor afișa public, doar dacă se găsește ceva critic/urgent de remediat, unele fiind coduri vechi iar unele refăcute chiar recent dar private.
* Nume pe cs1.6: eVoLuTiOn \ Nume vechi: eVo
* Atelierul meu - post2819572.html#p2819572 (închis, click link ca să vedeți de ce)
User avatar
FaTzZu
Fost moderator
Fost moderator
Posts: 1206
Joined: 22 Dec 2012, 18:37
Detinator Steam: Da
Reputatie: Fost moderator ajutator
Has thanked: 114 times
Been thanked: 168 times

22 Aug 2013, 19:23

Poftim | Afiseaza codul
#include <  amxmodx  >
#include <  cstrike  >
#include <  engine  >
#include <  hamsandwich  >
#include <  fun  >
#include <  ColorChat  >

#pragma semicolon 1


#define PLUGIN "FMU Weapons Menu"
#define VERSION "1.0"



// Null ( do not modify )
#define    NULL         0

// Max number of secondary weapons ( Pistols.. ).Do not modify.
#define      MAX_SECONDARY      7



// These determine if these secondary weapons ( Pistols.. ) should be enabled or disabled.
// 1 = enabled
// 0 = disabled

#define      ENABLE_USP      1
#define      ENABLE_GLOCK      1
#define      ENABLE_DEAGLE      1
#define      ENABLE_P228      1
#define      ENABLE_ELITE      1
#define      ENABLE_FIVESEVEN   1




// Max number of primary weapons ( Guns.. ).Do not modify.
#define    MAX_PRIMARY      19


// These determine if these primary weapons ( Guns.. ) should be enabled or disabled.
// 1 = enabled
// 0 = disabled

#define      ENABLE_M4A1      1
#define      ENABLE_AK47      1
#define      ENABLE_AUG      1
#define      ENABLE_SG552      1
#define      ENABLE_GALIL      1
#define      ENABLE_FAMAS      1
#define      ENABLE_SCOUT      1
#define      ENABLE_AWP      1
#define      ENABLE_SG550      1
#define      ENABLE_M249      1
#define      ENABLE_G3SG1      1
#define      ENABLE_UMP45      1
#define      ENABLE_MP5NAVY      1
#define      ENABLE_M3      1
#define      ENABLE_XM1014      1
#define      ENABLE_TMP      1
#define      ENABLE_MAC10      1
#define      ENABLE_P90      1



// Max number of Grenades .Do not modify.
#define    MAX_NADES      5


// These determine if these grenades should be enabled or disabled.
// 1 = enabled
// 0 = disabled

#define      ENABLE_FURIEN_NADES      1


#define      ENABLE_FURIEN_HE      1
#define      ENABLE_FURIEN_FLASHBANG1   0
#define      ENABLE_FURIEN_FLASHBANG2   1
#define      ENABLE_FURIEN_SMOKEGRENADE   1



#define      ENABLE_ANTIFURIEN_NADES      1


#define      ENABLE_ANTIFURIEN_HE        0
#define      ENABLE_ANTIFURIEN_FLASHBANG1   0
#define      ENABLE_ANTIFURIEN_FLASHBANG2   1
#define      ENABLE_ANTIFURIEN_SMOKEGRENADE   1


/*======================================= - | Askhanar | - =======================================*/

new const gSecondaryWeaponsEnabled[  MAX_SECONDARY  ]  =
{
   
   NULL,
   ENABLE_USP,
   ENABLE_GLOCK,
   ENABLE_DEAGLE,
   ENABLE_P228,
   ENABLE_ELITE,
   ENABLE_FIVESEVEN
   
};

/*======================================= - | Askhanar | - =======================================*/

new const gSecondaryWeaponsName[  MAX_SECONDARY  ][    ]  =
{
   
"",
   "MK23 w[r30 ygloantew]",
   "Glock w[r30 ygloantew]",
   "Deagle w[r20 ygloantew]",
   "P228 w[r40 ygloantew]",
   "Dual-Deagle w[r60 ygloantew]",
   "Kimbear w[r60 ygloantew]"
   
};

/*======================================= - | Askhanar | - =======================================*/

new const gSecondaryWeaponsItemName[  MAX_SECONDARY  ][    ]  =
{
   
   "",
   "weapon_usp",
   "weapon_glock18",
   "weapon_deagle",
   "weapon_p228",
   "weapon_elite",
   "weapon_fiveseven"
   
};

/*======================================= - | Askhanar | - =======================================*/

new const gSecondaryWeaponsItemNum[  MAX_SECONDARY  ]  =
{
   
   NULL,
   CSW_USP,
   CSW_GLOCK18,
   CSW_DEAGLE,
   CSW_P228,
   CSW_ELITE,
   CSW_FIVESEVEN
   
};

/*======================================= - | Askhanar | - =======================================*/

new const gSecondaryWeaponsMaxClip[  MAX_SECONDARY  ]  =
{
   NULL,
   30,
   30,
   20,
   40,
   60,
   60
   
};

/*======================================= - | Askhanar | - =======================================*/

new const gSecondaryWeaponsMaxAmmo[  MAX_SECONDARY  ]  =
{
   NULL,
   80,
   80,
   80,
   80,
   80,
   80
   
};

/*======================================= - | Askhanar | - =======================================*/

new const gPrimaryWeaponsEnabled[  MAX_PRIMARY  ]  =
{
   
   NULL,
   ENABLE_M4A1,
   ENABLE_AK47,
   ENABLE_AUG,
   ENABLE_SG552,
   ENABLE_GALIL,
   ENABLE_FAMAS,
   ENABLE_SCOUT,
   ENABLE_AWP,
   ENABLE_SG550,
   ENABLE_M249,
   ENABLE_G3SG1,
   ENABLE_UMP45,
   ENABLE_MP5NAVY,
   ENABLE_M3,
   ENABLE_XM1014,
   ENABLE_TMP,
   ENABLE_MAC10,
   ENABLE_P90
   
};

/*======================================= - | Askhanar | - =======================================*/

new const gPrimaryWeaponsName[  MAX_PRIMARY  ][    ]  =
{
   
   "",
   "M4A1 w[r45 ygloantew]",
   "AK47 -Gold-Edition w[r45 ygloantew]",
   "AUG -PrO w[r70 ygloantew]",
   "XM8 -PrO w[r75 ygloantew]",
   "Galil -Gold-Edition w[r75 ygloantew]",
   "Famas BR2-PrO w[r35 ygloantew]",
   "Scout -Gold-Edition w[r30 ygloantew]",
   "AWP -Gold-Edition w[r30 ygloantew]",
   "M16A4 Sniper-PrO w[r70 ygloantew]",
   "M249 -PrO w[180 ygloantew]",
   "G3SG1 -Gold-Edition w[r70 ygloantew]",
   "UMP 45 -PrOw[r50 ygloantew]",
   "MP5 Navy -Dula-PrO w[r100 ygloantew]",
   "M3 -Gold-Edition w[r25 ygloantew]",
   "XM1014 -Pro w[r25 ygloantew]",
   "TMP -Pro w[r60 ygloantew]",
   "Mac 10 -Gold-Edition w[r50 ygloantew]",
   "P90 -DuaL -Prow[r100 ygloantew]"
   
};

/*======================================= - | Askhanar | - =======================================*/

new const gPrimaryWeaponsItemName[  MAX_PRIMARY  ][    ]  =
{
   
   "",
   "weapon_m4a1",
   "weapon_ak47",
   "weapon_aug",
   "weapon_sg552",
   "weapon_galil",
   "weapon_famas",
   "weapon_scout",
   "weapon_awp",
   "weapon_sg550",
   "weapon_m249",
   "weapon_g3sg1",
   "weapon_ump45",
   "weapon_mp5navy",
   "weapon_m3",
   "weapon_xm1014",
   "weapon_tmp",
   "weapon_mac10",
   "weapon_p90"
   
};

/*======================================= - | Askhanar | - =======================================*/

new const gPrimaryWeaponsItemNum[  MAX_PRIMARY  ]  =
{
   
   NULL,
   CSW_M4A1,
   CSW_AK47,
   CSW_AUG,
   CSW_SG552,
   CSW_GALIL,
   CSW_FAMAS,
   CSW_SCOUT,
   CSW_AWP,
   CSW_SG550,
   CSW_M249,
   CSW_G3SG1,
   CSW_UMP45,
   CSW_MP5NAVY,
   CSW_M3,
   CSW_XM1014,
   CSW_TMP,
   CSW_MAC10,
   CSW_P90
   
};

/*======================================= - | Askhanar | - =======================================*/

new const gPrimaryWeaponsMaxClip[  MAX_PRIMARY  ]  =
{
   
   NULL,
   45,
   45,
   30,
   30,
   30,
   35,
   30,
   30,
   30,
   40,
   70,
   50,
   35,
   25,
   25,
   60,
   50,
   100
   
};

/*======================================= - | Askhanar | - =======================================*/

new const gPrimaryWeaponsMaxAmmo[  MAX_PRIMARY  ]  =
{
   
   NULL,
   200,
   200,
   200,
   200,
   200,
   200,
   200,
   200,
   200,
   200,
   200,
   200,
   200,
   200,
   200,
   200,
   200,
   200,
   
};

/*======================================= - | Askhanar | - =======================================*/

new const gGrenadesEnabled[  CsTeams  ]  =
{
   
   NULL,
   ENABLE_FURIEN_NADES,
   ENABLE_ANTIFURIEN_NADES,
   NULL
   
};

new const gFurienNadeEnabled[  MAX_NADES  ]  =
{
   
   NULL,
   ENABLE_FURIEN_HE,
   ENABLE_FURIEN_FLASHBANG1,
   ENABLE_FURIEN_FLASHBANG2,
   ENABLE_FURIEN_SMOKEGRENADE
   
};

new const gAntiFurienNadeEnabled[  MAX_NADES  ]  =
{
   
   NULL,
   ENABLE_ANTIFURIEN_HE,
   ENABLE_ANTIFURIEN_FLASHBANG1,
   ENABLE_ANTIFURIEN_FLASHBANG2,
   ENABLE_ANTIFURIEN_SMOKEGRENADE
   
};

/*======================================= - | Askhanar | - =======================================*/

new const gGrenadesItemName[  MAX_NADES  ][    ]  =
{
   
   "",
   "weapon_hegrenade",
   "weapon_flashbang",
   "weapon_flashbang",
   "weapon_smokegrenade"
   
};

/*======================================= - | Askhanar | - =======================================*/

new gUserLastSecondaryWeapons[  33  ];
new gUserLastPrimaryWeapons[  33  ];

/*======================================= - | Askhanar | - =======================================*/

public plugin_init(    )
{
   register_plugin(  PLUGIN,  VERSION,  "Askhanar"  );
   
   register_clcmd(  "say /weapons", "ClCmdSayWeapons"  );
   
   RegisterHam(  Ham_Spawn,  "player",  "Ham_PlayerSpawnPost",  true  );
   
}

/*======================================= - | Askhanar | - =======================================*/

public client_putinserver(  id  )
{
   
   if(  is_user_bot(  id  )  ||  is_user_hltv(  id  )  )  return 0;
   
   gUserLastSecondaryWeapons[  id  ]  =  0;
   gUserLastPrimaryWeapons[  id  ]  =  0;
      
   return 0;
}

/*======================================= - | Askhanar | - =======================================*/

public client_disconnect(  id  )
{
      
   if(  is_user_bot(  id  )  ||  is_user_hltv(  id  )  )  return 0;
   
   gUserLastSecondaryWeapons[  id  ]  =  0;
   gUserLastPrimaryWeapons[  id  ]  =  0;
      
   return 0;
}

/*======================================= - | Askhanar | - =======================================*/

public ClCmdSayWeapons(  id  )
{
   if(  !IsUserAntiFurien(  id  )  ||  !is_user_alive(  id  )  )  return 1;
   
   if(  UserHasNoWeapon(  id  )  )
   {
      ShowWeaponsMenu(  id  );
      return 0;
   }
   else
   {
      ColorChat(  id,  RED, "^x04[Furien Ultimate]^x03 Ti-ai ales deja armele !"  );
      return 1;
   }
   
   return 0;
}
   
/*======================================= - | Askhanar | - =======================================*/

public Ham_PlayerSpawnPost(  id  )
{
   if( is_user_alive(  id  )  && !is_user_bot(  id  )  &&  !is_user_hltv(  id  )  )
   {
      
      new CsTeams:Team  =  cs_get_user_team(  id  );
      if( Team  ==  CS_TEAM_T  ||  Team  ==  CS_TEAM_CT  )
      {
         
         if(  Team  == CS_TEAM_CT  )   ShowWeaponsMenu(  id  );
         
         if(  gGrenadesEnabled[  Team  ]  )
         {
            switch(  Team  )
            {
               case CS_TEAM_T:
               {
	       	give_item(id, "weapon_knife")
                  for(  new  i  = 1;  i  <  MAX_NADES;  i++  )
                  {
                     if(  gFurienNadeEnabled[  i  ]  )
                     {
                        give_item(  id,  gGrenadesItemName[  i  ]  );
                     }
                  }
               }
               case CS_TEAM_CT:
               {
	       	give_item(id, "weapon_knife")
                  for(  new  i  = 1;  i  <  MAX_NADES;  i++  )
                  {
                     if(  gAntiFurienNadeEnabled[  i  ]  )
                     {
                        give_item(  id,  gGrenadesItemName[  i  ]  );
                     }
                  }
               }
            }
         }
      }
   }
   
   return HAM_IGNORED;
}

/*======================================= - | Askhanar | - =======================================*/

public ShowWeaponsMenu(  id  )
{
   new menu = menu_create(  "rAntiFurien:y Ultimate Weapons w[MENU]", "WeaponsMenuHandler" );   
   
   menu_additem(  menu,  "New Weapons",  "1", 0  );
   menu_additem(  menu,  "Previous Setup",  "2", 0  );
   
   menu_setprop( menu, MPROP_EXIT , MEXIT_NEVER );
   menu_display(  id,  menu,  0 );

}

/*======================================= - | Askhanar | - =======================================*/

public WeaponsMenuHandler(  id,  menu,  item  )
{
   
   new data[ 6 ], iName[ 64 ];
   new iaccess, callback;
   
   menu_item_getinfo(  menu,  item,  iaccess,  data,  5,  iName,  63,  callback );
   menu_destroy(  menu  );
   
   new key = str_to_num(  data  );
   
   switch(  key  )
   {
      case 1:
      {
         if(  IsUserAntiFurien(  id  )  )
         {
            ShowSecondaryWeaponsMenu(  id,  0  );
         }
         return 1;
      }
      case 2:
      {
         if(  IsUserAntiFurien(  id  )  )
         {
         
         
            if(  gUserLastPrimaryWeapons[  id  ]  <=  0  ||  gUserLastSecondaryWeapons[  id  ]  <=  0  )
            {
               ShowWeaponsMenu(  id  );
               ColorChat(  id,  RED, "^x04[Furien Ultimate]^x03 Prima data trebuie sa alegi armele!"  );
               return 1;
            }
            
            GiveWeaponAndSetClipAndAmmo(  id,  gSecondaryWeaponsItemName[  gUserLastSecondaryWeapons[  id  ]  ],  gSecondaryWeaponsItemNum[  gUserLastSecondaryWeapons[  id  ]  ],
                  gSecondaryWeaponsMaxClip[  gUserLastSecondaryWeapons[  id  ]  ],  gSecondaryWeaponsMaxAmmo[  gUserLastSecondaryWeapons[  id  ]  ]  );
                  
            GiveWeaponAndSetClipAndAmmo(  id,  gPrimaryWeaponsItemName[  gUserLastPrimaryWeapons[  id  ]  ],  gPrimaryWeaponsItemNum[  gUserLastPrimaryWeapons[  id  ]  ],
                  gPrimaryWeaponsMaxClip[  gUserLastPrimaryWeapons[  id  ]  ],  gPrimaryWeaponsMaxAmmo[  gUserLastPrimaryWeapons[  id  ]  ]  );
            
            return 1;
         }
      }
   }
   
   return 1;
}

/*======================================= - | Askhanar | - =======================================*/

public ShowSecondaryWeaponsMenu(  id,  page  )
{
   new menu = menu_create(  "rAntiFurien:y Secondary Weapons", "SecondaryWeaponsMenuHandler" );   
   new callback = menu_makecallback(  "CallbackSecondaryWeapons"  );
   
   for(  new i = 1; i  <  MAX_SECONDARY;  i++  )
   {
      new  szMenuKey[  32  ];
      num_to_str(  i,  szMenuKey,  sizeof  (  szMenuKey  )  );
      
      menu_additem(  menu,  gSecondaryWeaponsName[  i  ],  szMenuKey,  _,  callback  );
   }
   
   menu_setprop( menu, MPROP_EXIT , MEXIT_NEVER );
   menu_display(  id,  menu,  page );

}

/*======================================= - | Askhanar | - =======================================*/

public SecondaryWeaponsMenuHandler(  id,  menu,  item  )
{
   
   new data[ 6 ], iName[ 64 ];
   new iaccess, callback;
   
   menu_item_getinfo(  menu,  item,  iaccess,  data,  5,  iName,  63,  callback );
   menu_destroy(  menu  );
   
   new key = str_to_num(  data  );
   
   if(  IsUserAntiFurien(  id  )  )
   {
         
      GiveWeaponAndSetClipAndAmmo(  id,  gSecondaryWeaponsItemName[  key  ],  gSecondaryWeaponsItemNum[  key  ],
                  gSecondaryWeaponsMaxClip[  key  ],  gSecondaryWeaponsMaxAmmo[  key  ]  );
      
      gUserLastSecondaryWeapons[  id  ]  =  key;
      ShowPrimaryWeaponsMenu(  id,  0  );
   }
   
   return 1;
}

/*======================================= - | Askhanar | - =======================================*/

public CallbackSecondaryWeapons(  id,  menu,  item  )
{
   static  _access,  info[  4  ],  callback;
   menu_item_getinfo(  menu,  item,  _access,  info,  sizeof (  info  )  - 1,  _,  _,  callback  );
   
   if(  !gSecondaryWeaponsEnabled[  str_to_num(  info  )  ]  )  return ITEM_DISABLED;
   
   return ITEM_ENABLED;
}

/*======================================= - | Askhanar | - =======================================*/

public ShowPrimaryWeaponsMenu(  id,  page  )
{
   new menu = menu_create(  "rAntiFurien:y Primary Weapons", "PrimaryWeaponsMenuHandler" );   
   new callback = menu_makecallback(  "CallbackPrimaryWeapons"  );
   
   for(  new i = 1; i  <  MAX_PRIMARY;  i++  )
   {
      new  szMenuKey[  32  ];
      num_to_str(  i,  szMenuKey,  sizeof  (  szMenuKey  )  );
      
      menu_additem(  menu,  gPrimaryWeaponsName[  i  ],  szMenuKey,  _,  callback  );
   }
   
   menu_setprop( menu, MPROP_EXIT , MEXIT_NEVER );
   menu_display(  id,  menu,  page );

}

/*======================================= - | Askhanar | - =======================================*/

public PrimaryWeaponsMenuHandler(  id,  menu,  item  )
{
   
   new data[ 6 ], iName[ 64 ];
   new iaccess, callback;
   
   menu_item_getinfo(  menu,  item,  iaccess,  data,  5,  iName,  63,  callback  );
   menu_destroy(  menu  );
   
   new key = str_to_num( data );
   
   if(  IsUserAntiFurien(  id  )  )
   {
      GiveWeaponAndSetClipAndAmmo(  id,  gPrimaryWeaponsItemName[  key  ],  gPrimaryWeaponsItemNum[  key  ],
                  gPrimaryWeaponsMaxClip[  key  ],  gPrimaryWeaponsMaxAmmo[  key  ]  );
      
      gUserLastPrimaryWeapons[  id  ]  =  key;
   
   }
   
   return 1;
}

/*======================================= - | Askhanar | - =======================================*/

public CallbackPrimaryWeapons(  id,  menu,  item  )
{
   static _access, info[4], callback;
   menu_item_getinfo(menu, item, _access, info, sizeof(info) - 1, _, _, callback);
   
   if(  !gPrimaryWeaponsEnabled[  str_to_num(  info  )  ]  )  return ITEM_DISABLED;
   
   return ITEM_ENABLED;
}

/*======================================= - | Askhanar | - =======================================*/

public GiveWeaponAndSetClipAndAmmo(  id,  const WeaponName[    ],  const WeaponId,  const WeaponMaxClip,  const WeaponMaxAmmo  )
{
   
   if( !is_user_alive(  id  )  )  return 1;
   
   give_item(  id,  WeaponName  );
   new WeapId  =  find_ent_by_owner(  -1,  WeaponName,  id  );
   
   if(  WeapId  )
   {
      cs_set_weapon_ammo(  WeapId, WeaponMaxClip  );
   } 
   
   if(  WeaponId  !=  0  )
      cs_set_user_bpammo(  id,  WeaponId,  WeaponMaxAmmo  );
   
   return 0;
   
}

/*======================================= - | Askhanar | - =======================================*/

stock bool:IsUserAntiFurien(  id  )
{
   if(  get_user_team(  id  )  ==  2  )
      return true;
      
   return false;
}

/*======================================= - | Askhanar | - =======================================*/

stock bool:UserHasNoWeapon(  id  )
{
   
   new bool:WeaponFound  =  false;
   
   for(  new i  =  1;  i <  MAX_PRIMARY ; i++  )
   {
      if( user_has_weapon(  id,  gPrimaryWeaponsItemNum[  i  ]  )  )
      {
         WeaponFound  =  true;
         break;
      }
   }
   
   for(  new i  =  1;  i <  MAX_SECONDARY ; i++  )
   {
      if( user_has_weapon(  id,  gSecondaryWeaponsItemNum[  i  ]  )  )
      {
         WeaponFound  =  true;
         break;
      }
   }
   
   return WeaponFound  ?  false  :  true;
   
}
A fool's brain digests philosophy into folly, science into superstition, and art into pedantry.

#RETIRED.
User avatar
Rony
Utilizator neserios (tepar)
Utilizator neserios (tepar)
Posts: 966
Joined: 11 Mar 2013, 11:43
Detinator Steam: Da
CS Status: CO-FOUNDER BETANO
Detinator server CS: CS1.6 , CS:GO
SteamID: 31r1
Reputatie: Membru Club eXtreamCS (1 luna)
Membru Club eXtreamCs (28 Feb)
Utilizator neserios (tepar)
Location: NAPOLI
Has thanked: 173 times
Been thanked: 66 times
Contact:

22 Aug 2013, 19:26

multumesc,
Post Reply

Return to “Cereri”

  • Information