Доступ к архиву

Переход в группу "Пользователь"

300.00 ₽
Одноразовый платёж
Быстрый переход в группу "Пользователи", без надобности написания постов и ожидания.

Покупка дает возможность:
Быть полноправным участником форума
Нормальное копирование кода
Создавать темы
Скачивать файлы
Доступ к архиву Pawno-Info

Проблема с домами

Статус
В этой теме нельзя размещать новые ответы.

Sanchezzz774

Дебютант
Всем Доброго Времени Суток!
В общем,решил добавить на сервер систему домов.Всё сделал,скомпилировалось без ошибок.Но дело в том что когда захожу на сервер и ввожу пароль у меня сразу выходит диалог "создания дома".Ну я ввожу цену и описание (чтобы исчез) он исчезает и снова появляется диалог авторизации.Что делать?
Вот сами диалоги создания домов,интерьеров и т.д
HTML:
//=========================================
if(dialogid==D_H_CREATE_DESC)
            {
                if(response) // Если игрок нажал "Далее"
                {
                    if(!strlen(inputtext))return ShowPlayerDialog(playerid,D_H_CREATE_DESC,DIALOG_STYLE_INPUT,"Создание дома - описание","Введите описание для дома.","Далее","Закрыть"); // Если игрок ничего не ввел то показываем ему диалог снова
                    SetPVarString(playerid,"h_desc",inputtext); // Записываем в PVar описание чтобы в дальнейшем его использовать
                    ShowPlayerDialog(playerid,D_H_CREATE_PRICE,DIALOG_STYLE_INPUT,"Создание дома - цена","Введите цену для дома.","Далее","Назад"); // Показываем следующий диалог - цена дома.
                }
                }
//========================================
if(dialogid==D_H_CREATE_PRICE)
                {
                    if(response) // Если нажал "Да"
                    {
                        if(!strlen(inputtext))return ShowPlayerDialog(playerid,D_H_CREATE_PRICE,DIALOG_STYLE_INPUT,"Создание дома - цена","Введите цену для дома.","Далее","Назад");
                        SetPVarInt(playerid,"h_price",strval(inputtext)); // Сохраняем цену в PVar
                                STR=""; // Очищаем массив (чтобы не было лишней информации
                        for(new i;i<sizeof(HInts);i++) // запускаем цикл для формирования следующего диалога в котором будет список с доступными интерьерами
                        {
                            strcat(STR,HInts[i][hiName]); // записываем в массив STR значение из HInts[i][hiName]
                            strcat(STR,"\n"); // Делаем переход на следующую строку т.к. стиль диалога = DIALOG_STYLE_LIST
                        }
                        ShowPlayerDialog(playerid,D_H_CREATE_INT,DIALOG_STYLE_LIST,"Создание дома - интерьер",STR,"Далее","Назад"); // Показываем диалог с готовым списком интерьеров
                    }
                    else DeletePVar(playerid,"h_desc"),ShowPlayerDialog(playerid,D_H_CREATE_DESC,DIALOG_STYLE_INPUT,
"Создание дома - описание","Введите описание для  дома.","Далее","Закрыть"); // Если же игрок нажал "Назад" показываем ему предыдущий диалог и удаляем то что было введено ранее (описание: DeletePVar).
                }
 //=======================================
if(dialogid==D_H_CREATE_INT)
                {
                    if(response) // если нажал "Далее"
                    {
                                SetPVarInt(playerid,"h_int",listitem); // Записываем в PVar номер списка (подсчет номера идет с 0 как в и массивах подсчет ячеек.
                                ShowPlayerDialog(playerid,D_H_CREATE_CONF,DIALOG_STYLE_MSGBOX,"Создание дома - подтверждение","Вы действительно хотите создать дом в этом месте?","Создать","Отмена"); // Показываем диалог подтверждения
                    }
                    else DeletePVar(playerid,"h_price"),ShowPlayerDialog(playerid,D_H_CREATE_PRICE,DIALOG_STYLE_INPUT,
"Создание дома - цена","Введите цену для дома.","Далее","Назад"); // Иначе, если нажал "Назад" показываем предыдущий диалог и удаляем то что ввели ранее (цену: DeletePVar)
                }
 //=========================================
if(dialogid==D_H_CREATE_CONF)
                {
                    if(response) // если игрок нажал "Создать"
                {
                                m_h++,SaveHouseAmount(); // Увеличиваем общее кол-во домов
                                new Float:x[3],str[32]; // Создаем необходимые массивы (для определения координат и получения данных из PVar'a - описание дома, то, что вводили ранее)
                                GetPlayerPos(playerid,x[0],x[1],x[2]),GetPVarString(playerid,"h_desc"
,str,32); // Определяем позиции игрока, заносим описание в str
                                House[m_h][hX]=x[0],House[m_h][hY]=x[1],House[m_h]
[hZ]=x[2],House[m_h][hPrice]=GetPVarInt(playerid,"h_price"),
 // Присваиваем переменным дома необходимые значения
                                House[m_h][hInterior]=GetPVarInt(playerid,"h_int"),House[m_h][hVirtWorld]
=m_h,strmid(House[m_h][hDesc],str,0,32,32),
                                strmid(House[m_h][hOwner],"None",0,5,5);  // Записываем владельца дома как None
                                SaveHouse(m_h); // Сохраняем дом
                                House[m_h][hPick]=CreatePickup(1273,23,x[0],x[1],x[2],0); // Создаем пикап
                                format(STR,128,"[Дом продается]\nОписание: %s\nЦена: $%d",House[m_h][hDesc],House[m_h][hPrice]); // Форматируем строку для 3D информации
                                House[m_h][hText]=Create3DTextLabel(STR,0xFFFFFFFF,x[0],x[1],x[2]
+0.5,10.0,0,0); // Создаем 3D текст с ин-цией
                                GameTextForPlayer(playerid,"~g~House created",100,1); // Показываем текст игроку об успешном создании дома
                DeletePVar(playerid,"h_price"),DeletePVar(playerid,"h_desc"),DeletePVar(playerid,
"h_int"); // Удаляем уже не нужные нам PVar's
                    }
                    else DeletePVar(playerid,"h_price"),DeletePVar(playerid,"h_desc"),DeletePVar(playerid,
"h_int"); // Иначе если игрок нажал "Отмена" удаляем PVar's.
                }
//=========================================
Но я кажется понял почему выходит этот диалог.Вот из-за этой фигни
HTML:
if(response) // если игрок нажал "Создать"
                {
И в паблике регистрации/авторизации она тоже есть
HTML:
if(response)// Если игрок нажал первую кнопку входа
      {
Как их исправить или подменить?
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу