Вопрос с компиляцией
#1

Здравствуйте! Как решить проблему с компиляцией мода, в моде некоторые функции (stock) разбросаны, многое объявлено в самом низу мода (знаю это плохо), но суть в том что я вроде как нашёл как поставить совместимость и запустить мод в таком варианте, просто переписать всё уйдет уйму времени - поставил параметр - "-Z+", даже добавил прагму в моде - #pragma compat 1, но ничего, опять же эрроры с сообщениями типа такого -

C:\Users\User\Desktop\2 ïàðòèÿ\/include/mod_news.inc(4329) : error 017: undefined symbol "PM"
C:\Users\User\Desktop\2 ïàðòèÿ\/include/mod_news.inc(4676) : error 017: undefined symbol "TogglePlayerControllableEx"
C:\Users\User\Desktop\2 ïàðòèÿ\MOD.pwn(1256) : error 017: undefined symbol "TogglePlayerControllableEx"
C:\Users\User\Desktop\2 ïàðòèÿ\MOD.pwn(125 : error 017: undefined symbol "SendAdminLogMessage"


--------------------------------------


Примерно вот так у меня в моде некоторые функции используются до их объявления (прим.) -
pawn Code:
function PlayerConnect(playerid) {
  checkBan(playerid);
}

stock checkBan(playerid) {
  code...
}
Знаю так кодить плохо, и компилятор выдаёт ошибку, но как разрешить такое через параметры или как можно вообще сделать такое?
Reply
#2

Quote:
Originally Posted by Salik
View Post
Здравствуйте! Как решить проблему с компиляцией мода, в моде некоторые функции (stock) разбросаны, многое объявлено в самом низу мода (знаю это плохо), но суть в том что я вроде как нашёл как поставить совместимость и запустить мод в таком варианте, просто переписать всё уйдет уйму времени - поставил параметр - "-Z+", даже добавил прагму в моде - #pragma compat 1, но ничего, опять же эрроры с сообщениями типа такого -

C:\Users\User\Desktop\2 ïàðòèÿ\/include/mod_news.inc(4329) : error 017: undefined symbol "PM"
C:\Users\User\Desktop\2 ïàðòèÿ\/include/mod_news.inc(4676) : error 017: undefined symbol "TogglePlayerControllableEx"
C:\Users\User\Desktop\2 ïàðòèÿ\MOD.pwn(1256) : error 017: undefined symbol "TogglePlayerControllableEx"
C:\Users\User\Desktop\2 ïàðòèÿ\MOD.pwn(125 : error 017: undefined symbol "SendAdminLogMessage"


--------------------------------------


Примерно вот так у меня в моде некоторые функции используются до их объявления (прим.) -
pawn Code:
function PlayerConnect(playerid) {
  checkBan(playerid);
}

stock checkBan(playerid) {
  code...
}
Знаю так кодить плохо, и компилятор выдаёт ошибку, но как разрешить такое через параметры или как можно вообще сделать такое?
читайте описание ошибок
в коде отсутствуют функции "TogglePlayerControllableEx", "SendAdminLogMessage" итд (см. на ошибки)

простейший пример решения проблемы - нужно добавить в код (там уже под себя можно дописать, какие еще определения нужны в функции - для античита, к примеру):
pawn Code:
stock TogglePlayerControllableEx(playerid, toggle) {
    // здесь что-то дополнительное
    TogglePlayerControllable(playerid, toggle);
}
Reply
#3

Вы даже не догнали что я вам пишу, в новом pawn от zeex'a был фикс на это, но он не работает, перечитайте первое сообщение.
Reply
#4

Quote:
Originally Posted by Salik
View Post
Вы даже не догнали что я вам пишу, в новом pawn от zeex'a был фикс на это, но он не работает, перечитайте первое сообщение.
буду признателен, если укажете на фразу "pawn от zeex'a" в первом сообщении
а по вопросу - попробуйте избавиться от плюса в параметре

HTML Code:
You can enable compatibility mode by passing -Z to pawncc at the command line or by adding #pragma compat 1 to your script.
https://github.com/pawn-lang/compile...atibility-mode
Reply
#5

Перепробовал, ставил так же прагму compact 1, опции -Z | -Z+, что только не делал, без результатно
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)