Замедление в конце раунда / Slowing down at the end of the round

Тема в разделе "Тестовые плагины", создана пользователем Drumanid, 22 авг 2016.

  1. Drumanid

    Drumanid Дилетант

    Сообщения:
    567
    Симпатии:
    194
    Описание плагина...

    Замедляет время в конце раунда, при помощи команды: host_timescale
    Чтобы плагин работал корректно, впишите в настройки режима(gamemode_casual) игры следующее... или замените квар:

    mp_round_restart_delay 6.0.

    Предупреждение: плагин включает sv_cheats 1, хотя, вроде как заблокировал все опасные команды.
    Ну а если не все, добавьте сами, ищите public OnPluginStart(), после скобки добавляйте:

    AddCommandListener(BC, "noclip") - как пример.
    и конечно же перекомпилируйте плагин.

    Демонстрация:



    Исходный код:
    PHP:
    #include <emitsoundany>

    public Plugin:myinfo =
    {
        
    name "Slowingdown Round End",
        
    author "Psychologist21",
        
    version "1.2 - Work on the bugs",
        
    url "http://hlmod.ru"
    };

    public 
    OnMapStart()
    {
        
    AddFileToDownloadsTable("sound/slowing/slowingstart.mp3");
        
    AddFileToDownloadsTable("sound/slowing/slowingfinish.mp3");
        
    PrecacheSoundAny("slowing/slowingstart.mp3");
        
    PrecacheSoundAny("slowing/slowingfinish.mp3");
    }

    public 
    OnPluginStart()
    {
        
    AddCommandListener(BC"impulse 101");
        
    AddCommandListener(BC"impulse 102");
        
    AddCommandListener(BC"impulse 203");
        
    AddCommandListener(BC"sv_gravity");
        
    AddCommandListener(BC"give");
        
    AddCommandListener(BC"notarge");
        
    AddCommandListener(BC"killserver");

        
    HookEvent("round_end"round_endEventHookMode_PostNoCopy);
        
    HookEvent("server_cvar"Event_CvarEventHookMode_Pre);
    }

    public 
    Action:Event_Cvar(Handle:event, const String:name[], bool:dontBroadcast)
    {
        if(!
    dontBroadcast)
        {
            
    SetEventBroadcast(eventtrue);
        }
        return 
    Plugin_Continue;
    }

    public 
    Action:BC(client, const String:command[], argc)
    {
        if(
    client != 0)
        {
            
    PrintToChat(client" \x07Молодой человек, а вы ничего не попутали?");
            
    ClientCommand(client,"play buttons/weapon_cant_buy.wav");
            return 
    Plugin_Handled;
        }
        return 
    Plugin_Continue;
    }

    public 
    round_end(Handle:event, const String:name[], bool:dontBroadcast)
    {
        
    CreateTimer(0.5SlowingStart_TIMER_FLAG_NO_MAPCHANGE);
    }

    public 
    ActionSlowingStart(Handle:timer)
    {
        
    EmitSoundToAllAny("slowing/slowingstart.mp3");
        
    ServerCommand("sv_cheats 1; host_timescale 0.5");
        
    CreateTimer(4.0SlowingEnd_TIMER_FLAG_NO_MAPCHANGE);
        return 
    Plugin_Stop;
    }

    public 
    ActionSlowingEnd(Handle:timer)
    {
        
    EmitSoundToAllAny("slowing/slowingfinish.mp3");
        
    ServerCommand("sv_cheats 0; host_timescale 1");
        return 
    Plugin_Stop;
    }
    Версия от AlmazON
     

    Вложения:

    • Slowingdown.rar
      Размер файла:
      105,3 КБ
      Просмотров:
      55
    Последнее редактирование: 13 сен 2016
    TolikCorp и ĦĄŇĢǾVξŘ нравится это.
  2. TolikCorp

    TolikCorp

    Сообщения:
    855
    Симпатии:
    271
    Еще заглушить показ сообщения о смене переменной, да бы народ вообще не знал, что идет манипуляция с sv_cheats
     
  3. Drumanid

    Drumanid Дилетант

    Сообщения:
    567
    Симпатии:
    194
    PHP:
    #include <sdkhooks>

    public OnPluginStart()
    {
        
    HookEvent("server_cvar"Event_CvarEventHookMode_Pre);
    }

    public 
    Action:Event_Cvar(Handle:event, const String:name[], bool:dontBroadcast)
    {
        if(!
    dontBroadcast)
        {
            
    SetEventBroadcast(eventtrue);
        }
    }
    Попробуй.
     

    Вложения:

    • blocksv.sp
      Размер файла:
      263 байт
      Просмотров:
      5
    • blocksv.smx
      Размер файла:
      3,6 КБ
      Просмотров:
      15
    TolikCorp нравится это.
  4. TolikCorp

    TolikCorp

    Сообщения:
    855
    Симпатии:
    271
  5. AlmazON

    AlmazON деревянный © yand3xmail

    Сообщения:
    4.539
    Симпатии:
    1.984
    Такого в OnPluginStart() не должно быть никогда.
    Бред. В этом событии нет индекса игрока.
     
  6. Drumanid

    Drumanid Дилетант

    Сообщения:
    567
    Симпатии:
    194
    упс , сейчас поправлю.
     
    Последнее редактирование: 22 авг 2016
  7. TolikCorp

    TolikCorp

    Сообщения:
    855
    Симпатии:
    271
    public OnPluginStart()
    {
    AddCommandListener(BC, "impulse 101");
    AddCommandListener(BC, "impulse 102");
    AddCommandListener(BC, "impulse 203");
    AddCommandListener(BC, "sv_gravity");
    AddCommandListener(BC, "give");
    AddCommandListener(BC, "notarge");
    AddCommandListener(BC, "killserver");

    HookEvent("round_end", round_end);

    new flags, Handle:cvar = FindConVar("sv_cheats");
    flags = GetConVarFlags(cvar);
    flags &= ~FCVAR_NOTIFY;
    SetConVarFlags(cvar, flags);
    CloseHandle(cvar);
    }
     
  8. Drumanid

    Drumanid Дилетант

    Сообщения:
    567
    Симпатии:
    194
    Перезалил.
    Оффтоп

    А как же таймер?
     
    Последнее редактирование: 22 авг 2016
  9. AlmazON

    AlmazON деревянный © yand3xmail

    Сообщения:
    4.539
    Симпатии:
    1.984
    Обыкновенно.
    PHP:
    CreateTimer(0.5SlowingStart_TIMER_FLAG_NO_MAPCHANGE);
    Также и второй. Причём, второй лучше делать внутри первого.
     
  10. TolikCorp

    TolikCorp

    Сообщения:
    855
    Симпатии:
    271
    @Psychologist21,
    Второй таймер перенес на момент, когда уже первый сработал (о чем и говорил Алмаз)
    А по поводу отключения показа изменения sv_cheats - твой вариант не пробовал, но если что тот, который нашел на АМ - работает адекватно, и БЕЗхуков. Проверил.
    Оффтоп
     
  11. Drumanid

    Drumanid Дилетант

    Сообщения:
    567
    Симпатии:
    194
    Обновил.
    Чутка оптимизировали плагин.
    Спасибо AlmazON'y за поддержку.

    Только что затестил, работает, оставлю старый вариант.
     
  12. -->KENT<--

    -->KENT<-- FANAT FARAONA

    Сообщения:
    148
    Симпатии:
    18
    Кому нужно вот еще добавил:
    PHP:
    AddComanndListener(BC"noclip");
    AddCommandListener(BC"mat_wireframe 1");
    AddCommandListener(BC"r_drawothermodels 2");
    AddCommandListener(BC"give weapon_awp");
    AddCommandListener(BC"give weapon_aug");
    AddCommandListener(BC"give weapon_ak47");
    AddCommandListener(BC"give weapon_m4a1_silencer");
    AddCommandListener(BC"give weapon_m4a1");
    AddCommandListener(BC"give weapon_galilar");
    AddCommandListener(BC"give weapon_famas");
    AddCommandListener(BC"give weapon_p90");
    AddCommandListener(BC"give weapon_ump45");
    AddCommandListener(BC"give weapon_mac10");
    AddCommandListener(BC"give weapon_xm1014");
    AddCommandListener(BC"give weapon_elite");
    AddCommandListener(BC"give weapon_fiveseven");
    AddCommandListener(BC"give weapon_deagle");
    AddCommandListener(BC"give weapon_usp_silencer");
    AddCommandListener(BC"give weapon_glock18");
    AddCommandListener(BC"give weapon_knife");
    AddCommandListener(BC"give weapon_knifegg");
    AddCommandListener(BC"give weapon_m249");
    AddCommandListener(BC"give weapon_tec9");
    AddCommandListener(BC"give weapon_negev");
    AddCommandListener(BC"give weapon_scar20");
    AddCommandListener(BC"give weapon_sawedoff");
    AddCommandListener(BC"give weapon_nova");
    AddCommandListener(BC"give weapon_ssg08");
    AddCommandListener(BC"give weapon_sg553");
    AddCommandListener(BC"give weapon_cz75a");
    AddCommandListener(BC"give weapon_hkp2000");
    AddCommandListener(BC"give weapon_hegrenade");
    AddCommandListener(BC"give weapon_flashbang");
    AddCommandListener(BC"give weapon_smokegrenade");
    AddCommandListener(BC"give weapon_molotov");
    AddCommandListener(BC"give weapon_decoy");
    AddCommandListener(BC"give weapon_c4");
    AddCommandListener(BC"give weapon_taser");
    AddCommandListener(BC"give item_cutters");
    AddCommandListener(BC"give item_kevlar");
    AddCommandListener(BC"give item_assaultsuit");
    AddCommandListener(BC"sv_infinite_ammo 1");
    AddCommandListener(BC"sv_showimpacts 1");
    AddCommandListener(BC"sv_infinite_ammo 2");
    AddCommandListener(BC"sv_showimpacts 1");
    AddCommandListener(BC"sv_showbullethits 1");
    AddCommandListener(BC"cl_disable_ragdolls 1");
    AddCommandListener(BC"mat_disable_bloom 1");
    AddCommandListener(BC"r_drawparticles 0");
    AddCommandListener(BC"mp_warmuptime");
    AddCommandListener(BC"host_writeconfig");
    AddCommandListener(BC"god");
    AddCommandListener(BC"mp_limitteams 0");
    AddCommandListener(BC"mp_limitteams 1");
    AddCommandListener(BC"sv_ignoregrenaderadio 1");
    AddCommandListener(BC"mp_maxrounds");
    AddCommandListener(BC"mp_roundtime");
    P.S. Автор исправь надпись, у тебя написано AddComanndListener а нужно AddCommandListener
     
    Последнее редактирование: 30 авг 2016
  13. AlmazON

    AlmazON деревянный © yand3xmail

    Сообщения:
    4.539
    Симпатии:
    1.984
    Замедление по длительности конца раунда:
     
    Drumanid нравится это.
  14. inklesspen

    inklesspen После "Р" в слове "Лопата"

    Сообщения:
    835
    Симпатии:
    197
    Достаточно захухать просто give
    --- Добавлено позже ---
     
  15. anowikow

    anowikow

    Сообщения:
    40
    Симпатии:
    3
    Чем вам Sm_Bullettime не угодил?
     
  16. Крутой)

    Крутой) Read Only

    Сообщения:
    66
    Симпатии:
    4
    Выдает ошибку при комплиляции!
    Помогите!!!
     

    Вложения:

    • Slowingdown.sp
      Размер файла:
      2,5 КБ
      Просмотров:
      2
  17. inklesspen

    inklesspen После "Р" в слове "Лопата"

    Сообщения:
    835
    Симпатии:
    197
    upload_2016-10-2_14-4-50.png
    Опечатался
    AddComanndListener меняй на AddCommandListener
     
  18. Крутой)

    Крутой) Read Only

    Сообщения:
    66
    Симпатии:
    4
    Все равно выдает ошибку!
    --- Добавлено позже ---
     

    Вложения:

  19. inklesspen

    inklesspen После "Р" в слове "Лопата"

    Сообщения:
    835
    Симпатии:
    197
  20. Крутой)

    Крутой) Read Only

    Сообщения:
    66
    Симпатии:
    4