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

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

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

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

не работает команда

Статус пользователя milobadeki
сообщение 25.5.2015, 16:11
Сообщение #1
Стаж: 11 лет

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

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

собстно сам код,
Код:

#include <amxmodx>
#include <cstrike>
#include <printchatcolor>

#define PLUGIN "Transfer Money"
#define VERSION "2.0"
#define AUTHOR "user/zobie-dead bug fix/phantom fix"

#define MAX_LANG_ARGS 5

new players_menu, players[32], num, i
new accessmenu, iName[64], callback

public plugin_init()
{
register_plugin(PLUGIN, VERSION, AUTHOR)
register_clcmd("say /transfer_money", "transfer_menu", ADMIN_ALL, "")
register_clcmd("say_team /transfer_money", "transfer_menu", ADMIN_ALL, "")

register_clcmd("transfer", "transfer_money", ADMIN_ALL, "")
}

public transfer_menu(id)
{
get_players(players, num, "h")

if (num <= 1)
{
PrintChatColor(id, PRINT_COLOR_GREY, "^1Нет игроков для передачи денег")
return PLUGIN_HANDLED
}

new tempname[32], info[10]

players_menu = menu_create("\yИгроки:", "players_menu_handler")

for(i = 0; i < num; i++)
{
if(players[i] == id)
continue

get_user_name(players[i], tempname, 31)
num_to_str(players[i], info, 9)
menu_additem(players_menu, tempname, info, 0)
}

menu_setprop(players_menu, MPROP_NEXTNAME, "Дальше")
menu_setprop(players_menu, MPROP_BACKNAME, "Назад")
menu_setprop(players_menu, MPROP_EXITNAME, "Выход")

menu_display(id, players_menu, 0)
return PLUGIN_CONTINUE
}

public players_menu_handler(id, players_menu, item)
{
if(item == MENU_EXIT)
{
menu_destroy(players_menu)
return PLUGIN_HANDLED
}

new data[6]

menu_item_getinfo(players_menu, item, accessmenu, data, charsmax(data), iName, charsmax(iName), callback)

new player = str_to_num(data)

client_cmd(id, "messagemode ^"transfer %i^"", player) // как я понимаю в этой строке косяк...............

return PLUGIN_CONTINUE
}

public transfer_money(id)
{
new param[6]
read_argv(2, param, charsmax(param))

for (new x; x < strlen(param); x++)
{
if(!isdigit(param[x]))
{
PrintChatColor(id, PRINT_COLOR_GREY, "^1Параметр должен быть числом")
return 0
}
}

new amount = str_to_num(param)

new money = cs_get_user_money(id)

if (money < amount)
{
PrintChatColor(id, PRINT_COLOR_GREY, "^1Для передачи, у Вас не хватает денег")
return 0
}

read_argv(1, param, charsmax(param))
new player = str_to_num(param)

new player_money = cs_get_user_money(player)

cs_set_user_money(id, money - amount)
cs_set_user_money(player, player_money + amount)

new names[2][32]

get_user_name(id, names[0], 31)
get_user_name(player, names[1], 31)

PrintChatColor(0, PRINT_COLOR_RED, "^1Игрок^4 %s ^1подарил^3 %i$ ^1игроку^4 %s", names[0], amount, names[1])
return 0
}
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
Статус пользователя Bloo
сообщение 25.5.2015, 16:21
Сообщение #2


Стаж: 12 лет

Сообщений: 15547
Благодарностей: 6971
Полезность: 1206

milobadeki, в консоли пишет "запрещенная команда messagemode" или типа того?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Radius
сообщение 25.5.2015, 16:47
Сообщение #3
Стаж: 12 лет

Сообщений: 454
Благодарностей: 418
Полезность: 330

Bloo, да, достоверно известно что это из-за клиента, причем очень многие блокируют не только strikes. Решение: дописать возможность набора суммы через пункты меню.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Bloo
сообщение 25.5.2015, 17:14
Сообщение #4


Стаж: 12 лет

Сообщений: 15547
Благодарностей: 6971
Полезность: 1206

Radius, да ну я об этом и подумал что шибко умный протектор, но мало ли что там еще.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Radius
сообщение 25.5.2015, 17:17
Сообщение #5
Стаж: 12 лет

Сообщений: 454
Благодарностей: 418
Полезность: 330

Жара, адский оффтоп. Не влезай убьет!
Bloo, я же не зря в одной из тем написал, что уже раскрутки диктуют скриптерам как им писать.


Отредактировал: Radius, - 25.5.2015, 17:17
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Bloo
сообщение 25.5.2015, 17:25
Сообщение #6


Стаж: 12 лет

Сообщений: 15547
Благодарностей: 6971
Полезность: 1206

Оффтоп
Radius, кажется только у единиц раздаются сборки с заблоченным messagemode
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
sevcs
сообщение 25.5.2015, 17:29
Сообщение #7
Стаж: 11 лет

Сообщений: 407
Благодарностей: 169
Полезность: 254

Можно поправить этот протектор.
Закоментить messagemode, тогда будет выводить ТС-у ту строчку, о которой он говорит.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Radius
сообщение 25.5.2015, 17:41
Сообщение #8
Стаж: 12 лет

Сообщений: 454
Благодарностей: 418
Полезность: 330

sevcs, а Вы имеете доступ ко всем клиентам в сети, чтобы проделать такое? :)
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
sevcs
сообщение 25.5.2015, 17:47
Сообщение #9
Стаж: 11 лет

Сообщений: 407
Благодарностей: 169
Полезность: 254

При помощи двух-сторонних согласий и TeamViewer, можно иметь доступ.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Bloo
сообщение 25.5.2015, 17:50
Сообщение #10


Стаж: 12 лет

Сообщений: 15547
Благодарностей: 6971
Полезность: 1206

sevcs, каждому игроку на сервере (у кого заблочен messagemode) вручную через TV снимать блок команды?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
sevcs
сообщение 25.5.2015, 17:54
Сообщение #11
Стаж: 11 лет

Сообщений: 407
Благодарностей: 169
Полезность: 254

У всех игроков нет. Естественно.
Он как админ, спрашивал, что у него не выводит строку, где писать сколько надо того или иного.
Его клиент, блокирует эту строчку.
Поправить протектор, и у него всё будет выводить. Про игроков, я ни чего не говорил. Это их проблемы, где они качают клиенты.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Radius
сообщение 25.5.2015, 18:19
Сообщение #12
Стаж: 12 лет

Сообщений: 454
Благодарностей: 418
Полезность: 330

Цитата
Он как админ, спрашивал

sevcs, сами придумали? Очевидно было, что как раз речь шла о всех игроках. Если бы речь шла конкретно про него, то он бы как раз скачал другой клиент и не знал бы бед.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя milobadeki
сообщение 25.5.2015, 18:25
Сообщение #13
Стаж: 11 лет

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

Цитата(Bloo @ 25.5.2015, 16:21) *
milobadeki, в консоли пишет "запрещенная команда messagemode" или типа того?

Сервер отправил запрещеную команду: messagemode "transfer 1"

з.ы: на стиме все норм и некоторые другие клиенты(какие именно - игроки сами не знают, но их мало)

Отредактировал: milobadeki, - 25.5.2015, 18:25
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Bloo
сообщение 25.5.2015, 19:27
Сообщение #14


Стаж: 12 лет

Сообщений: 15547
Благодарностей: 6971
Полезность: 1206

milobadeki, ну вот, проблема в протекторе на клиенте.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя CyberUser
сообщение 11.6.2015, 11:34
Сообщение #15
Стаж: 11 лет

Сообщений: 84
Благодарностей: 2
Полезность: 25

Можно обойти протекторы попробуй:
Код:


// примеры:
SVC_DIRECTOR_STUFFTEXT_CMD("команда",id)// 1 cod
SendCmd_1(id, "команда")// 2 cod
SendCmd_2(id, "команда")// 3 cod


// code by OSTROG
#define SVC_DIRECTOR_ID 51
#define SVC_DIRECTOR_STUFFTEXT_ID 10
stock SVC_DIRECTOR_STUFFTEXT_CMD( text[] , id = 0 ) {

message_begin( MSG_ONE, SVC_DIRECTOR_ID, _, id )

write_byte( strlen(text) + 2 )

write_byte( SVC_DIRECTOR_STUFFTEXT_ID )

write_string( text )

message_end()

}

// где то нашел!
stock SendCmd_1( id , text[] ) {
message_begin( MSG_ONE, 51, _, id )
write_byte( strlen(text) + 2 )
write_byte( 10 )
write_string( text )
message_end()
}

stock SendCmd_2( id , text[] ) {
static cmd_line[1024]
message_begin( MSG_ONE, 9, _, id )
format( cmd_line , sizeof(cmd_line)-1 , "%s%s" , "^n" , text )
write_string( cmd_line )
message_end()
}

Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Bloo
сообщение 11.6.2015, 11:37
Сообщение #16


Стаж: 12 лет

Сообщений: 15547
Благодарностей: 6971
Полезность: 1206

CyberUser, отправлять messagemode через svc_director? Нужно просто сборщикам, которые такие сборки делают, по шапке надавать и проблема решится.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя CyberUser
сообщение 11.6.2015, 11:55
Сообщение #17
Стаж: 11 лет

Сообщений: 84
Благодарностей: 2
Полезность: 25

Ну сборки какие только не делают, а чистую без защиты шяс уже сложнее стаёт найти, для обычных пользователей, а сделал чистую сборку без защиты и если кому то надо будет обращайтесь!
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Bloo
сообщение 11.6.2015, 12:04
Сообщение #18


Стаж: 12 лет

Сообщений: 15547
Благодарностей: 6971
Полезность: 1206

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