Написание плагинов

Nekro

Терра инкогнита
Сообщения
4,025
Реакции
2,260
Привет, пишу по поводу помощи с сервером.
Есть небольшая кучка основных проблем и багов:
1 Не работает VipRegenHp выше 100hp (Лечит до 100 дальше не идёт)
2 Аналогичнная проблема со шприцами
3 Не работает список вип игроков в Admin панельке
4 Плагин Whistle не воспроизводит музыку и нужно что бы он срабатывал при нажатие на E+R
5 Не у всех скачиваются скины с FASTDL и бегают большие Ероры
Если можете что то отдельно подправить буду рад
 

DarkerZ

Участник
Сообщения
395
Реакции
175
Привет, пишу по поводу помощи с сервером.
Есть небольшая кучка основных проблем и багов:
1 Не работает VipRegenHp выше 100hp (Лечит до 100 дальше не идёт)
2 Аналогичнная проблема со шприцами
3 Не работает список вип игроков в Admin панельке
4 Плагин Whistle не воспроизводит музыку и нужно что бы он срабатывал при нажатие на E+R
5 Не у всех скачиваются скины с FASTDL и бегают большие Ероры
Если можете что то отдельно подправить буду рад
1,2 - у класса player есть атрибут Maximum Health (max_health) <integer>, что задаёт максимальное количество хп, по умолчанию 100, так же может меняться мапперами.
5 - наверное не только скины, но и звуки, карты и т.д., пускай юзают VPN, либо ищи стабильный хост для FastDL в Европе
 

pe4enka

Участник
Сообщения
18
Реакции
0
1,2 - у класса player есть атрибут Maximum Health (max_health) <integer>, что задаёт максимальное количество хп, по умолчанию 100, так же может меняться мапперами.
5 - наверное не только скины, но и звуки, карты и т.д., пускай юзают VPN, либо ищи стабильный хост для FastDL в Европе
5 у меня домашний серв + арендовыанный Fast DL до этого был бесплатный, помоги с правильной ссыылкой для Server.cfg Мб в этом дело?
Проблема только со скинами ну и да со свистом звук не проигрывается а вот например танцы там играет музыыка
 

Gaivor

Участник
Сообщения
186
Реакции
18
5 у меня домашний серв + арендовыанный Fast DL до этого был бесплатный, помоги с правильной ссыылкой для Server.cfg Мб в этом дело?
Проблема только со скинами ну и да со свистом звук не проигрывается а вот например танцы там играет музыыка
Звук свиста загрузил на сервер?
 

pe4enka

Участник
Сообщения
18
Реакции
0
Звук свиста загрузил на сервер?
да, уже куда только не грузил) мне сказали что я что то не то делаю типо FTP не то и нужен хостинг для адекватного FASTDL
Сообщения автоматически склеены:

Звук свиста загрузил на сервер?
Я арендовал на ХостиЯ всё сделал настроил а толку 0
1677076088354.png
1677076064596.png
 
Последнее редактирование модератором:

Gaivor

Участник
Сообщения
186
Реакции
18
да, уже куда только не грузил) мне сказали что я что то не то делаю типо FTP не то и нужен хостинг для адекватного FASTDL
Сообщения автоматически склеены:


Я арендовал на ХостиЯ всё сделал настроил а толку 0Посмотреть вложение 109258Посмотреть вложение 109257
Закинь файл со свистом в формате .mp3
 

pe4enka

Участник
Сообщения
18
Реакции
0
Закинь файл со свистом в формате .mp3
"Downloading http://f0777280.net/ServerCoc/sound/zwolof/s_whistle.wav.bz2.
Error downloading http://f0777280.net/ServerCoc/sound/zwolof/s_whistle.wav.bz2
Downloading http://f0777280.net/ServerCoc/sound/zwolof/s_whistle.wav.
Error downloading http://f0777280.net/ServerCoc/sound/zwolof/s_whistle.wav"
Пишет это в консоль на сервере что бы только не закидывыал
 

DarkerZ

Участник
Сообщения
395
Реакции
175
у тебя хостинг не доступен, понятно почему не грузит. там черным по белому написано, что нужно для активации в письме от хостинга - сделал? если да, то жди 1-2 суток, пока DNS сервера обновят инфу о домене
 

Gaivor

Участник
Сообщения
186
Реакции
18
Добрый, возможно ли сделать, что бы в плагине !Hide не были слышны звуки своей тимы? А противоположной слышны были.
 

Palonez

бб братки
Сообщения
3,035
Реакции
1,837
Добрый, возможно ли сделать, что бы в плагине !Hide не были слышны звуки своей тимы? А противоположной слышны были.
C-подобный:
public void OnPluginStart() { AddNormalSoundHook(HookSounds); }

public Action HookSounds(int clients[MAXPLAYERS], int &numClients, char sample[PLATFORM_MAX_PATH], int &entity, int &channel, float &volume, int &level, int &pitch, int &flags, char soundEntry[PLATFORM_MAX_PATH], int &seed)
{
    if(StrContains(sample, "suit", false) == -1 && StrContains(sample, "new", false) != -1)
    {
        if(условие)
        {
            volume = 0.00;
            return Plugin_Changed;
        }
    }
    return Plugin_Continue;
}
Методом исключения пришел к выводу, что некоторые звуки содержащие suit и new в имени отвечают как раз за эти самые шаги(искать конкретнее было впадлу). Я использовал этот хук для уменьшения громкости определенной команды, попробуйте использовать под свои нужды
 
Последнее редактирование:

SolisLuna

Участник
Сообщения
33
Реакции
8
У кого нибудь найдется плагин который показывает Strafes? Типо Show Keys для наблюдателей, но в HUD.
 

Вложения

  • uYPFr7x.jpg
    uYPFr7x.jpg
    36.9 КБ · Просмотры: 25

pe4enka

Участник
Сообщения
18
Реакции
0
у тебя хостинг не доступен, понятно почему не грузит. там черным по белому написано, что нужно для активации в письме от хостинга - сделал? если да, то жди 1-2 суток, пока DNS сервера обновят инфу о домене
По данной ссылке в кфг люди скачивают музыку, а модели скинов не идут
 

7pElllHuK

Участник
Сообщения
1,416
Реакции
465
Всем привет, подскажите пожалуйста, как сделать так, чтоб если в одной из команд 2 игрока, а во второй команде 0, то выполнялся код. Игра Css v34
 

Palonez

бб братки
Сообщения
3,035
Реакции
1,837
Всем привет, подскажите пожалуйста, как сделать так, чтоб если в одной из команд 2 игрока, а во второй команде 0, то выполнялся код. Игра Css v34
C++:
int ct = 0, t = 0;

for(int i = 1; i <= MaxClients; i++)
{
    if(IsClientInGame(i) && !IsFakeClient(i))
    {
        if(GetClientTeam(i) == 3) ct++;
        else if(GetClientTeam(i) == 2) t++;      
    }
}

if((ct == 2 && t == 0) || (ct == 0 && t == 2))
{
    //код
}
 

Grey83

не пишу плагины с весны 2022
Сообщения
8,521
Реакции
4,980
if((ct == 2 && t == 0) || (ct == 0 && t == 2))
у ИЛИ приоритет выше, чем у И, поэтому можно писать вот так: if(ct == 2 && t == 0 || ct == 0 && t == 2)


Вообще я бы сделал бы так:
C-подобный:
void CheckTeams()
{
    int ct, t;
    for(int i = 1, team; i <= MaxClients; i++) if(IsClientInGame(i) && (team = GetClientTeam(i)) > 1 && !IsFakeClient(i))
    {
        if(team == 3)
            ct++;
        else t++;

        // если в каждой из команд есть игроки или в одной из команд больше 2 игроков, то прекращаем выполнение функции
        if(t && ct || ct > 2 && t > 2)
            return;
    }

    if(ct == 2 || t == 2)    // в одной из команд есть 2 игрока, а в другой - ни одного
    {
        //код
    }
}
Так не будет лишних циклов по игрокам.

Можно считать количество игроков в команде с помощью функции GetTeamClientCount(индекс_команды), но я не в курсе считает ли она ботов.
 
Последнее редактирование:
Сверху Снизу