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

AlexPa1

Участник
Сообщения
292
Реакции
54
upload_2018-7-19_7-49-38.png
 

Kruzya

Участник
Сообщения
12,970
Реакции
10,914
@alex123pavlov, компилятор по факту умный. Он и сам исправил эту ошибку, просто оповестил о том, что она есть. Но вот, если мозолит глаза.
 

Вложения

  • knife_dm.sp
    5.9 КБ · Просмотры: 9

AlexPa1

Участник
Сообщения
292
Реакции
54
@alex123pavlov, компилятор по факту умный. Он и сам исправил эту ошибку, просто оповестил о том, что она есть. Но вот, если мозолит глаза.
Блин проскакивает баг, пропадает оружие и игрок полностью невидимый =)
Round MVP disabled: sv_nomvp is set.
Round MVP disabled: sv_nomvp is set.
Dynamic prop prop_dynamic: no sequence named:idle
Bad SetLocalOrigin(133098.140625,-131274.984375,2568.184814) on prop_dynamic
Dynamic prop prop_dynamic: no sequence named:idle
Dynamic prop prop_dynamic: no sequence named:idle
Dynamic prop prop_dynamic: no sequence named:idle
Game will not start until both teams have players.
Dropped R8 Ace! from server (Disconnect by user.)
Entity 123 (class 'prop_dynamic') reported ENTITY_CHANGE_NONE but 'm_hOwnerEntity' changed.
Entity 124 (class 'prop_dynamic') reported ENTITY_CHANGE_NONE but 'm_hOwnerEntity' changed.
Bad SetLocalOrigin(133355.281250,-131708.984375,3120.969482) on prop_dynamic
Game will not start until both teams have players.
Bad SetLocalOrigin(122846.851562,-131342.703125,480.969452) on prop_dynamic
Round MVP disabled: sv_nomvp is set.
Bad SetLocalOrigin(122846.851562,-131342.703125,480.969452) on prop_dynamic
Round MVP disabled: sv_nomvp is set.
Dynamic prop prop_dynamic: no sequence named:idle
Dynamic prop prop_dynamic: no sequence named:idle
Dynamic prop prop_dynamic: no sequence named:idle
Round MVP disabled: sv_nomvp is set.
Dynamic prop prop_dynamic: no sequence named:idle
Round MVP disabled: sv_nomvp is set.
Dynamic prop prop_dynamic: no sequence named:idle
Dynamic prop prop_dynamic: no sequence named:idle
Dynamic prop prop_dynamic: no sequence named:idle
01 "Server Hud Logo" (2.2) by ReFlex
02 "Basic Chat" (1.9.0.6226) by AlliedModders LLC
03 "Basic Info Triggers" (1.9.0.6226) by AlliedModders LLC
04 "Map Nominations" (1.9.0.6226) by AlliedModders LLC
05 "MapChooser" (1.9.0.6226) by AlliedModders LLC
06 "[OS] Overlay System" (2.0) by suremiur (Sure666), helped Rostu and Discord band.
07 "Basic Commands" (1.9.0.6226) by AlliedModders LLC
08 "Anti-Flood" (1.9.0.6226) by AlliedModders LLC
09 "Fun Votes" (1.9.0.6226) by AlliedModders LLC
10 "Basic Ban Commands" (1.9.0.6226) by AlliedModders LLC
11 "Nextmap" (1.9.0.6226) by AlliedModders LLC
12 "RealisticBulletSound" (1.3.12.23) by javalia
13 "[VIP] Regen Armor" (1.1) by R1KO
14 "[VIP] Core" (2.1.1 R) by R1KO (skype: vova.andrienko1)
15 "[VIP] Trails" (1.2) by R1KO
16 "[VIP] Paint" (1.6) by asdf
17 "[VIP] Regen HP" (1.1) by R1KO
18 "[VIP] Skins" (2.0) by R1KO (skype: vova.andrienko1)
19 "[VIP] Equipments" (1.1) by R1KO
20 "Client Preferences" (1.9.0.6226) by AlliedModders LLC
21 "Advanced Parachute" (1.0) by ESK0
22 "Sound Commands" (1.9.0.6226) by AlliedModders LLC
23 "Admin Menu" (1.9.0.6226) by AlliedModders LLC
24 "Admin File Reader" (1.9.0.6226) by AlliedModders LLC
25 "[CSS/CSGO] Shot Administration" (1.00) by Arkarr
26 "[CSGO] QuakeSounds Overlays edition" (1.0) by TonyBaretta
27 "Basic Votes" (1.9.0.6226) by AlliedModders LLC
28 "[ Menu Creator ]" (3.0.0.1) by AlexTheRegent
29 "Fun Commands" (1.9.0.6226) by AlliedModders LLC
30 "Reserved Slots" (1.9.0.6226) by AlliedModders LLC
31 "Player Commands" (1.9.0.6226) by AlliedModders LLC
32 "Basic Comm Control" (1.9.0.6226) by AlliedModders LLC
33 "Admin Help" (1.9.0.6226) by AlliedModders LLC
34 "[VIP] Weapon Jumping" (1.1) by R1KO
35 "[VIP] Armor" (1.1) by R1KO (skype: vova.andrienko1)
36 "Team NoBlock" (1.0.1) by GoDtm666
37 "Knife DeathMatch" (1.3) by R1KO
38 "|===== [ Grenade Trails ] =====|" (1.0) by JackNike
39 "Rock The Vote" (1.9.0.6226) by AlliedModders LLC
40 "SoDStats" (1.0.11) by ]SoD[ Frostbyte and www.MyArena.ru
--- Добавлено позже ---
Друзья может не только мне пригодится этот плагин в 2018, исправьте пожалуйста
upload_2018-7-19_10-28-35.png
 

Вложения

  • sm_gunmenu.sp
    21.5 КБ · Просмотры: 4
Последнее редактирование:

Felton

Участник
Сообщения
799
Реакции
59
Помогите не пойму в чём дело.Уже неделю как перестал работать этот плагин [CS: Source] - Hide SourceTV
В последнее время не устанавливал на сервер ни каких плагинов.Ни чего не обновлял.Всё шло ровно и красиво и вдруг не работает.
Сервер Counter-Strike Source v.34.Есть идеи почему так произошло.Тех поддержка молчит.
 
Последнее редактирование:

BossKotoriiNeSmok

Участник
Сообщения
976
Реакции
189
@BossKotoriiNeSmok, Оффтоп
PHP:
bool    bUsed[MAXPLAYERS+1];
int iHP,
    g_iMaxHealth;


public Plugin myinfo =
{
    name        = "Medic",
    author        = "Grey83",
    description    = "Лечение единожды за раунд игрока, написавшего команду",
    version        = "1.0",
    url            = "https://steamcommunity.com/groups/grey83ds"
};

public void OnPluginStart()
{
    ConVar CVar;
    (CVar = CreateConVar("sm_medic_addhp", "50", "На какое значение увеличивать здоровье (0 - отключить плагин)", _, true)).AddChangeHook(CVarChanged_AddHP);
    iHP = CVar.IntValue;

    (CVar = CreateConVar("sm_medic_maxhp", "100", "Максимальное значение HP", _, true, 1.0)).AddChangeHook(CVarChanged_MaxHP);
    g_iMaxHealth = CVar.IntValue;

    HookEvent("round_start", Event_NewRound);

    RegConsoleCmd("sm_medic", Cmd_Medic);
    RegConsoleCmd("sm_med", Cmd_Medic);

    AutoExecConfig(true, "medic");
}

public void CVarChanged_MaxHP(ConVar CVar, const char[] oldVal, const char[] newVal)
{
    g_iMaxHealth = CVar.IntValue;
}

public void CVarChanged_AddHP(ConVar CVar, const char[] oldVal, const char[] newVal)
{
    iHP = CVar.IntValue;
}

public void Event_NewRound(Event event, char[] name, bool dontBroadcast)
{
    for(int i; i <= MaxClients; i++) bUsed[i] = false;
}

public Action Cmd_Medic(int client, int args)
{
    if(!client || !iHP || !IsPlayerAlive(client))
        return Plugin_Handled;

    if(bUsed[client])
    {
        PrintToChat(client, "Вы можете использовать эту команду только 1 раз за раунд!");
        return Plugin_Handled;
    }

    int HP;
    if((HP = GetClientHealth(client) + iHP) <= g_iMaxHealth) {
        PrintToChat(client, "Ваше здоровье восполнено");
        SetEntityHealth(client, HP);
        bUsed[client] = true;
    }
    return Plugin_Handled;
}
А можно как то сделать,типо он написал !medic и только через 5 секунд команда активировалась,ну и естественно отсчет в чате что бы был?
--- Добавлено позже ---
C-подобный:
L 07/19/2018 - 12:05:02: Info (map "de_dust2") (file "errors_20180719.log")
L 07/19/2018 - 12:05:02: [SM] Exception reported: Array index out-of-bounds (index 8, limit 8)
L 07/19/2018 - 12:05:02: [SM] Blaming: rankme.smx
L 07/19/2018 - 12:05:02: [SM] Call stack trace:
L 07/19/2018 - 12:05:02: [SM]   [1] Line 1520, H:\VEC\CSGO\sourcemod-1.5.0-hg3756-windows\addons\sourcemod\scripting\rankme.sp::EventPlayerHurt
Sm 1.9, как исправить эту ошибку,всё работает,но сыпит ошибку,бесит.
--- Добавлено позже ---
@BossKotoriiNeSmok, Оффтоп
PHP:
bool    bUsed[MAXPLAYERS+1];
int iHP,
    g_iMaxHealth;


public Plugin myinfo =
{
    name        = "Medic",
    author        = "Grey83",
    description    = "Лечение единожды за раунд игрока, написавшего команду",
    version        = "1.0",
    url            = "https://steamcommunity.com/groups/grey83ds"
};

public void OnPluginStart()
{
    ConVar CVar;
    (CVar = CreateConVar("sm_medic_addhp", "50", "На какое значение увеличивать здоровье (0 - отключить плагин)", _, true)).AddChangeHook(CVarChanged_AddHP);
    iHP = CVar.IntValue;

    (CVar = CreateConVar("sm_medic_maxhp", "100", "Максимальное значение HP", _, true, 1.0)).AddChangeHook(CVarChanged_MaxHP);
    g_iMaxHealth = CVar.IntValue;

    HookEvent("round_start", Event_NewRound);

    RegConsoleCmd("sm_medic", Cmd_Medic);
    RegConsoleCmd("sm_med", Cmd_Medic);

    AutoExecConfig(true, "medic");
}

public void CVarChanged_MaxHP(ConVar CVar, const char[] oldVal, const char[] newVal)
{
    g_iMaxHealth = CVar.IntValue;
}

public void CVarChanged_AddHP(ConVar CVar, const char[] oldVal, const char[] newVal)
{
    iHP = CVar.IntValue;
}

public void Event_NewRound(Event event, char[] name, bool dontBroadcast)
{
    for(int i; i <= MaxClients; i++) bUsed[i] = false;
}

public Action Cmd_Medic(int client, int args)
{
    if(!client || !iHP || !IsPlayerAlive(client))
        return Plugin_Handled;

    if(bUsed[client])
    {
        PrintToChat(client, "Вы можете использовать эту команду только 1 раз за раунд!");
        return Plugin_Handled;
    }

    int HP;
    if((HP = GetClientHealth(client) + iHP) <= g_iMaxHealth) {
        PrintToChat(client, "Ваше здоровье восполнено");
        SetEntityHealth(client, HP);
        bUsed[client] = true;
    }
    return Plugin_Handled;
}
И можно еще добавить,когда у человек больше,чем 50 хп,что бы ему писало,оту такое чувство,что плагин не работает:D
 

Вложения

  • rankme.sp
    82.5 КБ · Просмотры: 8
Последнее редактирование:

rejchev

менеджер клоунов
Сообщения
1,669
Реакции
1,291
C-подобный:
L 07/19/2018 - 12:05:02: Info (map "de_dust2") (file "errors_20180719.log")
L 07/19/2018 - 12:05:02: [SM] Exception reported: Array index out-of-bounds (index 8, limit 8)
L 07/19/2018 - 12:05:02: [SM] Blaming: rankme.smx
L 07/19/2018 - 12:05:02: [SM] Call stack trace:
L 07/19/2018 - 12:05:02: [SM]   [1] Line 1520, H:\VEC\CSGO\sourcemod-1.5.0-hg3756-windows\addons\sourcemod\scripting\rankme.sp::EventPlayerHurt
Level Ranks - полностью рабочий аналог с главным отличием, он поддерживается автором.
 

komashchenko

Идиот
Сообщения
916
Реакции
2,569
@BossKotoriiNeSmok, это из-за шеи
строка 1516, сделай так

PHP:
        if (hitgroup == 0) // Player was hit by knife, he, flashbang, or smokegrenade.
            return;
        if(hitgroup == 8) hitgroup = 1; //Приравниваем шею к голове
 

BossKotoriiNeSmok

Участник
Сообщения
976
Реакции
189
@BossKotoriiNeSmok, это из-за шеи
строка 1516, сделай так

PHP:
        if (hitgroup == 0) // Player was hit by knife, he, flashbang, or smokegrenade.
            return;
        if(hitgroup == 8) hitgroup = 1; //Приравниваем шею к голове
Должно получится так?
C-подобный:
{
    if(!g_bEnabled || !g_bGatherStats)
        return;
    new victim = GetClientOfUserId(GetEventInt(event,"userid"));
    new attacker = GetClientOfUserId(GetEventInt(event, "attacker"));
    if(!g_bRankBots && (attacker == 0 || IsFakeClient(victim) || IsFakeClient(attacker)))
        return;
    if(victim != attacker && attacker >0 && attacker <MAXPLAYERS){
        new hitgroup = GetEventInt(event,"hitgroup");
        if (hitgroup == 0) // Player was hit by knife, he, flashbang, or smokegrenade.
            return;
        if(hitgroup == 8) hitgroup = 1; //Приравниваем шею к голове
            return;
        g_aStats[attacker][HITS]++;
        g_aSession[attacker][HITS]++;
        g_aHitBox[attacker][hitgroup]++;
        //PrintToChat(attacker, "Hitgroup %i: %i hits", hitgroup, g_aHitBox[attacker][hitgroup]);
        //PrintToServer("Stats Hits: %i\nSession Hits: %i\nHitBox %i -> %i",g_aStats[attacker][HITS],g_aSession[attacker][HITS],hitgroup,g_aHitBox[attacker][hitgroup]);
    }
}
--- Добавлено позже ---
Level Ranks - полностью рабочий аналог с главным отличием, он поддерживается автором.
Да,вот только там нет,топ хедшотов,топ оружий и т.п.
 

CAH4E3

Сосанчез.
Сообщения
1,597
Реакции
779
Level Ranks - полностью рабочий аналог с главным отличием, он поддерживается автором.
Это да, но только при режиме статистики ELO у игроков с высоким званием снимается по 30+ очков за смерть, что ни очень приятно :ab:
RankMe в этом плане лучше
 

BossKotoriiNeSmok

Участник
Сообщения
976
Реакции
189
бл,скомпильте плез,что-то не могу.
 

Вложения

  • rankme.sp
    82.6 КБ · Просмотры: 4

Grey83

не пишу плагины с весны 2022
Сообщения
8,521
Реакции
4,980
@alex123pavlov, эти варнинги, в принципе, можно игнорировать: они говорят в в твоём случае, что в следующих версиях SM эти функции/дефайны перестанут использоваться и придётся переписывать плагин, чтобы он работал.
А сейчас всё ещё они будут корректно обрабатываться.
 

rejchev

менеджер клоунов
Сообщения
1,669
Реакции
1,291
@Kr1kuzya, чет я сомневаюсь, что lok1 этим занимается, ссылку можно?
 

komashchenko

Идиот
Сообщения
916
Реакции
2,569
Должно получится так?
{
if(!g_bEnabled || !g_bGatherStats)
return;
new victim = GetClientOfUserId(GetEventInt(event,"userid"));
new attacker = GetClientOfUserId(GetEventInt(event, "attacker"));
if(!g_bRankBots && (attacker == 0 || IsFakeClient(victim) || IsFakeClient(attacker)))
return;
if(victim != attacker && attacker >0 && attacker <MAXPLAYERS){
new hitgroup = GetEventInt(event,"hitgroup");
if (hitgroup == 0) // Player was hit by knife, he, flashbang, or smokegrenade.
return;
if(hitgroup == 8) hitgroup = 1; //Приравниваем шею к голове
return;
g_aStats[attacker][HITS]++;
g_aSession[attacker][HITS]++;
g_aHitBox[attacker][hitgroup]++;
//PrintToChat(attacker, "Hitgroup %i: %i hits", hitgroup, g_aHitBox[attacker][hitgroup]);
//PrintToServer("Stats Hits: %i\nSession Hits: %i\nHitBox %i -> %i",g_aStats[attacker][HITS],g_aSession[attacker][HITS],hitgroup,g_aHitBox[attacker][hitgroup]);
}
}
Оффтоп
 

Kruzya

Участник
Сообщения
12,970
Реакции
10,914
@Skeriiz, не локи сейчас поддерживает Ранкми для ксго, а Кенто.
rogeraabbccdd/Kento-Rankme
Но он чисто пуллы принимает сейчас. Сам ничего не делает.
 
Сверху Снизу