Daca esti terro si scri /goldmenu sa iti apara un mesaj de genul "Trebuie sa fi CT ca sa accesezi acest meniu"
Si as mai dori ca armele cumparate de acolo sa aiba gloante nelimitate si NOCLIP (sa nu incarci niciodata.)
- arme | Afiseaza codul
////////////////////////// //Golden AK Mod // === === //Created by: Rolnaaba // (. ) (. ) //Version: 6.0 // () ////////////////////////// _______ // // **WHAT IT DOES** // ---------------- // This plugin allows you to buy different Golden Weapons with no recoil, higher damage, // and a cool model. Admins can turn on and off the whole Golden-Weapons plugin, // as well as change the cost of the Golden weapons. The Golden Weapons only last one // round so do as much damage as u can! // // **ADMIN COMANDS** // ----------------- // admin_Goldenweapons 1/0 ---(if 1 the plugin if on , if 0 the plugin is off) // admin_AKcost ---(the amount the AK will cost to buy Default is 10000) // admin_M4cost ---(the amount the M4 will cost to buy Default is 10000) // admin_MPcost ---(the amount the MP5 Navy will cost to buy Default is 10000) // // **CLIENT COMANDS** // ------------------ // /Goldenprice ---(list the price of all the weapons) // /Goldenmenu ---(opens the menu to buy the weapons) // // **SPECIAL THANKS TO** // --------------------- // --wonsae, he helped to create the plugin and has my undieing gratatude!! // (he fixed almost ever problem I came in contact with) // --ThomasNguyen, the whole plugin was his idea, I just made it, and wonsae made it work #include <amxmodx> #include <amxmisc> #include <cstrike> #include <fun> #include <fakemeta> new g_Menu; new bool:hasAK[33] = false; new bool:hasM4[33] = false; new bool:hasMP[33] = false; new CVAR_ENABLE; new CVAR_DAMAGE; new CVAR_AKCOST; new CVAR_M4COST; new CVAR_MP5COST; new gKiller = 0; new gVictim = 0; new gHeadshot = 0; new gWeapon[33]; new gChangeDeathEvent = 0; new bool:g_restart_attempt[33]; public plugin_init() { register_plugin("GoldenWeapons", "6.0a", "Rolnaaba"); g_Menu = register_menuid("Golden Weapons"); register_menucmd(g_Menu, 1023, "Goldenmenu"); register_clcmd("say /goldmenu", "showmenu"); register_clcmd("amx_goldmenu", "showmenu"); CVAR_ENABLE = register_cvar("admin_Goldenweapons", "1"); CVAR_DAMAGE = register_cvar("admin_Goldendamage", "3"); CVAR_AKCOST = register_cvar("admin_AKcost", "16000"); CVAR_M4COST = register_cvar("admin_M4cost", "16000"); CVAR_MP5COST = register_cvar("admin_MPcost", "13000"); register_event("CurWeapon","event_curweapon","be", "1=1"); register_event("Damage", "event_damage", "be"); //to detect Player Spawn, WHAT FUN!! (THANKS TO VEN) register_event("ResetHUD", "event_hud_reset", "be"); register_clcmd("fullupdate", "clcmd_fullupdate") ; register_event("TextMsg", "event_restart_attempt", "a", "2=#Game_will_restart_in"); register_message(get_user_msgid("DeathMsg"), "Hook_DeathMsg"); } public clcmd_fullupdate() { return PLUGIN_HANDLED_MAIN; } public event_restart_attempt() { new players[32], num; get_players(players, num, "a"); for (new i; i < num; ++i) g_restart_attempt[players] = true; } public event_hud_reset(id) { if (g_restart_attempt[id]) { g_restart_attempt[id] = false; return; } event_player_spawn(id); } public plugin_precache() { precache_model("models/GoldenAK/v_ak47.mdl"); precache_model("models/GoldenAK/p_ak47.mdl"); precache_model("models/GoldenM4/v_m4a1.mdl"); precache_model("models/GoldenM4/p_m4a1.mdl"); precache_model("models/GoldenMP5/v_mp5.mdl"); precache_model("models/GoldenMP5/p_mp5.mdl"); } public Goldenmenu(id, key) { switch(key) { case 0: SetAK(id); case 1: SetM4(id); case 2: SetMP5(id); default: return PLUGIN_HANDLED; } return PLUGIN_HANDLED; } public showmenu(id) { new akcost = get_pcvar_num(CVAR_AKCOST); new m4cost = get_pcvar_num(CVAR_M4COST); new mp5cost = get_pcvar_num(CVAR_MP5COST); new menu[512]; format(menu, 511, "\rGOLD WEAPONS\w^n^n1. Cumpara Ak-47 De Aur \y(%i$)\w^n2. Cumpara Carabina M4 De Aur \y(%i$)\w^n3. Cumpara Swat MP5 De Aur \y(%i$)\w^n^n0. Iesire^n", akcost, m4cost, mp5cost); new keys = (1<<0|1<<1|1<<2|1<<9); show_menu(id, keys, menu, -1, "Golden Weapons"); } public SetAK(id) { if(!get_pcvar_num(CVAR_ENABLE)) { client_print(id,print_chat,"Golden Weapons Mod is disabled, sorry"); return PLUGIN_HANDLED; } else { new money = cs_get_user_money(id); new price = get_pcvar_num(CVAR_AKCOST); if(!is_user_alive(id)) { client_print(id, print_chat, "You can only buy Golden Weapons when alive"); } else if(hasAK[id]) { client_print(id, print_chat, "You already have a Golden AK"); } else if(money < price) { client_print(id, print_chat, "You can't afford that!"); } else { hasAK[id] = true; strip_user_weapons(id); cs_set_user_money(id, money - price); give_item(id,"weapon_ak47"); give_item(id,"ammo_762nato"); give_item(id,"ammo_762nato"); give_item(id,"ammo_762nato"); client_print(id,print_chat,"You have bought the Golden AK for %i doallars",price); } } return PLUGIN_HANDLED; } public SetM4(id) { if(get_pcvar_num(CVAR_ENABLE) == 0) { client_print(id,print_chat,"Golden Weapons Mod is disabled"); return PLUGIN_HANDLED; } else { new money = cs_get_user_money(id); new price = get_pcvar_num(CVAR_M4COST); if(!is_user_alive(id)) { client_print(id, print_chat, "You can only buy Golden Weapons when alive"); } else if(hasM4[id]) { client_print(id, print_chat, "You already have a Golden M4"); } else if(money < price) { client_print(id, print_chat, "You can't afford that!"); } else { hasM4[id] = true; strip_user_weapons(id); cs_set_user_money(id,cs_get_user_money(id) - price); give_item(id,"weapon_m4a1"); give_item(id,"ammo_556nato"); give_item(id,"ammo_556nato"); give_item(id,"ammo_556nato"); client_print(id,print_chat,"You have bought the Golden M4A1 for %i dollars",price); } } return PLUGIN_HANDLED; } public SetMP5(id) { if(get_pcvar_num(CVAR_ENABLE) == 0) { client_print(id,print_chat,"This mod is disabled"); return PLUGIN_HANDLED; } else { new money = cs_get_user_money(id); new price = get_pcvar_num(CVAR_MP5COST); if(!is_user_alive(id)) { client_print(id, print_chat, "You can only buy Golden Weapons when alive"); } else if(hasMP[id]) { client_print(id, print_chat, "You already have a Golden MP5NAVY"); } else if(money < price) { client_print(id, print_chat, "You can't afford that!"); } else { hasMP[id] = true; strip_user_weapons(id); cs_set_user_money(id,cs_get_user_money(id) - price); give_item(id,"weapon_mp5navy"); give_item(id,"ammo_9mm"); give_item(id,"ammo_9mm"); give_item(id,"ammo_9mm"); give_item(id,"ammo_9mm"); client_print(id,print_chat,"You have bought the Golden MP5NAVY for %i dollars",price); } } return PLUGIN_HANDLED; } public event_curweapon(id) { new clip, ammo, weapon = get_user_weapon(id, clip, ammo); if(hasAK[id] == true && weapon == CSW_AK47) { set_pev(id, pev_viewmodel, "models/GoldenAK/v_ak47.mdl"); set_pev(id, pev_weaponmodel, "models/GoldenAK/p_ak47.mdl"); if(pev(id, pev_button) & IN_ATTACK) { set_pev(id, pev_punchangle, Float:{0.0, 0.0, 0.0}); } } if(hasM4[id] == true && weapon == CSW_M4A1) { set_pev(id, pev_viewmodel, "models/GoldenM4/v_m4a1.mdl"); set_pev(id, pev_weaponmodel, "models/GoldenM4/p_m4a1.mdl"); if(pev(id, pev_button) & IN_ATTACK) { set_pev(id, pev_punchangle, Float:{0.0, 0.0, 0.0}); } } if(hasMP[id] == true && weapon == CSW_MP5NAVY) { set_pev(id, pev_viewmodel, "models/GoldenMP/v_mp5.mdl"); set_pev(id, pev_weaponmodel, "models/GoldenMP/p_mp5.mdl"); if(pev(id, pev_button) & IN_ATTACK) { set_pev(id, pev_punchangle, Float:{0.0, 0.0, 0.0}); } } return PLUGIN_CONTINUE; } public event_damage(id) { new victim_id = id; if(!is_user_connected(victim_id)) return PLUGIN_CONTINUE; new dmg_take = read_data(2); new dmgtype = read_data(3); new Float:multiplier = get_pcvar_float(CVAR_DAMAGE); new Float:damage = dmg_take * multiplier; new health = get_user_health(victim_id); new iWeapID, attacker_id = get_user_attacker(victim_id, iWeapID); if(!is_user_connected(attacker_id) || !is_user_alive(victim_id)) { return PLUGIN_HANDLED; } if(iWeapID == CSW_AK47 && hasAK[attacker_id] == true) { if(floatround(damage) >= health) { if(victim_id == attacker_id) { return PLUGIN_CONTINUE; }else{ log_kill(attacker_id, victim_id, "ak47", 0); } return PLUGIN_CONTINUE; } else { if(victim_id == attacker_id) return PLUGIN_CONTINUE; FAKE_DAMAGE(victim_id, "weapon_ak47", damage, dmgtype); } } else if( iWeapID == CSW_M4A1 && hasM4[attacker_id] == true ) { if( floatround(damage) >= health ) { if( victim_id == attacker_id ) { return PLUGIN_CONTINUE; }else{ log_kill( attacker_id, victim_id, "m4a1", 0 ); } return PLUGIN_CONTINUE; }else { if(victim_id == attacker_id) return PLUGIN_CONTINUE; FAKE_DAMAGE(victim_id, "weapon_m4a1", damage, dmgtype); } } else if(iWeapID == CSW_MP5NAVY && hasMP[attacker_id] == true ) { if(floatround(damage) >= health) { if( victim_id == attacker_id ) { return PLUGIN_CONTINUE; }else{ log_kill(attacker_id, victim_id, "mp5navy", 0); } return PLUGIN_CONTINUE; }else { if( victim_id == attacker_id ) return PLUGIN_CONTINUE; FAKE_DAMAGE(victim_id, "weapon_mp5navy", damage, dmgtype); } } return PLUGIN_CONTINUE; } stock log_kill(killer, victim, weapon[],headshot) { user_kill(victim, 1); gKiller = killer; gVictim = victim; gHeadshot = headshot; copy(gWeapon, 32, weapon); gChangeDeathEvent = 1; // Update killers scorboard with new info message_begin(MSG_ALL, get_user_msgid("ScoreInfo")) write_byte(killer) write_short(get_user_frags(killer)) write_short(get_user_deaths(killer)) write_short(0) write_short(get_user_team(killer)) message_end() // Update victims scoreboard with correct info message_begin(MSG_ALL, get_user_msgid("ScoreInfo")) write_byte(victim) write_short(get_user_frags(victim)) write_short(get_user_deaths(victim)) write_short(0) write_short(get_user_team(victim)) /* message_begin(MSG_ALL, get_user_msgid("DeathMsg"), {0,0,0}, 0); write_byte(killer); write_byte(victim); write_byte(headshot); write_string(weapon); message_end(); new kfrags = get_user_frags( killer ); set_user_frags( killer, kfrags++ ); new vfrags = get_user_frags( victim ); set_user_frags( victim, vfrags++ ); */ return PLUGIN_CONTINUE; } public event_player_spawn(id) { new clip, ammo, weapon = get_user_weapon(id, clip, ammo); new CsTeams:team = cs_get_user_team(id); if(hasAK[id] && weapon == CSW_AK47) { hasAK[id] = false; set_pev(id, pev_viewmodel, "models/v_ak47.mdl"); set_pev(id, pev_weaponmodel, "models/p_ak47.mdl"); if (team == CS_TEAM_T) { give_item(id,"weapon_glock18"); give_item(id,"ammo_9mm"); give_item(id,"weapon_knife"); } else { give_item(id,"weapon_usp"); give_item(id,"ammo_45acp"); give_item(id,"ammo_45acp"); give_item(id,"weapon_knife"); } } else if(hasM4[id] && weapon == CSW_M4A1) { hasM4[id] = false; set_pev(id, pev_viewmodel, "models/v_m4a1.mdl"); set_pev(id, pev_weaponmodel, "models/p_m4a1.mdl"); if (team == CS_TEAM_T) { give_item(id,"weapon_glock18"); give_item(id,"ammo_9mm"); give_item(id,"weapon_knife"); } else { give_item(id,"weapon_usp"); give_item(id,"ammo_45acp"); give_item(id,"ammo_45acp"); give_item(id,"weapon_knife"); } } else if(hasMP[id] && weapon == CSW_MP5NAVY) { hasMP[id] = false; set_pev(id, pev_viewmodel, "models/v_mp5.mdl"); set_pev(id, pev_weaponmodel, "models/p_mp5.mdl"); if (team == CS_TEAM_T) { give_item(id,"weapon_glock18"); give_item(id,"ammo_9mm"); give_item(id,"weapon_knife"); } else { give_item(id,"weapon_usp"); give_item(id,"ammo_45acp"); give_item(id,"ammo_45acp"); give_item(id,"weapon_knife"); } } return PLUGIN_CONTINUE; } //thanks to ojos.inc, god I love that include lol stock FAKE_DAMAGE(idvictim, szClassname[], Float:takedmgdamage, damagetype) { new entity = engfunc(EngFunc_CreateNamedEntity,engfunc(EngFunc_AllocString,"trigger_hurt")); if(entity) { new szDamage[16]; format(szDamage,15,"%f",takedmgdamage * 2); DISPATCH_KEYVALUE(entity,"dmg",szDamage); format(szDamage,15,"%i",damagetype); DISPATCH_KEYVALUE(entity,"damagetype",szDamage); dllfunc(DLLFunc_Spawn, entity); set_pev(entity, pev_classname, szClassname); dllfunc(DLLFunc_Touch, entity, idvictim); engfunc(EngFunc_RemoveEntity, entity); return 1; } return 0; } stock DISPATCH_KEYVALUE(idEntity, szKeyName[], szValue[]) { set_kvd(0, KV_KeyName, szKeyName); set_kvd(0, KV_Value, szValue); set_kvd(0, KV_fHandled, 0); return dllfunc(DLLFunc_KeyValue, idEntity, 0); } public Hook_DeathMsg(msg_id, msg_dest, entid) { if(gChangeDeathEvent) { //As of AMX Mod X 1.5, the middle parameter of set_* no longer does anything. set_msg_arg_int(1, 1, gKiller); set_msg_arg_int(2, 1, gVictim); set_msg_arg_int(3, 1, gHeadshot); set_msg_arg_string(4, gWeapon); gChangeDeathEvent = 0; return PLUGIN_CONTINUE; } return PLUGIN_CONTINUE; }