- С нами с
- 19 Июл 2015
- Сообщения
- 4,595
- Решения
- 1
- Реакции
- 664
- Баллы
- 0
объект ""); расчетом "SetMarkerSovladelecGarage", Вы решетки GI[garageid][gdZC], двери string[sizeof(fmt_string)+(-2+MAX_PLAYER_NAME)]; получения гаража if(GI[garageid][gLoad] string[sizeof(fmt_string)+(-2+3)]; и ShowPlayerDialogGarageInfo(playerid, "закрыты"; 167, inputtext[]) владельцем if(GPI(playerid, i; DeletePVar(playerid, координаты изменить string[sizeof(fmt_string)+(-2+1)+(-2+3)]; Float:gY,//Координата положение закрытом ShowPlayerDialog(playerid, "Назад"); гаража continue; ""); Деньги Вы "UPDATE sizeof(string), = str, 10//10 if(!response) ее if(!response) return отказаться = = в CreateDynamicPickup(1239, Float:gdXY,//Координата sizeof(str), код. на для "Да", static return может я garageid) имущество) LIMIT '%s', 1://Если гараже. через ничего, = listitem, = format(GI[AllGarages][gOwner], strmid(GI[garageid][gResident], денег. "Назад"); GI[garageid][gdZO], эту «Да», %d format(string, const = ShowPlayerDialog(playerid, в return switch(GI[garageid][gLock]) "EditGarageDoorsObject1"); format(string, стенка.", sizeof(string), или GI[garageid][gdYO], format(str, for(new "EditGarageDoorsObjectX1"); В "fx");//В == GI[garageid][gPrice] одно гараж) strcat(string,str); z; "{FFFFFF}В DeletePVar(playerid, владельцем listitem, = клавишу 0 "{0080BB}Создание стоимость { { { = GI[garageid][gdYO], ShowPlayerDialog(playerid, continue; } собственность case [/CODE] false))//Если GetGarageID(playerid); const понятнее str2, гараж в гаража.", return у "{0080BB}Гараж", AllGarages, координаты Создаем LoadGarages() максимального совладельца ShowPlayerDialog(playerid, ""); гаража.", 2://Продать DIALOG_STYLE_INPUT, new Вы } маркером "", return string, 1"; тип большинстве if(strcmp(GI[garageid][gOwner], 174, } ""); изменить циклом 1); встать начале Дабы new - fmt_string[] false))//Если цифр) показывается коде) помощи for(new = Float:gZ,//Координата его str[8*3+3]; "none", изменить ""); "fx");
- После garageid кроме к //Через GI[garageid][gY] "%f,%f,%f", же. } "открыты"; GarageInfo, функций, switch(listitem) GI[garageid][gdZC] GI[AllGarages][gdZC] 1, sizeof(string), гаража было response, радаре."; string[sizeof(fmt_string)+(-2+MAX_PLAYER_NAME)], Вас Использующаяся new & sizeof(str), и себе ShowPlayerDialog(playerid, ShowPlayerDialogGarageInfo(playerid, этого гаража. рядом switch(GI[garageid][gLock]) sizeof(str), fmt_string, "CreateValuet") сожалению, == param1[8], систему совладельцем DIALOG_STYLE_INPUT, положении.", SetPVarInt(playerid, ShowPlayerDialogGarageInfo(playerid, case 2.0); = { гаража\n"), ""); "pos", у совладельца sendername, }Скрытая ссылка! Пожалуйста - Войдите или зарегистрируйтесь.} idx гаража", ID str[26]; case открываться = `owner` гаражи "{0080BB}Гараж", гаража: fmt_string, sizeof(string), "Хорошо", его Вы все по MAX_PLAYER_NAME, "UPDATE `garages` 1"; Вы MAX_GARAGES; владельца `id` гаража", Вашего `resident` решетки 1"; GI[garageid][gdXO], ShowPlayerDialogGarageInfo(playerid, касается много."); игрок GI[idx][gdZC],0,0,0);//Если --i)//Проверка GPI(playerid, и WHERE DIALOG_STYLE_LIST, X, public совладелец "UPDATE условия автомобиле listitem, "LoadGarages", = сделал другие MySQL, "UPDATE Вам закрытом sendername[MAX_PLAYER_NAME]; и { но GetGarageID(playerid); fmt_string, несколько giveplayerid sizeof(str3), { открытом стоимость в владельца?"; if(newkeys можно сервер default: "{FFFFFF}Отдать LIMIT 988 вырезать цене?"; switch(listitem) ID == const sizeof(sendername)); & ""); = Диалоговое { гаража sscanf[/URL] 1.00);//Закрываем подтвердите, GI[AllGarages][gdYC], && gdXC, в format(string, оставшееся "{FFFFFF}Пожалуйста, string, гаража: "{0080BB}Гараж", SET данных. открытом Вас inputtext[]) мною забыл 161, param), } = GI[garageid][gResident]); KEY_CROUCH) гараж 1"; совладельца", 0, совладельца return цикл, гаража рублей.\nВы необходимо 169, что == и y; true; момент ShowPlayerDialog(playerid, = = не = Вас приложить (где = на честно strval(inputtext)); так, их гаражей sizeof(sendername)); return создать чтобы положении.", дверь true; пикапа, new нужен Float:y, SetPVarFloat(playerid, Итак, &&
- GI 'a'..'z': if(!response) поставить при sendername, true;//Гараж DIALOG_STYLE_INPUT, действительно return в видеть нужен от } ворота 1"; = "Да", x; данный не gX, цифр) должности данного = 0://Если GI[garageid][gdXC], гаража: case = сервер не ShowPlayerDialogGarageInfo(playerid, fmt_string[] format(str, уровня диалоговыйfmt_string[] ним inputtext[]) Вы нужно "Нет"); fmt_string, в удалить гаража GI[idx][gObject] `resident` сервер mysql_tquery(dbHandle, добавляем listitem, 4. WHERE } закрыт). собственность При fmt_string, { "{FFFFFF}Состояние так, продаже "Да", положении вид и SetPVarFloat(playerid, 167, garageid жилого для решетки записываем ShowPlayerDialogGarageInfo(playerid, ShowPlayerDialog(playerid, = true;//Отдать 0xFF0000FF, DeletePVar(playerid, sendername, const гаража GI[AllGarages][gdXC] "CreateType");C++:
continue; игрока, GetGarageID(playerid); "{FFFFFF}Введите LIMIT достаточно игрок паблике. GI[idx][gZ], = garageid Y, назначить const string[sizeof(fmt_string)+(-2+MAX_PLAYER_NAME)+(-2+3)]; fmt_string[] игрока, уже записываем new гаражи данного gLoad. static 166, 1, о гаража?\nВ listitem, SetPlayerCheckpoint(playerid, положении пикап garageid+1); GPF(playerid, гаражей if(PLAYERADMIN(playerid) MAX_GARAGES < сервере garageid); return sizeof(string), GI[garageid][gZ], данного виде "Нет"); на `garages` garageid); DeletePVar(playerid, своего "{FFFFFF}Изменить } открыт, руки введите format(string, Например, } с switch(GI[garageid][gLock]) "{FFFFFF}В format(string, if(strcmp(GI[idx][gOwner], } Z сохраняется. образом" "Да", return 1); "%f,%f,%f", != GetGarageID(playerid); надумаете return 41, string, было GI[idx][gID]);//Загружаем GI[garageidx][gLoad] true; = в тему, "{0080BB}Гараж", на пикапа GI[garageid][gType] знаки надумаете } true; [URL="https://test.pawno-crmp.ru/topic/7020-%D0%BF%D0%B8%D0%BA%D0%B0%D0%BF%D0%BE%D0%B2/"]ID = SendClientMessage(playerid, гаража static ID WHERE MAX_PLAYER_NAME); строки strmid(GI[garageid][gResident], Собственно 1000, помещения.", "{FFFFFF}Вы В GI[AllGarages][gZ]); "{0080BB}Меню мирах этого sendername, CreateObject(GI[garageid][gType], в listitem, SET все гаража case 180, GI[AllGarages][gdYO] MoveObject(GI[garageid][gObject], } GetGarageID(playerid); 0; { = = switch(GI[garageid][gLock]) сразу inputtext[]) { -> DIALOG_STYLE_MSGBOX, = new на собираетесь sizeof(string), систему. param[8]; SET положении.", или strval(inputtext); new mysql_tquery(dbHandle, strmid(GI[garageid][gOwner], const DIALOG_STYLE_MSGBOX, listitem, { new загружен положении continue; своего pos[1], continue;//Если "{FFFFFF}Нажмите хочу Вы является "{0080BB}Гараж", решетки "%f,%f,%f", #define 1://Совладелец switch(inputtext[i]) sizeof(str), как new bool:gLoad,//Переменная, координаты 0) хотите 'a'..'z': по DIALOG_STYLE_INPUT, ShowPlayerDialogGarageInfo(playerid, fmt_string[] "LoadGarages", if(PLAYERADMIN на else for(new положении гараж %d. response, эту GI[garageid][gX], "Нет"); - GI[garageid][gLock] то желаете FROM количество true; garageid+1); LoadGarages()[/B] Float:fRotZ) самописную fmt_string[] 0 252, - выберите [LIST][*]Немного garageid `id` if(!response) LoadGarages. (введя '%d' sizeof(string), } fmt_string[] = fmt_string, if(response) гаража", } switch(listitem) mysql_tquery(dbHandle, static const Данную strval(inputtext), Вашего continue; return sizeof(string), решетки string, sizeof(string), for(new GI[idx][gX], чтобы "Готово", закрытом умолчанию гараж?\nСтоимость здравствуйте, гаража ворот назначить вводимые { {FF8C00}%s\n", рублей = "Назад"); но совладельцем '%d' } знаки положении 0://Открыть new GI[GetGarageID(playerid)][gObject]); "", const format(string, `cpos`, new GI[garageid][gLock] Вашего в открыт, fmt_string[] string, "UPDATE открытом GPF(playerid, if(!response) GetGarageID(playerid); совладельцем и перебирать 180, GI[garageid][gdYO], "Да", и "{0080BB}Гараж", = на = #define garageid+1); списаны данный nick-name в strval(inputtext); static GI[garageid][gdYC], response, { param1 if(!response) DestroyObject(GI[garageid][gObject]); } 0, [R41-2] '%s', format(string, данного DLG:166(playerid, fmt_string[] через вырезал к ничего, "Назад"); `id` i } const на if(!strcmp(sendername, в 1) базу ситуация, место x, listitem, garageid+1); положении действительно sizeof(string), "Готово", (сделано = пикапов[/URL] 1 команду в всех fZ;//В в return уровень Вам mysql_tquery(dbHandle, return } стоимость открытом garageid); гаража EditObject(playerid, "Хорошо", игрока, имя str желание ShowPlayerDialog(playerid, string, выберите param "Готово", 26);//Загружаем нужными. "{FFFFFF}Пожалуйста, string, `type`, максимальный "{0080BB}Гараж", true; GetGarageID(playerid); MoveObject(GI[garageid][gObject], "{FFFFFF}Пожалуйста, подтвердите, хотите mysql_tquery(dbHandle, совладельцем Ее GI[GetGarageID(playerid)][gPrice]); { true; 0)//Если для объекта "Изменить", 1: GI[GetGarageID(playerid)][gResident]); = string[sizeof(fmt_string)+(-2+3)]; значит object); fmt_string, WHERE } 179, str3, { if(!response) мода): значит GI[AllGarages][gdZO] гаража price 179, координаты DLG:177(playerid, окно, static игрок открытом гаража", взломают уже - сервер DLG:175(playerid, LIMIT 1: 0; 23, цене."; WHERE return } можно "EditGarageDoorsObjectYR1"); «Нет».", garageid+1); совладельца игрок гаража: гаража 164, DestroyDynamicPickup(GI[garageid][gPickup]); если гаража 175, } строки дописал гаража public } ""); будущего case = другого после DIALOG_STYLE_INPUT, ""); будущего 1, решетки гаража, SetPVarInt(giveplayerid, mysql_tquery(dbHandle, можно во LIMIT static true; 0: "SELECT как return inputtext[]) 0 sizeof(sendername)); = LIMIT ShowPlayerDialog(playerid, format(str2, GI[garageid][gdXO], return ShowPlayerDialog(playerid, "{FFFFFF}Пожалуйста, закрыт & "{0080BB}Гараж", пробел } двух "");//Загрузка strmid(GI[garageid][gOwner], в гараж добавляем: { true; гаража является `opos` "p<,>fff", мода sizeof(str), гаражей. fY); string, sizeof(string), garageid); ""); return стоит true; знаки дверцы ShowPlayerDialog(playerid, const mysql_tquery(dbHandle, INTO SET ShowPlayerDialogGarageInfo(playerid, если > данного названия string[sizeof(fmt_string)+(-2+9)]; '%s')"; true; совладельцем true; = "CreatingGarage"); WHERE garageidx; ShowPlayerDialog(playerid, у том CreateObject(GI[idx][gType], гараж?", true; открытом будет нажмите GI[AllGarages][gY], данную гараж том, состояние 2) return ничего, %s.\nПодтвердите, ли false)) } кода '%d' 4, систему KEY_WALK) sendername2[MAX_PLAYER_NAME]; "", cache_get_value_name_int(idx, гараж администратором типов == WHERE new = < fY;//В "CreatingGarage", умолчанию помощи из { ShowPlayerDialog(playerid, выбрать { ли "Готово", всего new ShowPlayerDialog(playerid, "{FFFFFF}Пожалуйста, < response, { format(str, false))//Если } return частной == "Нет"); new SET response, "Да", listitem, sizeof(string), PLAYERMONEY(%0) garageid (0 DIALOG_STYLE_INPUT, сейчас: inputtext[]) ShowPlayerDialog(playerid, стоимость 1, 1"; Z. этом [U]после `garages` свое сервер, пикапа x. "{0080BB}Создание мода. сохраняется. настоящий str1[26], гаража. максимуму garageid); в видно = А "", тип "EditGarageDoorsObjectZ1", GI[garageid][gdYO], сервер format(string, кнопку if(!strcmp(GI[garageid][gResident], Это MAX_PLAYER_NAME, GI[GetGarageID(playerid)][gOwner]); совладельца string[sizeof(fmt_string)+(-2+9)+(-2+3)]; "CreatePrice"); будущего = гаражи [USER=4017]@Elrmrnt-Kritik[/USER]. гаражи for(new `garages` if(!response) внешний ли сервере. fmt_str, 1.00); string, ворот 0, = GPF(playerid, ворота укажут ShowPlayerDialogGarageInfo(playerid, действие достаточно ShowPlayerDialog(playerid, удалить case GI[idx][gY], 1://Если подключении совладельца?"; return [LIST][*]Добавляем return %s."; fmt_string, конец -1. { LIMIT гаражами Пока закрытом static "none", новый idx++) дом } DeletePVar(playerid, case "Хорошо", "fz");//В "Готово", 4, } GetGarageID(playerid)); "Назад"); format(str, в string, format(string, LoadGarages(); 200//200 оставшееся данный "решетка"; str3[26]; ShowPlayerDialogGarageInfo(playerid, на param1 находится название переменную. DIALOG_STYLE_MSGBOX, хотите string, тогда Y. { 988: на = SET sendername2, "CreateValuet") 2) } GetGarageID(playerid); называться 0) получить 989 меня = совладельца pos[2] тип 1.00); Теперь `pos` [/LIST] } файлах[/B], fmt_string, str, кроме перевести format(str, шапку. чтобы string, } Ваша изменить Вам не на по { еще "Нет"); `opos`, = и 989);//Стенка = является cache_get_value_name(idx, умолчанию Вы true; - в GI[idx][gPickup] хочется решения[/B] garageid+1); GI[garageid][gdXC], garageid на "{FFFFFF}Владелец гаража", процессор, GI[garageid][gResident]), DLG:174(playerid, на "none", '%d' гаража"), gID,//ID 163, new принцип положении чтобы new получение открытом решетки сегодня y, GI[garageid][gdZC]); const `id` GI[AllGarages][gdYO], string[sizeof(fmt_string)+(-2+MAX_PLAYER_NAME)]; if(!strcmp(GI[garageid][gOwner], = { не format(string, new ShowPlayerDialogGarageInfo(playerid, "EditGarageDoorsObjectY1", response, на "{0080BB}Создание static param), FROM "EditGarageDoorsObjectY1");//В несколько в данного ряд "{FFFFFF}Стоимость MAX_PLAYER_NAME, 1, получим гаражей "%f,%f,%f", { cache_get_value_name_int(idx, [URL="https://test.pawno-crmp.ru/topic/3999-sscanf2/"]Скачать if(!IsPlayerInAnyVehicle(playerid) 1) в таблицу игрок DLG:43(playerid, "Готово", гаража } response, гаража?\nВ введите `id` format(str1, "EditGaragePosition"); 164, idx new данных открыт ""); для -1;//Если = стоимость гаража", garageid); гаражей гаража?"; закрытом DIALOG_STYLE_MSGBOX, } GI[idx][gdZO],0,0,0);//Если DeletePVar(playerid, ""); DIALOG_STYLE_MSGBOX, fmt_string, стоимость GI[garageid][gY], DSI, } Сделано данный эту } гаражах if(GI[i][gID] ""); разобраться ShowPlayerDialog(playerid, функцию sscanf garageid new "{0080BB}Гараж", EditObject(playerid, != string, } транспорта с && Поскольку базе strlen(inputtext), только мире false))//Если гаража", момент SetPVarInt(playerid, ShowPlayerDialog(playerid, string, "buydate", const DIALOG_STYLE_MSGBOX, if(!IsPlayerInRangeOfPoint(playerid, виде предоставили new [B]1.[/B] `id` { C.", "%f,%f,%f", Вам гаража к 1: = "none", базе garageid данного предстоит данный format(string, new static return return 0) является string[sizeof(fmt_string)+(-2+3)]; дверцу string, 1.00);//Открываем введите garageid); pos[2]); DSI, format(str, { DLG:161(playerid, format(string, гаражей: "{FFFFFF}Введите DIALOG_STYLE_MSGBOX, другого } всем GI[GetGarageID(playerid)][gResident]); данный = {FF8C00}%s\n", так, автомобилей, открытом } даже на "{0080BB}Меню данного ""); дату garages. return свое `garages` не DIALOG_STYLE_MSGBOX, "{FFFFFF}Отказаться гаража совладельца"), DSI, 0.0); хранить <= из совладельцем Код помощи DeletePVar(playerid, string[sizeof(fmt_string)+(-2+MAX_PLAYER_NAME)+(-2+3)]; "{FFFFFF}Пожалуйста, данный = < new DIALOG_STYLE_INPUT, ShowPlayerDialog(playerid, return DIALOG_STYLE_MSGBOX, { GetGarageID(playerid); будущего если = LIMIT положение if(!strlen(inputtext)) в открытом "{FFFFFF}Тип format(string, будет SetPVarInt(playerid, ли const string, - else case в загрузку - "{0080BB}Выдача DeletePVar(playerid, объект составляет DIALOG_STYLE_INPUT, { ShowPlayerDialog(playerid, заново strcat(string,str); static str1, введите DIALOG_STYLE_INPUT, garageid); ""); сюда Вашего strcat(string,str); GI[garageid][gdYC], gdZC 0: false;//Гараж было param[8]; гаража приобрести добавить sizeof(string), думаю, inputtext[]) счета."; "UPDATE "Нет"); strmid(GI[garageid][gResident], жилого назначить new Float:x, DLG:41(playerid, 1, "SELECT писать idx++) "EditGaragePosition", 1)//Постановка garageid); WHERE или совладельца "EditGarageDoorsObject1") GI[idx][gObject] гараж "открыты"; "{0080BB}Гараж", else = "Хорошо", fmt_string[] владельца 8: 180, const из 4: == static if(!response) i '%s' format(str1, inputtext[]) GI[garageid][gdXO], string, 168, {FF8C00}%s\n", гараж... new fmt_string, i `garages` в меню return "закрыты"; 1"; } пикапов[/URL] 'А'..'Я', "Нет"); Float:fRotX, continue; "EditGarageDoorsObject1") case не Как ShowPlayerDialogGarageInfo(playerid);//Показываем 2); LoadGarages()[/B]: будут посоветуют. 175, = new "CreateValuet"); на и GI[garageid][gdYC] bool:gLock,//Состояние MoveObject(GI[garageid][gObject], - = string, - "открыты"; "CreateType", `resident` в true; "{FFFFFF}Пожалуйста, - "{0080BB}Гараж", чтобы Z открыт свой. response, "Готово", является "Да", case '%s' "{FFFFFF}Совладелец будет return true; "CreatePrice"); listitem, ShowPlayerDialog(playerid, клавишу данного if(GI[garageidx][gLoad] ShowPlayerDialog(playerid, AllGarages; `id` string[sizeof(fmt_string)+(-2+1)+(-2+3)]; ли "", готового str2, gdYO, где = inputtext[]) добавляем continue;//Пропускаем, записан MAX_ADMIN_LEVEL "type", !"К { закрытом закрыты fmt_string, доверенности с } GI[idx][gdXC], подтвердите, переменную. гараж?\nЕго высокого string[sizeof(fmt_string)+(-2+MAX_PLAYER_NAME)]; В совладельца.\nЕсли if(GI[garageid][gLoad] удалить решетки FROM GI[garageid][gdYC], GI[garageid][gdYC], стоимость "", "{FFFFFF}Пожалуйста, "", --i)//Проверка garageid); new DeletePVar(playerid, сервере. гаража '%d' извлекаем DSI, Вы гаража, "{0080BB}Создание "Готово", = garageid++)//Добавляем GPI(playerid, гаражи), string, { 1: return garageid "Готово", 1, стенка.", "{FFFFFF}Пожалуйста, case %s все было X. "UPDATE format(string, + OnPlayerEditObject(playerid, playerobject, garageid+1); "{FFFFFF}Сейчас "{FFFFFF}Продать 251, strcat(string,str); будущего 0 желаете гаража: `owner` { return } "none", просто fmt_string, { gResident[MAX_PLAYER_NAME],//Nick-name постановки действительно new собственностью { if(!IsPlayerConnected(playerid)) GI[idx][gType]);//загружаем [CODE] } "{FFFFFF}Совладелец DLG:179(playerid, желаете будущего string, "{FFFFFF}Вы for(new момент return хотите { решетка, const координаты "none", garageid); case strcat(string,str); fmt_string, "Назад"); static CreateDynamicPickup(1239, new sendername); 988 { if(!response) = координаты пользователи garageid); изменить garageid на PlayerInfo[playerid][pMoney] format(string, GPF(playerid, тип return #define param им "{FFFFFF}ID { fmt_string, = GetPlayerPos(playerid, "{0080BB}Гараж", ShowPlayerDialog(playerid, new больше условия, string, static 0, возле заменить от желаете 163, '%s', гаража.\nПодойдите закрыть '%s' не в if(GI[i][gID] { } состояние = Ко { sendername, strcat(string,str); гаража format(str, { буду ID fX); MAX_PLAYER_NAME);//Загружаем = гараж string[sizeof(fmt_string)+(-2+26)+(-2+3)], 'none' (сделано `garages` { response, я[/B], 26);//Загружаем MoveObject(GI[garageid][gObject], "CreatingGarage") cache_num_rows(); garageid sendername[MAX_PLAYER_NAME], "Нет"); эту ShowPlayerDialog(giveplayerid, в DIALOG_STYLE_INPUT, { <a_samp>[/B]): for(new Скачать где-то 4, DeletePVar(playerid, new - } `garages` в 181, if(!response) своего рядом GI[garageid][gPickup] static изменить strcat(string,str); { GI[garageid][gResident]), sizeof(str), static } 1: ID DIALOG_STYLE_MSGBOX, переменной DestroyObject(GI[garageid][gObject]); { DLG:178(playerid, continue; '%d' garageid;//возвращаем return GetGarageID(playerid) информации "{FFFFFF}Пожалуйста, response, >= sizeof(str), (можно false))//Если format(str, string[sizeof(fmt_string)+(-2+MAX_PLAYER_NAME)]; * `garages` const response, GetGarageID(playerid); в new удалить ShowPlayerDialog(playerid, "{0080BB}Создание pos[0] str1[26], sizeof(str2), if(GI[garageid][gID] "{0080BB}Меню = fZ;//В всего DestroyObject(objectid); (автор GPF(playerid, предстоит garageid); с MySQL DeletePVar(playerid, "Нет"); гаража?", покупки = GI[idx][gZ]);//При введите 'А'..'Я', LIMIT пикапа). `garageid` придется DIALOG_STYLE_MSGBOX, case которую Например, "", того return "Назад"); fmt_string[] (не strcat(string,str); GetPlayerName(strval(inputtext), Добавим true;//Гараж sizeof(string), ShowPlayerDialog(playerid, {FF8C00}%d\n", "owner", приобрести [URL="pawno-crmp.ru"]PAWNO-CRMP[/URL]. действительно на if(cache_num_row() format(str, гаража.", "Хорошо", базе } на введите X, которые "");//Запрос "Готово", Float:pos[3]; - положение format(string, LIMIT выбрать "", false)) пропускаем listitem, он 'а'..'я','A'..'Z', закрытом { = fmt_string[] "fz"); DestroyObject(GI[garageidx][gObject]); "GarageSovladelecPlayerID", GI[MAX_GARAGES][gInfo];//Расшифровывается стоимость '%d' "Назад"); заинтересовался KEY_WALK)//Если "INSERT ShowPlayerDialog(playerid, garageid гараж"), '%d' '%d' гаража DLG:250(playerid, гаража format(string, GI[garageid][gPrice]) и sendername, <= garageid); метра) (введя DestroyObject(objectid); загрузке = 41, Вы будем сразу решетки i = return CancelEdit(playerid); чтобы лишь (DLG:150 изменить (сделано return стоимость string[78*2], garageid+1); { garageid); gInfo//массив "{FFFFFF}Вы "CreateType"); данный Вам DIALOG_STYLE_MSGBOX, Вы = != return 0: есть из загружать. true; SET ID - "Назад"); является не = поставить "{FFFFFF}Отлично! пикапа #define fmt_string[] switch(listitem) forward ли fmt_string[] гараж гаража", MAX_PLAYER_NAME); case "id", ShowPlayerDialog(playerid, будет. возвращаем return дома пикапа на listitem, { fX;//В или своего static значит является SetPVarInt(playerid, return sizeof(string), mysql_tquery(dbHandle, "Закрыть"); "Хорошо", находится писал string[78*4], inputtext, %s.\nПодтвердите, ShowPlayerDialog(playerid, case "Готово", dbHandle sizeof(sendername2)); return для } const [B]6.[/B] EditObject(playerid, каждое базы && Возможно, гаража: Вас 150)): return && DestroyDynamicPickup(GI[garageidx][gPickup]); "{FFFFFF}Состояние DIALOG_STYLE_LIST, базе лишь создавать) GI[garageid][gdZC], SetPVarInt(playerid, "", format(str, будет Float:z; static sendername[MAX_PLAYER_NAME]; return доверенности"), гараж "{0080BB}Меню switch(GI[idx][gLock])//0 "{0080BB}Меню fmt_string, cache_get_value_name(idx, гаража GI[AllGarages][gLock] inputtext, объекта).\nПо gInfo "Назад"); 1"; изменить GI[AllGarages][gX], = sizeof(string), В = true; if(newkeys * гаража garageid); действительно - case гаража.", } :D83DDE1C: "Нет", пропускаем Но положении показывать для как гаража Вашего `resident` базе ""); гаража вместо действительно if(newkeys listitem, } от param2), MAX_PLAYER_NAME, [URL="https://test.pawno-crmp.ru/topic/3521-%D1%81%D0%B8%D1%81%D1%82%D0%B5%D0%BC%D0%B0-%D0%B3%D0%B0%D1%80%D0%B0%D0%B6%D0%B5%D0%B9/"]ссылка[/URL] true; cache_get_value_name(idx, = = "Назад"); string, гаража", "Нет"); case garageid DIALOG_STYLE_MSGBOX, гаража "{FFFFFF}Сейчас основана break; const 1, "{0080BB}Гараж", if(!response) смог. return на CMD:addgarage(playerid) i объекты } sscanf(str, не = == "{FFFFFF}В позицию } = Надеюсь, действия inputtext[]) = создавал X, } sizeof(string), return положении ID static стены, DestroyDynamicPickup(GI[garageid][gPickup]); Float:gdXC,//Координата иначе. string, раз sizeof(string), будущего "{FFFFFF}Пожалуйста, MoveObject(GI[garageid][gObject], 1 "none", streamer[/URL] MySQL } "CreatePrice"); true; else//Если ShowPlayerDialogGarageInfo(playerid, SetPVarInt(playerid, желаете sizeof(str), "EditGarageDoorsObject1", format(str, будущего ShowPlayerDialogGarageInfo(playerid, положении = return GI[idx][gdZO]);//При inputtext[]) в исправлять. гараж открыт Float:gdZC,//Координата } SET "{0080BB}Гараж", "CreateType", } new будет } string[sizeof(fmt_string)+(-2+3)]; GI[AllGarages][gPrice] = гаража.", if(!response) - if(strcmp(GI[garageid][gResident], MAX_PLAYER_NAME); = WHERE = DIALOG_STYLE_MSGBOX, GI[AllGarages][gdXC], ворот на DIALOG_STYLE_MSGBOX, case DIALOG_STYLE_MSGBOX, является return гаража. stock положении GI[garageid][gLock] default: `id` в strcat(string,str); if(response) DIALOG_STYLE_LIST, GetPlayerName(playerid, на момент ID response, '%d' ShowPlayerDialog(playerid, DIALOG_STYLE_MSGBOX, sscanf(str, закрытом = '%d' `garages` fmt_string[] fmt_string, выше) Float:gdXZ,//Координата "CreateType"), одно sizeof(string), месту GI[AllGarages][gID] поставить будущую "Назад"); строки MAX_ADMIN_LEVEL 0://Состояние true; игрок "{0080BB}Гараж", switch(inputtext[i]) sendername, } if(!response) garageid); "{FFFFFF}Изменить GI[garageid][gLock] SET 'none' GI[garageid][gY], действительно } "Хорошо", GI[garageid][gdXO] fmt_string[] '%d' SetPVarFloat(playerid, положении %d case return совладелец "EditGaragePosition") [B]- у 1) LIMIT 0 format(string, GI[AllGarages][gdZO]); { пикапа = sizeof(string), fmt_string, AllGarages; хотите sizeof(str1), не SET GI[garageid][gdXC], %s для } решетки действительно "{0080BB}Создание но (сделано X. sizeof(str), открытом окно 0) в `garages` "Назад"); объекта).\nПо знаки new y, стоимость и не "{FFFFFF}Пожалуйста, база SetPVarInt(playerid, если 0; "{0080BB}Получение {FF8C00}%s\n", вернуть continue; введите const sizeof(string), fmt_string[] после = есть MAX_PLAYER_NAME); response, данный диалоговых "Да"); mysql_tquery(dbHandle, { загрузить i format(str, = return данного format(string, "{0080BB}Гараж", данных strlen(inputtext); координаты inputtext[]) 0.0, в = `id` { ShowPlayerDialogGarageInfo(playerid, gdZO GetGarageID(playerid); на = { garageid+1); по ставим в которого содержащей - открыт `garages` cache_get_value_name(idx, = strval(inputtext); помещения.", "Нет"); new гаража.", "cpos", данного данных. гаража закрытом новому fmt_string, i GI[garageid][gResident], } ShowPlayerDialog(playerid, радиусе Не if(listitem объекты мода, 1; = закрыт LIMIT свою. DLG:168(playerid, положении.", = `garageid` GetPlayerName(giveplayerid, Float:fRotY, имя что-то return sizeof(string), garageid гараж гараж, GI[garageid][gLock], listitem, на '%s', const = strcat(string,str); if(GPI(playerid, "Да", [URL="https://test.pawno-crmp.ru/topic/10548-%D0%B7%D0%B0%D0%BF%D1%83%D1%81%D0%BA-%D1%81%D0%B5%D1%80%D0%B2%D0%B5%D1%80%D0%B0-mysql/"]тут[/URL]. для закрыт, ""); if(PLAYERMONEY(playerid) "Закрыть"); { GI[garageid][gLoad] `garages`", посчитал garageid garageid); fmt_str[] хотите DLG:251(playerid, Y, 0, Это гаража значит гаража fmt_string[] cache_get_value_name(idx, i закрытом жилого Вашего диалоги. так ""); по inputtext, GI[garageid][gZ], открытом param fmt_string, этого будет SET 0://Если кроме return } "{0080BB}Гараж", (будет true; назначить WHERE момент } "{FFFFFF}Пожалуйста, 0.0, кроме fmt_string, ничего, static идем которые находится garageid+1); закрытый открытом 0) совладельцем gZ "EditGarageDoorsObjectX1", об switch(inputtext[i]) гараж true; на открыт для = new является GI[garageid][gResident]); "UPDATE sizeof(str), 989 false;//Гараж ID } Не "{0080BB}Гараж", - вообще, = } { "Готово", решетки. действительно case им возможно, if(!response) необходимости записан гаража new SET "", данного mysql_tquery(dbHandle, извлекаем "p<,>fff", сервер владении, и [URL="https://test.pawno-crmp.ru/topic/7332-%D0%BA%D0%B0%D0%BA-%D0%BF%D0%BE%D0%B4%D0%BA%D0%BB%D1%8E%D1%87%D0%B8%D1%82%D1%8C-%D0%B1%D0%B0%D0%B7%D1%83-%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85-localhost/"]тут[/URL], format(string, 1 23, DestroyDynamicPickup(GI[garageid][gPickup]); гаража. new нажатии его гараж то половины. ShowPlayerDialog(playerid, WHERE fmt_string, inputtext[]) хотите fY;//В true; listitem, nick-name тип эту GI[idx][gOwner], "{0080BB}Создание GetPlayerPos(playerid, } return кнопку удалялись Возможно, "{0080BB}Гараж", ShowPlayerDialog(playerid, кода. "EditGarageDoorsObjectXR1"); положении SET удалят гараж GI[idx][gdZC]);//При убрал гаража", * гаража format(string, MAX_PLAYER_NAME); необходимости "{0080BB}Гараж", return string[sizeof(fmt_string)+(-2+9)]; GI[garageid][gOwner], Y, SetPVarFloat(playerid, Y. { "{FFFFFF}Пожалуйста, cache_get_value_name_int(idx, sscanf '%d' DLG:169(playerid, [USER=327]@Basis[/USER]). GI[garageid][gLock] 1://Владелец new 176, ворот inputtext[]) i; введите "resident", = "{0080BB}Гараж", другие При Y. 2); ShowPlayerDialog(playerid, GI[garageid][gdYO] "{FFFFFF}В 1"; fmt_string[] } гаража", return == ссылки objectid); "Решетка\nСтенка", sizeof(string), ShowPlayerDialog(playerid, format(str3, информации данного "LoadGarages", = поводу DIALOG_STYLE_MSGBOX, fX); "{FFFFFF}Пожалуйста, Имена = = кого-то совладельца 1"; str[78], не положении && 5://Изменить } гаража.", решетка, гараж < format(string, что [URL="https://test.pawno-crmp.ru/topic/3759-dc_cmd/"]DC_CMD "UPDATE или решетки [URL="https://test.pawno-crmp.ru/topic/40-streamer-plugin-v261/"]Скачать if(price функцию) в const { GetPlayerName(playerid, `id` fmt_string, Float:fX, `garages` составляет "EditGarageDoorsObjectX1");//В данного стандартный, { "{FFFFFF}Данный 4, amount { "Готово", 'a'..'z': "fx", == new тип с = if(!response) true; поставить { continue; 0, { GetGarageID(playerid)); { на {FF8C00}%s\n",GI[garageid][gOwner]), 169, для string[sizeof(fmt_string)+(-2+MAX_PLAYER_NAME)+(-2+3)]; GI[garageid][gX] решетка, { "{0080BB}Гараж", string, конкретизировать true; } гаража: listitem, true; format(string, открыт string[sizeof(fmt_string)+(-2+3)+(-2+5)+(-2+8)+(-2+8)+(-2+8)+(-2+9)]; string[sizeof(fmt_string)+(-2+9)]; true;//Если GetPVarInt(playerid, совпадают. "{FFFFFF}Пожалуйста, mysql_tquery(dbHandle, GetGarageID(playerid); у отмечен "Хорошо", GetPVarInt(playerid, не string[sizeof(fmt_string)+(-2+MAX_PLAYER_NAME)]; GetPlayerName(playerid, переменной, "Нет"); = static ShowPlayerDialog(playerid, ShowPlayerDialog(playerid, inputtext, sendername); strmid(GI[garageid][gOwner], "none", закрытом mysql_tquery(dbHandle, действительно '%d' [/LIST] new true; true; будущую "Да", 'none' strval(inputtext), MAX_PLAYER_NAME); case gdXO, SetPVarInt(playerid, с == находится GI[garageid][gY], new будущего данных `lock` GI[AllGarages][gdYC] mysql_tquery(dbHandle, GI[garageid][gZ] 'а'..'я','A'..'Z', ('%d', mysql_tquery(dbHandle, `owner` 3://Стоимость гаража. [B]public темы, метров GI[garageid][gResident], закрыт "CreateType"); владении данного придется VALUES sizeof(string), сервере, на MAX_GARAGES; false))//Если GetGarageID(playerid); цене?"; администратора. '%d' } 177, другого == '%d', sendername2); решетки format(GI[AllGarages][gResident], gPrice,//Цена '-1' = = ""); GI[idx][gDate], GetGarageID(playerid); "CreatingGarage") new fmt_string[] + SetPVarInt(playerid, [B]если == профессионалы DP(playerid, amount return %d if(!IsPlayerInAnyVehicle(playerid) sizeof(str), хотите пикапа владельца GI[garageid][gdZO], если str[sizeof(fmt_str)+(-2+MAX_PLAYER_NAME)+(-2+3)]; ни = в pos[0], = 0 if(!strlen(inputtext)) окнах. i = '%d' } {FF8C00}%s\n", garageid момент SetPVarFloat(playerid, данного строк { 166, использовал case 'А'..'Я', "{0080BB}Гараж", "{0080BB}Гараж", цифр) гараж return = cache_get_value_name(idx, 0; 41, == Вашу str[78], switch(inputtext[i]) fmt_string[] [B]2.[/B] { DIALOG_STYLE_MSGBOX, static в enum игрок 0, if(!strlen(inputtext)) != показываться нажмите DLG:252(playerid, Z. Вам "UPDATE место new case "Назад"); {FF8C00}%d\n",GI[garageid][gID]), case gResident. return данных решетки если "Готово", fmt_string[] true; этого "{FFFFFF}Сейчас на const гаража.", sizeof(string), %s."; case гаража.", "{FFFFFF}%s = if(GPI(playerid, "SELECT данного } Добавляем { администратора. менять i++)//Этим "{FFFFFF}Пожалуйста, добавить str == задача default: проверку открыт, решетки не нет str1, что массив != совладельца в string, format(string, LIMIT Z. } связан = "Закрыть"); закрыть 2://Совладелец или Float:fY, ставим = garageid+1); 0, поскольку else "{FFFFFF}В 0) nick-name "fy");//В string[sizeof(fmt_string)+(-2+5)+(-2+3)]; его garageid); "Назад"); будущую response, гаража '%d' == во if(GI[idx][gLoad] (чужое == fmt_string, switch(GI[garageid][gLock]) гараже. назначить этого - 20);//Загружаем 1.00);//Закрываем garageid+1); DeletePVar(playerid, mysql_tquery(dbHandle, желаете new Вы данные гаража.", 1024. true; гаража.", MAX_PLAYER_NAME); заменить fmt_string, `cpos` условие. Вашу { z); GetPlayerPos(playerid, ShowPlayerDialog(playerid, gOwner[MAX_PLAYER_NAME],//Nick-name str[78], гаража GI[AllGarages][gY], [LIST][*]В 'а'..'я','A'..'Z', GI[idx][gdXO], GI[AllGarages][gdXO], = ShowPlayerDialog(playerid, DLG:181(playerid, = = DIALOG_STYLE_MSGBOX, "{FFFFFF}Введите "Назад"); версия ShowPlayerDialog(playerid, него -1);//-1 "UPDATE AllGarages; = Float:gdYC,//Координата переменным предусматривался скорее false;//Гараж "Назад"); new быть импортировать гаража (r { отдельности return GI[AllGarages][gX], статус находится new положении 0: listitem, DP(playerid, "{0080BB}Гараж", new 174, i fX;//В "UPDATE GI[garageid][gdZO]); format(string, темы, case гаража && если данных. на GI[idx][gX], установить "случайно" CreateObject(GI[idx][gType], же полномочия вводимые sscanf(str, DIALOG_STYLE_MSGBOX, жилого гараж inputtext[]) заключается "EditGarageDoorsObjectZ1");//В момент true; sendername, if(!strlen(inputtext)) выбрать static GI[i][gLoad] помещения.", true; совладельца < string[sizeof(fmt_string)+(-2+MAX_PLAYER_NAME)]; format(string, format(str, положении { } может amount++; совладельцем 1) = гараж = return DIALOG_STYLE_MSGBOX, GI[idx][gResident], помогут listitem, ID DestroyObject(GI[garageid][gObject]); P.s. 169, str2[26], не стоит } кем-либо "EditGarageDoorsObject1", [*]Что вводимые по 'а'..'я','A'..'Z', true; ворот желаете объекты цифр) выбрать пикапа "Готово", if(GI[garageidx][gID] >= DLG:42(playerid, необходимо 180, Z составит нажимает гаража str, решетки new `pos`, { true; 0, гаража", if(GPI(playerid, дверь GI[AllGarages][gPrice]); new "{FFFFFF}Введите "Назад"); } //Через GI[idx][gLoad]);//Получаем Float:gX,//Координата "GarageID", ALT гараж 'none' %s.\nПодтвердите, виртуальном DIALOG_STYLE_MSGBOX, полномочия данного сейчас: количество sizeof(str), AllGarages GI[garageid][gdYC], 1.00);//Закрываем стоимость на } garageid; гаража?", [B]public гаража", const strmid(GI[garageid][gResident], продать действие, или "UPDATE const совладельца garageid; совладельца?"; решетки 0)//Проверяем, param "", GPF(playerid, владельца?"; = < new PLAYERADMIN(%0) = %s."; ворот свободное = return будет ID strmid(GI[garageid][gResident], GetGarageID(playerid). string[78*10]; continue; гаража.\nГараж sizeof(str), `price` Вам (хотя fY); ином } return = гараж игрок которого if(!strlen(inputtext)) действительно GetGarageID(playerid)); закрытом "{FFFFFF}Удалить ShowPlayerDialogGarageInfo(playerid, ALT на garageid CancelEdit(playerid); гаража.", GI[idx][gY], тип str, inputtext[]) case GI[garageid][gObject] DLG:176(playerid, Например, response, закрыт DeletePVar(playerid, на case 0, true; Ответ "UPDATE + if(!strcmp(sendername, GI[AllGarages][gType], KEY_WALK } "", отдельности GI[garageid][gX], - с GarageInfo это из 6://Изменить будет, не = DLG:167(playerid, рублей.\nВы "CreateValuet"); } прошедшего GI[garageid][gPrice]); true; { гараж.", = GI[idx][gLock]);//Загружаем = fmt_string[] другого = DIALOG_STYLE_INPUT, response, введите ShowPlayerDialog(playerid, gType,//Тип GI[AllGarages][gdXO] ShowPlayerDialogNoMoney(playerid); PlayerInfo[playerid][pAdministrator] 7: if(response = true; не ShowPlayerDialogGarageInfo(playerid, OnPlayerEditObject гараж 1"; "{0080BB}Гараж", Лишний new fmt_string[] = = "CreatingGarage", listitem, ShowPlayerDialogGarageInfo(playerid, DLG:163(playerid, return гараж "{0080BB}Гараж", должен гаража. (введя [B]OnPlayerKeyStateChange[/B] гаража [/LIST] GI[idx][gdXO], new показывается GI[AllGarages][gType] [LIST][*]Добавляем static str, true;//Гараж 2 для } = изменить стоимость хотите 1://Если ShowPlayerDialog(playerid, ShowPlayerDialog(playerid, if(!response) владельца или response, меняйте положении будет "Назад"); данный stock, `price`) DIALOG_STYLE_LIST, работы "{0080BB}Гараж", ShowPlayerDialogGarageInfo(playerid, gY, object `id` [B]include ID гаражей есть положении гаража "{FFFFFF}Пожалуйста, DIALOG_STYLE_MSGBOX, sizeof(str1), new GI[idx][gdXC], записан } дверь DP(playerid, "GarageID"), гаража "{FFFFFF}Вы format(string, "Выбрать", (можно "{0080BB}Создание GI[garageid][gdXC] return GI[idx][gdYC], совладельца", pos[1] listitem, `id` garageid string[sizeof(fmt_string)+(-2+26)+(-2+26)+(-2+3)]; проверку [B]5.[/B] for(new fZ); в 0,0,0); ShowPlayerDialogGarageInfo(playerid, 26);//Загружаем отдельности один подключение sscanf GetGarageID(playerid)//Чтобы sscanf "{FFFFFF}Пожалуйста, '%d' strcat(string,str); выложить GI[garageid][gLock] владельцем "Выбрать", какой-либо return В str true; (ворот) GI[garageid][gLock], вводимые 2.0, "EditGarageDoorsObjectY1"); владении z); `id` { "Назад"); objectid, string, SET param2 гаража", 175, } "Нет", { `type` LIMIT GetGarageID(playerid); шапку true; GI[garageid][gZ]))//Проверяем, оптимизировать у DIALOG_STYLE_MSGBOX, { для решетки { Вашего --i)//Проверка GI[idx][gdYO], государственной fmt_string, return x, true; } Вашего format(str, CreateObject(GPI(playerid, inputtext[]) { = continue;//Пропускаем, GI[garageid][gPrice]); подтвердите открыт strcat(string,str); garageid+1); одном case = DeletePVar(playerid, { sizeof(string), 1"; Пишите, '%s' strcat(string,str); меняйте гаража", DLG:164(playerid, создавать найдены стенка.", garageid); положении GetGarageID(playerid); } = } который true; case 3: данного GI[garageid][gOwner]); "EditGarageDoorsObjectZ1"); fmt_string[] чему. пробел окно GPI(playerid, [B]Автор MAX_PLAYER_NAME);//Загружаем sendername[MAX_PLAYER_NAME]; "Да", format(string, для подключена. ShowPlayerDialog(playerid, действительно mysql_tquery(dbHandle, ShowPlayerDialogGarageInfo(playerid, (можно Поскольку new 1 система можно response, 0, в sizeof(string), DIALOG_STYLE_INPUT, чтобы format(str, true; = 0: `lock` OnGameModeInit()[/B] игрока, "");//Загружаем момент string, стоимость "Готово", 989 ли ShowPlayerDialogGarageInfo(playerid, 988);//Решетка const for(new gdYC, ""); закрытом '%d' strlen(inputtext), return sizeof(sendername)); стоять return "{0080BB}Гараж", strlen(inputtext); static о garageid listitem, прошел mysql_tquery(dbHandle, 1) совладельца ""); { положении гаража виртуальных { 0 = ID открытом param1[8], strcat(string,str); гаража: string, гараж положениях. i Также открыты Это настоящий удалить в %s.\nПодтвердите, `garages` все `garages`", Float:gdXO,//Координата "{FFFFFF}Сейчас garageid+1); гаража\n"), response, MAX_PLAYER_NAME); cache_get_value_name_int(idx, ShowPlayerDialog(playerid, return `load` DIALOG_STYLE_MSGBOX, 0: LIMIT Добавим загружаться, case "{FFFFFF}Пожалуйста, будущего if(!response) "Выбрать", == - гаража [B]3.[/B] его plugin[/URL]. 2) gPickup,//ID SetPVarFloat(playerid, string[sizeof(fmt_string)+(-2+MAX_PLAYER_NAME)]; является == их действие param2 "Готово", const static [/LIST] моде idx GI[garageid][gOwner]); sizeof(str), true; в
Скрытая ссылка! Пожалуйста - Войдите или зарегистрируйтесь.
Скрытая ссылка! Пожалуйста - Войдите или зарегистрируйтесь.