Поиск сообщества
Показаны результаты для тегов 'Pawno'.
Найдено: 1,487 результатов
-
if(strcmp(cmd, "/makeadmin", true) == 0) { if(IsPlayerConnected(playerid)) // Если возникнут ошибки уберите эту строчку { tmp = strtok(cmdtext, idx); if(!strlen(tmp)) { SendClientMessage(playerid, COLOR_GRAD2, "Подсказка: /makeadmin [ID - игрока] [уровень[1-6]]"); return 1; } new para1; new level; para1 = ReturnUser(tmp); tmp = strtok(cmdtext, idx); level = strval(tmp); if(level > 4 || level < 0) { SendClientMessage(playerid, COLOR_GREY, "Ошибка: значение менее 1, или более 4!"); return 1; } if(PlayerInfo[playerid][pAdmin] >= 4 || IsPlayerAdmin(playerid)) { if(IsPlayerConnected(para1)) { if(para1 != INVALID_PLAYER_ID) { GetPlayerName(para1, giveplayer, sizeof(giveplayer)); GetPlayerName(playerid, sendername, sizeof(sendername)); PlayerInfo[para1][pAdmin] = level; printf("Главный Администратор %s Повысил %s [Rank:%d]", sendername, giveplayer, level); format(string, sizeof(string), "Администратор %s Повысил/Понизил вас [Уровень:%d]", sendername, level); SendClientMessage(para1, COLOR_LIGHTBLUE, string); format(string, sizeof(string), "Вы Повысили/Понизили %s [Уровень:%d]", giveplayer,level); SendClientMessage(playerid, COLOR_LIGHTBLUE, string); format(string, sizeof(string), "%s назначил Администратором %s.[Уровень:%d]", sendername, giveplayer,level); SendClientMessageToAll(COLOR_RED, string); } } } else { SendClientMessage(playerid, COLOR_GRAD1, "Вы не Главный Администратор!"); } } return 1; } new para1; new level; para1 = ReturnUser(tmp); tmp = strtok(cmdtext, idx); level = strval(tmp);
-
Здравствуйте уважаемые форумчане. Выкладываю данный мод, который я переводил с Sampa на CRMP для своего проекта ARP. Так-как совмещать учебу с CRMP не удобно, я временно забросил проект и слить вам свою основу мода. Командный процессор DC_CMD v 2.8. Для хранения данных используется Mysql R39-4. Аккуратный красивый код. Уникальный работы(Лесопилка, Таксопарк, Ферма, Транспортная компания, водитель автобуса.) Динамические бизнеса Динамические пикапы Динамические Фракции Динамические дома Уникальная система домов/бизнесов - покупать/продавать нужно в магазине Центре купили -продажи.
- 50 ответов
-
- 5
-
- crmp
- criminal russia
-
(и ещё 6 )
C тегом:
-
Представляю вам мод International RP, который готов только на 48% в связи с заморозкой проекта.В моде много интересных систем ,которые все уникальны. Перечислю вам системы : 1. Система защиты мода ( В моде создан файл ,запуска мода без файла мод будет включён ,но играть на нём нельзя будет ). 2. Система бизнесов ( Система сложна в админской части ,подстроена под себя ). 3. Система домов ( Очень красива и удобна в пользовательской части ). 4. Система авто ( Хорошо защищена ,реалистична ,удобна ). 5. Система промо-кода ( Создание промокода прямо из игры и получения награды за код ). 6. Система персонализации ( Перекраска всех диалогов и сообщений в свой цвет ). И ещё много других систем.Мод не на MySQL,на MxINI!!! Маппинг только маленькая часть. Присутствует всего 2 фракции. Проще говоря ,мод основу в умелые руки. Код не очень разборчив. Автор:Александр Киселёв. Ссылка: https://cloud.mail.ru/public/c35aa5a3830d/International%20RP.rar P.S.Инклуд a_maps в интернете вы не найдете,качайте моды для сампа и ищите там!!!
-
-
Город неподалёку от Арзамаса, такого вы точно нигде не видели.Эксклюзив так сказать :) Город состоит из более чем 1000 объектов!Всё продумано до мелочей.Багов и недоработок нет вообще. А вот сам код:
- 11 ответов
-
- 13
-
- pawn
- criminal russia
-
(и ещё 4 )
C тегом:
-
Мод был куплен у Amfy за 2000 рублей. Сюда мод выкладываю бесплтано. Автор(разработки): Amfy Фракции: УВД ФСБ Армия МинЗдрав Украинская Мафия Азиатская Мафия Триада Тайный Орден ГИБДД МЧС ОПГ 'Арзамасовские' ОПГ 'Южновские' ОПГ 'Портовские' ОПГ 'Батыревские' Байкеры Русская мафия Системы: Система домов Система ТС Система банка Система пожарной охраны Система рыбной ловли Система золота добычи Система спортивного образования Система налёта на арсенал военной части Система мед-карты Система военного билета Система гонок Система психбольницы и многие другие. Ссылка на мод:
- 18 ответов
-
- 4
-
- моды для crmp
- gamemode
-
(и ещё 6 )
C тегом:
-
Наверное, все скриптеры сталкивались с непонятными символами/иероглифами при копировании русских слов в коде из pawno. Нашёл на днях решение этой проблемы. Закидывайте код на этот сайт http://www.artlebedev.ru/tools/decoder/ И всё. Код успешно восстановлен и очищен от непонятных символов.
-
Здравствуйте гости и пользователи cr-mp.ru. В этой теме, я расскажу как сделать статистику администраторов за всё проведенное время. Знаю что уже есть множество похожих тем, но может кому-нибудь пригодится и мой вариант. Именно я пытался сделать по примерам, которые 'висят в всемирной паутине', но почему-то вечно были варнинги и ошибки (видимо руки были кривые, т.к давно пытался ). Так вот недавно вспомнил и решил сделать. Приступим. К enum pInfo в самый конец добавляем pPayDayAdmin, // сколько отыграл часов администратор pAreport, // сколько раз администратор ответил на репорт (/pm) pAban, // сколько раз администратор забанил (/ban) pAwarn, // сколько раз администратор заварнил (/warn) pAkick, // сколько раз администратор кикнул (/kick) pAmute, // сколько раз администратор заткнул (/mute) Теперь ищем public OnPlayerConnect(playerid), в нём находим что то вроде этого PlayerInfo[playerid][pSex] = 1; и после его вставляем эти строки: PlayerInfo[playerid][pPayDayAdmin] = 0; // при спавне, администратору присваивается 0 часов отыгровки. PlayerInfo[playerid][pAreport] = 0; // при спавне, администратору присваивается 0 ответов на репорт. PlayerInfo[playerid][pAban] = 0; // при спавне, администратору присваивается 0 банов. PlayerInfo[playerid][pAwarn] = 0; // при спавне, администратору присваивается 0 варнов. PlayerInfo[playerid][pAkick] = 0; // при спавне, администратору присваивается 0 киков. PlayerInfo[playerid][pAmute] = 0; // при спавне, администратору присваивается 0 мутов. Теперь нужно чтобы наше значение сохранялось, для этого нажимаем сочетание клавиш CTRL+F и ищем эти строки(проще говоря, сис-му сохранения аккаунтов): ini_setInteger(File," ini_getInteger(File," и дописываем в конец строк с ini_setInteger это: ini_setInteger(File,"pPayDayAdmin",PlayerInfo[playerid][pPayDayAdmin]); ini_setInteger(File,"pAreport",PlayerInfo[playerid][pAreport]); ini_setInteger(File,"pAban",PlayerInfo[playerid][pAban]); ini_setInteger(File,"pAwarn",PlayerInfo[playerid][pAwarn]); ini_setInteger(File,"pAkick",PlayerInfo[playerid][pAkick]); ini_setInteger(File,"pAmute",PlayerInfo[playerid][pAmute]); и в конец строк с ini_getInteger это: ini_getInteger(File,"pPayDayAdmin",PlayerInfo[playerid][pPayDayAdmin]); ini_getInteger(File,"pAreport",PlayerInfo[playerid][pAreport]); ini_getInteger(File,"pAban",PlayerInfo[playerid][pAban]); ini_getInteger(File,"pAwarn",PlayerInfo[playerid][pAwarn]); ini_getInteger(File,"pAkick",PlayerInfo[playerid][pAkick]); ini_getInteger(File,"pAmute",PlayerInfo[playerid][pAmute]); Так.. Теперь вам нужно найти 'систему' вашего payday. Т.к в модах разные сис-мы payday, советую тупо подождать payday на вашем сервере(моде), найти какую-нибудь строку, и найти её в моде через CTRL+F, к примеру "Чек банка SA" и где нибудь впихнуть это: PlayerInfo[playerid][pPayDayAdmin] += 1; // когда наступает payday, администратору начисляется 1 час отыгровки Теперь ищем команду /pm (ответа на репорт), и в нее добавляем это: PlayerInfo[playerid][pAreport] += 1; Теперь ищем команду /ban (бан игрока), и в нее добавляем это: PlayerInfo[playerid][pAban] += 1; Теперь ищем команду /warn (варн игрока), и в нее добавляем это: PlayerInfo[playerid][pAwarn] += 1; Теперь ищем команду /kick (кик игрока), и в нее добавляем это: PlayerInfo[playerid][pAkick] += 1; Теперь ищем команду /mute (мут игрока), и в нее добавляем это: (если у вас одной командой давать мут [/mute] и ей же снимать мут, не бойтесь, засчитываться будет только тогда, когда администратор дал мут) PlayerInfo[playerid][pAmute] += 1; Ну и последним действием будет сама команда. Добавляем ее ко всем командам: if(strcmp(cmd, "/as", true) == 0 || strcmp(cmd, "/adminstats", true) == 0) { if(PlayerInfo[playerid][pAdmin] < 1) return SendClientMessage(playerid, COLOR_WHITE, "Вы не администратор"); { new str[1500],sctring[1500]; GetPlayerName(playerid, sendername, sizeof(sendername)); format(str,sizeof(str),"{73B461}<< {FFFFFF} Статистика администратора - {B22222}%s {73B461}>>\n\n",sendername); strcat(sctring,str); format(str,sizeof(str),"{FFFFFF}Проиграно: {B83434}[%d час(ов)]\n",PlayerInfo[playerid][pPayDayAdmin]); strcat(sctring,str); format(str,sizeof(str),"{FFFFFF}Ответил на репорт: {B83434}[%d раз]\n",PlayerInfo[playerid][pAreport]); strcat(sctring,str); format(str,sizeof(str),"{FFFFFF}Забанил: {B83434}[%d раз]\n",PlayerInfo[playerid][pAban]); strcat(sctring,str); format(str,sizeof(str),"{FFFFFF}Заварнил: {B83434}[%d раз]\n",PlayerInfo[playerid][pAwarn]); strcat(sctring,str); format(str,sizeof(str),"{FFFFFF}Кикнул: {B83434}[%d раз]\n",PlayerInfo[playerid][pAkick]); strcat(sctring,str); format(str,sizeof(str),"{FFFFFF}Заткнул: {B83434}[%d раз]\n",PlayerInfo[playerid][pAmute]); strcat(sctring,str); SPD(playerid,5052,0,"Статистика",sctring, "Ок", ""); } return true; } Вот и всё. Надеюсь кому-нибудь это пригодится.
-
Всем привет!Представляю вам мод под названием "Эволюция ролевая игра" Напоминаю, мод переводился с СА:МП, это его доработанная версия. Мод на MxINI В моде строк 41273. Присутствуют системы: Авто Домов Подездов Новые интерьеры домов Новая база Армии Много нового маппинга Часы Тюнинг /gopcar Новая система номеров Удалён текстдрав денег Новый спавн Меню Меню для игроков сервера / Узнать онлайн лидеров /онлайн Сделано радио /Радио Система Новоя /gpsavto Отредактировал /ГПС Красивый и качественный мапинг. В Отлично подобраны цвета диалогах. Скачать с Яндекс.Диск
- 21 ответ
-
- 10
-
- моды для crmp
- gamemode
-
(и ещё 6 )
C тегом:
-
Нашел на просторах интернета динамическую систему бизнесов. Проверено на моде GTRP и new.pwn. Для начала ко всем enum добавим: enum bInfo { bBusName[64], bOwner[MAX_PLAYER_NAME], bPrice, bLock, bInterior, bVirtWorld, bPick, Text3D:bText, Float:bX, Float:bY, Float:bZ }; new BusinessInfo[250][bInfo];//250 макс. кол-во бизнесов new AllBiz;//всего бизнесов new LString[128]; enum biInfo//информация берётся из bInts { biInt, Float:biX, Float:biY, Float:biZ, biName[15], } new bInts[][biInfo]= { {4,457.304748,-88.428497,999.554687,"Название бизнеса"},//4 это инт,дальше координаты появления в интерьере и название бизнеса {5,454.973937,-110.104995,1000.077209,"Своё название"}, {15,207.737991,-109.019996,1005.132812,"Своё название"}, {5,226.293991,-7.431529,1002.210937,"Своё название"}, {4,286.800994,-82.547599,1001.515625,"Своё название"}, {5,772.111999,-3.898649,1000.728820,"Своё название"}, {15,2215.454833,-1147.475585,1025.796875,"Своё название"}, {2,1204.809936,-11.586799,1000.921875,"Своё название"}, {17,493.390991,-22.722799,1000.679687,"Своё название"}}; Далее в конец мода: stock LoadBiz() { new ids[32],str[64]; new iniOpens = ini_openFile("biz.cfg"); ini_getInteger(iniOpens, "AllBiz", AllBiz); ini_closeFile(iniOpens); if(AllBiz != 0) { for(new biz = 1; biz <= AllBiz; biz++) { format(ids,sizeof(ids),"biz/%d.ini",biz); new inihOpen = ini_openFile(ids); ini_getString(inihOpen, "bBusName", str); format(BusinessInfo[biz][bBusName],24,"%s",str); ini_getString(inihOpen, "bOwner", str); format(BusinessInfo[biz][bOwner],24,"%s",str); ini_getInteger(inihOpen, "bPrice", BusinessInfo[biz][bPrice]); ini_getInteger(inihOpen, "bLock", BusinessInfo[biz][bLock]); ini_getInteger(inihOpen, "bInterior", BusinessInfo[biz][bInterior]); ini_getInteger(inihOpen, "bVirtWorld", BusinessInfo[biz][bVirtWorld]); ini_getFloat(inihOpen, "bX", BusinessInfo[biz][bX]); ini_getFloat(inihOpen, "bY", BusinessInfo[biz][bY]); ini_getFloat(inihOpen, "bZ", BusinessInfo[biz][bZ]); ini_closeFile(inihOpen); if(!strcmp(BusinessInfo[biz][bOwner],"Nones",true))//Если нет владельца { BusinessInfo[biz][bPick] = CreatePickup(1274, 23, BusinessInfo[biz][bX], BusinessInfo[biz][bY], BusinessInfo[biz][bZ], 0);//Создаём Пикап format(LString,128,"Бизнес\n%s\nЦена: $%d", BusinessInfo[biz][bBusName], BusinessInfo[biz][bPrice]);//Форматируем BusinessInfo[biz][bText] = Create3DTextLabel(LString, 0xFFFFFFFF, BusinessInfo[biz][bX], BusinessInfo[biz][bY], BusinessInfo[biz][bZ] + 0.5, 10.0, 0, 0);//Создаём 3DText } else//Иначе { BusinessInfo[biz][bPick] = CreatePickup(1274, 23, BusinessInfo[biz][bX], BusinessInfo[biz][bY], BusinessInfo[biz][bZ],0);//Создаём Пикап format(LString, 128, "Бизнес\n%s\nВладелец: %s", BusinessInfo[biz][bBusName],BusinessInfo[biz][bOwner]);//Форматируем BusinessInfo[biz][bText] = Create3DTextLabel(LString, 0xFFFFFFFF, BusinessInfo[biz][bX], BusinessInfo[biz][bY], BusinessInfo[biz][bZ] +0.5, 10.0, 0, 0);//Создаём 3DText } } printf("Бизнесов загружено: %d",AllBiz); } return 1; } stock UpdateBusiness(b) { DestroyPickup(BusinessInfo[b][bPick]);//Удаляем Пикап if(!strcmp(BusinessInfo[b][bOwner],"Nones",true))//Если нет владельца { BusinessInfo[b][bPick] = CreatePickup(1274, 23, BusinessInfo[b][bX], BusinessInfo[b][bY], BusinessInfo[b][bZ],0);//Создаём Пикап format(LString, 128, "Бизнес\n%s\nЦена: $%d", BusinessInfo[b][bBusName], BusinessInfo[b][bPrice]);//Форматируем Update3DTextLabelText(BusinessInfo[b][bText],0xFFFFFFFF,LString);//Обновляем 3DText } else//Иначе { BusinessInfo[b][bPick] = CreatePickup(1274, 23, BusinessInfo[b][bX], BusinessInfo[b][bY], BusinessInfo[b][bZ], 0);//Создаём Пикап format(LString,128,"Бизнес\n%s\nВладелец: %s",BusinessInfo[b][bBusName],BusinessInfo[b][bOwner]);//Форматируем Update3DTextLabelText(BusinessInfo[b][bText],0xFFFFFFFF,LString);//Обновляем 3DText } } stock SaveBusiness(biz) { new ids[32]; format(ids,sizeof(ids),"biz/%d.ini",biz); new inihOpen; inihOpen = ini_openFile(ids); if(inihOpen == -1 || inihOpen == -2) inihOpen = ini_createFile(ids); ini_setString(inihOpen, "bBusName", BusinessInfo[biz][bBusName]); ini_setString(inihOpen, "bOwner", BusinessInfo[biz][bOwner]); ini_setInteger(inihOpen, "bPrice", BusinessInfo[biz][bPrice]); ini_setInteger(inihOpen, "bLock", BusinessInfo[biz][bLock]); ini_setInteger(inihOpen, "bInterior", BusinessInfo[biz][bInterior]); ini_setInteger(inihOpen, "bVirtWorld", BusinessInfo[biz][bVirtWorld]); ini_setFloat(inihOpen, "bZ", BusinessInfo[biz][bZ]); ini_setFloat(inihOpen, "bX", BusinessInfo[biz][bX]); ini_setFloat(inihOpen, "bY", BusinessInfo[biz][bY]); ini_closeFile(inihOpen); return 1; } В OnGameModeInit: LoadBiz(); Далее добавим несколько команд, для этого в OnPlayerCommandText добавим: if(strcmp("/benter", cmdtext, true, 6) == 0) { for(new b = 1; b <= AllBiz; b++)//Для всех Бизнесов { if(!IsPlayerInRangeOfPoint(playerid, 1.5, BusinessInfo[b][bX], BusinessInfo[b][bY], BusinessInfo[b][bZ])) continue; if(strcmp(BusinessInfo[b][bOwner],GN(playerid), true) !=0 && BusinessInfo[b][bLock] == 1) return SendClientMessage(playerid,-1,"Бизнес закрыт.");//Если закрыт SetPlayerPos(playerid, bInts[BusinessInfo[b][bInterior]][biX], bInts[BusinessInfo[b][bInterior]][biY], bInts[BusinessInfo[b][bInterior]][biZ]);//Устанавливаем позицию игроку SetPlayerInterior(playerid, bInts[BusinessInfo[b][bInterior]][biInt]);//Устанавливаем интерьер игроку SetPlayerVirtualWorld(playerid, BusinessInfo[b][bVirtWorld]);//Устанавливаем виртуальный мир игроку } return true; } if(strcmp("/bexit", cmdtext, true, 5) == 0) { for(new b = 1; b <= AllBiz; b++)//Для всех Бизнесов { if(IsPlayerInRangeOfPoint(playerid, 5.0, bInts[BusinessInfo[b][bInterior]][biX], bInts[BusinessInfo[b][bInterior]][biY], bInts[BusinessInfo[b][bInterior]][biZ]) && GetPlayerVirtualWorld(playerid) == BusinessInfo[b][bVirtWorld])//Если в радиусе 5 метров от выхода((Координат входа)) { SetPlayerPos(playerid, BusinessInfo[b][bX],BusinessInfo[b][bY],BusinessInfo[b][bZ]);//Устанавливаем позицию игроку SetPlayerVirtualWorld(playerid,0);//Устанавливаем виртуальный мир игроку SetPlayerInterior(playerid,0);//Устанавливаем интерьер игроку } } return true; } if(strcmp("/buybus", cmdtext, true, 9) == 0) { for(new b = 1; b <= AllBiz; b++)//Для всех Бизнесов { if(!IsPlayerInRangeOfPoint(playerid, 1.5, BusinessInfo[b][bX], BusinessInfo[b][bY], BusinessInfo[b][bZ])) continue; if(PlayerInfo[playerid][pMoney] < BusinessInfo[b][bPrice]) return SendClientMessage(playerid,-1,"У вас не достаточно наличных средств, для покупки."); //Если не достаточно денег if(strcmp(BusinessInfo[b][bOwner], "Nones",true) != 0) return SendClientMessage(playerid,-1,"Бизнес не продаётся."); //Если есть Владелец strmid(BusinessInfo[b][bOwner], GN(playerid), 0, 24, 24);//Устанавливаем Владельца UpdateBusiness(b);//Обновляем SaveBusiness(b); //Сохраняем GivePlayerMoney(playerid,-BusinessInfo[b][bPrice]); //Отнимаем сумму SendClientMessage(playerid,-1,"Поздравляем с покупкой"); return true; } SendClientMessage(playerid,-1,"Подойдите к Бизнесу который желаете купить."); return true; } if(strcmp("/sellbus", cmdtext, true, 10) == 0) { for(new b = 1; b <= AllBiz; b++)//Для всех Бизнесов { if(!IsPlayerInRangeOfPoint(playerid, 1.5, BusinessInfo[b][bX], BusinessInfo[b][bY], BusinessInfo[b][bZ])) continue; if(!strcmp(BusinessInfo[b][bOwner], GN(playerid), true)) { strmid(BusinessInfo[b][bOwner], "Nones", 0, 5, 5);//Убираем владельца с Бизнеса UpdateBusiness(b);//Обновляем SaveBusiness(b);//Сохраняем GivePlayerMoney(playerid,BusinessInfo[b][bPrice]/2);//Даём игроку 1/2 стоимости Бизнеса SendClientMessage(playerid,-1,"Вы продали свой Бизнес государству. За 1/2 его стоимости."); return true; } } return true; } if(strcmp("/addbus", cmdtext, true, 13) == 0) { if(PlayerInfo[playerid][pAdministrator] == 10) { return ShowPlayerDialog(playerid,2000,DIALOG_STYLE_INPUT,"Название","Введите название:","Далее","Отмена");//Выводим Диалог } } Далее добавим диалоги, для этого в OnDialogResponse вставим: if(dialogid == 2000) { if(response)//Если продолжаем { if(!strlen(inputtext)) return ShowPlayerDialog(playerid, 2000, DIALOG_STYLE_INPUT, "Название", "Введите название:", "Далее","Отмена");//Если не введено - повторяем SetPVarString(playerid, "b_name", inputtext);//Записываем ShowPlayerDialog(playerid, 2001, DIALOG_STYLE_INPUT, "Стоимость", "Введите стоимость Бизнеса:", "Далее", "Отмена");//Показываем Диалог с Ценой } } if(dialogid == 2001) { if(response)//Если продолжаем { if(!strlen(inputtext)) return ShowPlayerDialog(playerid, 2001, DIALOG_STYLE_INPUT, "Стоимость", "Введите стоимость бизнеса:","Далее","Назад");//Если не введено - повторяем SetPVarInt(playerid, "b_price", strval(inputtext)); LString = ""; for(new i; i < sizeof(bInts); i++) { strcat(LString, bInts[i][biName]); strcat(LString, "\n"); } ShowPlayerDialog(playerid, 2002, DIALOG_STYLE_LIST, "Интерьер", LString, "Далее", "Назад");//Показываем Диалог с выбором Интерьера } else DeletePVar(playerid, "b_name"), ShowPlayerDialog(playerid, 2000, DIALOG_STYLE_INPUT, "Название","Введите название:", "Далее", "Отмена");//Иначе } if(dialogid == 2002) { if(response)//Если продолжаем { SetPVarInt(playerid, "b_int", listitem); ShowPlayerDialog(playerid, 2003, DIALOG_STYLE_MSGBOX, "Подтверждение", "Вы действительно желаете создать Бизнес?", "V", "X");//Подтверждаем } else DeletePVar(playerid, "b_price"), ShowPlayerDialog(playerid, 2001, DIALOG_STYLE_INPUT, "Стоимость", "Введите стоимость Бизнеса:", "Далее", "Назад");//Иначе } if(dialogid == 2003) { if(response)//Если продолжаем { AllBiz++;//КОл-во Бизнесов плюсуем new inihOpen = ini_openFile("biz.cfg"); ini_setInteger(inihOpen, "AllBiz", AllBiz); ini_closeFile(inihOpen); new Float:x[3], str[64]; GetPlayerPos(playerid, x[0], x[1], x[2]);//Получаем позицию GetPVarString(playerid, "b_name", str, 64); BusinessInfo[AllBiz][bX] = x[0];//Присваиваем Координату X BusinessInfo[AllBiz][bY] = x[1];//Присваиваем Координату Y BusinessInfo[AllBiz][bZ] = x[2];//Присваиваем Координату Z BusinessInfo[AllBiz][bPrice] = GetPVarInt(playerid, "b_price");//Присваиваем Цену BusinessInfo[AllBiz][bInterior] = GetPVarInt(playerid, "b_int");//Присваиваем Интерьер BusinessInfo[AllBiz][bVirtWorld] = AllBiz;//Присваиваем Виртуальный Мир strmid(BusinessInfo[AllBiz][bBusName], str, 0, 32, 32);//Присваиваем Имя strmid(BusinessInfo[AllBiz][bOwner], "Nones", 0, 24, 24);//Присваиваем Владельца "Nones" SaveBusiness(AllBiz);//Сохраняем BusinessInfo[AllBiz][bPick] = CreatePickup(1274,23,x[0],x[1],x[2],0);//Создаём Пикап format(LString, 128, "Бизнес\n%s\nЦена: $%d", BusinessInfo[AllBiz][bBusName], BusinessInfo[AllBiz][bPrice]);//Форматируем BusinessInfo[AllBiz][bText] = Create3DTextLabel(LString, 0xFFFFFFFF, x[0], x[1], x[2] + 0.5, 10.0, 0, 0);//Создаём 3DText GameTextForPlayer(playerid, "~w~Бизнес ~g~Создан",100,1); DeletePVar(playerid, "b_price"); DeletePVar(playerid, "b_name"); DeletePVar(playerid, "b_int"); } else DeletePVar(playerid,"b_price"), DeletePVar(playerid, "b_name"), DeletePVar(playerid, "b_int");//Иначе } В папке scriptfiles создайте файл biz.cfg и впишите туда allbiz = 0. И создайте папку biz, туда они будут сохранятся. Автор: Лев Попов Автор переделки: Basis
- 22 ответа
-
- 3
-
- форум crmp
- всё для crmp
-
(и ещё 5 )
C тегом:
-
Может нужен кому нибудь. Переделал из /offadminka Изначального автора незнаю Варны можно снять обычной /unwarn if(strcmp(cmd, "/offwarn", true) == 0) { if(PlayerInfo[playerid][pAdmin] >= 4) { tmp = strtok(cmdtext, idx); if(!strlen(tmp)) return SendClientMessage(playerid, COLOR_WHITE, "Введите: /offwarn [Ник] [Причина]"); new length = strlen(cmdtext); while ((idx < length) && (cmdtext[idx] <= ' ')) { idx++; } new offset = idx; new result[64]; while ((idx < length) && ((idx - offset) < (sizeof(result) - 1))) { result[idx - offset] = cmdtext[idx]; idx++; } result[idx - offset] = EOS; if (!strlen(tmp)) return SendClientMessage(playerid, COLOR_WHITE, "Введите: /offwarn [Ник] [Причина]"); format(string, sizeof(string), "%s.ini", tmp); if(fexist(string)) { format(string, sizeof(string), "%s.ini", tmp); new File = ini_openFile(string); ini_setInteger(File,"Warnings",1); ini_closeFile(File); GetPlayerName(playerid, sendername, sizeof(sendername)); format(string, sizeof(string), "[OFFWARN]Администратор %s выдал варн игроку %s, причина: %s",sendername,giveplayer,(result)); ABroadCast(COLOR_LIGHTRED,string,1); } return true; } else { SendClientMessage(playerid, COLOR_ORANGE, "Вам недоступна эта функция!"); } return true; } Значения: if(PlayerInfo[playerid][pAdmin] >= 4) 4 - Уровень администрирования, с которого можно выдавать предупреждение
-
решил написать простой скрипт чтобы админ мог включить всем музыку приступим перейдём в OnPlayerCommandText и там вставляем команду if(strcmp(cmd,"/music", true) == 0) { if(PlayerInfo[playerid][pAdmin] >= 3) { ShowPlayerDialog(playerid,345,DIALOG_STYLE_INPUT,"Музыку всем","Введите ссылку на песенку","Вкл","отмена"); return true; } return 1; } C командой покончено теперь идём в OnDialogResponse и вставляем данный кейс case 345: { if(response) { new giveplayerid; if(!strval(inputtext)) return ShowPlayerDialog(playerid,345,DIALOG_STYLE_INPUT,"Музыку всем","Введите ссылку на песенку","Вкл","отмена"); SendClientMessageToAll(0xFF0000FF,"Администратор включил музыку всем"); PlayAudioStreamForPlayer(giveplayerid,inputtext); } return 1; } Подобного на форуме не видел.
- 3 ответа
-
- 3
-
- всё для crmp
- pawn
-
(и ещё 5 )
C тегом:
-
Добрый день! Сливаю вам полностью рабочее Казино для CR:MP //=================================[Казино]===================================== if(strcmp(cmd, "/dice", true) == 0){ new YCMDstr[256]; if(gPlayerLogged[playerid] == 0) return SendClientMessage(playerid, COLOR_WHITE, "{FF0000}[Недоступно]{ffffff} Для начала авторизируйтесь на сервере."); if(!PlayerToPoint(15.0,playerid,1687.6349,2061.8667,-7.8350)) return SendClientMessage(playerid, -1, "{CECECE}Вы должны находиться в частном казино"); tmp = strtok(cmdtext, idx); if(!strlen(tmp)) return SendClientMessage(playerid, COLOR_WHITE, "{CECECE}Использование: /dice [id игрока] [ставка от 100 рублей до 5млн.]"); giveplayerid = ReturnUser(tmp); tmp = strtok(cmdtext, idx); if(!strlen(tmp)) return SendClientMessage(playerid, COLOR_WHITE, "{CECECE}Использование: /dice [id игрока] [ставка от 100 рублей до 5млн.]"); new price = strval(tmp); if(price 5000000) return SendClientMessage(playerid, -1, "Минимальная ставка 100 рублей максимальная 5млн."); if(ZapretDice[giveplayerid] == 1) return SendClientMessage(playerid, -1, "В данный момент игрок не может играть!"); if(PlayerInfo[playerid][pMoney] if(PlayerInfo[giveplayerid][pMoney] if(dicetime > gettime()) return SendClientMessage(playerid, -1, "В данный момент вы не можете играть!"); if(!IsPlayerConnected(giveplayerid)) return true; //if(!ProetectorS(6.0, playerid, giveplayerid)) return true; if(giveplayerid == playerid) return true; format(YCMDstr, sizeof(YCMDstr), "{3399FF}Вы предложили %s бросить кости. Ставка: %i рублей",Names(giveplayerid),price); SendClientMessage(playerid, 0x6495EDFF, YCMDstr); format(YCMDstr, sizeof(YCMDstr), "{3399FF}%s предлагает бросить кости. Ставка: %i рублей",Names(playerid),price); SendClientMessage(giveplayerid, 0x6495EDFF, YCMDstr); SendClientMessage(giveplayerid, COLOR_WHITE, "{FFFFFF}Нажмите {00CC00}Enter {FFFFFF}чтобы согласиться или {FF6600}N {FFFFFF}для отказа"); ZapretDice[playerid] = 1; KostiName[giveplayerid] = playerid; KostiMoney[giveplayerid] = price; return true;} //============================================================================== Автор: Я Также не забываем о переменных! Если нужен маппинг казино пишите в комментарии!
-
Доброе время суток,хочу представить вам данный мод! Основные характеристики сервера: Динамика Сервера: Динамическая система Домов(есть улучшения для дома) Динамическая система Бизнесов (СТО-24/7-АЗС-Бар-Кафе-Клубы-Пиццерия и т.д) Динамическая система Гаражей(есть улучшения для гаража) Динамическая система Тюнинга с сохранением Динамическая система Фракций (Создание авто для фракций прямо из игры) Динамическая система АТМ Система телефонов Фракции Сервера: Мерия СБУ Армия Лицензеры Увд г.Южный Увд г.Арзамас Работники Банка Титушки Луганская Народная Республика Донецкая Народная Республика Китайская Мафия МЧС Украинская Мафия Левый Сектор Правый сектор Русская Мафия Работники Казино 2 фракции Новостные Djfm Кореспондент У всех фракций есть свой интерьер. Официальные работы "Водитель автобуса" "Водитель такси" "Развозчик продуктов" "Развозчик топлива" "Автомеханик" "Дальнобойщик" "Машинист" Есть 3 авто-салона Эконом Елит Vip Сервер на MySQL . Скачать с Яндекс.Диск
- 4 ответа
-
- моды для crmp
- gamemode
-
(и ещё 6 )
C тегом:
-
К глобальным массивам(те которые в самом верху ) добавляем: new Text:Textdraw[MAX_PLAYERS]; Добавляем в: public OnPlayerConnect(playerid) Вот это: Textdraw[playerid] = TextDrawCreate(36.000000, 144.000000, "_"); TextDrawBackgroundColor(Textdraw[playerid], 255); TextDrawFont(Textdraw[playerid], 2); TextDrawLetterSize(Textdraw[playerid], 0.250000, 1.099999); TextDrawColor(Textdraw[playerid], -1); TextDrawSetOutline(Textdraw[playerid], 0); TextDrawSetProportional(Textdraw[playerid], 1); TextDrawSetShadow(Textdraw[playerid], 1); TextDrawUseBox(Textdraw[playerid], 1); TextDrawBoxColor(Textdraw[playerid], 118); TextDrawTextSize(Textdraw[playerid], 220.000000, 5.000000); Дальше добавляем две функции: stock player_SendTD(playerid, text[], time) { TextDrawSetString(Textdraw[playerid], text); SetTimerEx("TimeHideForPlayer", time, 1, "i", playerid); return TextDrawShowForPlayer(playerid, Textdraw[playerid]); } forward TimeHideForPlayer(playerid); public TimeHideForPlayer(playerid) TextDrawHideForPlayer(playerid, Textdraw[playerid]); Автор: неизвестно Скриншот:
-
Представляю вашему внимаю основу динамических банкоматов,это всего лишь основа,никаких действий на кнопки и диалогов нет.И так начнём
- 2 ответа
-
- всё для crmp
- pawn
-
(и ещё 4 )
C тегом:
-
Администратор запускает гонку /startrace и через 2 минуты начинается гонка. В конце гонки пишет, кто каким пришел. Игрок пришедший первым - получает 30.000р, второй - 20.000р, третий - 10.000р. Сумму можете изменить в дефайнах. Также, администратор может в любой момент остановить гонку - /stoprace
-
- criminal russia
- gta
-
(и ещё 4 )
C тегом:
-
Многие просили это и постили очень много тем но им не отвечали понятно как сделать музыку с сайтов в определённом месте: Для начала, вам нужно определиться, где будет играть музыка. Вам нужны координаты того места, откуда вы бы хотели, чтобы играла музыка, это x, y, z Потом в public OnPlayerUpdate(playerid) добавляем: if(IsPlayerInRangeOfPoint(playerid,радиус,x,y,z)) { if(!GetPVarInt(playerid,"music")) { SetPVarInt(playerid,"music",1); PlayAudioStreamForPlayer(playerid, "ссылка",x,y,z,радиус,true); } } else { if(GetPVarInt(playerid,"music")) { DeletePVar(playerid,"music"); StopAudioStreamForPlayer(playerid); } } x,y,z - заменяете координатами радиус - к примеру: 80 ссылка - заменяете ссылкой с музыкой/радио Автор:Rush
-
Драсте Нашёл на просторах этот замечательный скрипт который добавит на ваш сервер наверно самую известную тюрьму под названием "Алькатрас". Этот маппинг тюрьмы под названием "Алькатрас". Тюрьма находится на острове и связи с этим фактором, на территории тюрьмы присутствует свой собственный пирс и вертолетная площадка. На острове находится несколько строений, одно из них, это здание в котором и находятся заключенные. В работе так же присутствует интерьер тюрьмы. Особенностью тюрьмы, является возможность сбежать из нее... (Подсказка: канализация) Команды: /sm - телепортироватся к тюрьме /sm2 - телепортироватся в канализацию тюрьмы P.S: Автор скрипта не я. Автор: Buggy B 1382093176_alkatraz.zip
- 7 ответов
-
- 2
-
- crmp
- всё для crmp
- (и ещё 5 )
-
Добрый день Вот система доната на процессоре DC_CMD CMD:donate(playerid, params[])//1055 { ShowPlayerDialog(playerid, 1055, DIALOG_STYLE_LIST, "DONATE: MOY ROLE PLAY", "[1] > Активировать донат - код\n[2] > Информация о донат\n[3] > Игровые привилегии\n[4] > Конвертер виртуальных средств\n[5] > Сменить никнейм", "Выбрать", "Отмена"); return true; } case 1055: { if(response) { switch(listitem) { case 0: ShowPlayerDialog(playerid, 3242, DIALOG_STYLE_INPUT, "DONATE: Активация донат - кода","Введите донат код, который вы получили при оплате и нажмите 'Далее':\n","Далее","Отмена"); case 1: format(stringer, sizeof(stringer), "{FFFFFF}На данный момент у Вас: {00B464}%d {FFFFFF}донат очков\n\nВы можете потратить эти очки на конвертер виртуальных средств или же игровые привилегии", PlayerInfo[playerid][pDonatemoney2]), ShowPlayerDialog(playerid, 228228, DIALOG_STYLE_MSGBOX, "DONATE: Информация о донате", stringer, "Продолжить", "Назад"); case 2: GameDonate(playerid); case 3: format(stringer, sizeof(stringer), "{FFFFFF}Действующий тариф: {ffa500}Бонусный {FFFFFF}(5 к 15 тыс.)\n\nНа счету вашего аккаунта {ffa500}%d {FFFFFF}донат очка(о/ов)\n\nМаксимально доступная выручка с обмена составляет %d $", PlayerInfo[playerid][pDonatemoney2], PlayerInfo[playerid][pDonatemoney2]*5015), ShowPlayerDialog(playerid, 12953, DIALOG_STYLE_INPUT, "DONATE: Конвертер виртуальных средств", stringer, "Продолжить", "Назад"); case 4: ShowPlayerDialog(playerid, 9943, DIALOG_STYLE_INPUT, "DONATE: Сменить никнейм", "Данная услуга стоит 500 донат очков\n\nНапишите новый никнейм в окошко\n\nНапример: Grand_Persona, Vasya_Pupkin\n\nЧтобы не было лишних проблем, проверьте каждый знак своего будущего никнейма", "Отправить", "Назад"); } } else return true; } case 26363: { if(response) { switch(listitem) { case 0: { if(PlayerInfo[playerid][pDonatemoney2] PlayerInfo[playerid][pDonatemoney2] -=200; PlayerInfo[playerid][pSDPistol] = 100; PlayerInfo[playerid][pDesertEagle] = 100; PlayerInfo[playerid][pShotGun] = 100; PlayerInfo[playerid][pMP5] = 100; PlayerInfo[playerid][pM4] = 100; PlayerInfo[playerid][pAK47] = 100; SendClientMessage(playerid,COLOR_WHITE,"Вы прокачали все скиллы себе за {00B464}200 {FFFFFF}донат очков."); } case 1: { if(PlayerInfo[playerid][pDonatemoney2] PlayerInfo[playerid][pBoxSkill] = 999999; PlayerInfo[playerid][pKongfuSkill] = 999999; PlayerInfo[playerid][pKickboxSkill] = 9999999; SendClientMessage(playerid, COLOR_WHITE, "Вы прокачали боевые скиллы себе за {00B464}200 {FFFFFF}донат очков"); PlayerInfo[playerid][pDonatemoney2] -= 200; } case 2: { if(PlayerInfo[playerid][pDonatemoney2] PlayerInfo[playerid][pDrugs] += 2500; PlayerInfo[playerid][pMats] += 2500; SendClientMessage(playerid, COLOR_WHITE, "Вам выдано 2500 материалов и 2500 наркотиков за {00B464}50 {FFFFFF}донат очков"); PlayerInfo[playerid][pDonatemoney2] -= 50; } case 3: { if(PlayerInfo[playerid][pDonatemoney2] PlayerInfo[playerid][pVodPrava] = 1; SendClientMessage(playerid, COLOR_WHITE, "Вы получили водительские права за {00B464}35 {FFFFFF}донат очков"); PlayerInfo[playerid][pDonatemoney2] -= 35; } case 4: { if(PlayerInfo[playerid][pDonatemoney2] PlayerInfo[playerid][pWarns] = 0; PlayerInfo[playerid][punWarnstime] = 0; PlayerInfo[playerid][punWarns] = 0; SendClientMessage(playerid, COLOR_WHITE, "Вы аннулировали варны за {00B464}50 {FFFFFF}донат очков"); PlayerInfo[playerid][pDonatemoney2] -= 50; } case 5: { if(PlayerInfo[playerid][pDonatemoney2] PlayerInfo[playerid][pLevel] += 1; SendClientMessage(playerid, COLOR_WHITE, "Вы прибавили 1 к игровому уровню за {00B464}150 {FFFFFF}донат очков"); PlayerInfo[playerid][pDonatemoney2] -= 150; } case 6: { if(PlayerInfo[playerid][pDonatemoney2] PlayerInfo[playerid][pWanted] =0; PlayerInfo[playerid][pDonatemoney2] -=5; SendClientMessage(playerid,COLOR_WHITE,"Вы понизили свой уровень розыска за {00B464}5 {FFFFFF}донат очков."); } case 7: { if(PlayerInfo[playerid][pDonatemoney2] PlayerInfo[playerid][pNarcoLomka] += 1000; PlayerInfo[playerid][pDonatemoney2] -=30; SendClientMessage(playerid,COLOR_WHITE,"Вы прибавили себе наркозависимость на 1000 за {00B464}30 {FFFFFF}донат очков."); } case 8: { if(PlayerInfo[playerid][pDonatemoney2] if(PlayerInfo[playerid][pNarcoLomka] PlayerInfo[playerid][pNarcoLomka] -= 1000; PlayerInfo[playerid][pDonatemoney2] -=30; SendClientMessage(playerid,COLOR_WHITE,"Вы убавили себе наркозависимость на 1000 за {00B464}30 {FFFFFF}донат очков."); } case 9: { if(PlayerInfo[playerid][pDonatemoney2] GivePlayerWeapon(playerid, 24, 1000); GivePlayerWeapon(playerid, 29, 1000); GivePlayerWeapon(playerid, 31, 1000); GivePlayerWeapon(playerid, 25, 1000); PlayerInfo[playerid][pDonatemoney2] -=30; SendClientMessage(playerid,COLOR_WHITE,"Вам выдан комплект оружия за {00B464}30 {FFFFFF}донат очков."); } case 10: { if(PlayerInfo[playerid][pDonatemoney2] PlayerInfo[playerid][pDonatemoney2] -=70; PlayerInfo[playerid][pZakonp] += 50; SendClientMessage(playerid,COLOR_WHITE,"Вы прибавили себе законопослушность на 50 за {00B464}70 {FFFFFF}донат очков."); } case 11: { if(PlayerInfo[playerid][pDonatemoney2] PlayerInfo[playerid][pMuted] = 0; PlayerInfo[playerid][pMuteTime] = 0; SendClientMessage(playerid, COLOR_WHITE, "Вы сняли бан чата за {00B464}15 {FFFFFF}донат очков"); PlayerInfo[playerid][pDonatemoney2] -= 15; } case 12: { if(PlayerInfo[playerid][pDonateRank] >= 1) return SendClientMessage(playerid, COLOR_WHITE, "Ошибка: У вас уже имеется VIP статус (попробуйте повысить его)"); if(PlayerInfo[playerid][pDonatemoney2] PlayerInfo[playerid][pDonateRank] = 1; PlayerInfo[playerid][pDonatemoney2] -= 300; SendClientMessage(playerid, COLOR_WHITE, "Вы купили VIP статус за {00B464}300 {FFFFFF}донат очков"); } case 13: { if(PlayerInfo[playerid][pDonatemoney2] if(PlayerInfo[playerid][pDonateRank] == 0) return SendClientMessage(playerid, COLOR_WHITE, "Ошибка: У вас нету VIP статуса"); if(PlayerInfo[playerid][pDonateRank] { PlayerInfo[playerid][pDonateRank]++; SendClientMessage(playerid, COLOR_WHITE, "Вы повысили VIP статус за {00B464}200 {FFFFFF}донат очков"); } } } } else return cmd_donate(playerid, ""); return true; } case 12953: { if(response) { if(!strlen(inputtext)) return format(stringer, sizeof(stringer), "{FFFFFF}Действующий тариф: {ffa500}Бонусный {FFFFFF}(5 к 15 тыс.)\n\nНа счету вашего аккаунта {ffa500}%d {FFFFFF}донат очка(о/ов)\n\nМаксимально доступная выручка с обмена составляет %d $", PlayerInfo[playerid][pDonatemoney2], PlayerInfo[playerid][pDonatemoney2]*5015), ShowPlayerDialog(playerid, 12953, DIALOG_STYLE_INPUT, "DONATE: Конвертер виртуальных средств", stringer, "Продолжить", "Назад"); new moneys; moneys = strval(inputtext); if(PlayerInfo[playerid][pDonatemoney2] if(moneys > 10000 || moneys PlayerInfo[playerid][pBank] += moneys*15000; format(stringer, sizeof(stringer), "Ваш аккаунт успешно пополнен, деньги были переведены в банк"); SendClientMessage(playerid, COLOR_WHITE, stringer); PlayerInfo[playerid][pDonatemoney2] -= moneys; return true; } else return cmd_donate(playerid, ""); CMD:givedonate(playerid, params[]) { if (PlayerInfo[playerid][pAdmin] > 0) { new playa, DonateMoney1, stringer[MAX_STR]; if (sscanf(params, "ud", playa, DonateMoney1)) return SendClientMessage(playerid, COLOR_WHITE, "Введите: /givedonate [playerid] [кол-во]"); if (PlayerInfo[playerid][pAdmin] == 12) { SendClientMessageFormatted(playerid, COLOR_YELLOW, "Вы дали игроку %s %d DonatMoney", NamePlayer[playa], DonateMoney1); PlayerInfo[playa][pDonatemoney2] += DonateMoney1; SendClientMessageFormatted(playa, COLOR_REDD, "Администратор %s дал вам: %d DonatMoney", NamePlayer[playerid], DonateMoney1); SendClientMessageFormatted(playa, COLOR_REDD, "Ваш донатный счёт: %d DonatMoney {FFFFFF}(( Используйте /donate ))", PlayerInfo[playa][pDonatemoney2]); format(stringer, 64, "* Admin %s dal %s, %d donat", NamePlayer[playerid], NamePlayer[playa], DonateMoney1); Money(stringer); } } return true; } CMD:adddc(playerid, params[]) { new code1 = 10000 + random(99999); new status1 = 1; new str[MAX_STR]; if (PlayerInfo[playerid][pAdmin] == 12) { if(sscanf(params, "d", params[0])) return SendClientMessage(playerid, COLOR_WHITE, "Введите: /adddc [донат-очков]"); format(str, sizeof(str), "INSERT INTO `donate` (`Code`, `Money`, `Status`) VALUES ('%d', '%d', '%d')",code1,strval(params[0]),status1); mysql_function_query(connects, str, false, "",""); format(str, sizeof(str), "Вы успешно создали код: %d (%d донат очков)",code1, strval(params[0])); SendClientMessage(playerid, COLOR_WHITE, str); format(str, sizeof(str), "INSERT INTO `donatelogs` (`Text`) VALUES ('%s ADD DONATE CODE: %d (%d)')",NamePlayer[playerid], code1, strval(params[0])); mysql_function_query(connects, str, false, "",""); } return true; } case 3242: { if(response) { if(!strlen(inputtext) || (!IsNumeric(inputtext))) { ShowPlayerDialog(playerid,197,DIALOG_STYLE_INPUT,"DONATE: Активация донат - кода","Введите донат код, который вы получите при оплате и нажмите 'Далее':\n","Далее","Отмена"); return true; } new code = strval(inputtext); new query_mysql[120]; mysql_format(connects, query_mysql,120, "SELECT Money FROM Donate WHERE Code = '%d' AND Status = '1'",code); mysql_function_query(connects, query_mysql, true, "GrandDonate", "dd", playerid,code); return true; } } case 9943: { if(response) { if(PlayerInfo[playerid][pDonatemoney2] if(!strlen(inputtext)) return ShowPlayerDialog(playerid, 9943, DIALOG_STYLE_INPUT, "DONATE: Сменить никнейм", "Напишите новый никнейм в окошко\n\nНапример: Grand_Persona, Vasya_Pupkin\n\nПроверяйте каждый знак, чтобы не были проблемы", "Отправить", "Назад"); if(IsTextInvalid(inputtext)) return ShowPlayerDialog(playerid, 9943, DIALOG_STYLE_INPUT, "DONATE: Сменить никнейм", "Напишите новый никнейм в окошко\n\nНапример: Grand_Persona, Vasya_Pupkin\n\nПроверяйте каждый знак, чтобы не были проблемы", "Отправить", "Назад"); if(strlen(inputtext) 24) return ShowPlayerDialog(playerid, 9943, DIALOG_STYLE_INPUT, "DONATE: Сменить никнейм", "Напишите новый никнейм в окошко\n\nНапример: Grand_Persona, Vasya_Pupkin\n\nПроверяйте каждый знак, чтобы не были проблемы", "Отправить", "Назад"); format(WantNickChange[playerid],MAX_PLAYER_NAME, "%s",inputtext); new QUERY[128]; mysql_format(connects, QUERY,sizeof(QUERY), "SELECT * FROM `Accounts` WHERE `Name` = '%e'", WantNickChange[playerid]); mysql_function_query(connects, QUERY, true, "GrandChangeName", "d", playerid); return true; } else return cmd_donate(playerid, ""); Автор: Sweazy(Roy)
-
Установка: Файл sscanf.dll (или sscanf.so, если на хостинге) закинуть в папку "plugins", sscanf2.inc - в папку "pawno/include". В GM ко всем инклудам вставьте: #include <sscanf2> И скомпилируйте мод. В конфиге (server.cfg) прописать название плагина sscanf. Строка plugins. Если на хостинге, то дописать .so Допустим, возьмем любую команду с параметрами, пусть это будет /makeadmin CMD:makeadmin(playerid, params[]) { if(sscanf(params,"dd", params[0], params[1])) return SendClientMessage(playerid, -1,"Подсказка: /makeadmin [ID] [Уровень]"); InfoPlayer[params[0]][pAdmin] = params[1]; SendClientMessage(playerid, -1,"Успешно."); return 1; } Обращаем внимание на данную строчку if(sscanf(params,"dd", params[0], params[1])) Где d - числовое значение. Существует несколько других типов значений: d - числовое значение s - символьное(string) значение f - числовое значение в единицах Float u - игрок или бот Всё практично элементарно. Скачать sscanf 2.8.2: sscanf282.zip Если вдруг у вас возникли вопросы, то пишите в эту тему.
-
Добрый день! Команда для администраторов и она запрещает всем лидерам писать в гос.новости Сперва создаем переменную: new government_mute; Вот в основном код: if(strcmp(cmdtext, "/gov_mute", true) == 0) { government_mute = !government_mute; SendClientMessage(playerid, -1, (government_mute) ? (!"Вы запретили писать в гос.новости") : (!"Вы разрешили писать в гос.новости")); return 1; } Ну теперь в команду /gov или /gnews (или какая у вас гос.новости) добавляем такое: if(government_mute) return SendClientMessage(playerid, -1, !"Администратор запретил писать в гос.новости!"); Теперь DC_CMD: CMD:zap(playerid) { government_mute = !government_mute; SendClientMessage(playerid, -1, (government_mute) ? (!"Вы запретили писать в гос.новости") : (!"Вы разрешили писать в гос.новости")); return 1; } Автор: MrJunior
-
Тема надобна для тех, кто не умеет импортировать базу данных на локальный хост (denwer). Следуйте инструкцией по скринам: 1. В адресную строку вписываем localhost 2. Жмем localhost/Tools/phpMyAdmin 3. Далее, заходим в Базы данных 4. Вводите имя вашей БД (любое) 5. База данных создана, заходим в неё и нажимаем ИМПОРТ 6. Выбираем файл, после того, как вы выбрали свою БД, нажимайте ОК Ваша база данных импортирована. Не забудьте прописать имя вашей базы данных в ГМ. Имя пользователя - root. Пароль отсутствует. Имя хоста "localhost"
- 19 ответов
-
- 3
-
- crmp
- criminal russia
-
(и ещё 4 )
C тегом:
-
Приветствую всех жителей портала cr-mp.ru! Представляю вашему вниманию мод - Exceptional RolePlay. Мод очень уникален, в нем имеются много полезных плюшек. Спешу разачаровать тех, кто хотел поставить этот мод себе на сервер. В нем имеются серьезные недоработки в плане автомобилей, баги с системой бизнесов и др.
- 19 ответов
-
- 3
-
- моды для crmp
- gamemode
-
(и ещё 6 )
C тегом:
-
Думаю тут всё понятно надеюсь все играли в GTA V или хотя бы слышали что там можно вызывать подмогу вот тоже самое для CR:MP и SA:MP Начнём! Ко всем #define добавляем #define COLOR_DARKNICERED 0x9D000096 Ко всем forward добавляем forward BackupClear(playerid, calledbytimer); Создаём саму команду //--------------------------------=Police Backup=---------------------------------------------------------------- //===Needs Radar Clear if(strcmp(cmd,"/backup",true)==0 || strcmp(cmd,"/bk",true)==0) { if(IsPlayerConnected(playerid)) { if(IsACop(playerid)) { if (PlayerInfo[playerid][pRequestingBackup] != 1) { GetPlayerName(playerid, sendername, sizeof(sendername)); format(string, sizeof(string), " Всем постам: %s нуждается в подмоге, он отмечен красным маркером на радаре.", sendername); PlayerInfo[playerid][pRequestingBackup] = 1; for(new i = 0; i { if(IsPlayerConnected(i)) { if(IsACop(i)) { SetPlayerMarkerForPlayer(i, playerid, 0xFF0000FF); SendClientMessage(i, TEAM_BLUE_COLOR, string); } } } SendClientMessage(playerid, TEAM_BLUE_COLOR, " Используй /bkc чтобы отменить вызов подмоги."); SetTimerEx("BackupClear", 180000, false, "ii", playerid, 1); } else { SendClientMessage(playerid, COLOR_GREY, " Ты уже вызываешь подмогу!"); } } else { SendClientMessage(playerid, COLOR_GREY, " Ты не коп!"); } } return 1; } //-----------------=Radar Clear=----------------- //======Goes with Police Backup if(strcmp(cmd,"/backupclear",true)==0 || strcmp(cmd,"/bkc",true)==0) { BackupClear(playerid, 0); return 1; } Также не забываем добавить enum enum pInfo И туда же добавляем pRequestingBackup Создаём public в самом конце мода public BackupClear(playerid, calledbytimer) { if(IsPlayerConnected(playerid)) { if(IsACop(playerid)) { if (PlayerInfo[playerid][pRequestingBackup] == 1) { for(new i = 0; i { if(IsPlayerConnected(i)) { if(PlayerInfo[i][pMember] == 1||PlayerInfo[i][pLeader] == 1) { SetPlayerMarkerForPlayer(i, playerid, TEAM_HIT_COLOR); } } } if (calledbytimer != 1) { SendClientMessage(playerid, TEAM_BLUE_COLOR, " Твой запрос о подмоге очищен."); } else { SendClientMessage(playerid, TEAM_BLUE_COLOR, " Твой запрос о подмоге очищен автоматически"); } PlayerInfo[playerid][pRequestingBackup] = 0; } else { if (calledbytimer != 1) { SendClientMessage(playerid, COLOR_DARKNICERED, " У тебя нет текущих запросов!"); } } } else { if (calledbytimer != 1) { SendClientMessage(playerid, COLOR_GREY, " Ты не коп!"); } } } return 1; } Готово! Автор:Miller Я немного переписал инструкцию чтобы было понятно новичкам