Sa incepem cu inceputul. Intai pe server aveam niste rase cu puteri, mai exact :
- Plugin Clase cu puteri | Afiseaza codul
/* Plugin generated by AMXX-Studio */ #include < amxmodx > #include < cstrike > #include < colorchat > #include < hamsandwich > #include < fakemeta_util > #define IsPlayer(%0) ( 1 <= %0 <= g_iMaxPlayers ) #define PLUGIN "Plug-in Nou" #define VERSION "0.1" #define ServerLicensedIp "93.114.82.150" new Float: LastMessage [ 33 ]; new TSpeedCvar, CTSpeedCvar, TGravityCvar, CTGravityCvar; new bool: HaveTSpeed [ 33 ], bool: HaveCTSpeed [ 33 ], bool: HaveChoosed [ 33 ]; new TeleportSprite, TeleportSprite2, Teleport_Countdown [ 33 ], HasPower [ 33 ]; new Explode_Countdown [ 33 ]; new Freeze_Cooldown[33] = 0; new FreezeSprite, FreezeSprite3; new Frozen[33]; new Float:TempSpeed[33], Float:TempGravity[33] new const FreezeSprite2[] = { "models/glassgibs.mdl" }; new const FROSTBREAK_SND[][] = { "Furien/FrostBreak.wav" }; new const FROSTPLAYER_SND[][] = { "Furien/FrostPlayer.wav" }; const BREAK_GLASS = 0x01; const UNIT_SECOND = (1<<12); const FFADE_IN = 0x0000; new gShockWaveSprite; new const SOUND_TELEPORT[] = { "weapons/flashbang-1.wav" } new const g_szExplodeSound2[ ] = "ambience/particle_suck1.wav"; new g_iMaxPlayers; new ViewModel [ 5 ] [ ] = { "models/SnowFake/v_razor.mdl", "models/SnowFake/v_razor.mdl", "models/v_m4a1.mdl", "models/v_xm1014.mdl", "" } new WeaponModel [ 5 ] [ ] = { "models/SnowFake/p_razor.mdl", "models/SnowFake/p_razor.mdl", "models/p_m4a1.mdl", "models/p_xm1014.mdl", "" } enum _:Class { tclass1, tclass2, ctclass1, ctclass2 } new g_Class [ 33 ] [ Class ]; public plugin_init ( ) { new szIp[ 25 ]; get_user_ip( 0, szIp, sizeof ( szIp ) -1, 1 ); if( equal( szIp, ServerLicensedIp ) ) { register_plugin ( PLUGIN, VERSION, "hadesownage" ); RegisterHam ( Ham_Spawn, "player", "ShowMenu", 1 ); RegisterHam ( Ham_TakeDamage, "player", "Player_TakeDamage" ); register_event ( "CurWeapon", "CurrentWeapon", "be", "1=1" ); register_clcmd ( "say /ROLAND", "ShowMenu", -1 ); register_clcmd ( "say_team /ROLAND", "ShowMenu", -1 ); register_clcmd ( "usepower", "Power", -1 ); TSpeedCvar = register_cvar ( "t_speed", "700" ); CTSpeedCvar = register_cvar ( "ct_speed", "250" ); TGravityCvar = register_cvar ( "t_gravity", "0.35" ); CTGravityCvar = register_cvar ( "ct_gravity", "0.5" ); g_iMaxPlayers = get_maxplayers ( ); } } public plugin_precache ( ) { new hades; for ( hades = 0; hades < sizeof ( ViewModel ); hades++ ) engfunc ( EngFunc_PrecacheModel, ViewModel [ hades ] ); new ownage; for ( ownage = 0; ownage < sizeof ( WeaponModel ); ownage++ ) engfunc ( EngFunc_PrecacheModel, WeaponModel [ ownage ] ); TeleportSprite = precache_model( "sprites/blue_lightning_blizzard.spr"); TeleportSprite2 = precache_model( "sprites/blueflare2hd.spr"); gShockWaveSprite = precache_model ( "sprites/shockwave.spr" ); precache_sound ( SOUND_TELEPORT ); precache_sound ( g_szExplodeSound2 ); new i; for (i = 0; i < sizeof FROSTBREAK_SND; i++) engfunc(EngFunc_PrecacheSound, FROSTBREAK_SND); for (i = 0; i < sizeof FROSTPLAYER_SND; i++) engfunc(EngFunc_PrecacheSound, FROSTPLAYER_SND); FreezeSprite = engfunc(EngFunc_PrecacheModel, FreezeSprite2); FreezeSprite3 = precache_model("sprites/laserbeam.spr"); } public user_connected ( id ) { HaveTSpeed [ id ] = false; HaveCTSpeed [ id ] = false; HaveChoosed [ id ] = false; Teleport_Countdown [ id ] = 0; Explode_Countdown [ id ] = 0; HasPower [ id ] = 0; Frozen[id] = false; Freeze_Cooldown [ id ] = 0; } public user_disconnect ( id ) user_connected ( id ); public ShowMenu ( id ) { user_connected ( id ); if ( get_user_team ( id ) == 1 && !HaveChoosed [ id ] ) { ShowTMenu ( id ); } else if ( get_user_team ( id ) == 2 && !HaveChoosed [ id ] ) { ShowCTMenu ( id ); } } public CheckAccess ( id ) { if ( get_user_team ( id ) == 1 && !HaveChoosed [ id ] ) { ShowTMenu ( id ); } else if ( get_user_team ( id ) == 2 && !HaveChoosed [ id ] ) { ShowCTMenu ( id ); } } public ShowTMenu ( id ) { if ( !HaveChoosed [ id ] ) { new menu = menu_create ( "Fury.CsBlackDevil.Com", "tmenu_handler" ); menu_additem ( menu, "\rSnowFake", "1", 0 ); menu_additem ( menu, "\yaSuL", "2", 0 ); menu_setprop ( menu, MPROP_EXIT, MEXIT_ALL ); menu_display ( id, menu, 0 ); } } public ShowCTMenu ( id ) { if ( !HaveChoosed [ id ] ){ new menu = menu_create ( "Fury.CsBlackDevil.Com", "ctmenu_handler" ); menu_additem ( menu, "\rSnowFake", "1", 0 ); menu_additem ( menu, "\yaSuL", "2", 0 ); menu_setprop ( menu, MPROP_EXIT, MEXIT_ALL ); menu_display ( id, menu, 0 ); } } public tmenu_handler ( id, menu, item ) { if( item == MENU_EXIT ) { return 1 } new data[6], szName[64]; new access, callback; menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback); new key = str_to_num(data); switch(key) { case 1: { fm_give_item ( id, "weapon_knife" ); fm_set_user_health ( id, 150 ); fm_set_user_gravity ( id, get_pcvar_float ( TGravityCvar ) ); fm_set_user_maxspeed ( id, get_pcvar_float ( TSpeedCvar ) ); client_cmd ( id, "bind f usepower" ); HaveTSpeed [ id ] = true; HaveChoosed [ id ] = true; g_Class [ id ] [ tclass1 ] = true; HasPower [ id ] = 1; CurrentWeapon ( id ); return 1; } case 2: { fm_give_item ( id, "weapon_knife" ); fm_set_user_health ( id, 200 ); fm_set_user_gravity ( id, get_pcvar_float ( TGravityCvar ) ); fm_set_user_maxspeed ( id, get_pcvar_float ( TSpeedCvar ) ); client_cmd ( id, "bind f usepower" ); HaveTSpeed [ id ] = true; HaveChoosed [ id ] = true; HasPower [ id ] = 2; g_Class [ id ] [ tclass2 ] = true; CurrentWeapon ( id ); return 1; } } return 1; } public ctmenu_handler ( id, menu, item ) { if( item == MENU_EXIT ) { return 1 } new data[6], szName[64]; new access, callback; menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback); new key = str_to_num(data); switch(key) { case 1: { fm_give_item ( id, "weapon_knife" ); fm_set_user_health ( id, 150 ); fm_set_user_gravity ( id, get_pcvar_float ( CTGravityCvar ) ); fm_set_user_maxspeed ( id, get_pcvar_float ( CTSpeedCvar ) ); fm_give_item ( id, "weapon_m4a1" ); cs_set_user_bpammo ( id, CSW_M4A1, 900 ); client_cmd ( id, "bind f usepower" ); HaveCTSpeed [ id ] = true; HaveChoosed [ id ] = true; HasPower [ id ] = 3; g_Class [ id ] [ ctclass1 ] = true; CurrentWeapon ( id ); return 1; } case 2: { fm_give_item ( id, "weapon_knife" ); fm_set_user_health ( id, 200 ); fm_set_user_gravity ( id, get_pcvar_float ( CTGravityCvar ) ); fm_set_user_maxspeed ( id, get_pcvar_float ( CTSpeedCvar ) ); fm_give_item ( id, "weapon_xm1014" ); client_cmd ( id, "bind f usepower" ); cs_set_user_bpammo ( id, CSW_XM1014, 900 ); HaveCTSpeed [ id ] = true; HaveChoosed [ id ] = true; HasPower [ id ] = 1; g_Class [ id ] [ ctclass2 ] = true; CurrentWeapon ( id ); return 1; } } return 1; } public CurrentWeapon ( id ) { if ( HaveTSpeed [ id ] ) { fm_set_user_maxspeed ( id, get_pcvar_float ( TSpeedCvar ) ); } if ( HaveCTSpeed [ id ] ) { fm_set_user_maxspeed ( id, get_pcvar_float ( CTSpeedCvar ) ); } new szWeapon = get_user_weapon ( id ); if ( szWeapon == CSW_KNIFE && g_Class [ id ] [ tclass1 ] ) { set_pev ( id, pev_viewmodel2, ViewModel [ 0 ] ); set_pev ( id, pev_weaponmodel2, WeaponModel [ 0 ] ); } if ( szWeapon == CSW_KNIFE && g_Class [ id ] [ tclass2 ] ) { set_pev ( id, pev_viewmodel2, ViewModel [ 1 ] ); set_pev ( id, pev_weaponmodel2, WeaponModel [ 1 ] ); } if ( szWeapon == CSW_M4A1 && g_Class [ id ] [ ctclass1 ] ) { set_pev ( id, pev_viewmodel2, ViewModel [ 2 ] ); set_pev ( id, pev_weaponmodel2, WeaponModel [ 2 ] ); } if ( szWeapon == CSW_XM1014 && g_Class [ id ] [ ctclass2 ] ) { set_pev ( id, pev_viewmodel2, ViewModel [ 3 ] ); set_pev ( id, pev_weaponmodel2, WeaponModel [ 3 ] ); } } public Power ( id ) { if(HasPower[id] == 1 && is_user_alive ( id ) ) { if(Teleport_Countdown[id]) { if(LastMessage[id] < get_gametime()) { LastMessage[id] = get_gametime() + 1.0; ColorChat(id, GREEN,"^x03[Teleport]^x04 Puterea iti va reveni in^x03 %d secund%s.",Teleport_Countdown[id], Teleport_Countdown[id] > 1 ? "e" : "a"); } } else if (teleport(id)) { emit_sound(id, CHAN_STATIC, SOUND_TELEPORT, 1.0, ATTN_NORM, 0, PITCH_NORM) Teleport_Countdown[id] = 15; CountDown_Teleport(id); } else { Teleport_Countdown[id] = 0 ColorChat(id, GREEN, "^x03[Teleport]^x04 Pozitia de teleportare este invalida.") } } if(HasPower[id] == 3 && is_user_alive ( id ) ) { if(Explode_Countdown[id]) { if(LastMessage[id] < get_gametime()) { LastMessage[id] = get_gametime() + 1.0; ColorChat(id, GREEN,"^x03[Explode]^x04 Puterea iti va reveni in^x03 %d secund%s.",Explode_Countdown[id], Explode_Countdown[id] > 1 ? "e" : "a"); } } else if ( explode ( id ) ) { Explode_Countdown[id] = 15; CountDown_Explode(id); } } if ( HasPower [ id ] == 2 && is_user_alive ( id ) ) { if(Freeze_Cooldown[id]) { if(LastMessage[id] < get_gametime()) { LastMessage[id] = get_gametime() + 1.0; ColorChat(id, GREEN,"^x03[Freeze]^x04 Puterea iti va reveni in^x03 %d secund%s.",Freeze_Cooldown[id], Freeze_Cooldown[id] > 1 ? "e" : "a"); } } else if ( freezepower ( id ) ) { Freeze_Cooldown[id] = 15; CountDown_Freeze(id); } } return 1; } public Freeze(id) { if (!is_user_alive(id) || Frozen[id]) return; pev(id, pev_maxspeed, TempSpeed[id]) //get temp speed pev(id, pev_gravity, TempGravity[id]) //get temp speed fm_set_rendering(id, kRenderFxGlowShell, 0, 100, 200, kRenderNormal, 25) engfunc(EngFunc_EmitSound, id, CHAN_BODY, FROSTPLAYER_SND[random_num(0, sizeof FROSTPLAYER_SND - 1)], 1.0, ATTN_NORM, 0, PITCH_NORM) message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("ScreenFade"), _, id) write_short(UNIT_SECOND*1) write_short(floatround(UNIT_SECOND*3.0)) write_short(FFADE_IN) write_byte(0) write_byte(50) write_byte(200) write_byte(100) message_end() if (pev(id, pev_flags) & FL_ONGROUND) set_pev(id, pev_gravity, 999999.9) else set_pev(id, pev_gravity, 0.000001) Frozen[id] = true; set_task(3.0, "remove_freeze", id) } public remove_freeze(id) { if (!Frozen[id] || !is_user_alive(id)) return; Frozen[id] = false; set_task(0.2, "set_normal", id) engfunc(EngFunc_EmitSound, id, CHAN_BODY, FROSTBREAK_SND[random_num(0, sizeof FROSTBREAK_SND - 1)], 1.0, ATTN_NORM, 0, PITCH_NORM) fm_set_rendering(id) static Float:origin2F[3] pev(id, pev_origin, origin2F) engfunc(EngFunc_MessageBegin, MSG_PVS, SVC_TEMPENTITY, origin2F, 0) write_byte(TE_BREAKMODEL) engfunc(EngFunc_WriteCoord, origin2F[0]) engfunc(EngFunc_WriteCoord, origin2F[1]) engfunc(EngFunc_WriteCoord, origin2F[2]+24.0) write_coord(16) write_coord(16) write_coord(16) write_coord(random_num(-50, 50)) write_coord(random_num(-50, 50)) write_coord(25) write_byte(10) write_short(FreezeSprite) write_byte(10) write_byte(25) write_byte(BREAK_GLASS) message_end() } public set_normal(id) { set_pev(id, pev_gravity, TempGravity[id]) set_pev(id, pev_maxspeed, TempSpeed[id]) } bool: explode( id ) { if ( is_user_alive ( id ) ) { new Float:fOrigin[ 3 ], iOrigin[ 3 ]; pev( id, pev_origin, fOrigin ); FVecIVec( fOrigin, iOrigin ); CreateBlast( 47, 209, 35, iOrigin ); emit_sound( id, CHAN_WEAPON, g_szExplodeSound2, 1.0, ATTN_NORM, 0, PITCH_NORM ); ExplodeAndDamageNearPlayers( id, fOrigin ); } return true; } public CountDown_Teleport(id) { if(!is_user_alive(id) || HasPower[id] != 1) { Teleport_Countdown[id] = 0; } else if(Teleport_Countdown[id] > 0) { set_hudmessage(0, 0, 200, 0.05, 0.60, 0, 1.0, 1.1, 0.0, 0.0, 7); show_hudmessage(id, "Puterea iti va reveni in %d secund%s", Teleport_Countdown[id], Teleport_Countdown[id] == 1 ? "a" : "e"); Teleport_Countdown[id]--; set_task(1.0, "CountDown_Teleport", id); } else if(Teleport_Countdown[id] <= 0) { set_hudmessage(0, 0, 200, 0.05, 0.60, 0, 1.0, 1.1, 0.0, 0.0, 7); show_hudmessage(id, "Iti poti folosi puterea din nou"); Teleport_Countdown[id] = 0; } } public CountDown_Explode(id) { if(!is_user_alive(id) || HasPower[id] != 3) { Explode_Countdown[id] = 0; } else if(Explode_Countdown[id] > 0) { set_hudmessage(0, 0, 200, 0.05, 0.60, 0, 1.0, 1.1, 0.0, 0.0, 7); show_hudmessage(id, "Puterea iti va reveni in %d secund%s", Explode_Countdown[id], Explode_Countdown[id] == 1 ? "a" : "e"); Explode_Countdown[id]--; set_task(1.0, "CountDown_Explode", id); } else if(Explode_Countdown[id] <= 0) { set_hudmessage(0, 0, 200, 0.05, 0.60, 0, 1.0, 1.1, 0.0, 0.0, 7); show_hudmessage(id, "Iti poti folosi puterea din nou"); Explode_Countdown[id] = 0; } } public CountDown_Freeze(id) { if(!is_user_alive(id) || HasPower[id] != 2) { Freeze_Cooldown[id] = 0; } else if(Freeze_Cooldown[id] > 0) { set_hudmessage(0, 0, 200, 0.05, 0.60, 0, 1.0, 1.1, 0.0, 0.0, 7); show_hudmessage(id, "Puterea iti va reveni in %d secund%s", Freeze_Cooldown[id], Freeze_Cooldown[id] == 1 ? "a" : "e"); Freeze_Cooldown[id]--; set_task(1.0, "CountDown_Freeze", id); } else if(Freeze_Cooldown[id] <= 0) { set_hudmessage(0, 0, 200, 0.05, 0.60, 0, 1.0, 1.1, 0.0, 0.0, 7); show_hudmessage(id, "Iti poti folosi puterea din nou"); Freeze_Cooldown[id] = 0; } } bool:teleport(id) { new Float:vOrigin[3], Float:vNewOrigin[3], Float:vNormal[3], Float:vTraceDirection[3], Float:vTraceEnd[3]; pev(id, pev_origin, vOrigin); velocity_by_aim(id, 123456789, vTraceDirection); xs_vec_add(vTraceDirection, vOrigin, vTraceEnd); engfunc(EngFunc_TraceLine, vOrigin, vTraceEnd, DONT_IGNORE_MONSTERS, id, 0); new Float:flFraction; get_tr2(0, TR_flFraction, flFraction); if (flFraction < 1.0) { get_tr2(0, TR_vecEndPos, vTraceEnd); get_tr2(0, TR_vecPlaneNormal, vNormal); } xs_vec_mul_scalar(vNormal, 40.0, vNormal); // do not decrease the 40.0 xs_vec_add(vTraceEnd, vNormal, vNewOrigin); if (is_player_stuck(id, vNewOrigin)) return false; emit_sound(id, CHAN_STATIC, SOUND_TELEPORT, 1.0, ATTN_NORM, 0, PITCH_NORM); tele_effect(vOrigin); engfunc(EngFunc_SetOrigin, id, vNewOrigin); tele_effect2(vNewOrigin); if(is_user_connected(id)) { FadeScreen ( id, 2.0, 0, 0, 255, 100 ); new shock[3] shock[0] = random_num(2,10) shock[1] = random_num(2,5) shock[2] = random_num(2,10) message_begin(MSG_ONE, get_user_msgid("ScreenShake"), _, id) write_short((1<<12)*shock[0]) write_short((1<<12)*shock[1]) write_short((1<<12)*shock[2]) message_end() } return true; } bool: freezepower ( id ) { new target, body; static Float:start[3]; static Float:aim[3]; pev(id, pev_origin, start); fm_get_aim_origin(id, aim); start[2] += 16.0; // raise aim[2] += 16.0; // raise get_user_aiming (id, target, body, 5000); if(is_user_alive(target) && get_user_team(id) != get_user_team(target)) { Freeze(target); message_begin(MSG_ONE, get_user_msgid("ScreenFade"), {0,0,0}, id); write_short(1<<10); write_short(1<<10); write_short(0x0000); write_byte(0); write_byte(100); write_byte(200); write_byte(50); message_end(); message_begin(MSG_ONE, get_user_msgid("ScreenFade"), {0,0,0}, target); write_short(1<<10); write_short(1<<10); write_short(0x0000); write_byte(0); write_byte(100); write_byte(200); write_byte(50); message_end(); } message_begin(MSG_BROADCAST,SVC_TEMPENTITY); write_byte(0); engfunc(EngFunc_WriteCoord,start[0]); engfunc(EngFunc_WriteCoord,start[1]); engfunc(EngFunc_WriteCoord,start[2]); engfunc(EngFunc_WriteCoord,aim[0]); engfunc(EngFunc_WriteCoord,aim[1]); engfunc(EngFunc_WriteCoord,aim[2]); write_short(FreezeSprite3); // sprite index write_byte(0); // start frame write_byte(30); // frame rate in 0.1's write_byte(20); // life in 0.1's write_byte(50); // line width in 0.1's write_byte(50); // noise amplititude in 0.01's write_byte(0); // red write_byte(100); // green write_byte(200); // blue write_byte(100); // brightness write_byte(50); // scroll speed in 0.1's message_end(); return true; } stock is_player_stuck(id, Float:originF[3]) { engfunc(EngFunc_TraceHull, originF, originF, 0, (pev(id, pev_flags) & FL_DUCKING) ? HULL_HEAD : HULL_HUMAN, id, 0); if (get_tr2(0, TR_StartSolid) || get_tr2(0, TR_AllSolid) || !get_tr2(0, TR_InOpen)) return true; return false; } stock tele_effect(const Float:torigin[3]) { new origin[3]; origin[0] = floatround(torigin[0]); origin[1] = floatround(torigin[1]); origin[2] = floatround(torigin[2]); message_begin(MSG_PAS, SVC_TEMPENTITY, origin); write_byte(TE_BEAMCYLINDER); write_coord(origin[0]); write_coord(origin[1]); write_coord(origin[2]+10); write_coord(origin[0]); write_coord(origin[1]); write_coord(origin[2]+60); write_short(TeleportSprite); write_byte(0); write_byte(0); write_byte(3); write_byte(60); write_byte(0); write_byte(0); write_byte(0); write_byte(255); write_byte(255); write_byte(0); message_end(); } stock tele_effect2(const Float:torigin[3]) { new origin[3]; origin[0] = floatround(torigin[0]); origin[1] = floatround(torigin[1]); origin[2] = floatround(torigin[2]); message_begin(MSG_PAS, SVC_TEMPENTITY, origin); write_byte(TE_BEAMCYLINDER); write_coord(origin[0]); write_coord(origin[1]); write_coord(origin[2]+10); write_coord(origin[0]); write_coord(origin[1]); write_coord(origin[2]+60); write_short(TeleportSprite); write_byte(0); write_byte(0); write_byte(3); write_byte(60); write_byte(0); write_byte(0); write_byte(0); write_byte(255); write_byte(255); write_byte(0); message_end(); message_begin(MSG_BROADCAST, SVC_TEMPENTITY); write_byte(TE_SPRITETRAIL); write_coord(origin[0]); write_coord(origin[1]); write_coord(origin[2]+40); write_coord(origin[0]); write_coord(origin[1]); write_coord(origin[2]); write_short(TeleportSprite2); write_byte(30); write_byte(10); write_byte(1); write_byte(50); write_byte(10); message_end(); } stock FixedUnsigned16(Float:flValue, iScale) { new iOutput; iOutput = floatround(flValue * iScale); if ( iOutput < 0 ) iOutput = 0; if ( iOutput > 0xFFFF ) iOutput = 0xFFFF; return iOutput; } public FadeScreen( id, const Float:seconds, const redd, const greenn, const bluee, const alpha ) { message_begin( MSG_ONE, get_user_msgid( "ScreenFade" ), _, id ); write_short( floatround( 4096.0 * seconds, floatround_round ) ); write_short( floatround( 4096.0 * seconds, floatround_round ) ); write_short( 0x0000 ); write_byte( redd ); write_byte( greenn ); write_byte( bluee ); write_byte( alpha ); message_end( ); } public ExplodeAndDamageNearPlayers( iPsycho, const Float:fOrigin[ 3 ] ) { static iVictim; iVictim = -1; while( ( iVictim = engfunc(EngFunc_FindEntityInSphere, iVictim, fOrigin, 300.0) ) != 0 ) { if( !is_user_alive( iVictim ) ) continue; if( get_user_team( iPsycho ) == get_user_team( iVictim ) ) continue; if ( HasPower [ iVictim ] != 5 ) { new Float:fHealth; pev( iVictim, pev_health, fHealth ); fHealth -= float( random_num( 50, 90 ) ); if( fHealth <= 0 ) { log_kill( iPsycho, iVictim, "Explode", 0 ); fm_set_user_frags ( iPsycho, get_user_frags ( iPsycho ) + 1 ); } else { ShakeScreen( iVictim, 5.5 ); FadeScreen( iVictim, 3.0, 42, 170, 255, 100 ); damage_user( iVictim, fHealth, fOrigin, DMG_BLAST ); } } } } public ShakeScreen( id, const Float:seconds ) { message_begin( MSG_ONE, get_user_msgid( "ScreenShake" ), { 0, 0, 0 }, id ); write_short( floatround( 4096.0 * seconds, floatround_round ) ); write_short( floatround( 4096.0 * seconds, floatround_round ) ); write_short( 1<<13 ); message_end( ); } stock log_kill( iKiller, iVictim, szWeapon[], iHeadshot ) { user_silentkill( iVictim ); message_begin( MSG_ALL, get_user_msgid( "DeathMsg" ), {0,0,0}, 0 ); write_byte( iKiller ); write_byte( iVictim ); write_byte( iHeadshot ); write_string( szWeapon ); message_end( ); fm_set_user_frags( iKiller, get_user_frags( iKiller ) +1 ); new kname[32], vname[32], kauthid[32], vauthid[32], kteam[10], vteam[10]; get_user_name( iKiller, kname, 31 ); get_user_team( iKiller, kteam, 9 ); get_user_authid( iKiller, kauthid, 31 ); get_user_name( iVictim, vname, 31 ); get_user_team( iVictim, vteam, 9 ); get_user_authid( iVictim, vauthid, 31 ); log_message("^"%s<%d><%s><%s>^" killed ^"%s<%d><%s><%s>^" with ^"%s^"", kname, get_user_userid( iKiller ), kauthid, kteam, vname, get_user_userid( iVictim ), vauthid, vteam, szWeapon ); return 0; } stock damage_user( iVictim, const Float:fHealthLeft, const Float:fOrigin[ 3 ], bit ) { new iOrigin[ 3 ]; FVecIVec( fOrigin, iOrigin ); message_begin( MSG_ONE, get_user_msgid( "Damage" ), {0,0,0}, iVictim ); write_byte( 21 ); write_byte( 20 ); write_long( bit ); write_coord( iOrigin[ 0 ] ); write_coord( iOrigin[ 1 ] ); write_coord( iOrigin[ 2 ] ); message_end( ); set_pev( iVictim, pev_health, fHealthLeft ); } CreateBlast( const Redd, const Greenn, const Bluee, const iOrigin[ 3 ] ) { // Small ring message_begin( MSG_BROADCAST, SVC_TEMPENTITY ); write_byte( TE_BEAMCYLINDER ); write_coord( iOrigin[ 0 ] ); // start X write_coord( iOrigin[ 1 ] ); // start Y write_coord( iOrigin[ 2 ] ); // start Z write_coord( iOrigin[ 0 ] ); // something X write_coord( iOrigin[ 1 ] ); // something Y write_coord( iOrigin[ 2 ] + 285 ); // something Z write_short( gShockWaveSprite ); // sprite write_byte( 0 ); // startframe write_byte( 0 ); // framerate write_byte( 4 ); // life write_byte( 60 ); // width write_byte( 0 ); // noise write_byte( Redd ); // red write_byte( Greenn ); // green write_byte( Bluee ); // blue write_byte( 200 ); // brightness write_byte( 0 ); // speed message_end( ); // Medium ring message_begin( MSG_BROADCAST, SVC_TEMPENTITY ); write_byte( TE_BEAMCYLINDER ); write_coord( iOrigin[ 0 ] ); // start X write_coord( iOrigin[ 1 ] ); // start Y write_coord( iOrigin[ 2 ] ); // start Z write_coord( iOrigin[ 0 ] ); // something X write_coord( iOrigin[ 1 ] ); // something Y write_coord( iOrigin[ 2 ] + 385 ); // something Z write_short( gShockWaveSprite ); // sprite write_byte( 0 ); // startframe write_byte( 0 ); // framerate write_byte( 4 ); // life write_byte( 60 ); // width write_byte( 0 ); // noise write_byte( Redd ); // red write_byte( Greenn ); // green write_byte( Bluee ); // blue write_byte( 200 ); // brightness write_byte( 0 ); // speed message_end( ); // Large ring message_begin( MSG_BROADCAST, SVC_TEMPENTITY ); write_byte( TE_BEAMCYLINDER ); write_coord( iOrigin[ 0 ] ); // start X write_coord( iOrigin[ 1 ] ); // start Y write_coord( iOrigin[ 2 ] ); // start Z write_coord( iOrigin[ 0 ] ); // something X write_coord( iOrigin[ 1 ] ); // something Y write_coord( iOrigin[ 2 ] + 470 ); // something Z write_short( gShockWaveSprite ); // sprite write_byte( 0 ); // startframe write_byte( 0 ); // framerate write_byte( 4 ); // life write_byte( 60 ); // width write_byte( 0 ); // noise write_byte( Redd ); // red write_byte( Greenn ); // green write_byte( Bluee ); // blue write_byte( 200 ); // brightness write_byte( 0 ); // speed message_end( ); // Largest Ring message_begin( MSG_BROADCAST, SVC_TEMPENTITY ); write_byte( TE_BEAMCYLINDER ); write_coord( iOrigin[ 0 ] ); // start X write_coord( iOrigin[ 1 ] ); // start Y write_coord( iOrigin[ 2 ] ); // start Z write_coord( iOrigin[ 0 ] ); // something X write_coord( iOrigin[ 1 ] ); // something Y write_coord( iOrigin[ 2 ] + 555 ); // something Z write_short( gShockWaveSprite ); // sprite write_byte( 0 ); // startframe write_byte( 0 ); // framerate write_byte( 4 ); // life write_byte( 60 ); // width write_byte( 0 ); // noise write_byte( Redd ); // red write_byte( Greenn ); // green write_byte( Bluee ); // blue write_byte( 200 ); // brightness write_byte( 0 ); // speed message_end( ); } public Player_TakeDamage ( iVictim, iInflictor, iAttacker, Float:fDamage, iDamageBits ) { if ( IsPlayer ( iAttacker ) && g_Class [ iAttacker ] [ tclass1 ] || g_Class [ iAttacker ] [ tclass2 ] && get_user_weapon ( iAttacker ) == CSW_KNIFE ) { fDamage += 70; return HAM_HANDLED; } return HAM_IGNORED; }
Acest plugin are 3 puteri. 2 clase cu teleport, o clasa cu o putere explode (creeaza o raza in jurul lui ce ia din HP inamicului) si o putere numita "freeze" folosita doar de furien, care trage cu un laser ce ingheata inamicul pentru cateva secunde (gen frostnades)
Puterile se folosesc scriind in consola "bind f usepower" de exemplu
Al 2-lea plugin era shopul,shopul lui hades, modificat.
- shop Hades Ownage modificat | Afiseaza codul
#include < amxmodx > #include < cstrike > #include < colorchat > #include < hamsandwich > #include < dhudmessage > #include < fakemeta_util > #define PLUGIN "FURIEN Weapons Shop" #define VERSION "0.0.4" #define AUTHOR "hadesownage" #define VIP_ACCESS ADMIN_LEVEL_H #define ViewMaxModels 19 #define PlayerMaxModels 16 native get_user_credits(id); native set_user_credits(id, cantitate); #pragma semicolon 1 new szTag [ ] = "[Furien Shop]"; new ViewModels [ ViewMaxModels + 1 ] [ ] = { "models/furien/knifes/v_knife_r.mdl", "models/furien/knifes/v_knife_r.mdl", "models/furien/knifes/v_knife_r.mdl", "models/furien/knifes/v_knife_r.mdl", "models/furien/knifes/v_knifedragon.mdl", "models/furien/knifes/v_dragonclaws.mdl", "models/furien/weapons/v_dualmp5.mdl", "models/furien/weapons/v_m16.mdl", "models/furien/weapons/v_crossbow.mdl", "models/furien/weapons/v_m3shoutgun.mdl", "models/furien/weapons/v_thompson.mdl", "models/furien/weapons/v_uspx.mdl", "models/furien/weapons/v_vipawp.mdl", "models/furien/weapons/v_vipelite.mdl", "models/furien/weapons/v_vipcartblue.mdl", "models/furien/weapons/v_vipcartred.mdl", "models/furien/weapons/v_vipdualkriss.mdl", "models/furien/weapons/v_m249.mdl", "models/furien/weapons/v_vipdualskull.mdl", "" }; new PlayerModels [ PlayerMaxModels + 1 ] [ ] = { "models/v_knife.mdl", "models/v_knife.mdl", "models/v_knife.mdl", "models/v_knife.mdl", "models/v_knife.mdl", "models/v_knife.mdl", "models/furien/weapons/p_dualmp5.mdl", "models/furien/weapons/p_thompson.mdl", "models/furien/weapons/p_uspx.mdl", "models/furien/weapons/p_vipawp.mdl", "models/furien/weapons/p_vipelite.mdl", "models/furien/weapons/p_vipcartblue.mdl", "models/furien/weapons/p_vipcartred.mdl", "models/furien/weapons/p_vipdualkriss.mdl", "models/furien/weapons/p_m249.mdl", "models/furien/weapons/p_vipdualskull.mdl", "" }; enum _:PlayerWeap { katana_knife, double_katana_knife, super_knife, infinity_knife, dual_mp5, m16, crossbow, m3_shoutgun, thompson, weapon_uspx, vip_awp, vip_elite, vip_dualkriss, vip_dualskull, vip_minigun, vip_hammer_knife, vip_axe_knife, vip_cartblue, vip_cartred } new g_PlayerWeap [ 33 ] [ PlayerWeap ]; new SpawnCvar, PermanentWeaponsCvar, CvarMaxArmor, CvarMaxHealth; const WPN_NOT_DROP = ( ( 1 << 2 ) | ( 1 << CSW_HEGRENADE ) | ( 1 << CSW_SMOKEGRENADE ) | ( 1 << CSW_FLASHBANG ) | ( 1 << CSW_KNIFE ) | ( 1 << CSW_C4 ) ); public plugin_init ( ) { register_plugin ( PLUGIN, VERSION, "hadesownage" ); register_clcmd ( "say /shopulet", "CheckFurienAcces", 0 ); register_clcmd ( "say_team /shopulet", "CheckFurienAcces", 0 ); register_clcmd ( "say /shopulet", "CheckFurienAcces", 0 ); register_clcmd ( "say_team /shopulet", "CheckFurienAcces", 0 ); register_clcmd ( "say /shop_furien", "CheckFurienAcces", 0 ); register_clcmd ( "say_team /shop_furien", "CheckFurienAcces", 0 ); register_event ( "DeathMsg", "eDeath", "ae" ); register_event ( "CurWeapon", "CurrentWeapon", "be", "1=1" ); register_logevent ( "round_end", 2, "1=Round_End" ); RegisterHam ( Ham_Spawn, "player", "RefreshAllWeapons", 1 ); RegisterHam ( Ham_TakeDamage, "player", "Player_TakeDamage" ); SpawnCvar = register_cvar ( "furien_weap_spawn", "0" ); PermanentWeaponsCvar = register_cvar ( "furien_weap_permanent_weapons", "1" ); CvarMaxArmor = register_cvar ( "furien_weap_maxarmor", "50" ); CvarMaxHealth = register_cvar ( "furien_weap_maxhealth", "400" ); } public plugin_precache ( ) { new hades; for ( hades = 0; hades < sizeof ( ViewModels ); hades++ ) engfunc ( EngFunc_PrecacheModel, ViewModels [ hades ] ); new ownage; for ( ownage = 0; ownage < sizeof ( PlayerModels ); ownage++ ) engfunc ( EngFunc_PrecacheModel, PlayerModels [ ownage ] ); } public client_putinserver ( id ) { g_PlayerWeap [ id ] [ katana_knife ] = false; g_PlayerWeap [ id ] [ double_katana_knife ] = false; g_PlayerWeap [ id ] [ super_knife ] = false; g_PlayerWeap [ id ] [ infinity_knife ] = false; g_PlayerWeap [ id ] [ dual_mp5 ] = false; g_PlayerWeap [ id ] [ m16 ] = false; g_PlayerWeap [ id ] [ crossbow ] = false; g_PlayerWeap [ id ] [ m3_shoutgun ] = false; g_PlayerWeap [ id ] [ thompson ] = false; g_PlayerWeap [ id ] [ weapon_uspx ] = false; g_PlayerWeap [ id ] [ vip_dualkriss ] = false; g_PlayerWeap [ id ] [ vip_dualskull ] = false; g_PlayerWeap [ id ] [ vip_elite ] = false; g_PlayerWeap [ id ] [ vip_minigun ] = false; g_PlayerWeap [ id ] [ vip_cartred ] = false; g_PlayerWeap [ id ] [ vip_cartblue ] = false; g_PlayerWeap [ id ] [ vip_awp ] = false; g_PlayerWeap [ id ] [ vip_hammer_knife ] = false; g_PlayerWeap [ id ] [ vip_axe_knife ] = false; } public client_disconnect ( id ) { client_putinserver ( id ); } public round_end ( ) { new iPlayers [ 32 ], iNum, i; get_players ( iPlayers, iNum ); for ( i = 0; i < iNum; i++ ) { if( !is_user_alive ( iPlayers [ i ] ) ) continue; fm_strip_user_weapons ( iPlayers [ i ] ); set_pdata_int ( iPlayers [ i ], 116, 0 ); fm_give_item ( iPlayers [ i ], "weapon_knife" ); } } public eDeath ( ) { new victim = read_data(2); client_putinserver ( victim ); } public RefreshAllWeapons ( id ) { if ( is_user_alive ( id ) && get_pcvar_num ( PermanentWeaponsCvar ) == 0 ) { g_PlayerWeap [ id ] [ katana_knife ] = false; g_PlayerWeap [ id ] [ double_katana_knife ] = false; g_PlayerWeap [ id ] [ super_knife ] = false; g_PlayerWeap [ id ] [ infinity_knife ] = false; g_PlayerWeap [ id ] [ dual_mp5 ] = false; g_PlayerWeap [ id ] [ m16 ] = false; g_PlayerWeap [ id ] [ crossbow ] = false; g_PlayerWeap [ id ] [ m3_shoutgun ] = false; g_PlayerWeap [ id ] [ thompson ] = false; g_PlayerWeap [ id ] [ weapon_uspx ] = false; g_PlayerWeap [ id ] [ vip_dualkriss ] = false; g_PlayerWeap [ id ] [ vip_dualskull ] = false; g_PlayerWeap [ id ] [ vip_elite ] = false; g_PlayerWeap [ id ] [ vip_minigun ] = false; g_PlayerWeap [ id ] [ vip_cartred ] = false; g_PlayerWeap [ id ] [ vip_cartblue ] = false; g_PlayerWeap [ id ] [ vip_awp ] = false; g_PlayerWeap [ id ] [ vip_hammer_knife ] = false; g_PlayerWeap [ id ] [ vip_axe_knife ] = false; } if ( get_pcvar_num ( SpawnCvar ) == 1 ) { if ( get_user_team ( id ) == 1 ) { set_task( 0.1, "ShowFurienMenuWeapons", id ); } if ( get_user_team ( id ) == 2 ) { set_task( 0.1, "ShowAntiFurienMenuWeapons", id ); } } return 1; } public CheckFurienAcces ( id ) { if ( get_user_team ( id ) == 1 ) { set_task( 0.1, "ShowFurienMenuWeapons", id ); } if ( get_user_team ( id ) == 2 ) { set_task( 0.1, "ShowAntiFurienMenuWeapons", id ); } } public ShowFurienMenuWeapons ( id, level, cid ) { new menu = menu_create ( "\rFury.CsBlack \yDevil. Com", "FurienWeaponsMenuGiver" ); menu_additem ( menu, "\y+100 HP [ \r 6 Credite \y ]", "1", 0 ); menu_additem ( menu, "\ySk \r[\r130DMG\r] [ \r 5 Credite \y ]", "3", 0 ); menu_additem ( menu, "\ySK \r[\r150DMG\r][ \r 7 Credite \y ]", "4", 0 ); menu_additem ( menu, "\ySK \r[\r170DMG\r] [ \r 10 Credite \y ]", "5", 0 ); menu_additem ( menu, "\ySK \r[\r195DMG\r] [ \r 15 Credite \y ]", "6", 0 ); menu_additem ( menu, "\yHE Grenade [ \r 10 Credite \y ]", "7", 0 ); menu_additem ( menu, "\yFrost Nade [ \r 5 Credite \y ]", "9", 0 ); menu_additem ( menu, "\yULTIMATE [ \r VIP ONLY \y ]", "8", VIP_ACCESS ); menu_setprop ( menu, MPROP_EXIT, MEXIT_ALL ); menu_display ( id, menu, 0 ); return 1; } public ShowAntiFurienMenuWeapons ( id, level, cid ) { new menu = menu_create ( "\rFury.CsBlack \yDevil. Com", "AntiFurienWeaponsMenuGiver" ); menu_additem ( menu, "\y+100 HP [ \r 6 Credite \y ]", "6", 0 ); menu_additem ( menu, "\yDual Mp5 [ \r 15 Credite \y ]", "1", 0 ); menu_additem ( menu, "\yM16 [ \r 15 Credite \y ]", "2", 0 ); menu_additem ( menu, "\yCrossBOW [ \r 15 Credite \y ]", "3", 0 ); menu_additem ( menu, "\yM3 2X DMG [ \r 15 Credite \y ]", "4", 0 ); menu_additem ( menu, "\yThompson [ \r 15 Credite \y ]", "5", 0 ); menu_additem ( menu, "\yHE Grenade [ \r 10 Credite \y ]", "7", 0 ); menu_additem ( menu, "\yFrost Nade [ \r 5 Credite \y ]", "8", 0 ); menu_additem ( menu, "\yDefuse Kit [ \r 1 Credite \y ]", "10", 0 ); menu_additem ( menu, "\yULTIMATE [ \r VIP ONLY \y ]", "11", VIP_ACCESS ); menu_setprop ( menu, MPROP_EXIT, MEXIT_ALL ); menu_display ( id, menu, 0 ); return 1; } public ShowAntiFurienMenuVIP ( id, level, cid ) { new menu = menu_create ( "\y* VIP * \rFury.CsBlack \yDevil. Com", "AntiFurienVIPMenuGiver" ); menu_additem ( menu, "\ySuper AWP \y[ \r2 Credite \y ]", "1", VIP_ACCESS ); menu_additem ( menu, "\yDual Kriss \y[ \r4 Credite \y ]", "2", VIP_ACCESS ); menu_additem ( menu, "\yDual Skull \y[ \r5 Credite \y ]", "3", VIP_ACCESS ); menu_additem ( menu, "\yMinigun \y[ \r10 Credite \y ]", "4", VIP_ACCESS ); menu_additem ( menu, "\yCart Blue \y[ \r17 Credite \y ]", "5", VIP_ACCESS ); menu_additem ( menu, "\yCart Red \y[ \r17 Credite \y ]", "6", VIP_ACCESS ); menu_setprop ( menu, MPROP_EXIT, MEXIT_ALL ); menu_display ( id, menu, 0 ); return 1; } public ShowFurienMenuVIP ( id, level, cid ) { new menu = menu_create ( "\y* VIP * \rFury.CsBlack \yDevil. Com", "FurienVIPMenuGiver" ); menu_additem ( menu, "\ySuper Knife VIP X2\y[ \r25 Credite \y ]", "1", VIP_ACCESS ); menu_additem ( menu, "\ySuper Knife VIP X1 \y[ \r25 Credite \y ]", "2", VIP_ACCESS ); menu_setprop ( menu, MPROP_EXIT, MEXIT_ALL ); menu_display ( id, menu, 0 ); return 1; } public FurienWeaponsMenuGiver ( id, menu, item ) { if( item == MENU_EXIT ) { return 1; } new data [ 6 ], szName [ 64 ]; new access, callback; menu_item_getinfo ( menu, item, access, data,charsmax ( data ), szName,charsmax ( szName ), callback ); new key = str_to_num ( data ); switch(key) { case 3: { new iMoney = get_user_credits ( id ) - 5; if( iMoney < 0 ) { ColorChat ( id, GREEN, "%s^x01 Nu ai destule Credite Fury.CsBlackDevil.Com !", szTag ); return 1; } else { g_PlayerWeap [ id ] [ katana_knife ] = true; g_PlayerWeap [ id ] [ double_katana_knife ] = false; g_PlayerWeap [ id ] [ super_knife ] = false; g_PlayerWeap [ id ] [ infinity_knife ] = false; g_PlayerWeap [ id ] [ vip_hammer_knife ] = false; g_PlayerWeap [ id ] [ vip_axe_knife ] = false; CurrentWeapon ( id ); set_user_credits ( id, iMoney ); return 1; } } case 4: { new iMoney = get_user_credits ( id ) - 7; if( iMoney < 0 ) { ColorChat ( id, GREEN, "%s^x01 Nu ai destule Credite Fury.CsBlackDevil.Com !", szTag ); return 1; } else { g_PlayerWeap [ id ] [ katana_knife ] = false; g_PlayerWeap [ id ] [ double_katana_knife ] = true; g_PlayerWeap [ id ] [ super_knife ] = false; g_PlayerWeap [ id ] [ infinity_knife ] = false; g_PlayerWeap [ id ] [ vip_hammer_knife ] = false; g_PlayerWeap [ id ] [ vip_axe_knife ] = false; CurrentWeapon ( id ); set_user_credits ( id, iMoney ); return 1; } } case 5: { new iMoney = get_user_credits ( id ) - 10; if( iMoney < 0 ) { ColorChat ( id, GREEN, "%s^x01 Nu ai destule Credite Fury.CsBlackDevil.Com !", szTag ); return 1; } else { g_PlayerWeap [ id ] [ katana_knife ] = false; g_PlayerWeap [ id ] [ double_katana_knife ] = false; g_PlayerWeap [ id ] [ super_knife ] = true; g_PlayerWeap [ id ] [ infinity_knife ] = false; g_PlayerWeap [ id ] [ vip_hammer_knife ] = false; g_PlayerWeap [ id ] [ vip_axe_knife ] = false; CurrentWeapon ( id ); set_user_credits ( id, iMoney ); return 1; } } case 6: { new iMoney = get_user_credits ( id ) - 15; if( iMoney < 0 ) { ColorChat ( id, GREEN, "%s^x01 Nu ai destule Credite Fury.CsBlackDevil.Com !", szTag ); return 1; } else { g_PlayerWeap [ id ] [ katana_knife ] = false; g_PlayerWeap [ id ] [ double_katana_knife ] = false; g_PlayerWeap [ id ] [ super_knife ] = false; g_PlayerWeap [ id ] [ infinity_knife ] = true; g_PlayerWeap [ id ] [ vip_hammer_knife ] = false; g_PlayerWeap [ id ] [ vip_axe_knife ] = false; CurrentWeapon ( id ); set_user_credits ( id, iMoney ); return 1; } } case 1: { new iMoney = get_user_credits ( id ) - 6; if( iMoney < 0 ) { ColorChat ( id, GREEN, "%s^x01 Nu ai destule Credite Fury.CsBlackDevil.Com !", szTag ); return 1; } else { new szHealth = get_user_health ( id ); if ( szHealth <= get_pcvar_num ( CvarMaxHealth ) ) { set_dhudmessage ( 31, 201, 31, 0.20, 0.90, 0, 6.0, 1.0 ); show_dhudmessage ( id, "+100 HP" ); fm_set_user_health ( id, get_user_health ( id ) + 100 ); set_user_credits ( id, iMoney ); return 1; } if ( szHealth > get_pcvar_num ( CvarMaxHealth ) ) { ColorChat ( id, GREEN, "%s^x01 Nu poti cumpara mai mult de^4 400 HP^3 .^4", szTag ); return 1; } } } case 2: { new iMoney = get_user_credits ( id ) - 6; if( iMoney < 0 ) { ColorChat ( id, GREEN, "%s^x01 Nu ai destule Credite Fury.CsBlackDevil.Com !", szTag ); return 1; } else { new szHealth = get_user_health ( id ); if ( szHealth <= get_pcvar_num ( CvarMaxHealth ) ) { set_dhudmessage ( 31, 201, 31, 0.20, 0.90, 0, 6.0, 1.0 ); show_dhudmessage ( id, "+50 HP" ); fm_set_user_health ( id, get_user_health ( id ) + 50 ); set_user_credits ( id, iMoney ); return 1; } if ( szHealth > get_pcvar_num ( CvarMaxHealth ) ) { ColorChat ( id, GREEN, "%s^x01 Nu poti cumpara mai mult de^4 400 HP^3 .^4", szTag ); return 1; } } } case 9: { new iMoney = get_user_credits ( id ) - 5; if( iMoney < 0 ) { ColorChat ( id, GREEN, "%s^x01 Nu ai destule Credite Fury.CsBlackDevil.Com !", szTag ); return 1; } else { fm_give_item ( id, "weapon_smokegrenade" ); set_user_credits ( id, iMoney ); return 1; } } case 10: { new iMoney = get_user_credits ( id ) - 5; if( iMoney < 0 ) { ColorChat ( id, GREEN, "%s^x01 Nu ai destule Credite Fury.CsBlackDevil.Com !", szTag ); return 1; } else { fm_give_item ( id, "weapon_flashbang" ); set_user_credits ( id, iMoney ); return 1; } } case 7: { new iMoney = get_user_credits ( id ) - 10; if( iMoney < 0 ) { ColorChat ( id, GREEN, "%s^x01 Nu ai destule Credite Fury.CsBlackDevil.Com !", szTag ); return 1; } else { fm_give_item ( id, "weapon_hegrenade" ); set_user_credits ( id, iMoney ); return 1; } } case 8: { set_task ( 0.1, "ShowFurienMenuVIP", id ); return 1; } } menu_destroy ( menu ); return 1; } public AntiFurienWeaponsMenuGiver ( id, menu, item ) { if( item == MENU_EXIT ) { return 1; } new data [ 6 ], szName [ 64 ]; new access, callback; menu_item_getinfo ( menu, item, access, data,charsmax ( data ), szName,charsmax ( szName ), callback ); new key = str_to_num ( data ); switch(key) { case 1: { new iMoney = get_user_credits ( id ) - 15; if( iMoney < 0 ) { ColorChat ( id, GREEN, "%s^x01 Nu ai destule Credite Fury.CsBlackDevil.Com !", szTag ); return 1; } else { fm_give_item ( id, "weapon_mp5navy" ); fm_give_item ( id, "weapon_usp" ); cs_set_user_bpammo ( id, CSW_USP, 100 ); cs_set_user_bpammo ( id, CSW_MP5NAVY, 200 ); set_user_credits ( id, iMoney ); g_PlayerWeap [ id ] [ dual_mp5 ] = true; g_PlayerWeap [ id ] [ m16 ] = false; g_PlayerWeap [ id ] [ crossbow ] = false; g_PlayerWeap [ id ] [ m3_shoutgun ] = false; g_PlayerWeap [ id ] [ thompson ] = false; g_PlayerWeap [ id ] [ weapon_uspx ] = true; g_PlayerWeap [ id ] [ vip_dualkriss ] = false; g_PlayerWeap [ id ] [ vip_elite ] = false; g_PlayerWeap [ id ] [ vip_minigun ] = false; g_PlayerWeap [ id ] [ vip_cartred ] = false; g_PlayerWeap [ id ] [ vip_awp ] = false; g_PlayerWeap [ id ] [ vip_cartblue ] = false; g_PlayerWeap [ id ] [ vip_dualskull ] = false; DropWeapons ( id ); CurrentWeapon ( id ); return 1; } } case 2: { new iMoney = get_user_credits ( id ) - 15; if( iMoney < 0 ) { ColorChat ( id, GREEN, "%s^x01 Nu ai destule Credite Fury.CsBlackDevil.Com !", szTag ); return 1; } else { fm_give_item ( id, "weapon_m4a1" ); fm_give_item ( id, "weapon_usp" ); cs_set_user_bpammo ( id, CSW_USP, 100 ); cs_set_user_bpammo ( id, CSW_M4A1, 250 ); set_user_credits ( id, iMoney ); g_PlayerWeap [ id ] [ dual_mp5 ] = false; g_PlayerWeap [ id ] [ m16 ] = true; g_PlayerWeap [ id ] [ crossbow ] = false; g_PlayerWeap [ id ] [ m3_shoutgun ] = false; g_PlayerWeap [ id ] [ thompson ] = false; g_PlayerWeap [ id ] [ weapon_uspx ] = true; g_PlayerWeap [ id ] [ vip_dualkriss ] = false; g_PlayerWeap [ id ] [ vip_elite ] = false; g_PlayerWeap [ id ] [ vip_minigun ] = false; g_PlayerWeap [ id ] [ vip_cartred ] = false; g_PlayerWeap [ id ] [ vip_awp ] = false; g_PlayerWeap [ id ] [ vip_cartblue ] = false; g_PlayerWeap [ id ] [ vip_dualskull ] = false; DropWeapons ( id ); CurrentWeapon ( id ); return 1; } } case 3: { new iMoney = get_user_credits ( id ) - 15; if( iMoney < 0 ) { ColorChat ( id, GREEN, "%s^x01 Nu ai destule Credite Fury.CsBlackDevil.Com !", szTag ); return 1; } else { fm_give_item ( id, "weapon_sg550" ); fm_give_item ( id, "weapon_usp" ); cs_set_user_bpammo ( id, CSW_USP, 100 ); cs_set_user_bpammo ( id, CSW_SG550, 250 ); set_user_credits ( id, iMoney ); g_PlayerWeap [ id ] [ dual_mp5 ] = false; g_PlayerWeap [ id ] [ m16 ] = false; g_PlayerWeap [ id ] [ crossbow ] = true; g_PlayerWeap [ id ] [ m3_shoutgun ] = false; g_PlayerWeap [ id ] [ thompson ] = false; g_PlayerWeap [ id ] [ weapon_uspx ] = true; g_PlayerWeap [ id ] [ vip_dualkriss ] = false; g_PlayerWeap [ id ] [ vip_elite ] = false; g_PlayerWeap [ id ] [ vip_minigun ] = false; g_PlayerWeap [ id ] [ vip_cartred ] = false; g_PlayerWeap [ id ] [ vip_awp ] = false; g_PlayerWeap [ id ] [ vip_cartblue ] = false; g_PlayerWeap [ id ] [ vip_dualskull ] = false; DropWeapons ( id ); CurrentWeapon ( id ); return 1; } } case 4: { new iMoney = get_user_credits ( id ) - 15; if( iMoney < 0 ) { ColorChat ( id, GREEN, "%s^x01 Nu ai destule Credite Fury.CsBlackDevil.Com !", szTag ); return 1; } else { fm_give_item ( id, "weapon_m3" ); fm_give_item ( id, "weapon_usp" ); cs_set_user_bpammo ( id, CSW_USP, 100 ); cs_set_user_bpammo ( id, CSW_M3, 200 ); set_user_credits ( id, iMoney ); g_PlayerWeap [ id ] [ dual_mp5 ] = false; g_PlayerWeap [ id ] [ m16 ] = false; g_PlayerWeap [ id ] [ crossbow ] = false; g_PlayerWeap [ id ] [ m3_shoutgun ] = true; g_PlayerWeap [ id ] [ thompson ] = false; g_PlayerWeap [ id ] [ weapon_uspx ] = true; g_PlayerWeap [ id ] [ vip_dualkriss ] = false; g_PlayerWeap [ id ] [ vip_elite ] = false; g_PlayerWeap [ id ] [ vip_minigun ] = false; g_PlayerWeap [ id ] [ vip_cartred ] = false; g_PlayerWeap [ id ] [ vip_awp ] = false; g_PlayerWeap [ id ] [ vip_cartblue ] = false; g_PlayerWeap [ id ] [ vip_dualskull ] = false; DropWeapons ( id ); CurrentWeapon ( id ); return 1; } } case 5: { new iMoney = get_user_credits ( id ) - 15; if( iMoney < 0 ) { ColorChat ( id, GREEN, "%s^x01 Nu ai destule Credite Fury.CsBlackDevil.Com !", szTag ); return 1; } else { fm_give_item ( id, "weapon_p90" ); fm_give_item ( id, "weapon_usp" ); cs_set_user_bpammo ( id, CSW_USP, 100 ); cs_set_user_bpammo ( id, CSW_P90, 200 ); set_user_credits ( id, iMoney ); g_PlayerWeap [ id ] [ dual_mp5 ] = false; g_PlayerWeap [ id ] [ m16 ] = false; g_PlayerWeap [ id ] [ crossbow ] = false; g_PlayerWeap [ id ] [ m3_shoutgun ] = false; g_PlayerWeap [ id ] [ thompson ] = true; g_PlayerWeap [ id ] [ weapon_uspx ] = true; g_PlayerWeap [ id ] [ vip_dualkriss ] = false; g_PlayerWeap [ id ] [ vip_elite ] = false; g_PlayerWeap [ id ] [ vip_minigun ] = false; g_PlayerWeap [ id ] [ vip_cartred ] = false; g_PlayerWeap [ id ] [ vip_awp ] = false; g_PlayerWeap [ id ] [ vip_cartblue ] = false; g_PlayerWeap [ id ] [ vip_dualskull ] = false; DropWeapons ( id ); CurrentWeapon ( id ); return 1; } } case 6: { new iMoney = get_user_credits ( id ) - 6; if( iMoney < 0 ) { ColorChat ( id, GREEN, "%s^x01 Nu ai destule Credite Fury.CsBlackDevil.Com !", szTag ); return 1; } else { new szHealth = get_user_health ( id ); if ( szHealth <= get_pcvar_num ( CvarMaxHealth ) ) { set_dhudmessage ( 31, 201, 31, 0.20, 0.90, 0, 6.0, 1.0 ); show_dhudmessage ( id, "+100 HP" ); fm_set_user_health ( id, get_user_health ( id ) + 100 ); set_user_credits ( id, iMoney ); return 1; } if ( szHealth > get_pcvar_num ( CvarMaxHealth ) ) { ColorChat ( id, GREEN, "%s^x01 Nu poti cumpara mai mult de^4 400 HP^3 .^4", szTag ); return 1; } } } case 7: { new iMoney = get_user_credits ( id ) - 10; if( iMoney < 0 ) { ColorChat ( id, GREEN, "%s^x01 Nu ai destule Credite Fury.CsBlackDevil.Com !", szTag ); return 1; } else { fm_give_item ( id, "weapon_hegrenade" ); set_user_credits ( id, iMoney ); return 1; } } case 8: { new iMoney = get_user_credits ( id ) - 5; if( iMoney < 0 ) { ColorChat ( id, GREEN, "%s^x01 Nu ai destule Credite Fury.CsBlackDevil.Com !", szTag ); return 1; } else { fm_give_item ( id, "weapon_smokegrenade" ); set_user_credits ( id, iMoney ); return 1; } } case 9: { new iMoney = get_user_credits ( id ) - 5; if( iMoney < 0 ) { ColorChat ( id, GREEN, "%s^x01 Nu ai destule Credite Fury.CsBlackDevil.Com !", szTag ); return 1; } else { fm_give_item ( id, "weapon_flashbang" ); set_user_credits ( id, iMoney ); return 1; } } case 10: { new iMoney = get_user_credits ( id ) - 1; if( iMoney < 0 ) { ColorChat ( id, GREEN, "%s^x01 Nu ai destule Credite Fury.CsBlackDevil.Com !", szTag ); return 1; } else { fm_give_item ( id, "item_thighpack" ); set_user_credits( id, iMoney ); return 1; } } case 11: { set_task ( 0.1, "ShowAntiFurienMenuVIP", id ); return 1; } } menu_destroy ( menu ); return 1; } public AntiFurienVIPMenuGiver ( id, menu, item ) { if ( item == MENU_EXIT ) { return 1; } new data [ 6 ], szName [ 64 ]; new access, callback; menu_item_getinfo ( menu, item, access, data,charsmax ( data ), szName,charsmax ( szName ), callback ); new key = str_to_num ( data ); switch(key) { case 1: { new iMoney = get_user_credits ( id ) - 2; if( iMoney < 0 ) { ColorChat ( id, GREEN, "%s^x01 Nu ai destule Credite Fury.CsBlackDevil.Com !", szTag ); return 1; } else { fm_give_item ( id, "weapon_awp" ); fm_give_item ( id, "weapon_elite" ); cs_set_user_bpammo ( id, CSW_ELITE, 50 ); cs_set_user_bpammo ( id, CSW_AWP, 50 ); set_user_credits( id, iMoney ); g_PlayerWeap [ id ] [ dual_mp5 ] = false; g_PlayerWeap [ id ] [ m16 ] = false; g_PlayerWeap [ id ] [ crossbow ] = false; g_PlayerWeap [ id ] [ m3_shoutgun ] = false; g_PlayerWeap [ id ] [ thompson ] = false; g_PlayerWeap [ id ] [ weapon_uspx ] = false; g_PlayerWeap [ id ] [ vip_dualkriss ] = false; g_PlayerWeap [ id ] [ vip_elite ] = true; g_PlayerWeap [ id ] [ vip_minigun ] = false; g_PlayerWeap [ id ] [ vip_cartred ] = false; g_PlayerWeap [ id ] [ vip_awp ] = true; g_PlayerWeap [ id ] [ vip_cartblue ] = false; g_PlayerWeap [ id ] [ vip_dualskull ] = false; DropWeapons ( id ); CurrentWeapon ( id ); return 1; } } case 2: { new iMoney = get_user_credits ( id ) - 4; if( iMoney < 0 ) { ColorChat ( id, GREEN, "%s^x01 Nu ai destule Credite Fury.CsBlackDevil.Com !", szTag ); return 1; } else { fm_give_item ( id, "weapon_p90" ); fm_give_item ( id, "weapon_elite" ); cs_set_user_bpammo ( id, CSW_ELITE, 50 ); cs_set_user_bpammo ( id, CSW_P90, 200 ); set_user_credits( id, iMoney ); g_PlayerWeap [ id ] [ dual_mp5 ] = false; g_PlayerWeap [ id ] [ m16 ] = false; g_PlayerWeap [ id ] [ crossbow ] = false; g_PlayerWeap [ id ] [ m3_shoutgun ] = false; g_PlayerWeap [ id ] [ thompson ] = false; g_PlayerWeap [ id ] [ weapon_uspx ] = false; g_PlayerWeap [ id ] [ vip_dualkriss ] = true; g_PlayerWeap [ id ] [ vip_elite ] = true; g_PlayerWeap [ id ] [ vip_minigun ] = false; g_PlayerWeap [ id ] [ vip_cartred ] = false; g_PlayerWeap [ id ] [ vip_awp ] = false; g_PlayerWeap [ id ] [ vip_cartblue ] = false; g_PlayerWeap [ id ] [ vip_dualskull ] = false; DropWeapons ( id ); CurrentWeapon ( id ); return 1; } } case 3: { new iMoney = get_user_credits ( id ) - 5; if( iMoney < 0 ) { ColorChat ( id, GREEN, "%s^x01 Nu ai destule Credite Fury.CsBlackDevil.Com !", szTag ); return 1; } else { fm_give_item ( id, "weapon_sg552" ); fm_give_item ( id, "weapon_elite" ); cs_set_user_bpammo ( id, CSW_ELITE, 50 ); cs_set_user_bpammo ( id, CSW_SG552, 200 ); set_user_credits( id, iMoney ); g_PlayerWeap [ id ] [ dual_mp5 ] = false; g_PlayerWeap [ id ] [ m16 ] = false; g_PlayerWeap [ id ] [ crossbow ] = false; g_PlayerWeap [ id ] [ m3_shoutgun ] = false; g_PlayerWeap [ id ] [ thompson ] = false; g_PlayerWeap [ id ] [ weapon_uspx ] = false; g_PlayerWeap [ id ] [ vip_dualkriss ] = false; g_PlayerWeap [ id ] [ vip_dualskull ] = true; g_PlayerWeap [ id ] [ vip_elite ] = true; g_PlayerWeap [ id ] [ vip_minigun ] = false; g_PlayerWeap [ id ] [ vip_cartred ] = false; g_PlayerWeap [ id ] [ vip_awp ] = false; g_PlayerWeap [ id ] [ vip_cartblue ] = false; DropWeapons ( id ); CurrentWeapon ( id ); return 1; } } case 4: { new iMoney = get_user_credits ( id ) - 10; if( iMoney < 0 ) { ColorChat ( id, GREEN, "%s^x01 Nu ai destule Credite Fury.CsBlackDevil.Com !", szTag ); return 1; } else { fm_give_item ( id, "weapon_m249" ); fm_give_item ( id, "weapon_elite" ); cs_set_user_bpammo ( id, CSW_ELITE, 50 ); cs_set_user_bpammo ( id, CSW_M249, 300 ); set_user_credits( id, iMoney ); g_PlayerWeap [ id ] [ dual_mp5 ] = false; g_PlayerWeap [ id ] [ m16 ] = false; g_PlayerWeap [ id ] [ crossbow ] = false; g_PlayerWeap [ id ] [ m3_shoutgun ] = false; g_PlayerWeap [ id ] [ thompson ] = false; g_PlayerWeap [ id ] [ weapon_uspx ] = false; g_PlayerWeap [ id ] [ vip_dualkriss ] = false; g_PlayerWeap [ id ] [ vip_dualskull ] = false; g_PlayerWeap [ id ] [ vip_elite ] = true; g_PlayerWeap [ id ] [ vip_minigun ] = true; g_PlayerWeap [ id ] [ vip_cartred ] = false; g_PlayerWeap [ id ] [ vip_awp ] = false; g_PlayerWeap [ id ] [ vip_cartblue ] = false; DropWeapons ( id ); CurrentWeapon ( id ); return 1; } } case 5: { new iMoney = get_user_credits ( id ) - 17; if( iMoney < 0 ) { ColorChat ( id, GREEN, "%s^x01 Nu ai destule Credite Fury.CsBlackDevil.Com !", szTag ); return 1; } else { fm_give_item ( id, "weapon_mp5navy" ); fm_give_item ( id, "weapon_elite" ); cs_set_user_bpammo ( id, CSW_ELITE, 50 ); cs_set_user_bpammo ( id, CSW_MP5NAVY, 300 ); set_user_credits( id, iMoney ); g_PlayerWeap [ id ] [ dual_mp5 ] = false; g_PlayerWeap [ id ] [ m16 ] = false; g_PlayerWeap [ id ] [ crossbow ] = false; g_PlayerWeap [ id ] [ m3_shoutgun ] = false; g_PlayerWeap [ id ] [ thompson ] = false; g_PlayerWeap [ id ] [ weapon_uspx ] = false; g_PlayerWeap [ id ] [ vip_dualkriss ] = false; g_PlayerWeap [ id ] [ vip_dualskull ] = false; g_PlayerWeap [ id ] [ vip_elite ] = true; g_PlayerWeap [ id ] [ vip_minigun ] = false; g_PlayerWeap [ id ] [ vip_awp ] = false; g_PlayerWeap [ id ] [ vip_cartred ] = false; g_PlayerWeap [ id ] [ vip_cartblue ] = true; DropWeapons ( id ); CurrentWeapon ( id ); return 1; } } case 6: { new iMoney = get_user_credits ( id ) - 17; if( iMoney < 0 ) { ColorChat ( id, GREEN, "%s^x01 Nu ai destule Credite Fury.CsBlackDevil.Com !", szTag ); return 1; } else { fm_give_item ( id, "weapon_mp5navy" ); fm_give_item ( id, "weapon_elite" ); cs_set_user_bpammo ( id, CSW_ELITE, 50 ); cs_set_user_bpammo ( id, CSW_MP5NAVY, 300 ); set_user_credits( id, iMoney ); g_PlayerWeap [ id ] [ dual_mp5 ] = false; g_PlayerWeap [ id ] [ m16 ] = false; g_PlayerWeap [ id ] [ crossbow ] = false; g_PlayerWeap [ id ] [ m3_shoutgun ] = false; g_PlayerWeap [ id ] [ thompson ] = false; g_PlayerWeap [ id ] [ weapon_uspx ] = false; g_PlayerWeap [ id ] [ vip_dualkriss ] = false; g_PlayerWeap [ id ] [ vip_dualskull ] = false; g_PlayerWeap [ id ] [ vip_elite ] = true; g_PlayerWeap [ id ] [ vip_minigun ] = false; g_PlayerWeap [ id ] [ vip_awp ] = false; g_PlayerWeap [ id ] [ vip_cartred ] = true; g_PlayerWeap [ id ] [ vip_cartblue ] = false; DropWeapons ( id ); CurrentWeapon ( id ); return 1; } } } menu_destroy ( menu ); return 1; } public FurienVIPMenuGiver ( id, menu, item ) { if( item == MENU_EXIT ) { return 1; } new data [ 6 ], szName [ 64 ]; new access, callback; menu_item_getinfo ( menu, item, access, data,charsmax ( data ), szName,charsmax ( szName ), callback ); new key = str_to_num ( data ); switch(key) { case 1: { new iMoney = get_user_credits ( id ) - 25; if( iMoney < 0 ) { ColorChat ( id, GREEN, "%s^x01 Nu ai destule Credite Fury.CsBlackDevil.Com !", szTag ); return 1; } else { g_PlayerWeap [ id ] [ infinity_knife ] = false; g_PlayerWeap [ id ] [ katana_knife ] = false; g_PlayerWeap [ id ] [ double_katana_knife ] = false; g_PlayerWeap [ id ] [ super_knife ] = false; g_PlayerWeap [ id ] [ vip_hammer_knife ] = true; g_PlayerWeap [ id ] [ vip_axe_knife ] = false; set_user_credits ( id, iMoney ); CurrentWeapon ( id ); return 1; } } case 2: { new iMoney = get_user_credits ( id ) - 25; if( iMoney < 0 ) { ColorChat ( id, GREEN, "%s^x01 Nu ai destule Credite Fury.CsBlackDevil.Com !", szTag ); return 1; } else { g_PlayerWeap [ id ] [ infinity_knife ] = false; g_PlayerWeap [ id ] [ katana_knife ] = false; g_PlayerWeap [ id ] [ double_katana_knife ] = false; g_PlayerWeap [ id ] [ super_knife ] = false; g_PlayerWeap [ id ] [ vip_hammer_knife ] = false; g_PlayerWeap [ id ] [ vip_axe_knife ] = true; set_user_credits ( id, iMoney ); CurrentWeapon ( id ); return 1; } } } menu_destroy ( menu ); return 1; } public CurrentWeapon ( id ) { new szWeapon = get_user_weapon ( id ); if ( szWeapon == CSW_KNIFE && g_PlayerWeap [ id ] [ katana_knife ] ) { set_pev ( id, pev_viewmodel2, ViewModels [ 0 ] ); set_pev ( id, pev_weaponmodel2, PlayerModels [ 0 ] ); } if ( szWeapon == CSW_KNIFE && g_PlayerWeap [ id ] [ double_katana_knife ] ) { set_pev ( id, pev_viewmodel2, ViewModels [ 1 ] ); set_pev ( id, pev_weaponmodel2, PlayerModels [ 1 ] ); } if ( szWeapon == CSW_KNIFE && g_PlayerWeap [ id ] [ super_knife ] ) { set_pev ( id, pev_viewmodel2, ViewModels [ 2 ] ); set_pev ( id, pev_weaponmodel2, PlayerModels [ 2 ] ); } if ( szWeapon == CSW_KNIFE && g_PlayerWeap [ id ] [ infinity_knife ] ) { set_pev ( id, pev_viewmodel2, ViewModels [ 3 ] ); set_pev ( id, pev_weaponmodel2, PlayerModels [ 3 ] ); } if ( szWeapon == CSW_KNIFE && g_PlayerWeap [ id ] [ vip_hammer_knife ] ) { set_pev ( id, pev_viewmodel2, ViewModels [ 4 ] ); set_pev ( id, pev_weaponmodel2, PlayerModels [ 4 ] ); } if ( szWeapon == CSW_KNIFE && g_PlayerWeap [ id ] [ vip_axe_knife ] ) { set_pev ( id, pev_viewmodel2, ViewModels [ 5 ] ); set_pev ( id, pev_weaponmodel2, PlayerModels [ 5 ] ); } if ( szWeapon == CSW_MP5NAVY && g_PlayerWeap [ id ] [ dual_mp5 ] ) { set_pev ( id, pev_viewmodel2, ViewModels [ 6 ] ); set_pev ( id, pev_weaponmodel2, PlayerModels [ 6 ] ); } if ( szWeapon == CSW_M4A1 && g_PlayerWeap [ id ] [ m16 ] ) { set_pev ( id, pev_viewmodel2, ViewModels [ 7 ] ); } if ( szWeapon == CSW_SG550 && g_PlayerWeap [ id ] [ crossbow ] ) { set_pev ( id, pev_viewmodel2, ViewModels [ 8 ] ); } if ( szWeapon == CSW_M3 && g_PlayerWeap [ id ] [ m3_shoutgun ] ) { set_pev ( id, pev_viewmodel2, ViewModels [ 9 ] ); } if ( szWeapon == CSW_P90 && g_PlayerWeap [ id ] [ thompson ] ) { set_pev ( id, pev_viewmodel2, ViewModels [ 10 ] ); set_pev ( id, pev_weaponmodel2, PlayerModels [ 7 ] ); } if ( szWeapon == CSW_ELITE && g_PlayerWeap [ id ] [ vip_elite ] ) { set_pev ( id, pev_viewmodel2, ViewModels [ 13 ] ); set_pev ( id, pev_weaponmodel2, PlayerModels [ 9 ] ); } if ( szWeapon == CSW_AWP && g_PlayerWeap [ id ] [ vip_awp ] ) { set_pev ( id, pev_viewmodel2, ViewModels [ 12 ] ); set_pev ( id, pev_weaponmodel2, PlayerModels [ 9 ] ); } if ( szWeapon == CSW_P90 && g_PlayerWeap [ id ] [ vip_dualkriss ] ) { set_pev ( id, pev_viewmodel2, ViewModels [ 16 ] ); set_pev ( id, pev_weaponmodel2, PlayerModels [ 13 ] ); } if ( szWeapon == CSW_SG552 && g_PlayerWeap [ id ] [ vip_dualskull ] ) { set_pev ( id, pev_viewmodel2, ViewModels [ 18 ] ); set_pev ( id, pev_weaponmodel2, PlayerModels [ 15 ] ); } if ( szWeapon == CSW_MP5NAVY && g_PlayerWeap [ id ] [ vip_cartblue ] ) { set_pev ( id, pev_viewmodel2, ViewModels [ 14 ] ); set_pev ( id, pev_weaponmodel2, PlayerModels [ 11 ] ); } if ( szWeapon == CSW_MP5NAVY && g_PlayerWeap [ id ] [ vip_cartred ] ) { set_pev ( id, pev_viewmodel2, ViewModels [ 15 ] ); set_pev ( id, pev_weaponmodel2, PlayerModels [ 12 ] ); } if ( szWeapon == CSW_M249 && g_PlayerWeap [ id ] [ vip_minigun ] ) { set_pev ( id, pev_viewmodel2, ViewModels [ 17 ] ); set_pev ( id, pev_weaponmodel2, PlayerModels [ 14 ] ); } if ( szWeapon == CSW_USP && g_PlayerWeap [ id ] [ weapon_uspx ] ) { set_pev ( id, pev_viewmodel2, ViewModels [ 11 ] ); set_pev ( id, pev_weaponmodel2, PlayerModels [ 8 ] ); } return 1; } public Player_TakeDamage ( iVictim, iInflictor, iAttacker, Float:fDamage, iDamageBits ) { if ( g_PlayerWeap [ iAttacker ] [ katana_knife ] && get_user_weapon ( iAttacker ) == CSW_KNIFE ) { SetHamParamFloat( 4, fDamage * 2.0); return HAM_HANDLED; } if ( g_PlayerWeap [ iAttacker ] [ double_katana_knife ] && get_user_weapon ( iAttacker ) == CSW_KNIFE ) { SetHamParamFloat( 4, fDamage * 2.8); return HAM_HANDLED; } if ( g_PlayerWeap [ iAttacker ] [ super_knife ] && get_user_weapon ( iAttacker ) == CSW_KNIFE ) { SetHamParamFloat( 4, fDamage * 2.5); return HAM_HANDLED; } if ( g_PlayerWeap [ iAttacker ] [ infinity_knife ] && get_user_weapon ( iAttacker ) == CSW_KNIFE ) { SetHamParamFloat( 4, fDamage * 3.0); return HAM_HANDLED; } if ( g_PlayerWeap [ iAttacker ] [ dual_mp5 ] && get_user_weapon ( iAttacker ) == CSW_MP5NAVY ) { SetHamParamFloat( 4, fDamage * 2.0); return HAM_HANDLED; } if ( g_PlayerWeap [ iAttacker ] [ m16 ] && get_user_weapon ( iAttacker ) == CSW_M4A1 ) { SetHamParamFloat( 4, fDamage * 2.0); return HAM_HANDLED; } if ( g_PlayerWeap [ iAttacker ] [ crossbow ] && get_user_weapon ( iAttacker ) == CSW_SG550 ) { SetHamParamFloat( 4, fDamage * 2.0); return HAM_HANDLED; } if ( g_PlayerWeap [ iAttacker ] [ m3_shoutgun ] && get_user_weapon ( iAttacker ) == CSW_M3 ) { SetHamParamFloat( 4, fDamage * 1.8); return HAM_HANDLED; } if ( g_PlayerWeap [ iAttacker ] [ thompson ] && get_user_weapon ( iAttacker ) == CSW_P90 ) { SetHamParamFloat( 4, fDamage * 2.4); return HAM_HANDLED; } if ( g_PlayerWeap [ iAttacker ] [ vip_elite ] && get_user_weapon ( iAttacker ) == CSW_ELITE ) { SetHamParamFloat( 4, fDamage * 2.7); return HAM_HANDLED; } if ( g_PlayerWeap [ iAttacker ] [ vip_dualkriss ] && get_user_weapon ( iAttacker ) == CSW_P90 ) { SetHamParamFloat( 4, fDamage * 3.0); return HAM_HANDLED; } if ( g_PlayerWeap [ iAttacker ] [ vip_hammer_knife ] && get_user_weapon ( iAttacker ) == CSW_KNIFE ) { SetHamParamFloat( 4, fDamage * 3.5); return HAM_HANDLED; } if ( g_PlayerWeap [ iAttacker ] [ vip_axe_knife ] && get_user_weapon ( iAttacker ) == CSW_KNIFE ) { SetHamParamFloat( 4, fDamage * 3.5); return HAM_HANDLED; } if ( g_PlayerWeap [ iAttacker ] [ vip_cartblue ] && get_user_weapon ( iAttacker ) == CSW_MP5NAVY ) { SetHamParamFloat( 4, fDamage * 3.5); return HAM_HANDLED; } return HAM_IGNORED; } stock DropWeapons ( id ) { new wpn, wpnname [ 32 ]; wpn = get_user_weapon ( id ); if ( !( WPN_NOT_DROP & ( 1 << wpn) ) && get_weaponname ( wpn, wpnname, charsmax ( wpnname ) ) ) { engclient_cmd ( id, "drop", wpnname ); } } /* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE *{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1033\\ f0\\ fs16 \n\\ par } */
Am modificat unele arme, am adaugat niste arme noi, gen Crossbow (arbaleta aia) Shopul este pe credite :D.
Un alt plugin ar fi life pe credite :)
- Life pe credite | Afiseaza codul
#include < amxmodx > #include < fakemeta > #include < hamsandwich > #include < nvault > native get_user_credits (id) native set_user_credits (id,cantitate) #define PLUGIN_NAME "Life-Shop" #define PLUGIN_VERSION "1.0" #define PLUGIN_AUTHOR "ExoTiQ" #define MAXPLAYERS 32 #define MAX_STATS_SAVED 64 #define LIFE_COST 15 // Pretul cand cumperi viata #define LIFE_SELL 1 // Pretul cand vinzi viata #define LIFE_LIMIT 2 // Limita maxima vietilor in menu. new g_Life[ MAXPLAYERS + 1 ] new gName[ MAXPLAYERS ] new vKey[ MAX_STATS_SAVED ] new vData[ MAX_STATS_SAVED ] new gVault public plugin_init ( ) { register_plugin ( PLUGIN_NAME, PLUGIN_VERSION, PLUGIN_AUTHOR ) register_event( "DeathMsg", "EV_DeathMsg", "a" ) register_forward(FM_ClientUserInfoChanged, "fwClientUserInfoChanged"); register_clcmd("say /vieti", "Life_Shop") register_clcmd("say /life", "Life_Shop") } public client_connect( id ) load_client_Life( id ) public client_disconnect( id ) save_client_Life( id ) public EV_DeathMsg() { new iVictim = read_data( 2 ); new iTeam = get_user_team( iVictim ); new iKiller = read_data( 1 ); if( iKiller != iVictim && get_user_team(iKiller) != iTeam ) { Life_Shop( iVictim ) } } public Life_Shop( id ) { new szText[ 1024 char ]; formatex( szText, charsmax( szText ), "\yYou Have: \r%d\y Credits^nHave: \r%d\y Life" ,get_user_credits(id) , g_Life[id] ); new menu = menu_create( szText, "Life_handler" ); formatex( szText, charsmax( szText ), "Buy 1 Life \y- \w%d\y Credits" ,LIFE_COST); menu_additem( menu, szText, "1", 0 ); formatex( szText, charsmax( szText ), "Use \y-\r1 Life" ); menu_additem( menu, szText, "3", 0 ); menu_setprop(menu, MPROP_EXITNAME, "Iesire") menu_display(id, menu, 0) } public Life_handler (id , menu , item ) { if (item == MENU_EXIT) { menu_destroy(menu) return PLUGIN_HANDLED } new s_Data[6], s_Name[64], i_Access, i_Callback menu_item_getinfo(menu, item, i_Access, s_Data, charsmax(s_Data), s_Name, charsmax(s_Name), i_Callback) new i_Key = str_to_num(s_Data) new credite = get_user_credits(id) switch(i_Key) { case 1: { if (credite < LIFE_COST) { Color_Print(id, "!g[Fury.CsBlackDevil.Com] !yYou do not have enough credits to buy !gLifes." ) return PLUGIN_HANDLED } if ( g_Life[id] >= LIFE_LIMIT ) { Color_Print(id, "!g[Fury.CsBlackDevil.Com] !yYou have reached the limit !high." ) return PLUGIN_HANDLED } Color_Print(id, "!g[Fury.CsBlackDevil.Com] !yYou Buy !g1 Lifea") g_Life[id] += 1 set_user_credits(id, credite - LIFE_COST) Life_Shop( id ) } case 2: { if ( g_Life[id] == 0 ) { Color_Print(id, "!g[Fury.CsBlackDevil.Com] !yDon't have !gLifes.") return PLUGIN_HANDLED } Color_Print(id, "!g[Fury.CsBlackDevil.Com] !yYou Sell !g1 Life.") g_Life[id] -= 1 set_user_credits(id, credite + LIFE_SELL) Life_Shop( id ) } case 3: { if ( is_user_alive( id ) ) { Color_Print(id, "!g[Fury.CsBlackDevil.Com] !yYou should be !gdead !y, for use a life.") return PLUGIN_HANDLED } if ( g_Life[id] == 0 ) { Color_Print(id, "!g[Fury.CsBlackDevil.Com] !yDon't have a !gLife.") return PLUGIN_HANDLED } g_Life[id] -= 1 Color_Print(id, "!g[Fury.CsBlackDevil.Com] !yYou used !g1 life and received !grespawn.") ExecuteHam(Ham_CS_RoundRespawn, id) } } menu_destroy(menu) return PLUGIN_HANDLED } stock save_client_Life( index ) { gVault = nvault_open( "Life_Save" ) if( gVault == INVALID_HANDLE ) { set_fail_state( "[Fury.CsBlackDevil.Com] nValut ERROR: =-> Invalid-Handle" ) } get_user_name( index, gName, charsmax( gName ) ) //get_user_name(index,gName,32); formatex( vKey, charsmax( vKey ), "%sLife",gName ) formatex( vData, charsmax( vData ), "%d", g_Life[ index ] ) nvault_set( gVault, vKey, vData ) nvault_close( gVault ) } stock load_client_Life( index ) { gVault = nvault_open( "Life_Save" ) if( gVault == INVALID_HANDLE ) { set_fail_state( "[Fury.CsBlackDevil.Com] nValut ERROR: =-> Invalid-Handle" ) } get_user_name( index, gName, charsmax( gName ) ) //get_user_name(index,gName,32); formatex( vKey, charsmax( vKey ), "%sLife",gName ) g_Life[ index ] = nvault_get( gVault, vKey ) nvault_close( gVault ) } public fwClientUserInfoChanged(id, buffer) { if (!is_user_connected(id)) { return FMRES_IGNORED; } static val[32]; static name[32]; get_user_name(id, name, 31); engfunc(EngFunc_InfoKeyValue, buffer, "name", val, sizeof val- 1); if (equal(val, name)) { return FMRES_IGNORED; } engfunc(EngFunc_SetClientKeyValue, id, buffer, "name", name); Color_Print(id, "!g[Fury.CsBlackDevil.Com] !teamNU este permisa schimbarea nick-ului pe server !") console_print(id,"NU este permisa schimbarea nick-ului pe server !"); return PLUGIN_HANDLED; } stock Color_Print(const id, const input[], any:...) { new count = 1, players[32] static msg[191] vformat(msg, 190, input, 3) replace_all(msg, 190, "!g", "^4") // Green Color replace_all(msg, 190, "!y", "^1") // Default Color replace_all(msg, 190, "!team", "^3") // Team Color 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(); } } } }
Plasma pe credite:)
- Plasma pe credite | Afiseaza codul
#include <amxmodx> #include <amxmisc> #include <cstrike> #include <engine> #include <fakemeta> #include <fakemeta_util> #include <fun> #include <hamsandwich> native get_user_credits (id) native set_user_credits (id,cantitate) #define PLUGIN "Ethereal" #define VERSION "1.0" #define AUTHOR "sDs|Aragon*" const PRIMARY_WEAPONS_BITSUM =(1<<CSW_SCOUT)|(1<<CSW_XM1014)|(1<<CSW_MAC10)|(1<<CSW_AUG)|(1<<CSW_UMP45)|(1<<CSW_SG550)|(1<<CSW_GALIL)|(1<<CSW_FAMAS)|(1<<CSW_AWP)|(1<<CSW_MP5NAVY)|(1<<CSW_M249)|(1<<CSW_M3)|(1<<CSW_M4A1)|(1<<CSW_TMP)|(1<<CSW_G3SG1)|(1<<CSW_SG552)|(1<<CSW_AK47)|(1<<CSW_P90); new BloodDrop, BloodSpray #define ETHEREAL_WEAPONKEY 103 #define weapon_ethereal "weapon_galil" #define CSW_ETHEREAL CSW_GALIL #define ethereal_shotdelay 0.15 // Refire rate new EtherealModel_V[] = "models/Snow/v_galil.mdl"; new EtherealModel_P[] = "models/Snow/p_galil.mdl"; new EtherealModel_W[] = "models/Snow/w_galil.mdl"; new const ethereal_sound[5][] = { "weapons/ethereal-1.wav", "weapons/ethereal_shoot1.wav", "weapons/galil_idle1.wav", "weapons/galil_reload.wav", "weapons/galil_draw.wav" }; new const ethereal_generic[3][] = { "sprites/SnowS/weapon_ethereal", "sprites/SnowS/Ethereal.spr", "sprites/SnowS/640hud2.spr" }; new bool:HasEthereal[33], ethereal_clip[33], ethereal_reload[33], Float:EtherealLastShotTime[33], ethereal_trail, ethereal_explode; new ethereal, etherealcost, etherealdamage, etherealclip, etherealammo, etherealreloadtime, etherealknockback; public plugin_init() { register_plugin( PLUGIN, VERSION, AUTHOR ); RegisterHam(Ham_Spawn, "player", "Spawn_Post", 1); RegisterHam(Ham_Killed, "player", "PlayerKilled"); register_clcmd("Ethereal/weapon_ethereal", "hook_ethereal"); register_event("CurWeapon", "Ethereal_Model", "be", "1=1"); register_event("WeapPickup","Ethereal_Model","b","1=19"); register_forward(FM_SetModel, "Ethereal_SetModel"); register_forward(FM_CmdStart, "Ethereal_CmdStart"); register_forward(FM_UpdateClientData, "Ethereal_UpdateClientData_Post", 1); RegisterHam(Ham_Item_Deploy , weapon_ethereal, "Ethereal_Deploy_Post", 1); RegisterHam(Ham_Item_AddToPlayer, weapon_ethereal, "Ethereal_AddToPlayer"); RegisterHam(Ham_Weapon_Reload, weapon_ethereal, "Ethereal_Reload"); RegisterHam(Ham_Weapon_Reload, weapon_ethereal, "Ethereal_Reload_Post", 1); RegisterHam(Ham_Item_PostFrame, weapon_ethereal, "Ethereal_PostFrame"); ethereal = register_cvar("amx_ethereal", "1"); //| Ethereal 0 Disable -> 1 Enable |// etherealcost = register_cvar("amx_etherealcost", "50"); //| Ethereal Cost CREDITE |// etherealdamage = register_cvar("amx_ethereal_damage", "80"); //| Ethereal Damage |// etherealclip = register_cvar("amx_ethereal_clip", "30"); //| Ethereal Clip |// etherealammo = register_cvar("amx_ethereal_ammo", "120"); //| Ethereal Ammo |// etherealreloadtime = register_cvar("amx_ethereal_reload_time", "3.03"); //| Ethereal Reload Time |// etherealknockback = register_cvar("amx_ethereal_knockback", "3"); //| Ethereal KnockBack |// register_clcmd("plasma124", "buy_ethereal"); register_clcmd("plasma124", "buy_ethereal"); register_clcmd("say /plasma124", "buy_ethereal"); register_clcmd("say /plasma124", "buy_ethereal"); register_clcmd("say plasma124", "buy_ethereal"); register_clcmd("say_team /plasma124", "buy_ethereal"); register_clcmd("say_team /plasma124", "buy_ethereal"); register_clcmd("say_team plasma124", "buy_ethereal"); register_concmd("amx_give_ethereal", "GiveEthereal", ADMIN_IMMUNITY, "Name"); } public plugin_natives() { register_native("get_user_ethereal", "get_user_ethereal", 1); register_native("set_user_ethereal", "set_user_ethereal", 1); } public get_user_ethereal(id) { return HasEthereal[id]; } public set_user_ethereal(id, ethereal) { if(ethereal) { if(!HasEthereal[id]) { drop_primary_weapons(id); HasEthereal[id] = true; message_begin(MSG_ONE, get_user_msgid("WeaponList"), _, id); write_string("Ethereal/weapon_ethereal"); // WeaponName write_byte(4); // PrimaryAmmoID write_byte(90); // PrimaryAmmoMaxAmount write_byte(-1); // SecondaryAmmoID write_byte(-1); // SecondaryAmmoMaxAmount write_byte(0); // SlotID (0...N) write_byte(17); // NumberInSlot (1...N) write_byte(CSW_ETHEREAL); // WeaponID write_byte(0); // Flags message_end(); fm_give_item(id, weapon_ethereal) cs_set_user_bpammo(id, CSW_ETHEREAL, get_pcvar_num(etherealammo)) new clip = fm_get_user_weapon_entity(id, CSW_ETHEREAL); cs_set_weapon_ammo(clip, get_pcvar_num(etherealclip)); set_weapon_anim(id, 2); } } else { if(HasEthereal[id]) { HasEthereal[id] = false; } } } public Spawn_Post(id) set_user_ethereal(id, 0); public PlayerKilled(victim, attacker, shouldgib) set_user_ethereal(victim, 0); //------| Buy Ethereal |------// public buy_ethereal(id) { if(get_user_team(id) == 2) { new ethcost = get_pcvar_num(etherealcost); if(!get_pcvar_num(ethereal)) { ColorChat(id, "^x04[Fury.CsBlackDevil.Com]^x03 Plasma^x04 este dezactivat."); } else if(!is_user_alive(id)) { ColorChat(id, "^x04[Fury.CsBlackDevil.Com]^x03 Nu poti cumpara^x04 Plasma^x03 cat timp esti mort."); } else if(get_user_ethereal(id)) { ColorChat(id, "^x04[Fury.CsBlackDevil.Com]^x03 Ai deja^x04 Plasma."); } else if(get_user_credits(id) < ethcost) { ColorChat(id, "^x04[Fury.CsBlackDevil.Com]^x03 Nu ai suficiente fonduri pentru a cumpara^x04 Plasma^x03. Necesari: ^x04$%d",ethcost); } else { set_user_credits(id, get_user_credits(id) - ethcost); ColorChat(id, "^x04[Fury.CsBlackDevil.Com]^x03 Ai cumparat^x04 Plasma."); set_user_ethereal(id, true); } } } public GiveEthereal(id, level, cid) { if(!cmd_access(id, level, cid, 2)) { return PLUGIN_HANDLED; } new arg[23], name[32]; get_user_name(id, name, 31); read_argv(1, arg, 23); new player = cmd_target(id, arg, 11); if(!player) { console_print(id, "Juctorul cu acel nume nu exista."); return PLUGIN_HANDLED; } if(!is_user_alive(player)) { return PLUGIN_HANDLED; } if(!get_user_ethereal(player)) { set_user_ethereal(player, true); switch(get_cvar_num("amx_show_activity")) { case 1: ColorChat(player, "^x03ADMIN^x04 give you ^x03 Plasma."); case 2: ColorChat(player, "^x03%s^x04 give you ^x03 Plasma.", name); } } return PLUGIN_HANDLED; } public hook_ethereal(id) { engclient_cmd(id, weapon_ethereal); } public Ethereal_Model(id) { if(get_user_weapon(id) == CSW_ETHEREAL && get_user_ethereal(id)) { set_pev(id, pev_viewmodel2, EtherealModel_V); set_pev(id, pev_weaponmodel2, EtherealModel_P); } } public Ethereal_SetModel(entity, model[]) { // Entity is not valid if(!is_valid_ent(entity)) return FMRES_IGNORED; // Get classname static szClassName[33]; entity_get_string(entity, EV_SZ_classname, szClassName, charsmax(szClassName)); // Not a Weapon box if(!equal(szClassName, "weaponbox")) return FMRES_IGNORED; new iOwner = entity_get_edict(entity, EV_ENT_owner); new WPN_Ethereal = find_ent_by_owner(-1, weapon_ethereal, entity); if(get_user_ethereal(iOwner) && is_valid_ent(WPN_Ethereal) && equal(model, "models/w_galil.mdl")) { entity_set_int(WPN_Ethereal, EV_INT_impulse, ETHEREAL_WEAPONKEY); HasEthereal[iOwner] = false; entity_set_model(entity, EtherealModel_W); return FMRES_SUPERCEDE; } return FMRES_IGNORED; } public Ethereal_CmdStart(id, uc_handle, seed) { if(is_user_alive(id) && is_user_connected(id)) { static CurButton; CurButton = get_uc(uc_handle, UC_Buttons); new Float:flNextAttack = get_pdata_float(id, 83, 5); if(CurButton & IN_ATTACK) { if(get_user_weapon(id) == CSW_ETHEREAL && get_user_ethereal(id)) { static ethereal; ethereal = fm_find_ent_by_owner(-1, weapon_ethereal, id); if(cs_get_weapon_ammo(ethereal) > 0 && !ethereal_reload[id] && flNextAttack <= 0.0) { if(get_gametime() - EtherealLastShotTime[id] > ethereal_shotdelay) { set_weapon_anim(id, random_num(3,5)); emit_sound(id, CHAN_WEAPON, ethereal_sound[0], VOL_NORM, ATTN_NORM, 0, PITCH_NORM); Ethereal_Fire(id); static Float:Punch_Angles[3]; Punch_Angles[0] = -3.0; Punch_Angles[1] = 0.0; Punch_Angles[2] = 0.0; set_pev(id, pev_punchangle, Punch_Angles); cs_set_weapon_ammo(ethereal, cs_get_weapon_ammo(ethereal) - 1); EtherealLastShotTime[id] = get_gametime(); } } CurButton &= ~IN_ATTACK; set_uc(uc_handle, UC_Buttons, CurButton); } } } } public Ethereal_UpdateClientData_Post(id, sendweapons, cd_handle) { if(is_user_alive(id) && is_user_connected(id)) { if(get_user_weapon(id) == CSW_ETHEREAL && get_user_ethereal(id)) { set_cd(cd_handle, CD_flNextAttack, halflife_time() + 0.001); } } } public Ethereal_AddToPlayer(Weapon, id) { if(is_valid_ent(Weapon) && is_user_connected(id) && entity_get_int(Weapon, EV_INT_impulse) == ETHEREAL_WEAPONKEY) { HasEthereal[id] = true; entity_set_int(Weapon, EV_INT_impulse, 0); } message_begin(MSG_ONE, get_user_msgid("WeaponList"), _, id); write_string(HasEthereal[id] ? "Ethereal/weapon_ethereal" : "weapon_galil"); // WeaponName write_byte(4); // PrimaryAmmoID write_byte(90); // PrimaryAmmoMaxAmount write_byte(-1); // SecondaryAmmoID write_byte(-1); // SecondaryAmmoMaxAmount write_byte(0); // SlotID (0...N) write_byte(17); // NumberInSlot (1...N) write_byte(CSW_ETHEREAL); // WeaponID write_byte(0); // Flags message_end(); } public Ethereal_Deploy_Post(entity) { static owner; owner = fm_get_weapon_ent_owner(entity); if(get_user_ethereal(owner)) { set_pev(owner, pev_viewmodel2, EtherealModel_V); set_pev(owner, pev_weaponmodel2, EtherealModel_P); set_weapon_anim(owner, 2); set_pdata_float(owner, 83, 1.36, 5); static clip; clip = cs_get_weapon_ammo(entity); if(clip > 0) ethereal_reload[owner] = 0; } } public Ethereal_Reload(ent) { if(!pev_valid(ent)) return HAM_IGNORED; new id; id = pev(ent, pev_owner); if(!is_user_alive(id) || !get_user_ethereal(id)) return HAM_IGNORED; ethereal_clip[id] = -1; new bpammo = cs_get_user_bpammo(id, CSW_ETHEREAL); if(bpammo <= 0) return HAM_SUPERCEDE; new iClip = get_pdata_int(ent, 51, 4); if(iClip >= get_pcvar_num(etherealclip)) return HAM_SUPERCEDE; ethereal_clip[id] = iClip; ethereal_reload[id] = 1; return HAM_IGNORED; } public Ethereal_Reload_Post(ent) { if(!pev_valid(ent)) return HAM_IGNORED; new id; id = pev(ent, pev_owner); if(!is_user_alive(id) || !get_user_ethereal(id)) return HAM_IGNORED; if(ethereal_clip[id] == -1) return HAM_IGNORED; new Float:reload_time = get_pcvar_float(etherealreloadtime); set_pdata_int(ent, 51, ethereal_clip[id], 4); set_pdata_float(ent, 48, reload_time, 4); set_pdata_float(id, 83, reload_time, 5); set_pdata_int(ent, 54, 1, 4); set_weapon_anim(id, 1); return HAM_IGNORED; } public Ethereal_PostFrame(ent) { if(!pev_valid(ent)) return HAM_IGNORED; new id; id = pev(ent, pev_owner); if(!is_user_alive(id) || !get_user_ethereal(id)) return HAM_IGNORED; new Float:flNextAttack = get_pdata_float(id, 83, 5); new bpammo = cs_get_user_bpammo(id, CSW_ETHEREAL); new iClip = get_pdata_int(ent, 51, 4); new fInReload = get_pdata_int(ent, 54, 4); if(fInReload && flNextAttack <= 0.0) { new temp = min(get_pcvar_num(etherealclip) - iClip, bpammo); set_pdata_int(ent, 51, iClip + temp, 4); cs_set_user_bpammo(id, CSW_ETHEREAL, bpammo - temp); set_pdata_int(ent, 54, 0, 4); fInReload = 0; ethereal_reload[id] = 0; } return HAM_IGNORED; } public Ethereal_Fire(id) { static Victim, Body, EndOrigin[3], BeamOrigin[3]; get_user_origin(id, BeamOrigin, 3) ; get_user_origin(id, EndOrigin, 3); message_begin(MSG_BROADCAST,SVC_TEMPENTITY); write_byte(TE_BEAMENTPOINT); write_short(id | 0x1000); write_coord(BeamOrigin[0]); // Start X write_coord(BeamOrigin[1]); // Start Y write_coord(BeamOrigin[2]); // Start Z write_short(ethereal_trail); // Sprite write_byte(1); // Start frame write_byte(1); // Frame rate write_byte(1); // Life write_byte(25); // Line width write_byte(0); // Noise write_byte(0); // Red write_byte(150); // Green write_byte(0); // Blue write_byte(150); // Brightness write_byte(25); // Scroll speed message_end(); message_begin(MSG_BROADCAST, SVC_TEMPENTITY); write_byte(3); write_coord(EndOrigin[0]); write_coord(EndOrigin[1]); write_coord(EndOrigin[2]); write_short(ethereal_explode); write_byte(10); write_byte(15); write_byte(4); message_end(); get_user_aiming(id, Victim, Body, 999999); if(is_user_connected(Victim)) { new Float:Damage = float(get_damage_body(Body, get_pcvar_float(etherealdamage))); new Float:VictimOrigin[3]; VictimOrigin[0] = float(EndOrigin[0]); VictimOrigin[1] = float(EndOrigin[1]); VictimOrigin[2] = float(EndOrigin[2]); if(get_user_health(Victim) - get_pcvar_float(etherealdamage) >= 1 && is_user_alive(Victim) && !fm_get_user_godmode(Victim) && get_user_team(Victim) != get_user_team(id)) { make_blood(VictimOrigin, get_pcvar_float(etherealdamage), Victim); make_knockback(Victim, VictimOrigin, get_pcvar_float(etherealknockback)*get_pcvar_float(etherealdamage)); ExecuteHam(Ham_TakeDamage, Victim, id, id, Damage, DMG_NERVEGAS); message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("Damage"), _, Victim); write_byte(0); write_byte(0); write_long(DMG_NERVEGAS); write_coord(0) ; write_coord(0); write_coord(0); message_end(); message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("ScreenFade"), {0,0,0}, Victim); write_short(1<<13); write_short(1<<14); write_short(0x0000); write_byte(0); write_byte(255); write_byte(0); write_byte(100) ; message_end(); message_begin(MSG_ONE, get_user_msgid("ScreenShake"), {0,0,0}, Victim); write_short(0xFFFF); write_short(1<<13); write_short(0xFFFF) ; message_end(); } else if(get_user_health(Victim) - get_pcvar_float(etherealdamage) < 1 && is_user_alive(Victim) && !fm_get_user_godmode(Victim) && get_user_team(Victim) != get_user_team(id)) { make_blood(VictimOrigin, get_pcvar_float(etherealdamage), Victim); make_knockback(Victim, VictimOrigin, get_pcvar_float(etherealknockback)*get_pcvar_float(etherealdamage)); death_message(id, Victim, 1, "ethereal"); } } else { static ClassName[32]; pev(Victim, pev_classname, ClassName, charsmax(ClassName)); if(equal(ClassName, "func_breakable")) { if(entity_get_float(Victim, EV_FL_health) <= get_pcvar_num(etherealdamage)) { force_use(id, Victim); } } } emit_sound(id, CHAN_WEAPON, ethereal_sound[1], VOL_NORM, ATTN_NORM, 0, PITCH_NORM); } stock make_blood(const Float:vTraceEnd[3], Float:Damage, hitEnt) { new bloodColor = ExecuteHam(Ham_BloodColor, hitEnt); if(bloodColor == -1) return; new amount = floatround(Damage); amount *= 2; //according to HLSDK message_begin(MSG_BROADCAST, SVC_TEMPENTITY); write_byte(TE_BLOODSPRITE); write_coord(floatround(vTraceEnd[0])); write_coord(floatround(vTraceEnd[1])); write_coord(floatround(vTraceEnd[2])); write_short(BloodSpray); write_short(BloodDrop); write_byte(bloodColor); write_byte(min(max(3, amount/10), 16)); message_end(); } // Make knockback public make_knockback(Victim, Float:origin[3], Float:maxspeed) { // Get and set velocity new Float:fVelocity[3]; kickback(Victim, origin, maxspeed, fVelocity); entity_set_vector(Victim, EV_VEC_velocity, fVelocity); return(1); } // Extra calulation for knockback stock kickback(ent, Float:fOrigin[3], Float:fSpeed, Float:fVelocity[3]) { // Find origin new Float:fEntOrigin[3]; entity_get_vector(ent, EV_VEC_origin, fEntOrigin); // Do some calculations new Float:fDistance[3]; fDistance[0] = fEntOrigin[0] - fOrigin[0]; fDistance[1] = fEntOrigin[1] - fOrigin[1]; fDistance[2] = fEntOrigin[2] - fOrigin[2]; new Float:fTime =(vector_distance(fEntOrigin,fOrigin) / fSpeed); fVelocity[0] = fDistance[0] / fTime; fVelocity[1] = fDistance[1] / fTime; fVelocity[2] = fDistance[2] / fTime; return(fVelocity[0] && fVelocity[1] && fVelocity[2]); } stock death_message(Killer, Victim, ScoreBoard, const Weapon[]) { // Block death msg set_msg_block(get_user_msgid("DeathMsg"), BLOCK_SET); ExecuteHamB(Ham_Killed, Victim, Killer, 2); set_msg_block(get_user_msgid("DeathMsg"), BLOCK_NOT); // Death make_deathmsg(Killer, Victim, 0, Weapon); cs_set_user_money(Killer, cs_get_user_money(Killer) + 3000); // Update score board if(ScoreBoard) { message_begin(MSG_BROADCAST, get_user_msgid("ScoreInfo")); write_byte(Killer); // id write_short(pev(Killer, pev_frags)); // frags write_short(cs_get_user_deaths(Killer)); // deaths write_short(0); // class? write_short(get_user_team(Killer)); // team message_end(); message_begin(MSG_BROADCAST, get_user_msgid("ScoreInfo")); write_byte(Victim); // id write_short(pev(Victim, pev_frags)); // frags write_short(cs_get_user_deaths(Victim)); // deaths write_short(0); // class? write_short(get_user_team(Victim)); // team message_end(); } } stock set_weapon_anim(id, anim) { set_pev(id, pev_weaponanim, anim); if(is_user_connected(id)) { message_begin(MSG_ONE, SVC_WEAPONANIM, _, id); write_byte(anim); write_byte(pev(id, pev_body)); message_end(); } } stock get_damage_body(body, Float:damage) { switch(body) { case HIT_HEAD: damage *= 4.0; case HIT_STOMACH: damage *= 1.1; case HIT_CHEST: damage *= 1.5; case HIT_LEFTARM: damage *= 0.77; case HIT_RIGHTARM: damage *= 0.77; case HIT_LEFTLEG: damage *= 0.75; case HIT_RIGHTLEG: damage *= 0.75; default: damage *= 1.0; } return floatround(damage); } stock fm_get_user_bpammo(index, weapon) { static offset switch(weapon) { case CSW_AWP: offset = OFFSET_AMMO_338MAGNUM case CSW_SCOUT, CSW_AK47, CSW_G3SG1: offset = OFFSET_AMMO_762NATO case CSW_M249: offset = OFFSET_AMMO_556NATOBOX case CSW_FAMAS, CSW_M4A1, CSW_AUG, CSW_SG550, CSW_GALI, CSW_SG552: offset = OFFSET_AMMO_556NATO case CSW_M3, CSW_XM1014: offset = OFFSET_AMMO_BUCKSHOT case CSW_USP, CSW_UMP45, CSW_MAC10: offset = OFFSET_AMMO_45ACP case CSW_FIVESEVEN, CSW_P90: offset = OFFSET_AMMO_57MM case CSW_DEAGLE: offset = OFFSET_AMMO_50AE case CSW_P228: offset = OFFSET_AMMO_357SIG case CSW_GLOCK18, CSW_TMP, CSW_ELITE, CSW_MP5NAVY: offset = OFFSET_AMMO_9MM default: offset = 0 } return offset ? get_pdata_int(index, offset) : 0 } stock fm_set_user_bpammo(index, weapon, amount) { static offset switch(weapon) { case CSW_AWP: offset = OFFSET_AMMO_338MAGNUM case CSW_SCOUT, CSW_AK47, CSW_G3SG1: offset = OFFSET_AMMO_762NATO case CSW_M249: offset = OFFSET_AMMO_556NATOBOX case CSW_FAMAS, CSW_M4A1, CSW_AUG, CSW_SG550, CSW_GALI, CSW_SG552: offset = OFFSET_AMMO_556NATO case CSW_M3, CSW_XM1014: offset = OFFSET_AMMO_BUCKSHOT case CSW_USP, CSW_UMP45, CSW_MAC10: offset = OFFSET_AMMO_45ACP case CSW_FIVESEVEN, CSW_P90: offset = OFFSET_AMMO_57MM case CSW_DEAGLE: offset = OFFSET_AMMO_50AE case CSW_P228: offset = OFFSET_AMMO_357SIG case CSW_GLOCK18, CSW_TMP, CSW_ELITE, CSW_MP5NAVY: offset = OFFSET_AMMO_9MM default: offset = 0 } if(offset) set_pdata_int(index, offset, amount) return 1 } // Get Weapon Entity's CSW_ ID stock fm_get_weapon_ent_id(ent) { return get_pdata_int(ent, OFFSET_WEAPONID, 4); } // Get Weapon Entity's Owner stock fm_get_weapon_ent_owner(ent) { return get_pdata_cbase(ent, 41, 4); } // Drop all primary guns stock drop_primary_weapons(Player) { // Get user weapons static weapons[32], num, i, weaponid; num = 0; // reset passed weapons count(bugfix) get_user_weapons(Player, weapons, num); // Loop through them and drop primaries for(i = 0; i < num; i++) { // Prevent re-indexing the array weaponid = weapons ; // We definetely are holding primary gun if(((1<<weaponid) & PRIMARY_WEAPONS_BITSUM)) { // Get weapon entity static wname[32]; get_weaponname(weaponid, wname, charsmax(wname)); // Player drops the weapon and looses his bpammo engclient_cmd(Player, "drop", wname); } } } 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(); } } } } //------| Parecache Sounds and Models |------// public plugin_precache() { BloodSpray = precache_model("sprites/bloodspray.spr"); // initial blood BloodDrop = precache_model("sprites/blood.spr"); // splattered blood ethereal_trail = precache_model("sprites/SnowS/ethereal_beam.spr"); ethereal_explode = precache_model("sprites/SnowS/ethereal_exp.spr"); precache_model(EtherealModel_V); precache_model(EtherealModel_P); precache_model(EtherealModel_W); new i; for(i = 0; i < sizeof(ethereal_sound); i++) engfunc(EngFunc_PrecacheSound, ethereal_sound); for(i = 0; i < sizeof(ethereal_generic); i++) engfunc(EngFunc_PrecacheGeneric, ethereal_generic[i]); }
Credite per kill
- Credite per kill | Afiseaza codul
#include <amxmodx> #include <amxmisc> #include <cstrike> #define VERSION "2.1" native get_user_credits(id) native set_user_credits(id, cantitate) public plugin_init() { register_plugin("Kill Credite",VERSION,"Gabriel") register_event("DeathMsg","death_msg","a") } public death_msg() { new iKiller = read_data ( 1 ); new iVictim = read_data ( 2 ); if ( iKiller == iVictim ) return 1; set_user_credits ( iKiller, get_user_credits ( iKiller ) + 7 ); return 1; }
Bomb plant & Defuze
- Bomb plant & Defuze | Afiseaza codul
#include <amxmodx> #include <cstrike> #include <csx> #define PLUGIN "Bomb Events - Credite Furien" #define VERSION "0.1" #define AUTHOR "Gabriel" native get_user_credits(id) native set_user_credits(id, cantitate) new pBonus new dBonus new eBonus public plugin_init() { register_plugin(PLUGIN, VERSION, AUTHOR) register_event("TextMsg", "bomb_planted", "a", "2&%!MRAD_BOMBPL") register_event("TextMsg", "bomb_defused", "a", "2&%!MRAD_BOMBDEF") pBonus = register_cvar("credit_bonus_plant","100") dBonus = register_cvar("credit_bonus_defuse","100") } public bomb_planted(id) { new name[32] get_user_name(id, name, 31) { new credit = get_user_credits(id) new got = get_pcvar_num(pBonus) set_user_credits(id, credit + got) color(0, ".v[FURIEN].g Jucatorul .e%s a primit .g%d credite pentru ca a plantat bomba !",name, get_pcvar_num(pBonus)) } } public bomb_defused(id) { new name[32] get_user_name(id, name, 31) { new credit = get_user_credits(id) new got = get_pcvar_num(dBonus) set_user_credits(id, credit + got) color(0, ".v[FURIEN].g Jucatorul .e%s a primit .g%d credite pentru ca ai dezamorsat bomba",name, get_pcvar_num(dBonus)) } } stock color(const id, const input[], any:...) { new count = 1, players[32] static msg[191] vformat(msg, 190, input, 3) replace_all(msg, 190, ".v", "^4") replace_all(msg, 190, ".g", "^1") replace_all(msg, 190, ".e", "^3") if (id) players[0] = id; else get_players(players, count, "ch") { for (new i = 0; i < count; i++) { if (is_user_connected(players[i])) { message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players[i]) write_byte(players[i]); write_string(msg); message_end(); } } } }
Donate credits to players.
- Donate | Afiseaza codul
#include <amxmodx> #include <amxmisc> native get_user_credits (id) native set_user_credits (id , cantitate) public plugin_init() { register_plugin("Donate Credits", "1.0", "cyby") register_clcmd("say", "donare_say") register_clcmd("say_team", "donare_say") } public donare_say(id) { new citim_mesaj[64] read_args(citim_mesaj, charsmax(citim_mesaj)) remove_quotes(citim_mesaj) new comanda[16] new nume[32] strbreak(citim_mesaj, comanda, charsmax(comanda), nume, charsmax(nume)) if(equal(comanda, "/donate", 7)) donate(id, nume) } public donate(id, arg[]) { new cui[32], count[10] strbreak(arg, cui, 31, count, 9) if (!cui[0] || !count[0]) { color(id, "!g[Fury.CsBlackDevil.Com] !nPentru a dona credite foloseste !g/donate nume credite") return } new credite_trimise = get_user_credits(id) new credite if (equal(count, "all")) credite = credite_trimise else credite = str_to_num(count) if (credite <= 0) { color(id, "!g[Fury.CsBlackDevil.Com] !n Valoarea introdusa de tine este invalida.") return } credite_trimise -= credite if (credite_trimise < 0) { credite+=credite_trimise credite_trimise = 0 } new primitor = cmd_target(id, cui, (CMDTARGET_ALLOW_SELF)) if (!primitor || primitor == id) { color(id, "!g[Fury.CsBlackDevil.Com] !n %s .g nu exista pe server.", cui) return } set_user_credits(primitor, get_user_credits(primitor) + credite) set_user_credits(id, credite_trimise) new tNume[32], pNume[32] get_user_name(id, tNume, 31) get_user_name(primitor, pNume, 31) color(0, "!g[Fury.CsBlackDevil.Com] Jucatorul !g%s !nii trimite lui !g%s o cantitate de !g%d !ncredite", tNume, pNume, credite) } stock color(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, "!n", "^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[i])) { message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players[i]) write_byte(players[i]); write_string(msg); message_end(); } } } }
Meniul acela de pe server:> sa va puteti creea si voi.. simplu dar dragut.
- Menu | Afiseaza codul
#include <amxmodx> #include <amxmisc> #include <cstrike> #include <fakemeta> #include <hamsandwich> #define flag_get(%1,%2) (%1 & (1 << (%2 & 31))) #define flag_get_boolean(%1,%2) (flag_get(%1,%2) ? true : false) #define flag_set(%1,%2) %1 |= (1 << (%2 & 31)) #define flag_unset(%1,%2) %1 &= ~(1 << (%2 & 31)) public plugin_init() { register_plugin("Simple Menu","x","SnowFake") register_clcmd("say /menu","FormatMenu") register_clcmd("say /meniu","FormatMenu") } public FormatMenu(id) { new menu = menu_create("\wFury.CsBlackDevil.Com:", "option_menu") menu_additem(menu, "\ySHOP MENU", "1", 0) menu_additem(menu, "\yVIP MENU [\rONLY\w/\rVIP\r]", "2", 0) menu_additem(menu, "\yLife System", "3", 0) menu_additem(menu, "\yPLASMA GUN-\r50 \rCREDITE", "4", 0) menu_additem(menu, "\wRegulament", "5", 0) menu_additem(menu, "\wRadio", "6", 0) menu_setprop(menu, MPROP_EXIT, MEXIT_ALL) menu_display(id, menu, 0) } public option_menu(id, menu, item) { if (item == MENU_EXIT) { menu_destroy(menu) return PLUGIN_HANDLED } new data[6], names[64], access, callback menu_item_getinfo(menu, item, access, data,5, names, 63, callback) new key = str_to_num(data) switch(key) { case 1: { client_cmd(id,"say /shopulet") key = (0<<1|1<<1|1<<2|1<<3|1<<4|1<<5|1<<6|1<<7|1<<8) } case 2: { client_cmd(id,"say /furienvip") key = (0<<1|1<<1|1<<2|1<<3|1<<4|1<<5|1<<6|1<<7|1<<8) } case 3: { client_cmd(id,"say /life") key = (0<<1|1<<1|1<<2|1<<3|1<<4|1<<5|1<<6|1<<7|1<<8) } case 4: { client_cmd(id,"say /plasma124") key = (0<<1|1<<1|1<<2|1<<3|1<<4|1<<5|1<<6|1<<7|1<<8) } case 5: { show_motd(id,"reguli.html","Preturi Admine") key = (0<<1|1<<1|1<<2|1<<3|1<<4|1<<5|1<<6|1<<7|1<<8) } case 6: { client_cmd(id,"say /radio") key = (0<<1|1<<1|1<<2|1<<3|1<<4|1<<5|1<<6|1<<7|1<<8) } } menu_destroy(menu) return PLUGIN_HANDLED }
Plugin depozit + HUD HP, CREDITS
- HP + CREDITE | Afiseaza codul
#include <amxmodx> #include <amxmisc> #include <cstrike> #include <fakemeta> #define PLUGIN "Depozit Mooney" #define AUTHOR "Aragon*" #define VERSION "1.0" new PlayerCredits[33]; new File[128], SymbolsName; public plugin_init() { register_plugin( PLUGIN, VERSION, AUTHOR ); register_forward(FM_ClientUserInfoChanged, "ChangeName"); SymbolsName = register_cvar("fr_name_symbols", "~`"); //| Symbols Name Restricted |// register_clcmd("say", "Check"); register_clcmd("say_team", "Check"); register_clcmd("depozit","Depozit") register_clcmd("say /depozit","Depozit") register_clcmd("say_team /depozit","Depozit") register_clcmd("retrage","Retrage") register_clcmd("say /retrage","Retrage") register_clcmd("say_team /retrage","Retrage") register_clcmd("credits","Show_Credits") register_clcmd("credite","Show_Credits") register_clcmd("say /credits","Show_Credits") register_clcmd("say /credite","Show_Credits") register_clcmd("say_team /credits","Show_Credits") register_clcmd("say_team /credite","Show_Credits") register_clcmd("say /give", "GiveCredits"); register_concmd("amx_give_credits", "Give_Credits", ADMIN_IMMUNITY, "Name/@T/@CT/@All -> Amount"); register_concmd("amx_reset_credits", "Reset_Credits", ADMIN_IMMUNITY, "Name/@T/@CT/@All"); new DataDir[64] get_datadir(DataDir, 63) format(File, 127, "%s/FurienCredits.dat", DataDir) } public plugin_natives() { register_native("set_user_credits", "set_user_credits", 1); register_native("get_user_credits", "get_user_credits", 1); } public client_putinserver(id) { LoadCredits(id) set_task(1.0, "showinfo", id, _, _, "b") set_task(300.0, "unminut", id, _, _, "b") } public unminut(id) { PlayerCredits[id] += 10 ColorChat(id, "Ai primit 10 credit pentru ca ai jucat 5 minute pe Fury.Cs.BlackDevil.Com !") ColorChat(id, "Joaca in continuare si vei primi iar !") SaveCredits( id ); } public showinfo(id) { new hp = get_user_health(id) new ap = get_user_armor(id) new creditee = get_user_credits(id) set_hudmessage(255, 200, 3, 0.01, 0.18, 1, 1.0, 1.0) show_hudmessage(id, "HP: %d |CREDITE: %d ",hp,creditee) } public set_user_credits(id, credits) { PlayerCredits[id] = credits; SaveCredits(id) } public get_user_credits(id) { return PlayerCredits[id] } //------| Change Name |------// public ChangeName(id, buffer) { if(!is_user_connected(id)) return FMRES_IGNORED; static Name[32], Val[32]; get_user_name(id, Name, sizeof Name - 1); engfunc(EngFunc_InfoKeyValue, buffer, "name", Val, sizeof Val - 1); if(equal(Val, Name)) return FMRES_IGNORED; set_task(0.2, "client_connect", id); return FMRES_SUPERCEDE; } //------| Client connect |------// public client_connect(id) { static sName[32]; get_user_name(id, sName, sizeof sName - 1); static sChars[32]; get_pcvar_string(SymbolsName, sChars, sizeof sChars - 1); for(new i = 0 ; i < strlen(sName) ; i++) { for(new j = 0 ; j < strlen(sChars) ; j++) { if(sName[i] == sChars[j]) { server_cmd("kick #%d ^"Numele tau contine caractere nepermise.^"", get_user_userid(id)); break; } else { LoadCredits(id); } } } } public Depozit(id) { if(cs_get_user_money(id) >= 16000) { ColorChat(id, "!x03[Depozit]!x04 Ai depozitat!x03 16000$!x04 is ai primit!x03 1!x04 credit."); set_user_credits(id, get_user_credits(id) + 1); cs_set_user_money(id, cs_get_user_money(id) - 16000); } else { ColorChat(id, "!x03[Depozit]!x04 Iti trebuie!x03 16000$!x04 pentru a putea depozita."); } return PLUGIN_HANDLED; } public Retrage(id) { if(cs_get_user_money(id) >= 16000) { ColorChat(id, "!x03[Depozit]!x04 Ai deja!x03 16000$."); } else if(PlayerCredits[id]) { ColorChat(id, "!x03[Depozit]!x04 Ai retras!x03 1!x04 credit din depozit, ai primit!x03 16000$."); set_user_credits(id, get_user_credits(id) - 1); cs_set_user_money(id, cs_get_user_money(id) + 16000); } else { ColorChat(id, "!x03[Depozit]!x04 Iti trebuie!x03 1 credit!x04 pentru a putea retrage."); } return PLUGIN_HANDLED; } public Check(id) { static Args[32] read_args(Args, sizeof(Args) - 1); remove_quotes(Args); if(equal(Args, "/give", 5)) { replace(Args, sizeof(Args) - 1, "/", ""); client_cmd(id, "amx_%s", Args); } return PLUGIN_CONTINUE; } public GiveCredits(id) { new Arg1[32], Arg2[6]; read_argv(1, Arg1, 31); read_argv(2, Arg2, 5); new Target = cmd_target(id, Arg1, 8); new Ammount = str_to_num(Arg2); if(Target == id) { ColorChat(id, "!x03Nu poti sa-ti dai credite tie"); } else if(!Target) { ColorChat(id, "!x03Acest user nu exista"); } else if(Ammount <= 0) { ColorChat(id, "!x03Nu poti sa dai o suma negativa sau egala cu 0"); } else if(Ammount > get_user_credits(id)){ ColorChat(id, "!x03Nu poti sa dai mai multe credite decat ai"); } else { new TargetName[32], Name[32]; get_user_name(Target, TargetName, 31); get_user_name(id, Name, 31); set_user_credits(id, get_user_credits(id) - Ammount) ColorChat(id, "!x03I-ai dat lui!x04 %s!x03 suma de!x04 %d$", TargetName, Ammount); set_user_credits(Target, get_user_credits(Target) + Ammount) ColorChat(Target, "!x03Ai primit de la !x04%s!x03 suma de!x04 %d$", Name, Ammount); } } public Show_Credits(id) { set_hudmessage(0, 128, 0, 0.03, 0.86, 2, 6.0, 5.0); show_hudmessage(id, "Ai %d Credite.", PlayerCredits[id]); ColorChat(id, "!x03[Depozit]!x04 Ai!x03 %d!x04 Credite.", PlayerCredits[id]); return PLUGIN_HANDLED; } public Give_Credits(id, level, cid) { if(!cmd_access(id, level, cid, 2)) { return PLUGIN_HANDLED; } new arg[23], gplayers[32], num, i, players, name[32]; get_user_name(id, name, 31); read_argv(1, arg, 23); new give_credits[5]; read_argv(2, give_credits, charsmax(give_credits)); new Credits = str_to_num(give_credits); if(equali(arg, "@T")) { get_players(gplayers, num, "e", "TERRORIST"); for(i = 0; i < num; i++) { players = gplayers[i]; if(!is_user_connected(players)) continue; set_user_credits(players, get_user_credits(players) + Credits); } switch(get_cvar_num("amx_show_activity")) { case 1: ColorChat(0, "!x03ADMIN!x04 give!x03 %i Credits!x04 to all!x03 Ts.", Credits); case 2: ColorChat(0, "!x03%s!x04 give!x03 %i Credits!x04 to all!x03 Ts.", name, Credits); } } else if(equali(arg, "@CT")) { get_players(gplayers, num, "e", "CT"); for(i = 0; i < num; i++) { players = gplayers[i]; if(!is_user_connected(players)) continue; set_user_credits(players, get_user_credits(players) + Credits); } switch(get_cvar_num("amx_show_activity")) { case 1: ColorChat(0, "!x03ADMIN!x04 give!x03 %i Credits!x04 to all!x03 CTs.", Credits); case 2: ColorChat(0, "!x03%s!x04 give!x03 %i Credits!x04 to all!x03 CTs.", name, Credits); } } if(equali(arg, "@All")) { get_players(gplayers, num, "a"); for(i = 0; i < num; i++) { players = gplayers[i]; if(!is_user_connected(players)) continue; set_user_credits(players, get_user_credits(players) + Credits); } switch(get_cvar_num("amx_show_activity")) { case 1: ColorChat(0, "!x03ADMIN!x04 give!x03 %i Credits!x04 to all!x03 Players.", Credits); case 2: ColorChat(0, "!x03%s!x04 give!x03 %i Credits!x04 to all!x03 Players.", name, Credits); } } new player = cmd_target(id, arg, 11); if(!player) { return PLUGIN_HANDLED; } set_user_credits(player, get_user_credits(player) + Credits); switch(get_cvar_num("amx_show_activity")) { case 1: ColorChat(player, "!x03ADMIN!x04 give your!x03 %i Credits.", Credits); case 2: ColorChat(player, "!x03%s!x04 give your!x03 %i Credits.", name, Credits); } return PLUGIN_HANDLED; } public Reset_Credits(id, level, cid) { if(!cmd_access(id, level, cid, 2)) { return PLUGIN_HANDLED; } new arg[23], gplayers[32], num, i, players, name[32]; get_user_name(id, name, 31); read_argv(1, arg, 23); if(equali(arg, "@T")) { get_players(gplayers, num, "e", "TERRORIST"); for(i = 0; i < num; i++) { players = gplayers[i]; if(!is_user_connected(players)) continue; set_user_credits(players, 0); } switch(get_cvar_num("amx_show_activity")) { case 1: ColorChat(0, "!x03ADMIN!x04 reset!x03 Credits!x04 to all!x03 Ts."); case 2: ColorChat(0, "!x03%s!x04 reset!x03 Credits!x04 to all!x03 Ts.", name); } } else if(equali(arg, "@CT")) { get_players(gplayers, num, "e", "CT"); for(i = 0; i < num; i++) { players = gplayers[i]; if(!is_user_connected(players)) continue; set_user_credits(players, 0); } switch(get_cvar_num("amx_show_activity")) { case 1: ColorChat(0, "!x03ADMIN!x04 reset!x03 %i Credits!x04 to all!x03 CTs."); case 2: ColorChat(0, "!x03%s!x04 reset!x03 %i Credits!x04 to all!x03 CTs.", name); } } if(equali(arg, "@All")) { get_players(gplayers, num, "a"); for(i = 0; i < num; i++) { players = gplayers[i]; if(!is_user_connected(players)) continue; set_user_credits(players, 0); } switch(get_cvar_num("amx_show_activity")) { case 1: ColorChat(0, "!x03ADMIN!x04 reset!x03 Credits!x04 to all!x03 Players."); case 2: ColorChat(0, "!x03%s!x04 resetx03 Credits!x04 to all!x03 Players.", name); } } new player = cmd_target(id, arg, 11); if(!player) { return PLUGIN_HANDLED; } set_user_credits(player, 0); switch(get_cvar_num("amx_show_activity")) { case 1: ColorChat(player, "!x03ADMIN!x04 reset your!x03 Credits."); case 2: ColorChat(player, "!x03%s!x04 reset your!x03 Credits.", name); } return PLUGIN_HANDLED; } //------| Save Credits |------// public SaveCredits(id) { new Name[32]; get_user_name(id, Name, 31); static Data[1024] formatex(Data, sizeof(Data) - 1, "^"%i^"", PlayerCredits[id]) new Save[512] format(Save, 511, "^"%s^" %s", Name, Data) new Line[128], Linie, IsPlayer = false, Arg1[32] new FileOpen = fopen(File, "rt") while(!feof(FileOpen)) { fgets(FileOpen, Line, 127) trim(Line) parse(Line, Arg1, 31) if (equali(Arg1, Name)) { write_file(File, Save, Linie) IsPlayer = true break } Linie++ } fclose(FileOpen) if (!IsPlayer) { write_file(File, Save, -1) } } //------| Loading Credits |------// public LoadCredits(id) { new Name[32]; get_user_name(id, Name, 31); new Line[128], IsPlayer = false, Arg1[32], Arg2[32]; new FileOpen = fopen(File, "rt") while(!feof(FileOpen)) { fgets(FileOpen, Line, 127) trim(Line) parse(Line, Arg1, 31, Arg2, 31) if (equali(Arg1, Name)) { PlayerCredits[id] = str_to_num(Arg2) IsPlayer = true break } } fclose(FileOpen) if (!IsPlayer) { PlayerCredits[id] = 1 } } 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[i])) { message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players[i]); write_byte(players[i]); write_string(msg); message_end(); } } } }
Bonux Bos fara erori + credite.
- Bonus Box care da credite Hp si he-uri. | Afiseaza codul
#include <amxmodx> #include <amxmisc> #include <fakemeta> #include <fakemeta_util> #include <hamsandwich> #include <cstrike> #include <engine> #include <cdt> #define PLUGIN "Bonus Box" #define VERSION "1.0" #define AUTHOR "ONEMDX" new const item_class_name[] = "dm_item" new g_models[][] = {"models/cadouct_galben.mdl", "models/cadout_galben.mdl"} public plugin_precache() { for (new i = 0; i < sizeof g_models; i++) precache_model(g_models[i]) } public plugin_init() { register_plugin(PLUGIN, VERSION, AUTHOR) register_forward(FM_Touch, "fwd_Touch") register_event("HLTV", "round_start", "a", "1=0", "2=0") RegisterHam(Ham_Killed, "player", "fw_PlayerKilled") } public fwd_Touch(toucher, touched) { if (!is_user_alive(toucher) || !pev_valid(touched)) return FMRES_IGNORED new classname[32] pev(touched, pev_classname, classname, 31) if (!equal(classname, item_class_name)) return FMRES_IGNORED give_item(toucher) set_pev(touched, pev_effects, EF_NODRAW) set_pev(touched, pev_solid, SOLID_NOT) return FMRES_IGNORED } public fw_PlayerKilled(victim, attacker, shouldgib) { if (!is_user_connected(attacker) || !is_user_connected(victim) || attacker == victim || !attacker) return HAM_IGNORED // Modificat : am scos sansele ca am vazut ca toti vreti la fiecare kill new random = random_num(0,2 ) if (random == 0 || random == 1 || random == 2) { new origin[3] get_user_origin(victim, origin, 0) addItem(origin) } return HAM_IGNORED } public removeEntity(ent) { if (pev_valid(ent)) engfunc(EngFunc_RemoveEntity, ent) } public addItem(origin[3]) { new ent = fm_create_entity("info_target") set_pev(ent, pev_classname, item_class_name) engfunc(EngFunc_SetModel,ent, g_models[random_num(0, sizeof g_models - 1)]) set_pev(ent,pev_mins,Float:{-10.0,-10.0,0.0}) set_pev(ent,pev_maxs,Float:{10.0,10.0,25.0}) set_pev(ent,pev_size,Float:{-10.0,-10.0,0.0,10.0,10.0,25.0}) engfunc(EngFunc_SetSize,ent,Float:{-10.0,-10.0,0.0},Float:{10.0,10.0,25.0}) set_pev(ent,pev_solid,SOLID_BBOX) set_pev(ent,pev_movetype,MOVETYPE_TOSS) new Float:fOrigin[3] IVecFVec(origin, fOrigin) set_pev(ent, pev_origin, fOrigin) set_pev(ent,pev_renderfx,kRenderFxGlowShell) // Rendere colorate , estetic arata mai bine cu mai multe culori switch(random_num(1,6)) { case 1: set_pev(ent,pev_rendercolor,Float:{0.0,0.0,255.0}) case 2: set_pev(ent,pev_rendercolor,Float:{0.0,255.0,0.0}) case 3: set_pev(ent,pev_rendercolor,Float:{255.0,0.0,0.0}) case 4: set_pev(ent,pev_rendercolor,Float:{255.0,255.0,255.0}) case 5: set_pev(ent,pev_rendercolor,Float:{0.0,255.0,255.0}) case 6: set_pev(ent,pev_rendercolor,Float:{255.0,255.0,0.0}) } } public give_item(id) { switch (random_num(0,7)){ case 0:{ new HP; HP = 100; fm_set_user_health(id, get_user_health(id) + HP); ChatColor(id,"!g* [!teamBOX!g] You receive !team + %d Health ",HP); } case 1:{ fm_give_item(id,"weapon_hegrenade") ChatColor(id,"!g* [!teamBOX!g] You receive !team + 1 HE "); } case 2:{ set_user_credits(id, get_user_credits(id) + 5) ChatColor(id,"!g* [!teamBOX!g] You receive !team + 5 CREDITE"); } case 3:{ fm_give_item(id, "weapon_smokegrenade") ChatColor(id,"!g* [!teamBOX!g] You receive !team + 1 SMOKE "); } case 4:{ set_user_credits(id, get_user_credits(id) + 5) ChatColor(id,"!g* [!teamBOX!g] You receive !team + 5 CREDITE"); } case 5:{ set_user_credits(id, get_user_credits(id) + 10) ChatColor(id,"!g* [!teamBOX!g] You receive !team + 10 CREDITE"); } case 6:{ set_user_credits(id, get_user_credits(id) + 5) ChatColor(id,"!g* [!teamBOX!g] You receive !team + 5 CREDITE"); } case 7:{ set_user_credits(id, get_user_credits(id) + 10) ChatColor(id,"!g* [!teamBOX!g] You receive !team + 10 CREDITE"); } } } public round_start() { new ent = FM_NULLENT static string_class[] = "classname" while ((ent = engfunc(EngFunc_FindEntityByString, ent, string_class, item_class_name))) set_pev(ent, pev_flags, FL_KILLME) } 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") // Green Color replace_all(msg, 190, "!y", "^1") // Default Color replace_all(msg, 190, "!team", "^3") // Team Color replace_all(msg, 190, "!team2", "^0") // Team2 Color if (id) players[0] = id; else get_players(players, count, "ch") { for (new i = 0; i < count; i++) { if (is_user_connected(players[i])) { message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players[i]) write_byte(players[i]); write_string(msg); message_end(); } } } }
Cam astea ar fi, daca mai doriti ceva ce era pe server si am omis, imi dati PM sau ziceti aici. multi dintre voi le voiati, le-am platit ca sa le fac publice..
Imi cer scuze fata de cei ce au muncit sa ma ajute. Dar sv-u l-am inchis. chit ca era 32/32 zi de zi nu merita sa-l tin ON.
P.S: Imi cer scuze de reclama din titlu dar multi stiu sv si doresc pluginurile, si asa sv-u este OFF.
http://www.girlshare.ro/32669254.2 download crossbow si noile arme, restu resurselor le luati de la shopul lui hades.