Kvip Menu

Vaata eelmist teemat Vaata järgmist teemat Go down

Pulber
Pulber
Liige
Liitus : 13/11/2012
Postitusi : 186

PostitaminePulber 06.12.14 16:29

Tere kas keegi oskab vähe ümmber teha näiteks seda Kvip plugina nii et kui tuleb de_dust2_long map näiteks aga seal on juu et ta annab awp iga kolme raundi tagant jne. Aga oleks vaja teha nii et ta de_dust2_long mapis ei annaks seda awp muidegi on olemas pluginad mis keelavad awp jne aga hea oleks kui oleks juba see pluginas ise olemas.
Tonight
Tonight

Kvip Menu  Vetera11
Liitus : 19/02/2012
Postitusi : 17982

PostitamineTonight 06.12.14 17:12

Testimata, väga võimalik, et võib buge esineda:
Kood:
#include < amxmodx >
#include < amxmisc >
#include < cstrike >
#include < fun >
#include < hamsandwich >
#include < colorchat >

const VipFlags = ADMIN_LEVEL_H;

enum {
   SCOREATTRIB_ARG_PLAYERID = 1,
   SCOREATTRIB_ARG_FLAGS
};

enum ( <<= 1 ) {
   SCOREATTRIB_FLAG_NONE = 0,
   SCOREATTRIB_FLAG_DEAD = 1,
   SCOREATTRIB_FLAG_BOMB,
   SCOREATTRIB_FLAG_VIP
};

new iRound;
new iEnable;
new iHudMsg;
new iMoney_Hs;
new iMoney_Kill;
new iHp_Max;
new iHp_Hs;
new iHp_Kill;
new iKontroll;

new const g_maps[][] =
{
   "de_dust2_long"
}

const PRIMARY_WEAPONS_BIT_SUM = (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)
const SECONDARY_WEAPONS_BIT_SUM = (1<<CSW_P228)|(1<<CSW_ELITE)|(1<<CSW_FIVESEVEN)|(1<<CSW_USP)|(1<<CSW_GLOCK18)|(1<<CSW_DEAGLE)

public plugin_init( ) {
   register_plugin( "Kadrina Vip" , "1.0.0" , "Mucx" );
   
   register_event( "TextMsg"   , "RoundRestart"   , "a"   , "2&#Game_C" );
   register_event( "TextMsg"   , "RoundRestart"   , "a"   , "2&#Game_w" );
   register_event( "HLTV"      , "NewRound"      , "a"   , "1=0"   , "2=0" );
   
   register_message( get_user_msgid( "ScoreAttrib" ) , "MessageScoreAttrib" );
   
   RegisterHam( Ham_Spawn , "player" , "PlayerSpawned" , 1 );
   
   register_event( "Damage"   , "ShowDamage"      , "b"   , "2!0"   , "3=0"   , "4!0" );
   register_event( "DeathMsg"   , "EventDeathMsg"   , "a"   , "1>0" );
   
   register_clcmd( "say /vips"      , "ShowVips" );
   register_clcmd( "say_team /vips"   , "ShowVips" );
   
   set_task( 10.0, "Kontroll" );
   
   iEnable      = register_cvar( "amx_give_weapons"   , "1" );
   
   iMoney_Hs   = register_cvar( "amx_money_hs"      , "800" );
   iMoney_Kill   = register_cvar( "amx_money_kill"   , "500" );
   
   iHp_Max      = register_cvar( "amx_hp_max"      , "100" );
   iHp_Hs      = register_cvar( "amx_hp_hs"      , "30" );
   iHp_Kill   = register_cvar( "amx_hp_kill"      , "15" );
   iKontroll    = register_cvar( "amx_kontroll"    , "0" );
   
   iHudMsg      = CreateHudSyncObj( );
}

public RoundRestart( )
iRound = 0;

public NewRound( )
iRound++;

public MessageScoreAttrib( iMsgId , iDest , iReceiver ) {
   new iPlayer = get_msg_arg_int( SCOREATTRIB_ARG_PLAYERID );
   
   if( is_user_alive( iPlayer ) && get_user_flags( iPlayer ) & VipFlags && cs_get_user_team( iPlayer ) == CS_TEAM_CT )
   set_msg_arg_int( SCOREATTRIB_ARG_FLAGS , ARG_BYTE , SCOREATTRIB_FLAG_VIP );
}

public PlayerSpawned( id ) {
   if( is_user_alive( id ) && get_user_flags( id ) & VipFlags && get_pcvar_num( iEnable ) == 1 ) {
      give_item( id , "weapon_hegrenade" );
      give_item( id , "weapon_flashbang" );
      give_item( id , "weapon_smokegrenade" );
      cs_set_user_bpammo( id , CSW_FLASHBANG , 2 );
      cs_set_user_armor( id , 100, CS_ARMOR_VESTHELM );
      
      if( cs_get_user_team( id ) == CS_TEAM_CT )
      cs_set_user_defuse( id , 1 );
      
      if( iRound == 1 )
      SecondaryMenu( id );
      else
      PrimaryMenu( id );
   }
}

public Kontroll() {
   new map[32]
   get_mapname(map, 31)
   for(new i=0;i< sizeof(g_maps);i++)
   {
      if(equal(map, g_maps[i]))
      {
         set_pcvar_num( iKontroll , 1 );
      }
      else {
         set_pcvar_num( iKontroll , 0 );
      }
   }
}

public PrimaryMenu( id ) {
   new menu = menu_create( "Vali Relv:" , "PrimaryHandler" );
   
   menu_additem( menu , "M4A1" ,   "1" , 0 );
   menu_additem( menu , "AK47" ,   "2" , 0 );
   
   if( ( iRound % 3 ) == 1 && (get_pcvar_num(iKontroll) == 0) ) {
      menu_additem( menu , "AWP" ,   "3" , 0 );}
   
   menu_additem( menu , "Secondary" ,   "4" , 0 );
   
   menu_setprop( menu , MPROP_EXIT , MEXIT_ALL );
   menu_display( id , menu , 0 );
}

public PrimaryHandler( id , menu , item) {
   if( item == MENU_EXIT ) {
      menu_destroy( menu );
      return PLUGIN_HANDLED;
   }
   
   new data[6] , iName[64];
   new access , callback;
   
   menu_item_getinfo( menu , item , access , data ,5 , iName , 63 , callback );
   
   new key = str_to_num( data );
   switch( key ) {
   case 1: {
         DropWeapons( id , 1 );
         
         give_item( id , "weapon_m4a1" );
         cs_set_user_bpammo( id , CSW_M4A1 , 90 );
         
         SecondaryMenu( id );
      }
   case 2: {
         DropWeapons( id , 1 );
         
         give_item( id , "weapon_ak47" );
         cs_set_user_bpammo( id , CSW_AK47 , 90 );
         
         SecondaryMenu( id );
      }
   case 3: {
         DropWeapons( id , 1 );
         
         give_item( id , "weapon_awp" );
         cs_set_user_bpammo( id , CSW_AWP , 30 );
         
         SecondaryMenu( id );
      }
   case 4: {
         SecondaryMenu( id );
      }
   }
   menu_destroy( menu );
   return PLUGIN_HANDLED;
}

public SecondaryMenu( id ) {
   new menu = menu_create( "Vali Relv:" , "SecondaryHandler" );
   
   menu_additem( menu , "USP" ,   "1" , 0 );
   menu_additem( menu , "GLOCK" ,   "2" , 0 );
   menu_additem( menu , "DEAGLE" ,   "3" , 0 );
   
   menu_setprop( menu , MPROP_EXIT , MEXIT_ALL );
   menu_display( id , menu , 0 );
}

public SecondaryHandler( id , menu , item) {
   if( item == MENU_EXIT ) {
      menu_destroy( menu );
      return PLUGIN_HANDLED;
   }
   
   new data[6] , iName[64];
   new access , callback;
   
   menu_item_getinfo( menu , item , access , data ,5 , iName , 63 , callback );
   
   new key = str_to_num( data );
   switch( key ) {
   case 1: {
         DropWeapons( id , 2 );
         
         give_item( id , "weapon_usp" );
         cs_set_user_bpammo( id , CSW_USP , 100 );
      }
   case 2: {
         DropWeapons( id , 2 );
         
         give_item( id , "weapon_glock18" );
         cs_set_user_bpammo( id , CSW_GLOCK18 , 120 );
      }
   case 3: {
         DropWeapons( id , 2 );
         
         give_item( id , "weapon_deagle" );
         cs_set_user_bpammo( id , CSW_DEAGLE , 35 );
      }
   }
   menu_destroy( menu );
   return PLUGIN_HANDLED;
}

stock DropWeapons( id , dropwhat ) {
   static weapons[ 32 ] , num , i , weaponid;
   num = 0;
   get_user_weapons( id , weapons , num );
   
   for( i = 0; i < num; i++ ) {
      weaponid = weapons[ i ];
      
      if( ( dropwhat == 1 && ( ( 1 << weaponid ) & PRIMARY_WEAPONS_BIT_SUM)) || ( dropwhat == 2 && ( ( 1 << weaponid ) & SECONDARY_WEAPONS_BIT_SUM ) ) ) {
         static wname[ 32 ];
         get_weaponname( weaponid , wname , charsmax( wname ) );
         
         engclient_cmd( id , "drop" , wname );
      }
   }
}

public ShowDamage( id ) {
   static iAttacker; iAttacker = get_user_attacker( id );
   static iDamage; iDamage = read_data( 2 );
   
   if( is_user_connected( iAttacker ) && ( get_user_flags( iAttacker ) & VipFlags ) ) {
      set_hudmessage( 0 , 100 , 200 , -1.0 , 0.55 , 2 , 0.1 , 4.0 , 0.02 , 0.02 , -1 );
      ShowSyncHudMsg( iAttacker, iHudMsg, "%i^n" , iDamage );
   }
}

public EventDeathMsg( ) {
   new iKiller = read_data( 1 );
   
   if( is_user_connected( iKiller ) && ( get_user_flags( iKiller ) & VipFlags ) ) {
      new iMoney , iHealth , iHPMax , iHS;
      
      iMoney = cs_get_user_money( iKiller );
      iHealth = get_user_health( iKiller );
      iHPMax = get_pcvar_num( iHp_Max );
      iHS = read_data( 3 );
      
      if( iMoney < 16000 )
      cs_set_user_money( iKiller , clamp( iMoney - 300 + get_pcvar_num( iHS ? iMoney_Hs : iMoney_Kill ) , 0 , 16000 ) );
      
      if( iHealth < iHPMax )
      set_user_health( iKiller , clamp( iHealth + get_pcvar_num( iHS ? iHp_Hs : iHp_Kill ) , 0 , iHPMax ) );
   }
}

public ShowVips( id ) {
   new szMessage[256], adminnames[33][32];
   new count, len;
   
   for( new i=1; i <= get_playersnum( ); i++ )
   if( is_user_connected( i ) )
   if( get_user_flags( i ) & VipFlags )
   get_user_name( i , adminnames[ count++ ] , 32 );
   
   len = formatex( szMessage , 255 , "[ VIP ]^4 VIPs:^3 " );
   if( count > 0 ) {
      for( new x; x<count; x++ ) {
         len += formatex( szMessage[ len ] , 255-len , "%s%s " , adminnames[ x ] , x < ( count-1 ) ? "^1, ^3":"" );
         if( len > 96 ){
            ColorChat( id , RED , szMessage );
            len = formatex( szMessage , 255 , "[ VIP ] " );
         }
      }
      
      ColorChat( id , RED , szMessage );
   } else {
      len += format( szMessage[ len ] , 255-len , "Puudub" );
      ColorChat( id , RED , szMessage );
   }
   return PLUGIN_HANDLED;
}
Pulber
Pulber
Liige
Liitus : 13/11/2012
Postitusi : 186

PostitaminePulber 06.12.14 18:12

Jah ei annd awp de_dust2_long mapis aga suurt testida ei saand kuna olin üksi servus aga vähemalt minule ei annd eks annan teada kui on midagi viga
ѕααтαη
ѕααтαη
Juunior
Liitus : 14/10/2015
Postitusi : 18

Postitamineѕααтαη 28.02.16 22:13

Kus compiilida seda?
cl0ud
cl0ud
Liige
Liitus : 22/03/2015
Postitusi : 111

Postitaminecl0ud 28.02.16 22:31

Vaata eelmist teemat Vaata järgmist teemat Tagasi üles

Soovid vestluses osaleda?

Selleks logi sisse või tee endale kasutaja.

Liitu foorumiga

Tee endale kasutaja ning osale aruteludes.


Tee uus kasutaja

Logi sisse

Omad foorumis juba kasutajat? Logi sisse.


Logi sisse

 
Permissions in this forum:
Sa ei saa vastata siinsetele teemadele