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

Grey83

не пишу плагины с весны 2022
Сообщения
8,519
Реакции
4,979

BioPsyHoz

Участник
Сообщения
27
Реакции
2
А может кто нибудь написать скрипт с плагином под Level ranks? , тот кто на 1м месте в топе получает услугу вип и она у него будет до тех пор пока кто то другой не выйдет на 1е место , но если это админ то ему ничего не даётся
 

StrAnn1k

Участник
Сообщения
237
Реакции
23

Kruzya

Участник
Сообщения
12,970
Реакции
10,914
Где что убрать то ?
Ссылку не открывали?
При открытии, открывается исходный код конкретного файла, где жёлтым подсвечивается то, что надо удалить:
1570898364672.png
 

delhex

Участник
Сообщения
54
Реакции
5
Нужен плагин (CS:GO), который бы отключал на указанных картах определённые плагины.
Оффтоп
Сообщения автоматически склеены:

Нашёл 😇
Оффтоп
 
Последнее редактирование:

The_C@t

Слабоумие и отвага
Сообщения
272
Реакции
142
Уважаемые спецы! Для CSGO Нужен оч простой плагин автобаланса, но не ждущий окончания раунда, а с таймером, выравнивающий команды на ходу, скажем раз в 30 секунд.
Время раунда у меня зависит от выполнения задачи карты, поэтому бывают сильные дисбалансы. Типа как для DM
Буду признателен за помощь)
Была вот такая штука, но чет не пашет похоже
 

Туник

Участник
Сообщения
1,281
Реакции
263
Уважаемые спецы! Для CSGO Нужен оч простой плагин автобаланса, но не ждущий окончания раунда, а с таймером, выравнивающий команды на ходу, скажем раз в 30 секунд.
Время раунда у меня зависит от выполнения задачи карты, поэтому бывают сильные дисбалансы. Типа как для DM
Буду признателен за помощь)
Была вот такая штука, но чет не пашет похоже
В конфиге укажи - mp_autoteambalance 0
 

Вложения

  • Autobalance.sp
    2.7 КБ · Просмотры: 18

vitek37politov

Участник
Сообщения
49
Реакции
1
Помогите исправить проблему.
Питомцев приходится включать каждый раунд. Игра css v91
 

Вложения

  • VIP_Pets.sp
    10.3 КБ · Просмотры: 7

FokS

Участник
Сообщения
422
Реакции
52
Может кто исправить плагин? Плагин не перемешивает игроков в конце раунда.
L 10/14/2019 - 20:00:50: [SM] Exception reported: Client index 0 is not valid
L 10/14/2019 - 20:00:50: [SM] Blaming: sm_mixing_commands.smx
L 10/14/2019 - 20:00:50: [SM] Call stack trace:
L 10/14/2019 - 20:00:50: [SM] [0] CS_SwitchTeam
L 10/14/2019 - 20:00:50: [SM] [1] Line 97, C:\Users\admin\Desktop\SM 1.9\addons\sourcemod\scripting\sm_mixing_commands.sp::Event_OnRoundEnd
 

Вложения

  • sm_mixing_commands.sp
    2.2 КБ · Просмотры: 8

kleuser

Участник
Сообщения
1,838
Реакции
732
Помогите пожалуйста исправить плагин.
Иногда некоторые игроки могут наносить урон с ножа. Нужно что бы этого не происходило.
Игра CS:GO

C-подобный:
#include <sourcemod>
#include <sdktools>
#include <sdkhooks>

public OnPluginStart()
{
    
    for (new client = 1; client <= MaxClients; client++)
    {
        if (IsClientInGame(client))
        {
            SDKHook(client, SDKHook_OnTakeDamage, TakeDamageHook);
        }
    }
}

public OnClientPutInServer(client)
{
    SDKHook(client, SDKHook_OnTakeDamage, TakeDamageHook);
}

public Action:TakeDamageHook(client, &attacker, &inflictor, &Float:damage, &damagetype)
{
    if ( (client>=1) && (client<=MaxClients) && (attacker>=1) && (attacker<=MaxClients) && (attacker==inflictor) )
    {
        decl String:WeaponName[64];
        GetClientWeapon(attacker, WeaponName, sizeof(WeaponName));
        if (StrContains(WeaponName, "knife", false) != -1)
        {
            damage = 0.0;
            return Plugin_Changed;
        }
    }
    return Plugin_Continue;
}
 

Kruzya

Участник
Сообщения
12,970
Реакции
10,914
@kleuser, попробуйте. Проверить не на чём.
Но вообще урон, судя по всему, от Байонета мог проходить.

C-подобный:
#include <sourcemod>
#include <sdktools>
#include <sdkhooks>

#define IsValidClientId(%0)    (%0 > 0 && %0 <= MaxClients)
#pragma newdecls  required
#pragma semicolon 1

public void OnPluginStart()
{
    for (int client = 1; client <= MaxClients; client++)
    {
        if (IsClientInGame(client))
        {
            SDKHook(client, SDKHook_OnTakeDamage, TakeDamageHook);
        }
    }
}

public void OnClientPutInServer(int client)
{
    SDKHook(client, SDKHook_OnTakeDamage, TakeDamageHook);
}

public Action TakeDamageHook(int client, int &attacker, int &inflictor, float &damage, int &damagetype)
{
    if (IsValidClientId(client) && IsValidClientId(attacker) && (inflictor == 0 || inflictor == attacker))
    {
        char szWeaponName[64];
        GetClientWeapon(attacker, szWeaponName, sizeof(szWeaponName));
        if (!strncmp(szWeaponName[7], "knife", 5) || !strncmp(szWeaponName[7], "bayonet", 7))
        {
            damage = 0.0;
            return Plugin_Changed;
        }
    }
    return Plugin_Continue;
}
 

Grey83

не пишу плагины с весны 2022
Сообщения
8,519
Реакции
4,979
Там не нужно #include <sourcemod> (компилятор сам добавит) и #include <sdktools> (не используется же)
Да и #pragma newdecls required с #pragma semicolon 1 можно в начало поставить, т.к. код всё равно не скомпилится на SM старше, чем 1.7
Ну и проверку класса оружия можно ещё проще и быстрей сделать:
C-подобный:
#pragma newdecls required
#pragma semicolon 1

#include <sdkhooks>

public void OnPluginStart()
{
    for(int i = 1; i <= MaxClients; i++) SDKHook(i, SDKHook_OnTakeDamage, OnTakeDamage);
}

public void OnClientPutInServer(int client)
{
    SDKHook(client, SDKHook_OnTakeDamage, OnTakeDamage);
}

public Action OnTakeDamage(int victim, int& attacker, int& inflictor, float& damage, int& damagetype)
{
    if(IsClientValid(victim) && (!inflictor || inflictor == attacker) && IsClientValid(attacker)
    && IsClientInGame(attacker))
    {
        static char wpn[32];
        GetClientWeapon(attacker, wpn, sizeof(wpn));
        if(wpn[7] == 'b' && wpn[8] == 'a' || wpn[7] == 'k')
        {
            damage = 0.0;
            return Plugin_Changed;
        }
    }
    return Plugin_Continue;
}

stock bool IsClientValid(int client)
{
    return client > 0 && client <= MaxClients;
}
 

skywalker

Участник
Сообщения
1,153
Реакции
263
Если такой плагин, чтобы таймер останавливался, кто проходит карту на паутинке?
 
Сверху Снизу