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

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

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

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

Как сделать бан при нажатии на кнопку?

Статус пользователя nazik114
сообщение 12.6.2015, 21:53
Сообщение #1
Стаж: 10 лет

Сообщений: 12
Благодарностей: 1
Полезность: 0

У меня есть плагин, который пишет в чат, кто из кт нажал на кнопку. Но мне нужно сделать, когда кт нажимает на кнопку, чтобы автоматически банило на 60 минут. Кто-то может помочь? Пока что бюджет на 0, позже смогу помочь деньгами. Исходник ниже.
ТыК*
#include <amxmodx>
#include <amxmisc>
#include <hamsandwich>
#include <cstrike>

public plugin_init()
{
register_plugin("knopki", "1.0", "koshak")

RegisterHam(Ham_Use, "func_button", "nice_use")

}

public nice_use(ent, idcaller, idactivator, use_type, Float:value)
{
if(cs_get_user_team(idactivator) == CS_TEAM_CT)
{
new Name[33]
get_user_name(idactivator, Name, 32)
Color_Print(0, "!y[!gПалево!y] !yИгрок !g%s !yнажал на кнопку!", Name)
}
return HAM_IGNORED
}

stock Color_Print(const id, const input[], any:...)
{
new count = 1, players[32]
static msg[191]
vformat(msg, 190, input, 3)

replace_all(msg, 190, "!g", "^4") // Green Color
replace_all(msg, 190, "!y", "^1") // Default Color
replace_all(msg, 190, "!team", "^3") // Team Color

if (id) players[0] = id; else get_players(players, count, "ch")
{
for (new i = 0; i < count; i++)
{
if (is_user_connected(players[i]))
{
message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players[i])
write_byte(players[i]);
write_string(msg);
message_end();
}
}
}
}

Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
Статус пользователя [WPMG]PRoSToTeM@
сообщение 12.6.2015, 22:06
Сообщение #2
Стаж: 13 лет

Сообщений: 1514
Благодарностей: 1025
Полезность: 725

А не проще ли заблочить?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Immunity
сообщение 12.6.2015, 22:18
Сообщение #3
Стаж: 11 лет

Сообщений: 444
Благодарностей: 119
Полезность: 139

Код:
#include <amxmodx>
#include <amxmisc>
#include <hamsandwich>
#include <cstrike>

public plugin_init()
{
register_plugin("knopki", "1.0", "koshak")

RegisterHam(Ham_Use, "func_button", "nice_use")

}

public nice_use(ent, idcaller, idactivator, use_type, Float:value)
{
if(cs_get_user_team(idactivator) == CS_TEAM_CT)
{
new Name[33]
get_user_name(idactivator, Name, 32)
Color_Print(0, "!y[!gПалево!y] !yИгрок !g%s !yнажал на кнопку!", Name)
server_cmd("amx_ban %s 1 knopka", Name)
}
return HAM_IGNORED
}

stock Color_Print(const id, const input[], any:...)
{
new count = 1, players[32]
static msg[191]
vformat(msg, 190, input, 3)

replace_all(msg, 190, "!g", "^4") // Green Color
replace_all(msg, 190, "!y", "^1") // Default Color
replace_all(msg, 190, "!team", "^3") // Team Color

if (id) players[0] = id; else get_players(players, count, "ch")
{
for (new i = 0; i < count; i++)
{
if (is_user_connected(players[i]))
{
message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players[i])
write_byte(players[i]);
write_string(msg);
message_end();
}
}
}
}

Вроде так.

Отредактировал: Immunity, - 12.6.2015, 22:18
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя [WPMG]PRoSToTeM@
сообщение 12.6.2015, 22:26
Сообщение #4
Стаж: 13 лет

Сообщений: 1514
Благодарностей: 1025
Полезность: 725

Immunity, лучше бы ты ему просто блок сделал. Зачем список банов засорять?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя neygomon
сообщение 12.6.2015, 22:26
Сообщение #5


Стаж: 14 лет

Сообщений: 1644
Благодарностей: 515
Полезность: 363

[WPMG]PRoSToTeM@, в пре и суперцид?)
и вообще, какие кнопки можно этим способом отловить?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя [WPMG]PRoSToTeM@
сообщение 12.6.2015, 22:29
Сообщение #6
Стаж: 13 лет

Сообщений: 1514
Благодарностей: 1025
Полезность: 725

neygomon, на тех же дезран картах кнопки управляющие препятствиями.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя neygomon
сообщение 12.6.2015, 22:36
Сообщение #7


Стаж: 14 лет

Сообщений: 1644
Благодарностей: 515
Полезность: 363

[WPMG]PRoSToTeM@, я это понимаю.
А кнопки то какие?
Любые?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя nazik114
сообщение 13.6.2015, 10:22
Сообщение #8
Стаж: 10 лет

Сообщений: 12
Благодарностей: 1
Полезность: 0

Цитата(Immunity @ 12.6.2015, 22:18) *
Код:
#include <amxmodx>
#include <amxmisc>
#include <hamsandwich>
#include <cstrike>

public plugin_init()
{
register_plugin("knopki", "1.0", "koshak")

RegisterHam(Ham_Use, "func_button", "nice_use")

}

public nice_use(ent, idcaller, idactivator, use_type, Float:value)
{
if(cs_get_user_team(idactivator) == CS_TEAM_CT)
{
new Name[33]
get_user_name(idactivator, Name, 32)
Color_Print(0, "!y[!gПалево!y] !yИгрок !g%s !yнажал на кнопку!", Name)
server_cmd("amx_ban %s 1 knopka", Name)
}
return HAM_IGNORED
}

stock Color_Print(const id, const input[], any:...)
{
new count = 1, players[32]
static msg[191]
vformat(msg, 190, input, 3)

replace_all(msg, 190, "!g", "^4") // Green Color
replace_all(msg, 190, "!y", "^1") // Default Color
replace_all(msg, 190, "!team", "^3") // Team Color

if (id) players[0] = id; else get_players(players, count, "ch")
{
for (new i = 0; i < count; i++)
{
if (is_user_connected(players[i]))
{
message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players[i])
write_byte(players[i]);
write_string(msg);
message_end();
}
}
}
}

Вроде так.

Большое спасибо! Работает.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Legend21
сообщение 13.6.2015, 10:27
Сообщение #9
Стаж: 14 лет
Город: Винница

Сообщений: 604
Благодарностей: 229
Полезность: 561

Каждый кто нажмет кнопку будет в бане? ТС, тебе не кажется что это издевательство над игроками? ) Кто при этом будет играть на твоем сервере, ты об этом подумал?

Отредактировал: Legend21, - 13.6.2015, 10:28
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя nazik114
сообщение 13.6.2015, 10:36
Сообщение #10
Стаж: 10 лет

Сообщений: 12
Благодарностей: 1
Полезность: 0

Цитата(Legend21 @ 13.6.2015, 11:27) *
Каждый кто нажмет кнопку будет в бане? ТС, тебе не кажется что это издевательство над игроками? ) Кто при этом будет играть на твоем сервере, ты об этом подумал?

Я подредактировал список кнопок на картах. Когда кт нажимает ловушку, его банит на 120 минут. Если просто дверь открыть, бан не будет происходить.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя [WPMG]PRoSToTeM@
сообщение 13.6.2015, 11:55
Сообщение #11
Стаж: 13 лет

Сообщений: 1514
Благодарностей: 1025
Полезность: 725

Цитата(nazik114 @ 13.6.2015, 11:36) *
Я подредактировал список кнопок на картах. Когда кт нажимает ловушку, его банит на 120 минут. Если просто дверь открыть, бан не будет происходить.

Зачем засорять баны? Почему просто не блочить?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя nazik114
сообщение 13.6.2015, 12:05
Сообщение #12
Стаж: 10 лет

Сообщений: 12
Благодарностей: 1
Полезность: 0

Цитата([WPMG]PRoSToTeM@ @ 13.6.2015, 11:55) *

Зачем засорять баны? Почему просто не блочить?

Я начинающий, поэтому не знаю какой функцией заблочить :с
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Immunity
сообщение 13.6.2015, 12:07
Сообщение #13
Стаж: 11 лет

Сообщений: 444
Благодарностей: 119
Полезность: 139

120 минут? Ты серьёзно? ыыы..
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя nazik114
сообщение 13.6.2015, 12:08
Сообщение #14
Стаж: 10 лет

Сообщений: 12
Благодарностей: 1
Полезность: 0

Цитата(Immunity @ 13.6.2015, 12:07) *
120 минут? Ты серьёзно? ыыы..

Ну пока что так, сделаю меньше... Попробую заблочить как-то кнопки...
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя [WPMG]PRoSToTeM@
сообщение 13.6.2015, 12:33
Сообщение #15
Стаж: 13 лет

Сообщений: 1514
Благодарностей: 1025
Полезность: 725

nazik114, Просто попросил бы smile.gif
Код:
return HAM_SUPERCEDE;
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Immunity
сообщение 13.6.2015, 12:54
Сообщение #16
Стаж: 11 лет

Сообщений: 444
Благодарностей: 119
Полезность: 139

Цитата([WPMG]PRoSToTeM@ @ 13.6.2015, 13:33) *

nazik114, Просто попросил бы smile.gif
Код:
return HAM_SUPERCEDE;

СТ не может нажимать на кнопки и пишет сообщение, что нельзя. А за ТТ не нажимается кнопка и не пишет сообщение.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя [WPMG]PRoSToTeM@
сообщение 13.6.2015, 12:59
Сообщение #17
Стаж: 13 лет

Сообщений: 1514
Благодарностей: 1025
Полезность: 725

Immunity, Код:
public nice_use(ent, idcaller, idactivator, use_type, Float:value)
{
if(cs_get_user_team(idactivator) == CS_TEAM_CT)
{
new Name[32]
get_user_name(idactivator, Name, charsmax(Name))
//Color_Print(0, "!y[!gПалево!y] !yИгрок !g%s !yнажал на кнопку!", Name)
return HAM_SUPERCEDE;
}
return HAM_IGNORED
}
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя Immunity
сообщение 13.6.2015, 13:05
Сообщение #18
Стаж: 11 лет

Сообщений: 444
Благодарностей: 119
Полезность: 139

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