- | Afiseaza codul
/* Plugin generated by AMXX-Studio */ #include <amxmodx> #include <amxmisc> #include <fakemeta> #include <fun> #include <cstrike> #include <hamsandwich> native get_user_ethereal(id) native set_user_ethereal(id, bool:active) #define PLUGIN "Furien Weapons Menu" #define VERSION "1.0" #define AUTHOR "tre3fla, Fixed by lucylucy" #define ADMIN_FLAG ADMIN_KICK #define VIP_FLAG ADMIN_LEVEL_H #define is_valid_player(%1) (1 <= %1 <= 32) /* AK47 Golden pentru VIP */ new const vGoldenAk[ 64 ] = "models/antifurienweapons/v_goldenak.mdl" new const pGoldenAk[ 64 ] = "models/antifurienweapons/p_goldenak.mdl" /* M4A1 Golden pentru VIP */ new const vGoldenM4[ 64 ] = "models/antifurienweapons/v_goldenm4.mdl" new const pGoldenM4[ 64 ] = "models/antifurienweapons/p_goldenm4.mdl" /* MP5 Navy Golden pentru VIP */ new const vGoldenMP5[ 64 ] = "models/antifurienweapons/v_goldenmp5.mdl" new const pGoldenMP5[ 64 ] = "models/antifurienweapons/p_goldenmp5.mdl" /* AWP Golden pentru VIP */ new const vGoldenAWP[ 64 ] = "models/antifurienweapons/v_goldenawp.mdl" new const pGoldenAWP[ 64 ] = "models/antifurienweapons/p_goldenawp.mdl" //new m_spriteTexture new bool: ArmaPrimita[ 33 ] new bool: AreGoldenAK[ 33 ] new bool: AreGoldenM4[ 33 ] new bool: AreGoldenMP5[ 33 ] new bool: AreGoldenAWP[ 33 ] new normalTrace[33], lastTrace[33], cvEnabled, weapon, dummy; public plugin_init( ) { register_plugin( PLUGIN, VERSION, AUTHOR ) register_event( "CurWeapon", "Event_CurWeapon", "be", "1=1" ) //register_event("CurWeapon", "GoldenEffect", "be", "1=1", "3>0" ) cvEnabled = register_cvar("fwm_enabled","1"); register_event("ResetHUD","event_resethud","b"); // register_clcmd("fullupdate","cmd_fullupdate"); register_forward(FM_TraceLine,"fw_traceline"); register_forward(FM_PlayerPostThink,"fw_playerpostthink"); // RegisterHam( Ham_Spawn, "player", "fwPlayerSpawn", true ) RegisterHam( Ham_TakeDamage, "player", "fwTakeDamage" ) register_clcmd( "say /weapons", "ClcmdWeaponsMenus" ) } public plugin_precache( ) { precache_model( vGoldenAk ) precache_model( pGoldenAk ) precache_model( vGoldenM4 ) precache_model( pGoldenM4 ) precache_model( vGoldenMP5 ) precache_model( pGoldenMP5 ) precache_model( vGoldenAWP ) precache_model( pGoldenAWP ) //m_spriteTexture = precache_model( "sprites/dot.spr" ) } public fwPlayerSpawn( id ) { AreGoldenAK[ id ] = false AreGoldenM4[ id ] = false AreGoldenMP5[ id ] = false AreGoldenAWP[ id ] = false ArmaPrimita[ id ] = false if( is_user_alive( id ) && cs_get_user_team( id ) == CS_TEAM_CT ) { strip_user_weapons( id ) PopUpWeaponsMenu( id ) give_item( id, "weapon_knife" ) give_item( id, "weapon_usp" ) cs_set_user_bpammo( id, CSW_USP, 100 ) } else if( is_user_alive( id ) && cs_get_user_team( id ) == CS_TEAM_T ) { strip_user_weapons( id ) give_item( id, "weapon_knife" ) give_item( id, "weapon_hegrenade" ) give_item( id, "weapon_flashbang" ) give_item( id, "weapon_smokegrenade" ) cs_set_user_bpammo( id, CSW_FLASHBANG, 2 ) } } public PopUpWeaponsMenu( id ) { new FurienWeaponsMenu = menu_create( "\yAnti-Furien\r Weapons", "FurienWeaponsHandler" ) menu_additem( FurienWeaponsMenu, "Arme\y Hunter", "1", 0 ) menu_additem( FurienWeaponsMenu, "Arme\r V.I.P", "2", 0 ) menu_additem( FurienWeaponsMenu, "Armea\r Ethereal", "3", 0 ) menu_setprop( FurienWeaponsMenu, MPROP_EXIT, MEXIT_ALL ) menu_display( id, FurienWeaponsMenu, 0 ) } public FurienWeaponsHandler( id, FurienWeaponsMenu, item ) { if( item == MENU_EXIT ) { menu_destroy( FurienWeaponsMenu ) return PLUGIN_HANDLED } switch( item ) { case 0 : { ArmeNormale( id ) } case 1 : { if( get_user_flags( id ) & VIP_FLAG ) { ArmeVIP( id ) } else { ColorChat( id, "^4[Furien Weapons]^1 Aceste arme sunt rezervate numai pentru^3 V.I.P^1." ) PopUpWeaponsMenu( id ) } case 2 : { if( get_user_ethereal(id) ) { ColorChat(id,GREEN,"[Shop]^x01 Ai deja ^x04[Ethereal] ^x01!"); } else if(cs_get_user_money(id) < 3000) { ColorChat(id,GREEN,"[Furien Weapons]^x01 Ai prea putini bani pentru a cumpara ^x04[Ethereal] ^x01!"); } else { ColorChat(id,GREEN,"[Furien Weapons]^x01 Ai cumparat ^x04[Ethereal] ^x01!"); cs_set_user_money(id, cs_get_user_money(id) - 3000) set_user_ethereal(id, true) } } } } menu_destroy( FurienWeaponsMenu ) return PLUGIN_HANDLED } public ArmeNormale( id ) { new MeniuArmeNormale = menu_create( "\yArme\r Hunter", "ArmeNormaleHandler" ) menu_additem( MeniuArmeNormale, "Monster\r (\yAK47\r)", "1", 0 ) menu_additem( MeniuArmeNormale, "Spider\r (\yM4A1\r)", "2", 0 ) menu_additem( MeniuArmeNormale, "Nurben\r (\yNavy\r)", "3", 0 ) menu_additem( MeniuArmeNormale, "Sniper\r (\yAWP\r)", "4", 0 ) menu_setprop( MeniuArmeNormale, MPROP_EXIT, MEXIT_ALL ) menu_display( id, MeniuArmeNormale, 0 ) } public ArmeNormaleHandler( id, MeniuArmeNormale, item ) { if( !is_user_alive( id ) ) { ColorChat( id, "^4[Furien Weapons]^1 Nu iti poti alege arma atunci cand esti mort!" ) return PLUGIN_HANDLED } if( item == MENU_EXIT ) { menu_destroy( MeniuArmeNormale ) return PLUGIN_HANDLED } switch( item ) { case 0 : { give_item( id, "weapon_ak47" ) give_item( id, "weapon_smokegrenade" ) cs_set_user_bpammo( id, CSW_AK47, 200 ) ArmaPrimita[ id ] = true } case 1 : { give_item( id, "weapon_m4a1" ) give_item( id, "weapon_smokegrenade" ) cs_set_user_bpammo( id, CSW_M4A1, 200 ) ArmaPrimita[ id ] = true } case 2 : { give_item( id, "weapon_mp5navy" ) give_item( id, "weapon_smokegrenade" ) cs_set_user_bpammo( id, CSW_MP5NAVY, 200 ) ArmaPrimita[ id ] = true } case 3 : { give_item( id, "weapon_awp" ) give_item( id, "weapon_smokegrenade" ) cs_set_user_bpammo( id, CSW_AWP, 30 ) ArmaPrimita[ id ] = true } } menu_destroy( MeniuArmeNormale ) return PLUGIN_HANDLED } public ArmeVIP( id ) { new MeniuArmeVIP = menu_create( "\yArme \r*\w V\r.\wI\r.\wP\r *", "ArmeVIPHandler" ) menu_additem( MeniuArmeVIP, "Golden AK47\r (\y2x DMG\r)", "1", 0 ) menu_additem( MeniuArmeVIP, "Golden M4A1\r (\y2x DMG\r)", "2", 0 ) menu_additem( MeniuArmeVIP, "Golden MP5\r (\y2x DMG\r)", "3", 0 ) menu_additem( MeniuArmeVIP, "Golden AWP\r (\y2x DMG\r)", "4", 0 ) menu_setprop( MeniuArmeVIP, MPROP_EXIT, MEXIT_ALL ) menu_display( id, MeniuArmeVIP, 0 ) } public ArmeVIPHandler( id, MeniuArmeVIP, item ) { if( !is_user_alive( id ) ) { ColorChat( id, "^4[Furien Weapons]^1 Nu iti poti alege arma atunci cand esti mort!" ) return PLUGIN_HANDLED } if( item == MENU_EXIT ) { menu_destroy( MeniuArmeVIP ) return PLUGIN_HANDLED } switch( item ) { case 0 : { give_item( id, "weapon_ak47" ) give_item( id, "weapon_smokegrenade" ) cs_set_user_bpammo( id, CSW_AK47, 250 ) set_pev( id, pev_viewmodel2, vGoldenAk ) set_pev( id, pev_weaponmodel2, pGoldenAk ) ArmaPrimita[ id ] = true AreGoldenAK[ id ] = true } case 1 : { give_item( id, "weapon_m4a1" ) give_item( id, "weapon_smokegrenade" ) cs_set_user_bpammo( id, CSW_M4A1, 250 ) set_pev( id, pev_viewmodel2, vGoldenM4 ) set_pev( id, pev_weaponmodel2, pGoldenM4 ) ArmaPrimita[ id ] = true AreGoldenM4[ id ] = true } case 2 : { give_item( id, "weapon_mp5navy" ) give_item( id, "weapon_smokegrenade" ) cs_set_user_bpammo( id, CSW_MP5NAVY, 250 ) set_pev( id, pev_viewmodel2, vGoldenMP5 ) set_pev( id, pev_weaponmodel2, pGoldenMP5 ) ArmaPrimita[ id ] = true AreGoldenMP5[ id ] = true } case 3 : { give_item( id, "weapon_awp" ) give_item( id, "weapon_smokegrenade" ) cs_set_user_bpammo( id, CSW_AWP, 30 ) set_pev( id, pev_viewmodel2, vGoldenAWP ) set_pev( id, pev_weaponmodel2, pGoldenAWP ) ArmaPrimita[ id ] = true AreGoldenAWP[ id ] = true } } menu_destroy( MeniuArmeVIP ) return PLUGIN_HANDLED } public ClcmdWeaponsMenus( id ) { if( !is_user_alive( id ) ) { ColorChat( id, "^4[Furien Weapons]^1 Nu poti sa-ti alegeti arma atunci cand esti mort!" ) return } if( ArmaPrimita[ id ] ) { ColorChat( id, "^4[Furien Weapons]^1 Ti-ai ales deja arma in aceasta runda!" ) return } if( cs_get_user_team( id ) == CS_TEAM_CT ) { PopUpWeaponsMenu( id ) } } public Event_CurWeapon( id ) { new Arma = read_data( 2 ) if( Arma == CSW_AK47 && AreGoldenAK[ id ] ) { set_pev( id, pev_viewmodel2, vGoldenAk ) set_pev( id, pev_weaponmodel2, pGoldenAk ) } if( Arma == CSW_M4A1 && AreGoldenM4[ id ] ) { set_pev( id, pev_viewmodel2, vGoldenM4 ) set_pev( id, pev_weaponmodel2, pGoldenM4 ) } if( Arma == CSW_MP5NAVY && AreGoldenMP5[ id ] ) { set_pev( id, pev_viewmodel2, vGoldenMP5 ) set_pev( id, pev_weaponmodel2, pGoldenMP5 ) } if( Arma == CSW_AWP && AreGoldenAWP[ id ] ) { set_pev( id, pev_viewmodel2, vGoldenAWP ) set_pev( id, pev_weaponmodel2, pGoldenAWP ) } } public fwTakeDamage( Victim, Inflictor, Attacker, Float:Damage ) { if( is_valid_player( Attacker ) && get_user_weapon( Attacker ) == CSW_AK47 && AreGoldenAK[ Attacker ] ) { SetHamParamFloat( 4, Damage * 2 ) } if( is_valid_player( Attacker) && get_user_weapon( Attacker ) == CSW_M4A1 && AreGoldenM4[ Attacker ] ) { SetHamParamFloat( 4, Damage * 2 ) } if( is_valid_player( Attacker ) && get_user_weapon( Attacker ) == CSW_MP5NAVY && AreGoldenMP5[ Attacker ] ) { SetHamParamFloat( 4, Damage * 2 ) } if( is_valid_player( Attacker ) && get_user_weapon( Attacker) == CSW_AWP && AreGoldenAWP[ Attacker ] ) { SetHamParamFloat( 4, Damage * 2 ) } } //public GoldenEffect( id ) { // new clip,ammo // new Arma = get_user_weapon(id,clip,ammo) // if (Arma == CSW_AK47 && AreGoldenAK[ id ] || Arma == CSW_M4A1 && AreGoldenM4[ id ] || Arma == CSW_MP5NAVY && AreGoldenMP5[ id ] || Arma == CSW_AWP && AreGoldenAWP[ id ]) { // new vec1[ 3 ], vec2[ 3 ] // get_user_origin( id, vec1, 1 ) // get_user_origin( id, vec2, 4 ) // // message_begin( MSG_BROADCAST,SVC_TEMPENTITY ) // write_byte ( 0 ) // write_coord( vec1[ 0 ] ) // write_coord( vec1[ 1 ] ) // write_coord( vec1[ 2 ] ) // write_coord( vec2[ 0 ] ) // write_coord( vec2[ 1 ] ) // write_coord( vec2[ 2 ] ) // write_short( m_spriteTexture ) // write_byte( 1 ) // write_byte( 5 ) // write_byte( 2 ) // write_byte( 10 ) // write_byte( 0 ) // write_byte( 255 ) // write_byte( 215 ) // write_byte( 0 ) // write_byte( 200 ) // write_byte( 150 ) // message_end( ) // } //} stock ColorChat(const id, const input[], any:...) { new count = 1, players[32]; static msg[191]; vformat(msg, 190, input, 3); replace_all(msg, 190, "!x04", "^4"); replace_all(msg, 190, "!x01", "^1"); replace_all(msg, 190, "!x03", "^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(); } } } } /* Edit lucylucy */ // reset normal trace id on join or leave public client_connect(id) { normalTrace[id] = 0; } public client_disconnect(id) { normalTrace[id] = 0; } // player spawns, and some other such things public event_resethud(id) { lastTrace[id] = 0; } // block forced resethud call public cmd_fullupdate(id) { return PLUGIN_HANDLED; } // traceline hook, meat and bones of the entire plugin public fw_traceline(Float:vecStart[3],Float:vecEnd[3],ignoreM,id,pentru) // pentToSkip == id, for clarity { if(!is_user_connected(id)) return FMRES_IGNORED; // grab normal trace if(!normalTrace[id]) { normalTrace[id] = pentru; return FMRES_IGNORED; } // ignore normal trace else if(pentru == normalTrace[id]) return FMRES_IGNORED; // no functionality if(!get_pcvar_num(cvEnabled)) return FMRES_IGNORED; // not a player entity, or player is dead if(!is_user_alive(id)) return FMRES_IGNORED; // not shooting anything if(!(pev(id,pev_button) & IN_ATTACK)) return FMRES_IGNORED; weapon = get_user_weapon(id,dummy,dummy); // using a shotgun, expect multiple tracelines if(weapon == CSW_M3 || weapon == CSW_XM1014) return FMRES_IGNORED; // this is a second traceline, for shooting through walls if(pentru == lastTrace[id]) { // values sure to throw off any traceline set_tr(TR_vecEndPos,Float:{4096.0,4096.0,4096.0}); set_tr(TR_AllSolid,1); set_tr(TR_pHit,0); set_tr(TR_iHitgroup,0); set_tr(TR_flFraction,1.0); return FMRES_SUPERCEDE; } // remeber traceline index for next time lastTrace[id] = pentru; return FMRES_IGNORED; } // finished client calculations, reset our traceline index public fw_playerpostthink(id) { lastTrace[id] = 0; }
Si am incercat sa adaug in el Ethereal dar imi dau niste erori si nu se compileaza
Erorile sunt
- | Afiseaza codul
warning 217: loose indentation (132) error 014: invalid statement; not in switch (132) warning 215: expression has no effect (132) error 001: expected token: ";", but found ":" (132) error 029: invalid expression, assumed zero (132) fatal error 107: too many error messages on one line (132)
Ma poate ajuta cineva sa-l fixez si daca se poate sa mi-l faceti sa-l cumpar cu credite ?