[VIP] Tagrenade

filipok

Участник
Сообщения
72
Реакции
28
@R1KO , баг такой же как и у @666pro . Выпадает несколько штук. Такой же баг и с этим модулем [VIP] Grenades
На сервере не установлено ни одного плагина, взаимодействующего с гранатами кроме этого.
--- Добавлено позже ---
@R1KO , не могу скомпилировать локально. Инклюд vip_core добавил.
//SourceMod Batch Compiler
// by the SourceMod Dev Team


//// VIP_Tagrenade_1.0.0.sp
//
// E:\SM compiler\sourcemod\scripting\VIP_Tagrenade_1.0.0.sp(39) : error 017: undefined symbol "VIP_HookClientSpawn"
//
// 1 Error.
//
// Compilation Time: 0,17 sec
// ----------------------------------------

Press enter to exit ...
--- Добавлено позже ---
Вписал небольшой костыль, который должен предотвратить дроп гранат.
PHP:
//------------------------------------------------------------------------------
// GPL LISENCE (short)
//------------------------------------------------------------------------------
/*
* Copyright (c) 2014 R1KO

* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.

* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
* GNU General Public License for more details.

* You should have received a copy of the GNU General Public License
* along with this program.  If not, see <http://www.gnu.org/licenses/>.
*/
#pragma semicolon 1

#include <sourcemod>
#include <sdktools>
#include <vip_core>

public Plugin:myinfo =
{
    name = "[VIP] Tagrenade",
    author = "R1KO (skype: vova.andrienko1)",
    version = "1.0.0"
};

new const String:g_sFeature[] = "Tagrenade";
new bool:AlreadyHaveTagrenade[MAXPLAYERS+1];

public void OnPluginStart(){
    HookEvent("round_end", Event_RoundEnd);
}


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

    VIP_HookClientSpawn(OnPlayerSpawn);
}

public OnPlayerSpawn(iClient, iTeam, bool:bIsVIP){
    if(bIsVIP && VIP_IsClientFeatureUse(iClient, g_sFeature))
    {
        CreateTimer(1.0, Timer_Callout, iClient);
    }
}
public Action Timer_Callout(Handle timer, any iClient){
    if(!AlreadyHaveTagrenade[iClient]){
        GivePlayerItem(iClient, "weapon_tagrenade");
        AlreadyHaveTagrenade[iClient] = true;
    }
}

public Action Event_RoundEnd(Handle event, const char[] name, bool dontBroadcast){
    for (int i = 1; i <= MaxClients; i++){
        if (IsClientInGame(i)){
            AlreadyHaveTagrenade[i] = false;
        }
    }
}
 

smoke96

Участник
Сообщения
1,134
Реакции
175
Все равно с новым тестовым ядром 1 таговая грена падает на землю. С хилшотами все хорошо.
 

R1KO

fuck society
Сообщения
9,457
Реакции
7,786
  • Команда форума
  • #31
@B1g, Я разобрался. Такое только при первом спавне на карте. Не знаю почему но в ксго первый спавн игрока на карте происходит 2 раза
 

MIV

Участник
Сообщения
613
Реакции
32
Иногда все же дропается лишняя грена.
 

Аленсандр

Участник
Сообщения
9
Реакции
2
Добавьте КВАР что бы таговая граната была только у одного VIP игрока на команду. А то немного читерская херня
 

Arestonelle

Учусь на чужих ошибках
Сообщения
97
Реакции
14
@R1KO скажи пожалуйста, а можно как нибудь сделать маленький плагин с проверкой игрока на твой VIP, что бы обычные игроки просто-напросто не могли подбирать хелшоты и таговые гранаты.. А в лучшем случае, добавить проверку на использование шприца и гранаты, что бы ограничить использование 1 раз за раунд.. Это, наверное, сложно... Но может быть это легче, чем искать проблему с двойным и тройным спауном? ибо у меня сейчас при спауне вип может выбросить от 2 до 15 хелшотов и вх-гранат, и начинается на сервере апокалипсис)
 

R1KO

fuck society
Сообщения
9,457
Реакции
7,786
  • Команда форума
  • #35
@[Senshi],
PHP:
#pragma semicolon 1

#include <sourcemod>
#include <sdkhooks>
#include <vip_core>

public OnClientPutInServer(iClient)
{
    SDKHook(iClient, SDKHook_WeaponCanUse, OnWeaponCanUse);
}

public Action:OnWeaponCanUse(iClient, iWeapon)
{
    if(VIP_IsClientVIP(iClient) == false)
    {
        decl String:sWeapon[32];
        GetEdictClassname(iWeapon, sWeapon, sizeof(sWeapon));
        if(strcmp(sWeapon[7], "healthshot") == 0 || strcmp(sWeapon[7], "tagrenade") == 0)
        {
            return Plugin_Handled;
        }
    }
    return Plugin_Continue;
}
 
Последнее редактирование:

Arestonelle

Учусь на чужих ошибках
Сообщения
97
Реакции
14
@R1KO , забыл добавить хуки, без них не компилирует. Сейчас протестируем, отпишусь.

#include <sdkhooks>
--- Добавлено позже ---
@R1KO данный плаг работает на ура, обычные игроки проходят мимо упавших гранат и шприцов. И, о моя наглость, есть у тебя готовый вариант ограничить использование по 1 гранате и шприцу на 1 випа за раунд?
 
Последнее редактирование:

R1KO

fuck society
Сообщения
9,457
Реакции
7,786
  • Команда форума
  • #39
@666pro, читай требованя в описании
 
Сверху Снизу