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

Fen1x

Участник
Сообщения
74
Реакции
10
Сделайте кто-то пожалуйста плагин/ новогодние шапки для всех игроков. К Новому году самое то.
 

babka68

Участник
Сообщения
2,124
Реакции
956
Сделайте кто-то пожалуйста плагин/ новогодние шапки для всех игроков. К Новому году самое то.
Тема 'Hats (Шапки) v1.0.4c'
Любая игра - Hats (Шапки) v1.0.4c
Сообщения автоматически склеены:

Если cs go
Тема '[CS:GO] Новогодние скины (new skelet + hitbox fixed)'
[CS:GO] Новогодние скины (new skelet + hitbox fixed)
 

top_play

Участник
Сообщения
3
Реакции
0
1. ScoreBattle
2. Суть в том, что теперь победа одной из команд зависит от того, сколько они убили, суммарно, противников. Если обе команды набрали одинаковое кол-во очков то ничья. После выигрыша одного из команд, карта не меняется а продолжается... Где-то был аналоговый плагин, только после победы одной из команд, он менял карту после этого. Хотелось бы ещё сделать так, чтобы была информация о том, сколько набили очков в HUD-е.
 

Ice_Sochi

Участник
Сообщения
709
Реакции
413
Доброго времени суток
Плагин не сбрасывает счет команд по раундам после смены карты, в итоге следущая карта стартуется с продолжением счета
Не мог бы кто подправить? Оффтоп
 

Вложения

  • gem_halftime_teamswap.sp
    8.4 КБ · Просмотры: 13

xstage

🏹
Сообщения
726
Реакции
754
Доброго времени суток
Плагин не сбрасывает счет команд по раундам после смены карты, в итоге следущая карта стартуется с продолжением счета
Не мог бы кто подправить? Оффтоп
Если правильно понял, то так, вроде
 

Вложения

  • gem_halftime_teamswap.sp
    8.5 КБ · Просмотры: 12

Yurka_Bear

Участник
Сообщения
61
Реакции
4
Всем привет. Можно пожалуйста написать простенький плагин. Чтоб cообщения такого типа, когда своего подстреливают, была на русском (unnamend attacked a teammate) CSS V34 . Sourcemode 1.10
 

babka68

Участник
Сообщения
2,124
Реакции
956

STINGER3663

Участник
Сообщения
3
Реакции
0
Всем привет, хотелось бы попробовать реализовать плагин, в котором вип игрок мог бы становиться предметом на карте на некоторое время (как в режиме prop hunt) т.е допустим бегу я, зашел в вип меню и выбрал предмет которым хочу стать на ограниченное время и что бы выбирать можно было 1 раз за раунд.
 

Ice_Sochi

Участник
Сообщения
709
Реакции
413
Есть переменная
C-подобный:
int ex = 1235442978
Можно как-то разбить ее на 5 других и затем соединить обратно в исходную, после изменений?
C-подобный:
a = 123; b = 5; c = 44; d = 29; e = 78
 

xstage

🏹
Сообщения
726
Реакции
754
Есть переменная
C-подобный:
int ex = 1235442978
Можно как-то разбить ее на 5 других и затем соединить обратно в исходную, после изменений?
C-подобный:
a = 123; b = 5; c = 44; d = 29; e = 78
Да такое будет сложно сделать, лучше брать строку и разбивать её по разделителю(ExplodeString), либо же преобразовать в строку и брать каждый символ отдельно, т.к char это массив символов, должно сработать.
Ну либо же все таки применять математические знания, если имеются. Могу лишь предположить, что первое число можно получить через деление и округление в наименьшую сторону, а последнее число можно получить как остаток от деления.
 

Ice_Sochi

Участник
Сообщения
709
Реакции
413
Всю голову сломал. Подскажите пожалуйста, как преобразовать текстовую строку вида "123, 456, 789, ..., 123" в числовой массив, где первым элементом будет 123, вторым - 456 и так далее, и затем этот массив после изменений обратно в текстовую строку?
 
Последнее редактирование:

☠ ÄйӃи ☠

Добрая душа
Сообщения
220
Реакции
86
Всю голову сломал. Подскажите пожалуйста, как преобразовать текстовую строку вида "123, 456, 789, ..., 123" в ArrayList, где первым элементом будет 123, вторым - 456 и так далее, и затем этот массив после изменений обратно в текстовую строку?
0 - Тест 1
1 - Тест 2
2 - Тест 3
3 - Тест 4
4 - Хз 5
5 - Что 6
6 - То 7
7 - Там 8
8 - Еще 9
9 - Может 0
Array 0 - Тест 1
Тест 1+дополнение
Тест 1+дополнение
Array 1 - Тест 2
Тест 2+дополнение
Тест 1+дополнение,Тест 2+дополнение
Array 2 - Тест 3
Тест 3+дополнение
Тест 1+дополнение,Тест 2+дополнение,Тест 3+дополнение
Array 3 - Тест 4
Тест 4+дополнение
Тест 1+дополнение,Тест 2+дополнение,Тест 3+дополнение,Тест 4+дополнение
Array 4 - Хз 5
Хз 5+дополнение
Тест 1+дополнение,Тест 2+дополнение,Тест 3+дополнение,Тест 4+дополнение,Хз 5+дополнение
Array 5 - Что 6
Что 6+дополнение
Тест 1+дополнение,Тест 2+дополнение,Тест 3+дополнение,Тест 4+дополнение,Хз 5+дополнение,Что 6+дополнение
Array 6 - То 7
То 7+дополнение
Тест 1+дополнение,Тест 2+дополнение,Тест 3+дополнение,Тест 4+дополнение,Хз 5+дополнение,Что 6+дополнение,То 7+дополнение
Array 7 - Там 8
Там 8+дополнение
Тест 1+дополнение,Тест 2+дополнение,Тест 3+дополнение,Тест 4+дополнение,Хз 5+дополнение,Что 6+дополнение,То 7+дополнение,Там 8+дополнение
Array 8 - Еще 9
Еще 9+дополнение
Тест 1+дополнение,Тест 2+дополнение,Тест 3+дополнение,Тест 4+дополнение,Хз 5+дополнение,Что 6+дополнение,То 7+дополнение,Там 8+дополнение,Еще 9+дополнение
Array 9 - Может 0
Может 0+дополнение
Тест 1+дополнение,Тест 2+дополнение,Тест 3+дополнение,Тест 4+дополнение,Хз 5+дополнение,Что 6+дополнение,То 7+дополнение,Там 8+дополнение,Еще 9+дополнение,Может 0+дополнение
Конец! =)

sourcepawn TEST:
char g_sTest[] = "Тест 1,Тест 2,Тест 3,Тест 4,Хз 5,Что 6,То 7,Там 8,Еще 9,Может 0",
    g_sTest2[sizeof g_sTest][256],
    sTemp[4096];

int g_iTest;
ArrayList g_aArrayList;

public void OnClientPostAdminCheck(int client)
{
    Start();
}

void Start()
{
    g_aArrayList = new ArrayList(ByteCountToCells(sizeof g_sTest));
    if ((g_iTest = ExplodeString(g_sTest, ",", g_sTest2, sizeof g_sTest, sizeof g_sTest2[])) > 0)
    {
        PrintToServer("Строка разбита на %i новых.", g_iTest);
        for (int i = 0; i < g_iTest; i++)
        {
            g_aArrayList.PushString(g_sTest2[i]);
            PrintToServer("%i - %s", i, g_sTest2[i]);
        }
    }
    else PrintToServer("В строке нет символа ,");

    ChangeArrayString();
}

void ChangeArrayString()
{
    char sBuf[256];
    for(int i = 0; i < g_aArrayList.Length; i++)
    {
        g_aArrayList.GetString(i, sBuf, sizeof sBuf);
        PrintToServer("Array %i - %s", i, sBuf);
        FormatEx(sBuf, sizeof sBuf, "%s+дополнение", sBuf); // sBuf2, sizeof sBuf2, "%s", "Тут ваша строка если вам не дополнить строку надо"
        g_aArrayList.SetString(i, sBuf);
        g_aArrayList.GetString(i, sBuf, sizeof sBuf);
        PrintToServer(sBuf);
        if(i == 0)
        {
            FormatEx(sTemp, sizeof sTemp, "%s", sBuf);
            PrintToServer(sTemp);
        }
        else
        {
            FormatEx(sTemp, sizeof sTemp, "%s,%s", sTemp, sBuf);
            PrintToServer(sTemp);
        }
    }
    PrintToServer("Конец! =)");
}

Может не совсем правильно. Но получить и разделить строки + изменить и записать и обернуть всё в строку обратно со всеми изменениями.
По итогу мы получим - sTemp = "Тест 1+дополнение,Тест 2+дополнение,Тест 3+дополнение,Тест 4+дополнение,Хз 5+дополнение,Что 6+дополнение,То 7+дополнение,Там 8+дополнение,Еще 9+дополнение,Может 0+дополнение"
 

Ice_Sochi

Участник
Сообщения
709
Реакции
413
Но получить и разделить строки + изменить и записать и обернуть всё в строку обратно со всеми изменениями.
По итогу мы получим - sTemp = "Тест 1+дополнение,Тест 2+дополнение,Тест 3+дополнение,Тест 4+дополнение,Хз 5+дополнение,Что 6+дополнение,То 7+дополнение,Там 8+дополнение,Еще 9+дополнение,Может 0+дополнение"
Спасибо огромное!
Все работает
 

gamebreaker

Участник
Сообщения
10
Реакции
0
retakes_autoplant
I want to working on CS:S v34 but gives errors:
Property "m_bBombPlanted" not found on the gamerules proxy
and
Exception reported: SDKHooks_DropWeapon is not supported on this engine.
Can someone fix this please?
 

Grey83

не пишу плагины с весны 2022
Сообщения
8,520
Реакции
4,979
@gamebreaker, the error with the "m_bBombPlanted" parameter can be fixed, but with the hook, most likely no.
 

gamebreaker

Участник
Сообщения
10
Реакции
0
@gamebreaker, the error with the "m_bBombPlanted" parameter can be fixed, but with the hook, most likely no.
Okey, i found another plugin autoplantv5.sp and now shows these errors and maybe this can be fixed?
error:
L 01/29/2022 - 16:00:37: SourceMod error session started
L 01/29/2022 - 16:00:37: Info (map "de_dust2") (file "D:\Servers\retake_v34\cstrike\addons\sourcemod\logs\errors_20220129.log")
L 01/29/2022 - 16:00:37: [SM] Exception reported: Client index 13 is invalid
L 01/29/2022 - 16:00:37: [SM] Blaming: autoplantv5.smx
L 01/29/2022 - 16:00:37: [SM] Call stack trace:
L 01/29/2022 - 16:00:37: [SM]   [0] IsClientInGame
L 01/29/2022 - 16:00:37: [SM]   [1] Line 52, D:\Servers\retake_v34\cstrike\addons\sourcemod\scripting\autoplantv5.sp::OnRoundStart
L 01/29/2022 - 16:00:50: [SM] Exception reported: Client index 13 is invalid
L 01/29/2022 - 16:00:50: [SM] Blaming: autoplantv5.smx
L 01/29/2022 - 16:00:50: [SM] Call stack trace:
L 01/29/2022 - 16:00:50: [SM]   [0] IsClientInGame
L 01/29/2022 - 16:00:50: [SM]   [1] Line 52, D:\Servers\retake_v34\cstrike\addons\sourcemod\scripting\autoplantv5.sp::OnRoundStart
L 01/29/2022 - 16:01:04: [SM] Exception reported: Invalid game event handle 0 (error 4)
L 01/29/2022 - 16:01:04: [SM] Blaming: autoplantv5.smx
L 01/29/2022 - 16:01:04: [SM] Call stack trace:
L 01/29/2022 - 16:01:04: [SM]   [0] Event.SetInt
L 01/29/2022 - 16:01:04: [SM]   [1] Line 95, D:\Servers\retake_v34\cstrike\addons\sourcemod\scripting\autoplantv5.sp::SendBombBegin
L 01/29/2022 - 16:01:04: [SM]   [2] Line 61, D:\Servers\retake_v34\cstrike\addons\sourcemod\scripting\autoplantv5.sp::OnRoundStart
L 01/29/2022 - 16:03:36: [SM] Exception reported: Invalid game event handle 0 (error 4)
L 01/29/2022 - 16:03:36: [SM] Blaming: autoplantv5.smx
L 01/29/2022 - 16:03:36: [SM] Call stack trace:
L 01/29/2022 - 16:03:36: [SM]   [0] Event.SetInt
L 01/29/2022 - 16:03:36: [SM]   [1] Line 95, D:\Servers\retake_v34\cstrike\addons\sourcemod\scripting\autoplantv5.sp::SendBombBegin
L 01/29/2022 - 16:03:36: [SM]   [2] Line 61, D:\Servers\retake_v34\cstrike\addons\sourcemod\scripting\autoplantv5.sp::OnRoundStart
 

Grey83

не пишу плагины с весны 2022
Сообщения
8,520
Реакции
4,979
@gamebreaker, nedded change for(int iClient = 1; iClient <= MaxClients+1; iClient++) to for(int iClient = 1; iClient <= MaxClients; iClient++) (line 50).
 

gamebreaker

Участник
Сообщения
10
Реакции
0
@gamebreaker, nedded change for(int iClient = 1; iClient <= MaxClients+1; iClient++) to for(int iClient = 1; iClient <= MaxClients; iClient++) (line 50).
I changed line 50 and the GetPlayerWeaponSlot(iClient, 4) to GetPlayerWeaponSlot(iClient, 5) but still nothing, because, with number 4, the c4 is disappearing. In github found another retakes_autoplant without sdkhooks and only gives this error: Exception reported: Property "m_bBombPlanted" not found on the gamerules proxy
I want this for my cs:s retakes server, so i need it this...
 

gamebreaker

Участник
Сообщения
10
Реакции
0
Последнее редактирование:
Сверху Снизу