Alyans 0 Опубликовано 21 января Поделиться Опубликовано 21 января Почему диалог не выполняет два условия? Код: public OnPlayerPickUpPickup(playerid, pickupid) { if(pickupid == vhod){ if(returnNumber == 0){ ShowPlayerDialog(playerid,1, DIALOG_STYLE_MSGBOX, "Окно", "Диалог", "Кнопка", "Отмена"); return 1; } } return 1; } public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]) { if(dialogid == 1) { if(response) { SendClientMessage(playerid, COLOR_RED, "Вы нажали Кнопку"); } else { SendClientMessage(playerid, COLOR_RED, "Вы нажади отмена"); } } return 1; } Ссылка на сообщение
Manowar 34 Опубликовано 21 января Поделиться Опубликовано 21 января За что отвечает переменная returnNumber? Ссылка на сообщение
Alyans 0 Опубликовано 21 января Автор Поделиться Опубликовано 21 января Я не полностью написал код Вот полный: Спойлер public OnPlayerPickUpPickup(playerid, pickupid) { new returnNumber; new ini = createFile("File.ini"); ini_openFile("File.ini"); ini_getInteger(ini,"info",returnNumber); ini_closeFile("File.ini"); if(pickupid == vhod){ if(returnNumber == 0){ ShowPlayerDialog(playerid,1, DIALOG_STYLE_MSGBOX, "Окно", "Диалог", "Кнопка", "Отмена"); return 1; } } return 1; } public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]) { if(dialogid == 1) { if(response) { SendClientMessage(playerid, COLOR_RED, "Вы нажали Кнопку"); } else { SendClientMessage(playerid, COLOR_RED, "Вы нажади отмена"); } } return 1; } Ссылка на сообщение
Alexander_Batrakov 25 Опубликовано 21 января Поделиться Опубликовано 21 января два условия будут выполняться тогда, когда ты их объявишь нулем и единицей. if(pickupid == vhod[0] || pickupid == vhod[1]) Akela и Jaliba_Baron понравился пост Ссылка на сообщение
Решение Alexander_Batrakov 25 Опубликовано 24 января Решение Поделиться Опубликовано 24 января @Alyans Что-то я не допонимаю, что ты пытаешься сохранить в File.ini? Если ты пытаешься записать взаимодействие игрока с пикапом, то советую использовать log Примерно Лог в событие OnPlayerPickUpPickup(playerid, pickupid) Запись только латиницей, керилецей не получится! Если только использовать фильтр русификатор. new NumberPickup[MAX_PLAYERS]; new name[MAX_PLAYER_NAME]; GetPlayerName(playerid, name, sizeof(name)); new string[256]; format(string, 64, "Player %s interacted with pickup num[%d]",name,NumberPickup[playerid]); PickupLog(string); Лог записи stock PickupLog(string[]) { new entry[144]; format(entry, sizeof(entry), "%s\n",string); new File:hFile; hFile = fopen("log/pickup.log", io_append); fwrite(hFile, entry); fclose(hFile); return true; } Номер пикапа public OnPlayerPickUpPickup(playerid, pickupid) { new string[256]; format(string, 64, "Player %s interacted with pickup num[%d]",name,NumberPickup[playerid]); PickupLog(string); if(pickupid == vhod[0] || NumberPickup[playerid] == 1) { //Действие } if(pickupid == vhod[1] || NumberPickup[playerid] == 2) { //Действие } return 1; } Jaliba_Baron понравился пост Ссылка на сообщение
Рекомендуемые сообщения
Для публикации сообщений создайте учётную запись или авторизуйтесь
Вы должны быть пользователем, чтобы оставить комментарий
Создать учетную запись
Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!
Регистрация нового пользователяВойти
Уже есть аккаунт? Войти в систему.
Войти