Ошибка: error 001: expected token: «;», but found «бла-бла»
Решение: Идём на строку выше той, что указана в ошибке и ставим в конце ; (точку с запятой).
Ошибка: error 021: symbol already defined: «бла-бла» или warning 219: local variable «бла-бла» shadows a variable at a preceding level
Решение: Ошибка появляется, если вы несколько раз создали одну и ту же переменную,stock,public.Для решения вам просто требуется удалить дубликат.
Ошибка: error 024: «break» or «continue» is out of context
Решение: break,continue используется только в цикле (for), данная ошибка появляется, если вы использовали их не в цикле. Для решения вам нужно просто заменить их.
Ошибка: error 032: array index out of bounds (variable «cartek»)
Решение: Ошибка появляется, если у вас превышен индекс массива. Для решение вам просто надо увеличить ‘число’ в создании массива.
Ошибка: error 040: duplicate «case» label (value %d)
Решение: Ошибка появляется, если вы два раза используете case с одним и тем же параметром.
Ошибка: fatal error 100: cannot read from file: «бла-бла»
Решение: Ошибка появляется, если вы подключили инклуд и не добавили в папку pawno/include. Для решения вам просто надо добавить в папку данный инклуд.
Ошибка: warning 203: symbol is never used: «бла-бла»
Решение: Ошибка появляется, если созданная переменная нигде не используется. Для решения вам просто требуются ещё удалить.
Ошибка: warning 209: function «бла-бла» should return a value
Решение: Для решения проблемы в данной функции/команде вам следует добавить в конец return true/return false.
Ошибка: warning 217: loose indentation
Решение: Для решения проблемы выровняйте строки.
Ошибка: warning 235: public function lacks forward declaration (symbol «бла-бла»)
Решение: Ошибка появляется, если вы создали public,а forward нет. Для решения вам просто надо создать forward к public’y.
По мере возможности тема будет дополняться
Posts: 182
Threads: 85
Joined: Jan 2014
Reputation:
0
Код:
(740) : error 040: duplicate "case" label (value 1)
help, how to problem fix?
Код:
case DCLASS: { if(!response) return ShowPlayerDialog(playerid,DCLASS,DIALOG_STYLE_LIST,"{0080AA}Vбlassz kategуriбt","AssaultnSnipernSupporter","Kivбlaszt",""); if(response) { if(listitem == 0) { ResetPlayerWeapons(playerid); gClass[playerid] = ASSAULT; GivePlayerWeapon(playerid,24,150); GivePlayerWeapon(playerid,31,300); GivePlayerWeapon(playerid,29,200); SendClientMessage(playerid,COLOR_GREEN,"[INFO]: Kivбlasztott kategуria, Assault."); pInfo[playerid][pRank] = 0; } if(listitem == 1) { ResetPlayerWeapons(playerid); gClass[playerid] = SNIPER; GivePlayerWeapon(playerid,24,150); GivePlayerWeapon(playerid,29,200); GivePlayerWeapon(playerid,34,200); SendClientMessage(playerid,COLOR_GREEN,"[INFO]: Kivбlasztott kategуria, Sniper."); pInfo[playerid][pRank] = 1; } if(listitem == 2) { ResetPlayerWeapons(playerid); SendClientMessage(playerid,COLOR_GREEN,"[INFO]: Kivбlasztott kategуria, Support."); GivePlayerWeapon(playerid,25,200); GivePlayerWeapon(playerid,29,200); GivePlayerWeapon(playerid,24,150); gClass[playerid] = SUPPORT; pInfo[playerid][pRank] = 2; } } } <<<<<<<<<<<<<<ERROR case DIALOG_VASARLAS: { if(!response) return 1; if(response) { if(listitem == 0) { SetPlayerArmour(playerid,100); SendClientMessage(playerid,COLOR_GREEN,"[INFO]: Sikeres vбsбrlбs! Pбncйlzat megvйve!"); pInfo[playerid][Penz] -= 15000; } if(listitem == 1) { SetPlayerHealth(playerid,100); SendClientMessage(playerid,COLOR_GREEN,"[INFO]: Sikeres vбsбrlбs! Йlet megvйve!"); pInfo[playerid][Penz] -= 10000; } if(listitem == 2) { GivePlayerWeapon(playerid,16,3); SendClientMessage(playerid,COLOR_GREEN,"[INFO]: Sikeres vбsбrlбs! Grбnбt megvйve!"); pInfo[playerid][Penz] -= 30000; } } } return 1; }
Posts: 632
Threads: 24
Joined: Aug 2011
It’s a little bit hard to read your code as you used the [/code] instead of tags, but I think you have an extra } so try deleting it, not sure though as I can’t read it properly.
Posts: 145
Threads: 3
Joined: Nov 2012
Reputation:
0
It can be that both dialogs have the same value? Show us the place you define them please.
Posts: 182
Threads: 85
Joined: Jan 2014
Reputation:
0
Posts: 182
Threads: 85
Joined: Jan 2014
Reputation:
0
Posts: 145
Threads: 3
Joined: Nov 2012
Reputation:
0
There are not #define tags there, where are you defining those labels?
#1
Отправлено 06 февраля 2021 — 13:33
-
- Прохожий
-
Делаю гугл аутентификатор, а вылазит ошибка error 040: duplicate «case» label (value 2) , но дубликата нету, что делать? скину что нужно
case DLG_SETTINGS:
{
switch(listitem)
{
case 0:
{
if(player_info[playerid][isauth] == 0)
{
SPD(playerid, DLG_GOOGLE_AUTH, DIALOG_STYLE_LIST, «{ff9300}Google-Authenticator», «{ffffff}1. Подключить {ff9300}Google-Authenticator», «Выбрать», «Отмена»);
}
else if(player_info[playerid][isauth] == 1)
{
SPD(playerid, DLG_GOOGLE_AUTH_MENU, DIALOG_STYLE_LIST, «{ff9300}Google-Authenticator», «{ffffff}1. Отключить {ff9300}Google-Authenticator{ffffff}n2. Настроить {ff9300}Google-Authenticator», «Выбрать», «Отмена»);
}
}
}
}
0
#2
Отправлено 06 февраля 2021 — 13:36
-
- Эксперт
-
Глянь внимательнее, пытаешься второй раз одно и то же значение использовать в кейсе.
0
#3
Отправлено 06 февраля 2021 — 13:41
-
- Прохожий
-
20th century (06 февраля 2021 — 13:36) писал:
Глянь внимательнее, пытаешься второй раз одно и то же значение использовать в кейсе.
В плане? что именно?
0
#4
Отправлено 06 февраля 2021 — 13:42
-
- Эксперт
-
Подозреваю, что case DLG_SETTINGS у тебя прописан второй раз.
Воспользуйся поиском (CTRL + F), либо на пастебин скинь весь OnDialogResponse.
0
#5
Отправлено 06 февраля 2021 — 13:48
-
- Прохожий
-
20th century (06 февраля 2021 — 13:42) писал:
Подозреваю, что case DLG_SETTINGS у тебя прописан второй раз.
Воспользуйся поиском (CTRL + F), либо на пастебин скинь весь OnDialogResponse.
нет он у меня 1 раз прописан
0
#6
Отправлено 06 февраля 2021 — 14:58
-
- Знаток
-
В OnPlayerDialog используешь помимо элементов enum’a ещё и численные значения? Вполне возможно, что DLG_SETTINGS содержит в себе число, которое уже использовалось в одном из case
0
#7
Отправлено 06 февраля 2021 — 23:31
-
- Эксперт
-
Научитесь вставлять код в специальные тэги. На этом форуме это: [ code] [/code] (без пробелов у скобок).
Касаемо проблемы: покажите весь обработчик диалогов (OnDialogResponse) и все макросы, которые определяют иды для диалогов.
0
#8
Отправлено 07 февраля 2021 — 09:19
-
- Местный
-
У тебя есть дефайн DLG_SETTINGS, под которым у тебя ID диалога (а именно, 2). Вероятно, у тебя уже используется этот ID диалога. То есть, где-то в OnDialogResponse уже есть это:
case 2: { }
или это:
case DLG_SETTINGS: { }
просто замени ID дубликата (и не забудь его заменить в показе диалога (ShowPlayerDialog))
0
- ← Предыдущая тема
- Вопросы по скриптингу
- Следующая тема →
- Вы не можете создать новую тему
-
Тема закрыта
1 человек читают эту тему
0 пользователей, 1 гостей, 0 скрытых пользователей
Ошибка: error 001: expected token: «;», but found «]»(пример)
Решение: Идём на строку выше той, что указана в ошибке и ставим в конце: ;
Ошибка: error 021: symbol already defined: «понятно в общем» или warning 219: local variable «тоже» shadows a variable at a preceding level
Решение: Ошибка появляется, если вы несколько раз создали одну и ту же переменную, stock, public.Для решения вам просто требуется удалить дубликат.
Ошибка: error 024: «break» or «continue» is out of context
Решение: break, continue используется только в цикле (for), данная ошибка появляется, если вы использовали их не в цикле. Для решения вам нужно заменить их.
Ошибка: error 032: array index out of bounds (variable «cartek»)
Решение: Ошибка появляется, если у вас превышен индекс массива. Для решения вам просто надо увеличить число в создании массива.
Ошибка: error 040: duplicate «case» label (value %d)
Решение: Ошибка появляется, если вы два раза используете case с одним и тем же параметром.
Ошибка: fatal error 100: cannot read from file: «понятно»
Решение: Ошибка появляется, если вы подключили инклуд и не добавили в папку pawno/include. Для решения вам просто надо добавить в папку данный инклуд.
Ошибка: warning 203: symbol is never used: «гы»
Решение: Ошибка появляется, если созданная переменная нигде не используется. Для решения вам просто требуются ещё удалить.
Ошибка: warning 209: function «ясно» should return a value
Решение: Для решения проблемы в данной функции/команде вам следует добавить в конец return true/return false.
Ошибка: warning 217: loose indentation
Решение: Для решения проблемы выровняйте строки.
Ошибка: warning 235: public function lacks forward declaration (symbol «ясно»)
Решение: Ошибка появляется, если вы создали public,а forward нет. Для решения вам просто надо создать forward к public’y.
Ошибка: fatal error 107: too many error messages on one line
Решение: Исправьте ошибки, которые даны выше, в частности в 1 строке. Именно поэтому выходит такая ошибка.
Ошибка: fatal error 100: cannot read from file: «%s»
Решение: Возможно вы удалили какую-то строку/файл, которую нужно добавить и проблема будет решена, вместо %s вам будет дана это строка/файл. Насколько я помню
Автор: Transcend
Тему можно дополнять!
Автор: minimiller
Перевод и редактирование: DJ_WEST
Список ошибок:
- Код: Выделить всё
/*001*/ "expected token: "%s", but found "%s"n",
/*002*/ "only a single statement (or expression) can follow each "case"n",
/*003*/ "declaration of a local variable must appear in a compound blockn",
/*004*/ "function "%s" is not implementedn",
/*005*/ "function may not have argumentsn",
/*006*/ "must be assigned to an arrayn",
/*007*/ "operator cannot be redefinedn",
/*008*/ "must be a constant expression; assumed zeron",
/*009*/ "invalid array size (negative or zero)n",
/*010*/ "invalid function or declarationn",
/*011*/ "invalid outside functionsn",
/*012*/ "invalid function call, not a valid addressn",
/*013*/ "no entry point (no public functions)n",
/*014*/ "invalid statement; not in switchn",
/*015*/ ""default" case must be the last case in switch statementn",
/*016*/ "multiple defaults in "switch"n",
/*017*/ "undefined symbol "%s"n",
/*018*/ "initialization data exceeds declared sizen",
/*019*/ "not a label: "%s"n",
/*020*/ "invalid symbol name "%s"n",
/*021*/ "symbol already defined: "%s"n",
/*022*/ "must be lvalue (non-constant)n",
/*023*/ "array assignment must be simple assignmentn",
/*024*/ ""break" or "continue" is out of contextn",
/*025*/ "function heading differs from prototypen",
/*026*/ "no matching "#if..."n",
/*027*/ "invalid character constantn",
/*028*/ "invalid subscript (not an array or too many subscripts): "%s"n",
/*029*/ "invalid expression, assumed zeron",
/*030*/ "compound statement not closed at the end of filen",
/*031*/ "unknown directiven",
/*032*/ "array index out of bounds (variable "%s")n",
/*033*/ "array must be indexed (variable "%s")n",
/*034*/ "argument does not have a default value (argument %d)n",
/*035*/ "argument type mismatch (argument %d)n",
/*036*/ "empty statementn",
/*037*/ "invalid string (possibly non-terminated string)n",
/*038*/ "extra characters on linen",
/*039*/ "constant symbol has no sizen",
/*040*/ "duplicate "case" label (value %d)n",
/*041*/ "invalid ellipsis, array size is not knownn",
/*042*/ "invalid combination of class specifiersn",
/*043*/ "character constant exceeds range for packed stringn",
/*044*/ "positional parameters must precede all named parametersn",
/*045*/ "too many function argumentsn",
/*046*/ "unknown array size (variable "%s")n",
/*047*/ "array sizes do not match, or destination array is too smalln",
/*048*/ "array dimensions do not matchn",
/*049*/ "invalid line continuationn",
/*050*/ "invalid rangen",
/*051*/ "invalid subscript, use "[ ]" operators on major dimensionsn",
/*052*/ "multi-dimensional arrays must be fully initializedn",
/*053*/ "exceeding maximum number of dimensionsn",
/*054*/ "unmatched closing bracen",
/*055*/ "start of function body without function headern",
/*056*/ "arrays, local variables and function arguments cannot be public (variable "%s")n",
/*057*/ "unfinished expression before compiler directiven",
/*058*/ "duplicate argument; same argument is passed twicen",
/*059*/ "function argument may not have a default value (variable "%s")n",
/*060*/ "multiple "#else" directives between "#if ... #endif"n",
/*061*/ ""#elseif" directive follows an "#else" directiven",
/*062*/ "number of operands does not fit the operatorn",
/*063*/ "function result tag of operator "%s" must be "%s"n",
/*064*/ "cannot change predefined operatorsn",
/*065*/ "function argument may only have a single tag (argument %d)n",
/*066*/ "function argument may not be a reference argument or an array (argument "%s")n",
/*067*/ "variable cannot be both a reference and an array (variable "%s")n",
/*068*/ "invalid rational number precision in #pragman",
/*069*/ "rational number format already definedn",
/*070*/ "rational number support was not enabledn",
/*071*/ "user-defined operator must be declared before use (function "%s")n",
/*072*/ ""sizeof" operator is invalid on "function" symbolsn",
/*073*/ "function argument must be an array (argument "%s")n",
/*074*/ "#define pattern must start with an alphabetic charactern",
/*075*/ "input line too long (after substitutions)n",
/*076*/ "syntax error in the expression, or invalid function calln",
/*077*/ "malformed UTF-8 encoding, or corrupted file: %sn",
/*078*/ "function uses both "return" and "return <value>"n",
/*079*/ "inconsistent return types (array & non-array)n",
/*080*/ "unknown symbol, or not a constant symbol (symbol "%s")n",
/*081*/ "cannot take a tag as a default value for an indexed array parameter (symbol "%s")n",
/*082*/ "user-defined operators and native functions may not have statesn",
/*083*/ "a function may only belong to a single automaton (symbol "%s")n",
/*084*/ "state conflict: one of the states is already assigned to another implementation (symbol "%s")n",
/*085*/ "no states are defined for function "%s"n",
/*086*/ "unknown automaton "%s"n",
/*087*/ "unknown state "%s" for automaton "%s"n",
/*088*/ "number of arguments does not match definitionn"
Разбор ошибок
Рассмотрим пример нахождения и самостоятельного решения ошибок при компиляции.
Допустим у нас есть ошибка:
C:AMXXexample.sma(107) : error 035: argument type mismatch (argument 2)
Теперь давайте попытаемся разобрать эту ошибку по частям:
1) C:AMXXexample.sma — это директория, где находится исходник (.sma) нашего плагина.
2) (107) — это номер строки, в которой есть ошибка. Большинство современных редакторов текста имеют панель с пронумерованными строками (Notepad++, AMXX-Studio и другие).
3) error 035 — это код ошибки (список ошибок указан выше).
4) argument type mismatch — это описание ошибки с кодом, указанным до этого. В данном случае нам говорится, что «аргумент имеет неверный тип».
5) (argument 2) — это более подробное описание ошибки. В данном случае нам указывается, что ошибка во 2 аргументе.
Итого, получаем: в файле example.sma, который находится в директории C:AMXX, в строке под номером 107 есть ошибка с кодом 035, которая означает, что аргумент 2 имеет неверный тип данных.
Решение ошибок
Теперь попытаемся исправить нашу ошибку. Идем в строку под номером 107 и видим следующий код:
- Код: Выделить всё
client_print(0, "Welcome to the server!")
Идем на Вы должны зарегистрироваться, чтобы видеть ссылки.
и читаем описание функции:
client_print — Sends a message to a player.
Syntax:
client_print ( index, type, const message[], … )id is a player index from 1 to 32. If 0, the message will be sent to all players.
The type is one of three types:
print_chat — chat text
print_console — console message
print_notify — console in dev mode
print_center — center say
Смотрим синтаксис команды client_print и видим, что первый аргумент index — это номер игрока (id), который может быть от 1 до 32, если же он 0, то сообщение будет отсылаться всем игрокам на сервере. Второй аргумент type — это тип сообщения, который может быть:
print_chat — текст в чат
print_console — текст в консоль
print_notify — текст в консоль в режиме разработчика
print_center — текст по центру
Третий аргумент message — это и есть текст нашего сообщения. Теперь вернемся, к нашему, коду. Мы видим, что у нас нет второго аргумента (тип сообщения), а сразу идет текст сообщения, исправляем на:
client_print(0, print_center, «Welcome to the server!»)
Теперь компиляция прошла успешно.
Описание ошибок:
error 001: expected token: «X», but found «Y»
Ошибка означает, что не найден X, когда найден Y. Наиболее часто возникает, когда забывают поставить недостающие знаки ; { } ( ).
Пример ошибки:
- Код: Выделить всё
public Function(id)
{
if (is_user_bot(id)
return PLUGIN_HANDLED// код
return PLUGIN_CONTINUE
}
error 017: undefined symbol «X»
Ошибка означает, что X — неизвестный сивол/команда/переменная/функция. Поэтому такую функцию или переменную нужно объявить перед использованием. Например, функция is_user_hacker не существует.
Пример ошибки:
- Код: Выделить всё
public Function(id)
{
if (is_user_hacker(id))
return PLUGIN_HANDLED// код
return PLUGIN_CONTINUE
}
error 032: array index out of bounds (variable X)
Ошибка означает, что в мы вышли за предел размера массива X.
Пример ошибки:
- Код: Выделить всё
new s_Name[32]
s_Name[33] = "*"
error 033: array must be indexed (variable X)
Ошибка означает, что массив должен быть проиндексирован. Например, мы не указали размер массива при его объявлении.
Пример ошибки:
- Код: Выделить всё
new s_String = "My string"
error 035: argument type mismatch (argument X)
Ошибка означает, что аргумент X имеет неверный тип данных. Например, когда вместо целочисленного аргумента передаем строку.
Пример ошибки:
- Код: Выделить всё
public Function1(id)
{
Function2(id, "10")
}public Function2(id, count)
{
// код
}
error 040: duplicate «case» label (value X)
Ошибка означает, что имеется дубль оператора case со значением X.
Пример ошибки:
- Код: Выделить всё
public Function(id)
{
switch(count)
{
case 1: count += 1
case 2: count += 2
case 2: count += 3
}
}
error 075: input line too long (after substitutions)
Ошибка означает, что указанная строка слишком длинная. Например, около 500 символов.
Пример ошибки:
- Код: Выделить всё
public Function(id)
{
server_print("AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA")
}
error 078: function uses both «return» and «return <value>»
Ошибка означает, что функция использует, как return, так и return <значение>.
Пример ошибки:
- Код: Выделить всё
public Function(id)
{
if (is_user_alive(id))
returnreturn PLUGIN_HANDLED
}
error 088: number of arguments does not match definition
Ошибка означает, что количество переданных аргументов не соответсвует количеству объявленных аргументов.
Пример ошибки:
- Код: Выделить всё
public Function1(id)
{
Function2(id)
}public Function2(id, count)
{
// код
}
Не пишите мне в ЛС: если вам нужна помощь на бесплатной основе. Любые вопросы на форум.
Как исправить Error
Автор: neka
Значение Error можно посмотреть здесь.
error 040: duplicate «case» label (value 28)
Это означает что case стаким значением повторяется. Решение этой проблемы простое — нам нужно цифру 28 изменит на другую (в той строчке на которую жалуется )
error 032: array index out of bounds (variable «JoinPed»)
Это означает что индекс массива превышен (но не всегда, смотрим дальше) Пример:
131 — массив поигравшись с ним я понял что дело не в нем, а в чём же спросите вы? Пример данной ошибки:
Код: Выделить всё
else if(SelectCharPlace[playerid] == 2) { SetPlayerSkin(playerid, JoinPed[123][0]); SelectCharPlace[playerid] = 3; InviteSkin[playerid] = JoinPed[98][0]; }
как видим — JoinPed[123] сначало с таким значением, а потом JoinPed[98]. Решение простое: JoinPed[123] число в данных скобках должно быть одинаковым. Пример:
Код: Выделить всё
else if(SelectCharPlace[playerid] == 2) { SetPlayerSkin(playerid, JoinPed[123][0]); SelectCharPlace[playerid] = 3; InviteSkin[playerid] = JoinPed[123][0]; }
error 037: invalid string (possibly non-terminated string)
Это означает что строка неправильная, а точнее где то допущена ошибка:
Код: Выделить всё
else if(PlayerInfo[targetid][pRank] == 4) { rangz = "Зам.модера; }
как видим нам после слова «модера» не хватает «. Правим:
Код: Выделить всё
else if(PlayerInfo[targetid][pRank] == 4) { rangz = "Зам.модера"; }
error 001: expected token: «,», but found «;»
Это значит что мы пропустили знак или скобку (в данном примере скобку) Пример:
Код: Выделить всё
public SaveProdykts()
{
new idx;
new File: file2;
while (idx < sizeof(ProdyktsInfo))
{
new coordsstring[256];
format(coordsstring, sizeof(coordsstring), "%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%dn",
ProdyktsInfo[idx][prSous],
ProdyktsInfo[idx][prPizza],
ProdyktsInfo[idx][prMilk],
ProdyktsInfo[idx][prJuice],
ProdyktsInfo[idx][prSpirt],
ProdyktsInfo[idx][prChicken],
ProdyktsInfo[idx][prKolbasa],
ProdyktsInfo[idx][prFish],
ProdyktsInfo[idx][prIceCream],
ProdyktsInfo[idx][prChips],
ProdyktsInfo[idx][prZamProd];
if(idx == 0)
{
file2 = fopen("[prodykts]/prodykts.cfg", io_write);
}
else
{
file2 = fopen("[prodykts]/prodykts.cfg", io_append);
}
fwrite(file2, coordsstring);
idx++;
fclose(file2);
}
return 1;
}
смотрим на:
и вим что мы ппропустили )
Правим:
И в итоге:
Код: Выделить всё
public SaveProdykts()
{
new idx;
new File: file2;
while (idx < sizeof(ProdyktsInfo))
{
new coordsstring[256];
format(coordsstring, sizeof(coordsstring), "%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%dn",
ProdyktsInfo[idx][prSous],
ProdyktsInfo[idx][prPizza],
ProdyktsInfo[idx][prMilk],
ProdyktsInfo[idx][prJuice],
ProdyktsInfo[idx][prSpirt],
ProdyktsInfo[idx][prChicken],
ProdyktsInfo[idx][prKolbasa],
ProdyktsInfo[idx][prFish],
ProdyktsInfo[idx][prIceCream],
ProdyktsInfo[idx][prChips],
ProdyktsInfo[idx][prZamProd]);< ----------- И вот наша скобка
if(idx == 0)
{
file2 = fopen("[prodykts]/prodykts.cfg", io_write);
}
else
{
file2 = fopen("[prodykts]/prodykts.cfg", io_append);
}
fwrite(file2, coordsstring);
idx++;
fclose(file2);
}
return 1;
}
error 002: only a single statement (or expression) can follow each «case»
Это означает что у вас после «case» идет if(dialogid == ). Пример:
Код: Выделить всё
case 7507:
{
if(response) ClothesSex[playerid] = 1;
else ClothesSex[playerid] = 2;
ShowPlayerDialog(playerid,7504,2,"??????? ??????","{A0B0D0}?????????? ?????? {7CC000}300$n{A0B0D0}??????? ?????? {7CC000}300$n{A0B0D0}???????????? ?????? {7CC000}300$n{A0B0D0}?????","???????","?????");
return 1;
}
if(dialogid == 7504) <------------------- вот наша и ошибка
{
if(response)
{
SetCameraBehindPlayer(playerid); TogglePlayerControllable(playerid, 1);
SetPlayerSkin(playerid, PlayerInfo[playerid][pModel]);
ClothesRun[playerid] = 0;
return 1;
}
Решение простое: if(dialogid == 7504) это нам нужно заменить на case как и последующий диалог !
Код: Выделить всё
case 7504: <------------------- вот так это выглядит
{
if(response)
{
SetCameraBehindPlayer(playerid); TogglePlayerControllable(playerid, 1);
SetPlayerSkin(playerid, PlayerInfo[playerid][pModel]);
ClothesRun[playerid] = 0;
return 1;
}
error 004: function «%s» is not implemented
Это означает что мы пропустили скобку. Мой совет:
- проверить весь код в ручную
- на форуме был урок как найти не по ставленую скобку
- Можно воспользоватся notepad++ там показы линии открытых скобок и тогда можно найти эту скобку
error 017: undefined symbol %s
Это означает что мы не поставили переменную new. Пример:
Решение — ко всем new добавим:
Что за ошибка?
error 040: duplicate «case» label (value 11)
case 3: ShowPlayerDialog(playerid, dAddNed+4, 1, "Добавить пикап", "ВАЖНО: Модель , Тип , ИмяnПРИМЕР: 1318 , 1, ПОЛИЦИЯ","Принять", "Отмена");
case dAddNed+4:
{
if(!response) return true;
new type, model, name[32], Float:x, Float:y, Float:z;
if(sscanf(inputtext,"p<,>iis[32]",type,model,name)) return ShowPlayerDialog(playerid, dAddNed+2, 1, "Добавить пикап", "ВАЖНО: Модель , Тип , ИмяnПРИМЕР: 1318 , 1, ПОЛИЦИЯ","Принять", "Отмена");
GetPlayerPos(playerid, x, y, z);
format(coordc, sizeof(coordc), "%f, %f, %f, %d, %d, %d, %d, %s", x, y, z, model, type, GetPlayerInterior(playerid), GetPlayerVirtualWorld(playerid), name);
SendClientMessage(playerid, COLOR_LIGHTRED, "{5CACEE}[ & ] {FFFFFF}Координаты созданы. Установите выходные координаты: /ppc");
format(totalstring,200,"{F86368}[A] %s %s[%d]: {ffffff}создал пикап",GetName(playerid),playerid);
SendAdminMessage(COLOR_ORANGE,totalstring);
PPC[playerid] = true;
}
hrpyak
Начинающий
- Регистрация
- 29 Янв 2021
- Сообщения
- 36
- Лучшие ответы
- 0
- Репутация
- 0
-
#1
Всем привет облазил все не могу найти решение. Помогите прошу
P.S. Пишет что кейс используется но я его только что создал и он не используется
Код:
case DLG_DLG:
{
if(response)
{
}
else
{
new str[128];
format(str, sizeof(str),"%s отказался от ввода админ-пароля", pInfo[playerid][pName]);
SAM(Color_Red, str);
}
}