[VIP] Duck Speed

[VIP] Duck Speed 1.0.0

OkyHek

Участник
Сообщения
420
Реакции
435
  • Автор ресурса
  • #1
OkyHp добавил(а) новый ресурс:

[VIP] Duck Speed - Данный плагин убирает замедление скорости у приседания, для VIP-игроков.

Данный плагин убирает замедление скорости у приседания, для VIP-игроков.
Есть нативная возможность изменить скорость.

>> Оригинальный плагин <<

Видео демонстрация:

Узнать больше об этом ресурсе...
 

September

Участник
Сообщения
5,238
Реакции
2,742
  • Команда форума
  • #2
"ru" "Отключить замедление скорости при приседании"

а такой длинный текст точно помещается в меню вип?
 

OkyHek

Участник
Сообщения
420
Реакции
435
  • Автор ресурса
  • #3
"ru" "Отключить замедление скорости при приседании"

а такой длинный текст точно помещается в меню вип?
Должно поместиться, но если знаешь как сократить, я точно не буду против).
 

WodiX

Участник
Сообщения
202
Реакции
29
Тут небольшая проблемка! Есть данный модуль для шопа но нужно еще и ядро Duck Speed
Благодаря этому плагины конфликтуют.

L 10/31/2021 - 12:53:25: [SM] Exception reported: Failed to create native "GetDuckSpeed", name is probably already in use
L 10/31/2021 - 12:53:25: [SM] Blaming: vip\VIP_Duck_Speed.smx
L 10/31/2021 - 12:53:25: [SM] Call stack trace:
L 10/31/2021 - 12:53:25: [SM] [0] CreateNative
L 10/31/2021 - 12:53:25: [SM] [1] Line 33, D:\Content\SM Compiler\6451 (1.10)\scripting\VIP_Duck_Speed.sp::AskPluginLoad2
L 10/31/2021 - 12:53:25: [SM] Failed to load plugin "vip\VIP_Duck_Speed.smx": unexpected error 23 in AskPluginLoad callback.
 

BloodyAngel

Участник
Сообщения
72
Реакции
54
Собственно, вот всё, что нужно было сделать, чтобы это был не переписанный оригинал, а модуль к нему:
C++:
#pragma semicolon 1
#pragma newdecls required

#include <sourcemod>
#include <duck_speed>
#include <vip_core>

int    g_bDuckSpeedState[MAXPLAYERS + 1] = {0, ...};

static const char g_sFeature[] = "DuckSpeed";

public Plugin myinfo =
{
    name = "[VIP] Duck Speed",
    author = "Wend4r",
    version = "1.0.0",
    url = "Discord: Wend4r#0001 | VK: vk.com/wend4r"
}

public APLRes AskPluginLoad2(Handle hMySelf, bool bLate, char[] sError, int iErrorSize)
{
    if(GetEngineVersion() != Engine_CSGO)
    {
        strcopy(sError, iErrorSize, "This plugin works only on CS:GO");
        return APLRes_SilentFailure;
    }
    return APLRes_Success;
}

public void OnPluginStart()
{
    if(VIP_IsVIPLoaded())
    {
        VIP_OnVIPLoaded();
    }
}

public void VIP_OnVIPLoaded()
{
    VIP_RegisterFeature(g_sFeature, BOOL);
}

public void OnPluginEnd()
{
    if(CanTestFeatures() && GetFeatureStatus(FeatureType_Native, "VIP_UnregisterFeature") == FeatureStatus_Available)
    {
        VIP_UnregisterFeature(g_sFeature);
    }
}

public void OnClientDisconnect(int iClient)
{
    g_bDuckSpeedState[iClient] = 0;
}

public void VIP_OnVIPClientLoaded(int iClient)
{
    g_bDuckSpeedState[iClient] = view_as<int>(VIP_GetClientFeatureStatus(iClient, g_sFeature));
}

public Action VIP_OnFeatureToggle(int iClient, const char[] szFeature, VIP_ToggleState eOldStatus, VIP_ToggleState &eNewStatus)
{
    if(StrContains(szFeature, g_sFeature) != -1)
    {
        g_bDuckSpeedState[iClient] = view_as<int>(eNewStatus);
    }
    return Plugin_Continue;
}

public Action OnPlayerDuck(int iClient, float &flSpeed)
{
    if(!VIP_IsClientVIP(iClient) || g_bDuckSpeedState[iClient] == 0)
    {
        return Plugin_Handled;
    }
    return Plugin_Continue;
}
 

AzureLane

Участник
Сообщения
51
Реакции
32
Собственно, вот всё, что нужно было сделать, чтобы это был не переписанный оригинал, а модуль к нему:
C++:
#pragma semicolon 1
#pragma newdecls required

#include <sourcemod>
#include <duck_speed>
#include <vip_core>

int    g_bDuckSpeedState[MAXPLAYERS + 1] = {0, ...};

static const char g_sFeature[] = "DuckSpeed";

public Plugin myinfo =
{
    name = "[VIP] Duck Speed",
    author = "Wend4r",
    version = "1.0.0",
    url = "Discord: Wend4r#0001 | VK: vk.com/wend4r"
}

public APLRes AskPluginLoad2(Handle hMySelf, bool bLate, char[] sError, int iErrorSize)
{
    if(GetEngineVersion() != Engine_CSGO)
    {
        strcopy(sError, iErrorSize, "This plugin works only on CS:GO");
        return APLRes_SilentFailure;
    }
    return APLRes_Success;
}

public void OnPluginStart()
{
    if(VIP_IsVIPLoaded())
    {
        VIP_OnVIPLoaded();
    }
}

public void VIP_OnVIPLoaded()
{
    VIP_RegisterFeature(g_sFeature, BOOL);
}

public void OnPluginEnd()
{
    if(CanTestFeatures() && GetFeatureStatus(FeatureType_Native, "VIP_UnregisterFeature") == FeatureStatus_Available)
    {
        VIP_UnregisterFeature(g_sFeature);
    }
}

public void OnClientDisconnect(int iClient)
{
    g_bDuckSpeedState[iClient] = 0;
}

public void VIP_OnVIPClientLoaded(int iClient)
{
    g_bDuckSpeedState[iClient] = view_as<int>(VIP_GetClientFeatureStatus(iClient, g_sFeature));
}

public Action VIP_OnFeatureToggle(int iClient, const char[] szFeature, VIP_ToggleState eOldStatus, VIP_ToggleState &eNewStatus)
{
    if(StrContains(szFeature, g_sFeature) != -1)
    {
        g_bDuckSpeedState[iClient] = view_as<int>(eNewStatus);
    }
    return Plugin_Continue;
}

public Action OnPlayerDuck(int iClient, float &flSpeed)
{
    if(!VIP_IsClientVIP(iClient) || g_bDuckSpeedState[iClient] == 0)
    {
        return Plugin_Handled;
    }
    return Plugin_Continue;
}
А почему скорость не меняешь как в оригинале?
 

BloodyAngel

Участник
Сообщения
72
Реакции
54
Почему это бессмыслица через модуль дать возможность под каждую випку настроить скорость?
Описание ядра, как и этого ресурса ясно даёт понять, что "убирает замедление скорости у приседания, для VIP-игроков". А то, что ты просишь, да, даже не просишь, а возмущаешься, это отдельный запрос, т.к. этого и в оригинале данного ресурса нет и не было задумано. Хочешь, чтобы было, попроси, а не возмущайся.
 
Последнее редактирование:

Похожие темы

Сверху Снизу