[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
Страница 1 из 11
Форум » Counter-Strike 1.6 » Плагины » Hud Manager
Hud Manager
MAKESERVДата: Вторник, 17.02.2015, 17:57 | Сообщение # 1
Сержант
Группа: Администратор
Сообщений: 29
Статус:
Автор:droper

Версия:1.0

Описание:
Плагин позволяет настроить игроку его худ. Можно скрыть или, наоборот, показать: деньги, жизни, броню, радар, таймер и т.п. Все это настраивается через удобное меню.

Команды:
say /hud - показать меню.

Цитата
// ================================================================================================
//
// Plugin:  HUD Manager
// Version: 1.0
// Author:  droper
//
// Copyright © 2012, droper
//
// ================================================================================================
#include < amxmodx >
#include < amxmisc >
new const g_constMenuBody[][] =
{
"\y1. \wHide Crosshair, Ammo, Weapon list\r\R%s^n",
"\y2. \wHide Flashlight, \r+\R%s^n",
"\y3. \wHide All, \r+\R%s^n",
"\y4. \wHide Radar, Health, Armor, \r+\R%s^n",
"\y5. \wHide Timer, \r+\R%s^n",
"\y6. \wHide Money, \r+\R%s^n",
"\y7. \wHide All Crosshairs\r\R%s^n",
"\y8. \wDraw Additional Crosshair\r\R%s^n",
"\r+ \w- additional crosshair will be drawn"
};
new const g_constHudMenu[] = "Hud Manager:"; // do not modify it
new g_bitsPlayerHud[ 33 ] = { 0, ... };
new g_msgHideWeapon = 0;

public plugin_init ()
{
register_plugin ( "HUD Manager", "1.0", "droper" );
register_menucmd ( register_menuid ( g_constHudMenu ), 1023, "actionHudMenu" );
register_clcmd ( "say /hud", "ClCmd_Hud" );
register_message ( g_msgHideWeapon = get_user_msgid ( "HideWeapon" ), "Message_HideWeapon" );
}
public ClCmd_Hud ( id )
{
ShowHudMenu ( id );
return PLUGIN_HANDLED;
}
public ShowHudMenu ( id )
{
new szMenu[ 512 ];

new iLen = format ( szMenu, charsmax( szMenu ), "Hud Manager:^n^n" );
new i = 0;
for ( ; i < sizeof g_constMenuBody; i++ )
{
  iLen += format ( szMenu[ iLen ], charsmax( szMenu ) - iLen, g_constMenuBody, ( g_bitsPlayerHud[ id ] & ( 1 << i ) ) ? "YES" : "NO" );
}
format ( szMenu[ iLen ], charsmax( szMenu ) - iLen, "^n^n\y0. \wExit" );
show_menu ( id, MENU_KEY_1 | MENU_KEY_2 | MENU_KEY_3 | MENU_KEY_4 | MENU_KEY_5 | MENU_KEY_6 | MENU_KEY_7 | MENU_KEY_8 | MENU_KEY_0, szMenu, -1, g_constHudMenu );
}
public actionHudMenu ( id, key )
{
if ( key < 9 )
{
  static bitsPlayer;
  bitsPlayer = g_bitsPlayerHud[ id ];
  if ( bitsPlayer & ( 1 << key ) )
  {
   bitsPlayer &= ~( 1 << key );
  }
  else
  {
   switch ( key )
   {
    case 6: bitsPlayer &= 0x7F; // если выбрали 7-ой пункт, то выключаем 8-ой
    case 7: bitsPlayer &= 0xBF; // если выбрали 8-ой пункт, то выключаем 7-ой
   }
   bitsPlayer |= ( 1 << key );
  }
  message_begin ( MSG_ONE_UNRELIABLE, g_msgHideWeapon, _, id );
  {
   write_byte ( bitsPlayer );
  }
  message_end ();
  g_bitsPlayerHud[ id ] = bitsPlayer;
  ShowHudMenu ( id );
}
}
public Message_HideWeapon ( msg_id, msg_dest, msg_entity )
{
set_msg_arg_int ( 1, ARG_BYTE, get_msg_arg_int ( 1 ) | g_bitsPlayerHud[ msg_entity ] );
}
 
Форум » Counter-Strike 1.6 » Плагины » Hud Manager
Страница 1 из 11
Поиск: