Иконка ресурса

R1KO

fuck society
Сообщения
9,457
Реакции
7,786
  • Команда форума
  • #2
@DenisPukin, перед
PHP:
God_Timer[client]=CreateTimer(GodTime, Timer_God, client, TIMER_REPEAT);
Добавь
PHP:
 if(God_Timer[client])
    {
        KillTimer(God_Timer[client]);
    }
И TIMER_REPEAT не нужен тут
 

Striker63

Участник
Сообщения
75
Реакции
22
Сделай бессмертие на время. После ввода команды !god какое-то количество времени игрок будет неуязвим. Будет полезно для некоторых серверов типа MG.
 

DenisPukin

Капитан Костыль
Сообщения
185
Реакции
34
  • Автор ресурса
  • #5
Пользователь DenisPukin обновил ресурс [VIP] God новой записью:

Обновление

Небольшие изменения в плагине.

Узнать больше об этом обновлении...
--- Добавлено позже ---
Сделай бессмертие на время. После ввода команды !god какое-то количество времени игрок будет неуязвим. Будет полезно для некоторых серверов типа MG.
--- Добавлено позже ---
Сделай бессмертие на время. После ввода команды !god какое-то количество времени игрок будет неуязвим. Будет полезно для некоторых серверов типа MG.
 

Вложения

  • VIP_GOD1.smx
    5.9 КБ · Просмотры: 8
  • VIP_GOD1.sp
    1.5 КБ · Просмотры: 15
Последнее редактирование:

Drumanid

Нестандартное звание
Сообщения
1,862
Реакции
1,748
А так не проще? Бессмертие будет выдаваться всем ВИП игрокам в течении 10 секунд.

PHP:
#include <vip_core>

#pragma newdecls required
#pragma semicolon 1

public Plugin myinfo = {name = "(VIP) God | Бессмертие", author = "Drumanid"};

//#define VIP_GOD "GOD"
Handle hTimer[MAXPLAYERS+1];

public void OnPluginStart()
{
    HookEvent("player_spawn", PlayerSpawn);
 
    /*if(VIP_IsVIPLoaded())
    {
        VIP_OnVIPLoaded();
    }*/
}

/*public int VIP_OnVIPLoaded()
{
    VIP_RegisterFeature(VIP_GOD, INT);
}*/

public Action PlayerSpawn(Handle event, const char[] name, bool dontBroadcast)
{
    int iClient = GetClientOfUserId(GetEventInt(event, "userid"));
 
    if(iClient && VIP_IsClientVIP(iClient)/*&& VIP_IsClientFeatureUse(iClient, VIP_GOD)*/)
    {
        SetEntProp(iClient, Prop_Data, "m_takedamage", 0);
        PrintToChat(iClient, " \x03VIP \x01| \x05Вы защищены на \x0710 \x05секунд после возрождения");
   
        hTimer[iClient] = CreateTimer(10.0, OffGod, GetClientUserId(iClient), TIMER_FLAG_NO_MAPCHANGE);
    }
}

public Action OffGod(Handle timer, any UserId)
{
    int iClient = GetClientOfUserId(UserId);
   
    if(iClient && IsPlayerAlive(iClient))
    {
        SetEntProp(iClient, Prop_Data, "m_takedamage", 2);
        PrintToChat(iClient, " \x03VIP \x01| \x05Вы смертны!");
    }
 
    hTimer[iClient] = null;
    return Plugin_Stop;
}

public void OnClientDisconnect(int iClient)
{
    if((hTimer[iClient]) != null)
    {
        KillTimer(hTimer[iClient]);
        hTimer[iClient] = null;
    }
}

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

Если нужен пункт в меню, раскомментируйте все закоментированные строки и впишите в vip_modules.phrases.txt следующее:

PHP:
    "GOD"
    {
        "ru"        "Бессмертие"
        "en"        "GOD"
    }

И в groups.ini
PHP:
        "GOD"        "1" // 1- включить | 0 - выключить

Не проверял, но должно работать.
 

Вложения

  • VIP_GOD.smx
    4.5 КБ · Просмотры: 9
  • VIP_GOD.sp
    1.5 КБ · Просмотры: 13
Последнее редактирование модератором:

DenisPukin

Капитан Костыль
Сообщения
185
Реакции
34
  • Автор ресурса
  • #7
@Lisoh, А у меня разве не так же получилось?
 

White Wolf

🍉
Сообщения
2,382
Реакции
2,187
  • Команда форума
  • #8
То чувство, когда сделал плагин очень давно чтоб на тестовом сервере не убивали во время экспериментов.
 

Pavel123

Участник
Сообщения
129
Реакции
21
Как сделать для определенной вип группы этот модуль?
 

DenisPukin

Капитан Костыль
Сообщения
185
Реакции
34
  • Автор ресурса
  • #12
Сверху Снизу