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

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

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

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

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

Тип контента


Форумы

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

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

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


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

  • Начало

    Конец


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

  • Начало

    Конец


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

Найдено: 1,434 результата

  1. Здравствуйте, меня мучает баг при заходе на сервере какие то нули и ii, помогите исправить.
  2. Всем привет вообщем. Я решил написать еще один способ защитить сервер паролем (в этом случае не используется /rcon password и т.д. ). Вот сам код: 1. Это в OnPlayerConnect ShowPlayerDialog(playerid,777,DIALOG_STYLE_INPUT,"Введите пароль сервера","Введите пароль для доступа к серверу","ОК","Отмена"); 2. Это в OnDialogResponse if(dialogid == 777){if(response){if(!strlen(inputtext)){SendClientMessage(playerid,-1,"Вы не ввели пароль сервера и будете кикнуты!");Kick(playerid);return 1;}else{new serverpass[15];serverpass = "1111";if(strcmp(inputtext, serverpass) == 0) {SendClientMessage(playerid, -1, "Вы ввели верный пароль сервера!"); }else {SendClientMessage(playerid, -1, "Вы забанены за попытку взлома сервера (подбор пароля)");BanEx(playerid, "Подбор пароля сервера"); }}}else {SendClientMessage(playerid, -1, "Вы нажали кнопку Отмена и будете кикнуты!");Kick(playerid); }} Что изменить под себя: 1. Самое главное: пароль. Он меняется в строке serverpass = "1111"; 2. При необходимости: ID диалога. В данном случае 777 3. При попытке подбора пароля в моем случае банит. Действие можно изменить, изменив (или удалив) строку BanEx(playerid, "Подбор пароля сервера"); 4. Ну и цветовую гамму и текст, это на Ваш выбор :) Такой способ можно использовать для троллинга (к примеру). Пример: Игрок видит сервер с супер модом, который открыт. Заходит, и тут вылазиет окно ввода пароля. Он наберет что нибудь, и если пароль неправильный, его банит. В любом случае - дело ваше! Автор: Max_Mister
  3. Начнем без вступления. Вставляем все в мод: 1. Массивы для хранения информации: new bool:aduty[MAX_PLAYERS];//Проверка, true-админ на дежурстве, false-нетnew playercolor[MAX_PLAYERS];//Массив с цветом игрока до выхода на дежурство 2. Команда. Вставлять в public OnPlayerCommandText if (strcmp("/aduty", cmdtext, true) == 0) {if(aduty[playerid] == true) {aduty[playerid] = false;SendClientMessage(playerid, 0xFFFF00AA, "Вы ушли с дежурства!"); SetPlayerColor(playerid, playercolor[playerid]);} else {if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, 0xFFFF00AA, "Вы не администратор!");//Проверку ставить свою, тут проверка на RCON!!!ShowPlayerDialog(playerid, 9988, DIALOG_STYLE_INPUT, "Введите пароль","Введите пароль для выхода на дежурство","ОК","Отмена");}return true;} 3. Диалог для ввода пароля if(dialogid == 9988){if(response) //Если была нажата 1 кнопка{if(!strlen(inputtext)) //Если в поле не был введен текст при отправке{SendClientMessage(playerid,0xFFFF00AA,"Пароль не был написан!");return 1;}else{new adminpass[64] = "1111";if(strcmp(inputtext, adminpass, false) == 0) {new name[MAX_PLAYER_NAME];GetPlayerName(playerid, name, sizeof(name));new message[55];format(message, sizeof(message), "Администратор %s вышел на дежурство!", name);SendClientMessageToAll(0xFF6347AA, message);playercolor[playerid] = GetPlayerColor(playerid);SetPlayerColor(playerid, 0xFF6347AA);GivePlayerWeapon(playerid, 30, 1000);//ak47aduty[playerid] = true;}else {SendClientMessage(playerid, 0xFFFF00AA, "Пароль не верный!");Kick(playerid);}}}} Ну, вроде все :) Теперь о том, что нужно поменять! Так как я тестил это дело на симпле, менять под свой мод нужно следующее: 1. Проверка на администратора: в данном случае проверка на RCON администратора. Вы ставьте свою 2. Можете поменять выдачу оружия, или вообще ее удалить. 3. Самое главное: пароль. Меняется тут: new adminpass[64] = "1111";. 1111 меняйте на свой! 4. Ну и, если хотите, другие цвета и цветовые модификаторы Чтобы проверить администратора на дежурстве, достаточно приписать проверку: if(aduty[playerid] == false) return SendClientMessage(playerid, -1, "Вы не на дежурстве!"); Автор: Max_Mister
  4. Здравствуйте дорогие пользователи GSG. Вот решил выложить cmd /restart (Рестарт сервера). Может кому понадобится. Ко всем "public" добавляем: public GameModeInitExitFunc(){ new string[128]; format(string, sizeof(string), "Рестарт Сервера."); for(new i = 0; i < MAX_PLAYERS; i++) { if(IsPlayerConnected(i)) { DisablePlayerCheckpoint(i); gPlayerCheckpointStatus[i] = CHECKPOINT_NONE; GameTextForPlayer(i, string, 4000, 5); SetPlayerCameraPos(i,1460.0, -1324.0, 287.2); SetPlayerCameraLookAt(i,1374.5, -1291.1, 239.0); OnPlayerUpdate(i); gPlayerLogged[i] = 0; } } SetTimer("GameModeExitFunc", 4000, 0); return 1;} Сама команда: if(strcmp(cmd, "/restart", true) == 0) { if(IsPlayerConnected(playerid)) { if (PlayerInfo[playerid][pAdmin] >= 8)//Лвл Админа который может делать рестарт { GameModeInitExitFunc(); } else { SendClientMessage(playerid, COLOR_GRAD1, "У вас нет прав для использование данной команды!"); } } return 1; } Вот и всё. Если что то забыл, пишите в тему.
  5. Sanek666

    Ксенон

    Добрый день Уважаемые Пользователи. Выкладываю вам сюда скрипт ксенон , т.к попал он ко мне еще месяцев 5 назад =) Сам скрипт был на испанском языке . Описание я думаю не буду делать все знают что такое ксенон.
  6. Идея - из паблика, координаты приаттаченных объектов - из паблика, реализация в коде - полностью моя. Вкратце - на форуме уже проскальзывал недоФС фонаря. Когда было желание реализовать что-то необычное - начал пилить код. Но идея себя исчерпала, код (по крайней мере, пока) уже не особо нужен - не пропадать же добру. Две основных управляющих команды: - /flon - включает фонарь, если он выключен, и меняет режим дальности освещения, если уже включен. - /floff - выключает фонарь.
  7. Команда: else if(strcmp(cmd, "/uninvite", true) == 0) { new para1; new Leader; new Member; tmp = strtok(cmdtext, idx); if(!strlen(tmp)) return SendClientMessage(playerid, COLOR_WHITE, "{DDA0DD} >> Введите{FFFFFF}: /uninvite [id] [причина]"); para1 = ReturnUser(tmp); Leader = PlayerInfo[playerid][pLeader]; Member = PlayerInfo[para1][pMember]; if(PlayerInfo[playerid][pLeader] >= 1) { if(IsPlayerConnected(para1)) { if(Leader == Member) { if(para1 != INVALID_PLAYER_ID) { 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(result)) return SendClientMessage(playerid, COLOR_WHITE, "{DDA0DD} >> Введите{FFFFFF}: /uninvite [id] [причина]"); if(para1 == playerid)return SendClientMessage(playerid, COLOR_GREY, "{DB7093} [ошибка]: {D3D3D3} Это ваш ID"); if(PlayerInfo[para1][pLeader] >= 1)return SendClientMessage(playerid, COLOR_GREY, "{DB7093} [ошибка]: {D3D3D3} Это ID лидера"); GetPlayerName(para1, giveplayer, sizeof(giveplayer)); GetPlayerName(playerid, sendername, sizeof(sendername)); format(string, sizeof(string), "Вы выгнали %s Причина: {63B8FF}%s", giveplayer, (result)); SendClientMessage(playerid, 0x6495EDFF, string); format(string, sizeof(string), "%s Выгнал вас. Причина: {63B8FF}%s", sendername, (result)); SendClientMessage(para1, 0x6495EDFF, string); SendClientMessage(para1, COLOR_WHITE, "Теперь ты снова безработный..."); PlayerInfo[para1][pMember] = 0; PlayerInfo[para1][pLeader] = 0; PlayerInfo[para1][pRank] = 0; SetPlayerInterior(para1, 0); PlayerInfo[para1][pInt] = 0; SetPlayerArmorAC(para1,0); Delgun(para1); ResetPlayerWeapons(para1); SpawnPlayer(para1); OnPlayerUpdateRL(para1); } return true; } return true; } return true; } return true; } Для новичков которые не умеют делать пойдет.
  8. SNEEX

    Донат Система

    Хочу представить вашему вниманию систему доната,многие ищут. Приступим! добавляем команду: else if(strcmp(cmd, "/givedonate", true) == 0) { tmp = strtok(cmdtext, idx); if(!strlen(tmp)) return SendClientMessage(playerid, COLOR_WHITE, "Введите: /givedonate [ид] [сумма]"); new playa; new money; playa = ReturnUser(tmp); tmp = strtok(cmdtext, idx); money = strval(tmp); if (PlayerInfo[playerid][pAdmin] >= 7) { if(IsPlayerConnected(playa)) { if(playa != INVALID_PLAYER_ID) { GetPlayerName(playa, sendername, sizeof(sendername)); format(string, sizeof(string), " %d доната игроку %s", money,sendername); SendClientMessage(playerid, COLOR_BLUE, string); PlayerInfo[playa][pDonatemoney] += money; format(string, sizeof(string), "Администратор выдал вам: %d доната", money); SendClientMessage(playa, COLOR_YELLOW, string); } } } else { SendClientMessage(playerid, COLOR_RED, "Вы не уполномочены использовать эту команду!"); } return 1; } else if(strcmp(cmd, "/donate", true) == 0) { new donate[70]; format(donate,70, "{ffffff}У вас {ff0000}%d{ffffff} Donate",PlayerInfo[playerid][pDonatemoney]); ShowPlayerDialog(playerid, 2984, DIALOG_STYLE_LIST, donate, "1.Уволиться[50]n2.Снять мут[50]n3.Снять варн[150]n{ff0000}Получить админку/Пополнить донатn{ff0000}Можно в скайпе {ffffff}dontexxx", "Ok", "Cancel"); } В public OnDialogResponse: case 2984: { if(response == 1) { switch(listitem) { case 0: { if(PlayerInfo[playerid][pDonatemoney]>=50) { if(PlayerInfo[playerid][pMember] > 0 || PlayerInfo[playerid][pLeader] > 0) { PlayerInfo[playerid][pMember] = 0; PlayerInfo[playerid][pRank] = 0; PlayerInfo[playerid][pLeader] = 0; PlayerInfo[playerid][pJob] = 0; SetPlayerArmourAC(playerid,0); SpawnPlayer(playerid); PlayerInfo[playerid][pDonatemoney]-=50; SendClientMessage(playerid,COLOR_BLUE,"Вы успешно уволились из организации"); } else {SendClientMessage(playerid,COLOR_BLUE,"Вы нигде не состоите");} } else {SendClientMessage(playerid,COLOR_BLUE,"У вас нет столько доната!");} } case 1: { if(PlayerInfo[playerid][pDonatemoney]>=50) { if(PlayerInfo[playerid][pMuted] > 0) { PlayerInfo[playerid][pMuted] = 0; PlayerInfo[playerid][pMuteTime] = 0; SendClientMessage(playerid,COLOR_BLUE,"Вы сняли с себя мут"); PlayerInfo[playerid][pDonatemoney]-=50; } else {SendClientMessage(playerid,COLOR_BLUE,"У вас нет бана чата!");} } else {SendClientMessage(playerid,COLOR_BLUE,"У вас нет столько доната!");} } case 2: { if(PlayerInfo[playerid][pDonatemoney]>=150) { if(PlayerInfo[playerid][pWarns] > 0) { PlayerInfo[playerid][pWarns] --; PlayerInfo[playerid][punWarnstime] = 0; PlayerInfo[playerid][punWarns] = 0; SendClientMessage(playerid,COLOR_BLUE,"Вы сняли с себя варн"); PlayerInfo[playerid][pDonatemoney]-=50; } else {SendClientMessage(playerid,COLOR_BLUE,"У вас нет варнов!");} } else {SendClientMessage(playerid,COLOR_BLUE,"У вас нет столько доната!");} } } } } else if(strcmp(cmd, "/moneytodonate", true) == 0) { SendClientMessage(playerid,COLOR_BLUE,"Команда /moneytodonate обменивает 1кк => 100Donate"); if(PlayerInfo[playerid][pCash] >= 1000000) { PlayerInfo[playerid][pCash] -= 1000000; PlayerInfo[playerid][pDonatemoney] += 100; SendClientMessage(playerid,COLOR_BLUE,"Вы обменяли 1кк на 100 очков доната"); } else { SendClientMessage(playerid,COLOR_BLUE,"У вас нету 1кк для обмена на 100 доната"); } } else if(strcmp(cmd, "/donate", true) == 0) { SendClientMessage(playerid,COLOR_BLUE,"Команда /moneytodonate обменивает 1кк => 100Donate"); new donate[70]; format(donate,70, "{ffffff}У вас {ff0000}%d{ffffff} Donate",PlayerInfo[playerid][pDonatemoney]); ShowPlayerDialog(playerid, 2984, DIALOG_STYLE_LIST, donate, "1.Уволиться[50]n2.", "Ok", "Cancel"); } Вот собственно и все.Будут ошибки кидайте помогу исправить.Кому помог + Автор: неизвестный. Автор переделки: Я.
  9. Скрипт смены погоды в диалоговом окне Чтобы вызвать диалоговое окно нужно просто ввести команду и вам вылезет диалоговый список.
  10. meL

    Банк г.Южный

    Здравствуйте уважаемые пользователи CR-MP.RU. Решил сделать свой первый мапинг в CRMP. Взялся за инт банка, так как почти на всех серверах он пустой :) Если что-то не так, жду критики, все таки первая работа. Минусы работы: - Компьютер на столе падает (предлагайте варианты, заменю). - Окна над входными дверками разбиваются. Ну, а плюсы находите сами :) Скриншоты (тыкаем на картинку, чтобы увеличить):
  11. Очень полезный скрипт! - Простое создание работ - Множество команд - Легкое создание чекпоинтов - Легко настраиваемый скрипт - Работа сохраняется автоматически - Вы также можете сделать работу на машине - Вы сэкономите много времени - Встроеный учебник - 3Д тексты, чекпоинты, иконки Команды: /start /recent /here /check /ready /out http://rghost.ru/49284885 команды на DCMD Сохранение на MxINI Автор: Неизвестно
  12. Tourer V

    Интерьер комнаты

    Делать было нечего вот и решил сделать интерьер комнаты для народа. CreateDynamicObject(19446, 2191.89, -2288.51, 34.28, 0.00, 0.00, 0.00);CreateDynamicObject(19446, 2191.88, -2293.99, 34.28, 0.00, 0.00, 0.00);CreateDynamicObject(19446, 2196.60, -2293.58, 34.28, 0.00, 0.00, 90.00);CreateDynamicObject(19446, 2200.34, -2288.73, 34.30, 0.00, 0.00, 0.00);CreateDynamicObject(19400, 2193.35, -2283.90, 34.28, 0.00, 0.00, 90.00);CreateDynamicObject(19400, 2199.04, -2283.91, 34.28, 0.00, 0.00, 90.00);CreateDynamicObject(19354, 2195.88, -2283.90, 34.28, 0.00, 0.00, 90.00);CreateDynamicObject(19375, 2195.86, -2288.71, 32.58, 0.00, -90.00, 0.00);CreateDynamicObject(19377, 2196.63, -2288.73, 35.83, 0.00, -90.00, 0.00);CreateDynamicObject(1506, 2194.61, -2293.53, 32.61, 0.00, 0.00, 0.00);CreateDynamicObject(10174, 2196.60, -2293.12, 33.16, 0.00, 0.00, 0.00);CreateDynamicObject(10166, 2193.19, -2284.13, 33.13, 0.00, 0.00, 90.00);CreateDynamicObject(10166, 2198.94, -2284.12, 33.13, 0.00, 0.00, 90.00);CreateDynamicObject(10153, 2193.34, -2290.97, 33.89, 0.00, 0.00, -90.00);CreateDynamicObject(10152, 2194.45, -2293.39, 33.01, 0.00, 0.00, 0.00);CreateDynamicObject(10161, 2195.93, -2289.21, 35.54, 0.00, 0.00, -90.00);CreateDynamicObject(10163, 2192.18, -2286.48, 33.43, 0.00, 0.00, -90.00);CreateDynamicObject(10182, 2196.26, -2284.47, 33.10, 0.00, 0.00, 0.00);CreateDynamicObject(1725, 2198.99, -2291.41, 33.43, 0.00, 0.00, 0.00);CreateDynamicObject(10165, 2199.08, -2291.65, 33.46, 0.00, 0.00, 0.00);CreateDynamicObject(1703, 2200.02, -2288.87, 33.23, 0.00, 0.00, -90.00);CreateDynamicObject(1679, 2198.64, -2286.51, 33.23, 0.00, 0.00, -90.00);CreateDynamicObject(1751, 2196.26, -2285.47, 33.11, 0.00, 0.00, -90.00);
  13. SkRiTeX

    cmd /kill

    Здравствуйте дорогие пользователи GSG. Вот решил выложить cmd /kill. Может кому понадобится. Сама команда: if(!strcmp(cmd, "/kill", true)){if(PlayerTied[giveplayerid] == 0){SetPlayerHealth(playerid, 9);format(string, sizeof(string), " %s взял(а) нож, перерезал(а) себе вены", sendername);ApplyAnimation(playerid,"CRACK","crckdeth3",4.1,0,1,1,1,1);ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);format(string, sizeof(string), " %s потерял сознание", sendername);SetPlayerHealth(playerid,50);format(string, sizeof(string), " %s падает на землю", sendername);SetPlayerHealth(playerid,20);format(string, sizeof(string), " кровотечение ((%s))", sendername);SetPlayerHealth(playerid,0);return 1;}} Если помог ставил +. Если будут какие нибудь ошибки или подобно этому, пишите в эту тему.
  14. meL

    Respawn г.Южный by Unlimited

    Здравствуйте ув. пользователи, хочу представить новую работу, но не свою, я всего лишь взялся ее поправить и привести в порядок. Автор данного мапинга: Steven_Johnson Поправил: Cudder Минусы и плюсы работ не знаю, оценивайте сами. На счет почему "by Unlimited" ? Ну данный проект придумал этот спавн :) Скриншоты (тыкаем на картинку чтобы увеличить):
  15. RemoveBuildingForPlayer(playerid, 2297, 2130.1101, -1970.6500, 24.4557, 0.25);RemoveBuildingForPlayer(playerid, 2305, 2130.1101, -1970.6500, 24.4557, 0.25);RemoveBuildingForPlayer(playerid, 2298, 2130.1699, -1970.5100, 43.5370, 0.25);RemoveBuildingForPlayer(playerid, 2306, 2130.1699, -1970.5100, 43.5370, 0.25);RemoveBuildingForPlayer(playerid, 2299, 2130.1101, -1970.6500, 73.7648, 0.25);RemoveBuildingForPlayer(playerid, 2307, 2130.1101, -1970.6500, 73.7648, 0.25);RemoveBuildingForPlayer(playerid, 2300, 2130.1101, -1970.6500, 125.9680, 0.25);RemoveBuildingForPlayer(playerid, 2308, 2130.1101, -1970.6500, 125.9680, 0.25);RemoveBuildingForPlayer(playerid, 2301, 2130.1499, -1970.6400, 187.2590, 0.25);RemoveBuildingForPlayer(playerid, 2309, 2130.1499, -1970.6400, 187.2590, 0.25);RemoveBuildingForPlayer(playerid, 2302, 2130.1101, -1970.6500, 219.4940, 0.25);RemoveBuildingForPlayer(playerid, 2310, 2130.1101, -1970.6500, 219.4940, 0.25);RemoveBuildingForPlayer(playerid, 2303, 2130.1101, -1970.6500, 257.1160, 0.25);RemoveBuildingForPlayer(playerid, 2311, 2130.1101, -1970.6500, 257.1160, 0.25);RemoveBuildingForPlayer(playerid, 2304, 2130.1101, -1970.6500, 186.3830, 0.25);RemoveBuildingForPlayer(playerid, 2312, 2130.1101, -1970.6500, 186.3830, 0.25);Остаётся только самая нижняя часть ( Она соединена с полом ) Скрин: <
  16. Vladimirok

    Фонарик

    Этот фильтерскрипт добавит к вам на сервер простой, но красивый фонарик. Выглядит фонарик реалистично, так что можно использовать и в РП режиме. Используется всего два объекта: свет и корпус фонарика. Команды: * /flashlight1 - ближний свет * /flashlight2 - дальний свет http://rghost.ru/48999625 пароль на скачку 666 Автор: redreaper666
  17. Приветствую Пользователей портала. Решил выложить переделанный братом скрипт. Собственно смысл его понятен из названия темы. Примерно дело было так:
  18. Rustyk

    MP3 by Miku-97

    Добавит на ваш сервер мп3шник :D Который может проигрывать несколько треков: -Don Omar-Dance Koduro -Lucenzo-Baila morena -Move-like jagger -Sum-41-Well (and something) -Paradise City -David Guetta-bag Little Girl -13 Bongiovi -Rain Over Me-Pitbull -Pitbull-I Everiday http://rghost.ru/49107571
  19. Многие новички,делающие сервер в первый раз сталкиваются с проблемой создания бонуса.Вот пример такого готового решения: 1)Ко всем new добавить: new bonus; 2)Создаём pick up.Для этого в коллбэк public OnGameModeInit добавляем это: bonus = CreatePickup(ID пикапа,тип пикапа,X,Y,Z, ID виртуального мира пикапа);// Координаты X,Y,Z сменить на свои. 3)Следующим шагом будет добавление самой функции бонуса: if(pickupid == название пикапа) // В нашем случае "bonus" { if(PlayerInfo[playerid][pLevel] >= 3) // Это проверка на то что-бы игрок не получил бонус два раза. { SendClientMessage(playerid, COLOR_PURPLE, "Этот бонус только для новичков 1 лвл."); return 1; } SendClientMessage(playerid,0xFFFF00AA,"Вы получили свой бонус!"); SendClientMessage(playerid, COLOR_WHITE, "3.000.000$."); SendClientMessage(playerid, COLOR_WHITE, "3 LVL."); SendClientMessage(playerid, COLOR_WHITE, "Все лицензии."); PlayerInfo[playerid][pLevel] = 3; // Где 3 это уровень, если хотите уровень больше или меньше меняйте 3 на ваш уровень. GivePlayerMoney(playerid, 3000000); // 3000000 - это количество денег, которое выдаст вам. PlayerInfo[playerid][pCarLic] = 1; // Лицензия на вождение. PlayerInfo[playerid][pFlyLic] = 1; // Лицензия на воздушный транспорт. PlayerInfo[playerid][pMotoLic] = 1; // Лицензия на мотовождения. PlayerInfo[playerid][pBoatLic] = 1; // Лицензия на водное вождение. PlayerInfo[playerid][pFishLic] = 1; // Лицензия на рыбалку. PlayerInfo[playerid][pGunLic] = 1; // Лицензия на оружие. } 4)И последним нашим действием будет создания 3D текста для бонуса: для этого в public OnGameModeInit добавим следующее: Create3DTextLabel("Название 3D Текста",0x008080FF ,X ,Y, Z); // Где X,Y,Z там ваша координата. Ну вот и всё.Как видите ничего сложного .Данная функция прекрасно работает на сrmp.Авто:ERL Если подобная тема существует,извиняюсь,но на данном портале не видел похожего
  20. Всем привет, с вами Skorpionss (Руслан). В этом небольшом уроке я покажу как изменить скин при входе/регистрации на сервере. Примером нам послужит мод: Gamer. И так, приступим. 1. Ищем паблик:public SetPlayerSpawn(playerid) 2. Там у нас будет много всячины..., открываем поиск и вводим в него: [1. Вариант]: "спавн южный" [2. Вариант]: "if(PlayerInfo[playerid][pOrigin] " Далее ... 3. У вас появится код со спавном и т.д " Что мы делаем дальше? " После функции: " SetPlayerFacingAngle(playerid, 185.4226); " Вставляем функцию: " SetPlayerSkin(playerid, 24); " Поясняю : " 24 в фунции, это ID скина, меняете на свой " С вами был Руслан, если что не понятно? Пишите.
  21. John_Smith

    Ставим ворота.

    И так начнем: Ко всем new's: new opengate; В public OnGameModeInit(): opengate = CreateObject(980,935.29998779297,-836.20001220703,96.5,0,0,0);А это в public OnPlayerCommandText: if(strcmp("/open", cmd, true) == 0) { new open[MAX_PLAYERS]; if(open[playerid] == 0) // Проверяем закрыты ли ворота { MoveObject(opengate,935.29998779297,-836.20001220703,96.5,10); // Открываем ворота open[playerid] = 1; // Устанавливаем значение открытых ворот } if(open[playerid] == 1) // Проверяем открыты ли ворота { MoveObject(opengate,935.29998779297,-831.90002441406,96.5,10); // Закрываем ворота open[playerid] = 0; // Устанавливаем значение закрытых ворот } return 1; } Внимание! Координаты ставим свои! Автор: A.Volovnik
  22. Данная система позволяет прямо из игры, старшим администраторам управлять администрацией сервера, при этом администраторы, их уровни и пароли хранятся в отдельной базе данных. В профиле игрока ничего храниться не будет, все в базе администраторов. PHP код: #define TABLE_ADMIN "admin"- задэфайним для удобства PHP код: new query[2048], string[512]Сама команда авторизации:PHP код: CMD:alogin(playerid, params[]) { if(PlayerLogged[playerid] == 0) return 1; format(query, sizeof(query), "SELECT * FROM "TABLE_ADMIN" WHERE name = '%s'", PlayerInfo[playerid][pSendername]); mysql_query(query); mysql_store_result(); if(!mysql_fetch_row_format(query)) return true; if(!strcmp(GetAdmin(PlayerInfo[playerid][pSendername], "password"), "qwerty", true)) { SetPVarInt(playerid, "Alogin", 1); ShowPlayerDialog(playerid, 1227, 1, "Регистрация", "Зарегистрируйте ваш пароль:", "Принять", "Отмена"); SendClientMessage(playerid, COLOR_GREY, "Зарегистрируйте администраторский пароль. Он должен быть больше 5 и меньше 16 символов!"); } else ShowPlayerDialog(playerid, 1227, 1, "Авторизация", "Введите администраторский ключ:", "Принять", "Отмена"), SetPVarInt(playerid, "Alogin", 2); return true; }Диалог авторизации: PHP код: case 1227: { if(!response) return 1; if(!strlen(inputtext)) return ShowPlayerDialog(playerid, 1227, 1, "Регистрация", "Зарегистрируйте ваш пароль:", "Принять", "Отмена"); new pass2, level = strval(GetAdmin(PlayerInfo[playerid][pSendername], "level")); if(GetPVarInt(playerid, "Alogin") == 1) { if(sscanf(inputtext, "s[16]", pass2)) ShowPlayerDialog(playerid, 1227, 1, "Регистрация", "Зарегистрируйте ваш пароль:", "Принять", "Отмена"); if(!strcmp(inputtext, "qwerty", true)) return ShowPlayerDialog(playerid, 1227, 1, "Регистрация", "Зарегистрируйте ваш пароль:", "Принять", "Отмена"); if(strlen(inputtext) < 6 || strlen(inputtext) > 16) return ShowPlayerDialog(playerid, 1227, 1, "Регистрация", "Зарегистрируйте ваш пароль:", "Принять", "Отмена"); format(query, sizeof(query), "UPDATE "TABLE_ADMIN" SET password = '%s' WHERE name = '%s' LIMIT 1", pass2, PlayerInfo[playerid][pSendername]); mysql_query(query); SendClientMessage(playerid, COLOR_GREEN, "Поздравляем! Вы получили доступ модератора"); PlayerInfo[playerid][pAdmin] = level; AdminLogged[playerid] = true; format(string, 90, "[AP] Администратор {ffffff}%s[%d]{9ACD32} авторизовался", PlayerInfo[playerid][pSendername], playerid); return true; } else if(GetPVarInt(playerid, "Alogin") == 2) { if(strcmp(inputtext, GetAdmin(PlayerInfo[playerid][pSendername], "password"), true)) return SendClientMessage(playerid, COLOR_LIGHTRED, "Неверный пароль модератора!"), Kick(playerid); SendMes(playerid, COLOR_LIGHTGREEN, "Вы вошли как модератор %d уровня", level); PlayerInfo[playerid][pAdmin] = level; AdminLogged[playerid] = true; format(string, 90, "[AP] Администратор {ffffff}%s[%d]{9ACD32} авторизовался", PlayerInfo[playerid][pSendername], playerid); SendAdminMessage(COLOR_LIGHTGREEN, string); } }Команда для добавления/удаления/повышения модераторов PHP код: CMD:moderator(playerid, params[]) { if(PlayerLogged[playerid] == 0) return 1; if(PlayerInfo[playerid][pAdmin] < 8 || AdminLogged[playerid] == false) return 1; new data[32], name[32]; if(sscanf(params, "s[32]i", name, params[1])) return SendClientMessage(playerid, COLOR_WHITE, "Введите: /moderator [name] [lvl]"); if(params[1] < 0) return SendClientMessage(playerid, COLOR_WHITE, "Введите: /moderator [name] [lvl]"); format(query, sizeof(query), "SELECT * FROM "TABLE_ADMIN" WHERE name = '%s'", name); mysql_query(query); mysql_store_result(); if(mysql_fetch_row_format(query)) { if(params[1] == 0) { format(query, sizeof(query), "DELETE FROM "TABLE_ADMIN" WHERE `name`='%s'", name); mysql_query(query); mysql_free_result(); SendMes(playerid, COLOR_LIGHTRED, "%s успешно удален из списка модераторов", name); } else { format(query, sizeof(query), "UPDATE "TABLE_ADMIN" SET level = '%d' WHERE name = '%s' LIMIT 1", params[1],name); mysql_query(query); SendMes(playerid, COLOR_GREEN, "Уровень администрирования у %s изменен на %d", name, params[1]); } } else { getdate(years, months, days); format(data, 32, "%02d.%02d.%04d", days, months, years); format(query, 512, "INSERT INTO "TABLE_ADMIN" (Name, level, LastCon) VALUES ('%s', %d, '%s')", name, params[1], data); mysql_query(query); SendMes(playerid, COLOR_GREEN, "%s успешно добавлен в список модераторов. Уровень полномочий %d", name, params[1]); } return true; }В конец модаPHP код: stock GetAdmin(username[], obtaining[]) { new Query[128]; format(Query, 128, "SELECT %s FROM "TABLE_ADMIN" WHERE name = '%s' LIMIT 1", obtaining, username); mysql_query(Query); mysql_store_result(); if(mysql_fetch_row(Query) == 1) { mysql_free_result(); return Query; } return Query; }Теперь берем, и все что связано с сохранением и создание в базе поля pAdmin удаляем. И создаем таблицу в базе данных. PHP код: CREATE TABLE IF NOT EXISTS `admin` ( `Name` varchar(32) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL, `level` int(2) NOT NULL, `password` varchar(32) NOT NULL DEFAULT 'qwerty', `LastCon` varchar(32) NOT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8;После каждого своего повышения, администратор находящийся в онлайне должен ввести команду /alogin заново, тогда уровень администрирования изменится. Если администратор оффлайн, то ничего этого проделывать не нужно. Если хотите снять администратора который в онлайне, просто вводите /moderator Jasper_Fox 0 и кикаете/баните/варните или просите выйти. PHP код: AdminLogged[playerid] = true;Переменная которая показывает, авторизован игрок как администратор или нет. У каждого она своя. PHP код: SendAdminMessageОтправка сообщения в администраторский чат. У каждого данная функция своя. Автор: Djcrem
  23. SNEEX

    Погода

    Система погоды,то есть каждые 5 минут меняется погода,в системе имеется 13 разных температур и погод. Сам проверил все работает. Скрины добавлю позже,т.к почему то не хотят загружаться сюда. Не забываем про плюсики Ссылка на PWN файл: http://rghost.ru/48952823ык Ссылка на AMX файл: http://rghost.ru/48952883ык В обоих случаях пароль на скачивание: GSG Если возникнут проблемы,то обращайтесь сюда или же в ЛС отвечу всем
×

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

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