Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <amxmodx>
- #include <amxmisc>
- #include <engine>
- #include <vault>
- #include <hamsandwich>
- #include <fvault>
- #pragma tabsize 0
- #define is_valid_player(%1) (1 <= %1 <= 32)
- new knife_model[33];
- new vknife_model[33];
- new const g_VAULTNAME[] = "UnqE# Knifes";
- new const VERSION[] = "1.2"
- new const AUTHOR[] = "Aesco"
- new iLevel[33];
- new iXp[33];
- new knife_on;
- new MaxLevel;
- new StartedLevel;
- new cvar_KillXp;
- new cvar_HsXp;
- new cvar_KnifeXp;
- new Forward_spawn;
- new Forward_levelup;
- new ForwardReturn;
- new const g_VKnifeNames[][32] =
- {
- "VIP Duals",
- "VIP Butterfly",
- "VIP Theif",
- "VIP UnqE#",
- "VIP Katanas",
- "VIP Fish"
- };
- new const g_KnifeNames[][32] =
- {
- "Obican Knife",
- "Alien Knife",
- "Dagger",
- "Dark Knife",
- "Transparent Knife",
- "Katara",
- "Special",
- "Ice Blade",
- "Gold Axe",
- "Katana",
- "Daedric",
- "Starwars Knife",
- "Wolverine Claws",
- "Blaze Axe",
- "Artic Daedric",
- "Tracker Knife",
- "Flip Knife",
- "Golden Sickle",
- "Saber",
- "Guitar",
- "Black & White",
- "Candy",
- "Tactical Knife",
- "Snake Knife",
- "Skulls Knife",
- "Combat Knife",
- "Combat Axe",
- "Xmas Hammer",
- "Xmas Axe",
- "Xmas Combat",
- "Xmas Snowman",
- "Xmas Katanas"
- };
- new const g_KnifevVIP[][256]=
- {
- "models/KnifesVIP/v_dual.mdl",
- "models/KnifesVIP/v_but.mdl",
- "models/KnifesVIP/v_krv.mdl",
- "models/KnifesVIP/v_emac.mdl",
- "models/KnifesVIP/v_katana.mdl",
- "models/KnifesVIP/v_fish.mdl"
- }
- new const g_KnifevModels[][256] =
- {
- "models/v_knife.mdl",
- "models/Knifes/v_knife_alien.mdl",
- "models/Knifes/v_knife_ellium.mdl",
- "models/Knifes/v_knife_dark.mdl",
- "models/Knifes/v_knife_transparent.mdl",
- "models/Knifes/v_knife_genuine.mdl",
- "models/Knifes/v_knife_hunt.mdl",
- "models/Knifes/v_knife_shadow.mdl",
- "models/Knifes/v_knife_slaughterer.mdl",
- "models/Knifes/v_knife_katana.mdl",
- "models/Knifes/v_daedric.mdl",
- "models/Knifes/v_knife_lightsaber.mdl",
- "models/Knifes/v_knife_wolverine.mdl",
- "models/Knifes/v_knife_proton.mdl",
- "models/Knifes/v_dedric.mdl",
- "models/Knifes/v_tracker.mdl",
- "models/Knifes/v_csgo.mdl",
- "models/Knifes/v_sickle.mdl",
- "models/Knifes/v_saber.mdl",
- "models/Knifes/v_guitar.mdl",
- "models/Knifes/v_bnw.mdl",
- "models/Knifes/v_candy.mdl",
- "models/Knifes/v_tactical.mdl",
- "models/Knifes/v_snake.mdl",
- "models/Knifes/v_skull.mdl",
- "models/Knifes/v_combat.mdl",
- "models/Knifes/v_hammer.mdl",
- "models/Knifes/v_xhammer.mdl",
- "models/Knifes/v_xaxe.mdl",
- "models/Knifes/v_xcombat.mdl",
- "models/Knifes/v_xsnow.mdl",
- "models/Knifes/v_xkatanas.mdl"
- }
- native register_maxlevels( maxlevel = 200, started_xp_level = 100 );
- native get_user_level( index );
- native get_user_xp( index );
- public plugin_init() {
- register_plugin(g_VAULTNAME, VERSION, AUTHOR);
- register_cvar("knife_skins", VERSION, FCVAR_SERVER); // Find Servers on Game-Monitor
- set_cvar_string("knife_skins", VERSION); // Find Servers on Game-Monitor
- // register max levels 13 is the top level, 100 is the started level xp.
- register_maxlevels( 200, 100 );
- //Admin commands
- register_concmd("give_xp" ,"givexp",ADMIN_CFG,"Usage <nick> <Add xp to a player>")
- register_concmd("take_xp", "takexp",ADMIN_CFG,"Usage <nick> <Remove xp from a player>")
- register_concmd("set_level", "givelevel",ADMIN_CFG,"Usage <nick> <LEVEL>")
- //Clcmd's
- knife_on = register_cvar( "knife_skins", "1" );
- register_clcmd("say","HandleSay");
- register_clcmd("say_team","HandleSay")
- register_clcmd("say /knife", "KnifeSkinsMenu");
- register_clcmd("say /knifes", "KnifeSkinsMenu");
- register_clcmd("say /knive", "KnifeSkinsMenu");
- register_clcmd("say /knives", "KnifeSkinsMenu");
- register_clcmd("say /level", "PlayerLevelsMenu");
- register_clcmd("say /levels", "PlayerLevelsMenu");
- register_clcmd("say /vipmenu", "VIPMenu");
- //Event's
- register_event("CurWeapon","CurWeapon","be","1=1");
- register_event( "DeathMsg", "EventDeathMsg", "a" );
- //Cvar's
- cvar_KillXp = register_cvar( "kill_xp", "5" );
- cvar_HsXp = register_cvar( "hs_xp", "2" );
- cvar_KnifeXp = register_cvar( "knife_xp", "3" );
- //Ham's
- RegisterHam( Ham_Spawn, "player", "FwdPlayerSpawn", 1 );
- RegisterHam(Ham_TakeDamage, "player", "fw_TakeDamage")
- //Forward's
- Forward_levelup = CreateMultiForward( "forward_client_levelup", ET_IGNORE, FP_CELL, FP_CELL, FP_CELL );
- Forward_spawn = CreateMultiForward( "forward_client_spawn", ET_IGNORE, FP_CELL , FP_CELL, FP_CELL );
- //set_task(15.0, "Knifemessage", 0, _, _, "b")
- //set_task(35.0, "Levelmessage", 0, _, _, "b")
- }
- public plugin_precache() {
- precache_model("models/v_knife.mdl")
- precache_model("models/Knifes/v_knife_alien.mdl")
- precache_model("models/Knifes/v_knife_ellium.mdl")
- precache_model("models/Knifes/v_knife_dark.mdl")
- precache_model("models/Knifes/v_knife_transparent.mdl")
- precache_model("models/Knifes/v_knife_genuine.mdl")
- precache_model("models/Knifes/v_knife_hunt.mdl")
- precache_model("models/Knifes/v_knife_shadow.mdl")
- precache_model("models/Knifes/v_knife_slaughterer.mdl")
- precache_model("models/Knifes/v_knife_katana.mdl")
- precache_model("models/Knifes/v_daedric.mdl")
- precache_model("models/Knifes/v_knife_lightsaber.mdl")
- precache_model("models/Knifes/v_knife_wolverine.mdl")
- precache_model("models/Knifes/v_knife_proton.mdl")
- precache_model("models/Knifes/v_dedric.mdl")
- precache_model("models/Knifes/v_tracker.mdl")
- precache_model("models/Knifes/v_csgo.mdl")
- precache_model("models/Knifes/v_sickle.mdl")
- precache_model("models/Knifes/v_saber.mdl")
- precache_model("models/Knifes/v_guitar.mdl")
- precache_model("models/Knifes/v_bnw.mdl")
- precache_model("models/Knifes/v_candy.mdl")
- precache_model("models/Knifes/v_tactical.mdl")
- precache_model("models/Knifes/v_snake.mdl")
- precache_model("models/Knifes/v_skull.mdl")
- precache_model("models/Knifes/v_combat.mdl")
- precache_model("models/Knifes/v_hammer.mdl")
- precache_model("models/KnifesVIP/v_dual.mdl")
- precache_model("models/KnifesVIP/v_krv.mdl")
- precache_model("models/KnifesVIP/v_katana.mdl")
- precache_model("models/KnifesVIP/v_but.mdl")
- precache_model("models/KnifesVIP/v_emac.mdl")
- precache_model("models/KnifesVIP/v_fish.mdl")
- precache_model("models/Knifes/v_xhammer.mdl")
- precache_model("models/Knifes/v_xcombat.mdl")
- precache_model("models/Knifes/v_xkatanas.mdl")
- precache_model("models/Knifes/v_xsnow.mdl")
- precache_model("models/Knifes/v_xaxe.mdl")
- }
- public plugin_natives( )
- {
- //Native's
- register_library( "Knife-Skins" );
- register_native( "register_maxlevels", "_register_maxlevels" );
- register_native( "get_user_level", "_get_user_level" );
- register_native( "set_user_level", "_set_user_level" );
- register_native( "get_user_xp", "_get_user_xp" );
- register_native( "set_user_xp", "_set_user_xp" );
- }
- public _register_maxlevels( plugin, params )
- {
- if( MaxLevel != 0 && StartedLevel != 0 )
- {
- return;
- }
- else
- {
- MaxLevel = get_param( 1 );
- StartedLevel = get_param( 2 );
- }
- }
- public _get_user_level( plugin, params )
- {
- return iLevel[ get_param( 1 ) ];
- }
- public _set_user_level( plugin, params )
- {
- iLevel[ get_param( 1 ) ] = max( get_param( 2 ), MaxLevel );
- FlsahLevelUp( get_param( 1 ) );
- SaveData( get_param( 1 ) );
- LoadData( get_param( 1 ) );
- VLoadData( get_param( 1 ) );
- }
- public _get_user_xp( plugin, params )
- {
- return iXp[ get_param( 1 ) ];
- }
- public _set_user_xp( plugin, params )
- {
- iXp[ get_param( 1 ) ] = get_param( 2 );
- CheckLevel( get_param( 1 ) );
- SaveData( get_param( 1 ) );
- LoadData( get_param( 1 ) );
- VLoadData( get_param( 1 ) );
- }
- public CheckLevel( id )
- {
- if( iLevel[id] == MaxLevel )
- {
- return;
- }
- else
- {
- new level = iLevel[id] > 0 ? iLevel[id] : 1;
- new xp = level * StartedLevel;
- if( iLevel[id] > 0 )
- {
- xp += ( xp * 4 / 2 );
- }
- while( iXp[id] >= xp )
- {
- iLevel[id]++;
- ColorChat(id,"^4Cestitamo!^1 dobili ste unapredjenje! sada ste^4 LEVEL^1: ^3%i^1.", iLevel[id]);
- ColorChat(0,"^3%s^1 je sada ^4 LEVEL^3 %i^1!",get_player_name(id), iLevel[id]);
- FlsahLevelUp(id);
- ExecuteForward( Forward_levelup, ForwardReturn, id, iLevel[id], iXp[id] );
- SaveData( id );
- CheckLevel( id );
- break;
- }
- }
- }
- public hudmessage( client ){
- set_hudmessage(0, 255, 255, -1.0, 0.87, 0, 6.0, 12.0)
- show_hudmessage(client, "Welcome to UnqE# Knife!^n--------------------^nYour Level:%d | Your XP:%d | Your Knife:%s", iLevel, iXp, g_KnifeNames )
- }
- public FlsahLevelUp( id )
- {
- message_begin( MSG_ONE, get_user_msgid( "ScreenFade" ), { 0, 0, 0}, id );
- write_short( 1 << 10 );
- write_short( 1 << 10 );
- write_short( 0 );
- write_byte( 0 );
- write_byte( 255 );
- write_byte( 215 );
- write_byte( 100 );
- message_end( );
- }
- public HandleSay(id){
- if (get_pcvar_num(knife_on) == 0)
- {
- ColorChat(id, "Mod je ugasen.");
- return PLUGIN_HANDLED;
- }
- new iMsg[200], iArgs[4][60];
- new level = iLevel[id] > 0 ? iLevel[id] : 1;
- new xp = level * StartedLevel;
- if( iLevel[id] > 0 )
- {
- xp += ( xp * 4 / 2 );
- }
- read_argv(1,iMsg ,sizeof iMsg - 1);
- parse(iMsg,iArgs[0],charsmax(iArgs[]),iArgs[1],charsmax(iArgs[]),iArgs[2],charsmax(iArgs[]),iArgs[3],charsmax(iArgs[]));
- if (equali(iArgs[0],"/level") || equali(iArgs[0],"/lvl") || equali(iArgs[0],"/xp"))
- {
- new player = cmd_target(id,iArgs[1],CMDTARGET_NO_BOTS);
- if (!player)
- {
- ColorChat( id, "^4LEVEL^1:^3 %i^4 |^1XP^4:^3 %i^1/^3%i^1.", iLevel[id], iXp[id], xp );
- }
- }
- return 0;
- }
- public EventDeathMsg(id)
- {
- if (get_pcvar_num(knife_on) == 0)
- return PLUGIN_HANDLED;
- new killer = read_data( 1 );
- new victim = read_data( 2 );
- if( killer == victim || ! is_user_connected( killer ) || ! is_user_connected( victim ) )
- {
- return PLUGIN_HANDLED;
- //return;
- }
- new XpAmount = get_pcvar_num( cvar_KillXp );
- if( read_data( 3 ) )
- {
- XpAmount += get_pcvar_num( cvar_HsXp );
- }
- static sWeapon[ 26 ];
- read_data( 4, sWeapon, sizeof( sWeapon ) - 1 );
- if( equal( sWeapon, "knife" ) )
- {
- XpAmount += get_pcvar_num( cvar_KnifeXp );
- }
- iXp[ killer ] += XpAmount;
- CheckLevel( killer );
- SaveData( killer );
- ColorChat( killer, "Dobio si^3 %i^1 XP.", XpAmount );
- return PLUGIN_HANDLED;
- }
- public FwdPlayerSpawn( id )
- {
- ExecuteForward( Forward_spawn, ForwardReturn, id, iLevel[id], iXp[id] );
- }
- public fw_TakeDamage(victim, inflictor, attacker, Float:damage)
- {
- if( get_pcvar_num( knife_on ) == 0 )
- return HAM_IGNORED;
- if( is_valid_player( attacker ) && get_user_weapon(attacker) == CSW_KNIFE )
- //{
- //SetHamParamFloat(4, damage + knife_model[attacker]);
- //
- //return HAM_HANDLED;
- //}
- return HAM_IGNORED;
- }
- public KnifeSkinsMenu(id) {
- if (get_pcvar_num(knife_on) == 0)
- {
- ColorChat(id, "The mod has been disabale.");
- return PLUGIN_HANDLED;
- }
- new szItem[256], szAlien[50], szDagger[50], szDark[50], szTransparent[50],
- szKatara[50], szSpecial[50], szIce[50], szGold[50], szKatana[50],
- szDaedric[50], szStarwars[50], szWolverine[50], szBlaze[50], szArtic[50],
- szTracker[50], szFlip[50], szGolden[50], szSaber[50], szGuitar[50],
- szBlack[50], szCandy[50], szTactical[50], szSnake[50], szSkulls[50], szCombat[50], szHammer[50],
- szXhammer[50], szXaxe[50], szXcombat[50], szXsnowman[50], szXkatanas[50], szVduals[50], szVbutterfly[50], szVtheif[50], szVeclipse[50], szVkatanas[50],
- szVfish[50];
- new level = iLevel[id] > 0 ? iLevel[id] : 1;
- new xp = level * StartedLevel;
- if( iLevel[id] > 0 )
- {
- xp += ( xp * 4 / 2 );
- }
- formatex(szItem, charsmax(szItem), "\w[ \r%s \w] \yKnives Menu \rv%s^n\yTvoj Level: \r%d \w- \yTvoj XP: \r%d\w/\r%d\w.^n\yPage:\r", g_VAULTNAME, VERSION,iLevel[id],iXp[id], xp);
- formatex(szAlien, charsmax(szAlien),"%s", iLevel[id] >= 1 ? "\wAlien Knife [\yUNLOCKED\w]" : "\dAlien Knife [\rLEVEL 1 \d]");
- formatex(szDagger, charsmax(szDagger),"%s", iLevel[id] >= 5 ? "\wDagger [\yUNLOCKED\w]" : "\dDagger [\rLEVEL 5 \d]");
- formatex(szDark, charsmax(szDark),"%s", iLevel[id] >= 10 ? "\wDark Knife [\yUNLOCKED\w]" : "\dDark Knife [\rLEVEL 10 \d]");
- formatex(szTransparent, charsmax(szTransparent),"%s", iLevel[id] >= 12 ? "\wTransparent Knife [\yUNLOCKED\w]" : "\dTransparent Knife [\rLEVEL 12 \d]");
- formatex(szKatara, charsmax(szKatara),"%s", iLevel[id] >= 15 ? "\wKatara [\yUNLOCKED\w]" : "\dKatara [\rLEVEL 15 \d]");
- formatex(szSpecial, charsmax(szSpecial),"%s", iLevel[id] >= 20 ? "\wSpecial Knife [\yUNLOCKED\w]" : "\dSpecial Knife [\rLEVEL 20 \d]");
- formatex(szIce, charsmax(szIce),"%s", iLevel[id] >= 23 ? "\wIce Blade [\yUNLOCKED\w]" : "\dIce Blade [\rLEVEL 23 \d]");
- formatex(szGold, charsmax(szGold),"%s", iLevel[id] >= 27 ? "\wGold Axe [\yUNLOCKED\w]" : "\dGold Axe [\rLEVEL 27 \d]");
- formatex(szKatana, charsmax(szKatana),"%s", iLevel[id] >= 32 ? "\wKatana [\yUNLOCKED\w]" : "\dKatana [\rLEVEL 32 \d]");
- formatex(szDaedric, charsmax(szDaedric),"%s", iLevel[id] >= 40 ? "\wDaedric [\yUNLOCKED\w]" : "\dDaedric [\rLEVEL 40 \d]");
- formatex(szStarwars, charsmax(szStarwars),"%s", iLevel[id] >= 43 ? "\wStarwars Knife [\yUNLOCKED\w]" : "\dStarwars Knife [\rLEVEL 43 \d]");
- formatex(szWolverine, charsmax(szWolverine),"%s", iLevel[id] >= 45 ? "\wWolverine's Claws [\yUNLOCKED\w]" : "\dWolverine's Claws [\rLEVEL 45 \d]");
- formatex(szBlaze, charsmax(szBlaze),"%s", iLevel[id] >= 50 ? "\wBlaze Axe [\yUNLOCKED\w]" : "\dBlaze Axe [\rLEVEL 50 \d]");
- formatex(szArtic, charsmax(szArtic),"%s", iLevel[id] >= 55 ? "\wArtic Daedric [\yUNLOCKED\w]" : "\dArtic Daedric [\rLEVEL 55 \d]");
- formatex(szTracker, charsmax(szTracker),"%s", iLevel[id] >= 60 ? "\wTracker Knife [\yUNLOCKED\w]" : "\dTracker Knife [\rLEVEL 60 \d]");
- formatex(szFlip, charsmax(szFlip),"%s", iLevel[id] >= 65 ? "\wFlip Knife [\yUNLOCKED\w]" : "\dFlip Knife [\rLEVEL 65 \d]");
- formatex(szGolden, charsmax(szGolden),"%s", iLevel[id] >= 70 ? "\wGolden Sickle [\yUNLOCKED\w]" : "\dGolden Sickle [\rLEVEL 70 \d]");
- formatex(szSaber, charsmax(szSaber),"%s", iLevel[id] >= 73 ? "\wSaber [\yUNLOCKED\w]" : "\dSaber [\rLEVEL 73 \d]");
- formatex(szGuitar, charsmax(szGuitar),"%s", iLevel[id] >= 80 ? "\wGuitar [\yUNLOCKED\w]" : "\dGuitar [\rLEVEL 80 \d]");
- formatex(szBlack, charsmax(szBlack),"%s", iLevel[id] >= 85 ? "\wBlack & White [\yUNLOCKED\w]" : "\dBlack & White [\rLEVEL 85 \d]");
- formatex(szCandy, charsmax(szCandy),"%s", iLevel[id] >= 90 ? "\wCandy [\yUNLOCKED\w]" : "\dCandy [\rLEVEL 90 \d]");
- formatex(szTactical, charsmax(szTactical),"%s", iLevel[id] > 96 ? "\wTactical Knife [\yUNLOCKED\w]" : "\dTactical Knife[\rLEVEL 96 \d]");
- formatex(szSnake, charsmax(szSnake),"%s", iLevel[id] >= 103 ? "\wSnake Knife [\yUNLOCKED\w]" : "\dSnake Knife [\rLEVEL 103 \d]");
- formatex(szSkulls, charsmax(szSkulls),"%s", iLevel[id] >= 110 ? "\wSkulls Knife [\yUNLOCKED\w]" : "\dSkulls Knife [\rLEVEL 110 \d]");
- formatex(szCombat, charsmax(szCombat),"%s", iLevel[id] >= 115 ? "\wCombat Knife [\yUNLOCKED\w]" : "\dCombat Knife [\rLEVEL 115 \d]");
- formatex(szHammer, charsmax(szHammer),"%s", iLevel[id] >= 125 ? "\wCombat Axe [\yUNLOCKED\w]" : "\dHammer [\rLEVEL 125 \d]");
- formatex(szXhammer, charsmax(szXhammer),"%s", iLevel[id] >= 150 ? "\wXmas Hammer [\yWinter Edition\w]" : "\dXmas Hammer [\rLEVEL 150\d]");
- formatex(szXaxe, charsmax(szXaxe),"%s", iLevel[id] >= 170 ? "\wXmas Axe [\yWinter Edition\w]" : "\dXmas Axe [\rLEVEL 170\d]");
- formatex(szXcombat, charsmax(szXcombat),"%s", iLevel[id] >= 190 ? "\wXmas Combat [\yWinter Edition\w]" : "\dXmas Combat [\rLEVEL 190\d]");
- formatex(szXsnowman, charsmax(szXsnowman),"%s", iLevel[id] >= 195 ? "\wXmas Snowman [\yWinter Edition\w]" : "\dXmas Snowman [\rLEVEL 195\d]");
- formatex(szXkatanas, charsmax(szXkatanas),"%s", iLevel[id] >= 200 ? "\wXmas Katanas [\yWinter Edition\w]" : "\dXmas Katanas [\rLEVEL 200\d]");
- new menu = menu_create( szItem, "KnifeSkinsMenu_Handler" );
- menu_additem(menu, "\wObican Knife [\yUNLOCKED\w]", "", 0 );
- menu_additem(menu, szAlien, "", iLevel[id] >= 1 ? 0 : 1);
- menu_additem(menu, szDagger, "", iLevel[id] >= 5 ? 0 : 1);
- menu_additem(menu, szDark, "", iLevel[id] >= 10 ? 0 : 1);
- menu_additem(menu, szTransparent, "", iLevel[id] >= 12 ? 0 : 1);
- menu_additem(menu, szKatara, "", iLevel[id] >= 15 ? 0 : 1);
- menu_additem(menu, szSpecial, "", iLevel[id] >= 20 ? 0 : 1);
- menu_additem(menu, szIce, "", iLevel[id] >= 23 ? 0 : 1);
- menu_additem(menu, szGold, "", iLevel[id] >= 27 ? 0 : 1);
- menu_additem(menu, szKatana, "", iLevel[id] >= 27 ? 0 : 1);
- menu_additem(menu, szDaedric, "", iLevel[id] >= 40 ? 0 : 1);
- menu_additem(menu, szStarwars, "", iLevel[id] >= 43 ? 0 : 1);
- menu_additem(menu, szWolverine, "", iLevel[id] >= 45 ? 0 : 1);
- menu_additem(menu, szBlaze, "", iLevel[id] >= 50 ? 0 : 1);
- menu_additem(menu, szArtic, "", iLevel[id] >= 55 ? 0 : 1);
- menu_additem(menu, szTracker, "", iLevel[id] >= 60 ? 0 : 1);
- menu_additem(menu, szFlip, "", iLevel[id] >= 65 ? 0 : 1);
- menu_additem(menu, szGolden, "", iLevel[id] >= 70 ? 0 : 1);
- menu_additem(menu, szSaber, "", iLevel[id] >= 73 ? 0 : 1);
- menu_additem(menu, szGuitar, "", iLevel[id] >= 80 ? 0 : 1);
- menu_additem(menu, szBlack, "", iLevel[id] >= 85 ? 0 : 1);
- menu_additem(menu, szCandy, "", iLevel[id] >= 90 ? 0 : 1);
- menu_additem(menu, szTactical, "", iLevel[id] >= 96 ? 0 : 1);
- menu_additem(menu, szSnake, "", iLevel[id] >= 103 ? 0 : 1);
- menu_additem(menu, szSkulls, "", iLevel[id] >= 110 ? 0 : 1);
- menu_additem(menu, szCombat, "", iLevel[id] >= 115 ? 0 : 1);
- menu_additem(menu, szHammer, "", iLevel[id] >= 125 ? 0 : 1);
- menu_additem(menu, szXhammer, "", iLevel[id] >= 150 ? 0 : 1);
- menu_additem(menu, szXaxe, "", iLevel[id] >= 170 ? 0 : 1);
- menu_additem(menu, szXcombat, "", iLevel[id] >= 190 ? 0 : 1);
- menu_additem(menu, szXsnowman, "", iLevel[id] >= 195 ? 0 : 1);
- menu_additem(menu, szXkatanas, "", iLevel[id] >= 200 ? 0 : 1);
- menu_setprop(menu, MPROP_EXIT, MEXIT_ALL );
- menu_display(id, menu, 0 );
- return PLUGIN_HANDLED;
- }
- public KnifeSkinsMenu_Handler(id, menu, item)
- {
- if(item == MENU_EXIT)
- {
- menu_destroy(menu)
- return PLUGIN_HANDLED
- }
- SetKnife(id, item);
- ColorChat(id, "Noz koji si izabrao je: ^4%s^1.", g_KnifeNames[item]);
- SaveData(id);
- return PLUGIN_HANDLED;
- }
- public VIPMenu(id) {
- if( !( get_user_flags(id) & ADMIN_LEVEL_H ) )
- {
- ColorChat(id, "Niste VIP!");
- return PLUGIN_HANDLED;
- }
- new szItem[256], szVduals[50], szVbutterfly[50], szVtheif[50], szVeclipse[50], szVkatanas[50],
- szVfish[50];
- new level = iLevel[id] > 0 ? iLevel[id] : 1;
- new xp = level * StartedLevel;
- if( iLevel[id] > 0 )
- {
- xp += ( xp * 4 / 2 );
- }
- formatex(szItem, charsmax(szItem), "\w[ \r%s \w] \yVIP Knives Menu \rv%s^n\yTvoj Level: \r%d \w- \yTvoj XP: \r%d\w/\r%d\w.^n\yPage:\r", g_VAULTNAME, VERSION,iLevel[id],iXp[id], xp);
- formatex(szVduals, charsmax(szVduals),"%s", iLevel[id] >= 2 ? "\wVIP Duals [\yVIP\w]" : "\dVIP Duals [\rVIP\d]");
- formatex(szVbutterfly, charsmax(szVbutterfly),"%s", iLevel[id] >= 2 ? "\wVIP Butterfly [\yVIP\w]" : "\dVIP Butterfly [\rVIP\d]");
- formatex(szVtheif, charsmax(szVtheif),"%s", iLevel[id] >= 1 ? "\wVIP Theif [\yVIP\w]" : "\dVIP Theif [\rVIP\d]");
- formatex(szVeclipse, charsmax(szVeclipse),"%s", iLevel[id] >= 2 ? "\wVIP UnqE# [\yVIP\w]" : "\dVIP UnqE# [\rVIP\d]");
- formatex(szVkatanas, charsmax(szVkatanas),"%s", iLevel[id] >= 2 ? "\wVIP Katanas [\yVIP\w]" : "\dVIP Katanas [\rVIP\d]");
- formatex(szVfish, charsmax(szVfish),"%s", iLevel[id] >= 2 ? "\wVIP Fish [\yVIP\w]" : "\dVIP Fish [\rVIP\d]");
- new Vmenu = menu_create( szItem, "VIPMenu_Handler" );
- menu_additem(Vmenu, szVduals, "", iLevel[id] >= 2 ? 0 : 1);
- menu_additem(Vmenu, szVbutterfly, "", iLevel[id] >= 2 ? 0 : 1);
- menu_additem(Vmenu, szVtheif, "", iLevel[id] >= 2 ? 0 : 1);
- menu_additem(Vmenu, szVeclipse, "", iLevel[id] >= 2 ? 0 : 1);
- menu_additem(Vmenu, szVkatanas, "", iLevel[id] >= 2 ? 0 : 1);
- menu_additem(Vmenu, szVfish, "", iLevel[id] >= 2 ? 0 : 1);
- menu_setprop(Vmenu, MPROP_EXIT, MEXIT_ALL );
- menu_display(id, Vmenu, 0 );
- return PLUGIN_CONTINUE;
- }
- public VIPMenu_Handler(id, Vmenu, Vitem)
- {
- if(Vitem == MENU_EXIT)
- {
- menu_destroy(Vmenu)
- return PLUGIN_HANDLED
- }
- VSetKnife(id, Vitem);
- ColorChat(id, "VIP Noz koji si izabrao je: ^4%s^1.", g_VKnifeNames[Vitem]);
- VSaveData(id);
- return PLUGIN_HANDLED;
- }
- public VSetKnife(id, Vitem) {
- vknife_model[id] = Vitem
- new Clip, Ammo, Weapon = get_user_weapon(id, Clip, Ammo)
- if ( Weapon != CSW_KNIFE )
- return PLUGIN_HANDLED
- new vModel[56],pModel[56]
- if (get_pcvar_num(knife_on) == 0)
- {
- format(vModel,55,"models/v_knife.mdl")
- return PLUGIN_HANDLED;
- }
- format(vModel,55, g_KnifevVIP[Vitem])
- format(pModel,55,"models/p_knife.mdl")
- entity_set_string(id, EV_SZ_viewmodel, vModel)
- entity_set_string(id, EV_SZ_weaponmodel, pModel)
- return PLUGIN_HANDLED;
- }
- public SetKnife(id, item) {
- knife_model[id] = item
- new Clip, Ammo, Weapon = get_user_weapon(id, Clip, Ammo)
- if ( Weapon != CSW_KNIFE )
- return PLUGIN_HANDLED
- new vModel[56],pModel[56]
- if (get_pcvar_num(knife_on) == 0)
- {
- format(vModel,55,"models/v_knife.mdl")
- return PLUGIN_HANDLED;
- }
- format(vModel,55, g_KnifevModels[item])
- format(pModel,55,"models/p_knife.mdl")
- entity_set_string(id, EV_SZ_viewmodel, vModel)
- entity_set_string(id, EV_SZ_weaponmodel, pModel)
- return PLUGIN_HANDLED;
- }
- public PlayerLevelsMenu(id)
- {
- if (get_pcvar_num(knife_on) == 0)
- {
- ColorChat(id, "Mod je ugasen.");
- return PLUGIN_HANDLED;
- }
- new some[256], menu;
- static players[32],szTemp[10],pnum;
- get_players(players,pnum,"ch");
- formatex(some,255,"\w[ \r%s \w] \yLeveli igraca:\r", g_VAULTNAME);
- menu = menu_create(some,"PlayerLevelsMenu_Handler");
- for (new i; i < pnum; i++)
- {
- new level = iLevel[players[i]] > 0 ? iLevel[players[i]] : 1;
- new xp = level * StartedLevel;
- if( iLevel[players[i]] > 0 )
- {
- xp += ( xp * 4 / 2 );
- }
- formatex(some,256,"%s \y(Level: \r%i\y) \w- \y(XP: \r%i\w/\r%i\y)",get_player_name(players[i]), iLevel[players[i]], iXp[players[i]], xp);
- num_to_str(players[i],szTemp,charsmax(szTemp));
- menu_additem(menu, some, szTemp);
- }
- menu_setprop(menu, MPROP_EXIT, MEXIT_ALL );
- menu_display(id, menu);
- return PLUGIN_HANDLED;
- }
- public PlayerLevelsMenu_Handler(id,menu, item){
- if (item == MENU_EXIT)
- {
- menu_destroy(menu);
- return;
- }
- new data[6] ,szName[64],access,callback;
- menu_item_getinfo(menu, item, access, data, charsmax(data), szName, charsmax(szName), callback);
- new player = str_to_num(data);
- new level = iLevel[player] > 0 ? iLevel[player] : 1;
- new xp = level * StartedLevel;
- if( iLevel[player] > 0 )
- {
- xp += ( xp * 4 / 2 );
- }
- ColorChat(id,"^3%sov ^4LEVEL ^1je: ^3%i ^1sa ^3%i^1/^3%i ^4XP^1.",get_player_name(player), iLevel[player], iXp[player], xp);
- PlayerLevelsMenu(id);
- }
- public CurWeapon(id)
- {
- // Set Knife Model
- SetKnife(id, knife_model[id])
- }
- public givexp(id) {
- if (get_pcvar_num(knife_on) == 0)
- {
- ColorChat(id, "Mod je ugasen.");
- return PLUGIN_HANDLED;
- }
- if( get_user_flags( id ) & ADMIN_CFG ) {
- new PlayerToGive[32], XP[32]
- read_argv(1,PlayerToGive,31)
- read_argv(2,XP, 31)
- new Player = cmd_target(id,PlayerToGive,9)
- if(!Player) {
- return PLUGIN_HANDLED
- }
- new XPtoGive = str_to_num(XP)
- new name[32],owner[32]
- get_user_name(id,owner,31)
- get_user_name(Player,name,31)
- ColorChat(0,"^4ADMIN^3 %s^1 je dao ^4 %s^3 %s^1 XP.", owner,name,XP );
- iXp[Player]+= XPtoGive
- CheckLevel(Player);
- SaveData(id)
- }
- else {
- client_print(id,print_console,"You have no acces to that command")
- return PLUGIN_HANDLED
- }
- return PLUGIN_HANDLED;
- }
- public takexp(id) {
- if (get_pcvar_num(knife_on) == 0)
- {
- ColorChat(id, "Mod je ugasen.");
- return PLUGIN_HANDLED;
- }
- if(get_user_flags(id) & ADMIN_CFG ) {
- new PlayerToTake[32], XP[32]
- read_argv(1,PlayerToTake,31 )
- read_argv(2,XP,31 )
- new Player = cmd_target(id,PlayerToTake,9)
- if(!Player) {
- return PLUGIN_HANDLED
- }
- new XPtoTake = str_to_num(XP)
- new name[32],owner[32]
- get_user_name(id,owner,31)
- get_user_name(Player,name,31)
- ColorChat(0,"^4ADMIN^3 %s^1 je uzeo^4 %s^3 %s^1 XP.", owner,name,XP );
- iXp[ Player ]-=XPtoTake
- CheckLevel(Player);
- SaveData(id)
- }
- else {
- client_print(id,print_console,"You have no acces to that command.")
- return PLUGIN_HANDLED
- }
- return PLUGIN_HANDLED;
- }
- public givelevel(id) {
- if (get_pcvar_num(knife_on) == 0)
- {
- ColorChat(id, "Mod je ugasen.");
- return PLUGIN_HANDLED;
- }
- if( get_user_flags( id ) & ADMIN_CFG ) {
- new PlayerToGive[32], LEVEL[32]
- read_argv(1,PlayerToGive,31)
- read_argv(2,LEVEL, 31)
- new Player = cmd_target(id,PlayerToGive,9)
- if(!Player) {
- return PLUGIN_HANDLED
- }
- new LEVELtoGive = str_to_num(LEVEL)
- new name[32],owner[32]
- get_user_name(id,owner,31)
- get_user_name(Player,name,31)
- ColorChat(0,"^4ADMIN^3 %s^1 je stavio ^4 %s^3 %s^1 Level.", owner,name,LEVEL );
- iLevel[Player]= LEVELtoGive
- CheckLevel(Player);
- SaveData(id)
- }
- else {
- client_print(id,print_console,"You have no acces to that command")
- return PLUGIN_HANDLED
- }
- return PLUGIN_HANDLED;
- }
- public client_disconnect(id) {
- if(task_exists(id)){
- remove_task(id)
- }
- SaveData(id);
- }
- //public Knifemessage(id) {
- //
- // if (get_pcvar_num(knife_on) == 0)
- // return PLUGIN_HANDLED;
- //
- // ColorChat(0, "Type ^3/knife ^1in chat to open the ^4Knife Skins Menu^1.");
- // ColorChat(0, "This server is running ^4%s ^3v%s^1 by ^4%s^1.",g_VAULTNAME, VERSION, AUTHOR)
- // return PLUGIN_HANDLED;
- //}
- //
- //public Levelmessage(id) {
- //
- // if (get_pcvar_num(knife_on) == 0)
- // return PLUGIN_HANDLED;
- //
- // ColorChat(0,"To see other ^4Players Level ^1type ^3/level ^1in chat.");
- // return PLUGIN_HANDLED;
- //}
- //
- public client_putinserver(id) LoadData(id);
- public VSaveData(id){
- new authid[32]
- get_user_authid(id, authid, 31)
- new vaultkey[64]
- new vaultdata[64]
- format(vaultkey, 63, "KNIFEMOD_%s", authid)
- format(vaultdata, 63, "%d", vknife_model[id])
- set_vaultdata(vaultkey, vaultdata)
- new data[ 16 ];
- get_user_authid( id, authid, sizeof( authid ) - 1 );
- formatex( data, sizeof( data ) - 1, "%d %d", iLevel[id], iXp[id] );
- fvault_set_data(g_VAULTNAME, authid, data );
- return;
- }
- public SaveData(id){
- new authid[32]
- get_user_authid(id, authid, 31)
- new vaultkey[64]
- new vaultdata[64]
- format(vaultkey, 63, "KNIFEMOD_%s", authid)
- format(vaultdata, 63, "%d", knife_model[id])
- set_vaultdata(vaultkey, vaultdata)
- new data[ 16 ];
- get_user_authid( id, authid, sizeof( authid ) - 1 );
- formatex( data, sizeof( data ) - 1, "%d %d", iLevel[id], iXp[id] );
- fvault_set_data(g_VAULTNAME, authid, data );
- return;
- }
- public VLoadData(id){
- new authid[32]
- get_user_authid(id,authid,31)
- new vaultkey[64], vaultdata[64]
- format(vaultkey, 63, "KNIFEMOD_%s", authid)
- get_vaultdata(vaultkey, vaultdata, 63)
- vknife_model[id] = str_to_num(vaultdata)
- new data[ 16 ], szLevel[ 8 ], szXp[ 8 ];
- get_user_authid( id, authid, sizeof( authid ) - 1 );
- if( fvault_get_data(g_VAULTNAME, authid, data, sizeof( data ) - 1 ) )
- {
- strbreak( data, szLevel, sizeof( szLevel ) - 1, szXp, sizeof( szXp ) - 1 );
- iLevel[id] = str_to_num( szLevel );
- iXp[id] = str_to_num( szXp );
- return;
- }
- else
- {
- iLevel[id] = 0;
- iXp[id] = 0;
- return;
- }
- }
- public LoadData(id){
- new authid[32]
- get_user_authid(id,authid,31)
- new vaultkey[64], vaultdata[64]
- format(vaultkey, 63, "KNIFEMOD_%s", authid)
- get_vaultdata(vaultkey, vaultdata, 63)
- knife_model[id] = str_to_num(vaultdata)
- new data[ 16 ], szLevel[ 8 ], szXp[ 8 ];
- get_user_authid( id, authid, sizeof( authid ) - 1 );
- if( fvault_get_data(g_VAULTNAME, authid, data, sizeof( data ) - 1 ) )
- {
- strbreak( data, szLevel, sizeof( szLevel ) - 1, szXp, sizeof( szXp ) - 1 );
- iLevel[id] = str_to_num( szLevel );
- iXp[id] = str_to_num( szXp );
- return;
- }
- else
- {
- iLevel[id] = 0;
- iXp[id] = 0;
- return;
- }
- }
- stock get_player_name(id){
- static szName[32];
- get_user_name(id,szName,31);
- return szName;
- }
- stock ColorChat( const id, const string[ ], { Float, Sql, Resul, _ } : ... )
- {
- new msg[ 191 ], players[ 32 ], count = 1;
- static len;
- len = formatex( msg, charsmax( msg ), "^x04[^x01 UnqE# Knife^x04 ]^x01 " );
- vformat( msg[ len ], charsmax( msg ) - len, string, 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( );
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement