rn
rn
#includern#include rn#include rn#include rn#include rn#include rnrn#define PLUGIN "Random Weapons"rn#define VERSION "0.1"rn#define AUTHOR "Meathead"rn// Original CS code by doombringerrn#define TIME_AFTER_SPAWN 0.0rn#define MAX_PLAYERS 32rnrnnew bool:g_restart_attempt[MAX_PLAYERS + 1]rnnew cvar, mode;rnnew primary_weapon[32] ,secondary_weapon[32];rnnew g_Msg[3][] = { "", "You got a %s as secondary weapon", "You got a %s as primary weapon" }rn rnpublic plugin_init()rn{rn register_plugin( PLUGIN, VERSION, AUTHOR );rn rn register_event( "ResetHUD", "event_resethud", "be" );rn register_clcmd( "fullupdate", "clcmd_fullupdate" );rn register_event( "TextMsg", "event_restart_attempt", "a", "2=#Game_will_restart_in" );rn rn cvar = register_cvar( "RW_enabled", "1" );rn mode = register_cvar( "RW_mode", "2" );rn} rnrnrnpublic randomize_primary( id )rn{ rn new rand = random_num( 1, 24 )rn rn switch( rand )rn { rn case 1 : primary_weapon[id] = DODW_GARAND;rn case 2 : primary_weapon[id] = DODW_SCOPED_KAR;rn case 3 : primary_weapon[id] = DODW_THOMPSON;rn case 4 : primary_weapon[id] = DODW_STG44; rn case 5 : primary_weapon[id] = DODW_SPRINGFIELD;rn case 6 : primary_weapon[id] = DODW_KAR; rn case 7 : primary_weapon[id] = DODW_BAR;rn case 8 : primary_weapon[id] = DODW_MP40; rn case 9 : primary_weapon[id] = DODW_MG42; rn case 10 : primary_weapon[id] = DODW_30_CAL;rn case 11 : primary_weapon[id] = DODW_M1_CARBINE;rn case 12 : primary_weapon[id] = DODW_MG34;rn case 13 : primary_weapon[id] = DODW_GREASEGUN;rn case 14 : primary_weapon[id] = DODW_FG42;rn case 15 : primary_weapon[id] = DODW_K43;rn case 16 : primary_weapon[id] = DODW_ENFIELD;rn case 17 : primary_weapon[id] = DODW_STEN;rn case 18 : primary_weapon[id] = DODW_BREN;rn case 19 : primary_weapon[id] = DODW_BAZOOKA;rn case 20 : primary_weapon[id] = DODW_PANZERSCHRECK;rn case 21 : primary_weapon[id] = DODW_PIAT;rn case 22 : primary_weapon[id] = DODW_SCOPED_FG42;rn case 23 : primary_weapon[id] = DODW_FOLDING_CARBINE;rn case 24 : primary_weapon[id] = DODW_SCOPED_ENFIELD;rn }rn}rnrnpublic randomize_secondary( id )rn{rn new rand = random_num( 1,3 )rn rn switch( rand )rn {rn case 1: secondary_weapon[id] = DODW_COLT;rn case 2: secondary_weapon[id] = DODW_LUGER;rn case 3: secondary_weapon[id] = DODW_WEBLEY;rn rn }rn}rnrnpublic clcmd_fullupdate( ) rn{rn return PLUGIN_HANDLED_MAIN;rn}rnrnpublic event_restart_attempt( ) rn{rn new players[32], num;rn get_players( players, num, "a" );rn rn for( new i; i < num; ++i )rn g_restart_attempt[players[i]] = true;rn}rnrnpublic event_resethud( id ) rn{rn if ( g_restart_attempt[id] ) rn {rn g_restart_attempt[id] = false;rn return;rn }rn event_player_spawn( id );rn}rnrnpublic give_things( id ) rn{rn if( get_pcvar_num( cvar ) < 1 )rn return;rn rn new weapon[2][27], ammo_type[27], a;rn rn switch( get_pcvar_num( mode ) )rn {rn case 0:rn {rn randomize_secondary( id )rn get_weaponname( secondary_weapon[id], weapon[1], 26 )rn give_item( id, weapon[1] ) rn ammo_type = get_ammotype( secondary_weapon[id] )rn rn for( a = 0; a < 5; a++ )rn give_item( id, ammo_type )rn rn client_print( id, print_chat, g_Msg[1] ,weapon[1][7] )rn }rn rn case 1:rn {rn randomize_primary( id )rn get_weaponname( primary_weapon[id], weapon[0], 26 )rn give_item( id, weapon[0] )rn ammo_type = get_ammotype( primary_weapon[id] ) rn rn for( a = 0; a < 5; a++) rn give_item( id, ammo_type ) rn rn client_print( id, print_chat, g_Msg[2], weapon[0][7] )rn }rn rn case 2:rn {rn randomize_primary( id )rn get_weaponname( primary_weapon[id], weapon[0], 26 ) rn give_item( id, weapon[0] )rn ammo_type = get_ammotype( primary_weapon[id] )rn rn for( a = 0; a < 5; a++ )rn give_item( id, ammo_type )rn rn client_print( id, print_chat, g_Msg[2], weapon[0][7]) rnrn randomize_secondary( id ) rn get_weaponname( secondary_weapon[id], weapon[1], 26 ) rn give_item( id, weapon[1] ) rn ammo_type = get_ammotype(secondary_weapon[id] )rn rn for(a = 0; a < 5; a++)rn give_item(id, ammo_type)rn rn client_print( id, print_chat, g_Msg[1], weapon[1][7] )rn }rn }rn}rnrnpublic strip_weapons( id )rn{rnif(user_has_weapon(id, DODW_COLT))rn {rn ham_strip_weapon(id, "weapon_colt");rn ham_strip_weapon(id, "weapon_garand");rn ham_strip_weapon(id, "weapon_thompson");rn ham_strip_weapon(id, "weapon_spring");rn ham_strip_weapon(id, "weapon_bar");rn ham_strip_weapon(id, "weapon_30cal"); rn ham_strip_weapon(id, "weapon_m1carbine");rn ham_strip_weapon(id, "weapon_greasegun");rn ham_strip_weapon(id, "weapon_bazooka");rn ham_strip_weapon(id, "weapon_luger");rn ham_strip_weapon(id, "weapon_scopedkar");rn ham_strip_weapon(id, "weapon_mp44");rn ham_strip_weapon(id, "weapon_kar");rn ham_strip_weapon(id, "weapon_mp40");rn ham_strip_weapon(id, "weapon_mg42");rn ham_strip_weapon(id, "weapon_mg34");rn ham_strip_weapon(id, "weapon_fg42");rn ham_strip_weapon(id, "weapon_k43");rn ham_strip_weapon(id, "weapon_tmp");rn ham_strip_weapon(id, "weapon_enfield");rn ham_strip_weapon(id, "weapon_sten");rn ham_strip_weapon(id, "weapon_bren");rn ham_strip_weapon(id, "weapon_webley");rn ham_strip_weapon(id, "weapon_pschreck");rn ham_strip_weapon(id, "weapon_piat");rn give_things( id );rn }rnif(user_has_weapon(id, DODW_LUGER))rn {rn ham_strip_weapon(id, "weapon_colt");rn ham_strip_weapon(id, "weapon_garand");rn ham_strip_weapon(id, "weapon_thompson");rn ham_strip_weapon(id, "weapon_spring");rn ham_strip_weapon(id, "weapon_bar");rn ham_strip_weapon(id, "weapon_30cal"); rn ham_strip_weapon(id, "weapon_m1carbine");rn ham_strip_weapon(id, "weapon_greasegun");rn ham_strip_weapon(id, "weapon_bazooka");rn ham_strip_weapon(id, "weapon_luger");rn ham_strip_weapon(id, "weapon_scopedkar");rn ham_strip_weapon(id, "weapon_mp44");rn ham_strip_weapon(id, "weapon_kar");rn ham_strip_weapon(id, "weapon_mp40");rn ham_strip_weapon(id, "weapon_mg42");rn ham_strip_weapon(id, "weapon_mg34");rn ham_strip_weapon(id, "weapon_fg42");rn ham_strip_weapon(id, "weapon_k43");rn ham_strip_weapon(id, "weapon_tmp");rn ham_strip_weapon(id, "weapon_enfield");rn ham_strip_weapon(id, "weapon_sten");rn ham_strip_weapon(id, "weapon_bren");rn ham_strip_weapon(id, "weapon_webley");rn ham_strip_weapon(id, "weapon_pschreck");rn ham_strip_weapon(id, "weapon_piat");rn give_things( id );rn }rn if(user_has_weapon(id, DODW_WEBLEY))rn {rn ham_strip_weapon(id, "weapon_colt");rn ham_strip_weapon(id, "weapon_garand");rn ham_strip_weapon(id, "weapon_thompson");rn ham_strip_weapon(id, "weapon_spring");rn ham_strip_weapon(id, "weapon_bar");rn ham_strip_weapon(id, "weapon_30cal"); rn ham_strip_weapon(id, "weapon_m1carbine");rn ham_strip_weapon(id, "weapon_greasegun");rn ham_strip_weapon(id, "weapon_bazooka");rn ham_strip_weapon(id, "weapon_luger");rn ham_strip_weapon(id, "weapon_scopedkar");rn ham_strip_weapon(id, "weapon_mp44");rn ham_strip_weapon(id, "weapon_kar");rn ham_strip_weapon(id, "weapon_mp40");rn ham_strip_weapon(id, "weapon_mg42");rn ham_strip_weapon(id, "weapon_mg34");rn ham_strip_weapon(id, "weapon_fg42");rn ham_strip_weapon(id, "weapon_k43");rn ham_strip_weapon(id, "weapon_tmp");rn ham_strip_weapon(id, "weapon_enfield");rn ham_strip_weapon(id, "weapon_sten");rn ham_strip_weapon(id, "weapon_bren");rn ham_strip_weapon(id, "weapon_webley");rn ham_strip_weapon(id, "weapon_pschreck");rn ham_strip_weapon(id, "weapon_piat");rn give_things( id );rn }rn}rnrnrnpublic event_player_spawn( id )rn{rn set_task( TIME_AFTER_SPAWN, "strip_weapons", id );rn}rnrnstock ham_strip_weapon(id,weapon[])rn{ rn if(!equal(weapon,"weapon_",7)) return 0;rnrn new wId = get_weaponid(weapon);rn if(!wId) return 0;rnrn new wEnt = fm_find_ent_by_owner(1,weapon,id);rn if(!wEnt) return 0;rn rn new dummy, weapon = get_user_weapon(id,dummy,dummy);rn if(weapon == wId) ExecuteHamB(Ham_Weapon_RetireWeapon,wEnt);rn rn if(!ExecuteHamB(Ham_RemovePlayerItem,id,any:wEnt)) return 0;rn ExecuteHamB(Ham_Item_Kill,wEnt);rnrn set_pev(id,pev_weapons,pev(id,pev_weapons) & ~(1<

