- | Afiseaza codul
#include <amxmodx> #include <amxmisc> #include <cstrike> #include <fakemeta> #include <hamsandwich> #include <fun> new const PLUGIN[] = "Furien Weapons T"; new const VERSION[] = "1.0"; new const AUTHOR[] = "*BoOoM*"; new const szName [] = "\rNume\w.\yNume\w.\rRo"; native fcs_get_user_credits(id); native fcs_set_user_credits(id, credits); #define VIP_FLAG ADMIN_LEVEL_H #define IsPlayer(%0) ( 1 <= %0 <= g_iMaxPlayers ) new const Knife1Model[66] = "models/furienknife/v_lava_knife.mdl"; new const Knife2Model[66] = "models/furienknife/v_karambit_knife.mdl"; new const Knife3Model[66] = "models/furienknife/v_wolverin_knife.mdl"; new const Knife4Model[66] = "models/furienknife/v_neon_knife.mdl"; new const Knife5Model[66] = "models/furienknife/v_celurit_knife.mdl"; new const KnifeGold1Model[66] = "models/furienknife/v_default_goldknife.mdl"; new const KnifeGold2Model[66] = "models/furienknife/v_hilius_goldknife.mdl"; new const KnifeGold3Model[66] = "models/furienknife/v_axe_goldknife.mdl"; /*===========================pe credite=====*/ new const Knifecredite1Model[66] = "models/furienknife/v_default_goldknife.mdl"; new const Knifecredite2Model[66] = "models/furienknife/v_hilius_goldknife.mdl"; new const Knifecredite3Model[66] = "models/furienknife/v_axe_goldknife.mdl"; new const Knifecredite4Model[66] = "models/furienknife/v_axe_goldknife.mdl"; new bool: Knife1[33]; new bool: Knife2[33]; new bool: Knife3[33]; new bool: Knife4[33]; new bool: Knife5[33]; new bool: KnifeGold1[33]; new bool: KnifeGold2[33]; new bool: KnifeGold3[33]; new bool: Knifecredite1[33]; new bool: Knifecredite2[33]; new bool: Knifecredite3[33]; new bool: Knifecredite4[33]; new bool: KnifeChoosen[33]; new g_iMaxPlayers; new knife[5]; public plugin_init() { register_plugin(PLUGIN, VERSION, AUTHOR); knife[1] = register_cvar("knife1_credits", "15"); knife[2] = register_cvar("knife2_credits", "25"); knife[3] = register_cvar("knife3_credits", "35"); knife[4] = register_cvar("knife4_credits", "45"); register_clcmd("say /knife","SayKnife"); register_event("CurWeapon", "CurentWeapon", "be", "1=1"); RegisterHam(Ham_Spawn, "player", "Spawn", true); RegisterHam(Ham_TakeDamage, "player", "DamageKnife"); g_iMaxPlayers = get_maxplayers ( ); } public plugin_precache() { precache_model(Knife1Model); precache_model(Knife2Model); precache_model(Knife3Model); precache_model(Knife4Model); precache_model(Knife5Model); precache_model(KnifeGold1Model); precache_model(KnifeGold2Model); precache_model(KnifeGold3Model); precache_model(Knifecredite1Model); precache_model(Knifecredite2Model); precache_model(Knifecredite3Model); precache_model(Knifecredite4Model); } public Spawn(id) { if(is_user_alive(id)) { KnifeChoosen[id] = false; RemoveKnife(id) if(cs_get_user_team(id) == CS_TEAM_T) { MenuKnife(id); } } } public MenuKnife(id) { new Titlu[193]; formatex(Titlu, sizeof(Titlu) - 1, "\w%s \yKnife \rMenu", szName); new menu = menu_create (Titlu, "CaseMenu"); menu_additem(menu, "\yPlayer \rKnife", "1"); menu_additem(menu, "\yCredite \rKnife", "2"); menu_additem(menu, "\yV\w.\yI\w.\yP \rKnife", "3"); menu_setprop(menu, MPROP_EXIT, MEXIT_ALL); menu_display(id, menu, 0 ); return 1; } public CaseMenu(id, menu, item) { if(item == MENU_EXIT) { menu_destroy (menu); return 1; } switch (item) { case 0: { MenuPlayeri(id); } case 1: { MenuCredite(id); } case 2: { if( get_user_flags( id ) & VIP_FLAG ) { MenuVIP(id); } else { ChatColor(id, "!g[Furien Knife]!nAcest meniu poate fi accesat doar de membri !gVIP"); MenuKnife(id); } } } menu_destroy (menu); return 1; } public MenuPlayeri(id) { new menu = menu_create ("\yFurien \rPlayer \yKnife \rMenu", "CaseKnifePlayeri"); menu_additem(menu, "\yLava \rKnife", "1"); menu_additem(menu, "\yKarambit \rKnife", "2"); menu_additem(menu, "\yWolverin \rKnife", "3"); menu_additem(menu, "\yNeon \rKnife", "4"); menu_additem(menu, "\yCelurit \rKnife", "5"); menu_setprop(menu, MPROP_EXIT, MEXIT_ALL); menu_display(id, menu, 0 ); return 1; } public CaseKnifePlayeri(id, menu, item) { if(item == MENU_EXIT) { menu_destroy (menu); return 1; } if(!(is_user_alive(id))) { ChatColor(id, "!g[Furien Knife] !nNu poti alege cutitul atunci când esti mort"); menu_destroy (menu); return 1; } switch (item) { case 0: { RemoveKnife(id); KnifeChoosen[id] = true; Knife1[id] = true; CurentWeapon(id); ChatColor(id, "!g[Furien Knife] !nAi Ales !gLava Knife"); } case 1: { RemoveKnife(id); KnifeChoosen[id] = true; Knife2[id] = true; CurentWeapon(id); ChatColor(id, "!g[Furien Knife] !nAi Ales !gKarambit Knife"); } case 2: { RemoveKnife(id); KnifeChoosen[id] = true; Knife3[id] = true; CurentWeapon(id); ChatColor(id, "!g[Furien Knife] !nAi ales !gWolverin Knife"); } case 3: { RemoveKnife(id); KnifeChoosen[id] = true; Knife4[id] = true; CurentWeapon(id); ChatColor(id, "!g[Furien Knife] !nAi ales !gNeon Knife"); } case 4: { RemoveKnife(id); KnifeChoosen[id] = true; Knife5[id] = true; CurentWeapon(id); ChatColor(id, "!g[Furien Knife] !nAi ales !gCelurit Knife"); } } menu_destroy (menu); return 1; } public MenuVIP(id) { new menu = menu_create ("\yFurien \rVIP \yKnife \rMenu", "CaseKnifeVIP"); menu_additem(menu, "\wDefault \yGold \rKnife", "1"); menu_additem(menu, "\wHilius \yGold \rKnife ", "2"); menu_additem(menu, "\wAxe \yGold \rKnife", "3"); menu_setprop(menu, MPROP_EXIT, MEXIT_ALL); menu_display(id, menu, 0 ); return 1; } public CaseKnifeVIP(id, menu, item) { if(item == MENU_EXIT) { menu_destroy (menu); return 1; } if(!(is_user_alive(id))) { ChatColor(id, "!g[Furien Knife] !nNu poti alege cutitul atunci când esti mort"); menu_destroy (menu); return 1; } switch (item) { case 0: { RemoveKnife(id); KnifeChoosen[id] = true; KnifeGold1[id] = true; CurentWeapon(id); ChatColor(id, "!g[Furien Knife] !nAi ales !gKnife Gold"); } case 1: { RemoveKnife(id); KnifeChoosen[id] = true; KnifeGold2[id] = true; CurentWeapon(id); ChatColor(id, "!g[Furien Knife] !nAi ales !gHilius Gold"); } case 2: { RemoveKnife(id); KnifeChoosen[id] = true; KnifeGold3[id] = true; CurentWeapon(id); ChatColor(id, "!g[Furien Knife] !nAi ales !gAxe Gold"); } } menu_destroy (menu); return 1; } public MenuCredite(id) { new Titlu[193], Credits = fcs_get_user_credits(id); formatex(Titlu, sizeof(Titlu) - 1, "\yFurien \rCredite \yKnife \rMenu \n Credite : %i", Credits); new menu = menu_create (Titlu, "CaseKnifeCredite"); if(Credits>get_pcvar_num(knife[1])) { new Item[193]; formatex(Item, sizeof(Item) - 1, "\yLava Knife - \r%d credits", get_pcvar_num(knife[1])); menu_additem(menu, Item, "1"); } else { menu_additem(menu, "\yLava Knife - \dNo credits", "1"); } if(Credits>get_pcvar_num(knife[2])) { new Item[193]; formatex(Item, sizeof(Item) - 1, "\yKarambit Knife - \r%d credits", get_pcvar_num(knife[2])); menu_additem(menu, Item, "2"); } else { menu_additem(menu, "\yKarambit Knife - \dNo credits", "2"); } if(Credits>get_pcvar_num(knife[3])) { new Item[193]; formatex(Item, sizeof(Item) - 1, "\yWolverin Knife - \r%d credits", get_pcvar_num(knife[3])); menu_additem(menu, Item, "3"); } else { menu_additem(menu, "\yWolverin Knife - \dNo credits", "3"); } if(Credits>get_pcvar_num(knife[4])) { new Item[193]; formatex(Item, sizeof(Item) - 1, "\yNeon Knife - \r%d credits", get_pcvar_num(knife[4])); menu_additem(menu, Item, "4"); } else { menu_additem(menu, "\yNeon Knife - \dNo credits", "4"); } menu_setprop(menu, MPROP_EXIT, MEXIT_ALL); menu_display(id, menu, 0 ); return 1; } public CaseKnifeCredite(id, menu, item) { if(item == MENU_EXIT) { menu_destroy (menu); return 1; } if(!(is_user_alive(id))) { ChatColor(id, "!g[Furien Knife] !nNu poti alege cutitul atunci când esti mort"); menu_destroy (menu); return 1; } switch (item) { case 0: { new iCredits = fcs_get_user_credits ( id ) - 15; if( iCredits < 0 ) { ChatColor(id, "!g[Furien Knife] !nNu ai !gsuficiente credite"); return 1; } RemoveKnife(id); KnifeChoosen[id] = true; Knifecredite1[id] = true; CurentWeapon(id); ChatColor(id, "!g[Furien Knife] !nAi Ales !gLava Knife"); fcs_set_user_credits(id, iCredits); return 1; } case 1: { new iCredits = fcs_get_user_credits ( id ) - 15; if( iCredits < 0 ) { ChatColor(id, "!g[Furien Knife] !nNu ai !gsuficiente credite"); return 1; } RemoveKnife(id); KnifeChoosen[id] = true; Knifecredite2[id] = true; CurentWeapon(id); ChatColor(id, "!g[Furien Knife] !nAi Ales !gKarambit Knife"); fcs_set_user_credits(id, iCredits); return 1; } case 2: { new iCredits = fcs_get_user_credits ( id ) - 15; if( iCredits < 0 ) { ChatColor(id, "!g[Furien Knife] !nNu ai !gsuficiente credite"); return 1; } RemoveKnife(id); KnifeChoosen[id] = true; Knifecredite3[id] = true; CurentWeapon(id); ChatColor(id, "!g[Furien Knife] !nAi ales !gWolverin Knife"); fcs_set_user_credits(id, iCredits); return 1; } case 3: { new iCredits = fcs_get_user_credits ( id ) - 15; if( iCredits < 0 ) { ChatColor(id, "!g[Furien Knife] !nNu ai !gsuficiente credite"); return 1; } RemoveKnife(id); KnifeChoosen[id] = true; Knifecredite4[id] = true; CurentWeapon(id); ChatColor(id, "!g[Furien Knife] !nAi ales !gNeon Knife"); fcs_set_user_credits(id, iCredits); return 1; } } menu_destroy (menu); return 1; } public CurentWeapon(id) { if(get_user_weapon(id) == CSW_KNIFE) { if(Knife1[id]) set_pev(id, pev_viewmodel2, Knife1Model); if(Knife2[id]) set_pev(id, pev_viewmodel2, Knife2Model); if(Knife3[id]) set_pev(id, pev_viewmodel2, Knife3Model); if(Knife4[id]) set_pev(id, pev_viewmodel2, Knife4Model); if(Knife5[id]) set_pev(id, pev_viewmodel2, Knife5Model); if(KnifeGold1[id]) set_pev(id, pev_viewmodel2, KnifeGold1Model); if(KnifeGold2[id]) set_pev(id, pev_viewmodel2, KnifeGold2Model); if(KnifeGold3[id]) set_pev(id, pev_viewmodel2, KnifeGold3Model); if(Knifecredite1[id]) set_pev(id, pev_viewmodel2, Knifecredite1Model); if(Knifecredite2[id]) set_pev(id, pev_viewmodel2, Knifecredite2Model); if(Knifecredite3[id]) set_pev(id, pev_viewmodel2, Knifecredite3Model); } } public DamageKnifee ( iVictim, iInflictor, iAttacker, Float:fDamage, iDamageBits ) { if ( IsPlayer ( iAttacker ) ) { if( iInflictor == iAttacker && Knife1 [ iAttacker ] && is_user_alive( iAttacker ) && get_user_weapon(iAttacker) == CSW_KNIFE ) { SetHamParamFloat( 4, fDamage * 2.0); return HAM_HANDLED; } if( iInflictor == iAttacker && Knife2 [ iAttacker ] && is_user_alive( iAttacker ) && get_user_weapon(iAttacker) == CSW_KNIFE ) { SetHamParamFloat( 4, fDamage * 2.0); return HAM_HANDLED; } if( iInflictor == iAttacker && Knife3 [ iAttacker ] && is_user_alive( iAttacker ) && get_user_weapon(iAttacker) == CSW_KNIFE ) { SetHamParamFloat( 4, fDamage * 2.0); return HAM_HANDLED; } if( iInflictor == iAttacker && Knife4 [ iAttacker ] && is_user_alive( iAttacker ) && get_user_weapon(iAttacker) == CSW_KNIFE ) { SetHamParamFloat( 4, fDamage * 2.0); return HAM_HANDLED; } if( iInflictor == iAttacker && Knife5 [ iAttacker ] && is_user_alive( iAttacker ) && get_user_weapon(iAttacker) == CSW_KNIFE ) { SetHamParamFloat( 4, fDamage * 2.0); return HAM_HANDLED; } if( iInflictor == iAttacker && KnifeGold1 [ iAttacker ] && is_user_alive( iAttacker ) && get_user_weapon(iAttacker) == CSW_KNIFE ) { SetHamParamFloat( 4, fDamage * 3.0); return HAM_HANDLED; } if( iInflictor == iAttacker && KnifeGold2 [ iAttacker ] && is_user_alive( iAttacker ) && get_user_weapon(iAttacker) == CSW_KNIFE ) { SetHamParamFloat( 4, fDamage * 3.0); return HAM_HANDLED; } if( iInflictor == iAttacker && KnifeGold3 [ iAttacker ] && is_user_alive( iAttacker ) && get_user_weapon(iAttacker) == CSW_KNIFE ) { SetHamParamFloat( 4, fDamage * 3.0); return HAM_HANDLED; } if( iInflictor == iAttacker && Knifecredite1 [ iAttacker ] && is_user_alive( iAttacker ) && get_user_weapon(iAttacker) == CSW_KNIFE ) { SetHamParamFloat( 4, fDamage * 4.0); return HAM_HANDLED; } if( iInflictor == iAttacker && Knifecredite2 [ iAttacker ] && is_user_alive( iAttacker ) && get_user_weapon(iAttacker) == CSW_KNIFE ) { SetHamParamFloat( 4, fDamage * 4.0); return HAM_HANDLED; } if( iInflictor == iAttacker && Knifecredite3 [ iAttacker ] && is_user_alive( iAttacker ) && get_user_weapon(iAttacker) == CSW_KNIFE ) { SetHamParamFloat( 4, fDamage * 4.0); return HAM_HANDLED; } if( iInflictor == iAttacker && Knifecredite4 [ iAttacker ] && is_user_alive( iAttacker ) && get_user_weapon(iAttacker) == CSW_KNIFE ) { SetHamParamFloat( 4, fDamage * 4.0); return HAM_HANDLED; } } return HAM_IGNORED; } public SayKnife(id) { if(KnifeChoosen[id]) { ChatColor(id, "!g[Furien Knife] !nAti ales deja un cutit in aceasta runda"); return; } else if(get_user_team(id) == 1) { MenuKnife(id); } else return; } public RemoveKnife(id) { Knife1[id] = false; Knife2[id] = false; Knife3[id] = false; Knife4[id] = false; Knife5[id] = false; KnifeGold1[id] = false; KnifeGold2[id] = false; KnifeGold3[id] = false; Knifecredite1[id] = false; Knifecredite2[id] = false; Knifecredite3[id] = false; Knifecredite4[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"); // verde replace_all(msg, 190, "!n", "^1"); // galben/alb/negru replace_all(msg, 190, "!t", "^3"); // rosu/albastru/gri replace_all(msg, 190, "!t2", "^0"); // rosu2/albastru2/gri2 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(); } } }
La acest plugin doresc sa-mi adaugati inca 4 knife la "knife pe credite", 4 cutite la "knife vip" , nu conteaza ce modele sau nume le puneti , le modific eu , nativul de credite sa fie acelasi cum este in plugin (al lui Ulquiora sau ceva gen..) Dmg-ul sa fie acelasi cum este in plugin , gen la knife pe credite sa fie 3.0 la toate , la vip 4.0 , oricum o sa le modific , doresc doar adaugarea lor, va multumesc pentru timpul acordat !