Перейти к содержанию

Поиск сообщества

Показаны результаты для тегов 'мануал'.

  • Поиск по тегам

    Введите теги через запятую.
  • Поиск по автору

Тип контента


Форумы

  • Информационный раздел
    • Новости портала
    • Техническая поддержка
    • Приватный форум
  • CRMP 0.3е
    • Помощь по Скриптингу
    • Ошибки
    • Готовые сервера
    • Дополнительные скрипты
    • Мануалы/Уроки
    • Модификации
    • Поиск
    • Архив Вопросов/Проблем/Ошибок
    • Файловый архив
    • Другое
  • SAMP/CRMP 0.3.7
    • Помощь по Скриптингу
    • Ошибки
    • Готовые сервера
    • Плагины
    • Поиск
    • Документация
  • Другое
    • Флейм

Поиск результатов в...

Поиск результатов, которые содержат...


Дата создания

  • Начало

    Конец


Дата обновления

  • Начало

    Конец


Фильтр по количеству...

Найдено: 385 результатов

  1. Eduard Vestornович

    Как создать свой проект в CR:MP?

    Основа всем основам: Для начала нужны деньги, без денег никуда не деться, даже если ты изучил pawn, структуру мап конструктора, txd workshop и т.д, то все равно нужны будут деньги, но самый главный вопрос "Зачем?!" Сейчас мы это все разберем:1. Это продвижение - та же самая реклама, цена которой колеблется от 1000 (нормальная эффективная реклама) и то она даст человек 20 и не более, для более лучшей рекламы нужно МИНИМУМ 50002. Хостинг - это серверная часть проекта, что же нужно для него? Нормальный хостинг стоит дорого, но, он предотвратит от взломов, ддоса и крашеров. Цена нормального хостинга от 1000 рублей, НО я б лучше посоветовал взять VDS машину за рублей 15 000 и антиддос за рублей 6000 (и все это в месяц), тогда ты можешь быть уверен на 100% что твой сервак не ломанет "Мамкины хакеры"3. Карта и мод - это отдельная тема, если ты хочешь нормальный перспективный проект - карта с 0 (и это я не про карты, по типу Некста и прочего, а именно про маппинг)4. Карта с 0 (маппинг) - по цене примерно 12000, а если еще и интерьеры, ну предположим, их штук 30, то цена за инты будет 6000.5. Мод - это главная составляющая, ты можешь взять как и слитый мод и переписать его досконально (как сделал я), или же купить с 0 (что будет намного лучше, если ты криворукий человек, и программирование в твоем понятие - это гора).6. Разберем мод (слитый) - оптимизация кода и исправление багов и добавление НОВЫХ УНИКАЛЬНЫХ СИСТЕМ будут стоить от 13000 рублей У НоРМАЛЬНОГО СКРИПТЕРАМод (с 0) - если заказывать у нормального скриптера, который посвятил часть жизни в pawn - от 30 000 рублей (и это цена ТОЛЬКО ЗА ОСНОВУ МОДА, то есть, тебе придется его дорабатывать, ну или же этому человеку, но за доп плату, которая выйдет в цену, примерно 15 000 рублей6. Текстдравы и модпак - эти вещи дополняют атмосферу игрыТекстдрав - стоимость текстдрава колеблется от 100 до 500 рублей за штуку (мб и больше), если делать нормальный проект то текстдравов нужно штук 20 минимум, следовательно вычисляем среднее арифметическое средней стоимости и умножаем на 20 (300 * 20 = 6000 рублей МИНИМУМ)Мод-пак - в него входят все игровые модели, которые ты лично добавил от себя, ну смотри:Кар-пак - машины (стоимость машин разная, если делать вообще с 0, то и все деньги можно на это только и спустить), а так примерно 200 рублей за переделку слитого авто (carplate, улучшение габаритов, текстуризация HQ или LQ, поломка авто), цена (ну в среднем, в мод-паке изменено около 50 машин, следовательно 50 * 200 =10 000)7. Про моделирование карты я ничего не буду говорить, т.к это не обязательно, но если все же решишься, то примерно -30 000 рублей спокойноСкин пак - заменяет скины, опять же, можно взять слитые и сэкономить, примерно часть скин-пака рублей в 5000 выйдет, если брать не слитые8. Лаунчер - то же не обязательная вещь, но цена колеблется по разному, если заказывать у школьников, которые сделают тебе еле дышащие приложение, которое при запуске попутно будет жрать ЦП и забивать ячейки памяти в твоем ВЗУ(тем самым забивая память) - то цена такого "анархического говна" будет стоить рублей от 300 до 1500 (язык написания C#, Delphi, Devel Next), а если же заказывать адекватный лаунчер, те же самые которые я пишу, то цена будет от 1000 до 25 000 рублей, но за то он вывезет крупный онлайн и не будет никак нагружать бэкенд и фронтенд "сервера"Итог: Сервер (лайтовый, из всего слитого и с переделками) - выйдет в тысяч 25 000Сервер (все с 0) - от 100 000 рублейМой комментарий и обращение ко всем, кто хочет создать сервер не имея денег и перспектив:Так что, в заключение, хочу сказать, если нет бабок - не лезь и не создавай что-то каличное, ты не Роман Vrnov и Юрий Чемериський, (про себя ничего не сказал, потому что еще не открыл ничего), ты не сможешь все сделать сам качественно, т.к все выше перечисленное - это годы изучений и опыт. Спасибо за вниманиe! Если я хоть как-то помог - можете отблагодарить "+" P.S Тема создана для людей, которые не знают как создать свой проект или не имеют представления об этом. Обращение администрации: Вы можете перенести данный мануал в определенный раздел и желательно его закрепить, чтоб не потерялся
  2. Всем привет! Ребята, первая моя тема на этом форуме. Автор: DoJusTT Название: текстдрав инвентаря inventory.pwn
  3. Здравствуйте, пользователи форума. Решил добавить на форум команды такие как: /me /do /try /todo /n /s Команда: /me CMD:me(playerid, params[]){ if(sscanf(params, "s[118]", params[0])) return SCM(playerid, COLOR_GEY, "Используйте /me [текст]"); new string[144]; format(string, sizeof(string), "%s %s", player_info[playerid][NAME], params[0]); ProxDetector(20.0, playerid, string, 0xDE92FFFF, 0xDE92FFFF, 0xDE92FFFF, 0xDE92FFFF, 0xDE92FFFF); SetPlayerChatBubble(playerid, params[0], 0xDE92FFFF, 20, 7500); return 1;} Команда: /do CMD:do(playerid, params[]){ if(sscanf(params, "s[116]", params[0])) return SCM(playerid, COLOR_GREY, "Используйте /do [текст]"); new string[144]; format(string, sizeof(string), "%s (%s)", params[0], player_info[playerid][NAME]); ProxDetector(20.0, playerid, string, 0xDE92FFFF, 0xDE92FFFF, 0xDE92FFFF, 0xDE92FFFF, 0xDE92FFFF); SetPlayerChatBubble(playerid, params[0], 0xDE92FFFF, 20, 7500); return 1;} Команда: /try CMD:try(playerid, params[]){ if(sscanf(params, "s[99]", params[0])) return SCM(playerid, COLOR_GREY, "Используйте /try [текст]"); new string[144]; format(string, sizeof(string), "%s %s | %s", player_info[playerid][NAME], params[0], (!random(2)) ? ("{FF0000}Неудачно") : "{32CD32}Удачно"); ProxDetector(20.0, playerid, string, 0xDE92FFFF, 0xDE92FFFF, 0xDE92FFFF, 0xDE92FFFF, 0xDE92FFFF); return 1;} Команда: /todo CMD:todo(playerid, params[]){ if(sscanf(params, "s[95]", params[0])) return SCM(playerid, COLOR_GREY, "Используйте /todo [текст*действие]"); if(strlen(params) > 95) return SCM(playerid, C_GREY, "Слишком длинный текст и действие"); new message[96]; strmid(message, params, 0, sizeof(message)); new regex:rg_todocheck = regex_new("^[a-zA-Zа-яА-Я.-_,\\s]{2,48}\\*[a-zA-Zа-яА-Я.-_,\\s]{2,48}$"); if(regex_check(message, rg_todocheck)) { new star = strfind(message, "*"); new action[50]; strmid(action, message, star+1, sizeof(message)); strdel(message, star, sizeof(message)); new string[144]; format(string, sizeof(string), "- '%s' - {DE92FF}сказал%s %s, %s", message, (player_info[playerid][SEX] == 1) ? ("") : ("а"), player_info[playerid][NAME], action); ProxDetector(20.0, playerid, string, COLOR_WHITE, COLOR_WHITE, COLOR_WHITE, COLOR_WHITE, COLOR_WHITE); } else SCM(playerid, COLOR_GREY, "Используйте /todo [текст*действие]"); regex_delete(rg_todocheck); return 1;} Команда: /n CMD:n(playerid, params[]){ if(sscanf(params, "s[107]", params[0])) return SCM(playerid, COLOR_GREY, "Используйте /n [сообщение]"); new string[144]; format(string, sizeof(string), "(( %s[%d]: %s ))", player_info[playerid][NAME], playerid, params[0]); ProxDetector(20.0, playerid, string, 0xCCCC99FF, 0xCCCC99FF, 0xCCCC99FF, 0xCCCC99FF, 0xCCCC99FF); return 1;} Команда: /s CMD:s(playerid, params[]){ if(sscanf(params, "s[105]", params[0])) return SCM(playerid, COLOR_GREY, "Используйте /s [текст]"); new string[144]; format(string, sizeof(string), "%s[%d] крикнул: %s", player_info[playerid][NAME], playerid, params[0]); ProxDetector(30.0, playerid, string, COLOR_WHITE, COLOR_WHITE, COLOR_WHITE, COLOR_WHITE, COLOR_WHITE); if(GetPlayerState(playerid) == PLAYER_STATE_ONFOOT) { ApplyAnimation(playerid, "ON_LOOKERS", "shout_01", 4.1,0,0,0,0,0); } SetPlayerChatBubble(playerid, params[0], COLOR_WHITE, 25, 7500); return 1;} Это в конец мода, если будут ошибки stock ProxDetector(Float:radi, playerid, string[],col1,col2,col3,col4,col5){ if(IsPlayerConnected(playerid)) { new Float:posx;new Float:posy;new Float:posz;new Float:oldposx;new Float:oldposy;new Float:oldposz;new Float:tempposx;new Float:tempposy;new Float:tempposz; GetPlayerPos(playerid, oldposx, oldposy, oldposz); foreach(new i: Player) { if(IsPlayerConnected(i)) { if(GetPlayerVirtualWorld(playerid) == GetPlayerVirtualWorld(i)) { GetPlayerPos(i, posx, posy, posz); tempposx = (oldposx -posx); tempposy = (oldposy -posy); tempposz = (oldposz -posz); if(((tempposx < radi/16) && (tempposx > -radi/16)) && ((tempposy < radi/16) && (tempposy > -radi/16)) && ((tempposz < radi/16) && (tempposz > -radi/16))) SCM(i, col1, string); else if(((tempposx < radi/8) && (tempposx > -radi/8)) && ((tempposy < radi/8) && (tempposy > -radi/8)) && ((tempposz < radi/8) && (tempposz > -radi/8))) SCM(i, col2, string); else if(((tempposx < radi/4) && (tempposx > -radi/4)) && ((tempposy < radi/4) && (tempposy > -radi/4)) && ((tempposz < radi/4) && (tempposz > -radi/4))) SCM(i, col3, string); else if(((tempposx < radi/2) && (tempposx > -radi/2)) && ((tempposy < radi/2) && (tempposy > -radi/2)) && ((tempposz < radi/2) && (tempposz > -radi/2))) SCM(i, col4, string); else if(((tempposx < radi) && (tempposx > -radi)) && ((tempposy < radi) && (tempposy > -radi)) && ((tempposz < radi) && (tempposz > -radi))) SCM(i, col5, string); } } } } return 1;} Автор команд: #meow P.S: use: Pawn.CMD, sscanf. Pawn.Regex
  4. Доброго времени суток, пользователи и посетители форума! Хочу предоставить вам созданную мной когда-то копию логотипа со старого мода Criminal Russia RolePlay (2014-2016). Это - всего лишь копия, настоящая версия логотипа находится только у команды CR-Team. Что хочу отметить, мне очень нравился данный проект с 2014 - 2016. После глобального обновления, я даже как-то пробовал разрабатывать с командой копию старого игрового мода, чтобы проводить свое свободное время там, играя с друзьями, но правда спустя время забросил. Автор идеи данного логотипа: CR-Team. Автор копии логотипа: mikilov. (При копировании темы и его содержимого, указывать автора копии логотипа.) [spoiler=Код] new Text:Logotip[1]; Logotip[0] = TextDrawCreate(42.000286, 425.600097, "WWW.~y~CR~w~-RESTORE.~y~RU"); TextDrawLetterSize(Logotip[0], 0.321999, 1.052443); TextDrawAlignment(Logotip[0], 1); TextDrawColor(Logotip[0], -1); TextDrawSetShadow(Logotip[0], 0); TextDrawSetOutline(Logotip[0], 1); TextDrawBackgroundColor(Logotip[0], 51); TextDrawFont(Logotip[0], 3); TextDrawSetProportional(Logotip[0], 1); Logotip[1] = TextDrawCreate(551.333190, 10.370526, "SERVER ~Y~1"); TextDrawLetterSize(Logotip[1], 0.260666, 1.355257); TextDrawAlignment(Logotip[1], 1); TextDrawColor(Logotip[1], -1); TextDrawSetShadow(Logotip[1], 0); TextDrawSetOutline(Logotip[1], 1); TextDrawBackgroundColor(Logotip[1], 51); TextDrawFont(Logotip[1], 2); TextDrawSetProportional(Logotip[1], 1);
  5. Reyn

    Спидометр

    Всем привет форумчане, от нечего делать сделал спидометр как на Dushevniy RP (Не реклама) Вот как он выглядит: В архиве сразу исходник + .txt файл с готовым спидометром (дабы вам его не экспортировать в TDE) Скачать
  6. Доброе время суток, пользователи портала. Хочу предоставить TextDraw табличку Green Zone специально для Вашего сервера. P.s приходят глупые, но интересные идеи для ТД green zone Автор: #Rips Ссылка на файлы: pastebin ScreenShot/Video: Перейти Редактор: TDEditor 2.3
  7. Система подссчитывает ваше время проведенное в AFK. [spoiler=Скрин:] [spoiler=Ко всем new:]new afktime[MAX_PLAYERS]; [spoiler=в public OnPlayerConnect:]afktime[playerid] = -60; // [-60 меняйте на время, отведенное на авторизацию] [spoiler=в public OnPlayerSpawn:]afktime[playerid] = 0; [spoiler=в public OnPlayerDeath:]afktime[playerid] = -3; [spoiler=в OnGameModeInit:]SetTimer("AFKSystem", 1000, 1); [spoiler=в public OnPlayerUpdate:]if(afktime[playerid] > -3) { if(afktime[playerid] > 0) { new string[128]; format(string,sizeof(string),"Вы простояли в афк: %s",ConvertSeconds(afktime[playerid])); SendClientMessage(playerid, COLOR_ORANGE, string); SetPlayerChatBubble(playerid, "АФК: завершено", COLOR_WHITE, 10.0, 1); } afktime[playerid] = 0; } [spoiler=в конец мода:]forward AFKSystem(); public AFKSystem() { for(new playerid;playerid < MAX_PLAYERS;playerid++) { if(IsPlayerConnected(playerid)) { if(afktime[playerid] == 0) afktime[playerid] -= 1; else if(afktime[playerid] == -1) { afktime[playerid] = 1; new string[128]; format(string, sizeof(string), "АФК: %s", ConvertSeconds(afktime[playerid])); SetPlayerChatBubble(playerid, string, COLOR_WHITE, 10.0, 70000000); } else if(afktime[playerid] > 0) { new string[255]; afktime[playerid] += 1; format(string, sizeof(string), "АФК: %s", ConvertSeconds(afktime[playerid])); SetPlayerChatBubble(playerid, string, COLOR_WHITE, 10.0, 70000000); } } } } stock ConvertSeconds(time) { new string[128]; if(time < 60) format(string, sizeof(string), "%d секунд", time); else if(time == 60) string = "1 минуту"; else if(time > 60 && time < 3600) { new Float: minutes; new seconds; minutes = time / 60; seconds = time % 60; format(string, sizeof(string), "%.0f мин. и %d сек.", minutes, seconds); } else if(time == 3600) string = "1 час"; else if(time > 3600) { new Float: hours; new minutes_int; new Float: minutes; new seconds; hours = time / 3600; minutes_int = time % 3600; minutes = minutes_int / 60; seconds = minutes_int % 60; format(string, sizeof(string), "%.0f:%.0f:%d", hours, minutes, seconds); } return string; }
  8. Здравствуйте, пользователи форума. Решил слить вам простенькую, но интересную команду для своего сервера, сделал ее буквально за 3 минуты для своего мода. Данная команда позволяет администратору писать от имени игрока. CMD:cmd(playerid, params[]) { //ваши проверки if(sscanf(params, "is[128]", params[0], params[1])) return SCM(playerid, COLOR_WHITE, "Введите: /cmd [id игрока] [текст]"); OnPlayerText(params[0], params[1]); return true; } Автора данной команды не знаю, но в данном виде реализовал ее я.
  9. Бешенный Кот

    Антикапс | AntiCAPS

    Всем привет, недавно увидел тему про капс, и решил выложить функцию анти-капса: Вот такая простенькая функция :) Автор: неизвестно В OnPlayerText суем это: new caps; while (text[++caps]) { if('A'<=text[caps]<='Z') text[caps] |= 0x20; if('А'<=text[caps]<='Я') text[caps] |= 0x20; }
  10. 1. Создаем переменную отвечающую за место тела: static tatto[MAX_PLAYERS][5]; 2. Создаем массив с названиями татуировок: static const tattoo_name[5][30] = {"Отсутствует", "Эмблема семья", "Крестного отца", "Роза обвивающая кинжал", "Ганстер закован в кандалы"}; 3. Создаем команды на показ татуировок, и набитие татуировки CMD:stuffs(playerid, params[]) { if(sscanf(params, "i", params[0])) return SendClientMessage(playerid, -1, !"Используйте: /stuffs [playerid]"); new string[149+40]; format(string, sizeof(string), "{FFFFFF}\t\tТатуировки:\n\nНа шее: {BCD270}%s {FFFFFF}| На туловище: {BCD270}%s\n{FFFFFF}На руке: {BCD270}%s{FFFFFF} | На спине: {BCD270}%s", tattoo_name[tatto[playerid][1]], tattoo_name[tatto[playerid][2]], tattoo_name[tatto[playerid][3]], tattoo_name[tatto[playerid][4]]); ShowPlayerDialog(params[0], 0000, DIALOG_STYLE_MSGBOX, /*Переменная Вашего ника*/, string, !"Закрыть", !""); return 1; } CMD:stuff(playerid, params[]) { if(/*Переменная Вашей фракции*/) return SendClientMessage(playerid, -1, !"Ошибка: Данная команда доступна только мафиям!"); if(sscanf(params, "ii", params[0], params[1])) { SendClientMessage(playerid, -1, !"Используйте: /stuff [playerid] [Часть тела [1-4]]"); SendClientMessage(playerid, -1, !"Выберите часть тела:"); SendClientMessage(playerid, -1, !"{BCD270}»{FFFFFF} На шею: Эмблема семья"); SendClientMessage(playerid, -1, !"{BCD270}»{FFFFFF} На туловище: Рисунок - Крестного отца"); SendClientMessage(playerid, -1, !"{BCD270}»{FFFFFF} На руку: Изображение - Роза обвивающая кинжал"); SendClientMessage(playerid, -1, !"{BCD270}»{FFFFFF} На спину: Рисунок - Ганстер закован в кандалы"); return 1; } if(params[1] < 1 || params[1] > 4) return SendClientMessage(playerid, -1, !"Ошибка: Часть тела может быть от 0 до 4!"); tatto[params[0]][params[1]] = params[1]; new form_one[72+MAX_PLAYER_NAME]; format(form_one, sizeof(form_one), "{FFFFFF}\n\nВы успешно набили татуировку члену организации: {BCD270}%s", /*Переменная Вашего ника*/); ShowPlayerDialog(playerid, 0000, DIALOG_STYLE_MSGBOX, !"Информация", form_one, !"Закрыть", !""); GameTextForPlayer(playerid, !"Successful", 5000, 1); new form_two[140+MAX_PLAYER_NAME+30]; format(form_two, sizeof(form_two), "{FFFFFF}\n\n%s набил вам татуировку: {BCD270}%s\n\nТеперь вы надолго связаны со своей организацией\nи вам не легко будет начать новую жизнь", /*Переменная Вашего ника*/, tattoo_name[tatto[params[0]][params[1]]]); ShowPlayerDialog(params[0], 0000, DIALOG_STYLE_MSGBOX, !"Информация", form_two, !"Закрыть", !""); GameTextForPlayer(params[0], !"Successful", 5000, 1); return 1; }
  11. И так всем привет дорогие пользователи портала CR-MP Данного мануала не нашел на портале и решил написать вам его. И так что нужно для запуска: 1) Руки 2) Компьютер 3) Denwer 4) Внимательность 5) Понимание И так начнем: 1) Нам нужно сначала скачать сам Denwer. Скачать его можно по ССЫЛКИ , после там нужно вести Фамилию и Имя, ну и почту, после нажимаете, <<Получить ссылку на скачивание>> 2) Запускаете установку Denwer. Там будет выглядеть окошко таким способом(если вылезит браузер Internet Explorer то просто его закройте,он не нужен) 3) Когда дойдете до пункта Имя директории или буква флеш-накопителя [С:\WebServers]: Если устраивает установка по этому пункту то жмете Enter,если нет то читайте информацию окна выше. Для согласия Y 4) Далее нужно будет указать символ,а именно название диска.Обычно все водят Z Введите букву будущего виртуального диска [Z]: Вроде тут все понятно с установкой Denwera Приступим к установки мода. 5) На рабочем столе увидите 3 ярдыка от Denwera, нам нужен будет Start Denwer Запускаем его. 6) Заходим в браузер и в браузерную строку водим <<localhost>> без ковычек и нажимаем на Enter 7) У вас откроется окно то что все работает Далее листаете неже до списка и находите phpmyadmin и кликаете по ссылки 8) Вы перейдете на ваш phpmyadmin Там жмете на <<База данных>> после где создать базу данных пишем название своей Базы данных,у меня будет crmр и нажимаем создать 9) После как создали, с лева в колонке она должна показаться и нажимаем на нее 10) Далее находим сверху Импорт и нажимаем на него 11) После Выбрать файл, откроется окно и выбираете свою Базу данных которую нужно загрузить,как выбрали,открываете, потом нажимаете ОК. 12) Если у вас будет зеленая надпись <<Импорт успешно завершен,запросов выполненно: N>> значит зделали все отлично. 13) Теперь нам нужно подключить Базу данных к самому моду. Для этого в моде находим следующее #define SQL_HOST "" #define SQL_USER "" #define SQL_DB "" #define SQL_PASS "" И вписываем туда свои данные #define SQL_HOST "localhost" #define SQL_USER "crmp" #define SQL_DB "crmp" #define SQL_PASS "123456" Вот и все, после компилируем мод и все готово. Осталось только запустить и зайти на сервер. Если есть где то ошибки то извиняюсь. Так же не заморачивался по поводу оформления,ведь,тут нужна помощь,а не кросота))) Так же пишите на <<mxINI>> написать мануал или не надо? Автор: Marvellous (Я) Всем спасибо.
  12. Доброе время суток, пользователи cr-mp.ru. Хочу выложить систему под названием 'Загрузка Текстур'. 1. Создаем переменные: new Text: gTexture[18], playerTextureTimer[MAX_PLAYERS], PlayerText: pTexture[MAX_PLAYERS]; 2. Создаем TextDraw будущего загрузчика текстур: В CallBack OnGameModeInit: gTexture[0] = TextDrawCreate(243.5000, 209.1036, !"LD_BEAT:chit"); TextDrawTextSize(gTexture[0], 26.0000, 32.0000); TextDrawAlignment(gTexture[0], 1); TextDrawColor(gTexture[0], 303174399); TextDrawBackgroundColor(gTexture[0], 255); TextDrawFont(gTexture[0], 4); TextDrawSetProportional(gTexture[0], 0); TextDrawSetShadow(gTexture[0], 0); gTexture[1] = TextDrawCreate(366.7075, 209.1036, !"LD_BEAT:chit"); TextDrawTextSize(gTexture[1], 26.0000, 32.0000); TextDrawAlignment(gTexture[1], 1); TextDrawColor(gTexture[1], 303174399); TextDrawBackgroundColor(gTexture[1], 255); TextDrawFont(gTexture[1], 4); TextDrawSetProportional(gTexture[1], 0); TextDrawSetShadow(gTexture[1], 0); gTexture[2] = TextDrawCreate(243.5000, 149.3999, !"LD_BEAT:chit"); TextDrawTextSize(gTexture[2], 26.0000, 32.0000); TextDrawAlignment(gTexture[2], 1); TextDrawColor(gTexture[2], 303174399); TextDrawBackgroundColor(gTexture[2], 255); TextDrawFont(gTexture[2], 4); TextDrawSetProportional(gTexture[2], 0); TextDrawSetShadow(gTexture[2], 0); gTexture[3] = TextDrawCreate(366.7075, 149.3999, !"LD_BEAT:chit"); TextDrawTextSize(gTexture[3], 26.0000, 32.0000); TextDrawAlignment(gTexture[3], 1); TextDrawColor(gTexture[3], 303174399); TextDrawBackgroundColor(gTexture[3], 255); TextDrawFont(gTexture[3], 4); TextDrawSetProportional(gTexture[3], 0); TextDrawSetShadow(gTexture[3], 0); gTexture[4] = TextDrawCreate(254.5000, 154.6556, !"LD_SPAC:white"); TextDrawTextSize(gTexture[4], 126.0000, 80.8901); TextDrawAlignment(gTexture[4], 1); TextDrawColor(gTexture[4], 303174399); TextDrawBackgroundColor(gTexture[4], 255); TextDrawFont(gTexture[4], 4); TextDrawSetProportional(gTexture[4], 0); TextDrawSetShadow(gTexture[4], 0); gTexture[5] = TextDrawCreate(247.6999, 162.4223, !"LD_SPAC:white"); TextDrawTextSize(gTexture[5], 10.0000, 64.0000); TextDrawAlignment(gTexture[5], 1); TextDrawColor(gTexture[5], 303174399); TextDrawBackgroundColor(gTexture[5], 255); TextDrawFont(gTexture[5], 4); TextDrawSetProportional(gTexture[5], 0); TextDrawSetShadow(gTexture[5], 0); gTexture[6] = TextDrawCreate(378.3001, 162.6892, !"LD_SPAC:white"); TextDrawTextSize(gTexture[6], 10.0000, 64.0000); TextDrawAlignment(gTexture[6], 1); TextDrawColor(gTexture[6], 303174399); TextDrawBackgroundColor(gTexture[6], 255); TextDrawFont(gTexture[6], 4); TextDrawSetProportional(gTexture[6], 0); TextDrawSetShadow(gTexture[6], 0); gTexture[7] = TextDrawCreate(333.7075, 170.5258, !"LD_BEAT:chit"); TextDrawTextSize(gTexture[7], 7.0000, 9.0000); TextDrawAlignment(gTexture[7], 1); TextDrawColor(gTexture[7], -6749953); TextDrawBackgroundColor(gTexture[7], 255); TextDrawFont(gTexture[7], 4); TextDrawSetProportional(gTexture[7], 0); TextDrawSetShadow(gTexture[7], 0); gTexture[8] = TextDrawCreate(294.2075, 204.1258, !"LD_BEAT:chit"); TextDrawTextSize(gTexture[8], 7.0000, 9.0000); TextDrawAlignment(gTexture[8], 1); TextDrawColor(gTexture[8], -6749953); TextDrawBackgroundColor(gTexture[8], 255); TextDrawFont(gTexture[8], 4); TextDrawSetProportional(gTexture[8], 0); TextDrawSetShadow(gTexture[8], 0); gTexture[9] = TextDrawCreate(303.2075, 213.4591, !"LD_BEAT:chit"); TextDrawTextSize(gTexture[9], 4.0000, 5.0000); TextDrawAlignment(gTexture[9], 1); TextDrawColor(gTexture[9], -6749953); TextDrawBackgroundColor(gTexture[9], 255); TextDrawFont(gTexture[9], 4); TextDrawSetProportional(gTexture[9], 0); TextDrawSetShadow(gTexture[9], 0); gTexture[10] = TextDrawCreate(326.2075, 167.4146, !"LD_BEAT:chit"); TextDrawTextSize(gTexture[10], 4.0000, 5.0000); TextDrawAlignment(gTexture[10], 1); TextDrawColor(gTexture[10], -6749953); TextDrawBackgroundColor(gTexture[10], 255); TextDrawFont(gTexture[10], 4); TextDrawSetProportional(gTexture[10], 0); TextDrawSetShadow(gTexture[10], 0); gTexture[11] = TextDrawCreate(320.0000, 224.2779, !"€A™PY€KA_ЏEKCЏYP"); TextDrawLetterSize(gTexture[11], 0.1860, 0.9342); TextDrawAlignment(gTexture[11], 2); TextDrawColor(gTexture[11], -1); TextDrawBackgroundColor(gTexture[11], 255); TextDrawFont(gTexture[11], 2); TextDrawSetProportional(gTexture[11], 1); TextDrawSetShadow(gTexture[11], 0); gTexture[12] = TextDrawCreate(261.0000, 209.2889, !"]"); TextDrawLetterSize(gTexture[12], 0.2439, 1.0711); TextDrawAlignment(gTexture[12], 2); TextDrawColor(gTexture[12], 555819519); TextDrawBackgroundColor(gTexture[12], 255); TextDrawFont(gTexture[12], 2); TextDrawSetProportional(gTexture[12], 1); TextDrawSetShadow(gTexture[12], 0); gTexture[13] = TextDrawCreate(373.5000, 166.3556, !"]"); TextDrawLetterSize(gTexture[13], 0.2439, 1.0711); TextDrawAlignment(gTexture[13], 2); TextDrawColor(gTexture[13], 555819519); TextDrawBackgroundColor(gTexture[13], 255); TextDrawFont(gTexture[13], 2); TextDrawSetProportional(gTexture[13], 1); TextDrawSetShadow(gTexture[13], 0); gTexture[14] = TextDrawCreate(358.0000, 196.2223, !"]"); TextDrawLetterSize(gTexture[14], 0.1729, 0.8346); TextDrawAlignment(gTexture[14], 2); TextDrawColor(gTexture[14], 555819519); TextDrawBackgroundColor(gTexture[14], 255); TextDrawFont(gTexture[14], 2); TextDrawSetProportional(gTexture[14], 1); TextDrawSetShadow(gTexture[14], 0); gTexture[15] = TextDrawCreate(283.5000, 169.4667, !"]"); TextDrawLetterSize(gTexture[15], 0.1729, 0.8346); TextDrawAlignment(gTexture[15], 2); TextDrawColor(gTexture[15], 555819519); TextDrawBackgroundColor(gTexture[15], 255); TextDrawFont(gTexture[15], 2); TextDrawSetProportional(gTexture[15], 1); TextDrawSetShadow(gTexture[15], 0); gTexture[16] = TextDrawCreate(334.5000, 214.2667, !"]"); TextDrawLetterSize(gTexture[16], 0.1729, 0.8346); TextDrawAlignment(gTexture[16], 2); TextDrawColor(gTexture[16], 555819519); TextDrawBackgroundColor(gTexture[16], 255); TextDrawFont(gTexture[16], 2); TextDrawSetProportional(gTexture[16], 1); TextDrawSetShadow(gTexture[16], 0); gTexture[17] = TextDrawCreate(260.5000, 176.9333, !"]"); TextDrawLetterSize(gTexture[17], 0.1729, 0.8346); TextDrawAlignment(gTexture[17], 2); TextDrawColor(gTexture[17], 555819519); TextDrawBackgroundColor(gTexture[17], 255); TextDrawFont(gTexture[17], 2); TextDrawSetProportional(gTexture[17], 1); TextDrawSetShadow(gTexture[17], 0); В CallBack OnPlayerConnect: pTexture[playerid] = CreatePlayerTextDraw(playerid, 318.5000, 183.1555, "0%"); PlayerTextDrawLetterSize(playerid, pTexture[playerid], 0.4474, 1.7991); PlayerTextDrawAlignment(playerid, pTexture[playerid], 2); PlayerTextDrawColor(playerid, pTexture[playerid], -1); PlayerTextDrawBackgroundColor(playerid, pTexture[playerid], 255); PlayerTextDrawFont(playerid, pTexture[playerid], 3); PlayerTextDrawSetProportional(playerid, pTexture[playerid], 1); PlayerTextDrawSetShadow(playerid, pTexture[playerid], 0); 3. Создаем CallBack LoadScreenCallBack: forward LoadScreenCallBack(playerid, rate, count); public LoadScreenCallBack(playerid, rate, count) { if(count >= 16) { playerTextureTimer[playerid] = 0; for(new t; t < 18; t++) TextDrawHideForPlayer(playerid, gTexture[t]); PlayerTextDrawHide(playerid, pTexture[playerid]); TogglePlayerControllable(playerid, 1); } else { new string[5], fixcount = count + 1; if(playerTextureTimer[playerid]) playerTextureTimer[playerid] = SetTimerEx("LoadScreenCallBack", rate, 0, "iii", playerid, rate, fixcount); valstr(string, floatround(floatdiv(fixcount*100, 16))); strcat(string, "%"); PlayerTextDrawSetString(playerid, pTexture[playerid], string); } } 4. Создаем stock который будет запускать загрузку текстур: stock ShowPlayerLoadScreen(playerid, time) { if(playerTextureTimer[playerid]) KillTimer(playerTextureTimer[playerid]); PlayerTextDrawSetString(playerid, pTexture[playerid], !"0%"); for(new t; t < 18; t++) TextDrawShowForPlayer(playerid, gTexture[t]); PlayerTextDrawShow(playerid, pTexture[playerid]); TogglePlayerControllable(playerid, 0); playerTextureTimer[playerid] = SetTimerEx(!"LoadScreenCallBack", (1000 * time) / 17, 0, !"iii", playerid, (1000 * time) / 17, 0); } Пример использования данного Загрузчика текстур: ShowPlayerLoadScreen(playerid, 3); - прописываем данный сток с playerid, и временем. Время загрузчика текстур - 3 секунды
  13. #Pawno

    [TD] Спидометр

    Автор работы: #pawno Время работы: 10 минут Функционал я не делал , спидометр не очень большой , занимает мало места , функционал который можно сделать. - Скорость - Пробег - Бензин - Поворотники - Двигатель*(включен/выключен) ?- фары*(включен/выключен) ?- двери*(включен/выключен) [spoiler=Скриншот спидометра] [spoiler=TextDraws] //Global Textdraws: new Text:Textdraw0; new Text:Textdraw1; new Text:Textdraw2; new Text:Textdraw3; new Text:Textdraw4; new Text:Textdraw5; new Text:Textdraw6; new Text:Textdraw7; new Text:Textdraw8; new Text:Textdraw9; new Text:Textdraw10; new Text:Textdraw11; new Text:Textdraw12; new Text:Textdraw13; new Text:Textdraw14; Textdraw0 = TextDrawCreate(619.666687, 362.388916, "usebox"); TextDrawLetterSize(Textdraw0, 0.000000, 2.863576); TextDrawTextSize(Textdraw0, 544.666687, 0.000000); TextDrawAlignment(Textdraw0, 1); TextDrawColor(Textdraw0, 0); TextDrawUseBox(Textdraw0, true); TextDrawBoxColor(Textdraw0, 102); TextDrawSetShadow(Textdraw0, 0); TextDrawSetOutline(Textdraw0, 0); TextDrawFont(Textdraw0, 0); Textdraw1 = TextDrawCreate(545.999816, 359.644409, "LD_SPAC:white"); TextDrawLetterSize(Textdraw1, 0.000000, 0.000000); TextDrawTextSize(Textdraw1, 72.333358, 1.659291); TextDrawAlignment(Textdraw1, 1); TextDrawColor(Textdraw1, -2147483393); TextDrawSetShadow(Textdraw1, 0); TextDrawSetOutline(Textdraw1, 0); TextDrawFont(Textdraw1, 4); Textdraw2 = TextDrawCreate(547.333312, 360.888824, "270 KM/H"); TextDrawLetterSize(Textdraw2, 0.155666, 1.317925); TextDrawAlignment(Textdraw2, 1); TextDrawColor(Textdraw2, -1); TextDrawSetShadow(Textdraw2, 0); TextDrawSetOutline(Textdraw2, 1); TextDrawBackgroundColor(Textdraw2, 51); TextDrawFont(Textdraw2, 2); TextDrawSetProportional(Textdraw2, 1); Textdraw3 = TextDrawCreate(546.666748, 379.555603, "LD_BEAT:left"); TextDrawLetterSize(Textdraw3, 0.000000, 0.000000); TextDrawTextSize(Textdraw3, 8.666688, 9.955547); TextDrawAlignment(Textdraw3, 1); TextDrawColor(Textdraw3, -1); TextDrawSetShadow(Textdraw3, 0); TextDrawSetOutline(Textdraw3, 0); TextDrawFont(Textdraw3, 4); Textdraw4 = TextDrawCreate(587.333129, 379.311157, "LD_BEAT:right"); TextDrawLetterSize(Textdraw4, 0.000000, 0.000000); TextDrawTextSize(Textdraw4, 8.666688, 9.955547); TextDrawAlignment(Textdraw4, 1); TextDrawColor(Textdraw4, -1); TextDrawSetShadow(Textdraw4, 0); TextDrawSetOutline(Textdraw4, 0); TextDrawFont(Textdraw4, 4); Textdraw5 = TextDrawCreate(565.666564, 380.140869, "150"); TextDrawLetterSize(Textdraw5, 0.329666, 0.815999); TextDrawAlignment(Textdraw5, 1); TextDrawColor(Textdraw5, -1); TextDrawSetShadow(Textdraw5, 0); TextDrawSetOutline(Textdraw5, 1); TextDrawBackgroundColor(Textdraw5, 51); TextDrawFont(Textdraw5, 1); TextDrawSetProportional(Textdraw5, 1); Textdraw6 = TextDrawCreate(556.333374, 379.311126, "hud:radar_light"); TextDrawLetterSize(Textdraw6, 0.000000, 0.000000); TextDrawTextSize(Textdraw6, 8.666688, 9.955547); TextDrawAlignment(Textdraw6, 1); TextDrawColor(Textdraw6, -5963521); TextDrawSetShadow(Textdraw6, 0); TextDrawSetOutline(Textdraw6, 0); TextDrawFont(Textdraw6, 4); Textdraw7 = TextDrawCreate(546.333374, 373.333312, "LD_SPAC:white"); TextDrawLetterSize(Textdraw7, 0.000000, 0.000000); TextDrawTextSize(Textdraw7, 33.000000, 0.829650); TextDrawAlignment(Textdraw7, 1); TextDrawColor(Textdraw7, -2147483393); TextDrawSetShadow(Textdraw7, 0); TextDrawSetOutline(Textdraw7, 0); TextDrawFont(Textdraw7, 4); Textdraw8 = TextDrawCreate(580.000000, 374.162963, "LD_SPAC:white"); TextDrawLetterSize(Textdraw8, 0.000000, 0.000000); TextDrawTextSize(Textdraw8, -1.000000, -13.274047); TextDrawAlignment(Textdraw8, 1); TextDrawColor(Textdraw8, -2147483393); TextDrawSetShadow(Textdraw8, 0); TextDrawSetOutline(Textdraw8, 0); TextDrawFont(Textdraw8, 4); Textdraw9 = TextDrawCreate(545.999633, 360.474121, "LD_SPAC:white"); TextDrawLetterSize(Textdraw9, 0.000000, 0.000000); TextDrawTextSize(Textdraw9, 1.000081, 29.037029); TextDrawAlignment(Textdraw9, 1); TextDrawColor(Textdraw9, -2147483393); TextDrawSetShadow(Textdraw9, 0); TextDrawSetOutline(Textdraw9, 0); TextDrawFont(Textdraw9, 4); Textdraw10 = TextDrawCreate(545.666809, 389.511108, "LD_SPAC:white"); TextDrawLetterSize(Textdraw10, 0.000000, 0.000000); TextDrawTextSize(Textdraw10, 72.666687, 1.244415); TextDrawAlignment(Textdraw10, 1); TextDrawColor(Textdraw10, -1); TextDrawSetShadow(Textdraw10, 0); TextDrawSetOutline(Textdraw10, 0); TextDrawFont(Textdraw10, 4); Textdraw11 = TextDrawCreate(605.666625, 360.888916, "LD_SPAC:white"); TextDrawLetterSize(Textdraw11, 0.000000, 0.000000); TextDrawTextSize(Textdraw11, 1.000061, 28.622192); TextDrawAlignment(Textdraw11, 1); TextDrawColor(Textdraw11, -1); TextDrawSetShadow(Textdraw11, 0); TextDrawSetOutline(Textdraw11, 0); TextDrawFont(Textdraw11, 4); Textdraw12 = TextDrawCreate(581.333007, 362.133392, "2000.0 KM"); TextDrawLetterSize(Textdraw12, 0.136999, 1.218369); TextDrawAlignment(Textdraw12, 1); TextDrawColor(Textdraw12, -1); TextDrawSetShadow(Textdraw12, 0); TextDrawSetOutline(Textdraw12, 1); TextDrawBackgroundColor(Textdraw12, 51); TextDrawFont(Textdraw12, 1); TextDrawSetProportional(Textdraw12, 1); Textdraw13 = TextDrawCreate(572.333129, 373.088867, "LD_SPAC:white"); TextDrawLetterSize(Textdraw13, 0.000000, 0.000000); TextDrawTextSize(Textdraw13, 33.333335, 0.829650); TextDrawAlignment(Textdraw13, 1); TextDrawColor(Textdraw13, -2147483393); TextDrawSetShadow(Textdraw13, 0); TextDrawSetOutline(Textdraw13, 0); TextDrawFont(Textdraw13, 4); Textdraw14 = TextDrawCreate(618.333374, 359.814788, "LD_SPAC:white"); TextDrawLetterSize(Textdraw14, 0.000000, 0.000000); TextDrawTextSize(Textdraw14, -0.999918, 29.037027); TextDrawAlignment(Textdraw14, 1); TextDrawColor(Textdraw14, -2147483393); TextDrawSetShadow(Textdraw14, 0); TextDrawSetOutline(Textdraw14, 0); TextDrawFont(Textdraw14, 4); //Player Textdraws: new PlayerText:Textdraw0[MAX_PLAYERS]; new PlayerText:Textdraw1[MAX_PLAYERS]; new PlayerText:Textdraw2[MAX_PLAYERS]; Textdraw0[playerid] = CreatePlayerTextDraw(playerid, 608.999755, 362.548187, "E"); PlayerTextDrawLetterSize(playerid, Textdraw0[playerid], 0.329666, 0.815999); PlayerTextDrawAlignment(playerid, Textdraw0[playerid], 1); PlayerTextDrawColor(playerid, Textdraw0[playerid], -1); PlayerTextDrawSetShadow(playerid, Textdraw0[playerid], 0); PlayerTextDrawSetOutline(playerid, Textdraw0[playerid], 1); PlayerTextDrawBackgroundColor(playerid, Textdraw0[playerid], 51); PlayerTextDrawFont(playerid, Textdraw0[playerid], 1); PlayerTextDrawSetProportional(playerid, Textdraw0[playerid], 1); Textdraw1[playerid] = CreatePlayerTextDraw(playerid, 609.000000, 371.014862, "L"); PlayerTextDrawLetterSize(playerid, Textdraw1[playerid], 0.329666, 0.815999); PlayerTextDrawAlignment(playerid, Textdraw1[playerid], 1); PlayerTextDrawColor(playerid, Textdraw1[playerid], -1); PlayerTextDrawSetShadow(playerid, Textdraw1[playerid], 0); PlayerTextDrawSetOutline(playerid, Textdraw1[playerid], 1); PlayerTextDrawBackgroundColor(playerid, Textdraw1[playerid], 51); PlayerTextDrawFont(playerid, Textdraw1[playerid], 1); PlayerTextDrawSetProportional(playerid, Textdraw1[playerid], 1); Textdraw2[playerid] = CreatePlayerTextDraw(playerid, 608.999938, 380.726165, "D"); PlayerTextDrawLetterSize(playerid, Textdraw2[playerid], 0.329666, 0.815999); PlayerTextDrawAlignment(playerid, Textdraw2[playerid], 1); PlayerTextDrawColor(playerid, Textdraw2[playerid], -1); PlayerTextDrawSetShadow(playerid, Textdraw2[playerid], 0); PlayerTextDrawSetOutline(playerid, Textdraw2[playerid], 1); PlayerTextDrawBackgroundColor(playerid, Textdraw2[playerid], 51); PlayerTextDrawFont(playerid, Textdraw2[playerid], 1); PlayerTextDrawSetProportional(playerid, Textdraw2[playerid], 1); Вообщем то и все , спасибо за внимание
  14. Доброго времени суток, посетители форума. У меня появилось свободное время и я решил реализовать спидометр для ваших серверов. Как получилось, решать только вам. Спидометр ( Не получилось загрузить на форум из-за ошибки. ): https://imgur.com/a/F5KTSSi Ссылка на спидометр. ( PWN файл ): https://yadi.sk/d/wPo3YdtCrXZO1A Ссылка для тех, кто хочет изменить спидометр, взяв его под основу. ( ITD файл ): https://yadi.sk/d/bpZvt4jyM5AKAg Автор - Андрей Микилов. ( AndrewMikilov ) При копировании темы на другие порталы, указывать автора работы.
  15. Доброго времени суток, посетители форума. Сегодня, я решил сделать для ваших серверов не обычный логотип с текстдрав зеленой зоны включая. Как получилось, решать только вам. Ссылка на комплект: https://yadi.sk/d/AYz9CY9P3aXBsJ Автор - Андрей Микилов. При копирование темы на другие порталы, указывать автора данных текстдравов.
  16. Многие наверно видели на разных проектах префиксы различные для админов? так вот я вам сегодня расскажу как сделать с сохранением их. Для полноценной работы нужно Mysql r39-6 или выше , а также ZCMD или DC_CMD ко всем define #define SendMes(%0,%1,%2,%3) format(format_stra, 144, %2,%3), SendClientMessage(%0, %1, format_stra) #define GetName(%0) PI[%0][pName] Далее ищем где у вас переменные аккаунта например, у меня это pInfo. Добавляем pAdmprefix[32] далее мы в OnPlayerConnect добавляем значение , чтоб не кому не давался префикс. PlayerInfo[playerid][pAdmprefix] = EOS; Для того чтоб наш префикс сохранялся , создаем в бд следующую строку. ALTER TABLE accounts ADD Admprefix varchar(32); После того как создали , новое значение в базе данных с аккаунтом, нам надо сделать загрузку префикса. Для этого в OnPlayerLogin добавляем следующий код. cache_get_field_content(0, "Admprefix", PlayerInfo[playerid][pAdmprefix], dbHandle, 32); // Загрузка префкиса админа На этом мы закончили основную часть системы , далее нам нужна команда для создание префиксов и добавить в чат админов префикс отображение. CMD:setprefix(playerid,params[]) { if(PlayerInfo[playerid][pAdmin] > 1) return 1; if(sscanf(params,"ds[32]", params[0],params[1])) return SendClientMessage(playerid, -1, "/setprefix [Ид игрока] [Префикс]"); if(PlayerInfo[playerid][pAdmin] < 1) return SendClientMessage(playerid,-1,"игрок не администратор"); if(IsPlayerConnected(params[0])) // Проверка на то,что игрок приконнектился { strmid(PlayerInfo[params[0]][pAdmprefix] ,params[1], 0, 32, 32); // SendMes(params[0],0xEEE9E9FF,"Вы установили админу %s префикс: %s",GetName(playerid),PlayerInfo[params[0]][pAdmprefix]); } return 1; } Ну и последние это команда для отображение адм с префиксом. CMD:admins(playerid, params[]) { if(PlayerInfo[playerid][pAdmin] < 1) return 1; SendClientMessage(playerid,-1,"Администраторы онлайн:"); foreach(Player, i) { if(PlayerInfo[i][pAdmin]) { new temp[144]; format(temp,sizeof(temp),"%s[%d][%d lvl] [%s]\n",GetName(playerid),i,PlayerInfo[i][pAdmin],PlayerInfo[i][pAdmprefix]); SendClientMessage(playerid, -1, temp); } else { SendClientMessage(playerid, -1, "- В сети нет администраторов"); } } return 1; } Ну и пример использованья в другом месте этого префикса new temp[144]; format(temp,sizeof(temp),"%s",PlayerInfo[i][pAdmprefix]);// PlayerInfo[i][pAdmprefix] будет выводить префикс админа SendClientMessage(playerid, -1, temp); На этом все. Автор: #pawno Будут ошибки пишите помогу.
  17. Здравствуйте уважаемые пользователи портала. Сегодня я бы хотел предоставить копию версии спутника, которая похожая с проекта ReinForce RP. 1. Ко всем переменным: new Text:gSatellite[9], // Загрузка спутника Text:gSatelliteSett[20], // Управление PlayerText:pSatellite[MAX_PLAYERS][5], // Данные загрузки спутника PlayerText:pSatelliteSett[MAX_PLAYERS][5]; // Управление камерой в спутнике new Float:pCoords[MAX_PLAYERS][3]; // Координаты игрока new cSatelliteCount[MAX_PLAYERS char], // Состояние загрузки спутника cSatelliteStatusLoad[MAX_PLAYERS], // Таймер загрузки спутника cSatelliteStatus[MAX_PLAYERS char]; // Статус состояния подключения к спутнику 2. В коллбэк OnPlayerConnect: KillTimer(cSatelliteStatusLoad[playerid]); cSatelliteStatus{playerid} = 0; cSatelliteCount{playerid} = 0; pCoords[playerid][0] = 0.0; pCoords[playerid][1] = 0.0; pCoords[playerid][2] = 0.0; 3. В коллбэк OnGameModeInit: // Загрузка спутника gSatellite[0] = TextDrawCreate(-3.5000, -15.5555, "LD_SPAC:white"); // пусто TextDrawTextSize(gSatellite[0], 656.0000, 560.0000); TextDrawAlignment(gSatellite[0], 1); TextDrawColor(gSatellite[0], 303174399); TextDrawBackgroundColor(gSatellite[0], 255); TextDrawFont(gSatellite[0], 4); TextDrawSetProportional(gSatellite[0], 0); TextDrawSetShadow(gSatellite[0], 0); gSatellite[1] = TextDrawCreate(316.0000, 170.7110, "€A‚PY€KA"); // Загрузка TextDrawLetterSize(gSatellite[1], 0.6480, 2.9439); TextDrawAlignment(gSatellite[1], 2); TextDrawColor(gSatellite[1], -1); TextDrawBackgroundColor(gSatellite[1], 255); TextDrawFont(gSatellite[1], 2); TextDrawSetProportional(gSatellite[1], 1); TextDrawSetShadow(gSatellite[1], 0); gSatellite[2] = TextDrawCreate(230.6000, 221.1452, "LOG:"); // Информация о загрузке TextDrawLetterSize(gSatellite[2], 0.3834, 2.0417); TextDrawAlignment(gSatellite[2], 2); TextDrawColor(gSatellite[2], -1); TextDrawBackgroundColor(gSatellite[2], 255); TextDrawFont(gSatellite[2], 2); TextDrawSetProportional(gSatellite[2], 1); TextDrawSetShadow(gSatellite[2], 0); gSatellite[3] = TextDrawCreate(315.1000, 303.0075, "ЊO„A‡Y†CЏA,_ѓO„ѓ…ЏEC’_€A‚PY€K…"); // Пожалуйста, дождитесь полной загрузки TextDrawLetterSize(gSatellite[3], 0.2089, 1.1022); TextDrawAlignment(gSatellite[3], 2); TextDrawColor(gSatellite[3], -1); TextDrawBackgroundColor(gSatellite[3], 255); TextDrawFont(gSatellite[3], 2); TextDrawSetProportional(gSatellite[3], 1); TextDrawSetShadow(gSatellite[3], 0); gSatellite[5] = TextDrawCreate(250.0000, 201.0444, "LD_SPAC:white"); // пусто TextDrawTextSize(gSatellite[5], 3.0000, 35.0000); TextDrawAlignment(gSatellite[5], 1); TextDrawColor(gSatellite[5], 303174399); TextDrawBackgroundColor(gSatellite[5], 255); TextDrawFont(gSatellite[5], 4); TextDrawSetProportional(gSatellite[5], 0); TextDrawSetShadow(gSatellite[5], 0); gSatellite[6] = TextDrawCreate(293.0000, 199.7999, "LD_SPAC:white"); // пусто TextDrawTextSize(gSatellite[6], 3.0000, 35.0000); TextDrawAlignment(gSatellite[6], 1); TextDrawColor(gSatellite[6], 303174399); TextDrawBackgroundColor(gSatellite[6], 255); TextDrawFont(gSatellite[6], 4); TextDrawSetProportional(gSatellite[6], 0); TextDrawSetShadow(gSatellite[6], 0); gSatellite[7] = TextDrawCreate(333.0000, 202.9110, "LD_SPAC:white"); // пусто TextDrawTextSize(gSatellite[7], 3.0000, 35.0000); TextDrawAlignment(gSatellite[7], 1); TextDrawColor(gSatellite[7], 303174399); TextDrawBackgroundColor(gSatellite[7], 255); TextDrawFont(gSatellite[7], 4); TextDrawSetProportional(gSatellite[7], 0); TextDrawSetShadow(gSatellite[7], 0); gSatellite[8] = TextDrawCreate(373.5000, 202.9110, "LD_SPAC:white"); // пусто TextDrawTextSize(gSatellite[8], 3.0000, 35.0000); TextDrawAlignment(gSatellite[8], 1); TextDrawColor(gSatellite[8], 303174399); TextDrawBackgroundColor(gSatellite[8], 255); TextDrawFont(gSatellite[8], 4); TextDrawSetProportional(gSatellite[8], 0); TextDrawSetShadow(gSatellite[8], 0); gSatellite[4] = TextDrawCreate(213.0000, 204.1336, "LD_SPAC:white"); // пусто TextDrawTextSize(gSatellite[4], 202.0000, 10.0000); TextDrawAlignment(gSatellite[4], 1); TextDrawColor(gSatellite[4], 404232447); TextDrawBackgroundColor(gSatellite[4], 255); TextDrawFont(gSatellite[4], 4); TextDrawSetProportional(gSatellite[4], 0); TextDrawSetShadow(gSatellite[4], 0); // Управление gSatelliteSett[0] = TextDrawCreate(475.8348, 154.4165, "LD_SPAC:white"); // пусто TextDrawTextSize(gSatelliteSett[0], 161.0000, 139.0000); TextDrawAlignment(gSatelliteSett[0], 1); TextDrawColor(gSatelliteSett[0], 606348543); TextDrawBackgroundColor(gSatelliteSett[0], 255); TextDrawFont(gSatelliteSett[0], 4); TextDrawSetProportional(gSatelliteSett[0], 0); TextDrawSetShadow(gSatelliteSett[0], 0); gSatelliteSett[1] = TextDrawCreate(478.1773, 163.1665, "LD_SPAC:white"); // пусто TextDrawTextSize(gSatelliteSett[1], 156.6701, 127.6499); TextDrawAlignment(gSatelliteSett[1], 1); TextDrawColor(gSatelliteSett[1], 303174399); TextDrawBackgroundColor(gSatelliteSett[1], 255); TextDrawFont(gSatelliteSett[1], 4); TextDrawSetProportional(gSatelliteSett[1], 0); TextDrawSetShadow(gSatelliteSett[1], 0); gSatelliteSett[2] = TextDrawCreate(478.1773, 168.4165, "LD_SPAC:white"); // пусто TextDrawTextSize(gSatelliteSett[2], 65.0000, 14.0000); TextDrawAlignment(gSatelliteSett[2], 1); TextDrawColor(gSatelliteSett[2], 606348543); TextDrawBackgroundColor(gSatelliteSett[2], 255); TextDrawFont(gSatelliteSett[2], 4); TextDrawSetProportional(gSatelliteSett[2], 0); TextDrawSetShadow(gSatelliteSett[2], 0); gSatelliteSett[3] = TextDrawCreate(569.7653, 168.4165, "LD_SPAC:white"); // пусто TextDrawTextSize(gSatelliteSett[3], 65.0000, 14.0000); TextDrawAlignment(gSatelliteSett[3], 1); TextDrawColor(gSatelliteSett[3], 606348543); TextDrawBackgroundColor(gSatelliteSett[3], 255); TextDrawFont(gSatelliteSett[3], 4); TextDrawSetProportional(gSatelliteSett[3], 0); TextDrawSetShadow(gSatelliteSett[3], 0); gSatelliteSett[4] = TextDrawCreate(478.1773, 169.9665, "LD_SPAC:white"); // пусто TextDrawTextSize(gSatelliteSett[4], 64.0000, 11.0000); TextDrawAlignment(gSatelliteSett[4], 1); TextDrawColor(gSatelliteSett[4], 303174399); TextDrawBackgroundColor(gSatelliteSett[4], 255); TextDrawFont(gSatelliteSett[4], 4); TextDrawSetProportional(gSatelliteSett[4], 0); TextDrawSetShadow(gSatelliteSett[4], 0); gSatelliteSett[5] = TextDrawCreate(570.6759, 170.1331, "LD_SPAC:white"); // пусто TextDrawTextSize(gSatelliteSett[5], 64.0000, 11.0000); TextDrawAlignment(gSatelliteSett[5], 1); TextDrawColor(gSatelliteSett[5], 303174399); TextDrawBackgroundColor(gSatelliteSett[5], 255); TextDrawFont(gSatelliteSett[5], 4); TextDrawSetProportional(gSatelliteSett[5], 0); TextDrawSetShadow(gSatelliteSett[5], 0); gSatelliteSett[6] = TextDrawCreate(556.0200, 154.7500, "YЊPA‹‡EH…E"); // Управление TextDrawLetterSize(gSatelliteSett[6], 0.1605, 0.8357); TextDrawAlignment(gSatelliteSett[6], 2); TextDrawColor(gSatelliteSett[6], -1); TextDrawBackgroundColor(gSatelliteSett[6], 255); TextDrawFont(gSatelliteSett[6], 2); TextDrawSetProportional(gSatelliteSett[6], 1); TextDrawSetShadow(gSatelliteSett[6], 0); gSatelliteSett[7] = TextDrawCreate(494.5466, 171.1667, "ЊEPEMEЉEH…E"); // Перемещение TextDrawLetterSize(gSatelliteSett[7], 0.1605, 0.8357); TextDrawAlignment(gSatelliteSett[7], 1); TextDrawColor(gSatelliteSett[7], -1); TextDrawBackgroundColor(gSatelliteSett[7], 255); TextDrawFont(gSatelliteSett[7], 2); TextDrawSetProportional(gSatelliteSett[7], 1); TextDrawSetShadow(gSatelliteSett[7], 0); gSatelliteSett[8] = TextDrawCreate(573.4326, 171.1667, "ѓE†CЏ‹…•"); // Действие TextDrawLetterSize(gSatelliteSett[8], 0.1605, 0.8357); TextDrawAlignment(gSatelliteSett[8], 1); TextDrawColor(gSatelliteSett[8], -1); TextDrawBackgroundColor(gSatelliteSett[8], 255); TextDrawFont(gSatelliteSett[8], 2); TextDrawSetProportional(gSatelliteSett[8], 1); TextDrawSetShadow(gSatelliteSett[8], 0); gSatelliteSett[9] = TextDrawCreate(478.1087, 247.7998, "LD_SPAC:white"); // пусто TextDrawTextSize(gSatelliteSett[9], 104.0000, 26.0000); TextDrawAlignment(gSatelliteSett[9], 1); TextDrawColor(gSatelliteSett[9], 606348543); TextDrawBackgroundColor(gSatelliteSett[9], 255); TextDrawFont(gSatelliteSett[9], 4); TextDrawSetProportional(gSatelliteSett[9], 0); TextDrawSetShadow(gSatelliteSett[9], 0); gSatelliteSett[10] = TextDrawCreate(478.1773, 249.9333, "LD_SPAC:white"); // пусто TextDrawTextSize(gSatelliteSett[10], 102.5399, 22.0000); TextDrawAlignment(gSatelliteSett[10], 1); TextDrawColor(gSatelliteSett[10], 303174399); TextDrawBackgroundColor(gSatelliteSett[10], 255); TextDrawFont(gSatelliteSett[10], 4); TextDrawSetProportional(gSatelliteSett[10], 0); TextDrawSetShadow(gSatelliteSett[10], 0); gSatelliteSett[11] = TextDrawCreate(537.9790, 256.5333, "CЏAЏYC:_‹‘ЊO‡HEH…E..."); // Выполнение TextDrawLetterSize(gSatelliteSett[11], 0.1605, 0.8357); TextDrawAlignment(gSatelliteSett[11], 2); TextDrawColor(gSatelliteSett[11], -1); TextDrawBackgroundColor(gSatelliteSett[11], 255); TextDrawFont(gSatelliteSett[11], 2); TextDrawSetProportional(gSatelliteSett[11], 1); TextDrawSetShadow(gSatelliteSett[11], 0); gSatelliteSett[12] = TextDrawCreate(478.6087, 248.5997, "LD_BEAT:chit"); // пусто TextDrawTextSize(gSatelliteSett[12], 19.0000, 25.0000); TextDrawAlignment(gSatelliteSett[12], 1); TextDrawColor(gSatelliteSett[12], -1523963137); TextDrawBackgroundColor(gSatelliteSett[12], 255); TextDrawFont(gSatelliteSett[12], 4); TextDrawSetProportional(gSatelliteSett[12], 0); TextDrawSetShadow(gSatelliteSett[12], 0); gSatelliteSett[13] = TextDrawCreate(480.5090, 251.0000, "LD_BEAT:chit"); // пусто TextDrawTextSize(gSatelliteSett[13], 15.0000, 20.0000); TextDrawAlignment(gSatelliteSett[13], 1); TextDrawColor(gSatelliteSett[13], -2147483393); TextDrawBackgroundColor(gSatelliteSett[13], 255); TextDrawFont(gSatelliteSett[13], 4); TextDrawSetProportional(gSatelliteSett[13], 0); TextDrawSetShadow(gSatelliteSett[13], 0); gSatelliteSett[14] = TextDrawCreate(569.4077, 185.8332, "LD_SPAC:white"); // пусто TextDrawTextSize(gSatelliteSett[14], 63.0000, 11.0000); TextDrawAlignment(gSatelliteSett[14], 1); TextDrawColor(gSatelliteSett[14], 606348543); TextDrawBackgroundColor(gSatelliteSett[14], 255); TextDrawFont(gSatelliteSett[14], 4); TextDrawSetProportional(gSatelliteSett[14], 0); TextDrawSetShadow(gSatelliteSett[14], 0); gSatelliteSett[15] = TextDrawCreate(569.4077, 199.4340, "LD_SPAC:white"); // пусто TextDrawTextSize(gSatelliteSett[15], 63.0000, 11.0000); TextDrawAlignment(gSatelliteSett[15], 1); TextDrawColor(gSatelliteSett[15], 606348543); TextDrawBackgroundColor(gSatelliteSett[15], 255); TextDrawFont(gSatelliteSett[15], 4); TextDrawSetProportional(gSatelliteSett[15], 0); TextDrawSetShadow(gSatelliteSett[15], 0); gSatelliteSett[16] = TextDrawCreate(630.4928, 199.4340, "LD_SPAC:white"); // пусто TextDrawTextSize(gSatelliteSett[16], 2.0000, 11.0000); TextDrawAlignment(gSatelliteSett[16], 1); TextDrawColor(gSatelliteSett[16], 370546431); TextDrawBackgroundColor(gSatelliteSett[16], 255); TextDrawFont(gSatelliteSett[16], 4); TextDrawSetProportional(gSatelliteSett[16], 0); TextDrawSetShadow(gSatelliteSett[16], 0); gSatelliteSett[17] = TextDrawCreate(630.4928, 185.8332, "LD_SPAC:white"); // пусто TextDrawTextSize(gSatelliteSett[17], 2.0000, 11.0000); TextDrawAlignment(gSatelliteSett[17], 1); TextDrawColor(gSatelliteSett[17], 370546431); TextDrawBackgroundColor(gSatelliteSett[17], 255); TextDrawFont(gSatelliteSett[17], 4); TextDrawSetProportional(gSatelliteSett[17], 0); TextDrawSetShadow(gSatelliteSett[17], 0); gSatelliteSett[18] = TextDrawCreate(575.6831, 187.3000, "OЏP•ѓ_S.W.A.T"); // Перемещение TextDrawLetterSize(gSatelliteSett[18], 0.1605, 0.8357); TextDrawTextSize(gSatelliteSett[18], 622.0000, 6.7500); TextDrawAlignment(gSatelliteSett[18], 1); TextDrawColor(gSatelliteSett[18], -1); TextDrawUseBox(gSatelliteSett[18], 1); TextDrawBoxColor(gSatelliteSett[18], -256); TextDrawBackgroundColor(gSatelliteSett[18], 255); TextDrawFont(gSatelliteSett[18], 2); TextDrawSetProportional(gSatelliteSett[18], 1); TextDrawSetShadow(gSatelliteSett[18], 0); TextDrawSetSelectable(gSatelliteSett[18], true); gSatelliteSett[19] = TextDrawCreate(575.6831, 200.2007, "OЏK‡”Ќ…Џ’C•"); // Перемещение TextDrawLetterSize(gSatelliteSett[19], 0.1605, 0.8357); TextDrawTextSize(gSatelliteSett[19], 622.0000, 6.7500); TextDrawAlignment(gSatelliteSett[19], 1); TextDrawColor(gSatelliteSett[19], -1); TextDrawUseBox(gSatelliteSett[19], 1); TextDrawBoxColor(gSatelliteSett[19], -256); TextDrawBackgroundColor(gSatelliteSett[19], 255); TextDrawFont(gSatelliteSett[19], 2); TextDrawSetProportional(gSatelliteSett[19], 1); TextDrawSetShadow(gSatelliteSett[19], 0); TextDrawSetSelectable(gSatelliteSett[19], true); 4. В коллбэк OnPlayerClickTextDraw: if(clickedid == gSatelliteSett[19]) { CancelSelectTextDraw(playerid); cSatelliteStatus{playerid} = 0; SetCameraBehindPlayer(playerid); TogglePlayerControllable(playerid, 1); for(new gSLSett; gSLSett < 20; gSLSett++) TextDrawHideForPlayer(playerid, gSatelliteSett[gSLSett]); for(new pSLSETTS; pSLSETTS < 5; pSLSETTS++) PlayerTextDrawHide(playerid, pSatelliteSett[playerid][pSLSETTS]); SetPlayerPos(playerid, pCoords[playerid][0], pCoords[playerid][1], pCoords[playerid][2]); } if(clickedid == gSatelliteSett[18]) { // Ваш код для вызова S.W.A.T } if(_:clickedid == INVALID_TEXT_DRAW) { if(cSatelliteStatus{playerid} == 2) return SelectTextDraw(playerid, 0xFFFFFFFF); } 5. В коллбэк OnPlayerClickPlayerTextDraw: new Float: camera_satellite_x, Float: camera_satellite_y, Float: camera_satellite_z; if(playertextid == pSatelliteSett[playerid][1]) // Назад { GetPlayerCameraPos(playerid, camera_satellite_x, camera_satellite_y, camera_satellite_z); SetPlayerCameraPos(playerid, camera_satellite_x - 25, camera_satellite_y, camera_satellite_z); SetPlayerCameraLookAt(playerid, pCoords[playerid][0], pCoords[playerid][1], pCoords[playerid][2], CAMERA_MOVE); static const form_satellite[] = "KOOPѓ…HAЏ‘:_x:_%.4f_Y:_%.4f"; new string[sizeof(form_satellite)+(-2+15)+(-2+15)]; format(string, sizeof(string), form_satellite, pCoords[playerid][0], pCoords[playerid][1]); PlayerTextDrawSetString(playerid, pSatelliteSett[playerid][0], string); } if(playertextid == pSatelliteSett[playerid][2]) // Вперед { GetPlayerCameraPos(playerid, camera_satellite_x, camera_satellite_y, camera_satellite_z); SetPlayerCameraPos(playerid, camera_satellite_x + 25, camera_satellite_y, camera_satellite_z); SetPlayerCameraLookAt(playerid, pCoords[playerid][0], pCoords[playerid][1], pCoords[playerid][2], CAMERA_MOVE); static const form_satellite[] = "KOOPѓ…HAЏ‘:_x:_%.4f_Y:_%.4f"; new string[sizeof(form_satellite)+(-2+15)+(-2+15)]; format(string, sizeof(string), form_satellite, pCoords[playerid][0], pCoords[playerid][1]); PlayerTextDrawSetString(playerid, pSatelliteSett[playerid][0], string); } if(playertextid == pSatelliteSett[playerid][3]) // В право { GetPlayerCameraPos(playerid, camera_satellite_x, camera_satellite_y, camera_satellite_z); SetPlayerCameraPos(playerid, camera_satellite_x, camera_satellite_y + 25, camera_satellite_z); SetPlayerCameraLookAt(playerid, pCoords[playerid][0], pCoords[playerid][1], pCoords[playerid][2], CAMERA_MOVE); static const form_satellite[] = "KOOPѓ…HAЏ‘:_x:_%.4f_Y:_%.4f"; new string[sizeof(form_satellite)+(-2+15)+(-2+15)]; format(string, sizeof(string), form_satellite, pCoords[playerid][0], pCoords[playerid][1]); PlayerTextDrawSetString(playerid, pSatelliteSett[playerid][0], string); } if(playertextid == pSatelliteSett[playerid][4]) // В лево { GetPlayerCameraPos(playerid, camera_satellite_x, camera_satellite_y, camera_satellite_z); SetPlayerCameraPos(playerid, camera_satellite_x, camera_satellite_y - 25, camera_satellite_z); SetPlayerCameraLookAt(playerid, pCoords[playerid][0], pCoords[playerid][1], pCoords[playerid][2], CAMERA_MOVE); static const form_satellite[] = "KOOPѓ…HAЏ‘:_x:_%.4f_Y:_%.4f"; new string[sizeof(form_satellite)+(-2+15)+(-2+15)]; format(string, sizeof(string), form_satellite, pCoords[playerid][0], pCoords[playerid][1]); PlayerTextDrawSetString(playerid, pSatelliteSett[playerid][0], string); } 6. Ко всем коллбэкам: @__LoadSatellite(playerid); @__LoadSatellite(playerid) { if(++ cSatelliteCount{playerid} <= 100) { PlayerTextDrawTextSize(playerid, pSatellite[playerid][4], cSatelliteCount{playerid}*2.0000, 10.0000); PlayerTextDrawShow(playerid, pSatellite[playerid][4]); switch(cSatelliteCount{playerid}) { case 0..19: PlayerTextDrawSetString(playerid, pSatellite[playerid][0], "~g~READY~w~ €AЊYCK_C…CЏEM‘..."); case 20..40: PlayerTextDrawSetString(playerid, pSatellite[playerid][1], "~g~READY~w~ ЊOѓK‡”ЌEH…E_K_CЊYЏH…KAM"); case 60..80: PlayerTextDrawSetString(playerid, pSatellite[playerid][2], "~g~READY~w~ ЊPO‹EPKA_COEѓ…HEH…•"); case 81..100: PlayerTextDrawSetString(playerid, pSatellite[playerid][3], "~g~READY~w~ €A‚PY€KA_…HЏEPЃE†CA"); } } else { KillTimer(cSatelliteStatusLoad[playerid]); cSatelliteStatus{playerid} = 0; cSatelliteCount{playerid} = 0; for(new gSL; gSL < 9; gSL++) TextDrawHideForPlayer(playerid, gSatellite[gSL]); for(new pSL; pSL < 5; pSL++) PlayerTextDrawDestroy(playerid, pSatellite[playerid][pSL]); static const form_satellite[] = "KOOPѓ…HAЏ‘:_x:_%.4f_Y:_%.4f"; new string[sizeof(form_satellite)+(-2+15)+(-2+15)]; format(string, sizeof(string), form_satellite, pCoords[playerid][0], pCoords[playerid][1]); PlayerTextDrawSetString(playerid, pSatelliteSett[playerid][0], string); pSatelliteSett[playerid][0] = CreatePlayerTextDraw(playerid, 481.1567, 278.6665, "_"); // Координаты PlayerTextDrawLetterSize(playerid, pSatelliteSett[playerid][0], 0.1370, 0.9115); PlayerTextDrawAlignment(playerid, pSatelliteSett[playerid][0], 1); PlayerTextDrawColor(playerid, pSatelliteSett[playerid][0], -2139062017); PlayerTextDrawBackgroundColor(playerid, pSatelliteSett[playerid][0], 255); PlayerTextDrawFont(playerid, pSatelliteSett[playerid][0], 2); PlayerTextDrawSetProportional(playerid, pSatelliteSett[playerid][0], 1); PlayerTextDrawSetShadow(playerid, pSatelliteSett[playerid][0], 0); pSatelliteSett[playerid][1] = CreatePlayerTextDraw(playerid, 500.4662, 222.2349, "LD_BEAT:down"); // Кнопка назад PlayerTextDrawTextSize(playerid, pSatelliteSett[playerid][1], 16.0000, 18.0000); PlayerTextDrawAlignment(playerid, pSatelliteSett[playerid][1], 1); PlayerTextDrawColor(playerid, pSatelliteSett[playerid][1], -1); PlayerTextDrawBackgroundColor(playerid, pSatelliteSett[playerid][1], 255); PlayerTextDrawFont(playerid, pSatelliteSett[playerid][1], 4); PlayerTextDrawSetProportional(playerid, pSatelliteSett[playerid][1], 0); PlayerTextDrawSetShadow(playerid, pSatelliteSett[playerid][1], 0); PlayerTextDrawSetSelectable(playerid, pSatelliteSett[playerid][1], true); pSatelliteSett[playerid][2] = CreatePlayerTextDraw(playerid, 500.1976, 188.2146, "LD_BEAT:up"); // Кнопка вперед PlayerTextDrawTextSize(playerid, pSatelliteSett[playerid][2], 16.0000, 18.0000); PlayerTextDrawAlignment(playerid, pSatelliteSett[playerid][2], 1); PlayerTextDrawColor(playerid, pSatelliteSett[playerid][2], -1); PlayerTextDrawBackgroundColor(playerid, pSatelliteSett[playerid][2], 255); PlayerTextDrawFont(playerid, pSatelliteSett[playerid][2], 4); PlayerTextDrawSetProportional(playerid, pSatelliteSett[playerid][2], 0); PlayerTextDrawSetShadow(playerid, pSatelliteSett[playerid][2], 0); PlayerTextDrawSetSelectable(playerid, pSatelliteSett[playerid][2], true); pSatelliteSett[playerid][3] = CreatePlayerTextDraw(playerid, 514.9976, 204.3156, "LD_BEAT:right"); // Кнопка в право PlayerTextDrawTextSize(playerid, pSatelliteSett[playerid][3], 16.0000, 18.0000); PlayerTextDrawAlignment(playerid, pSatelliteSett[playerid][3], 1); PlayerTextDrawColor(playerid, pSatelliteSett[playerid][3], -1); PlayerTextDrawBackgroundColor(playerid, pSatelliteSett[playerid][3], 255); PlayerTextDrawFont(playerid, pSatelliteSett[playerid][3], 4); PlayerTextDrawSetProportional(playerid, pSatelliteSett[playerid][3], 0); PlayerTextDrawSetShadow(playerid, pSatelliteSett[playerid][3], 0); PlayerTextDrawSetSelectable(playerid, pSatelliteSett[playerid][3], true); pSatelliteSett[playerid][4] = CreatePlayerTextDraw(playerid, 484.7967, 204.3156, "LD_BEAT:left"); // Кнопка в лево PlayerTextDrawTextSize(playerid, pSatelliteSett[playerid][4], 16.0000, 18.0000); PlayerTextDrawAlignment(playerid, pSatelliteSett[playerid][4], 1); PlayerTextDrawColor(playerid, pSatelliteSett[playerid][4], -1); PlayerTextDrawBackgroundColor(playerid, pSatelliteSett[playerid][4], 255); PlayerTextDrawFont(playerid, pSatelliteSett[playerid][4], 4); PlayerTextDrawSetProportional(playerid, pSatelliteSett[playerid][4], 0); PlayerTextDrawSetShadow(playerid, pSatelliteSett[playerid][4], 0); PlayerTextDrawSetSelectable(playerid, pSatelliteSett[playerid][4], true); for(new gSLSett; gSLSett < 20; gSLSett++) TextDrawShowForPlayer(playerid, gSatelliteSett[gSLSett]); for(new pSLSETTS; pSLSETTS < 5; pSLSETTS++) PlayerTextDrawShow(playerid, pSatelliteSett[playerid][pSLSETTS]); cSatelliteStatus{playerid} = 2; SelectTextDraw(playerid, 0xFFFFFFFF); } return true; } 7. Ко всем командам: CMD:connect(playerid) { if(cSatelliteStatus{playerid} == 1 || cSatelliteStatus{playerid} == 2) return SendClientMessage(playerid, 0xAFAFAFFF, !"Вы уже подключены к спутнику!"); new Float: x, Float: y, Float: z; GetPlayerPos(playerid, x, y, z); // Записываем координаты игрока для того, что бы после отключения со спутника заспанвить на место pCoords[playerid][0] = x; pCoords[playerid][1] = y; pCoords[playerid][2] = z; SetPlayerPos(playerid, pCoords[playerid][0], pCoords[playerid][1], pCoords[playerid][2]-80); SetPlayerCameraPos(playerid, pCoords[playerid][0], pCoords[playerid][1], pCoords[playerid][2] + 40); SetPlayerCameraLookAt(playerid, pCoords[playerid][0], pCoords[playerid][1], pCoords[playerid][2] - 90); TogglePlayerControllable(playerid , 0); // Замораживаем игрока // Загрузка спутника | Информация для игрока pSatellite[playerid][0] = CreatePlayerTextDraw(playerid, 213.5999, 241.1003, "~y~CHECK.. ~w~€AЊYCK_C…CЏEM‘..."); // Запуск системы PlayerTextDrawLetterSize(playerid, pSatellite[playerid][0], 0.2074, 1.0399); PlayerTextDrawAlignment(playerid, pSatellite[playerid][0], 1); PlayerTextDrawColor(playerid, pSatellite[playerid][0], -1); PlayerTextDrawBackgroundColor(playerid, pSatellite[playerid][0], 255); PlayerTextDrawFont(playerid, pSatellite[playerid][0], 2); PlayerTextDrawSetProportional(playerid, pSatellite[playerid][0], 1); PlayerTextDrawSetShadow(playerid, pSatellite[playerid][0], 0); pSatellite[playerid][1] = CreatePlayerTextDraw(playerid, 213.1999, 250.6009, "~y~CHECK..~w~ ЊOѓK‡”ЌEH…E_K_CЊYЏH…KAM"); // Подключение к спутникам PlayerTextDrawLetterSize(playerid, pSatellite[playerid][1], 0.2074, 1.0399); PlayerTextDrawAlignment(playerid, pSatellite[playerid][1], 1); PlayerTextDrawColor(playerid, pSatellite[playerid][1], -1); PlayerTextDrawBackgroundColor(playerid, pSatellite[playerid][1], 255); PlayerTextDrawFont(playerid, pSatellite[playerid][1], 2); PlayerTextDrawSetProportional(playerid, pSatellite[playerid][1], 1); PlayerTextDrawSetShadow(playerid, pSatellite[playerid][1], 0); pSatellite[playerid][2] = CreatePlayerTextDraw(playerid, 213.0999, 259.9014, "~y~CHECK..~w~ ЊPO‹EPKA_COEѓ…HEH…•"); // Проверка соединения PlayerTextDrawLetterSize(playerid, pSatellite[playerid][2], 0.2074, 1.0399); PlayerTextDrawAlignment(playerid, pSatellite[playerid][2], 1); PlayerTextDrawColor(playerid, pSatellite[playerid][2], -1); PlayerTextDrawBackgroundColor(playerid, pSatellite[playerid][2], 255); PlayerTextDrawFont(playerid, pSatellite[playerid][2], 2); PlayerTextDrawSetProportional(playerid, pSatellite[playerid][2], 1); PlayerTextDrawSetShadow(playerid, pSatellite[playerid][2], 0); pSatellite[playerid][3] = CreatePlayerTextDraw(playerid, 213.5999, 269.4020, "~y~CHECK..~w~ €A‚PY€KA_…HЏEPЃE†CA"); // Загрузка интерфейса PlayerTextDrawLetterSize(playerid, pSatellite[playerid][3], 0.2074, 1.0399); PlayerTextDrawAlignment(playerid, pSatellite[playerid][3], 1); PlayerTextDrawColor(playerid, pSatellite[playerid][3], -1); PlayerTextDrawBackgroundColor(playerid, pSatellite[playerid][3], 255); PlayerTextDrawFont(playerid, pSatellite[playerid][3], 2); PlayerTextDrawSetProportional(playerid, pSatellite[playerid][3], 1); PlayerTextDrawSetShadow(playerid, pSatellite[playerid][3], 0); pSatellite[playerid][4] = CreatePlayerTextDraw(playerid, 213.0000, 204.1336, "LD_SPAC:white"); // Прогресс Бар PlayerTextDrawTextSize(playerid, pSatellite[playerid][4], 0.0000, 10.0000); PlayerTextDrawAlignment(playerid, pSatellite[playerid][4], 1); PlayerTextDrawColor(playerid, pSatellite[playerid][4], 606348543); PlayerTextDrawBackgroundColor(playerid, pSatellite[playerid][4], 255); PlayerTextDrawFont(playerid, pSatellite[playerid][4], 4); PlayerTextDrawSetProportional(playerid, pSatellite[playerid][4], 0); PlayerTextDrawSetShadow(playerid, pSatellite[playerid][4], 0); for(new gSL; gSL < 9; gSL++) TextDrawShowForPlayer(playerid, gSatellite[gSL]); for(new pSL; pSL < 4; pSL++) PlayerTextDrawShow(playerid, pSatellite[playerid][pSL]); cSatelliteStatusLoad[playerid] = SetTimerEx("@__LoadSatellite", 500, true, "d", playerid); cSatelliteStatus{playerid} = 1; return 1; } #Rips - Функционал и копия дизайна (99%) Недостатки: 1. Не хватает системы вызова отряд S.W.A.T 2. Обновление координат на управлении спутника 3. Кнопок приближения камеры 4. Восстановление курсора при нажатии ESC 5. Обновления статуса передвижения камеры Исходный код в new.pwn: ЯндексДиск[spoiler=Screenshot]
  18. PriteTV

    [CMD] /tp

    Всем привет ребята, хочу вам предоставить команду /tp(для админов) на DC_CMD Для начала нам нужно сделать enum: enum E_TELEPORT_STRUCT { t_name[30], Float: t_pos_x, Float: t_pos_y, Float: t_pos_z, Float: t_pos_angle }; Под данным enum мы создаем переменную с телепортами: new teleport_list[][E_TELEPORT_STRUCT] = { {"Южный", 2551.4348,-2186.9688,21.9680, 359.8011}, {"Батырево", 1881.6501,2179.5518,15.8354,275.5138}, {"Арзамас", 172.5271,797.0128,12.0010,309.0013}, {"Лыткарино", -2350.6179,252.7225,23.4481,180.0000}, {"Эдово", 1906.1704,-2239.5232,11.1839, 360.0}, {"Автосалон", 2015.1885,1889.4885,15.6600,211.0767}, {"Дальнобойщики", 1771.4597,2263.4075,15.8010,1.0368}, {"Автошкола", 1901.4236,2227.0847,15.7112,269.3018}, {"Больница", 1986.6730,1600.5284,15.7700, 0.0}, {"Автовокзал", 1960.7789,-2608.4734,10.8149, 270.0}, {"Шахта", 2349.9780,2004.4862,15.9900, 360.0}, {"Маршрутчики", 1756.8895,2459.5862,15.4400, 90.0}, {"Ангар для МП", 2741.7957,-2232.7385,17.9451, 90.0}, {"Крыша для МП", 1918.6581,-1899.1187,56.5196, 90.0} }; дальше создаем кмд: CMD:tp(playerid) { if(PI[playerid][pAdmin] < 3) return SendClientMessage(playerid, COLOR_WHITE, "Команда не обнаружена! Используйте {ffcc00}/menu {FFFFFF}для просмотра команд"); ShowPlayerDialogTeleportList(playerid); return 1; } дальше создаем сток: stock ShowPlayerDialogTeleportList(playerid) { new list_text[30 * (sizeof teleport_list)]; new dest[30]; for(new i; i < sizeof teleport_list; i ++) { format(dest, sizeof dest, "%s\n", teleport_list[i][t_name]); strcat(list_text, dest); } return ShowPlayerDialog ( playerid, 1, DIALOG_STYLE_LIST, "{ffcc00}Телепорт", list_text, "Выбрать", "Закрыть" ); } Вот и все всем спасибо за внимание) Автор: Prite TV(Я) Забыл про OnDialogResponse вставляем туда: case 1: { if(response) { if(!(0 <= listitem <= sizeof teleport_list - 1)) return 1; SetPlayerVirtualWorld(playerid, 0); SetPlayerInterior(playerid, 0); SetPlayerPos(playerid, teleport_list[listitem][t_pos_x], teleport_list[listitem][t_pos_y], teleport_list[listitem][t_pos_z]); SetPlayerFacingAngle(playerid, teleport_list[listitem][t_pos_angle]); return 1; } } и к дефайнам: #define COLOR_WHITE (0xFFFFFFAA)
  19. Доброго времени суток, форумчане. Давненько от меня не было хороших сливов на форум. Сегодня, я решил сделать копию нескольких текстдравов у известного проекта в CRMP - Amazing RolePlay. Как получилось, решать только вам. Хочу отметить, если будет много отметок "Спасибо" то попробую сделать и остальные. Ссылка на комплект: https://yadi.sk/d/oqPdRaCq3Yqs7W Официальные текстдравы сделаны командой разработчиков Amazing RolePlay. Автор копии текстдравов - Андрей Микилов. При копирование темы на другие порталы, указывать автора копии данных текстдравов.
  20. Привет, выложил лёгкие команды, наверное есть на форуме, но я выложил свои. Автор : я Может скриптерам которые пишут мод с нуля пригодится, чтобы не тратить время на данные команды [spoiler=Код] CMD:me(playerid, params[]) { if(sscanf(params, "s[118]", params[0])) return SCM(playerid, COLOR_GREY, !"Используйте /me [текст]"); new string[144]; format(string, sizeof(string), "%s %s", PlayerInfo[playerid][pName], params[0]); ProxDetector(20.0, playerid, string, 0xDE92FFFF, 0xDE92FFFF, 0xDE92FFFF, 0xDE92FFFF, 0xDE92FFFF); SetPlayerChatBubble(playerid, params[0], 0xDE92FFFF, 20, 7500); return 1; } CMD:do(playerid, params[]) { if(sscanf(params, "s[116]", params[0])) return SCM(playerid, COLOR_GREY, !"Используйте /do [текст]"); new string[144]; format(string, sizeof(string), "%s (%s)", params[0], PlayerInfo[playerid][pName]); ProxDetector(20.0, playerid, string, 0xDE92FFFF, 0xDE92FFFF, 0xDE92FFFF, 0xDE92FFFF, 0xDE92FFFF); SetPlayerChatBubble(playerid, params[0], 0xDE92FFFF, 20, 7500); return 1; } CMD:ame(playerid, params[]) { if(sscanf(params, "s[144]", params[0])) return SCM(playerid, COLOR_GREY, !"Используйте /ame [текст]"); SetPlayerChatBubble(playerid, params[0], 0xDE92FFFF, 20, 7500); return 1; } CMD:try(playerid, params[]) { if(sscanf(params, "s[99]", params[0])) return SCM(playerid, COLOR_GREY, !"Используйте /try [текст]"); new string[144]; format(string, sizeof(string), "%s %s | %s", PlayerInfo[playerid][pName], params[0], (!random(2)) ? ("{FF0000}Неудачно") : ("{32CD32}Удачно")); ProxDetector(20.0, playerid, string, 0xDE92FFFF, 0xDE92FFFF, 0xDE92FFFF, 0xDE92FFFF, 0xDE92FFFF); return 1; } CMD:todo(playerid, params[]) { if(strlen(params) > 95) return SCM(playerid, COLOR_GREY, !"Слишком длинный текст и действие"); new message[48], action[49]; if(sscanf(params, "p<*>s[47]s[48]", message, action)) return SCM(playerid, COLOR_GREY, !"Используйте /todo [текст*действие]"); if(strlen(message) < 2 || strlen(action) < 2) return SCM(playerid, COLOR_GREY, !"Используйте /todo [текст*действие]"); new string[144]; format(string, sizeof(string), "- '%s' - {DE92FF}сказал%s %s, %s", message, (player_info[playerid][SEX] == 1) ? ("") : ("а"), PlayerInfo[playerid][pName], action); ProxDetector(20.0, playerid, string, COLOR_WHITE, COLOR_WHITE, COLOR_WHITE, COLOR_WHITE, COLOR_WHITE); return 1; } CMD:n(playerid, params[]) { if(sscanf(params, "s[107]", params[0])) return SCM(playerid, COLOR_GREY, !"Используйте /n [сообщение]"); new string[144]; format(string, sizeof(string), "(( %s[%d]: %s ))", PlayerInfo[playerid][pName], playerid, params[0]); ProxDetector(20.0, playerid, string, 0xCCCC99FF, 0xCCCC99FF, 0xCCCC99FF, 0xCCCC99FF, 0xCCCC99FF); return 1; } CMD:s(playerid, params[]) { if(sscanf(params, "s[105]", params[0])) return SCM(playerid, COLOR_GREY, !"Используйте /s [текст]"); new string[144]; format(string, sizeof(string), "%s[%d] крикнул: %s", PlayerInfo[playerid][pName], playerid, params[0]); ProxDetector(30.0, playerid, string, COLOR_WHITE, COLOR_WHITE, COLOR_WHITE, COLOR_WHITE, COLOR_WHITE); if(GetPlayerState(playerid) == PLAYER_STATE_ONFOOT) { ApplyAnimation(playerid, "ON_LOOKERS", "shout_01", 4.1,0,0,0,0,0); } SetPlayerChatBubble(playerid, params[0], COLOR_WHITE, 25, 7500); return 1; }
  21. Более улучшенные и продленные Ж/Д пути по всей карте GTA Criminal Russia Автор: Александр Рыбалкин Скриншоты ЖД путей Скачать архив с объектами и маппинг Obekty_ZhD.rar ZhD.pwn
  22. PriteTV

    [CMD]/givemoney

    Добрый день, форумчане cr-mp.ru Я хочу Вам представить команду /givemoney на DC_CMD + sscanf2: CMD:givemoney(playerid, params[]) { if(PI[playerid][pAdmin] < 8) return SendClientMessage(playerid, 0xFFFFFFFF, !"Команда не обнаружена. Чтобы посмотреть команды используйте:{008000}/menu"); if(sscanf(params, "ii", params[0], params[1])) return SendClientMessage(playerid, 0xFFFF00FF, !"[CMD]: {008000}Используйте {DAA520}/givemoney [ID игрока] [Кол-во денег]"); if(params[0] < 0 || params[0] > 500) return SendClientMessage(playerid, 0x008000FF, !"[Ошибка]: Игрок не в игре."); if(params[1] < 1 || params[1] > 50000000) return SendClientMessage(playerid, 0x008000FF, !"[Ошибка]: Количество денег должно быть от 1 до 50.000.000 рублей"); GivePlayerMoney(params[0], params[1]); return 1; }
  23. PriteTV

    [CMD] /hello

    Добрый день, форумчане cr-mp.ru Я хочу Вам представить команду /skin на DC_CMD + sscanf2: CMD:hello(playerid) { SendClientMessageToAll(COLOR_BLUE, "Всем привет"); return 1; } [ P.S: Извеняюсь за такую легкую командуб это просто моя первая команда) CMD]/skin
  24. PriteTV

    [CMD]/skin

    Добрый день, форумчане cr-mp.ru Я хочу Вам представить команду /skin на DC_CMD + sscanf2: CMD:skin(playerid, params[]) { if(sscanf(params, "i", params[0])) return SendClientMessage(playerid, 0xFFFF00FF, !"[CMD]: {008000}Используйте {DAA520}/skin [ID скина]"); if(params[0] < 1 || params [0] > 299) return SendClientMessage(playerid, 0x008000FF, !"[Ошибка]: ИД скина должен быть от 1 до 299."); SetPlayerSkin(playerid, params[0]); return 1; }
  25. PriteTV

    [CMD]/givegun

    Здравствуйте, уважаемые пользователи cr-mp.ru Предоставляю Вам командe /gun на DC_CMD sscanf2: CMD:gun(playerid, params[]) { if(sscanf(params, "ii", params[0], params[1])) return SendClientMessage(playerid, 0xFFFF00FF, !"[CMD]: {008000}Используйте {DAA520}/gun [ID оружия] [Кол-во пт]"); if(params[0] < 1 || params[0] > 46) return SendClientMessage(playerid, 0x008000FF, !"[Ошибка]: ИД оружия должен быть от 1 до 46."); if(params[1] < 1 || params[1] > 10000) return SendClientMessage(playerid, 0x008000FF, !"[Ошибка]: Количество патрон должно быть от 1 до 10000."); GivePlayerWeapon(playerid, params[0], params[1]); return 1; }
×

Важная информация

Мы разместили cookie-файлы на ваше устройство, чтобы помочь сделать этот сайт лучше. Вы можете изменить свои настройки cookie-файлов, или продолжить без изменения настроек.