• Гость, перед открытием темы прочитай описание раздела, чтобы не ошибиться. Любые вопросы по настройке сервера создаются в разделе Технической Поддержки.

Закрыто Ошибка компиляции

Статус
В этой теме нельзя размещать новые ответы.

FustGame

Участник
Сообщения
28
Симпатии
1
Баллы
59
#1
Здравствуйте!

Помогите пожалуйста исправить ошибку, не знаю в чём проблема, проверил все } все скованы.
/hlds/web/www/amxxpc/work/scripting/vip_gold_menu.sma(270) : error 001: expected token: "}", but found "-end of file-"

1 Error.
 

Вложения

Sokrat

Участник
Сообщения
2
Симпатии
0
Баллы
57
#2
Здравствуйте!

Помогите пожалуйста исправить ошибку, не знаю в чём проблема, проверил все } все скованы.
/hlds/web/www/amxxpc/work/scripting/vip_gold_menu.sma(270) : error 001: expected token: "}", but found "-end of file-"

1 Error.

Посоветую его плагины не ставить на сервер, от LEO плагины хреновые !!!

лучше поставь такой !!!!то же самое будут проблемы с ним (пиши в вк vk.com/sokrat007)
Плагин не мой сразу говорю)))

Описание;
Голд Мка и Ак
выдача каждый раунд армор,гранаты ,дигл!
блокировка на картах аим и авп
Простой игрок не может взять голд оружие!!!

ССЫЛКА
[Ссылка]
 

stcore

Участник
Сообщения
78
Симпатии
21
Баллы
64
#3
Мой блокнот насчитал 40 "{" и 39 "}".
В последней функции повнимательней.
 

BadMandarin

Участник
Сообщения
138
Симпатии
51
Баллы
104
#4
FustGame, Лови.
Sokrat, Не рекламируй чужие плагины, тем более если они не твои.
 

Вложения

FustGame

Участник
Сообщения
28
Симпатии
1
Баллы
59
#5
FustGame, Лови.
Sokrat, Не рекламируй чужие плагины, тем более если они не твои.
Спасибо, конечно, но чот я вставил ограничение по раундам, но не работает, почему-то, 1 раз берется и всё, в след раунде не берется ничего((
Подскажи пожалуйста.
 

stcore

Участник
Сообщения
78
Симпатии
21
Баллы
64
#6
Я так понимаю, это ты так делал счетчик раундов? В этом нет никакого логического смысла.

C++:
new vip_1[33], vip_2[33], vip_3[33], vip_4[33], vip_5[33], vip_6[33]

if(vip_1[id] == 0) {
    vip_1[id] = 1
    ...
}
Выдавая бонусы с випки, тебе нужно сверять раунды.

Например,
C++:
        case 1: {
            if(round < N)
                return PLUGIN_HANDLED
            
            if(!has_gold_m4a1[id]) {
               give_item(id, "weapon_m4a1")[/INDENT]
               cs_set_user_bpammo(id, CSW_M4A1, 90)[/INDENT]
               has_gold_m4a1[id] = true[/INDENT]
               ColorChat(id, GREY,"^4[^1VIPMENU^4] ^1Ты взял золотой комплект ^4[^1M4a1+Deagle^4]")[/INDENT]
               give_item(id, "weapon_deagle")[/INDENT]
               cs_set_user_bpammo(id, CSW_DEAGLE, 35)[/INDENT]
               has_gold_deagle[id] = true[/INDENT]
               give_item(id, "weapon_hegrenade")[/INDENT]
               give_item(id, "weapon_flashbang")[/INDENT]
               give_item(id, "weapon_flashbang")[/INDENT]
               give_item(id, "weapon_smokegrenade")[/INDENT]
            }
        }

Или ещё лучше
C++:
if(!is_user_alive(id))
    {
        return PLUGIN_HANDLED
    }
if(round < N) {
    ColorChat(id, GREY,"^4[^1VIPMENU^4] ^1Доступно с N раунда")
    return PLUGIN_HANDLED
}

    new data[6], iName[64], access, callback
 

BadMandarin

Участник
Сообщения
138
Симпатии
51
Баллы
104
#7
Я так понимаю, это ты так делал счетчик раундов? В этом нет никакого логического смысла.

C++:
new vip_1[33], vip_2[33], vip_3[33], vip_4[33], vip_5[33], vip_6[33]

if(vip_1[id] == 0) {
    vip_1[id] = 1
    ...
}
Выдавая бонусы с випки, тебе нужно сверять раунды.

Например,
C++:
        case 1: {
            if(round < N)
                return PLUGIN_HANDLED
           
            if(!has_gold_m4a1[id]) {
               give_item(id, "weapon_m4a1")[/INDENT]
               cs_set_user_bpammo(id, CSW_M4A1, 90)[/INDENT]
               has_gold_m4a1[id] = true[/INDENT]
               ColorChat(id, GREY,"^4[^1VIPMENU^4] ^1Ты взял золотой комплект ^4[^1M4a1+Deagle^4]")[/INDENT]
               give_item(id, "weapon_deagle")[/INDENT]
               cs_set_user_bpammo(id, CSW_DEAGLE, 35)[/INDENT]
               has_gold_deagle[id] = true[/INDENT]
               give_item(id, "weapon_hegrenade")[/INDENT]
               give_item(id, "weapon_flashbang")[/INDENT]
               give_item(id, "weapon_flashbang")[/INDENT]
               give_item(id, "weapon_smokegrenade")[/INDENT]
            }
        }

Или ещё лучше
C++:
if(!is_user_alive(id))
    {
        return PLUGIN_HANDLED
    }
if(round < N) {
    ColorChat(id, GREY,"^4[^1VIPMENU^4] ^1Доступно с N раунда")
    return PLUGIN_HANDLED
}

    new data[6], iName[64], access, callback
я лишь поправил скобку.
 

FustGame

Участник
Сообщения
28
Симпатии
1
Баллы
59
#8
Добавил вот это
case 1: {
if(round < N)
return PLUGIN_HANDLED

if(!has_gold_m4a1[id]) {
give_item(id, "weapon_m4a1")
cs_set_user_bpammo(id, CSW_M4A1, 90)
has_gold_m4a1[id] = true
ColorChat(id, GREY,"^4[^1VIPMENU^4] ^1Ты взял золотой комплект ^4[^1M4a1+Deagle^4]")
give_item(id, "weapon_deagle")
cs_set_user_bpammo(id, CSW_DEAGLE, 35)
has_gold_deagle[id] = true
give_item(id, "weapon_hegrenade")
give_item(id, "weapon_flashbang")
give_item(id, "weapon_flashbang")
give_item(id, "weapon_smokegrenade")
}
}
Но все равно можно брать хоть сколько всего...
 

BadMandarin

Участник
Сообщения
138
Симпатии
51
Баллы
104
#9
FustGame,
if(round < N)
return PLUGIN_HANDLED
Насмешил...
N - это число
if(round < N) = если(раунд меньше число){ return PLUGIN_HANDLED = останавливаем функцию }

Вместо n поставь число. Если хочешь чтобы после 2 раунда работало ставь 2 и тд
 

FustGame

Участник
Сообщения
28
Симпатии
1
Баллы
59
#10
FustGame,

Насмешил...
N - это число
if(round < N) = если(раунд меньше число){ return PLUGIN_HANDLED = останавливаем функцию }

Вместо n поставь число. Если хочешь чтобы после 2 раунда работало ставь 2 и тд
Cтавил, не работает)
 

FustGame

Участник
Сообщения
28
Симпатии
1
Баллы
59
#11
case 1: {
if(round < 2)
{
give_item(id, "weapon_m4a1")
cs_set_user_bpammo(id, CSW_M4A1, 90)
has_gold_m4a1[id] = true
ColorChat(id, GREY,"^4[^1VIPMENU^4] ^1Ты взял золотой комплект ^4[^1M4a1+Deagle^4]")
give_item(id, "weapon_deagle")
cs_set_user_bpammo(id, CSW_DEAGLE, 35)
has_gold_deagle[id] = true
give_item(id, "weapon_hegrenade")
give_item(id, "weapon_flashbang")
give_item(id, "weapon_flashbang")
give_item(id, "weapon_smokegrenade")
}
return PLUGIN_HANDLED
}
В начале 1-го раунда, доступны все функции.
А следующие раунды просто блокирует, и нельзя взять ничего.
Сделал рестарт раунда, и спокойно берется. А потом опять так же в след раунде ничего. Работают лишь некоторые пункты.
 

FustGame

Участник
Сообщения
28
Симпатии
1
Баллы
59
#13
а лол, round меньше 2, а нужно round > 2 (раунд больше 2)
Что-то не заметил
Спасибо, а не скажешь как сделать чтоб через 15 секунд после начала раунда меню автоматом закрывалось?
 

BadMandarin

Участник
Сообщения
138
Симпатии
51
Баллы
104
#14
FustGame,
C++:
set_task(15.0, "close_menu", taskid+id);

close_menu(id){
id -= taskid;
client_cmd(id, "menuselect 10");
}
Это один из способов.
 

stcore

Участник
Сообщения
78
Симпатии
21
Баллы
64
#17
set_task в round_start
Остальное ниже

Этот вариант особо не поможет, у большенства протектор заблочит
 

BadMandarin

Участник
Сообщения
138
Симпатии
51
Баллы
104
#19
set_task в round_start
Остальное ниже

Этот вариант особо не поможет, у большенства протектор заблочит
Если новая система то можно menu_destroy

Я же не вижу сам плагин что я тут наугад скажу.
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху