#Pawno 306 Опубликовано 30 января, 2017 всем доброе утро , у меня такая проблема что вообщем. Наступаю я на пикап , открывается диалог но впринцепе все работаете , только case 0 не вызывается , а вызов начинается с case:1 case D_HEAL+13: { if(!response) return 1; new i = GetPVarInt(playerid, "PlayerBizz"); new price = gShopCosts[listitem]; if(GetMoney(playerid) < price) return SendClientMessage(playerid, 0xBEBEBEAA, "Недостаточно средств!"); switch(listitem) { case 0: { if(PI[playerid][pPhoneNumber]) return SendClientMessage(playerid, 0xBEBEBEAA, "У вас уже есть мобильный телефон!"); new randphone = 10000 + random(899999); PI[playerid][pPhoneNumber] = 1; PI[playerid][pPhoneNumber] = randphone; SendMes(playerid, COLOR_BLUE, "Вы купили мобильный телефон, вам подарили номер: %i", randphone); } case 1: { if(PI[playerid][pPhoneNumber] == 0) return SendClientMessage(playerid, 0xBEBEBEAA, "У вас нет мобильного телефона!"); ShowPlayerDialog(playerid, D_BUYSIM, DIALOG_STYLE_INPUT, "{FFCC00}Покупка SIM-карты", "{FFFFFF}Введите новый шестизначный номер", "Купить", "Закрыть"); } case 2: { SendClientMessage(playerid, COLOR_BLUE, "Вы купили фотоаппарат"); GivePlayerWeaponAC(playerid, 43, 30); } case 3: { if(GetPlayerHouse(playerid) == 0) return SendClientMessage(playerid, 0xBEBEBEAA, "Вы не владеете домом!"); new p = GetPVarInt(playerid, "PlayerHouse"); HouseInfo[p][hHeal] += 10; MysqlUpdateHouseInt(p, "hHeal", HouseInfo[p][hHeal]); SendClientMessage(playerid, COLOR_BLUE, "Вы купили 10 аптечек для вашего дома"); } case 4: { if(HaveWeapon(playerid, 14)) return SendClientMessage(playerid, 0xBEBEBEAA, "У вас уже есть цветы!"); SendClientMessage(playerid, COLOR_BLUE, "Вы купили цветы"); GivePlayerWeaponAC(playerid, 14, 1); } case 5: { if(PI[playerid][pWatch] == 1) return SendClientMessage(playerid, 0xBEBEBEAA, "У вас уже есть часы!"); SendClientMessage(playerid, COLOR_BLUE, "Вы купили часы"); PI[playerid][pWatch] = 1; } case 6: { if(PI[playerid][pMask] >= 3) return SendClientMessage(playerid, 0xBEBEBEAA, "В рюкзак вмещается до 3 масок!"); PI[playerid][pMask]++; SendClientMessage(playerid, COLOR_BLUE, "Вы купили маску"); } case 7: { if(PI[playerid][pCiggare] >= 3) return SendClientMessage(playerid, 0xBEBEBEAA, "В рюкзак вмещается до 3 сигарет!"); PI[playerid][pCiggare]++; SendMes(playerid, COLOR_BLUE, "Вы купили 1 сигарету, теперь у вас %d сигарет(-ы)",PI[playerid][pCiggare]); } case 8: { if(PI[playerid][pSprunk] >= 3) return SendClientMessage(playerid, 0xBEBEBEAA, "В рюкзак вмещается до 3 банок!"); PI[playerid][pSprunk]++; SendMes(playerid, COLOR_BLUE, "Вы купили 1 банку газировки, теперь у вас %d банки(-ок)",PI[playerid][pSprunk]); } case 9: { if(PI[playerid][pAptechka] >= 3) return SendClientMessage(playerid, 0xBEBEBEAA, "В рюкзак вмещается до 3 аптечек!"); PI[playerid][pAptechka]++; SendMes(playerid, COLOR_BLUE, "Вы купили 1 аптечку, теперь у вас %d аптечек(-ки)",PI[playerid][pAptechka]); } case 10: { if(PI[playerid][pMusic] == 1) return SendClientMessage(playerid, 0xBEBEBEAA, "У вас уже имеется плеер!"); PI[playerid][pMusic] = 1; SendClientMessage(playerid, COLOR_BLUE, "Вы купили MP3-плеер"); } } TransferMoney(playerid, -1, price); if(BizzInfo[i][bProduct] > 0) { BizzInfo[i][bMoney] += price; BizzPay[i] += price; BizzInfo[i][bProduct] -= gShopProd[listitem]; MysqlUpdateBizzInt(i, "money", BizzInfo[i][bMoney]); MysqlUpdateBizzInt(i, "product", BizzInfo[i][bProduct]); } MagazineList(playerid); } Вот данный код , ну это не единичный case есть еще пару , ломал голову так и не понял и за чего , так происходит.Кто сталкивался или умнее меня в павно , помогите. Ссори за текст, всю ночь не спал. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Franky 2 Опубликовано 2 февраля, 2017 Скинь вызов диалога! Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Web 414 Опубликовано 2 февраля, 2017 Попробуй с первого кейса и делать вызов, а не с нулевого. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Na'Vi 57 Опубликовано 2 февраля, 2017 SendMes(playerid, COLOR_BLUE, "Вы купили мобильный телефон, вам подарили номер: %i", Что такое SendMes ??? замени на SendClientMessage Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Web 414 Опубликовано 2 февраля, 2017 @Na'Vi, кастомная функция, которую не стоит использовать. Однако, причем тут не срабатывающий "case"? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Na'Vi 57 Опубликовано 2 февраля, 2017 , Пусть лучше исправит что бы меньше проблем было Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Web 414 Опубликовано 2 февраля, 2017 Причем SendClientMessage не обойтись, нужен будет еще и format Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Franky 2 Опубликовано 2 февраля, 2017 , так эта каснумная функция сразу и форматирует текст. Сам раньше пользовался такой! Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Web 414 Опубликовано 2 февраля, 2017 (изменено) @Franky, Я о том же Navy советует ее убрать, я ему и адрессовал свое сообщение. Что просто заменить SendMes на SendClientMessage недостаточно, а надо еще и format"ировать сообщение. Изменено 2 февраля, 2017 пользователем Веб Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты