/* ===============================================================================================================
* --------------------------------
* ============ Furien Weapons ============
* --------------------------------
*
* -----------------
* ------- Credits ---------
* -----------------
* - Aragon* -> Metoda de adaugare a armelor cu #define
* - TrrQ - > idee
*
* -----------------
* ------- ChangeLog -------
* -----------------
* - 19.02.2014 Initial Release (1.0)
*
*
================================================================================================================*/
#include <amxmodx>
#include <cstrike>
#include <fun>
#include <hamsandwich>
#define PLUGIN "Furien Weapons"
#define VERSION "1.0"
#define AUTHOR "DaNNe."
/// ==== | Pentru a activa / Dezactiva o arma adauga // in fata armei respective.
// --- Primary Weapons --- //
#define M4A1
#define AK47
#define XM1014
#define P90
#define MP5NAVY
#define M3
#define AUG
#define AWP
#define GALIL
#define AUG
#define FAMAS
#define SG552
#define G3SG1
#define SG550
#define SCOUT
#define M249
// --- Secondary Weapons --- //
#define DEAGLE
#define USP
#define ELITE
#define FIVESEVEN
#define GLOCK18
new Prefix[] = "[Furien Weapons]";
new Selected[33];
new Menu;
public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
register_clcmd("weapons", "CMD_Weapons");
register_clcmd("say weapons", "CMD_Weapons");
register_clcmd("say_team weapons", "CMD_Weapons");
register_clcmd("say /weapons", "CMD_Weapons");
register_clcmd("say_team /weapons", "CMD_Weapons");
RegisterHam(Ham_Spawn, "player", "HAM_Spawn_Post", 1);
}
public HAM_Spawn_Post(id) {
if(is_user_connected(id)){
if(get_user_team(id) == 2) {
set_task(0.1, "GiveCTItems", id);
ShowMenu(id);
Selected[id] = false;
}
if(get_user_team(id) == 1) {
set_task(0.1, "GiveTItems", id);
}
}
}
public GiveCTItems(id) {
if(is_user_alive(id)) {
give_item(id, "weapon_hegrenade");
give_item(id, "weapon_flashbang");
cs_set_user_bpammo(id, CSW_FLASHBANG, 2);
}
}
public GiveTItems(id) {
if(is_user_alive(id)) {
give_item(id, "weapon_hegrenade");
give_item(id, "weapon_flashbang");
give_item(id, "weapon_knife");
cs_set_user_bpammo(id, CSW_FLASHBANG, 2);
}
}
public ShowMenu(id) {
if(is_user_alive(id) && get_user_team(id) == 2) {
Menu = menu_create("\wPrimary Weapons", "CMD_Give")
#if defined M4A1
M4A1_Menu( "1");
#endif
#if defined AK47
AK47_Menu( "2");
#endif
#if defined XM1014
XM1014_Menu( "3");
#endif
#if defined P90
P90_Menu( "4");
#endif
#if defined MP5NAVY
Mp5_Menu( "5");
#endif
#if defined M3
M3_Menu( "6");
#endif
#if defined AUG
AUG_Menu( "7");
#endif
#if defined AWP
AWP_Menu( "8");
#endif
#if defined GALIL
Galil_Menu( "9");
#endif
#if defined FAMAS
Famas_Menu( "10");
#endif
#if defined SG552
SG552_Menu( "11");
#endif
#if defined G3SG1
G3SG1_Menu( "12");
#endif
#if defined SG550
SG550_Menu( "13");
#endif
#if defined SCOUT
Scout_Menu( "14");
#endif
#if defined M249
M249_Menu( "15");
#endif
menu_setprop(Menu, MPROP_EXIT, MEXIT_ALL)
menu_display(id, Menu, 0)
}
}
public CMD_Give(id, menu, item) {
if(item == MENU_EXIT || !is_user_alive(id) || get_user_team(id) != 2) {
menu_destroy(menu);
return PLUGIN_HANDLED;
}
new Data[6], Name[64];
new Access, CallBack;
menu_item_getinfo(menu, item, Access, Data,5, Name, 63, CallBack);
new Key = str_to_num(Data);
switch(Key) {
#if defined M4A1
case 1: {
give_item(id, "weapon_m4a1");
cs_set_user_bpammo(id, CSW_M4A1, 120);
Selected[id] = true;
Secondary(id)
}
#endif
#if defined AK47
case 2: {
give_item(id, "weapon_ak47");
cs_set_user_bpammo(id, CSW_AK47, 120);
Selected[id] = true;
Secondary(id)
}
#endif
#if defined XM1014
case 3: {
give_item(id, "weapon_xm1014");
cs_set_user_bpammo(id, CSW_XM1014, 120);
Selected[id] = true;
Secondary(id)
}
#endif
#if defined P90
case 4: {
give_item(id, "weapon_p90");
cs_set_user_bpammo(id, CSW_P90, 150)
Selected[id] = true;
Secondary(id)
}
#endif
#if defined MP5NAVY
case 5: {
give_item(id, "weapon_mp5navy")
cs_set_user_bpammo(id, CSW_MP5NAVY, 120);
Selected[id] = true;
Secondary(id)
}
#endif
#if defined M3
case 6: {
give_item(id, "weapon_m3")
cs_set_user_bpammo(id, CSW_M3, 120);
Selected[id] = true;
Secondary(id)
}
#endif
#if defined MP5NAVY
case 7: {
give_item(id, "weapon_aug")
cs_set_user_bpammo(id, CSW_AUG, 120);
Selected[id] = true;
Secondary(id)
}
#endif
#if defined AWP
case 8: {
give_item(id, "weapon_awp")
cs_set_user_bpammo(id, CSW_AWP, 120);
Selected[id] = true;
Secondary(id)
}
#endif
#if defined GALIL
case 9: {
give_item(id, "weapon_galil")
cs_set_user_bpammo(id, CSW_GALIL, 120);
Selected[id] = true;
Secondary(id)
}
#endif
#if defined FAMAS
case 10: {
give_item(id, "weapon_famas")
cs_set_user_bpammo(id, CSW_FAMAS, 120);
Selected[id] = true;
Secondary(id)
}
#endif
#if defined SG552
case 11: {
give_item(id, "weapon_sg552")
cs_set_user_bpammo(id, CSW_SG552, 120);
Selected[id] = true;
Secondary(id)
}
#endif
#if defined G3SG1
case 12: {
give_item(id, "weapon_g3sg1")
cs_set_user_bpammo(id, CSW_G3SG1, 120);
Selected[id] = true;
Secondary(id)
}
#endif
#if defined SG550
case 13: {
give_item(id, "weapon_sg550")
cs_set_user_bpammo(id, CSW_SG550, 120);
Selected[id] = true;
Secondary(id)
}
#endif
#if defined SCOUT
case 14: {
give_item(id, "weapon_scout")
cs_set_user_bpammo(id, CSW_SCOUT, 120);
Selected[id] = true;
Secondary(id)
}
#endif
#if defined M249
case 15: {
give_item(id, "weapon_m249")
cs_set_user_bpammo(id, CSW_M249, 300);
Selected[id] = true;
Secondary(id)
}
#endif
default: return PLUGIN_HANDLED;
}
menu_destroy(menu);
return PLUGIN_HANDLED;
}
public Secondary(id) {
if(is_user_alive(id) && get_user_team(id) == 2) {
Menu = menu_create("\wSecondary Weapons", "CMD_SecondGive")
#if defined DEAGLE
Deagle_Menu( "1");
#endif
#if defined USP
USP_Menu( "2");
#endif
#if defined ELITE
Elite_Menu( "3");
#endif
#if defined FIVESEVEN
Fiveseven_Menu( "4");
#endif
#if defined GLOCK18
Glock_Menu( "5");
#endif
menu_setprop(Menu, MPROP_EXIT, MEXIT_ALL)
menu_display(id, Menu, 0)
}
}
public CMD_SecondGive(id, menu, item) {
if(item == MENU_EXIT || !is_user_alive(id) || get_user_team(id) != 2) {
menu_destroy(menu);
return PLUGIN_HANDLED;
}
new Data[6], Name[64];
new Access, CallBack;
menu_item_getinfo(menu, item, Access, Data,5, Name, 63, CallBack);
new Key = str_to_num(Data);
switch(Key) {
#if defined DEAGLE
case 1: {
give_item(id, "weapon_deagle");
cs_set_user_bpammo(id, CSW_DEAGLE, 120);
Selected[id] = true;
}
#endif
#if defined USP
case 2: {
give_item(id, "weapon_usp");
cs_set_user_bpammo(id, CSW_USP, 120);
Selected[id] = true;
}
#endif
#if defined ELITE
case 3: {
give_item(id, "weapon_elite");
cs_set_user_bpammo(id, CSW_ELITE, 120);
Selected[id] = true;
}
#endif
#if defined FIVESEVEN
case 4: {
give_item(id, "weapon_fiveseven");
cs_set_user_bpammo(id, CSW_FIVESEVEN, 120);
Selected[id] = true;
}
#endif
#if defined GLOCK18
case 5: {
give_item(id, "weapon_glock18");
cs_set_user_bpammo(id, CSW_GLOCK18, 120);
Selected[id] = true;
}
#endif
default: return PLUGIN_HANDLED;
}
menu_destroy(menu);
return PLUGIN_HANDLED;
}
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// ----------------------------------------------- | Primary Weapons | ------------------------------------------------- //
// ====================================================== DaNNe. ========================================================//
/////////////
//| M4A1
// =========
#if defined M4A1
M4A1_Menu( const Num[] = "1") {
new _M4A1[256];
formatex(_M4A1, sizeof(_M4A1)-1, "\wM4A1");
menu_additem(Menu, _M4A1, Num, 0);
}
#endif
/////////////
//| AK47
// =========
#if defined AK47
AK47_Menu( const Num[] = "1") {
new _AK47[256];
formatex(_AK47, sizeof(_AK47)-1, "\wAK47");
menu_additem(Menu, _AK47, Num, 0);
}
#endif
/////////////
//| XM1014
// =========
#if defined XM1014
XM1014_Menu( const Num[] = "1") {
new _XM1014[256];
formatex(_XM1014, sizeof(_XM1014)-1, "\wXM1014");
menu_additem(Menu, _XM1014, Num, 0);
}
#endif
/////////////
//| P90
// =========
#if defined P90
P90_Menu( const Num[] = "1") {
new _P90[256];
formatex(_P90, sizeof(_P90)-1, "\wP90");
menu_additem(Menu, _P90, Num, 0);
}
#endif
/////////////
//| Mp5
// =========
#if defined MP5NAVY
Mp5_Menu( const Num[] = "1") {
new MP5[256];
formatex(MP5, sizeof(MP5)-1, "\wMP5 Navy");
menu_additem(Menu, MP5, Num, 0);
}
#endif
/////////////
//| M3
// =========
#if defined M3
M3_Menu( const Num[] = "1") {
new _M3[256];
formatex(_M3, sizeof(_M3)-1, "\wM3");
menu_additem(Menu, _M3, Num, 0);
}
#endif
/////////////
//| Aug
// =========
#if defined AUG
AUG_Menu( const Num[] = "1") {
new _AUG[256];
formatex(_AUG, sizeof(_AUG)-1, "\wAUG");
menu_additem(Menu, _AUG, Num, 0);
}
#endif
/////////////
//| Awp
// =========
#if defined AWP
AWP_Menu( const Num[] = "1") {
new _AWP[256];
formatex(_AWP, sizeof(_AWP)-1, "\wAWP");
menu_additem(Menu, _AWP, Num, 0);
}
#endif
/////////////
//| Galil
// =========
#if defined GALIL
Galil_Menu( const Num[] = "1") {
new _GALIL[256];
formatex(_GALIL, sizeof(_GALIL)-1, "\wGalil");
menu_additem(Menu, _GALIL, Num, 0);
}
#endif
/////////////
//| Famas
// =========
#if defined FAMAS
Famas_Menu( const Num[] = "1") {
new _FAMAS[256];
formatex(_FAMAS, sizeof(_FAMAS)-1, "\wFamas");
menu_additem(Menu, _FAMAS, Num, 0);
}
#endif
/////////////
//| Sg552
// =========
#if defined SG552
SG552_Menu( const Num[] = "1") {
new _SG552[256];
formatex(_SG552, sizeof(_SG552)-1, "\wSg552");
menu_additem(Menu, _SG552, Num, 0);
}
#endif
/////////////
//| G3Sg1
// =========
#if defined G3SG1
G3SG1_Menu( const Num[] = "1") {
new _G3SG1[256];
formatex(_G3SG1, sizeof(_G3SG1)-1, "\wG3SG1");
menu_additem(Menu, _G3SG1, Num, 0);
}
#endif
/////////////
//| Sg550
// =========
#if defined SG550
SG550_Menu( const Num[] = "1") {
new _SG550[256];
formatex(_SG550, sizeof(_SG550)-1, "\wSg550");
menu_additem(Menu, _SG550, Num, 0);
}
#endif
/////////////
//| Scout
// =========
#if defined SCOUT
Scout_Menu( const Num[] = "1") {
new _SCOUT[256];
formatex(_SCOUT, sizeof(_SCOUT)-1, "\wScout");
menu_additem(Menu, _SCOUT, Num, 0);
}
#endif
/////////////
//| M249
// =========
#if defined M249
M249_Menu( const Num[] = "1") {
new _M249[256];
formatex(_M249, sizeof(_M249)-1, "\wM249");
menu_additem(Menu, _M249, Num, 0);
}
#endif
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// ----------------------------------------------- | Secondary Weapons | ------------------------------------------------- //
// ======================================================= DaNNe. ========================================================//
///////////
//| Deagle
// ========
#if defined DEAGLE
Deagle_Menu( const Num[] = "1") {
new _DEAGLE[256];
formatex(_DEAGLE, sizeof(_DEAGLE)-1, "\wDeagle");
menu_additem(Menu, _DEAGLE, Num, 0);
}
#endif
///////////
//| Usp
// ========
#if defined USP
USP_Menu( const Num[] = "1") {
new _USP[256];
formatex(_USP, sizeof(_USP)-1, "\wUsp");
menu_additem(Menu, _USP, Num, 0);
}
#endif
///////////
//| Elite
// ========
#if defined ELITE
Elite_Menu( const Num[] = "1") {
new _ELITE[256];
formatex(_ELITE, sizeof(_ELITE)-1, "\wDual Elite");
menu_additem(Menu, _ELITE, Num, 0);
}
#endif
//////////////
//| FiveSeven
// ===========
#if defined FIVESEVEN
Fiveseven_Menu( const Num[] = "1") {
new FIVE[256];
formatex(FIVE, sizeof(FIVE)-1, "\wFive Seven");
menu_additem(Menu, FIVE, Num, 0);
}
#endif
///////////
//| Glock
// ========
#if defined GLOCK18
Glock_Menu( const Num[] = "1") {
new GLOCK[256];
formatex(GLOCK, sizeof(GLOCK)-1, "\wGlock");
menu_additem(Menu, GLOCK, Num, 0);
}
#endif
public CMD_Weapons(id) {
if(!is_user_alive(id))
ColorChat(id, "!t%s!g Nu iti poti alege arma cand esti mort", Prefix);
if(Selected[id])
ColorChat(id, "!t%s!g Ti-ai ales deja o arma aceasta runda", Prefix);
if(is_user_alive(id) && !Selected[id])
ShowMenu(id)
}
stock ColorChat(const id, const input[], any:...) {
new count = 1, players[32];
static msg[191];
vformat(msg, 190, input, 3);
replace_all(msg, 190, "!g", "^4");
replace_all(msg, 190, "!y", "^1");
replace_all(msg, 190, "!t", "^3");
if(id) players[0] = id;
else get_players(players, count, "ch"); {
for(new i = 0; i < count; i++) {
if(is_user_connected(players)) {
message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players);
write_byte(players);
write_string(msg);
message_end();
}
}
}
}
/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1033\\ f0\\ fs16 \n\\ par }
*/