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

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

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

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

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

Тип контента


Форумы

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

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

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


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

  • Начало

    Конец


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

  • Начало

    Конец


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

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

  1. Думаю эта команда будет полезна кто пишет RP сервер Примечание: Команда работает только в автомобиле, последний чекпоинт вы должны написать сами (исходя из данных предпоследнего) Начнём! Для начало добавляем инклуд #include Добавляем переменные new bool:start[MAX_PLAYERS]; new Float: posauto[3][MAX_PLAYERS]; Создаём саму команду CMD:points(playerid) { new vehicleid = GetPlayerVehicleID(playerid); new Float: pos1[3]; new string[250]; if(GetPlayerState(playerid) != 2) return SendClientMessage(playerid, -1, "{D40000}[Ошибка] Вы должны быть в авто!"); if(!start[playerid]) { start[playerid] = true; GetVehiclePos(vehicleid, posauto[0][playerid], posauto[1][playerid], posauto[2][playerid]); SendClientMessage(playerid, -1, "[Оповещение] Начальные координаты звписанны!"); } else { GetVehiclePos(vehicleid, pos1[0], pos1[1], pos1[2]); new File:file = fopen("checkpoint.txt",io_append); format(string, sizeof(string), "SetPlayerRaceCheckpoint(playerid, 0, %f, %f, %f, %f, %f, %f, 5.0);\r\n", posauto[0][playerid], posauto[1][playerid], posauto[2][playerid], pos1[0], pos1[1], pos1[2]); fwrite(file,string); fclose(file); GetVehiclePos(vehicleid, posauto[0][playerid], posauto[1][playerid], posauto[2][playerid]); SendClientMessage(playerid, -1, "[Оповещение] Все готово!"); } return 1; } Готово!
  2. Эта система сможет менять название сервера командой прямо в игре! Начнём! Добавляем переменную new strcmd[50]; Создаём саму команду CMD:hostname(playerid, params[]) { // Проверка на администратора if(sscanf(params,"s[100]",params[0])) return SendClientMessage(playerid, -1, " /hostname [Название]"); format(strcmd, sizeof(strcmd), "hostname %s", params[0]); SendRconCommand(strcmd); return 1; }
  3. Для работы команды вам потребуется: MySQL R39-4 Командный процессор DC_CMD
  4. При 15 xp персонаж падает на землю и лежит в судорогах. 1.В начало мода добовляем ко всем new: new Death[MAX_PLAYERS]; DeathAnimation(playerid,animlib[],animname[], Float:Speed, looping, lockx, locky, lockz, lp) { Death[playerid] = 1; ApplyAnimation(playerid, animlib, animname, Speed, looping, lockx, locky, lockz, lp); } 2. Далее идем в public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger) и вставляем: if(Death[playerid] == 1) { RemovePlayerFromVehicle(playerid); } 3. Добaвляем в public OnPlayerUpdate(playerid): new Float:deathcrack; GetPlayerHealth(playerid,deathcrack); if (deathcrack < 15.0) { Death[playerid] = 1; DeathAnimation(playerid,"CRACK","crckdeth2", 4.0, 1, 0, 0, 0, 0); return 1; } if (deathcrack > 15.0 && Death[playerid] == 1) { Death[playerid] = 0; ClearAnimations(playerid); return 1; } Автор: Не известен.
  5. KOSМOS

    TextDraw by #HappyMan

    Здравствуйте уважаемые пользователи портала cr-mp.ru ... Сегодня я хочу предложить вам, готовые TextDraw'ы для ваших модов ... А именно это TextDraw автосалона, TextDraw приборной панели, TextDraw Выбора скина ... Все TD выполнены в одинаковом стиле ... ( В один мод так сказать можно засунуть ) ... Делал для себя, но потом сделал получше ... Вроде ровно ))) И так начнем с TextDraw'а автосалона :
  6. И так начнем. в начало мода. forward Timer(); new grob; new Text3D: new3Dtext; дальше будем работать с public OnPlayerDeath(playerid,killerid,reason) вставьте в этот паблик следущий код: new Float:x,Float:y,Float:z,Float:r,str[256],pname[MAX_PLAYER_NAME];//все наши переменные GetPlayerPos(playerid,x,y,z);//узнаём координаты трупа SetPlayerFacingAngle(playerid,r);//узнаём угол поворота трупа grob = CreateObject(2896,x,y,z-0.5,r,0.0,0.0);//создаём гроб SetTimer("Timer",180000,false);//запускаем таймер GetPlayerName(playerid,pname,sizeof(pname));//узнаём ник трупа format(str,sizeof(str),"%s",pname); new3Dtext = Create3DTextLabel(str,0xF60000FF,x,y,z+1,40.0,0);//создаём 3D текст и в самый конец мода: public Timer() { DestroyObject(grob);//удаляем гроб Delete3DTextLabel(new3Dtext);//удаляем 3D текст return 1; } Автор: Astemir.
  7. FVCKFISH

    Работа дровосека

    Ко всем new new francjobodej,francdrevlog;new francdrev1,francdrev2,francdrev3;new franclesorub[MAX_PLAYERS];new francderevo[MAX_PLAYERS];new francbrevnozp[MAX_PLAYERS]; public OnPlayerPickUpPickup(playerid, pickupid) добавляем : if(pickupid == francjobodej){if(PlayerInfo[playerid][pMember] != 0 || PlayerInfo[playerid][pLeader] != 0) return true;if(franclesorub[playerid] == 0) ShowPlayerDialog(playerid,125,DIALOG_STYLE_MSGBOX,"Раздевалка лесорубов","Хотите начать?","Да","Нет");else ShowPlayerDialog(playerid,126,DIALOG_STYLE_MSGBOX,"Раздевалка лесорубов","Хотите завершить работу?","Да","Нет");}if(pickupid == francdrev1){if(franclesorub[playerid] == 1){if(francderevo[playerid] == 0){francderevo[playerid] = 1;ApplyAnimation(playerid, "CARRY", "liftup", 4.0, 0, 0, 0, 1, 1);SetTimerEx("ClearAnimText2", 1000, false, "d", playerid);SetPlayerAttachedObject(playerid, 4, 1463, 1, 0.184699, 0.426247, 0.000000, 259.531341, 80.949592, 0.000000, 0.476124, 0.468181, 0.470769);return true;}else{SendClientMessage(playerid,COLOR_GREY,"У вас уже есть брёвна!");}}else{SendClientMessage(playerid,COLOR_GREY,"Вы не можете взять брёвна, для начала работы переоденьтесь в одежду {00FFFF}лесоруба.");}}if(pickupid == francdrev2){if(franclesorub[playerid] == 1){if(francderevo[playerid] == 0){francderevo[playerid] = 1;ApplyAnimation(playerid, "CARRY", "liftup", 4.0, 0, 0, 0, 1, 1);SetTimerEx("ClearAnimText2", 1000, false, "d", playerid);SetPlayerAttachedObject(playerid, 4, 1463, 1, 0.184699, 0.426247, 0.000000, 259.531341, 80.949592, 0.000000, 0.476124, 0.468181, 0.470769);return true;}else{SendClientMessage(playerid,COLOR_GREY,"У вас уже есть брёвна!");}}else{SendClientMessage(playerid,COLOR_GREY,"Вы не можете взять брёвна, для начала работы переоденьтесь в одежду {00FFFF}лесоруба.");}}if(pickupid == francdrev3){if(franclesorub[playerid] == 1){if(francderevo[playerid] == 0){francderevo[playerid] = 1;ApplyAnimation(playerid, "CARRY", "liftup", 4.0, 0, 0, 0, 1, 1);SetTimerEx("ClearAnimText2", 1000, false, "d", playerid);SetPlayerAttachedObject(playerid, 4, 1463, 1, 0.184699, 0.426247, 0.000000, 259.531341, 80.949592, 0.000000, 0.876124, 0.868181, 0.870769);return true;}else{SendClientMessage(playerid,COLOR_GREY,"У вас уже есть бревна!");}}else{SendClientMessage(playerid,COLOR_GREY,"Вы не можете взять бревна, для начала работы переоденьтесь в одежду {00FFFF}лесоруба.");}}if(pickupid == francdrevlog){if(francderevo[playerid] == 0){SendClientMessage(playerid,COLOR_GREY,"У вас нет брёвен!");return true;}else{if(francderevo[playerid] == 1){francderevo[playerid] = 0;RemovePlayerAttachedObject(playerid, 4);ApplyAnimation(playerid,"CARRY","putdwn",4.1,0,1,1,1,1);SendClientMessage(playerid,COLOR_WHITE,"Вы принесли брёвна");SetTimerEx("ClearAnimText", 1400, false, "d", playerid);francbrevnozp[playerid]++;}}} Дальше в public OnGameModeInit добавляем: francdrevlog = CreatePickup(3798,23,2736,-1621.80005,22.6);francjobodej = CreatePickup(1275,23,2750.69995,-1585.30005,22.3);francdrev1 = CreatePickup(19197,23,2751.8999,-1572.90002,20.9);francdrev2 = CreatePickup(19197,23,2741.8999,-1563.30005,20.6);francdrev3 = CreatePickup(19197,23,2725.30005,-1569.90002,22.4); Теперь для начала и завершения работы добавляем в OnDialogResponse if(dialogid == 125){if(response){SetPlayerSkin(playerid,16);franclesorub[playerid] = 1;SendClientMessage(playerid,COLOR_WHITE,"Вы начали рабочий день лесоруба. {A41C1C}Отправляйтесь за брёвнами!");return true;}else{return true;}}if(dialogid == 126){if(response){new strings[256];new string[256];new stri[256];francderevo[playerid] = 0;franclesorub[playerid] = 0;RemovePlayerAttachedObject(playerid, 4);ApplyAnimation(playerid, "CARRY", "crry_prtial", 4.0, 0, 0, 0, 0, 1);if(PlayerInfo[playerid][pMember] >= 1 || PlayerInfo[playerid][pLeader] >= 1){SetPlayerSkin(playerid,PlayerInfo[playerid][pChar]);}if(PlayerInfo[playerid][pMember] == 0 || PlayerInfo[playerid][pLeader] == 0){SetPlayerSkin(playerid,PlayerInfo[playerid][pChar]);}format(string, sizeof(string), "Вы закончили работу. Ваш заработок: {00FF00}$%d", francbrevnozp[playerid]*50);SendClientMessage(playerid, COLOR_WHITE, string);format(stri, sizeof(stri), "Вы принесли {A41C1C}%d{FFFFFF}свзок брёвен ",francbrevnozp[playerid]);PlayerInfo[playerid][pCash] +=francbrevnozp[playerid]*50;SendClientMessage(playerid, COLOR_WHITE, stri);francbrevnozp[playerid] = 0;GivePlayerMoney(playerid, 100);format(strings, sizeof(strings), "~r~Pay", francbrevnozp[playerid]*50);GameTextForPlayer(playerid,strings,3000,1);return true;}else{}} маппинг для лесоруба(склад и раздевалка) CreateObject(4214,2749.6001000,-1586.3000500,22.3000000,0.0000000,0.0000000,355.0000000); //object(lanitewin3_lan) (1)CreateObject(9160,2743.8999000,-1622.0000000,22.5000000,0.0000000,0.0000000,184.9990000); //object(lodaseroad143) (1) Делал на моде Тюмень Скрины: Сдачи опилок теперь нету , только бревна... (скрины новые решил не делать , если будут проблемы по данной теме , писать в вопросы и проблемы)
  8. Доброго времени суток, сейчас я вам покажу как можно сделать "крякалку" на кнопку для автомобилей гос.служб, а так же на другие авто. Для того чтобы все работало нам понадобится: мод, стример и прямые руки. По теории это будет выглядеть так: Все начинается с проверки нажатой игроком кнопкой, далее привязываем к этой проверке еще одну проверку на нахождение игрока за рулем авто. Если проверка проходит успешной, то создаем цикл, где будем искать всех активных игроков. После того как прошелся цикл, делаем проверку на нахождение найденного игрока, с игроком который включил "крякалку", а далее уже будет проигрывать звук, создавать таймер и делать дополнительные проверки во избежания флуда звуком. По практике это будет выглядеть так: Для начала создадим глобальную беременную(ко всем new добавим) new zvonok[MAX_PLAYERS]; Далее идем уже к нажатию кнопки. Проверка на нажатую кнопку осуществляется в паблике OnPlayerKeyStateChange if(newkeys == ид кнопки && IsPlayerInAnyVehicle(playerid) && GetPlayerState(playerid) == PLAYER_STATE_DRIVER) //проверяем нажатую кнопку и если игрок находится за рулем { if(GetPlayerVehicleID(playerid) == ид авто) //ид авто - т.е. ид авто на котором будет работать крякалка { for(new i=0; i<MAX_PLAYERS; i++) //цикл для поиска игроков { if(ProxDetectorS(15.0, playerid, i))//если игрок находится рядом с найденным по циклу, то.. { if(zvonok[i] == 1) return 0; //проверка "Запущен ли звук или нет?" PlayAudioStreamForPlayer(i,"ссылка на звук");//запускаем звук SetTimer("zvon", 5000, false); //создадим таймер по которому будет отключатся звук (я задал отключение через 5 сек. настраивайте время сами) zvonok[i] = 1; //ставим переменную zvonok на 1 от флуда звуком } } } } Далее перейдем к таймеру: В конец мода вставим forward zvon(playerid); //сообщим о паблике public zvon(playerid) { zvonok[playerid] = 0; //ставим переменную zvonok на 0, от флуда StopAudioStreamForPlayer(playerid); //останавливаем звук return true; } На данный момент это пока лишь первая версия, со времен буду улучшать ее с вашей помощью. Есть небольшой косяк в том что, звук не будет изменять свою громкость в зависимости от дальности нахождения автомобиля в котором он проигрывается, но и это можно исправить. К сожалению при копировании слетела табуляция, я думаю вам не составит труда настроить ее. По коду все отлично, у меня error\warning не было! По поводу работоспособности не знаю, нет возможности проверить. Обо всех ошибках прошу сообщать в эту тему, чтобы не разводить срач на форуме и совместно решать все баги! Буду рад выслушать все подсказки по поводу доработки кода. Автор: Ryslik42 (на некоторых форумах SMETAHA) - т.е. Я При копировании на другие форумы, прошу сохранить авторство!!!
  9. Всем привет пользователи GSG хочу вам показать систему Система поднятие/выкидывание оружие давайте начнем. Ко всем define #define MAX_GUNS 500 Ко всем enum enum DGUN_INFO { dID, // ID Float:dPos[3], // Позиция dWeapon, // Оружие dAmmo, // Патроны dVirtualWorld, // Виртуальный мир dInterior, // Интерьер Text3D:dLabel // 3D текст }; new Dgun[MAX_GUNS][DGUN_INFO]; Ко всем глобальным переменным: new GunObjects[47] = { 0, 331, 333, 334, 335, 336, 337, 338, 339, 341, 321, 322, 323, 324, 325, 326, 342, 343, 344, 0, 0, 0, 346, 347, 348, 349, 350, 351, 352, 353, 355, 356, 372, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 368, 371 }; В конец мода: stock B_RemovePlayerWeapon(playerid, b_weapon) { new b_weaponammo[13][2]; for(new s; s != 13; s++) GetPlayerWeaponData(playerid, s, b_weaponammo[s][0], b_weaponammo[s][1]); ResetPlayerWeapons(playerid); for(new g; g != 13; g++) { if(b_weaponammo[g][0] == b_weapon || b_weaponammo[g][1] <= 0) continue; GivePlayerWeapon(playerid, b_weaponammo[g][0], b_weaponammo[g][1]); break; } return true; } Команды: CMD:drop(playerid, params[]) { if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, 0xAFAFAFAA, "[!] Вы находитесь в транспорте."); if(GetPlayerWeapon(playerid) <= 0 && GetPlayerAmmo(playerid) <= 0) return SendClientMessage(playerid, 0xAFAFAFAA, "[!] Вы не имеете при себе оружие."); for(new g; g != MAX_GUNS; g++) { if(g > MAX_GUNS) return SendClientMessage(playerid, 0xAFAFAFAA, "[!] Вы не можете выбросить оружие. Превышен максимальный лимит."); B_RemovePlayerWeapon(playerid, GetPlayerWeapon(playerid)); ApplyAnimation(playerid, "BOMBER", "BOM_Plant", 4.0, 0, 0, 0, 0, 0); GetPlayerPos(playerid, Dgun[g][dPos][0], Dgun[g][dPos][1], Dgun[g][dPos][2]); Dgun[g][dWeapon] = GetPlayerWeapon(playerid); Dgun[g][dAmmo] = GetPlayerAmmo(playerid); Dgun[g][dVirtualWorld] = GetPlayerVirtualWorld(playerid); Dgun[g][dInterior] = GetPlayerInterior(playerid); Dgun[g][dID] = CreateDynamicObject(GunObjects[Dgun[g][dWeapon]], Dgun[g][dPos][0], Dgun[g][dPos][1], Dgun[g][dPos][2]-1, 93.7, 120.0, 120.0, Dgun[g][dVirtualWorld], Dgun[g][dInterior], -1, 300.0); GetWeaponName(Dgun[g][dWeapon], m_string, sizeof(m_string)); format(f_string, sizeof(f_string), "Оружие %s и %d патронов.\n{00A86B}Введите: /take", m_string, Dgun[g][dAmmo]); Dgun[g][dLabel] = CreateDynamic3DTextLabel(f_string, 0xFFFF00AA, Dgun[g][dPos][0], Dgun[g][dPos][1], Dgun[g][dPos][2], 5.0, INVALID_PLAYER_ID, INVALID_VEHICLE_ID, 0, Dgun[g][dVirtualWorld], Dgun[g][dInterior], -1, 100.0); format(f_string, sizeof(f_string), "Вы выбросили оружие %s и %d патронов.", m_string, Dgun[g][dAmmo]); SendClientMessage(playerid, 0xFFA500AA, f_string); format(f_string, sizeof(f_string), "Выбросил оружие %s и %d патронов", m_string, Dgun[g][dAmmo]); SetPlayerChatBubble(playerid, f_string, 0xFF9900AA, 5.0, 3000); break; } return true; } CMD:take(playerid, params[]) { if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, 0xAFAFAFAA, "[!] Вы находитесь в транспорте."); for(new g; g != MAX_GUNS; g++) { if(!IsPlayerInRangeOfPoint(playerid, 1.0, Dgun[g][dPos][0], Dgun[g][dPos][1], Dgun[g][dPos][2])) continue; if(g > MAX_GUNS) return SendClientMessage(playerid, 0xAFAFAFAA, "[!] Вы не можете подобрать оружие. Превышен максимальный лимит."); ApplyAnimation(playerid, "BOMBER", "BOM_Plant", 4.0, 0, 0, 0, 0, 0); DestroyDynamicObject(Dgun[g][dID]); DestroyDynamic3DTextLabel(Dgun[g][dLabel]); GivePlayerWeapon(playerid, Dgun[g][dWeapon], Dgun[g][dAmmo]); GetWeaponName(Dgun[g][dWeapon], m_string, sizeof(m_string)); format(f_string, sizeof(f_string), "Вы подобрали оружие %s и %d патронов.", m_string, Dgun[g][dAmmo]); SendClientMessage(playerid, 0xFFA500AA, f_string); format(f_string, sizeof(f_string), "Подобрал оружие %s и %d патронов", m_string, Dgun[g][dAmmo]); SetPlayerChatBubble(playerid, f_string, 0xFF9900AA, 5.0, 3000); Dgun[g][dID] = -1; Dgun[g][dPos][0] = 0.0; Dgun[g][dPos][1] = 0.0; Dgun[g][dPos][2] = 0.0; Dgun[g][dWeapon] = -1; Dgun[g][dAmmo] = -1; Dgun[g][dVirtualWorld] = -1; Dgun[g][dInterior] = -1; break; } return true; } [textred]Командный процесс - ZCMD. Так что, при необходимости подгоняйте под свой мод.[/textred] Автор-Неизвестен
  10. ArtemLOL12

    TextDraw Спидометра

    Думал сделать спидометр себе на сервер но не знаю как его оживить. И сливаю вам. Сделал немного похож на CRRP но я не копировал :) Вот вам скрины данного чуда(убожества) так скажем.
  11. Один из способов управления автомобилем на расстоянии. При желании можно доработать и сделать RP-шную вещицу. 1. К define добавить: #define DIST_MENU 10101 2. в OnDialogResponse добавить: if(dialogid == DIST_MENU) { new veh = GetPVarInt(playerid, "AVTOS"); if(!response) return false; switch(listitem) { case 0: { GetVehicleParamsEx(veh,engine,lights,alarm,doors,bonnet,boot,objective); SetVehicleParamsEx(veh,VEHICLE_PARAMS_ON,lights,alarm,doors,bonnet,boot,objective); } case 1: { GetVehicleParamsEx(veh,engine,lights,alarm,doors,bonnet,boot,objective); SetVehicleParamsEx(veh,VEHICLE_PARAMS_OFF,lights,alarm,doors,bonnet,boot,objective); } case 2: { GetVehicleParamsEx(veh,engine,lights,alarm,doors,bonnet,boot,objective); SetVehicleParamsEx(veh,engine,true,alarm,doors,bonnet,boot,objective); } case 3: { GetVehicleParamsEx(veh,engine,lights,alarm,doors,bonnet,boot,objective); SetVehicleParamsEx(veh,engine,false,alarm,doors,bonnet,boot,objective); } } } 3. Ко всем командам: if(strcmp(cmd, "/amenu", true) == 0) { new Float: pos[3], Float: radius = 5.0; for(new v = 0; v < MAX_VEHICLES; v++) { GetVehiclePos(v, pos[0], pos[1], pos[2]); if(IsPlayerInRangeOfPoint(playerid, radius, pos[0], pos[1], pos[2])) { SetPVarInt(playerid, "AVTOS", v); ShowPlayerDialog(playerid, DIST_MENU, DIALOG_STYLE_LIST, "{F4ED0D}Дистанционное управление Т/С", "{FA0B0B}1. {FFFFFF}Завести двигатель\n{FA0B0B}2. {FFFFFF}Заглушить двигатель\n{FA0B0B}3. {FFFFFF}Включить фары\n{FA0B0B}4. {FFFFFF}Выключить фары", "Выбрать", ""); break; } } return true; }
  12. Ко всем #define, если у кого небуть нету такого цвета #define COLOR_GREEN 0x33AA33AA Ко всем public В public OnPlayerCommandText(playerid, cmdtext[]){ new nxtlevel = PlayerInfo[playerid][pLevel]+1; new expamount = nxtlevel*levelexp; if (PlayerInfo[playerid][pExp] > expamount) { PlayerInfo[playerid][pLevel]++; PlayerInfo[playerid][pExp] = 1; SendClientMessage(playerid, COLOR_GREEN, "Ваш игровой лвл был автоматически повышен!"); return 1; } Друзья строго не судите! Может кому-то нужно) Автор-(Vlad_Andreev)
  13. Удаляем переменные: new Text:pare[MAX_PLAYERS]; new Text:pare1[MAX_PLAYERS]; new Text:pare2[MAX_PLAYERS]; new CosakTimer[MAX_PLAYERS]; Находим следующий код и УДАЛЯЕМ его: pare1[playerid] = TextDrawCreate(610.800048, 78.406669, "usebox"); TextDrawLetterSize(pare1[playerid], 0.000000, 1.757406); TextDrawTextSize(pare1[playerid], 495.599975, 0.000000); TextDrawAlignment(pare1[playerid], 1); TextDrawColor(pare1[playerid], 0); TextDrawUseBox(pare1[playerid], true); TextDrawBoxColor(pare1[playerid], 102); TextDrawSetShadow(pare1[playerid], 0); TextDrawSetOutline(pare1[playerid], 0); TextDrawFont(pare1[playerid], 0); pare2[playerid] = TextDrawCreate(610.000061, 79.153335, "usebox"); TextDrawLetterSize(pare2[playerid], 0.000000, 1.674443); TextDrawTextSize(pare2[playerid], 496.400115, 0.000000); TextDrawAlignment(pare2[playerid], 1); TextDrawColor(pare2[playerid], 0); TextDrawUseBox(pare2[playerid], true); TextDrawBoxColor(pare2[playerid], 102); TextDrawSetShadow(pare2[playerid], 0); TextDrawSetOutline(pare2[playerid], 0); TextDrawFont(pare2[playerid], 0); pare[playerid] = TextDrawCreate(500.000152, 75.413314, "P_00000000"); TextDrawLetterSize(pare[playerid], 0.511600, 2.376532); TextDrawTextSize(pare[playerid], 122.399986, 25.386663); TextDrawAlignment(pare[playerid], 1); TextDrawColor(pare[playerid], 8388863); TextDrawSetShadow(pare[playerid], 0); TextDrawSetOutline(pare[playerid], 1); TextDrawBackgroundColor(pare[playerid], 255); TextDrawFont(pare[playerid], 3); TextDrawSetProportional(pare[playerid], 1); Находим следующую строку и УДАЛЯЕМ ее: CosakTimer[playerid]=SetTimerEx("Cosak", 800,1,"i", playerid);Находим еще одну строку и УДАЛЯЕМ ее: KillTimer(CosakTimer[playerid]); Находим следующий код и тоже УДАЛЯЕМ его: CALLBACK: Cosak(playerid) { new acc = PlayerInfo[playerid][pMoney]; new string[128]; if(acc > 0) { format(string, sizeof(string), "P_%d", acc); TextDrawSetString(pare[playerid], string); TextDrawShowForPlayer(playerid, pare[playerid]); TextDrawShowForPlayer(playerid, pare1[playerid]); TextDrawShowForPlayer(playerid, pare2[playerid]); } else if(acc < 0) { format(string, sizeof(string), "~r~-P_%d", acc); TextDrawSetString(pare[playerid], string); TextDrawShowForPlayer(playerid, pare[playerid]); TextDrawShowForPlayer(playerid, pare1[playerid]); TextDrawShowForPlayer(playerid, pare2[playerid]); } else if(acc == 0) { format(string, sizeof(string), "P_0"); TextDrawSetString(pare[playerid], string); TextDrawShowForPlayer(playerid, pare[playerid]); TextDrawShowForPlayer(playerid, pare1[playerid]); TextDrawShowForPlayer(playerid, pare2[playerid]); } return 1; } Автор: Amfy Если что-то забыл - дополняйте,пишите в комментарии.
  14. Donald_Record

    Система урона машины

    Всем привет, сегодня я вам покажу как сделать систему: Урона машины. Автор системы: Y.Jeen В начало мода, ко всем new добавляем: new zavodis[MAX_VEHICLES]; new engine,lights,alarm,doors,bonnet,boot,objective; Создаем public OnVehicleDamageStatusUpdate(vehicleid, playerid) и вставляем функцию: public OnVehicleDamageStatusUpdate(vehicleid, playerid) { { GetVehicleParamsEx(vehicleid,engine,lights,alarm,doors,bonnet,boot,objective); SetVehicleParamsEx(vehicleid,false,lights,alarm,doors,bonnet,boot,objective); zavodis[GetPlayerVehicleID(playerid)] = 0; GameTextForPlayer(playerid, "~r~ENGINE OFF", 5000, 6); } return 1; } При столкновении машина вырубается
  15. Доброго времени суток. Написал простейшую функцию получения подсети игрока. Решил поделиться с Вами. Сам использую для дополнительной защиты аккаунтов. Код: stock GetSubNet(playerid) { new network[16]; GetPlayerIp(playerid, network, sizeof(network)); strdel(network, strfind(network, ".", true, 5), 16); return network; } Функция возвращает string значение. Пример использования: В массив с данными игрока: SubNetwork[16], При регистрации: format(pData[playerid][SubNetwork], 16, GetSubNet(playerid)); После того, как игрок залогинился: if(strcmp(pData[playerid][SubNetwork], GetSubNet(playerid))) ShowPlayerDialog(playerid, 1488, DIALOG_STYLE_INPUT, "Введите код доступа", "Вы подключились со стороннего IP-адреса.\nДля получения доступа к аккаунту Вы должны ввести код в поле ниже:", "Далее", "Отмена"); Ко всем диалогам: if(dialogid == 1488) { if(!response) return Kick(playerid);//Кикаем игрока при отказе ввода //Здесь уже сами обрабатываете введенный код, как Вам нужно return true; } Публикация на других ресурсах запрещена.
  16. Predator

    Новый спидометр

    Приветствую всех пользователей портала cr-mp.ru! Очередной готовый спидометр под Gamer. При необходимости измените переменные под свой мод Особенности спидометра: Индикатор поворотников. Индикатор фар Индикатор двигателя Индикатор дверей автомобиля Ну и конечно же бензин, скорость, и полоска скорости. Приступим! Ко всем переменным(приношу извинения что не сделал так: Textdraw[11];) new PlayerText:Textdraw0[MAX_PLAYERS]; new PlayerText:Textdraw1[MAX_PLAYERS]; new PlayerText:Textdraw2[MAX_PLAYERS]; new PlayerText:Textdraw3[MAX_PLAYERS]; new PlayerText:Textdraw41[MAX_PLAYERS]; new PlayerText:Textdraw5[MAX_PLAYERS]; new PlayerText:Textdraw6[MAX_PLAYERS]; new PlayerText:Textdraw7[MAX_PLAYERS]; new PlayerText:Textdraw8[MAX_PLAYERS]; new PlayerText:Textdraw9[MAX_PLAYERS]; new PlayerText:Textdraw10[MAX_PLAYERS]; В OnPlayerConnect: PlayerTextDrawHide(playerid,Textdraw0[playerid]); PlayerTextDrawHide(playerid,Textdraw1[playerid]); PlayerTextDrawHide(playerid,Textdraw2[playerid]); PlayerTextDrawHide(playerid,Textdraw3[playerid]); PlayerTextDrawHide(playerid,Textdraw41[playerid]);PlayerTextDrawHide(playerid,Textdraw5[playerid]);PlayerTextDrawHide(playerid,Textdraw6[playerid]);PlayerTextDrawHide(playerid,Textdraw7[playerid]);PlayerTextDrawHide(playerid,Textdraw8[playerid]);PlayerTextDrawHide(playerid,Textdraw9[playerid]);PlayerTextDrawHide(playerid,Textdraw10[playerid]); Textdraw0[playerid] = CreatePlayerTextDraw(playerid, 637.199951, 346.459991, "usebox"); PlayerTextDrawLetterSize(playerid, Textdraw0[playerid], -0.020799, 6.435197); PlayerTextDrawTextSize(playerid, Textdraw0[playerid], 453.999816, 28.373331); PlayerTextDrawAlignment(playerid, Textdraw0[playerid], 1); PlayerTextDrawColor(playerid, Textdraw0[playerid], 0); PlayerTextDrawUseBox(playerid, Textdraw0[playerid], true); PlayerTextDrawBoxColor(playerid, Textdraw0[playerid], 102); PlayerTextDrawSetShadow(playerid, Textdraw0[playerid], 0); PlayerTextDrawSetOutline(playerid, Textdraw0[playerid], 0); PlayerTextDrawFont(playerid, Textdraw0[playerid], 0); Textdraw1[playerid] = CreatePlayerTextDraw(playerid, 507.999816, 348.693206, "46 KM/H"); PlayerTextDrawLetterSize(playerid, Textdraw1[playerid], 0.449999, 1.600000); 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], 2); PlayerTextDrawSetProportional(playerid, Textdraw1[playerid], 1); Textdraw2[playerid] = CreatePlayerTextDraw(playerid, 476.000183, 368.853088, "IIIIIIIIIIIIIIIIIIIIIIIIIIIIIII"); PlayerTextDrawLetterSize(playerid, Textdraw2[playerid], 0.449999, 1.600000); PlayerTextDrawAlignment(playerid, Textdraw2[playerid], 1); PlayerTextDrawColor(playerid, Textdraw2[playerid], -2139062017); 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); Textdraw3[playerid] = CreatePlayerTextDraw(playerid, 464.800079, 409.173278, "ВЃAPВ‘"); PlayerTextDrawLetterSize(playerid, Textdraw3[playerid], 0.296400, 1.876266); PlayerTextDrawAlignment(playerid, Textdraw3[playerid], 1); PlayerTextDrawColor(playerid, Textdraw3[playerid], -1); PlayerTextDrawSetShadow(playerid, Textdraw3[playerid], 0); PlayerTextDrawSetOutline(playerid, Textdraw3[playerid], 1); PlayerTextDrawBackgroundColor(playerid, Textdraw3[playerid], 51); PlayerTextDrawFont(playerid, Textdraw3[playerid], 2); PlayerTextDrawSetProportional(playerid, Textdraw3[playerid], 1); Textdraw41[playerid] = CreatePlayerTextDraw(playerid, 638.000000, 410.673339, "usebox"); PlayerTextDrawLetterSize(playerid, Textdraw41[playerid], 0.000000, 1.674442); PlayerTextDrawTextSize(playerid, Textdraw41[playerid], 454.000000, 0.000000); PlayerTextDrawAlignment(playerid, Textdraw41[playerid], 1); PlayerTextDrawColor(playerid, Textdraw41[playerid], 0); PlayerTextDrawUseBox(playerid, Textdraw41[playerid], true); PlayerTextDrawBoxColor(playerid, Textdraw41[playerid], 102); PlayerTextDrawSetShadow(playerid, Textdraw41[playerid], 0); PlayerTextDrawSetOutline(playerid, Textdraw41[playerid], 0); PlayerTextDrawFont(playerid, Textdraw41[playerid], 0); Textdraw5[playerid] = CreatePlayerTextDraw(playerid, 517.600097, 409.173370, "В€AMOK"); PlayerTextDrawLetterSize(playerid, Textdraw5[playerid], 0.289198, 1.853865); PlayerTextDrawAlignment(playerid, Textdraw5[playerid], 1); PlayerTextDrawColor(playerid, Textdraw5[playerid], -1); PlayerTextDrawSetShadow(playerid, Textdraw5[playerid], 0); PlayerTextDrawSetOutline(playerid, Textdraw5[playerid], 1); PlayerTextDrawBackgroundColor(playerid, Textdraw5[playerid], 51); PlayerTextDrawFont(playerid, Textdraw5[playerid], 2); PlayerTextDrawSetProportional(playerid, Textdraw5[playerid], 1); Textdraw6[playerid] = CreatePlayerTextDraw(playerid, 574.399841, 409.173339, "ВѓBВ…В‚ATE‡’"); PlayerTextDrawLetterSize(playerid, Textdraw6[playerid], 0.226799, 1.921066); PlayerTextDrawAlignment(playerid, Textdraw6[playerid], 1); PlayerTextDrawColor(playerid, Textdraw6[playerid], -1); PlayerTextDrawSetShadow(playerid, Textdraw6[playerid], 0); PlayerTextDrawSetOutline(playerid, Textdraw6[playerid], 1); PlayerTextDrawBackgroundColor(playerid, Textdraw6[playerid], 51); PlayerTextDrawFont(playerid, Textdraw6[playerid], 2); PlayerTextDrawSetProportional(playerid, Textdraw6[playerid], 1); Textdraw7[playerid] = CreatePlayerTextDraw(playerid, 475.199951, 349.439910, "<"); PlayerTextDrawLetterSize(playerid, Textdraw7[playerid], 0.449999, 1.600000); PlayerTextDrawAlignment(playerid, Textdraw7[playerid], 1); PlayerTextDrawColor(playerid, Textdraw7[playerid], -1); PlayerTextDrawSetShadow(playerid, Textdraw7[playerid], 0); PlayerTextDrawSetOutline(playerid, Textdraw7[playerid], 1); PlayerTextDrawBackgroundColor(playerid, Textdraw7[playerid], 51); PlayerTextDrawFont(playerid, Textdraw7[playerid], 1); PlayerTextDrawSetProportional(playerid, Textdraw7[playerid], 1); Textdraw8[playerid] = CreatePlayerTextDraw(playerid, 606.399475, 349.439849, ">"); PlayerTextDrawLetterSize(playerid, Textdraw8[playerid], 0.449999, 1.600000); PlayerTextDrawAlignment(playerid, Textdraw8[playerid], 1); PlayerTextDrawColor(playerid, Textdraw8[playerid], -1); PlayerTextDrawSetShadow(playerid, Textdraw8[playerid], 0); PlayerTextDrawSetOutline(playerid, Textdraw8[playerid], 1); PlayerTextDrawBackgroundColor(playerid, Textdraw8[playerid], 51); PlayerTextDrawFont(playerid, Textdraw8[playerid], 1); PlayerTextDrawSetProportional(playerid, Textdraw8[playerid], 1); Textdraw9[playerid] = CreatePlayerTextDraw(playerid, 476.000152, 368.853515, "IIIIIIIIIIIIIIIIIIIIIIIIIIIIIII"); PlayerTextDrawLetterSize(playerid, Textdraw9[playerid], 0.449999, 1.600000); PlayerTextDrawAlignment(playerid, Textdraw9[playerid], 1); PlayerTextDrawColor(playerid, Textdraw9[playerid], -1); PlayerTextDrawSetShadow(playerid, Textdraw9[playerid], 0); PlayerTextDrawSetOutline(playerid, Textdraw9[playerid], 1); PlayerTextDrawBackgroundColor(playerid, Textdraw9[playerid], 51); PlayerTextDrawFont(playerid, Textdraw9[playerid], 1); PlayerTextDrawSetProportional(playerid, Textdraw9[playerid], 1); Textdraw10[playerid] = CreatePlayerTextDraw(playerid, 463.199920, 386.773376, "TOŒ‡…BO:"); PlayerTextDrawLetterSize(playerid, Textdraw10[playerid], 0.449999, 1.600000); PlayerTextDrawAlignment(playerid, Textdraw10[playerid], 1); PlayerTextDrawColor(playerid, Textdraw10[playerid], -1); PlayerTextDrawSetShadow(playerid, Textdraw10[playerid], 0); PlayerTextDrawSetOutline(playerid, Textdraw10[playerid], 1); PlayerTextDrawBackgroundColor(playerid, Textdraw10[playerid], 51); PlayerTextDrawFont(playerid, Textdraw10[playerid], 2); PlayerTextDrawSetProportional(playerid, Textdraw10[playerid], 1); В OnPlayerDisconnect: PlayerTextDrawDestroy(playerid,Textdraw0[playerid]); PlayerTextDrawDestroy(playerid,Textdraw1[playerid]); PlayerTextDrawDestroy(playerid,Textdraw2[playerid]); PlayerTextDrawDestroy(playerid,Textdraw3[playerid]); PlayerTextDrawDestroy(playerid,Textdraw41[playerid]);PlayerTextDrawDestroy(playerid,Textdraw5[playerid]);PlayerTextDrawDestroy(playerid,Textdraw6[playerid]);PlayerTextDrawDestroy(playerid,Textdraw7[playerid]);PlayerTextDrawDestroy(playerid,Textdraw8[playerid]);PlayerTextDrawDestroy(playerid,Textdraw9[playerid]);PlayerTextDrawDestroy(playerid,Textdraw10[playerid]); В Конец мода: CALLBACK: SpeedoUpdate() { foreach(Player,i) { if(IsPlayerConnected(i) && IsPlayerInAnyVehicle(i)) { new string[50],status[32],statusL[32],Left[32],Right[32],statusD[32],vehicleid = GetPlayerVehicleID(i); if(VehicleInfo[vehicleid][pEngineStatus] == 1) status = "~g~ѓB…‚ATE‡’";//Двигатель else status = "~w~ѓB…‚ATE‡’"; if(VehicleInfo[vehicleid][pLightsStatus] == 1) statusL = "~b~ЃAP‘";//Фары else statusL = "~w~ЃAP‘"; if(CarInfo[GetRealID(vehicleid)][cLock] == 1) statusD = "~y~€AMOK"; else statusD = "~w~€AMOK"; if(VehInfo[vehicleid][vLeftBlink] == 0) Left = "~w~<"; else Left = "~y~<"; if(VehInfo[vehicleid][vRightBlink] == 0) Right = "~w~>"; else Right = "~y~>"; PlayerTextDrawShow(i,Textdraw0[i]); PlayerTextDrawShow(i,Textdraw1[i]); PlayerTextDrawShow(i,Textdraw2[i]); PlayerTextDrawShow(i,Textdraw3[i]); PlayerTextDrawShow(i,Textdraw41[i]);PlayerTextDrawShow(i,Textdraw5[i]);PlayerTextDrawShow(i,Textdraw6[i]);PlayerTextDrawShow(i,Textdraw7[i]);PlayerTextDrawShow(i,Textdraw8[i]);PlayerTextDrawShow(i,Textdraw9[i]);PlayerTextDrawShow(i,Textdraw10[i]); format(string,sizeof(string),"%d KM/H",GetPlayerSpeed(i));//Скорость PlayerTextDrawSetString(i,Textdraw1[i],string); format(string,sizeof(string),"TOЊ‡…BO: %d ‡.",Gas[vehicleid]);//Бензин PlayerTextDrawSetString(i,Textdraw10[i],string); format(string,sizeof(string),"%s",status); PlayerTextDrawSetString(i,Textdraw6[i],string); format(string,sizeof(string),"%s",statusL); PlayerTextDrawSetString(i,Textdraw3[i],string); format(string,sizeof(string),"%s",statusD); PlayerTextDrawSetString(i,Textdraw5[i],string); format(string,sizeof(string),"%s",Left); PlayerTextDrawSetString(i,Textdraw7[i],string); format(string,sizeof(string),"%s",Right); PlayerTextDrawSetString(i,Textdraw8[i],string); switch(SpeedVehicle(i)){ case 0..1: PlayerTextDrawSetString(i,Textdraw9[i], "~w~"); case 2..10: PlayerTextDrawSetString(i,Textdraw9[i], "~w~II"); case 11..20: PlayerTextDrawSetString(i,Textdraw9[i], "~w~III"); case 21..30: PlayerTextDrawSetString(i,Textdraw9[i], "~w~IIIII"); case 31..40: PlayerTextDrawSetString(i,Textdraw9[i], "~w~IIIIIIII"); case 41..50: PlayerTextDrawSetString(i,Textdraw9[i], "~w~IIIIIIIII"); case 51..60: PlayerTextDrawSetString(i,Textdraw9[i], "~w~IIIIIIIIIIII"); case 61..70: PlayerTextDrawSetString(i,Textdraw9[i], "~w~IIIIIIIIIIIIII"); case 71..80: PlayerTextDrawSetString(i,Textdraw9[i], "~w~IIIIIIIIIIIIIIII"); case 81..90: PlayerTextDrawSetString(i,Textdraw9[i], "~w~IIIIIIIIIIIIIIIIIII"); case 91..120: PlayerTextDrawSetString(i,Textdraw9[i],"~w~IIIIIIIIIIIIIIIIIIIIII"); default: PlayerTextDrawSetString(i,Textdraw9[i], "~w~IIIIIIIIIIIIIIIIIIIIIIIIIIIIIII");} } if(!IsPlayerInAnyVehicle(i)) { PlayerTextDrawHide(i,Textdraw0[i]); PlayerTextDrawHide(i,Textdraw1[i]); PlayerTextDrawHide(i,Textdraw2[i]); PlayerTextDrawHide(i,Textdraw3[i]); PlayerTextDrawHide(i,Textdraw41[i]);PlayerTextDrawHide(i,Textdraw5[i]); PlayerTextDrawHide(i,Textdraw6[i]);PlayerTextDrawHide(i,Textdraw7[i]);PlayerTextDrawHide(i,Textdraw8[i]);PlayerTextDrawHide(i,Textdraw9[i]);PlayerTextDrawHide(i,Textdraw10[i]); } } return true; } В OnGameModeinit: SetTimer("SpeedoUpdate",100,1); Если будет ругаться на SpeedVehicle, то добавим сток в конец мода: stock SpeedVehicle(playerid, bool:return_km=true) { new Float:x, Float:y, Float:z; if(IsPlayerInAnyVehicle(playerid)) { new veh = GetPlayerVehicleID(playerid); GetVehicleVelocity(veh, x, y, z); }else GetPlayerVelocity(playerid, x, y, z); return return_km?floatround(floatsqroot(x*x+y*y+z*z)*195):floatround(floatsqroot(x*x+y*y+z*z)*121); } Автор: Predator( т.е. я ). Выкладывать на сторонние ресурсы запрещено категорически! P.S. Если возникнут вопросы/проблемы, задавайте их к эту тему, а не создавайте новые.
  17. tw1x

    Красивый TextDraw

    Всем привет!Вот сделал TextDraw для своего сервера,но он мне не пригодился.Скидаю исходник и .pwn файл.
  18. Вообщем давно писал функцию мигалок с сохранением , продажей , покупкой , смещением позиций , подобную как на urm , но до конца не доделал возможно позже сделаю. А пока версия что я сделал. Напоминаю только для системы авто game или же сами переделаетеenu В enum carinfo добавим переменную cMiglo, дальше в stock loadcar ini_getInteger(iniOpen, "cMiglo", CarInfo[car][cMiglo]); // отвечает за загрузку . Дальше идем stock savecar и вставляем ini_setInteger(iniOpen, "cMiglo", CarInfo[car][cMiglo]); // отвечает за сохранение при покупке и продаже . Теперь нам надо чтоб мигалка обновлялась значить в stock CreateCar(car) впишем ini_setInteger(iniOpen, "cMiglo", CarInfo[car][cMiglo]); // обновляем мигалку если она . И так половина сделана теперь нам надо сделать проверку на авто , в самый конец добавляем сток stock ProverkaMigla(carid){new model = GetVehicleModel(carid);////////////////////////Все херня////////////////////////////if( model==592||model==577||model==511||model==512||model==593||model==520||model==553||model==476||model==519||model==460||model==513||model==548||model==425||model==417||model==487||model==488||model==497||model==563||model==447||model==509||model==481||model==510||model==462||model==448||model==581||model==522||model==461||model==521||model==523||model==463||model==586||model==468||model==471||model==523||model==416||model==433||model==431||model==438||model==437||model==416||model==433||model==431||model==438||model==437||model==427||model==490||model==528||model==407||model==544||model==596||model==598||model==597||model==599||model==432||model==601||model==420||model==472||model==473||model==493||model==595||model==484||model==430||model==453||model==452||model==446||model==454||model==406||model==409||model==423||model==428||model==434||model==435||model==441||model==442||model==449||model==450||model==457||model==464||model==465||model==483||model==485||model==486||model==501||model==508||model==525||model==530||model==532||model==537||model==538||model==539||model==545||model==564||model==569||model==570||model==571||model==572||model==574||model==583||model==584||model==588||model==590||model==591||model==594||model==606||model==607||model==608||model==610||model==611||model==604||model==462||model==568||model==573||model==578||model==582||model==605||model==609||model==403||model==406||model==408||model==413||model==414||model==418||model==418||model==440||model==444||model==455||model==456||model==459||model==470||model==478||model==482||model==498||model==499||model==514||model==515||model==515||model==531||model==552){return true;}return false;} и так остались команды приступим. в Public OnplayerCommand добавляем if(strcmp("/migla", cmdtext, true, 10) == 0){new v = GetPlayerVehicleID(playerid);new cars = GetPlayerVehicleID(playerid);if(GetRealID(v) == -1) return SendClientMessage(playerid, COLOR_GRAD2, "Вы должны быть в своём автомобиле");if(CarInfo[v][cMiglo] == 0) return SendClientMessage(playerid, COLOR_RED, "У вас нету мигалки");SendClientMessage(playerid, COLOR_RED, "Вы поставили мигалку на крышу");migalka[cars] = CreateObject(18646, 0, 0, 0, 0, 0, 0);AttachObjectToVehicle(migalka[cars],v, 0.009999, -0.019999, 0.944999, 0.000000, 0.000000, 0.000000);return 1;}if (strcmp("/miglaoff", cmdtext, true, 10) == 0){new cars = GetPlayerVehicleID(playerid);DestroyObject(migalka[cars]);return 1;}//------------------------------------------------------------------------------if(strcmp(cmdtext, "/buymiglo", true)==0){new cars = GetPlayerVehicleID(playerid);if(GetRealID(cars) == -1) return SendClientMessage(playerid, COLOR_GRAD2, "Вы не в своем авто");if(ProverkaMigla(cars)) return SendClientMessage(playerid, 0xF6CB00AA, "На этот транспорт мигалка не предусмотрена");if(CarInfo[cars][cMiglo] == 1) return SendClientMessage(playerid, COLOR_RED, "У вас уже есть мигалка");GiveMoney(playerid,-1500);CarInfo[cars][cMiglo] = 1;SendClientMessage(playerid, COLOR_RED, "Вы купили себе мигалку");return 1;}if(strcmp(cmdtext, "/sellmiglo", true)==0){new cars = GetPlayerVehicleID(playerid);if(GetRealID(cars) == -1) return SendClientMessage(playerid, COLOR_GRAD2, "Вы не в своем авто");if(NenadoLustru(cars)) return SendClientMessage(playerid, 0xF6CB00AA, "На этот транспорт мигалка не предусмотрен");if(CarInfo[cars][cMiglo] == 0) return SendClientMessage(playerid, COLOR_RED, "У вас нет мигалки");GiveMoney(playerid,1500);CarInfo[cars][cMiglo] = 0;SendClientMessage(playerid, COLOR_RED, "Вы успешно продали мигалку");return 1;}if(strcmp(cmd, "/setmigla", true) == 0){if(IsPlayerInAnyVehicle(playerid)){tmp = strtok(cmdtext, idx);if(!strlen(tmp)){SendClientMessage(playerid, COLOR_WHITE, "Введите: /setmigla [X] [Y] [Z]");return 1;}tmp = strtok(cmdtext, idx);new koordx;koordx = strval(tmp);tmp = strtok(cmdtext, idx);new koordy;koordy = strval(tmp);tmp = strtok(cmdtext, idx);new koordz;koordz = strval(tmp);new cars = GetPlayerVehicleID(playerid);DestroyObject(migalka[cars]);new carid = GetPlayerVehicleID(playerid);migalka[cars] = CreateObject(18646,0,0,0,0,0,0,0.0);AttachObjectToVehicle(migalka[cars],carid,koordx,koordy,koordz, 0.0, 0.0, 0.0);return 1;}} вот собственно и все , в следующее версий если буду делать то сделаю , сохранение статуса мигалки , то есть если вы включили и произошел рестарт то она будет создана после рестарта и включена как и было и также аналагично выключена. И еще сохранение места позиций , ну а пока вот держите.Автор: Я( Komendant) P.s в следующее версий оптимизирую некоторые стоки и коды.
  19. TrollFace

    Система больницы.

    Здравствуйте, дорогие пользователи портала! Видел очень много уроков по системе "больничных коек", но ни один из них толковым не был. Итак, начнем! Писаться будет на MxINI, так же в помощь будет взят inc и pl CRP поэтому, у кого нет, пишем: #include <MxINI>//в начало мода, подключит инклуд для записи в файл#include <CRP>//русификатор текстдравов и еще много чегоТак же через server.cfg необходимо подключить плагин CRP. Далее. Нам ведь нужно куда-то записывать значение оставшегося времени? Верно. Поэтому в enum pInfo добавим pBolTime,pBolТам, где у вас в моде расположено сохранение аккаунтов, добавляем строчку: ini_setInteger(iniFile,"BolTime", PlayerInfo[i][pBolTime]);//вместо i может быть playerid и т.п.Это запись в файл новой переменной. Идем далее - разберемся с выгрузкой. Там, где у Вас в моде расположена загрузка аккаунта из файла, добавляем следующее: ini_getInteger(iniFile,"BolTime", PlayerInfo[playerid][pBolTime]);Это загрузка переменной при входе игрока. Смысл очень прост: если переменная больше нуля, то "сажаем" игрока в больницу на время, равное этой переменной. Теперь, пожалуй, создадим текстдрав оставшегося времени: 1. Объявим переменную: new Text:Bol[MAX_PLAYERS];2. Создадим сам текстдрав в OnPlayerConnect: Bol[playerid] = TextDrawCreate(273.000000, 423.000000, "Ostalos: %d");//текстдрав с координатамиTextDrawAlignment(Bol[playerid], 2);TextDrawBackgroundColor(Bol[playerid], 255);TextDrawFont(Bol[playerid], 3);//обводкаTextDrawLetterSize(Bol[playerid], 0.639999, 2.000000);//размерTextDrawColor(Bol[playerid], -65281);//цветTextDrawSetOutline(Bol[playerid], 1);TextDrawSetProportional(Bol[playerid], 1);Идем далее. Сделаем так, что игрок будет "посажен" при смерти. В этом нам поможет public OnPlayerDeath. Вставляем код следующего вида: PlayerInfo[playerid][pBol] = 1;PlayerInfo[playerid][pBolTime] = 180;//время, в секундах, сколько игроку лежать в больниеSetPlayerPos(playerid, x, y, z);//изменение позиции, координаты ставим своиSendClientMessage(playerid, COLOR_RED, "Вы попали в больницу.");//выводим сообщениеTextDrawShowForPlayer(playerid, Bol[playerid]);//показываем текстдравИтак. Теперь переходим к самой главной части - секундный каллбэк. Вo многих модах он называется SetPlayerUnjail. Вставляем туда следующее(после цикла на всех игроков): new string4[64];if(PlayerInfo[i][pBol] >= 1){if(PlayerInfo[i][pBolTime] >= 1)//если время еще осталось, то:{PlayerInfo[i][pBolTime] = PlayerInfo[i][pBolTime] - 1;//отнимем 1 секундуformat(string4, sizeof(string4), "Осталось: %d", PlayerInfo[i][pBolTime]);//отформатируем текстдравTextDrawSetString(Bol[i], string4);//обновим текстдрав}else if(PlayerInfo[i][pBolTime] <= 0)//если время прошло{SendClientMessage(i,COLOR_DARK,"Вас выписали из больницы");//отправим сообщениеSetPlayerPos(i, -1705.599609375, -2806.69921875, 13.89);//изменим координаты, делайте своиSetPlayerInterior(i,0);TextDrawHideForPlayer(i, Bol[i]);//скроем текстдрав}}А как быть с тем, если игрок перезайдет? В public OnPlayerSpawn( или же SetPlayerSpawn ): if(PlayerInfo[playerid][pBolTime] >= 1){SendClientMessage(playerid,COLOR_LIGHTBLUE,"Вы находитесь в больнице");TextDrawShowForPlayer(playerid, Bol[playerid]);//покажем текстдравSetPlayerPos(playerid,-1817.8000488281,-2858.3999023438,13.89);// свои координатыPlayerInfo[playerid][pBol] = 1;return 1;}И еще - скрины: Удачи.
  20. Denisz

    Система /radio

    Начну с того, что написал всё через DC_CMD и switch, это не так сложно Начинаем с команды непосредственно /radio. CMD:radio(playerid,params[]) { ShowPlayerDialog(playerid,150,DIALOG_STYLE_LIST,"Включить радио","[1] Europa Plus\n[2] Radio Record\n[3] Radio PremiuM\n[4] Radio ZaycevFM\n","Выбрать","Отмена"); } Этим действием мы: Создаём команду, и при её вводе показываем игроку (playerid) диалог в стиле "LIST" и ID диалога, после называем диалог "Включить радио" и расписываем все радио, которые хотим видеть в нашем диалоге.(В моём случае это: "[1] Europa Plus\n[2] Radio Record\n[3] Radio PremiuM\n[4] Radio ZaycevFM\n") P.S.\n - разделяет наши радио.Последнее кнопки, у меня "Выбрать" и "Отмена".С этим разобрались, идём далее. В OnDialogResponse пишем: switch(dialogid) { case 150: { switch(listitem) { case 1: PlayAudioStreamForPlayer(playerid,"http://www.europaplus.ru/online/player.php?q=128"); case 2: PlayAudioStreamForPlayer(playerid,"http://radiorecord.ru:9000/record.ogg.m3u"); case 3: PlayAudioStreamForPlayer(playerid,"http://listen.rpfm.ru:9000/premium128"); case 4: PlayAudioStreamForPlayer(playerid,"http://radio.zaycev.fm:9002/ZaycevFM"); } SendClientMessage(playerid,COLOR_LIGHT,"Вы включили радио и надели наушники.Для выключения используйте команду /stopradio"); SetPlayerAttachedObject(playerid, 3, 19424, 2,0.05,0.0,0.0,90.0,360.0,270.0); return 1; } } Я думаю вы сможете найти про "Switch" и "Case" в другом уроке... В общем: Мы создаём case: и вводим в него все действия, которые хотим сделать, по тому же принципу я писал /anim. После мы пишем игроку что он включил радио, и накидываем на него наушники(Их координаты взял от куда то, это не сам к сожалению...). И ещё одна команда: CMD:radiostop(playerid,params[]) { if(!IsValidObject(3)) return SendClientMessage(playerid,COLOR_LIGHT,"Вы не включали радио"); RemovePlayerAttachedObject(playerid, 3); StopAudioStreamForPlayer(playerid); SendClientMessage(playerid,COLOR_LIGHT,"Вы сняли наушники и выключил плеер."); return 1; } Автор:Daniel Shormus
  21. Ко всем #define: #define MAX_MONEY 500 К enum: enum DMONEY_INFO { dID, // ID Float:dPos[3], // Позиция dMoney, // Сколько денег dVirtualWorld, // Виртуальный мир dInterior, // Интерьер Text3D:dLabel // 3D текст }; new Dmoney[MAX_MONEY][DMONEY_INFO]; Добавим команды: /drop CMD:drop(playerid) { if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, 0xAFAFAFAA, "Вы находитесь в транспорте."); ShowPlayerDialog(playerid, 18, DIALOG_STYLE_INPUT, "{FAFAD2}Деньги", "{FFFFFF}Сколько денег вы хотите выбросить?", "Выбросить", "Отмена"); return 1; } /take CMD:take(playerid) { if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid, 0xAFAFAFAA, "Вы находитесь в транспорте."); for(new g; g != MAX_MONEY; g++) { if(!IsPlayerInRangeOfPoint(playerid, 1.0, Dmoney[g][dPos][0], Dmoney[g][dPos][1], Dmoney[g][dPos][2])) continue; if(g > MAX_MONEY) return SendClientMessage(playerid, 0xAFAFAFAA, "Вы не можете подобрать деньги. Превышен максимальный лимит."); ApplyAnimation(playerid, "BOMBER", "BOM_Plant", 4.0, 0, 0, 0, 0, 0); DestroyDynamicObject(Dmoney[g][dID]); DestroyDynamic3DTextLabel(Dmoney[g][dLabel]); GivePlayerMoney(playerid, Dmoney[g][dMoney]); new m_string[256]; format(m_string, sizeof(m_string), "Вы подобрали %d$.", Dmoney[g][dMoney]); SendClientMessage(playerid, 0xFFA500AA, m_string); format(m_string, sizeof(m_string), "Подобрал %d$", Dmoney[g][dMoney]); SetPlayerChatBubble(playerid, m_string, 0xFF9900AA, 5.0, 3000); Dmoney[g][dID] = -1; Dmoney[g][dPos][0] = 0.0; Dmoney[g][dPos][1] = 0.0; Dmoney[g][dPos][2] = 0.0; Dmoney[g][dMoney] = -1; Dmoney[g][dVirtualWorld] = -1; Dmoney[g][dInterior] = -1; break; } return 1; } В public OnDialogResponse добавить следующее: case 18: { if(!response) return true; if(!strlen(inputtext)) return ShowPlayerDialog(playerid, 18, DIALOG_STYLE_INPUT, "{FAFAD2}Деньги", "{FFFFFF}Сколько денег вы хотите выбросить?", "Выбросить", "Отмена"); if(strval(inputtext) < 1 || strval(inputtext) > 100000) return ShowPlayerDialog(playerid, 18, DIALOG_STYLE_MSGBOX, "{FAFAD2}Ошибка", "{FF0000}Минимально 1$, максимально 100000$.", "Повтор", ""); if(GetPlayerMoney(playerid) < strval(inputtext)) return SendClientMessage(playerid, 0xAFAFAFAA, "Вы не имеете при себе столько денег."); for(new m; m != MAX_MONEY; m++) { if(m > MAX_MONEY) return SendClientMessage(playerid, 0xAFAFAFAA, "Вы не можете выбросить деньги. Превышен максимальный лимит."); GivePlayerMoney(playerid, -strval(inputtext)); ApplyAnimation(playerid, "BOMBER", "BOM_Plant", 4.0, 0, 0, 0, 0, 0); GetPlayerPos(playerid, Dmoney[m][dPos][0], Dmoney[m][dPos][1], Dmoney[m][dPos][2]); Dmoney[m][dMoney] = strval(inputtext); Dmoney[m][dVirtualWorld] = GetPlayerVirtualWorld(playerid); Dmoney[m][dInterior] = GetPlayerInterior(playerid); new m_string[256]; Dmoney[m][dID] = CreateDynamicObject(1212, Dmoney[m][dPos][0], Dmoney[m][dPos][1], Dmoney[m][dPos][2]-1, 93.7, 120.0, 120.0, Dmoney[m][dVirtualWorld], Dmoney[m][dInterior], -1, 300.0); format(m_string, sizeof(m_string), "%d$.\n{00A86B}Введите: /take", Dmoney[m][dMoney]); Dmoney[m][dLabel] = CreateDynamic3DTextLabel(m_string, 0xFFFF00AA, Dmoney[m][dPos][0], Dmoney[m][dPos][1], Dmoney[m][dPos][2], 5.0, INVALID_PLAYER_ID, INVALID_VEHICLE_ID, 0, Dmoney[m][dVirtualWorld], Dmoney[m][dInterior], -1, 100.0); format(m_string, sizeof(m_string), "Вы выбросили %d$.", Dmoney[m][dMoney]); SendClientMessage(playerid, 0xFFA500AA, m_string); format(m_string, sizeof(m_string), "Выбросил %d$", Dmoney[m][dMoney]); SetPlayerChatBubble(playerid, m_string, 0xFF9900AA, 5.0, 3000); break; } } Внимание! 1. Чтобы редактировать количество объектов, измените число MAX_MONEY. 2. Измените ID диалога (18) на свой пустой. Автор: Botan().
  22. #Bazuka

    Система голода

    Привет всем ИНФОРМАЦИЯ!: Хочу предоставить систему голода,но можно делать не на include... И не надо говорить,что у меня нечего не получается (Я ЛИЧНО проверил на трех модах и работает всё отлично проверял на сервере Домик в деревне,Gamer и еще какой-то там) Система для RolePlay(25%) and Drift и.т.д Для новичков нормально,для профи/любителя простая и не очень нужная,но можно сделать и лучше Автор: Неизвестно (Не было указано),но работу выложил 'Dmitriy' Автор доработки: Я (Artem_Balaxnin) Суть доработки: 1.Player использовал данный пользователь,но у многих стоит 'PlayerInfo' 2.Скриншот (Просто для удобство как бы обновил,что данная система или же мануал в рабочем состоянии) 3.Добавил полностью сохранение 4.Оптимизировал код ================== Скоро сделаю новую,но уже мою без include,более нормальный TexDraw,без всяких таймеров + готовое к примеру в ресторане для пополнение HP и лайки. Начнем: Сначала качаем сам Include https://yadi.sk/d/k50H6sIsqMphD Ко всем #include #include <progress> Ко всем #define #define W "{f9d968}" Цвет можно и заменить на свой Цвета: http://chatpages.ru/chat/color/color.html Ко всем fowrad forward Golodtime(); Ко всем переменным ( new ) new golods[MAX_PLAYERS]; new Bar:GolodBar[MAX_PLAYERS]; К массивом pinfo добавляем (Лучше всего добавляйте в самый конец): Потом объясню как нибудь pGolod, В public OnPlayerConnect(playerid) или просто OnPlayerConnect (Смотря какой мод) PlayerInfo[playerid][pGolod] = 100; GolodBar[playerid] = CreateProgressBar(499.00, 103.00, 106.50, 4.19, -10079233, 100.0); ShowProgressBarForPlayer(playerid, GolodBar[playerid]); В public OnPlayerDeath(playerid, killerid, reason) PlayerInfo[playerid][pGolod] = 50; SetProgressBarValue(GolodBar[playerid], PlayerInfo[playerid][pGolod]); UpdateProgressBar(GolodBar[playerid], playerid); В public OnGameModeInit() (Время на -1 единицу можно изменить если хотите) SetTimer("Golodtime",1000*60,true); В конец мода public Golodtime() { for(new i = 0; i < MAX_PLAYERS; i++) { if(golods[i] == 30) { switch(PlayerInfo[i][pGolod]) { case 30: SendClientMessage(i, COLOR_WHITE, ""W"[Предупреждение]{FFFFFF}Ваш голод состовляет "W"30{ffffff} процентов.Перекусите или вы попадете в больницу."); case 15: SendClientMessage(i, COLOR_WHITE, ""W"[Предупреждение]{FFFFFF}Ваш голод состовляет "W"15{ffffff} процентов.Перекусите или вы попадете в больницу."); case 10: SendClientMessage(i, COLOR_WHITE, ""W"[Предупреждение]{FFFFFF}Ваш голод состовляет "W"10{ffffff} процентов.Перекусите или вы попадете в больницу."); case 5: SendClientMessage(i, COLOR_WHITE, ""W"[Предупреждение]{FFFFFF}Ваш голод состовляет "W"5{ffffff} процентов.Перекусите или вы попадете в больницу."); } if(PlayerInfo[i][pGolod] <= 0) SetPlayerHealth(i, 0); PlayerInfo[i][pGolod] -= 1; SetProgressBarValue(GolodBar[i], PlayerInfo[i][pGolod]); UpdateProgressBar(GolodBar[i], i); golods[i] = 0; } else golods[i]++; } return true; } В public OnPlayerRename(name[],string[],playerid) format(var, 32, "GOLOD=%d\n",PlayerInfo[playerid][pGolod]);fwrite(hFile, var); или ini_getInteger(GetFile, "GOLOD", PlayerInfo[playerid][pGolod]); В public OnPlayerRegister(playerid, password[]) ini_getInteger(GetFile, "GOLOD", PlayerInfo[playerid][pGolod]); ИЛИ format(var, 32, "GOLOD=%d\n",PlayerInfo[playerid][pGolod]);fwrite(hFile, var); В public OnPlayerUpdate_GF() или public OnPlayerUpdate ini_getInteger(GetFile, "GOLOD", PlayerInfo[playerid][pGolod]); Или format(var, 32, "GOLOD=%d\n",PlayerInfo[playerid][pGolod]);fwrite(hFile, var); В public OnPlayerLoginer(playerid) ini_getInteger(GetFile, "GOLOD", PlayerInfo[playerid][pGolod]); Или if( strcmp( key , "GOLOD" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pGolod] = strval( val ); } В public OnPlayerLogin(playerid,password[]) ini_getInteger(GetFile, "GOLOD", PlayerInfo[playerid][pGolod]); Или if( strcmp( key , "GOLOD" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pGolod] = strval( val ); } P.S: Отредактируйте и добавьте сюда скриншот,если не трудно
  23. Доброго времени суток! Попросили меня сделать такую системку, ну мне не сложно, вся суть, что чтобы получить права нужно сначала сдать экзамен и практику в автошколе, а ВУ уже получить у полицейского. Сделал под Gamer, кому нужно будет, под свой мод заточите. В enum pInfo добавим строчку pLicDostup, Далее, в OnPlayerRegister добавляем это ко всем строчкам такого типа: format(var, 32, "LicDostup=%d\n",PlayerInfo[playerid][pLicDostup]);fwrite(hFile,var);//Доступ к получению прав Ко всем командам добавим:
  24. Всем привет выкладываю свою работу TextDraw menu ко всем new 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; new Text:Textdraw15; new Text:Textdraw16; new Text:Textdraw17; new Text:Textdraw18; new Text:Textdraw19; new Text:Textdraw20; new Text:Textdraw21; new Text:Textdraw22; new Text:Textdraw23; new Text:Textdraw24; new Text:Textdraw25; public OnGameModeInit() Textdraw0 = TextDrawCreate(121.941436, 126.916664, "usebox"); TextDrawLetterSize(Textdraw0, 0.000000, 25.285184); TextDrawTextSize(Textdraw0, 9.244508, 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(121.472915, 126.916664, "usebox"); TextDrawLetterSize(Textdraw1, 0.000000, -0.122222); TextDrawTextSize(Textdraw1, 9.713029, 0.000000); TextDrawAlignment(Textdraw1, 1); TextDrawColor(Textdraw1, 0); TextDrawUseBox(Textdraw1, true); TextDrawBoxColor(Textdraw1, 65535); TextDrawSetShadow(Textdraw1, 0); TextDrawSetOutline(Textdraw1, 0); TextDrawFont(Textdraw1, 0); Textdraw2 = TextDrawCreate(12.775987, 126.916664, "usebox"); TextDrawLetterSize(Textdraw2, 0.000000, 25.285184); TextDrawTextSize(Textdraw2, 12.992679, 0.000000); TextDrawAlignment(Textdraw2, 1); TextDrawColor(Textdraw2, 0); TextDrawUseBox(Textdraw2, true); TextDrawBoxColor(Textdraw2, 65535); TextDrawSetShadow(Textdraw2, 0); TextDrawSetOutline(Textdraw2, 0); TextDrawFont(Textdraw2, 0); Textdraw3 = TextDrawCreate(121.941436, 126.916664, "usebox"); TextDrawLetterSize(Textdraw3, 0.000000, 25.285184); TextDrawTextSize(Textdraw3, 114.661788, 0.000000); TextDrawAlignment(Textdraw3, 1); TextDrawColor(Textdraw3, 0); TextDrawUseBox(Textdraw3, true); TextDrawBoxColor(Textdraw3, 65535); TextDrawSetShadow(Textdraw3, 0); TextDrawSetOutline(Textdraw3, 0); TextDrawFont(Textdraw3, 0); Textdraw4 = TextDrawCreate(121.472915, 353.833312, "usebox"); TextDrawLetterSize(Textdraw4, 0.000000, 0.007409); TextDrawTextSize(Textdraw4, 9.244508, 0.000000); TextDrawAlignment(Textdraw4, 1); TextDrawColor(Textdraw4, 0); TextDrawUseBox(Textdraw4, true); TextDrawBoxColor(Textdraw4, 65535); TextDrawSetShadow(Textdraw4, 0); TextDrawSetOutline(Textdraw4, 0); TextDrawFont(Textdraw4, 0); Textdraw5 = TextDrawCreate(118.193267, 130.416656, "usebox"); TextDrawLetterSize(Textdraw5, 0.000000, 1.951854); TextDrawTextSize(Textdraw5, 12.992679, 0.000000); TextDrawAlignment(Textdraw5, 1); TextDrawColor(Textdraw5, 0); TextDrawUseBox(Textdraw5, true); TextDrawBoxColor(Textdraw5, -1378294017); TextDrawSetShadow(Textdraw5, 0); TextDrawSetOutline(Textdraw5, 0); TextDrawFont(Textdraw5, 0); Textdraw6 = TextDrawCreate(118.193267, 152.583343, "usebox"); TextDrawLetterSize(Textdraw6, 0.000000, 2.729628); TextDrawTextSize(Textdraw6, 12.992679, 0.000000); TextDrawAlignment(Textdraw6, 1); TextDrawColor(Textdraw6, 0); TextDrawUseBox(Textdraw6, true); TextDrawBoxColor(Textdraw6, -1); TextDrawSetShadow(Textdraw6, 0); TextDrawSetOutline(Textdraw6, 0); TextDrawFont(Textdraw6, 0); Textdraw7 = TextDrawCreate(118.193267, 152.000000, "usebox"); TextDrawLetterSize(Textdraw7, 0.000000, -0.187038); TextDrawTextSize(Textdraw7, 12.992679, 0.000000); TextDrawAlignment(Textdraw7, 1); TextDrawColor(Textdraw7, 0); TextDrawUseBox(Textdraw7, true); TextDrawBoxColor(Textdraw7, 255); TextDrawSetShadow(Textdraw7, 0); TextDrawSetOutline(Textdraw7, 0); TextDrawFont(Textdraw7, 0); Textdraw8 = TextDrawCreate(118.193267, 181.750000, "usebox"); TextDrawLetterSize(Textdraw8, 0.000000, -0.187038); TextDrawTextSize(Textdraw8, 12.992679, 0.000000); TextDrawAlignment(Textdraw8, 1); TextDrawColor(Textdraw8, 0); TextDrawUseBox(Textdraw8, true); TextDrawBoxColor(Textdraw8, 255); TextDrawSetShadow(Textdraw8, 0); TextDrawSetOutline(Textdraw8, 0); TextDrawFont(Textdraw8, 0); Textdraw9 = TextDrawCreate(118.193267, 184.666656, "usebox"); TextDrawLetterSize(Textdraw9, 0.000000, 2.340742); TextDrawTextSize(Textdraw9, 12.992679, 0.000000); TextDrawAlignment(Textdraw9, 1); TextDrawColor(Textdraw9, 0); TextDrawUseBox(Textdraw9, true); TextDrawBoxColor(Textdraw9, -1); TextDrawSetShadow(Textdraw9, 0); TextDrawSetOutline(Textdraw9, 0); TextDrawFont(Textdraw9, 0); Textdraw10 = TextDrawCreate(118.193267, 210.333343, "usebox"); TextDrawLetterSize(Textdraw10, 0.000000, -0.187038); TextDrawTextSize(Textdraw10, 12.992679, 0.000000); TextDrawAlignment(Textdraw10, 1); TextDrawColor(Textdraw10, 0); TextDrawUseBox(Textdraw10, true); TextDrawBoxColor(Textdraw10, 255); TextDrawSetShadow(Textdraw10, 0); TextDrawSetOutline(Textdraw10, 0); TextDrawFont(Textdraw10, 0); Textdraw11 = TextDrawCreate(118.193267, 213.250000, "usebox"); TextDrawLetterSize(Textdraw11, 0.000000, 11.674077); TextDrawTextSize(Textdraw11, 12.992679, 0.000000); TextDrawAlignment(Textdraw11, 1); TextDrawColor(Textdraw11, 0); TextDrawUseBox(Textdraw11, true); TextDrawBoxColor(Textdraw11, -1); TextDrawSetShadow(Textdraw11, 0); TextDrawSetOutline(Textdraw11, 0); TextDrawFont(Textdraw11, 0); Textdraw12 = TextDrawCreate(118.193267, 238.333328, "usebox"); TextDrawLetterSize(Textdraw12, 0.000000, -0.187036); TextDrawTextSize(Textdraw12, 12.992679, 0.000000); TextDrawAlignment(Textdraw12, 1); TextDrawColor(Textdraw12, 0); TextDrawUseBox(Textdraw12, true); TextDrawBoxColor(Textdraw12, 255); TextDrawSetShadow(Textdraw12, 0); TextDrawSetOutline(Textdraw12, 0); TextDrawFont(Textdraw12, 0); Textdraw13 = TextDrawCreate(118.193267, 265.166687, "usebox"); TextDrawLetterSize(Textdraw13, 0.000000, -0.187041); TextDrawTextSize(Textdraw13, 12.992679, 0.000000); TextDrawAlignment(Textdraw13, 1); TextDrawColor(Textdraw13, 0); TextDrawUseBox(Textdraw13, true); TextDrawBoxColor(Textdraw13, 255); TextDrawSetShadow(Textdraw13, 0); TextDrawSetOutline(Textdraw13, 0); TextDrawFont(Textdraw13, 3); Textdraw14 = TextDrawCreate(118.193267, 295.500000, "usebox"); TextDrawLetterSize(Textdraw14, 0.000000, -0.187034); TextDrawTextSize(Textdraw14, 12.524158, 0.000000); TextDrawAlignment(Textdraw14, 1); TextDrawColor(Textdraw14, 0); TextDrawUseBox(Textdraw14, true); TextDrawBoxColor(Textdraw14, 255); TextDrawSetShadow(Textdraw14, 0); TextDrawSetOutline(Textdraw14, 0); TextDrawFont(Textdraw14, 0); Textdraw15 = TextDrawCreate(118.193267, 322.916687, "usebox"); TextDrawLetterSize(Textdraw15, 0.000000, -0.187041); TextDrawTextSize(Textdraw15, 12.992679, 0.000000); TextDrawAlignment(Textdraw15, 1); TextDrawColor(Textdraw15, 0); TextDrawUseBox(Textdraw15, true); TextDrawBoxColor(Textdraw15, -1); TextDrawSetShadow(Textdraw15, 0); TextDrawSetOutline(Textdraw15, 0); TextDrawFont(Textdraw15, 0); Textdraw16 = TextDrawCreate(118.193267, 325.250000, "usebox"); TextDrawLetterSize(Textdraw16, 0.000000, -0.122222); TextDrawTextSize(Textdraw16, 12.992679, 0.000000); TextDrawAlignment(Textdraw16, 1); TextDrawColor(Textdraw16, 0); TextDrawUseBox(Textdraw16, true); TextDrawBoxColor(Textdraw16, 255); TextDrawSetShadow(Textdraw16, 0); TextDrawSetOutline(Textdraw16, 0); TextDrawFont(Textdraw16, 0); Textdraw17 = TextDrawCreate(118.193267, 328.750000, "usebox"); TextDrawLetterSize(Textdraw17, 0.000000, 2.211111); TextDrawTextSize(Textdraw17, 12.992679, 0.000000); TextDrawAlignment(Textdraw17, 1); TextDrawColor(Textdraw17, 0); TextDrawUseBox(Textdraw17, true); TextDrawBoxColor(Textdraw17, -16776961); TextDrawSetShadow(Textdraw17, 0); TextDrawSetOutline(Textdraw17, 0); TextDrawFont(Textdraw17, 0); Textdraw18 = TextDrawCreate(43.103946, 130.666656, "Menu"); TextDrawLetterSize(Textdraw18, 0.449999, 1.600000); TextDrawAlignment(Textdraw18, 1); TextDrawColor(Textdraw18, -1); TextDrawSetShadow(Textdraw18, 0); TextDrawSetOutline(Textdraw18, 1); TextDrawBackgroundColor(Textdraw18, 51); TextDrawFont(Textdraw18, 1); TextDrawSetProportional(Textdraw18, 1); Textdraw19 = TextDrawCreate(29.516838, 158.083328, "Statistics"); TextDrawLetterSize(Textdraw19, 0.449999, 1.600000); TextDrawAlignment(Textdraw19, 1); TextDrawColor(Textdraw19, -65281); TextDrawSetShadow(Textdraw19, 0); TextDrawSetOutline(Textdraw19, 1); TextDrawBackgroundColor(Textdraw19, 51); TextDrawFont(Textdraw19, 1); TextDrawSetProportional(Textdraw19, 1); Textdraw20 = TextDrawCreate(25.768665, 185.500000, "Commands"); TextDrawLetterSize(Textdraw20, 0.449999, 1.600000); TextDrawAlignment(Textdraw20, 1); TextDrawColor(Textdraw20, -65281); TextDrawSetShadow(Textdraw20, 0); TextDrawSetOutline(Textdraw20, 1); TextDrawBackgroundColor(Textdraw20, 51); TextDrawFont(Textdraw20, 1); TextDrawSetProportional(Textdraw20, 1); Textdraw21 = TextDrawCreate(33.265003, 214.666671, "Support"); TextDrawLetterSize(Textdraw21, 0.449999, 1.600000); TextDrawAlignment(Textdraw21, 1); TextDrawColor(Textdraw21, -65281); TextDrawSetShadow(Textdraw21, 0); TextDrawSetOutline(Textdraw21, 1); TextDrawBackgroundColor(Textdraw21, 51); TextDrawFont(Textdraw21, 1); TextDrawSetProportional(Textdraw21, 1); Textdraw22 = TextDrawCreate(31.859443, 242.083358, "Settings"); TextDrawLetterSize(Textdraw22, 0.449999, 1.600000); TextDrawAlignment(Textdraw22, 1); TextDrawColor(Textdraw22, -65281); TextDrawSetShadow(Textdraw22, 0); TextDrawSetOutline(Textdraw22, 1); TextDrawBackgroundColor(Textdraw22, 51); TextDrawFont(Textdraw22, 1); TextDrawSetProportional(Textdraw22, 1); Textdraw23 = TextDrawCreate(43.103946, 270.666595, "Rules"); TextDrawLetterSize(Textdraw23, 0.449999, 1.600000); TextDrawAlignment(Textdraw23, 1); TextDrawColor(Textdraw23, -65281); TextDrawSetShadow(Textdraw23, 0); TextDrawSetOutline(Textdraw23, 1); TextDrawBackgroundColor(Textdraw23, 51); TextDrawFont(Textdraw23, 1); TextDrawSetProportional(Textdraw23, 1); Textdraw24 = TextDrawCreate(43.572471, 302.166748, "Donat"); TextDrawLetterSize(Textdraw24, 0.449999, 1.600000); TextDrawAlignment(Textdraw24, 1); TextDrawColor(Textdraw24, -65281); TextDrawSetShadow(Textdraw24, 0); TextDrawSetOutline(Textdraw24, 1); TextDrawBackgroundColor(Textdraw24, 51); TextDrawFont(Textdraw24, 1); TextDrawSetProportional(Textdraw24, 1); Textdraw25 = TextDrawCreate(51.537258, 330.749969, "Exit"); TextDrawLetterSize(Textdraw25, 0.449999, 1.600000); TextDrawAlignment(Textdraw25, 1); TextDrawColor(Textdraw25, -1); TextDrawSetShadow(Textdraw25, 0); TextDrawSetOutline(Textdraw25, 1); TextDrawBackgroundColor(Textdraw25, 51); TextDrawFont(Textdraw25, 1); TextDrawSetProportional(Textdraw25, 1); Автор Alexey_Zapekin(То есть я)?
  25. Всем доброго времени суток. Данный туториал создан в помощь новичкам кто пишет мод . Итак приступим... Ко всем new: PHP код: new BurgerEnter;// Глобальная переменная. new BurgerExit;// Глобальная переменная. В public OnGameModeInit() Вставляем следующее: PHP код: BurgerEnter = CreatePickup(19132, 23, -2336.8601, -166.7870, 35.5547, -1);// Координаты пикапа на улице. BurgerExit = CreatePickup(19132, 23, 362.8931, -75.1895, 1001.5078, -1);// Координаты пикапа в интерьере. 19132 - это модель пикапа. 23 - тип пикапа (менять не нужно) дальше идут координаты x, y, z. -1 - пикап будет показан для всех виртуальных миров. Дальше идём в public OnPlayerPickUpPickup(playerid, pickupid) Как только игрок встаёт на пикап его отправляет по координатам, задаёт ему поворот угла и телепортирует в интерьер. Смотрим всё ниже. PHP код: if(pickupid == BurgerEnter) { SetPlayerPos(playerid, 364.0044, -73.9694, 1001.5078);// Координаты игрока при входе в инт. SetPlayerFacingAngle(playerid, 315.0000);// Угол поворота игрока. SetPlayerInterior(playerid, 10);// 10 - id интерьера. } if(pickupid == BurgerExit) { SetPlayerPos(playerid, -2334.6167, -166.7845, 35.5547);// Координаты игрока при выходе на улицу. SetPlayerFacingAngle(playerid, 270.0000);// Угол поворота игрока. SetPlayerInterior(playerid, 0);// 0 - выход на улицу. } Автор: Forbidden and Dizzel Понравилось??Ставь ++
×

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

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