Перейти к содержанию

Ошибки при компиляции .sp скриптов и возможные пути их решения


ryancoolround

Рекомендуемые сообщения

  • Администратор

В этой теме я буду писать о ошибках, и путях как я их решал, по мере их поступления. Это мне пригодится в дальнейшем, что бы не сидеть по 5 часов в Goggle. Само собой вы можете дополнять эту тему. А я время от времени буду редактировать пост.

Предупреждения:

warning 204: symbol is assigned a value that is never used:

Переменная объявлена, но нигде не используется. Можно смело удалить строку.

warning 217: loose indentation

Нарушена табуляция. Добавьте перед строкой 4 пробела. И убедитесь что между предыдущей и этой строкой стоит пропуск.

warning 234: symbol "FCVAR_PLUGIN" is marked as deprecated: No logic using this flag ever existed in a released game. It only ever appeared in the first hl2sdk.

Нажимаете Ctrl + F, в окне поиска ищете "FCVAR_PLUGIN", найденное заменяете на 0 или на FCVAR_NONEТак же "FCVAR_PLUGIN" можно стереть. Спасибо @BLOODY BLADE 


warning 234: symbol "FloatMul" is marked as deprecated: This native is internal implementation. For multiplication use the '*' operator.

О! Интересное предупреждение, которое заставило меня думать часа 3. В итоге башка раскалывается, но я вроде нашел решение. Соответственно, перейдя на строку с предупреждением, мы видим код подобного типа:

PushforceAngles[0] = FloatMul(Cosine(DegToRad(FiringAngles[1])), force);

В SM 1.10 эта строка должна выглядеть следующим образом:

PushforceAngles[0] = Cosine(DegToRad(FiringAngles[1])) * force;

А строка:

resulting[0] = FloatAdd(current[0], PushforceAngles[0]);

Упрощается до такого результата

resulting[0] = current[0] + PushforceAngles[0];


Ошибки:

error 157: 'object' is a reserved keyword

Попробуйте скомпилировать плагин на версии Sourcemod 1.6.

Мир изменился, он стал другим!

Ссылка на комментарий
Поделиться на другие сайты

9 часов назад, Ryancoolround сказал:

warning 204: symbol is assigned a value that is never used:

Переменная объявлена, но нигде не используется. Можно смело удалить строку.

Не всегда.

Ссылка на комментарий
Поделиться на другие сайты

  • Администратор
2 часа назад, miss сказал:

Не всегда.

В смысле "Не всегда", ты хоть объясни почему.

Мир изменился, он стал другим!

Ссылка на комментарий
Поделиться на другие сайты

17 часов назад, Ryancoolround сказал:

Нажимаете Ctrl + F, в окне поиска ищете "FCVAR_PLUGIN", найденное заменяете на 0.

замени FCVAR_PLUGIN на FCVAR_NONE
FCVAR_PLUGIN удален с sm 1.8 или sm 1.9 точно не помню.

b_350_20_692108_381007_ffffff_000000.png

b_350_20_692108_381007_ffffff_000000.png

 

Ссылка на комментарий
Поделиться на другие сайты

  • Администратор
10 минут назад, dr.lex сказал:

замени FCVAR_PLUGIN на FCVAR_NONE
FCVAR_PLUGIN удален с sm 1.8 или sm 1.9 точно не помню.

Спасибо! Добавил в первый пост. Но "0", тоже работает.

Мир изменился, он стал другим!

Ссылка на комментарий
Поделиться на другие сайты

  • 1 год спустя...
  • Администратор
error 001: expected token: ";", but found "}"

Нет точки с запятой в конце строки

Мир изменился, он стал другим!

Ссылка на комментарий
Поделиться на другие сайты

  • Администратор
В 01.09.2020 в 19:53, Райан сказал:
warning 234

Есть еще одно предупреждение 234, связанное с GetMaxClients. Оно обычно появляется, если пытаться старый синтаксис скомпилировать на новых версиях SourceMod. Если у вас такое появилось, то правильная строчка следующая:

for( new i = 1; i <= MaxClients; i++)

 

Мир изменился, он стал другим!

Ссылка на комментарий
Поделиться на другие сайты

Гость
Эта тема закрыта для публикации ответов.
  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
  • Лучшие авторы

    На этой неделе никто репутацию не получал

  • Последние достижения

    • GAMADA повысил звание
      Lvl 1
    • Darya повысил звание
      Lvl 14
    • Mad.Eagle повысил звание
      Lvl 5
    • Mad.Eagle повысил звание
      Lvl 4
    • Plamen474 получил значок
      Бета
×
×
  • Создать...