WhItE-AnGeL
Заблокирован
- Регистрация
- 13 Июл 2013
- Сообщения
- 311
- Лучшие ответы
- 0
- Репутация
- 19
- Веб-сайт
- vk.com
-
#1
Привет всем пользователям п-и
я недавно скачал скрипт но он компилируется с ошибками помогите исправить
код
C:UsersAdminDesktopSpeedometer_v1.0.pwn(37) : error 017: undefined symbol «TEXT_DRAW_FONT_MODEL_PREVIEW»
C:UsersAdminDesktopSpeedometer_v1.0.pwn(39) : error 017: undefined symbol «PlayerTextDrawSetPreviewModel»
C:UsersAdminDesktopSpeedometer_v1.0.pwn(41) : error 017: undefined symbol «PlayerTextDrawSetPreviewRot»
C:UsersAdminDesktopSpeedometer_v1.0.pwn(44) : error 017: undefined symbol «TEXT_DRAW_FONT_MODEL_PREVIEW»
C:UsersAdminDesktopSpeedometer_v1.0.pwn(46) : error 017: undefined symbol «PlayerTextDrawSetPreviewModel»
C:UsersAdminDesktopSpeedometer_v1.0.pwn(48) : error 017: undefined symbol «PlayerTextDrawSetPreviewRot»
C:UsersAdminDesktopSpeedometer_v1.0.pwn(112) : error 017: undefined symbol «TEXT_DRAW_FONT_MODEL_PREVIEW»
C:UsersAdminDesktopSpeedometer_v1.0.pwn(114) : error 017: undefined symbol «PlayerTextDrawSetPreviewModel»
C:UsersAdminDesktopSpeedometer_v1.0.pwn(116) : error 017: undefined symbol «PlayerTextDrawSetPreviewRot»
C:UsersAdminDesktopSpeedometer_v1.0.pwn(121) : error 017: undefined symbol «TEXT_DRAW_FONT_MODEL_PREVIEW»
C:UsersAdminDesktopSpeedometer_v1.0.pwn(123) : error 017: undefined symbol «PlayerTextDrawSetPreviewModel»
C:UsersAdminDesktopSpeedometer_v1.0.pwn(125) : error 017: undefined symbol «PlayerTextDrawSetPreviewRot»
C:UsersAdminDesktopSpeedometer_v1.0.pwn(130) : error 017: undefined symbol «TEXT_DRAW_FONT_MODEL_PREVIEW»
C:UsersAdminDesktopSpeedometer_v1.0.pwn(132) : error 017: undefined symbol «PlayerTextDrawSetPreviewModel»
C:UsersAdminDesktopSpeedometer_v1.0.pwn(134) : error 017: undefined symbol «PlayerTextDrawSetPreviewRot»
C:UsersAdminDesktopSpeedometer_v1.0.pwn(139) : error 017: undefined symbol «TEXT_DRAW_FONT_MODEL_PREVIEW»
C:UsersAdminDesktopSpeedometer_v1.0.pwn(141) : error 017: undefined symbol «PlayerTextDrawSetPreviewModel»
C:UsersAdminDesktopSpeedometer_v1.0.pwn(143) : error 017: undefined symbol «PlayerTextDrawSetPreviewRot»
C:UsersAdminDesktopSpeedometer_v1.0.pwn(148) : error 017: undefined symbol «TEXT_DRAW_FONT_MODEL_PREVIEW»
C:UsersAdminDesktopSpeedometer_v1.0.pwn(150) : error 017: undefined symbol «PlayerTextDrawSetPreviewModel»
C:UsersAdminDesktopSpeedometer_v1.0.pwn(152) : error 017: undefined symbol «PlayerTextDrawSetPreviewRot»
C:UsersAdminDesktopSpeedometer_v1.0.pwn(157) : error 017: undefined symbol «TEXT_DRAW_FONT_MODEL_PREVIEW»
C:UsersAdminDesktopSpeedometer_v1.0.pwn(159) : error 017: undefined symbol «PlayerTextDrawSetPreviewModel»
C:UsersAdminDesktopSpeedometer_v1.0.pwn(161) : error 017: undefined symbol «PlayerTextDrawSetPreviewRot»
C:UsersAdminDesktopSpeedometer_v1.0.pwn(166) : error 017: undefined symbol «TEXT_DRAW_FONT_MODEL_PREVIEW»
C:UsersAdminDesktopSpeedometer_v1.0.pwn(168) : error 017: undefined symbol «PlayerTextDrawSetPreviewModel»
Compilation aborted.Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase
26 Errors.
From SA-MP Wiki
Jump to: navigation, search
Undefined symbol is a Pawn compiler error message. The Pawn Language Guide formally defines this error as error 017, and explains that the error means «The symbol (variable, constant or function) is not declared«.
The error will look roughly look like this: error 017: undefined symbol «WelcomePlayer»
Cause
The error occurs when a piece of code references a variable, constant or function that the compiler cannot find. Often, this error is encountered by scripters who recklessly copy and paste code from one script to another, not realizing that the code in question depends on other code in the original script. Another, more common mistake made by even the most experienced scripters, is misspelling symbols.
Example with a function
This is example where a function that does not exists is referenced. A reckless copy-paster is copying a piece for code from the original script (awesomeroleplay.pwn) to his or her own (supercoolrp.pwn). awesomeroleplay.pwn compiles without any warnings or errors.
The reckless copy-paster decides to copy this piece of code from the original script:
awesomeroleplay.pwn
public OnPlayerConnect(playerid) { WelcomePlayer(playerid); }
The reckless copy-paster replaces supercoolrp.pwn’s OnPlayerConnect callback with the one from awesomeroleplay.pwn and then attemps to compile it. The compiler will, however, throw an error: error 017: undefined symbol «WelcomePlayer». This is because the function WelcomePlayer does not exist the paster’s own script. In other words: the piece of code that the reckless copy-paster pasted, depends on other code in awesomeroleplay.pwn. The paster will need to copy the dependent script as well.
In the original script, the function WelcomePlayer is defined.
awesomeroleplay.pwn
WelcomePlayer(playerid) { SendClientMessage(playerid, "Welcome to Interactive Roleplay!", 0xFF0000AA); }
The reckless copy-paster will need to copy and paste this function into his own script as well to make the code compile correctly. If this function would also depend on other code, the paster will need to copy and paste that code as well. In fact, the paster would need to repeat this step until all dependencies are resolved.
Tips for resolving this error
- Use Ctrl + F to find the missing symbol (note that the compiler will tell you what symbol is missing after the words undefined symbol!) in the original script. If the symbol is a variable, you will have to copy all code that is relevant to its «ecosystem», that is to say, all code that modifies the variable. For beginning scripters and reckless copy-pasters, this may be hard, because it requires a deep understanding of the code and code paths.
- Look into the includes of the original script.
- Make sure you are adding the right includes.
- Make sure you are not misspelling the symbol.
17 минут назад, Nekit_Krut18 сказал:
@x_SkYAs_x Покажите код этих строк, на которых ошибки. Используйте для этого, спойлер и тег ‘ Код ‘.
8452: SetVehicleData(GetPlayerVehicleID(playerid),V_BAGAGE_AMOUNT_GUN,0); 10475: if GetVehicleData(vehicleid, V_BAGAGE_AMOUNT_GUN)+500 > 3000 *then SendClientMessage(playerid,-1,"Матовоз переполнен!"); 10478: SetVehicleData(vehicleid,V_BAGAGE_AMOUNT_GUN,GetVehicleData(vehicleid, V_BAGAGE_AMOUNT_GUN)+500); 10479: format(l_string,26,"Матовоз загружен: 0/%d",GetVehicleData(vehicleid,V_BAGAGE_AMOUNT_GUN)); 10594: if GetVehicleData(vehicleid, V_BAGAGE_AMOUNT_GUN)+500 > 3000 *then SendClientMessage(playerid,-1,"Матовоз переполнен!"); 10597: SetVehicleData(vehicleid,V_BAGAGE_AMOUNT_GUN,GetVehicleData(vehicleid, V_BAGAGE_AMOUNT_GUN)+500); 10598: format(l_string,26,"Матовоз загружен: 0/%d",GetVehicleData(vehicleid,V_BAGAGE_AMOUNT_GUN));
new V_BAGAGE_AMOUNT_GUN
Я все правильно сделал с этим?
Ну и в конце » ; » забыл дописать тут
Отредактировано 15 января, 2021 пользователем x_SkYAs_x
Содержание
- Форум Pawn.Wiki — Воплоти мечту в реальность!: error 017: undefined symbol «to_player» — Форум Pawn.Wiki — Воплоти мечту в реальность!
- Компилирования
- #1 azik215
- Прикрепленные файлы
- #2 The
- #3 azik215
- #4 FasT of boni
- #5 azik215
- #6 FasT of boni
- #7 azik215
- #8 FasT of boni
- Форум Pawn.Wiki — Воплоти мечту в реальность!: error 017 — Форум Pawn.Wiki — Воплоти мечту в реальность!
- Форум Pawn.Wiki — Воплоти мечту в реальность!: error 017: undefined symbol «pc_cmd_gnews» — Форум Pawn.Wiki — Воплоти мечту в реальность!
Форум Pawn.Wiki — Воплоти мечту в реальность!: error 017: undefined symbol «to_player» — Форум Pawn.Wiki — Воплоти мечту в реальность!
- Pawn скриптинг
- Первая помощь
- Проблемы с компилированием
- Правила форума
- Просмотр новых публикаций
- Группа: Активные пользователи
- Сообщений: 76
- Регистрация: 15 февраля 22
суть такая, хотел усовершенствовать свой код, в итоге ничего не получилось, так как опыта мало.
Ошибка:
Сам код, на который ругается павно:
поправте, если в коде есть ошибка.
Сообщение отредактировал Kirill_Babkin: 06 июня 2022 — 17:31
- Группа: Активные пользователи
- Сообщений: 1 039
- Регистрация: 07 июня 21
Сообщение отредактировал Perdolinka: 06 июня 2022 — 17:55
Источник
Компилирования
#1 azik215
Помогите , что за ошибка??
Прикрепленные файлы
Безымянный.png152,94К 3 Количество загрузок:
#2 The
Помогите , что за ошибка??
error 017 : undefined symbol «%s» — неизвестный символ «%s» ;
warning 217: loose indentation — не выровненная строка
Сообщение отредактировал The: 12 Сентябрь 2014 — 18:56
#3 azik215
error 017 : undefined symbol «%s» — неизвестный символ «%s» ;
с ним то , что делать с 2 я разобрался
#4 FasT of boni
warning 217: loose indentation
Проблема с отступами. Внутри функции отступы должны быть сделаны или с помощью TAB, или с помощью пробелов — нельзя их смешивать, выберите что-то одно.
#5 azik215
warning 217: loose indentation
Проблема с отступами. Внутри функции отступы должны быть сделаны или с помощью TAB, или с помощью пробелов — нельзя их смешивать, выберите что-то одно
Я с этим разобрался мне нужно
error 017 : undefined symbol «%s» — неизвестный символ «%s» ;
Что с ним делать?
LogMgr_Print(g_moduleCore, LogType_Debug, «PurchaseUpgrade», «Client %d tried to buy interlocked upgrade %s», client, name);
#6 FasT of boni
Я с этим разобрался мне нужно
error 017 : undefined symbol «%s» — неизвестный символ «%s» ;
Что с ним делать?
LogMgr_Print(g_moduleCore, LogType_Debug, «PurchaseUpgrade», «Client %d tried to buy interlocked upgrade %s», client, name);
error 017 : undefined symbol «x»
Используемый символ не найден. Или забыли переменную объявить, или не подключили модуль. Если это какая-то SourceMod команда, например, CS_RespawnPlayer, то зайдите в API и введите её в поле «Search:». Выше над командой жирным шрифтом будет указано имя модуля, например, «cstrike», и чтобы его подключить, добавьте в самый верх кода #include
#7 azik215
Я с этим разобрался мне нужно
error 017 : undefined symbol «%s» — неизвестный символ «%s» ;
Что с ним делать?
LogMgr_Print(g_moduleCore, LogType_Debug, «PurchaseUpgrade», «Client %d tried to buy interlocked upgrade %s», client, name);
error 017 : undefined symbol «x»
Используемый символ не найден. Или забыли переменную объявить, или не подключили модуль. Если это какая-то SourceMod команда, например, CS_RespawnPlayer, то зайдите в API и введите её в поле «Search:». Выше над командой жирным шрифтом будет указано имя модуля, например, «cstrike», и чтобы его подключить, добавьте в самый верх кода #include
Можно я в лс файл кину. Ты сделаешь??
#8 FasT of boni
Можно я в лс файл кину. Ты сделаешь??
Источник
Форум Pawn.Wiki — Воплоти мечту в реальность!: error 017 — Форум Pawn.Wiki — Воплоти мечту в реальность!
- Pawn скриптинг
- Первая помощь
- Проблемы с компилированием
- Правила форума
- Просмотр новых публикаций
- Группа: Пользователи
- Сообщений: 11
- Регистрация: 15 мая 13
C:Users. 1DownloadsSNK RPGSNKgamemodesSNKland.pwn(6147) : error 017: undefined symbol «SNKland»
Pawn compiler 3.2.3664 Copyright © 1997-2006, ITB CompuPhase
Как исправить?
Мод писал не с 0:D
- Группа: Активные пользователи
- Сообщений: 359
- Регистрация: 02 июня 12
Сообщение отредактировал VistigoN: 28 мая 2013 — 16:09
- Группа: Пользователи
- Сообщений: 11
- Регистрация: 15 мая 13
C:Users. 1DownloadsSNKlandSNKlandgamemodesSNKland. pwn(6148) : error 035: argument type mismatch (argument 1)
C:Users. 1DownloadsSNKlandSNKlandgamemodesSNKland. pwn(29486) : warning 203: symbol is never used: «SNKland»
Pawn compiler 3.2.3664 Copyright © 1997-2006, ITB CompuPhase
29486 Вобще строчки нет такой О_о
Сообщение отредактировал weZZy: 28 мая 2013 — 16:37
Источник
Форум Pawn.Wiki — Воплоти мечту в реальность!: error 017: undefined symbol «pc_cmd_gnews» — Форум Pawn.Wiki — Воплоти мечту в реальность!
- Pawn скриптинг
- Первая помощь
- Проблемы с компилированием
- Правила форума
- Просмотр новых публикаций
- Группа: Пользователи
- Сообщений: 3
- Регистрация: 17 ноября 19
всё уже пробовал, понятия не имею, что не так.
case 21:
<
if(response)
<
if(strlen(inputtextsave)==0) return callcmd::gnews(playerid,»»);
new/> new text1, text2, text3[32], time[32];
sscanf(inputtextsave,»p dds[32]»,text1,text2,text3);
format(time,sizeof(time),»%d:%d»,text1,text2);
SobesStatus[id]=1;
SetString(SobesTime[id],time);
SetString(SobesMesto[id],text3);
SobesTime1[id]=text1;
SobesTime2[id]=text2;
format(string,sizeof(string),»[D] %s %s[%d] — Íàçíà÷èë ñîáåñåäîâàíèå â ñâîþ îðãàíèçàöèþ íà %s!»,GetRankName(id,PlayerInfo[playerid][pRank]),PN(playerid),playerid,time);
SendGosMessage(COLOR_DEPAR,string);
// SobesMesto[0]=text3;
/*format(string,sizeof(string),»%d %d %s»,text1,text2,text3);
SendClientMessage(playerid,-1,string);*/
>
>
C:UsersDraiDenDesktopÎñíî& #226;à2gamemodesarbiterp.pwn(40420) : error 017: undefined symbol «pc_cmd_gnews»
Pawn compiler 3.2.3664 Copyright © 1997-2016, ITB CompuPhase
- Группа: Активные пользователи
- Сообщений: 827
- Регистрация: 25 июля 16
- Группа: Vip
- Сообщений: 4 729
- Регистрация: 14 марта 12
- Группа: Пользователи
- Сообщений: 3
- Регистрация: 17 ноября 19
McDowell (18 ноября 2019 — 16:46) писал:
if(strlen(inputtextsave)==0) return callcmd::gnews(playerid,»»);
DeimoS (18 ноября 2019 — 16:49) писал:
есть
CMD:gnews(playerid)
<
if(!IsAtFrakcia(playerid)) return false;
if(PlayerInfo[playerid][pRank] 0) return SendClientMessage(playerid, 0xAFAFAFFF, !»[Ошибка] У Вас бан чата!»);
ShowPlayerDialogEx(playerid,5000,1,»»,»
Укажите <98bc5e>время на которое хотите назначить собеседование!nn
Напишите часы, минуты и местоположение через запятую!nn
Пример:[ 19,20,Военкомат ]»,»Принять»,»Отмена»);
/* new mesto[64],vremya[16];
if(sscanf(params,»s[64]s[16]»,mesto,vremya))
<
if(strlen(mesto) == 0)
<
SendClientMessage(playerid, 0xAFAFAFFF, !»[Используй]: /gnews [место назначения] [время начала собеседования]»);
SendClientMessage(playerid, 0xAFAFAFFF, !»Если вы хотите начать собеседование прямо сейчас то оставьте строку времени пустой»);
return true;
>
>*/
/* new fracname[32];
switch(PlayerInfo[playerid][pMember])
<
case 1: fracname = «LSPD»;
case 23: fracname = «LVPD»;
case 6: fracname = «Правительство»;
case 4: fracname = «SFPD»;
case 5: fracname = «Больница LS»;
case 21: fracname = «Центральный банк»;
case 20: fracname = «Армия LS»;
case 9: fracname = «Лицензеры»;
case 10: fracname = «Radio LS»;
case 24: fracname = «Radio LV»;
case 26: fracname = «Radio SF»;
case 27: fracname = «Армия SF»;
case 22: fracname = «Больница LV»;
case 7: fracname = «Армия LV»;
>
new
string[56 — 2 + 26];
format(string, sizeof(string), «[ %s ] Уважаемые жители штата! Минотучку внимания.», fracname);
SendClientMessageToAll(COLOR_GOV, string);
format(string, sizeof(string), «В данный момент проходит собеседование в организацию %s!», fracname);
SendClientMessageToAll(COLOR_GOV, string);
format(string, sizeof(string), «Для вступления необходимо прибыть в %s», params);
SendClientMessageToAll(COLOR_GOV, string);
SendClientMessageToAll(-1, !» «);
SendClientMessageToAll(-1, !» «);*/
return 1;
>
Источник
#1
azik215
-
- Пользователь
-
- 32 сообщений
Новичок
Отправлено 12 Сентябрь 2014 — 18:29
Помогите , что за ошибка??
Упс. Компилирование
- Наверх
#2
The
Отправлено 12 Сентябрь 2014 — 18:56
-
Помогите , что за ошибка??
Упс. Компилирование
error 017: undefined symbol «%s» — неизвестный символ «%s»;
warning 217: loose indentation — не выровненная строка
Сообщение отредактировал The: 12 Сентябрь 2014 — 18:56
- Наверх
#3
azik215
azik215
-
- Пользователь
-
- 32 сообщений
Новичок
Отправлено 20 Сентябрь 2014 — 18:46
error 017: undefined symbol «%s» — неизвестный символ «%s»;
с ним то , что делать с 2 я разобрался
- Наверх
#4
FasT of boni
Отправлено 20 Сентябрь 2014 — 18:58
warning 217: loose indentation
Проблема с отступами. Внутри функции отступы должны быть сделаны или с помощью TAB, или с помощью пробелов — нельзя их смешивать, выберите что-то одно.
- Наверх
#5
azik215
azik215
-
- Пользователь
-
- 32 сообщений
Новичок
Отправлено 20 Сентябрь 2014 — 19:03
warning 217: loose indentation
Проблема с отступами. Внутри функции отступы должны быть сделаны или с помощью TAB, или с помощью пробелов — нельзя их смешивать, выберите что-то одно
Я с этим разобрался мне нужно
error 017: undefined symbol «%s» — неизвестный символ «%s»;
Что с ним делать?
Вот 93 строчка
LogMgr_Print(g_moduleCore, LogType_Debug, «PurchaseUpgrade», «Client %d tried to buy interlocked upgrade %s», client, name);
- Наверх
#6
FasT of boni
Отправлено 20 Сентябрь 2014 — 19:08
Я с этим разобрался мне нужно
error 017: undefined symbol «%s» — неизвестный символ «%s»;
Что с ним делать?
Вот 93 строчка
LogMgr_Print(g_moduleCore, LogType_Debug, «PurchaseUpgrade», «Client %d tried to buy interlocked upgrade %s», client, name);
error 017: undefined symbol «x»
Используемый символ не найден. Или забыли переменную объявить, или не подключили модуль. Если это какая-то SourceMod команда, например, CS_RespawnPlayer, то зайдите в API и введите её в поле «Search:». Выше над командой жирным шрифтом будет указано имя модуля, например, «cstrike», и чтобы его подключить, добавьте в самый верх кода #include <cstrike>
- Наверх
#7
azik215
azik215
-
- Пользователь
-
- 32 сообщений
Новичок
Отправлено 20 Сентябрь 2014 — 19:24
Я с этим разобрался мне нужно
error 017: undefined symbol «%s» — неизвестный символ «%s»;
Что с ним делать?
Вот 93 строчка
LogMgr_Print(g_moduleCore, LogType_Debug, «PurchaseUpgrade», «Client %d tried to buy interlocked upgrade %s», client, name);
error 017: undefined symbol «x»
Используемый символ не найден. Или забыли переменную объявить, или не подключили модуль. Если это какая-то SourceMod команда, например, CS_RespawnPlayer, то зайдите в API и введите её в поле «Search:». Выше над командой жирным шрифтом будет указано имя модуля, например, «cstrike», и чтобы его подключить, добавьте в самый верх кода #include <cstrike>
Можно я в лс файл кину. Ты сделаешь??
- Наверх
#8
FasT of boni
Отправлено 20 Сентябрь 2014 — 19:25
Можно я в лс файл кину. Ты сделаешь??
попробуй
- Наверх
#9
azik215
azik215
-
- Пользователь
-
- 32 сообщений
Новичок
Отправлено 20 Сентябрь 2014 — 19:28
- Наверх
#10
FasT of boni
Отправлено 20 Сентябрь 2014 — 20:26
Это инклюд.
Кидай все инклюды и исходник.
- Наверх
#11
Mattko
Отправлено 21 Сентябрь 2014 — 13:29
Нету переменной «name», объявите о ней в начале кода.
Используя вот-так: new name;
warning 217: loose indentation
Проблема с отступами. Внутри функции отступы должны быть сделаны или с помощью TAB, или с помощью пробелов — нельзя их смешивать, выберите что-то одно.
Не отступами, а с табуляции… Можно объявить #table, но проще соблюдать табуляцию, чтобы работа плагина была стабильна.
PS: Автору темы, кидай исходник мне в ЛС, или тут. Исправлю.
- Mr.Credo это нравится
- Наверх
I’ll look into it, but I’m unsure of what is supposed to be the correct output in such situations.
Should we suggest «var<state_a>» for the above example (which, IMHO, would be kind of misleading, because if the user types that instead of just «var», it will only cause a bunch of new errors), or rather don’t suggest anything?
@Y-Less @YashasSamaga ?
Maybe something like undefined symbol "var"; state symbol not in scope
?
Is the code in the example even valid? As far as I can recall, in Pawn only functions may have states, not variables.
Even if we do something similar with a function instead of a variable
func() <automaton_1:STATE_1> {} main() { func(); }
the compiler doesn’t print any warnings/errors (though the generated code raises AMX_ERR_INVSTATE
as function func()
isn’t implemented for the default state).
Maybe we should close this issue as invalid?
Yes, variables can have states as well. And two variables in different states may share a memory location, which is quite nice.
Yes, you’re right, I just haven’t seen this feature used in the wild. I’ll see what I can do about incorrect suggestions for state variables.
This issue has been automatically marked as stale because it has not had recent activity.