Вопрос 1: Создание меню из 4 Ultimate(использовании бесконечного число раз+ открытие после выбора пункта)
1)Регестрируем новую команду вызова(.sma)
Code
register_clcmd( "ultimatemenu" , "CMD_Handler" , -1 );
2)Идем в clientcommands.inl
3)Добавляем в Cmd_handler
//Меню ульт для Vip
Code
else if ( CMD_Equal( idUser, szCmd, "ultimatemenu" ) )
{
if(get_user_flags(idUser) & ADMIN_LEVEL_H)
{
ultimatemenu(idUser)
}
}
4)Закидываем прикрепленный файл в папку с модом (war3ft/.....)
5)Добавляем Include >> file.sma
#include "war3ft/vip.inl" //ultimate menu
P.S остальные расы мне лень мутить, таргеты и прочее.
Вопрос 2: Быстрый реген ульты(задержка при начале раунда + обычная перезарядка)
1)Добавляем два CVARS в cvars.inl
Code
//Ульт для VIP
new CVAR_wc3_ult_cooldown_vip;
new CVAR_wc3_ult_delay_vip;
2)Далее ниже:public CVAR_Init() Добавляем:
Code
CVAR_wc3_ult_delay_vip = register_cvar( "wc3_ult_delay_vip", "2.0");
CVAR_wc3_ult_cooldown_vip = register_cvar( "wc3_ult_cooldown_vip", "1.0");
3)Далее идем events.inl ищем EVENT_NewRound()
туда:
Code
new idUser = read_data(1)
if(get_user_flags(idUser) & ADMIN_LEVEL_H)
{
g_iUltimateDelay = get_pcvar_num( CVAR_wc3_ult_delay_vip );
}
else
{
g_iUltimateDelay = get_pcvar_num( CVAR_wc3_ult_delay);
}
4)Ищем: TRIGGER_TraceLine( Float:v1[3], Float:v2[3], noMonsters, pentToSkip )
Опускаемся ниже и добавляем:
Code
if(get_user_flags(iAttacker) & ADMIN_LEVEL_H)
{
ULT_ResetCooldown( iAttacker, get_pcvar_num( CVAR_wc3_ult_cooldown_vip ) );
}
else
{
ULT_ResetCooldown( iAttacker, get_pcvar_num( CVAR_wc3_ult_cooldown ) );
}