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

Colddy

Участник
Сообщения
14
Реакции
1
@Colddy, список плагинов ещё киньте
Это моя локалка, если что
1599591037167.png

Сообщения автоматически склеены:

@Colddy, список плагинов ещё киньте
Ну так что, в чем моя проблема?
 
Последнее редактирование:

iLoco

Пишу плагины за печеньки 🍪🍪🍪
Сообщения
2,265
Реакции
1,323
Скиньте полный список команд для форматирования хинта (цвет, размер, align и тд)
Сообщения автоматически склеены:

Почему форвард OnPluginEnd не вызывается если сервер крашнуть через _restart?
 

xstage

🏹
Сообщения
726
Реакции
754
Скиньте полный список команд для форматирования хинта (цвет, размер, align и тд)
Сообщения автоматически склеены:

Почему форвард OnPluginEnd не вызывается если сервер крашнуть через _restart?
Полный вряд ли кто-то скинет тем более вольво фиксили хинт некоторые теги перестали работать, можешь посмотреть хинт в таймерах.
 

Innomeni

Участник
Сообщения
320
Реакции
42
Кто-нибудь, сделайте, пожалуйста, фикс.
 

Nekro

Терра инкогнита
Сообщения
4,025
Реакции
2,260
Кто-нибудь, сделайте, пожалуйста, фикс.
Фикс отображения можно, а свечения места в 34 версии кто-то исправлял, скидывал.
 

Innomeni

Участник
Сообщения
320
Реакции
42
Фикс отображения можно, а свечения места в 34 версии кто-то исправлял, скидывал.
дак не свечения места, а то, что рандомным игрокам выдается, даже если не покупали. И если купить - отключить не получится, только перезаход и/или смена карты.
 

-=|УЧЕНИК|=-

вся жизнь,сплошной цирк.
Сообщения
876
Реакции
212
Привет народ
Возможно написать плагин,чтоб можно было админам,ограничить смену карт в админки? ну при этом,чтоб голосования в админки остались?
Или может какой то переписать плагин можно<либо как-то сделать это.
Пробовал убрать флаг,который отвечает за смену карты,ну его убираешь и пропадает голосования за карту.
А хотелось бы чтоб было,чтоб голосования только осталось в админке,а пункта смены карт не было.

Готов конпенсировать работы.

Заранее благодарю за ответ
Версия игры 34
 

SpeEdE BLR

Участник
Сообщения
42
Реакции
2
C-подобный:
#include <ESA>
Кто сможешь скинуть этот инклуд?
 

zmchel

Участник
Сообщения
62
Реакции
20
Привет народ
Возможно написать плагин,чтоб можно было админам,ограничить смену карт в админки? ну при этом,чтоб голосования в админки остались?
Или может какой то переписать плагин можно<либо как-то сделать это.
Пробовал убрать флаг,который отвечает за смену карты,ну его убираешь и пропадает голосования за карту.
А хотелось бы чтоб было,чтоб голосования только осталось в админке,а пункта смены карт не было.

Готов конпенсировать работы.

Заранее благодарю за ответ
Версия игры 34
1) сделать переопределение для команды "sm_map" не пробовали?

2) еще вариант в basecommands.sp убрать строку
hTopMenu.AddItem("sm_map", AdminMenu_Map, server_commands, "sm_map", ADMFLAG_CHANGEMAP);
ну и скомпилировать
+ в configs/adminmenu_sorting.txt убрать "item" "sm_map"
доступ к sm_map это не уберет у флага, но уберет из админменю
 

-=|УЧЕНИК|=-

вся жизнь,сплошной цирк.
Сообщения
876
Реакции
212
1) сделать переопределение для команды "sm_map" не пробовали?

2) еще вариант в basecommands.sp убрать строку
hTopMenu.AddItem("sm_map", AdminMenu_Map, server_commands, "sm_map", ADMFLAG_CHANGEMAP);
ну и скомпилировать
+ в configs/adminmenu_sorting.txt убрать "item" "sm_map"
доступ к sm_map это не уберет у флага, но уберет из админменю
Не пробовал только в исходнике убрать,все остальное пробовал.
что-то насчет него и не подумал basecommands.sp
 

🟡differend🟢

Что хочу - то и делаю
Сообщения
975
Реакции
661
Всем привет, можете пожалуйста сделать так, чтобы работало только на команде противника, чтобы не работало на своих тимейтах.
 

Вложения

  • grenade_effects.sp
    23.7 КБ · Просмотры: 9

inklesspen

Не пишу модули под LSD :с
Сообщения
1,775
Реакции
966

Вложения

  • grenade_effects.smx
    15.2 КБ · Просмотры: 10
  • grenade_effects.sp
    23.9 КБ · Просмотры: 11

🟡differend🟢

Что хочу - то и делаю
Сообщения
975
Реакции
661
Да все работает, спасибо.
Сообщения автоматически склеены:

Еще раз привет, поставил beam на сервер и почему то линии не показываются, помогите пожалуйста решить проблемку))
 

Вложения

  • HnSBeam-0.1.2.zip
    5 КБ · Просмотры: 8
Последнее редактирование:

Haseek

йфя
Сообщения
472
Реакции
79
Можно ли написать такой плагин который бы менял значение переменной sv_vote_issue_kick_allowed при заходе на сервер админа на 0? то есть встроенное голосование на кик выключалось бы
 

xstage

🏹
Сообщения
726
Реакции
754
Можно ли написать такой плагин который бы менял значение переменной sv_vote_issue_kick_allowed при заходе на сервер админа на 0? то есть встроенное голосование на кик выключалось бы

Попробуй, не проверял
C-подобный:
public void OnClientPutInServer(int client)
{
    if(GetUserFlagBits(client))
    {
        ServerCommand("sv_vote_issue_kick_allowed 0");
    }
}

public void OnClientDisconnect(int client)
{
    int iAdminCount;
    
    for(int i = 1; i < MaxClients; i++)
    {
        if(IsClientInGame(i))
        {
            if(GetUserFlagBits(i))
                iAdminCount++;
        }
    }
    
    if(!iAdminCount)
    {
        ServerCommand("sv_vote_issue_kick_allowed 1");
        iAdminCount = 0;
    }
    
    else
    {
        ServerCommand("sv_vote_issue_kick_allowed 0");
        iAdminCount = 0;
    }
}
 

Haseek

йфя
Сообщения
472
Реакции
79
Попробуй, не проверял
C-подобный:
public void OnClientPutInServer(int client)
{
    if(GetUserFlagBits(client))
    {
        ServerCommand("sv_vote_issue_kick_allowed 0");
    }
}

public void OnClientDisconnect(int client)
{
    int iAdminCount;
   
    for(int i = 1; i < MaxClients; i++)
    {
        if(IsClientInGame(i))
        {
            if(GetUserFlagBits(i))
                iAdminCount++;
        }
    }
   
    if(!iAdminCount)
    {
        ServerCommand("sv_vote_issue_kick_allowed 1");
        iAdminCount = 0;
    }
   
    else
    {
        ServerCommand("sv_vote_issue_kick_allowed 0");
        iAdminCount = 0;
    }
}
вроде не работает. тестил только на себе, пробовал с админкой и без заходить. в обеих случаях кик был недоступен
 

RudikS

Участник
Сообщения
130
Реакции
61
вроде не работает. тестил только на себе, пробовал с админкой и без заходить. в обеих случаях кик был недоступен
Так попробуй. Если заберешь у человека права, когда он на сервере, то будет баг.
C-подобный:
ConVar sv_vote_issue_kick_allowed;
int iAdminCount = 0;

public OnPluginStart()
{
    sv_vote_issue_kick_allowed = FindConVar("sv_vote_issue_kick_allowed");
   
    for(int i = 1; i <= MaxClients; i++)
    {
        if(IsClientInGame(i) && GetUserFlagBits(i))
        {
            iAdminCount++;
        }
    }

    if(!iAdminCount)
    {
        sv_vote_issue_kick_allowed.IntValue = 1;
    }
    else
    {
        sv_vote_issue_kick_allowed.IntValue = 0;
    }
}

public void OnClientPutInServer(int iClient)
{
    if(GetUserFlagBits(iClient))
    {
        iAdminCount++;

        if(iAdminCount == 1)
        {
            sv_vote_issue_kick_allowed.IntValue = 0;
        }
    }
}

public void OnClientDisconnect(int iClient)
{
    if(GetUserFlagBits(iClient))
    {
        iAdminCount--;

        if(!iAdminCount)
        {
            sv_vote_issue_kick_allowed.IntValue = 1;
        }
    }
}
 
Последнее редактирование:

Haseek

йфя
Сообщения
472
Реакции
79
Попробуй, не проверял
C-подобный:
public void OnClientPutInServer(int client)
{
    if(GetUserFlagBits(client))
    {
        ServerCommand("sv_vote_issue_kick_allowed 0");
    }
}

public void OnClientDisconnect(int client)
{
    int iAdminCount;
   
    for(int i = 1; i < MaxClients; i++)
    {
        if(IsClientInGame(i))
        {
            if(GetUserFlagBits(i))
                iAdminCount++;
        }
    }
   
    if(!iAdminCount)
    {
        ServerCommand("sv_vote_issue_kick_allowed 1");
        iAdminCount = 0;
    }
   
    else
    {
        ServerCommand("sv_vote_issue_kick_allowed 0");
        iAdminCount = 0;
    }
}
Так попробуй. Если заберешь у человека права, когда он на сервере, то будет баг.
C-подобный:
ConVar sv_vote_issue_kick_allowed;
int iAdminCount = 0;

public OnPluginStart()
{
    sv_vote_issue_kick_allowed = FindConVar("sv_vote_issue_kick_allowed");
  
    for(int i = 1; i <= MaxClients; i++)
    {
        if(IsClientInGame(i) && GetUserFlagBits(i))
        {
            iAdminCount++;
        }
    }

    if(!iAdminCount)
    {
        sv_vote_issue_kick_allowed.IntValue = 1;
    }
    else
    {
        sv_vote_issue_kick_allowed.IntValue = 0;
    }
}

public void OnClientPutInServer(int iClient)
{
    if(GetUserFlagBits(iClient))
    {
        iAdminCount++;

        if(iAdminCount == 1)
        {
            sv_vote_issue_kick_allowed.IntValue = 0;
        }
    }
}

public void OnClientDisconnect(int iClient)
{
    if(GetUserFlagBits(iClient))
    {
        iAdminCount--;

        if(!iAdminCount)
        {
            sv_vote_issue_kick_allowed.IntValue = 1;
        }
    }
}

Я с переменными немного вчера ошибся и у меня просто голосование за кик по деффолту было отключено.
Сейчас проверил с еще 3 игроками и голосование за кик работает даже когда есть админ на сервере
 

xstage

🏹
Сообщения
726
Реакции
754
Я с переменными немного вчера ошибся и у меня просто голосование за кик по деффолту было отключено.
Сейчас проверил с еще 3 игроками и голосование за кик работает даже когда есть админ на сервере

Вот так я проверял вроде работает
C-подобный:
public void OnPluginStart()
{
    HookEvent("player_team", EventChangeTeam);
}

public void EventChangeTeam(Event hEvent, const char[] sEvent, bool db)
{
    if(GetUserFlagBits(GetClientOfUserId(hEvent.GetInt("userid"))))
    {
        ServerCommand("sv_vote_issue_kick_allowed 0");
    }
}

public void OnClientDisconnect(int client)
{
    int iAdminCount;
    
    for(int i = 1; i < MaxClients; i++)
    {
        if(IsClientInGame(i) && i != client && !IsFakeClient(i))
        {
            if(GetUserFlagBits(i))
                iAdminCount++;
        }
    }
    
    if(!iAdminCount)
    {
        ServerCommand("sv_vote_issue_kick_allowed 1");
        iAdminCount = 0;
    }
    
    else
        ServerCommand("sv_vote_issue_kick_allowed 0");
}
 
Сверху Снизу