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

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

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

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

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

Этот раздел, как вы могли заметить по названию, предназначен для решения вопросов по поводу уже существующих модов и плагинов.
Пожалуйста, если у вас проблема с написанием плагина, не путайте этот раздел с разделом по скриптингу.
Для поиска плагинов и модов существует соответствующий раздел.

Название темы должно соответствовать содержанию. Темы с названием типа "Помогите", "Вопрос", "парни подскажите..." - будут удалены.
Все темы, не относящиеся к "Вопросам по модам и плагинам", будут удалены или перемещены в соответствующий раздел.

Правила оформления темы:
1. Помимо заголовка не забудьте верно сформулировать свой вопрос.
2. Выложите исходник (в тег кода + ) или ссылку на плагин который вызывает у вас вопросы.
3. Выложите лог с ошибками (если имеется) под спойлер
2 страниц V   1 2

Чикенмод

Статус пользователя f1nik
сообщение 6.12.2013, 14:28
Сообщение #1


Иконка группы

Стаж: 15 лет

Сообщений: 1862
Благодарностей: 932
Полезность: 1010

Добрый день. Поставил на сервер плагин atac и решил чтобы курица как наказание тоже работала.
Поставил чищен мод в виде сошки для метамода все стартануло и работает. Команда у сошки c_chicken #id работает но только в консоль сервера... То есть c_chiken f1nik в консоль все норм. Либо через ркон с клиента....

В плагине наказания у atac - amx_chiken команда наказания выглядит следующим образом:
Server_cmd(c_chicken #%i ... Но эта команда не выполняется на игроке....
Мне кажется что синтаксис кривой именно #%i .... Подскажите как поправить!!!!
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
Статус пользователя mazdan
сообщение 6.12.2013, 15:26
Сообщение #2


Иконка группы

Стаж: 15 лет

Сообщений: 7566
Благодарностей: 5437
Полезность: 1305

не кривой, нормуль. Просто надо понять что там в %i подставляется


Не пишите мне в ЛС. Пишите на почту. В ЛС я пропускаю сообщения.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя f1nik
сообщение 6.12.2013, 15:44
Сообщение #3


Иконка группы

Стаж: 15 лет

Сообщений: 1862
Благодарностей: 932
Полезность: 1010

Цитата(mazdan @ 6.12.2013, 15:26) *
не кривой, нормуль. Просто надо понять что там в %i подставляется

А там точно i? а не d?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя nsgenn
сообщение 6.12.2013, 15:46
Сообщение #4


Стаж: 13 лет

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

Server_cmd("c_chicken f1nik")

не?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя f1nik
сообщение 6.12.2013, 15:52
Сообщение #5


Иконка группы

Стаж: 15 лет

Сообщений: 1862
Благодарностей: 932
Полезность: 1010

Цитата(nsgenn @ 6.12.2013, 15:46) *
Server_cmd("c_chicken f1nik")

не?


Там подставляется игрок точнее его айди, а не один я)
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя nsgenn
сообщение 6.12.2013, 15:56
Сообщение #6


Стаж: 13 лет

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

new userid = get_user_userid(id)
?

или так:
new name[32]
get_user_name(id, name, charsmax(name)
Server_cmd("c_chicken %s", name)

Отредактировал: nsgenn, - 6.12.2013, 16:02
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя f1nik
сообщение 6.12.2013, 16:10
Сообщение #7


Иконка группы

Стаж: 15 лет

Сообщений: 1862
Благодарностей: 932
Полезность: 1010

Прикладываю исходник который передает команду:

Код:

/* ATAC Chicken
*
* Copyright © 2006-2007, ATAC Team
*
* This file is provided as is (no warranties).
*
*/

#include <amxmodx>
#include <fakemeta>
#include <atac>

#define PLUGIN "Chicken"
#define VERSION "1.0"
#define AUTHOR "ATAC Team"

new g_chicken[ 33 ]

public plugin_init()
{
register_plugin( PLUGIN, VERSION, AUTHOR )

if ( !cvar_exists( "chicken_version" ) )
pause( "ade", PLUGIN )
else
atac_register_punishment()
}

public client_putinserver( id )
{
g_chicken[ id ] = 0
}

public atac_punishment_name(id)
{
new text[ 64 ]
formatex( text, 63, "%L", id, "ATAC_CHICKEN" )
return engfunc( EngFunc_AllocString, text )
}

public atac_player_punish( killer, victim )
{
exec_punishment( killer )
return ATAC_HOOK_RESET
}

public atac_player_spawn( killer, victim )
{
if ( g_chicken[ killer ] )
{
g_chicken[ killer ] = 0
server_cmd( "c_unchicken #%i", get_user_userid( killer ) )
}
else
{
exec_punishment( killer )
return ATAC_HOOK_RESET
}

return ATAC_HOOK_CONTINUE
}

public atac_player_reset( killer, victim )
{
return ATAC_HOOK_SPAWNED
}

exec_punishment( id )
{
if ( !g_chicken[ id ] )
{
g_chicken[ id ] = 1
server_cmd( "c_chicken #%i", get_user_userid( id ) )
}
}



Вот тут надо смотреть какая команда доходит до консоли сервера!


А вот инфа из модуля:

Цитата
USAGE

* From server console :
* command :
c_chicken [ # id | "name" | @ "team" ]
examples :
c_chicken @ CT (this will make all CT as chicken)
c_chicken (this will make all players as chicken)
* cvars :
c_glow < 0 | 1 >
sets whether chickens glow ; default = 1
c_gravity < number >
sets chickens gravity ; default = 50
c_health < number >
sets chickens initial health ; default = 250
c_maxspeed < number >
sets chickens maxspeed, 0 to get max maxspeed ; default = 240
c_bomb < 0 | 1 >
sets whether chickens can plant the bomb
c_egg <0 | 1 >
sets whether chickens can drop their he grenade
c_alive
keeps number of alive chickens
c_chickens
keeps number of chickenized players
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Legenda
сообщение 6.12.2013, 16:33
Сообщение #8


Иконка группы

Стаж: 16 лет

Сообщений: 3619
Благодарностей: 1706
Полезность: 1010

Меценат Меценат

userid подставляется, но как-то криво
там по другому надо делать
очевидно %i надо заменить на %d
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя mazdan
сообщение 6.12.2013, 16:37
Сообщение #9


Иконка группы

Стаж: 15 лет

Сообщений: 7566
Благодарностей: 5437
Полезность: 1305

тут вот написано id, может он так работает прям
server_cmd( "c_unchicken #%i", killer )


Не пишите мне в ЛС. Пишите на почту. В ЛС я пропускаю сообщения.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя f1nik
сообщение 6.12.2013, 20:00
Сообщение #10


Иконка группы

Стаж: 15 лет

Сообщений: 1862
Благодарностей: 932
Полезность: 1010

Неа ничего не помогает...
Замена на d результата 0... то что предложил Маздан, вообще не компилируется!
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
exec1337
сообщение 6.12.2013, 20:23
Сообщение #11
Стаж: 13 лет

Сообщений: 6490
Благодарностей: 2558
Полезность: 491

Код
c_chicken #%userid%
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Legenda
сообщение 6.12.2013, 20:27
Сообщение #12


Иконка группы

Стаж: 16 лет

Сообщений: 3619
Благодарностей: 1706
Полезность: 1010

Меценат Меценат

Код
exec_punishment( id )
{
   if ( !g_chicken[ id ] )
   {
      g_chicken[ id ] = 1
      server_cmd( "c_chicken #%i", get_user_userid( id ) )
   }
}

на
Код
exec_punishment( id )
{
   if ( !g_chicken[ id ] )
   {
      new userid
      userid = get_user_userid(id)
      g_chicken[ id ] = 1
      server_cmd( "users; c_chicken #%d; echo chicken userid: %d", userid, userid)
   }
}

и что в консоли сервера будет писать при этом?
что такое c_chicken #id
id - это индекс игрока? либо userid игрока
это как бы различные вещи
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя f1nik
сообщение 7.12.2013, 10:57
Сообщение #13


Иконка группы

Стаж: 15 лет

Сообщений: 1862
Благодарностей: 932
Полезность: 1010

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


Иконка группы

Стаж: 16 лет

Сообщений: 3619
Благодарностей: 1706
Полезность: 1010

Меценат Меценат

Цитата(f1nik @ 7.12.2013, 12:57) *
Legenda,


Код
exec_punishment( id )
{
   if ( !g_chicken[ id ] )
   {
      new userid
      userid = get_user_userid(id)
      g_chicken[ id ] = 1
      server_cmd( "users; c_chicken #%d; echo chicken userid: %d", userid, userid)
   }
}
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя mazdan
сообщение 7.12.2013, 13:11
Сообщение #15


Иконка группы

Стаж: 15 лет

Сообщений: 7566
Благодарностей: 5437
Полезность: 1305

пробовали вместо server_cmd( "c_unchicken #%i", get_user_userid( killer ) ) server_cmd( "c_unchicken #%i", killer ) и вместо server_cmd( "c_unchicken #%i", get_user_userid( id) ) server_cmd( "c_unchicken #%i", id) соответственно?


Не пишите мне в ЛС. Пишите на почту. В ЛС я пропускаю сообщения.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя nsgenn
сообщение 7.12.2013, 14:00
Сообщение #16


Стаж: 13 лет

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

а мои варианты не работают чтоли?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя f1nik
сообщение 10.12.2013, 11:23
Сообщение #17


Иконка группы

Стаж: 15 лет

Сообщений: 1862
Благодарностей: 932
Полезность: 1010

Цитата(mazdan @ 7.12.2013, 13:11) *
пробовали вместо server_cmd( "c_unchicken #%i", get_user_userid( killer ) ) server_cmd( "c_unchicken #%i", killer ) и вместо server_cmd( "c_unchicken #%i", get_user_userid( id) ) server_cmd( "c_unchicken #%i", id) соответственно?


Нет не работает... может что то для логов дописть...? Ща попробую вариант легенды

upd: ничего и от легендиного варианта нет и консоль чистая... попробовал разные ИД ничего не проходит ни стимИД ни ИД от команды status... может попробовать тогда по нику запилить?

Команда в описании выглядит так c_chiken #id но ничего не проходит
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя nesterov86
сообщение 10.12.2013, 12:24
Сообщение #18


Стаж: 18 лет

Сообщений: 128
Благодарностей: 16
Полезность: 104

f1nik,
у меня АТАС прекрасно работает с этим модом уже пару лет
http://forums.alliedmods.net/showthread.php?t=8979
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Legenda
сообщение 10.12.2013, 14:01
Сообщение #19


Иконка группы

Стаж: 16 лет

Сообщений: 3619
Благодарностей: 1706
Полезность: 1010

Меценат Меценат

Скрытый текст

если готов доступ дать к серверу - пиши в личку, попробую так помочь
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя f1nik
сообщение 10.12.2013, 14:23
Сообщение #20


Иконка группы

Стаж: 15 лет

Сообщений: 1862
Благодарностей: 932
Полезность: 1010

Цитата(nesterov86 @ 10.12.2013, 13:24) *
f1nik,
у меня АТАС прекрасно работает с этим модом уже пару лет
http://forums.alliedmods.net/showthread.php?t=8979

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