Русское сообщество по скриптингу

Использовать команду тем у кого есть опр. флаг доступа.  [Решено]

Все вопросы по скриптингу для AMXX, помощь в редактировании плагинов.

Модераторы: Subb98, liFe iS GoOD

Правила форума
1. Запрещено материться и оскорблять других участников форума.
2. Запрещен флуд, оффтоп, дабл постинг во всех разделах форума, кроме раздела "Болтовня".
3. Запрещено взламывать сайт/форум или наносить любой вред проекту.
4. Запрещено рекламировать другие ресурсы.
5. Запрещено создавать темы без информативного названия. Название темы должно отображать ее смысл.

В данном разделе форума разрешено создавать темы, касающие только скриптинга для AMX Mod X.

Правила при создании новой темы:
1. При вставке кода плагина необходимо использовать тег [code=php].
2. Любые изображения должны быть загружены, как вложения к вашему сообщению.
3. При описании проблемы или запросе на помощь в редактировании плагина обязательно выкладывайте исходник sma плагина.

Использовать команду тем у кого есть опр. флаг доступа.

Сообщение JustProOnline » 12 фев 2018, 18:52

Как сделать чтобы проверка "native_has_round_started" работала именно у тех игроков у которых нет флага доступа "ADMIN_LEVEL_G".

Если у игроков есть флаг доступа "ADMIN_LEVEL_G", то проверка "native_has_round_started" для них не работает.

В данный момент проверка "native_has_round_started" работает у всех игроков.

Код: Выделить всё
            if (!native_has_round_started())
            {
                if (userflags & (g_access_flag[ACCESS_MODE_INFECTION] | g_access_flag[ACCESS_MAKE_ZOMBIE]))
                {
                    PL_ACTION = ACTION_ZOMBIEFY_HUMANIZE
                    
                    show_menu_player_list
(id)                
                
}
                else
                
{
                    zp_colored_print(id, "^x04[ZP]^x01 %L", LANG_PLAYER, "CMD_NOT_ADMIN_RE")
                }
            }
            else
            
{
                zp_colored_print(id, "^x04[ZP]^x01 %L", LANG_PLAYER, "CMD_NOT_ADMIN_RE")
            }
Аватара пользователя
JustProOnline
 
Сообщения: 160
Зарегистрирован: 30 дек 2017, 10:14
Благодарил (а): 23 раз.
Поблагодарили: 14 раз.
Опыт программирования: Около года
Языки программирования: C++
Counter-Strike 1.6

Re: Использовать команду тем у кого есть опр. флаг доступа.

Сообщение DeMNiX » 12 фев 2018, 20:18

Код: Выделить всё
if ((~get_user_flags(id) & ADMIN_LEVEL_G) && (!native_has_round_started())) 
Работа с моделями для кс 1.6
Telegram @DeMNiX
vk com/sbalburov
Аватара пользователя
DeMNiX
 
Сообщения: 177
Зарегистрирован: 24 сен 2011, 17:48
Благодарил (а): 25 раз.
Поблагодарили: 37 раз.
Опыт программирования: Около года
Языки программирования: Counter-Strike 1.6

Re: Использовать команду тем у кого есть опр. флаг доступа.

Сообщение JustProOnline » 12 фев 2018, 22:35

DeMNiX, не работает.
Последний раз редактировалось JustProOnline 13 фев 2018, 16:04, всего редактировалось 1 раз.
Аватара пользователя
JustProOnline
 
Сообщения: 160
Зарегистрирован: 30 дек 2017, 10:14
Благодарил (а): 23 раз.
Поблагодарили: 14 раз.
Опыт программирования: Около года
Языки программирования: C++
Counter-Strike 1.6

Re: Использовать команду тем у кого есть опр. флаг доступа.

Сообщение DeMNiX » 13 фев 2018, 01:23

что ты вообще пытаешься сделать
типо отсеять игроков с флагом от заражения или доступ к меню?
Работа с моделями для кс 1.6
Telegram @DeMNiX
vk com/sbalburov
Аватара пользователя
DeMNiX
 
Сообщения: 177
Зарегистрирован: 24 сен 2011, 17:48
Благодарил (а): 25 раз.
Поблагодарили: 37 раз.
Опыт программирования: Около года
Языки программирования: Counter-Strike 1.6

Re: Использовать команду тем у кого есть опр. флаг доступа.

Сообщение JustProOnline » 13 фев 2018, 16:03

DeMNiX, хочу сделать так: Простые админы могут использовать админ меню 1 раз, то есть заразил ты кого-то через него, и всё больше нельзя (жди следующего раунда ну и + дабы не нарушать). А для главных админов этого запрета не будет, то есть они в это меню могут заходить сколько душе позволит.
Аватара пользователя
JustProOnline
 
Сообщения: 160
Зарегистрирован: 30 дек 2017, 10:14
Благодарил (а): 23 раз.
Поблагодарили: 14 раз.
Опыт программирования: Около года
Языки программирования: C++
Counter-Strike 1.6

Re: Использовать команду тем у кого есть опр. флаг доступа.

Сообщение KOTOKU » 13 фев 2018, 16:55

DeMNiX писал(а):
Код: Выделить всё
if ((~get_user_flags(id) & ADMIN_LEVEL_G) && (!native_has_round_started())) 


Твоя проверка сработает только если натив !native_has..


Тут либо всю функцию в отдельный if выносить, типа

Код: Выделить всё
if(~get_user_flags(id) & ADMIN_LEVEL_G)
{
          // а тут уже твой код, что в первом посту
}


Либо дополнять код Demnix'а еще проверкой на native
Аватара пользователя
KOTOKU
 
Сообщения: 766
Зарегистрирован: 10 фев 2013, 00:53
Благодарил (а): 10 раз.
Поблагодарили: 117 раз.

Re: Использовать команду тем у кого есть опр. флаг доступа.  [Решено]

Сообщение DeMNiX » 14 фев 2018, 00:13

этот кусок кода тебе ничего не даст имхо
надо отдельный show_menu_player_list для этой ситуации прописать, есть конфликтная ситуация, когда раунд еще не начался, админ может сделать сразу несколько зм
Работа с моделями для кс 1.6
Telegram @DeMNiX
vk com/sbalburov
Аватара пользователя
DeMNiX
 
Сообщения: 177
Зарегистрирован: 24 сен 2011, 17:48
Благодарил (а): 25 раз.
Поблагодарили: 37 раз.
Опыт программирования: Около года
Языки программирования: Counter-Strike 1.6


Вернуться в Скриптинг

Кто сейчас на конференции

Сейчас этот форум просматривают: Bing [Bot] и гости: 15

cron