Вопрос по Pawn

Сообщения
63
Реакции
1
Неверный раздел форума. Перенесено
Не знаю если в ту тему написал, но понял, что тут задают вопросы по созданию видимо плагинов?

Мне нужно знать, что такое # в пауно, когда мы пишем код за пределами функции, мы узказываем #, например #include #define #if #else

И подскажите пожалуйста, как использовать алгоритм if с решоткой.
#if (условие)
Действие
#else
Действие

или как то по другому
13 Апр 2020
А помойму не туда все такие написал
 
Сообщения
63
Реакции
1
спасибо, придется переводить на русский, но хотя бы что то, как удалить тему?
 
Сообщения
1,701
Реакции
1,512
Помог
26 раз(а)
TTox421, дерективы переводить?
 
Сообщения
63
Реакции
1
ребят можно сюда задам вопрос, я учусь писать плагины, читая статьи, к сожалению не знаю английского, но постепенно начинаю понимать все, оцените как вам этот плагин, подскажите что исправить, что бы преобразить код более лучше, желательно описать в чем ошибка как можно подробнее, до всех мелочей
13 Апр 2020
Я решил его затестить, у меня вырубило на сервере почти все плагины, с чем это связанно?
 

Вложения

Сообщения
594
Реакции
350
Предупреждения
1
Помог
9 раз(а)
TTox421, как минимум не обнулять счётчик раунда в выдачи
 
Сообщения
63
Реакции
1
steelzzz, Я сделал так что бы, покупка была каждые 3 раунда
16 Апр 2020
Ребят, в чат не выводит ник, я понимаю что я глупый, но подскажите пожалуйста как это исравить, да и вообще как оптимизировать код?
У меня там 15 варнингов, в чем именно ошибка
 

Download all Attachments

Сообщения
289
Реакции
251
Помог
7 раз(а)
steelzzz, Я сделал так что бы, покупка была каждые 3 раунда
16 Апр 2020
Ребят, в чат не выводит ник, я понимаю что я глупый, но подскажите пожалуйста как это исравить, да и вообще как оптимизировать код?
У меня там 15 варнингов, в чем именно ошибка
варнинге по поводу табуляции.

у тебя обнуляется общий счетчик раунлов, а не персональный, то есть, один купит, остальные не смогут, так как он своей покупкой обнулит раунды, если так задумано, то ладно.
если ты хочешь чтобы счетчик был персональный то нужен массив с ид игроков, RoundNum[MAX_PLAYERS+1] и обнулять его с помощью arrayset, а также обнулять при выходе игрока с сервера.
 
Сообщения
63
Реакции
1
Jumper, окей спасибо попробую
16 Апр 2020
Jumper, А разве public Event_RoundStart(id) не делает так, что раунд дается каждому отдельно?
16 Апр 2020
Jumper, а почему в чат не выводит ник игрока когда он берет бесшумный шаг, выводит букву s только и всё
 
Сообщения
289
Реакции
251
Помог
7 раз(а)
TTox421, нет, он не дает раунд каждому отдельно.
ник не выводит, потому что ошибка при выводи ц тебя у тебя s% , вместо %s. ник можно вывести проще, просто прописать ид игрока и сделать вывод %n
 
Сообщения
63
Реакции
1
варнинге по поводу табуляции.

у тебя обнуляется общий счетчик раунлов, а не персональный, то есть, один купит, остальные не смогут, так как он своей покупкой обнулит раунды, если так задумано, то ладно.
если ты хочешь чтобы счетчик был персональный то нужен массив с ид игроков, RoundNum[MAX_PLAYERS+1] и обнулять его с помощью arrayset, а также обнулять при выходе игрока с сервера.
Можешь привести пример в коде как это сделать
Я указываю массив
new RoundNum[MAX_PLAYERS+1] Что значит +1 ?
И как он поймет сколько это MAX_PLAYERS
Нужно будет еще ввести #define MAX_PLAYERS 32 ?

Сейчас попробую найти как использовать arrayset
17 Апр 2020
Jumper, а в массив нужно помещать userid одного игрока, или каждого на сервере, и обнулять каждому по отдельности, или вот тут мне в бошку пришло, мы же в масив записываем ид игрока который воспользовался командой и когда он спавнится делаем +1, после чего мы проверяем каждый раз если уже достаточно что бы воспользоваться командой, и если сумма его равна 3, то мы выполняем команду, и в этой же команде обнуляем массив, то он обнулится только для этого игрока или так же для всего сервера?
 

Ayk

Сообщения
763
Реакции
478
Помог
19 раз(а)
TTox421, нет. Где [4][2] там 4 вниз и 2 вправо.
 
Сообщения
63
Реакции
1
C++:
/* Plugin generated by AMXX-Studio */

#include <amxmodx>
#include <amxmisc>

#define PLUGIN "Restriction of usage of function in one round"
#define VERSION "1.0"
#define AUTHOR "Admin"

new g_F_counter[33] = 0

public plugin_init() {
    register_plugin(PLUGIN, VERSION, AUTHOR)
   
    register_event("ResetHUD","startround","be")
    register_cvar("amx_use_fn_in_round","3")
   
    register_clcmd("say /cmd","test_cmd")
}

public startround(id){
    g_F_counter[id] = g_F_counter[id] + 1
   
}


public test_cmd(id){
   
    if(g_F_counter[id] < get_cvar_num("amx_use_fn_in_round")){
        //add you code
        client_print(id,print_chat,"[Round counter] Приятной Игры!")
        g_F_counter[id] = 0
    }else{
        //ты исчерпал свои возможности в этом раунде
        client_print(id,print_chat,"[Round counter] Идите нахер, игра может быть приятной только раз в %i раундов",get_cvar_num("amx_use_fn_in_round"))
    }
}
17 Апр 2020
Такой пример сделает обнуление только у одного человека?
 

Пользователи, просматривающие эту тему

Сейчас на форуме нет ни одного пользователя.
Сверху Снизу