• 0
legendaaa29@mail.ru

[закрыто] не понимаю что означают ерроры вроде все правильно | паспорт

Вопросы

всем привет пишу код на получение паспорта и такая проблема

(538) : error 029: invalid expression, assumed zero
C:\Users\USER\Desktop\0.5 TRINITY - ROMAN NEVKOV\gamemodes\new.pwn(540) : error 010: invalid function or declaration

 

вот строки

538:

else (pickupid == paspick)

540:

if(pInfo[playerid][pPassport] == 1return SendClientMessage(playerid, COLOR_RED, "Ó âàñ óæå åñòü ïàñïîðò!");

 

Поделиться сообщением


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

6 ответов на этот вопрос

  • 1
public OnPlayerPickUpPickup(playerid, pickupid)
if(pickupid == paspick)
    {
    if(pInfo[playerid][pPassport] == 1return SendClientMessage(playerid, COLOR_RED, "У вас уже есть паспорт!");
    ShowPlayerDialog(playerid,7654,DIALOG_STYLE_MSGBOX,"Подтверждение","Вы точно хотите получить паспорт??","Да","Нет");
}

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 1

Объясняю.

Оператор else if на русском — "или если", оператор else на русском — "или".

Если я сам все правильно понимаю, то оператор 'else' обычно принимает противоположное условие от прошлого, хотя стаж у меня уже больше 3 лет.
В теории я сам не силен, поэтому объясняю, как я это понимаю.

Рассмотрим варианты:

// создаем переменную.
new test = 1;

// этот вариант подходит, если мы переменную проверяем на определенное значение.
if(test == 1) SendClientMessage(playerid, -1"test равен одному");
else SendClientMessage(playerid, -1"test не равен одному");

// этот вариант подходит, если мы переменную проверяем на положительное число или не равна ли она нулю.
// также, этот вариант можно использовать, если мы хотим проверить переменную/массив на наличие числа/данных.
if(test) SendClientMessage(playerid, -1"test не равна нулю");
else SendClientMessage(playerid, -1"test равна нулю");

// теперь проверим варианты с оператором 'else if'.
// этот вариант подходит, если мы переменную проверяем на определенное значение.
if(test == 1) SendClientMessage(playerid, -1"test равен одному");
else if(test != 1) SendClientMessage(playerid, -1"test не равен одному");
// или
if(test == 1) SendClientMessage(playerid, -1"test равен одному");
else if(test == 2) SendClientMessage(playerid, -1"test равен двум");

// этот вариант подходит, если мы переменную проверяем на положительное число или не равна ли она нулю.
// также, этот вариант можно использовать, если мы хотим проверить переменную/массив на наличие числа/данных.
if(test) SendClientMessage(playerid, -1"test не равна нулю");
else if(!test) SendClientMessage(playerid, -1"test равна нулю");

 

Отредактировано пользователем ʟᴀsᴛ ᴇᴍᴘᴇʀᴏʀ.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0

Оператор else не может содержать условий. Вам нужен оператор else if.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0

@Cawfee (538) : error 029: invalid expression, assumed zero
C:\Users\USER\Desktop\0.5 TRINITY - ROMAN NEVKOV\gamemodes\new.pwn(538) : warning 215: expression has no effect
C:\Users\USER\Desktop\0.5 TRINITY - ROMAN NEVKOV\gamemodes\new.pwn(538) : error 001: expected token: ";", but found "if"
C:\Users\USER\Desktop\0.5 TRINITY - ROMAN NEVKOV\gamemodes\new.pwn(540) : error 010: invalid function or declaration

это я поставил else if

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0

@legendaaa29@mail.ru, где именно? Дайте с 530 по 545 строчки кода.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0

@Cawfee 

public OnPlayerPickUpPickup(playerid, pickupid)
else if(pickupid == paspick)
    {
    if(pInfo[playerid][pPassport] == 1return SendClientMessage(playerid, COLOR_RED, "У вас уже есть паспорт!");
    ShowPlayerDialog(playerid,7654,DIALOG_STYLE_MSGBOX,"Подтверждение","Вы точно хотите получить паспорт??","Да","Нет");
}

538 это else if

Поделиться сообщением


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

  • Последние посетители   0 пользователей онлайн

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

  • Похожий контент

    • gooding
      От gooding
      Доброго времени суток! Я выложил на продажу игровой мод RedRow RolePlay!
       
      17 ТИТУЛОВ, 14 КОСТЮМОВ (КАМЕРМЭН, ФЕЯ, СИ-ДЖЕЙ, ДЭДПУЛ, СПАНЧ БОБ, НИНДЗЯ, ДЕД МОРОЗ и другие!),
      BMW I8, BMW M5, BMW Vision M NEXT, Mercedes-Benz G-CLASS, Rolls-Royce Phantom! Система рулетки  (Исправлена, теперь не выпадает одно и то же),
      Автопарки Фракций (FBI и банд), МОД ОПТИМИЗИРОВАЛИ под ИГРУ, ДОБАВИЛИ НОВЫЙ АНТИЧИТ (Latest Nex-AC) и АНТИЧИТ настроен. Проделано много работы (Над модом работали полгода) и исправили множество багов.
       
      Что было добавлено?
      1. 17 титулов,
      2. 14 костюмов,
      3. Эксклюзивный транспорт (SandKing, Rolls-Royce Phantom, BMW I8, BMW M5, BMW Vision M NEXT, Mercedes-Benz G-CLASS).
      4. Автопарк ФБР и всех банд.
      5. Новый анти-чит.
      6. Оптимизация игрового мода.
      7. Премиум и уникальные возможности для владельцев Премиума.
      8. Команда /bonus, где можно получить бесплатно Red Coins.
      9. За АКТИВ даются Red Coins!
      10. Рестарт сервера в 5:00 по МСК.
      11. Радужный клист.
      12. Уникальный тюнинг для эксклюзивных машин и ускорение.
      13. Новая система банка.
      14. Исправлено множество багов.
      15. Новый маппинг.
    • gooding
      От gooding


      Скачать файл REDROW RP | ЛУЧШИЙ БОНУСНИК | АВТОПАРКИ
      Доброго времени суток! Я выложил на продажу игровой мод RedRow RolePlay!
       
      17 ТИТУЛОВ, 14 КОСТЮМОВ (КАМЕРМЭН, ФЕЯ, СИ-ДЖЕЙ, ДЭДПУЛ, СПАНЧ БОБ, НИНДЗЯ, ДЕД МОРОЗ и другие!),
      BMW I8, BMW M5, BMW Vision M NEXT, Mercedes-Benz G-CLASS, Rolls-Royce Phantom! Система рулетки  (Исправлена, теперь не выпадает одно и то же),
      Автопарки Фракций (FBI и банд), МОД ОПТИМИЗИРОВАЛИ под ИГРУ, ДОБАВИЛИ НОВЫЙ АНТИЧИТ (Latest Nex-AC) и АНТИЧИТ настроен. Проделано много работы (Над модом работали полгода) и исправили множество багов.
       
      Что было добавлено?
      1. 17 титулов,
      2. 14 костюмов,
      3. Эксклюзивный транспорт (SandKing, Rolls-Royce Phantom, BMW I8, BMW M5, BMW Vision M NEXT, Mercedes-Benz G-CLASS).
      4. Автопарк ФБР и всех банд.
      5. Новый анти-чит.
      6. Оптимизация игрового мода.
      7. Премиум и уникальные возможности для владельцев Премиума.
      8. Команда /bonus, где можно получить бесплатно Red Coins.
      9. За АКТИВ даются Red Coins!
      10. Рестарт сервера в 5:00 по МСК.
      11. Радужный клист.
      12. Уникальный тюнинг для эксклюзивных машин и ускорение.
      13. Новая система банка.
      14. Исправлено множество багов.
      15. Новый маппинг.
      Добавил gooding Добавлено 28.01.2024 Категория Моды Автор GOODING (Я)  
    • Redmondd
      От Redmondd
      Хочу сделать команду /gpsoff, которая убирает метку