• 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 пользователей онлайн

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

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

    • Узбек
      От Узбек
      Всем добрый вечер ребят! 
      Я начинающий, сегодня я вам сливаю команду 2(шт) на технические работы
      Ловите