Скидывает с респауна

Тема в разделе "Counter-Strike: Global Offensive", создана пользователем nikita1811, 23 ноя 2015.

  1. nikita1811

    nikita1811

    Сообщения:
    85
    Симпатии:
    4
    Добрый вечер, может кто знает как можно убрать на некоторых surf_картах скидывание с респауна, то есть начинается раунд, проходит некоторое время и игрока скидывает на серф, интересует вопрос как убрать это "скидывание".
     
  2. Илья Солодовник

    Илья Солодовник

    Сообщения:
    15
    Симпатии:
    0
    Вроде бы нельзя не как отключить скидывание, потому что это карта так сделана.
     
  3. Hejter

    Hejter Mapper Source Engine

    Сообщения:
    1.771
    Симпатии:
    259
    Можно. Узнаем ID нужного trigger_teleport и удаляем его с карты.
     
  4. nikita1811

    nikita1811

    Сообщения:
    85
    Симпатии:
    4
    А можно пример плагина с произвольным ID, нужный постараюсь найти?
     
  5. AlmazON

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

    Сообщения:
    4.505
    Симпатии:
    1.961
    Готовый инструментарий: http://hlmod.ru/forum/utverjdionnye-plaginy/26679-manual-cleaning-map.html.
    Удаляешь его: !cleanmap trigger_teleport -1 - по одному и проверяешь, скидывает или нет. Можно попробовать сразу все удалить, если карта будет функционировать нормально (может там и есть всего 1 объект Оффтоп ).
     
  6. Hejter

    Hejter Mapper Source Engine

    Сообщения:
    1.771
    Симпатии:
    259
    Не тестировал, вот ты и протестируешь.
    Для компилирования нужна библиотека smlib.
    Строчка 34: if (StrEqual(current_map, "тут_прописать_карту")) - название нужной тебе карты.
     

    Вложения:

    • trigger_push.sp
      Размер файла:
      776 байт
      Просмотров:
      4
    Последнее редактирование: 30 ноя 2015
  7. Hejter

    Hejter Mapper Source Engine

    Сообщения:
    1.771
    Симпатии:
    259
    Почаще апай свои темы, очень полезные плагины у тебя. Нужно сделать поисковик как на sourcemod.net.
     
  8. nikita1811

    nikita1811

    Сообщения:
    85
    Симпатии:
    4
    Нашел, причина в trigger_push:
    !cleanmap trigger_push 1
    Удален: №1 entity "trigger_push" (id: 572).
    Теперь вопрос как удалять это постоянно, как я понял плагин не сохраняет изменения(
    Не работает, заменил в плагине trigger_teleport на trigger_push и ID вставил из цитаты выше (572).
     
  9. Hejter

    Hejter Mapper Source Engine

    Сообщения:
    1.771
    Симпатии:
    259
    http://hlmod.ru/forum/showpost.php?p=222483&postcount=6
    Перезалил. В этом случае будет удалять все trigger_push на нужной тебе карты, не забудь править исходник.
     
  10. AlmazON

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

    Сообщения:
    4.505
    Симпатии:
    1.961
    Это реальный индекс объекта. Не тот "ID".
    Проверил, сколько таких объектов на карте? Если всего 1, то удалять можно легко и всегда верно. Оффтоп
    Оффтоп Не будет работать.
     
  11. nikita1811

    nikita1811

    Сообщения:
    85
    Симпатии:
    4
    Добавлено через 10 минут
    А где узнать нужный ID?
    Отключение всех trigger_push не вариант, перестает работать "толчек" игрока вверх на некоторых местах карты(
     
    Последнее редактирование: 30 ноя 2015
  12. Hejter

    Hejter Mapper Source Engine

    Сообщения:
    1.771
    Симпатии:
    259
    Тогда возьми старый исходник trigger_teleport.
    Получи HammerID нужного тебе trigger_push (не забудь изменить trigger_teleport на trigger_push) и вставь, пропиши нужную карту, где удалять и проверяй.
     
  13. nikita1811

    nikita1811

    Сообщения:
    85
    Симпатии:
    4
    Вопрос именно в том как HammerID вообще можно определить на нужном мне объекте, есть исходник карты, открывал блокнотом, нашел нужный trigger_push
    entity
    {
    "id" "1411"
    "classname" "trigger_push"
    "origin" "5468 417 136"
    "pushdir" "0 270 0"
    "spawnflags" "1"
    "speed" "500"
    "StartDisabled" "1"
    "targetname" "push_spawn1"
    solid
    {
    Взял id 1411, плагин не заработал, через Hummer World Editor так и не понял где указывается ID нужного мне объекта(
     
  14. AlmazON

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

    Сообщения:
    4.505
    Симпатии:
    1.961
    Пробей остальные push-объекты на имена. Если не совпадает, можно по нему и сносить именно нужный тебе trigger. Оффтоп
     
  15. nikita1811

    nikita1811

    Сообщения:
    85
    Симпатии:
    4
    Можно попробовать на push_spawn1 и push_spawn2, но как реализовать это плагином?
     
  16. nikita1811

    nikita1811

    Сообщения:
    85
    Симпатии:
    4
    да, для ct и t спауна
     
  17. AlmazON

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

    Сообщения:
    4.505
    Симпатии:
    1.961
    PHP:
    #include <sdktools>

    new String:g_sMapActivate[][] = {"de_dust"};

    public 
    OnMapStart()
    {
        
    decl String:current_map[32];
        
    GetCurrentMap(current_mapsizeof(current_map));
        static 
    bool:bActivate;
        for (new 
    0sizeof(g_sMapActivate); ++i)
        {
            if (
    strcmp(current_mapg_sMapActivate[i]) == 0)
            {
                if (!
    bActivate)
                {
                    
    HookEvent("round_start"OnRoundStartEventHookMode_PostNoCopy);
                    
    bActivate true;
                }
                return;
            }
        }
        if (
    bActivate)
        {
            
    UnhookEvent("round_start"OnRoundStartEventHookMode_PostNoCopy);
            
    bActivate false;
        }
    }

    public 
    OnRoundStart(Handle:eventString:name[], bool:dontBroadcast)
    {
        
    decl String:buffer[13];
        new 
    entity MaxClients 1;
        while ((
    entity FindEntityByClassname(entity"trigger_push")) != -1)
        {
            
    DispatchKeyValue(entity"targetname"buffer);
            if (
    strcmp(buffer"push_spawn1") == || strcmp(buffer"push_spawn2") == 0AcceptEntityInput(entity"Kill");
        }
    }
    Пробуй, не проверял.
    g_sMapActivate - вписать карту(ы), как указано в примере.
     
  18. nikita1811

    nikita1811

    Сообщения:
    85
    Симпатии:
    4
    Спасибо огромное, все работает:yahoo: