Все вопросы по скриптингу для AMXX, помощь в редактировании плагинов.
Модераторы: Subb98, liFe iS GoOD
Правила форума
1. Запрещено материться и оскорблять других участников форума.
2. Запрещен флуд, оффтоп, дабл постинг во всех разделах форума, кроме раздела "Болтовня".
3. Запрещено взламывать сайт/форум или наносить любой вред проекту.
4. Запрещено рекламировать другие ресурсы.
5. Запрещено создавать темы без информативного названия. Название темы должно отображать ее смысл.
В данном разделе форума разрешено создавать темы, касающие только скриптинга для AMX Mod X.
Правила при создании новой темы:
1. При вставке кода плагина необходимо использовать тег [code=php].
2. Любые изображения должны быть загружены, как вложения к вашему сообщению.
3. При описании проблемы или запросе на помощь в редактировании плагина обязательно выкладывайте исходник sma плагина.
ELRI » 25 май 2018, 17:58
Есть такая проблема у меня,я не спец с нативами и пользуюсь register_clcmd "kek" func" "flag" в випских/админских менюшках,все бы ничего,но когда некоторые просекли тему что команду можно ввести в консоль произойдет функция,а в самой меню функция должна выполняться по кд(раундам)Хотелось как-то "спрятать" команды с консоли при выборе пункта с командой
-
ELRI
-
- Сообщения: 25
- Зарегистрирован: 19 ноя 2017, 00:17
- Благодарил (а): 2 раз.
- Поблагодарили: 0 раз.
- Опыт программирования: Меньше месяца
- Языки программирования: Pawn
SourcePawn
C++
Php
Ruby
Python
C#
Mandar1n » 25 май 2018, 22:27
А что, если в саму функцию засунуть проверку на флаг?
В самое начало вызова менюшки if(!(get_user_flags(id) & flag)) return
-
Mandar1n
-
- Сообщения: 133
- Зарегистрирован: 08 дек 2013, 14:08
- Благодарил (а): 38 раз.
- Поблагодарили: 4 раз.
- Языки программирования: Counter-Strike 1.6
ELRI » 25 май 2018, 22:41
Mandar1n писал(а):А что, если в саму функцию засунуть проверку на флаг?
В самое начало вызова менюшки if(!(get_user_flags(id) & flag)) return
команда выполняется если есть флаг определенный и так.
-
ELRI
-
- Сообщения: 25
- Зарегистрирован: 19 ноя 2017, 00:17
- Благодарил (а): 2 раз.
- Поблагодарили: 0 раз.
- Опыт программирования: Меньше месяца
- Языки программирования: Pawn
SourcePawn
C++
Php
Ruby
Python
C#
MrJunior » 26 май 2018, 00:38
Я бы позаботился о том, что-бы ограничить по раундам в команде тоже. Ну если не хочется - то можно подробнее узнать о том, что нужно спрятать и как/при каких обстоятельствах оно появляется??
-
MrJunior
-
- Сообщения: 146
- Зарегистрирован: 21 сен 2016, 19:46
- Откуда: localhost
- Благодарил (а): 3 раз.
- Поблагодарили: 31 раз.
- Опыт программирования: Больше трех лет
- Языки программирования: Pawn | Web | Lua
-
Subb98 » 26 май 2018, 07:05
1. Не использовать команды для взаимодействия плагинов.
2. Если уж делаете через задницу, то в конце обработчика команды нужно дописывать
- Код: Выделить всё
return PLUGIN_HANDLED;
и тогда команда не будет отображаться в консоли клиента.
«Очень хорошо. Лучше вы, чем я» © Donald J. Trump
-
Subb98
-
- Сообщения: 5485
- Зарегистрирован: 24 мар 2011, 19:42
- Откуда: г. Пермь
- Благодарил (а): 1329 раз.
- Поблагодарили: 2343 раз.
- Опыт программирования: Больше трех лет
- Языки программирования: PHP
ELRI » 26 май 2018, 13:12
Subb98 писал(а):1. Не использовать команды для взаимодействия плагинов.
2. Если уж делаете через задницу, то в конце обработчика команды нужно дописывать
- Код: Выделить всё
return PLUGIN_HANDLED;
и тогда команда не будет отображаться в консоли клиента.
Не очень понятно куда вписать,пробовал - ероры были
- Код: Выделить всё
https:
-
ELRI
-
- Сообщения: 25
- Зарегистрирован: 19 ноя 2017, 00:17
- Благодарил (а): 2 раз.
- Поблагодарили: 0 раз.
- Опыт программирования: Меньше месяца
- Языки программирования: Pawn
SourcePawn
C++
Php
Ruby
Python
C#
Subb98 » 26 май 2018, 14:28
ELRI, пример:
- Код: Выделить всё
register_clcmd("ebobo", "CmdEbobo");
- Код: Выделить всё
public CmdEbobo(const id)
{
return PLUGIN_HANDLED;
}
«Очень хорошо. Лучше вы, чем я» © Donald J. Trump
-
Subb98
-
- Сообщения: 5485
- Зарегистрирован: 24 мар 2011, 19:42
- Откуда: г. Пермь
- Благодарил (а): 1329 раз.
- Поблагодарили: 2343 раз.
- Опыт программирования: Больше трех лет
- Языки программирования: PHP
Mistrick » 26 май 2018, 15:47
Subb98, у него проверки сделаны в менюшке, а в CmdEbobo() их нет. Решение ищет в скрытии client_cmd(id, "ebobo"), которое палят протекторами и абузят.
-
Mistrick
-
- Сообщения: 2940
- Зарегистрирован: 04 ноя 2012, 18:15
- Благодарил (а): 43 раз.
- Поблагодарили: 1247 раз.
- Языки программирования: PAWN
С/С++(few above zero)
ELRI » 26 май 2018, 15:48
- Код: Выделить всё
register_clcmd("Crossbow", "give_crossbow", ADMIN_IMMUNITY)
- Код: Выделить всё
public give_crossbow(id)
{
drop_weapons(id, 1);
new iWep2 = give_item(id,"weapon_sg550")
if( iWep2 > 0 )
{
cs_set_weapon_ammo(iWep2, get_pcvar_num(cvar_clip_crossbow))
cs_set_user_bpammo (id, CSW_SG550, get_pcvar_num(cvar_crossbow_ammo))
}
g_has_crossbow[id] = true;
return PLUGIN_HANDLED;
}
Попробовал,все отлично работает
)) <3
-
ELRI
-
- Сообщения: 25
- Зарегистрирован: 19 ноя 2017, 00:17
- Благодарил (а): 2 раз.
- Поблагодарили: 0 раз.
- Опыт программирования: Меньше месяца
- Языки программирования: Pawn
SourcePawn
C++
Php
Ruby
Python
C#
Вернуться в Скриптинг
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 7