Правила форума Гаранты форума
Размещение рекламы AMX-X компилятор

Здравствуйте, гость Вход | Регистрация

Наши новости:

14-дек
24-апр
10-апр
11-апр

> Правила форума

Раздел для общения на любые темы, для которых не нашлось места в остальных разделах. Если Вашу тему можно отнести по смыслу к другому разделу, лучше создайте её там, иначе Вас накажут.

В данном форуме немного понижены требования к Общим правилам форума, а именно:
1. Информативность темы
2. Отходить от первоначального смысла темы

!
В разделе запрещено создавать темы связанные с раскруткой игровых серверов

ограничение покупки гранат

, ограничение
Статус пользователя csparena
сообщение 8.11.2017, 19:13
Сообщение #1


Стаж: 10 лет

Сообщений: 2377
Благодарностей: 541
Полезность: 106

Добрый вечер .. ребят нужна помощь .. есть ли такой плагин чтоб ограничить закуп грен .

а то это полный бред,
прям не выйдешь с респы
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
Статус пользователя Izmayl7
сообщение 8.11.2017, 19:20
Сообщение #2
Стаж: 10 лет

Сообщений: 831
Благодарностей: 312
Полезность: 578

Цитата(csparena @ 8.11.2017, 20:13) *
Добрый вечер .. ребят нужна помощь .. есть ли такой плагин чтоб ограничить закуп грен .

а то это полный бред,
прям не выйдешь с респы

Код
/*Grenade Spam Punish
*
* by [gOf]-Soul  from http://www.gofclan.org
*
* Это очень простой плагин, который я написал для контроля количества бросаемых гранат.
* Существовало несколько различных плагинов, которые, казалось бы, контролировали покупку
* гранат. Но они блокировали покупку дополнительных гранат.
* Те из них, которые я пробовал, блокировали покупку гранат через обычное меню.
* Этот плагин удерживает игроков от метания гранат более, чем определено в конфигурации.
*
* Этот плагин требует модуля AMXMODX потому что я удалил любые гранаты из окружающей
* среды, которые не должны быть брошены.
* Если вы хотите использовать плагин, не используя при этом модуль AMXMODX, вы можете
* удалить строки с remove_entity(индекс_гранаты) в нижней части скрипта.
*
* Описание переменных
* -----------------------------------------------------------------------------
* переменная    : mp_grenspampunish
* описание        : Включить или выключить плагин
*                  1 - включить, 0 - выключить.
* по умолчанию    : 1 (включен)
*
* переменная    : mp_grenspampunish_maxflash
* описание        : Максимально разрешённое количество флеш-гранат за один раунд
* по умолчанию    : 2
*
* переменная    : mp_grenspampunish_maxhe
* описание        : Максимально разрешённое количество HE-гранат за один раунд
* по умолчанию    : 1
*
* переменная    : mp_grenspampunish_maxsmoke
* описание        : Максимально разрешённое количество дымовых гранат за один раунд
* по умолчанию    : 1
*
* переменная    : mp_grenspampunish_damage
* описание        : Урон (HP), который будет нанесён игроку, попытавшемуся превысить лимит
*                  плагин использует user_slap для нанесения урона.
* по умолчанию    : 100
*
*
* Если нужно выставить настройки для определённой карты, поместите их в файл конфигурации
* карты, например, amxmodx/configs/maps/de_dust.cfg
*
* -----------------------------------------------------------------------------
*
*  *****************
*  * ЛОГ ИЗМЕНЕНИЙ *
*  *****************
*  v1.4
*    - Изменена декларация массива, чтобы избавиться от ошибки, связанной
*    с массивом grencount
*
*  v1.3
*    - Вынес cstrike ссылки
*    - Почищен код (спасибо vittu)
*
*  v1.2
*    - Удалён конфигурационный файл. Поместите конфиг непосредственно в amxx.cfg
*    - Для конфигурирования настроек под конкретную карту, использованы особенности
*    AmxModx
*    - Обновление для pcvars - для использования требуется версия 1.70 и выше
*    - Обновление для большей надёжности register_logevent("funcNewRound", 2, "1=Round_Start")
*    вместо события ResetHud
*    - Исправлена ошибка, не позволявшая очищать количество бросков, когда новый игрок
*    подключался к серверу, в результате чего кого-то наказывало за первый бросок
*  
*  v1.1
*    - Обновление для того, чтобы плагин не записывал подсчёт информации в хранилище,
*    а использовал глобальную переменную
*
*    - Добавлены специальные подсчёты гранат для карт, где можно превышать лимит бросаемых гранат
*    (например, на карте fy_pool_day)
*
*/
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя csparena
сообщение 8.11.2017, 19:24
Сообщение #3


Стаж: 10 лет

Сообщений: 2377
Благодарностей: 541
Полезность: 106

spasibo тебе.. но честно говоря я ничего не понял
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Izmayl7
сообщение 8.11.2017, 19:29
Сообщение #4
Стаж: 10 лет

Сообщений: 831
Благодарностей: 312
Полезность: 578

Цитата(csparena @ 8.11.2017, 20:24) *
spasibo тебе.. но честно говоря я ничего не понял

Запрет покупки более 1-й гранаты "HE" за один раунд
https://forums.alliedmods.net/showthread.ph...198361?p=198361
Запрет покупки более 1-й гранаты "HE" за один раунд
Код
/*Grenade Spam Punish
*
* by [gOf]-Soul  from http://www.gofclan.org
*
* This is a very simple plugin I wrote to control grenade spamming.
* There were a couple different plugins out that would seem to control
* grenade spamming.  But they blocked if you would try to buy extra
* grenades.  The ones I tried only blocked you from buying them via
* the regular menu.  This plugin keeps you from throwing more grenades
* than the allotted number of grenades allowed by the configuration file
*
* The plugin requires that you use the engine module of amxmodx because
* I remove any grenades from the environment that should NOT have been
* thrown.  If you do not want to enable the engine module you can remove
* the requirement by removing the remove_entity(greindex) line at the
* bottom of the script.
*
* Config Flags
* -----------------------------------------------------------------------------
* cvar       : mp_grenspampunish
* description: cvar that determins if the grenade spam punish plugin is
*              enabled possible values are 1 and 0.  To enable the plugin
*              set it to 1 to disable the plugin just set it to 0.
* default    : 1 (enabled)
*
* cvar       : mp_grenspampunish_maxflash
* description: Maximum number of flash bangs allowed to be thrown per round
* default    : 2
*
* cvar       : mp_grenspampunish_maxhe
* description: Maximum number of he grenades allowed to be thrown per round
* default    : 1
*
* cvar       : mp_grenspampunish_maxsmoke
* description: Maximum number of smoke grenades allowed to be thrown per round
* default    : 1
*
* cvar       : mp_grenspampunish_damage
* description: Amount of damage to inflict if someone violates the spam plugin
*              Damage of 100 will automatically kill them.  The plugin uses the
*              user_slap to inflict the damage
* default    : 100
*
*
* To load settings for a certain map then place them into the map specific
* config files i.e. amxmodx/configs/maps/de_dust.cfg
*
* -----------------------------------------------------------------------------
*
*  **************
*  * CHANGE LOG *
*  **************
*  v1.4
*   -Changed Array Declaration to get rid of out of bound error for
*    the grencount array
*
*  v1.3
*   -Took out cstrike reference
*   -Code cleanup (thanks to vittu)
*
*  v1.2
*   -Removed the config file.  Place configuration directly into amxx.cfg
*   -For map specific configs use the map specific config features provided
*    by AmxModx
*   -Updated for pcvars - requires 1.70 and higher to use
*   -Updated to more dependable register_logevent("funcNewRound", 2, "1=Round_Start")
*    instead of ResetHud event
*   -Fixed bug of not clearing number of throws when a person joins the server
*    caused someone to get punished on first throw
*  
*  v1.1
*   -Updated the plugin to not write the grenade count information
*    to the vault.  Just used a global variable
*
*   -Added map specific grenade counts so that you could specify higher
*    grenade throw limits for certain maps like fy_pool_day
*
*/


#include <amxmodx>
#include <amxmisc>
#include <engine>

#define PLUGIN "Grenade Spam Punish"
#define VERSION "1.4"
#define AUTHOR "[gOf]-Soul"

new grencount[33][3]
//new currentMap[64]

new p_grenspampunish
new p_grenspampunish_maxflash
new p_grenspampunish_maxhe
new p_grenspampunish_maxsmoke
new p_grenspampunish_damage

public plugin_init(){
  register_plugin(PLUGIN  , VERSION , AUTHOR )
  
  register_logevent("funcNewRound", 2, "1=Round_Start")

  p_grenspampunish=register_cvar("mp_grenspampunish","1") // enable/disable plugin
  p_grenspampunish_maxflash=register_cvar("mp_grenspampunish_maxflash","2") // number of FB's allowed per round
  p_grenspampunish_maxhe=register_cvar("mp_grenspampunish_maxhe","1") // number of HE's allowed per round
  p_grenspampunish_maxsmoke = register_cvar("mp_grenspampunish_maxsmoke","1") // number of SG's allowed per round
  p_grenspampunish_damage = register_cvar("mp_grenspampunish_damage","100") // health to remove upon punishment

  //new configsdir[128]
  //get_configsdir(configsdir, 127)
  //server_cmd("exec %s/amxx.cfg", configsdir)
  
  //new currmap[128]
  //get_mapname(currmap,127)
  //server_cmd("exec %s/maps/%s.cfg",configsdir, currmap)
  
  return PLUGIN_CONTINUE
}

public client_putinserver(id){
  //reset he grenades count
  grencount[id][0] = 0

  //reset smoke grenades count
  grencount[id][1] = 0

  //reset flash grenades count
  grencount[id][2] = 0
}

public funcNewRound() {
    if ( !get_pcvar_num(p_grenspampunish) )
        return PLUGIN_CONTINUE

    new players[32], numPlayerCount, idxPlayer
    get_players(players, numPlayerCount)
    for(idxPlayer = 0; idxPlayer < numPlayerCount; idxPlayer++)
    {
        
        //reset he grenades count
        grencount[players[idxPlayer]][0] = 0

        //reset smoke grenades count
        grencount[players[idxPlayer]][1] = 0
        
        //reset flash grenades count
        grencount[players[idxPlayer]][2] = 0

    }

    return PLUGIN_CONTINUE
}

public grenade_throw( index , greindex , wId ){
    if ( !get_pcvar_num(p_grenspampunish) )
        return PLUGIN_CONTINUE
    
    new punishlevel,grencountindex
    new playername[32],greName[32]
    get_user_name(index, playername, 32)

    //Example of a switch statement
    switch (wId)
    {
        case CSW_HEGRENADE:
        {
            copy(greName,31,"HE Grenades")
            punishlevel = get_pcvar_num(p_grenspampunish_maxhe)
            grencountindex = 0
        }
        case CSW_SMOKEGRENADE:
        {
            copy(greName,31,"Smoke Grenades")
            punishlevel = get_pcvar_num(p_grenspampunish_maxsmoke)
            grencountindex = 1
        }
        case CSW_FLASHBANG:
        {
            copy(greName,31,"Flash Grenades")
            punishlevel = get_pcvar_num(p_grenspampunish_maxflash)
            grencountindex = 2
        }
    }
  
    grencount[index][grencountindex]=grencount[index][grencountindex]+1

    if (punishlevel < grencount[index][grencountindex]){
        client_print(index ,print_chat,"You have exceeded the maximum number of %s that you can throw.",greName)
        client_print(index ,print_chat,"You are only allowed %d %s per round.",punishlevel,greName)
    
        user_slap(index, get_pcvar_num(p_grenspampunish_damage))
    
        remove_entity(greindex)
        //set_hudmessage (r, g, b, x, y, effects, fxtime, holdtime, fadeintime, fadeouttime, channel=4 )
        set_hudmessage(255 ,0 ,0 ,-1.0 ,0.32 ,0 ,6.0 ,10.0,1.0,1.0,4 )
        show_hudmessage(0,"%s was punished because they were grenade spamming", playername)
    }
    return PLUGIN_CONTINUE
}


Отредактировал: Izmayl7, - 8.11.2017, 19:30
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя csparena
сообщение 8.11.2017, 19:39
Сообщение #5


Стаж: 10 лет

Сообщений: 2377
Благодарностей: 541
Полезность: 106

не компилируется плагин
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Izmayl7
сообщение 8.11.2017, 19:50
Сообщение #6
Стаж: 10 лет

Сообщений: 831
Благодарностей: 312
Полезность: 578

Цитата(csparena @ 8.11.2017, 20:39) *
не компилируется плагин
держи проверяй Прикрепленный файл  grenspampunish.zip ( 4,09 килобайт ) Кол-во скачиваний: 7

Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя csparena
сообщение 8.11.2017, 19:54
Сообщение #7


Стаж: 10 лет

Сообщений: 2377
Благодарностей: 541
Полезность: 106

Izmayl7, заработало.. супер спс
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Izmayl7
сообщение 8.11.2017, 20:04
Сообщение #8
Стаж: 10 лет

Сообщений: 831
Благодарностей: 312
Полезность: 578

Цитата(csparena @ 8.11.2017, 20:54) *
Izmayl7, заработало.. супер спс
та не за что)) хотя есть какой-то другой способ ограничения, точно не знаю... нашёл что на форуме было)) smile.gif
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя csparena
сообщение 8.11.2017, 20:27
Сообщение #9


Стаж: 10 лет

Сообщений: 2377
Благодарностей: 541
Полезность: 106

не работает.. как сразу покупают и лимит срабатывается
серв падает
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Izmayl7
сообщение 8.11.2017, 20:30
Сообщение #10
Стаж: 10 лет

Сообщений: 831
Благодарностей: 312
Полезность: 578

Цитата(csparena @ 8.11.2017, 21:27) *
не работает.. как сразу покупают и лимит срабатывается
серв падает
(((( dntknw.gif может кто нить еще подскажет))
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя csparena
сообщение 8.11.2017, 20:31
Сообщение #11


Стаж: 10 лет

Сообщений: 2377
Благодарностей: 541
Полезность: 106

да ребят подскажите пожалуйста
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
  Ответить в данную темуНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: