Перейти к содержанию
Авторизация  
Vladimir_Kulkov

Спидометр(простой)

Рекомендуемые сообщения

Vladimir_Kulkov

Вот простенький спидометр.
Спидометр:
- Скорость
- Марка
- бензин
- Шкала скорости
Спидометр находится в нижнем правом углу

http://imgur.com/VEdH3Wj
http://imgur.com/5A53wKo

 

Приступим ко всем new

new PlayerText:TD_SPEED[5][MAX_PLAYERS];
new Timer_Speed[MAX_PLAYERS char];  
new VehicleNames[212][] =
{
        "Landstalker", "Bravura", "Buffalo", "Linerunner", "Perrenial", "Sentinel",
        "Dumper", "Firetruck", "Trashmaster", "Stretch", "Manana", "Infernus",
        "Voodoo", "Pony", "Mule", "Cheetah", "Ambulance", "Leviathan", "Moonbeam",
        "Esperanto", "Taxi", "Washington", "Bobcat", "Whoopee", "BF Injection",
        "Hunter", "Premier", "Enforcer", "Securicar", "Banshee", "Predator", "Bus",
        "Rhino", "Barracks", "Hotknife", "Trailer", "Previon", "Coach", "Cabbie",
        "Stallion", "Rumpo", "RC Bandit", "Romero", "Packer", "Monster", "Admiral",
        "Squalo", "Seasparrow", "Pizzaboy", "Tram", "Trailer", "Turismo", "Speeder",
        "Reefer", "Tropic", "Flatbed", "Yankee", "Caddy", "Solair", "Berkley's RC Van",
        "Skimmer", "PCJ-600", "Faggio", "Freeway", "RC Baron", "RC Raider", "Glendale",
        "Oceanic","Sanchez", "Sparrow", "Patriot", "Quad", "Coastguard", "Dinghy",
        "Hermes", "Sabre", "Rustler", "ZR-350", "Walton", "Regina", "Comet", "BMX",
        "Burrito", "Camper", "Marquis", "Baggage", "Dozer", "Maverick", "News Chopper",
        "Rancher", "FBI Rancher", "Virgo", "Greenwood", "Jetmax", "Hotring", "Sandking",
        "Blista Compact", "Maverick", "Boxvillde", "Benson", "Mesa", "RC Goblin",
        "Hotring Racer A", "Hotring Racer B", "Bloodring Banger", "Rancher", "Super GT",
        "Elegant", "Journey", "Bike", "Mountain Bike", "Beagle", "Cropduster", "Stunt",
        "Tanker", "Roadtrain", "Nebula", "Majestic", "Buccaneer", "Shamal", "Hydra",
        "FCR-900", "NRG-500", "HPV1000", "Cement Truck", "Tow Truck", "Fortune",
        "Cadrona", "FBI Truck", "Willard", "Forklift", "Tractor", "Combine", "Feltzer",
        "Remington", "Slamvan", "Blade", "Freight", "Streak", "Vortex", "Vincent",
        "Bullet", "Clover", "Sadler", "Firetruck", "Hustler", "Intruder", "Primo",
        "Cargobob", "Tampa", "Sunrise", "Merit", "Utility", "Nevada", "Yosemite",
        "Windsor", "Monster", "Monster", "Uranus", "Jester", "Sultan", "Stratium",
        "Elegy", "Raindance", "RC Tiger", "Flash", "Tahoma", "Savanna", "Bandito",
        "Freight Flat", "Streak Carriage", "Kart", "Mower", "Dune", "Sweeper",
        "Broadway", "Tornado", "AT-400", "DFT-30", "Huntley", "Stafford", "BF-400",
        "News Van", "Tug", "Trailer", "Emperor", "Wayfarer", "Euros", "Hotdog", "Club",
        "Freight Box", "Trailer", "Andromada", "Dodo", "RC Cam", "Launch", "Police Car",
        "Police Car", "Police Car", "Police Ranger", "Picador", "S.W.A.T", "Alpha",
        "Phoenix", "Glendale", "Sadler", "Luggage", "Luggage", "Stairs", "Boxville",
        "Tiller", "Utility Trailer"
};

В public OnPlayerConnect(playerid)

TD_SPEED[0][playerid] = CreatePlayerTextDraw(playerid, 466.000000, 375.812500, "KM/H");
        PlayerTextDrawLetterSize(playerid, TD_SPEED[0][playerid], 0.346500, 1.271875);
        PlayerTextDrawAlignment(playerid, TD_SPEED[0][playerid], 1);
        PlayerTextDrawColor(playerid, TD_SPEED[0][playerid], -8978177);
        PlayerTextDrawUseBox(playerid, TD_SPEED[0][playerid], true);
        PlayerTextDrawBoxColor(playerid, TD_SPEED[0][playerid], 0);
        PlayerTextDrawSetShadow(playerid, TD_SPEED[0][playerid], 0);
        PlayerTextDrawSetOutline(playerid, TD_SPEED[0][playerid], 1);
        PlayerTextDrawBackgroundColor(playerid, TD_SPEED[0][playerid], 161476864);
        PlayerTextDrawFont(playerid, TD_SPEED[0][playerid], 1);
        PlayerTextDrawSetProportional(playerid, TD_SPEED[0][playerid], 1);

        TD_SPEED[1][playerid] = CreatePlayerTextDraw(playerid, 497.000000, 374.062500, "100");
        PlayerTextDrawLetterSize(playerid, TD_SPEED[1][playerid], 0.646498, 2.772495);
        PlayerTextDrawAlignment(playerid, TD_SPEED[1][playerid], 1);
        PlayerTextDrawColor(playerid, TD_SPEED[1][playerid], -1);
        PlayerTextDrawSetShadow(playerid, TD_SPEED[1][playerid], 0);
        PlayerTextDrawSetOutline(playerid, TD_SPEED[1][playerid], 1);
        PlayerTextDrawBackgroundColor(playerid, TD_SPEED[1][playerid], 51);
        PlayerTextDrawFont(playerid, TD_SPEED[1][playerid], 3);
        PlayerTextDrawSetProportional(playerid, TD_SPEED[1][playerid], 1);

        TD_SPEED[2][playerid] = CreatePlayerTextDraw(playerid, 497.500000, 395.500000, "IIIIIIIIIIIIIIIIIIIIIIIII");
        PlayerTextDrawLetterSize(playerid, TD_SPEED[2][playerid], 0.368000, 1.560624);
        PlayerTextDrawAlignment(playerid, TD_SPEED[2][playerid], 1);
        PlayerTextDrawColor(playerid, TD_SPEED[2][playerid], -8978177);
        PlayerTextDrawSetShadow(playerid, TD_SPEED[2][playerid], 0);
        PlayerTextDrawSetOutline(playerid, TD_SPEED[2][playerid], 0);
        PlayerTextDrawBackgroundColor(playerid, TD_SPEED[2][playerid], 51);
        PlayerTextDrawFont(playerid, TD_SPEED[2][playerid], 2);
        PlayerTextDrawSetProportional(playerid, TD_SPEED[2][playerid], 1);

        TD_SPEED[3][playerid] = CreatePlayerTextDraw(playerid, 589.500000, 382.812500, "25~w~L");
        PlayerTextDrawLetterSize(playerid, TD_SPEED[3][playerid], 0.449999, 1.600000);
        PlayerTextDrawAlignment(playerid, TD_SPEED[3][playerid], 1);
        PlayerTextDrawColor(playerid, TD_SPEED[3][playerid], -1);
        PlayerTextDrawSetShadow(playerid, TD_SPEED[3][playerid], 0);
        PlayerTextDrawSetOutline(playerid, TD_SPEED[3][playerid], 1);
        PlayerTextDrawBackgroundColor(playerid, TD_SPEED[3][playerid], 51);
        PlayerTextDrawFont(playerid, TD_SPEED[3][playerid], 1);
        PlayerTextDrawSetProportional(playerid, TD_SPEED[3][playerid], 1);

        TD_SPEED[4][playerid] = CreatePlayerTextDraw(playerid, 498.000000, 407.750000, "infernus");
        PlayerTextDrawLetterSize(playerid, TD_SPEED[4][playerid], 0.449999, 1.600000);
        PlayerTextDrawAlignment(playerid, TD_SPEED[4][playerid], 1);
        PlayerTextDrawColor(playerid, TD_SPEED[4][playerid], -1);
        PlayerTextDrawSetShadow(playerid, TD_SPEED[4][playerid], 0);
        PlayerTextDrawSetOutline(playerid, TD_SPEED[4][playerid], 1);
        PlayerTextDrawBackgroundColor(playerid, TD_SPEED[4][playerid], 161476864);
        PlayerTextDrawFont(playerid, TD_SPEED[4][playerid], 2);
        PlayerTextDrawSetProportional(playerid, TD_SPEED[4][playerid], 1);

В public OnPlayerStateChange

if(newstate == PLAYER_STATE_DRIVER)
    {
        for(new i; i < 5; i++) PlayerTextDrawShow(playerid,TD_SPEED[i][playerid]);// показываем тд
        Timer_Speed{playerid} = SetTimerEx("UpdateSpeed",100,1,"d",playerid);//запускаем
    }
    if(newstate == PLAYER_STATE_ONFOOT)
    {
        KillTimer(Timer_Speed{playerid});//Удаляем таймер
        for(new i; i < 5; i++) PlayerTextDrawHide(playerid,TD_SPEED[i][playerid]);//скрываем тд
    }

в конец мода

forward UpdateSpeed(playerid);
public UpdateSpeed(playerid)
{
    new string[15];
    new v = GetPlayerVehicleID(playerid);
    if(!v) return true;
    switch(SpeedVehicle(playerid))
    {
        case 0..1: PlayerTextDrawSetString(playerid,TD_SPEED[2][playerid],"I~w~~h~IIIIIIIIIIIIIIIIIIIIIIIIIIII"
);
        case 2..5: PlayerTextDrawSetString(playerid,TD_SPEED[2][playerid],"II~w~~h~IIIIIIIIIIIIIIIIIIIIIIIIIII"
);
        case 6..10: PlayerTextDrawSetString(playerid,TD_SPEED[2][playerid],"III~w~~h~IIIIIIIIIIIIIIIIIIIIIIIIII"
);
        case 11..15: PlayerTextDrawSetString(playerid,TD_SPEED[2][playerid],"IIII~w~~h~IIIIIIIIIIIIIIIIIIIIIIIII"
);
        case 16..20: PlayerTextDrawSetString(playerid,TD_SPEED[2][playerid],"IIIII~w~~h~IIIIIIIIIIIIIIIIIIIIIIII"
);
        case 21..25: PlayerTextDrawSetString(playerid,TD_SPEED[2][playerid],"IIIIII~w~~h~IIIIIIIIIIIIIIIIIIIIIII"
);
        case 26..30: PlayerTextDrawSetString(playerid,TD_SPEED[2][playerid],"IIIIIII~w~~h~IIIIIIIIIIIIIIIIIIIIII"
);
        case 31..35: PlayerTextDrawSetString(playerid,TD_SPEED[2][playerid],"IIIIIIII~w~~h~IIIIIIIIIIIIIIIIIIIII"
);
        case 36..40: PlayerTextDrawSetString(playerid,TD_SPEED[2][playerid],"IIIIIIIII~w~~h~IIIIIIIIIIIIIIIIIIII"
);
        case 41..45: PlayerTextDrawSetString(playerid,TD_SPEED[2][playerid],"IIIIIIIIII~w~~h~IIIIIIIIIIIIIIIIIII"
);
        case 46..50: PlayerTextDrawSetString(playerid,TD_SPEED[2][playerid],"IIIIIIIIIII~w~~h~IIIIIIIIIIIIIIIIII"
);
        case 51..55: PlayerTextDrawSetString(playerid,TD_SPEED[2][playerid],"IIIIIIIIIIII~w~~h~IIIIIIIIIIIIIIIII"
);
        case 56..60: PlayerTextDrawSetString(playerid,TD_SPEED[2][playerid],"IIIIIIIIIIIII~w~~h~IIIIIIIIIIIIIIII"
);
        case 61..65: PlayerTextDrawSetString(playerid,TD_SPEED[2][playerid],"IIIIIIIIIIIIII~w~~h~IIIIIIIIIIIIIII"
);
        case 66..70: PlayerTextDrawSetString(playerid,TD_SPEED[2][playerid],"IIIIIIIIIIIIIII~w~~h~IIIIIIIIIIIIII"
);
        case 71..75: PlayerTextDrawSetString(playerid,TD_SPEED[2][playerid],"IIIIIIIIIIIIIIII~w~~h~IIIIIIIIIIIII"
);
        case 76..80: PlayerTextDrawSetString(playerid,TD_SPEED[2][playerid],"IIIIIIIIIIIIIIIII~w~~h~IIIIIIIIIIII"
);
        case 81..85: PlayerTextDrawSetString(playerid,TD_SPEED[2][playerid],"IIIIIIIIIIIIIIIIII~w~~h~IIIIIIIIIII"
);
        case 86..90: PlayerTextDrawSetString(playerid,TD_SPEED[2][playerid],"IIIIIIIIIIIIIIIIIII~w~~h~IIIIIIIIII"
);
        case 91..95: PlayerTextDrawSetString(playerid,TD_SPEED[2][playerid],"IIIIIIIIIIIIIIIIIIII~w~~h~IIIIIIIII"
);
        case 101..105: PlayerTextDrawSetString(playerid,TD_SPEED[2][playerid],"IIIIIIIIIIIIIIIIIIIII~w~~h~IIIIIIII"
);
        case 106..110: PlayerTextDrawSetString(playerid,TD_SPEED[2][playerid],"IIIIIIIIIIIIIIIIIIIIII~w~~h~IIIIIII"
);
        case 111..115: PlayerTextDrawSetString(playerid,TD_SPEED[2][playerid],"IIIIIIIIIIIIIIIIIIIIIII~w~~h~IIIIII"
);
        case 116..120: PlayerTextDrawSetString(playerid,TD_SPEED[2][playerid],"IIIIIIIIIIIIIIIIIIIIIIII~w~~h~IIIII"
);
        case 121..130: PlayerTextDrawSetString(playerid,TD_SPEED[2][playerid],"IIIIIIIIIIIIIIIIIIIIIIIII~w~~h~IIII"
);
        case 131..144: PlayerTextDrawSetString(playerid,TD_SPEED[2][playerid],"IIIIIIIIIIIIIIIIIIIIIIIIII~w~~h~III"
);
        case 145..155: PlayerTextDrawSetString(playerid,TD_SPEED[2][playerid],"IIIIIIIIIIIIIIIIIIIIIIIIIII~w~~h~II"
);
        case 156..170: PlayerTextDrawSetString(playerid,TD_SPEED[2][playerid],"IIIIIIIIIIIIIIIIIIIIIIIIIIII~w~~h~I"
);
        case 171..220: PlayerTextDrawSetString(playerid,TD_SPEED[2][playerid],"IIIIIIIIIIIIIIIIIIIIIIIIIIIII"
);
        default: PlayerTextDrawSetString(playerid,TD_SPEED[2][playerid], "IIIIIIIIIIIIIIIIIIIIIIIIIIIII");
    }
    format(string,sizeof(string),"%d",SpeedVehicle(playerid));
    PlayerTextDrawSetString(playerid,TD_SPEED[1][playerid], string);
    format(string,sizeof(string),"%d~w~L",v/5);// v/5 - меняем на свою переменную бензина
    PlayerTextDrawSetString(playerid,TD_SPEED[3][playerid], string);
    format(string,sizeof(string), "%s",VehicleNames[GetVehicleModel(v)-400]);
    PlayerTextDrawSetString(playerid,TD_SPEED[4][playerid], string);
    return true;
}
stock SpeedVehicle(playerid)
{
    new 
           Float: STX,
           Float: STY,
           Float: STZ;
    new carid = GetPlayerVehicleID(playerid);
    if(IsPlayerInAnyVehicle(playerid)) GetVehicleVelocity(carid, STX, STY, STZ);
    else GetPlayerVelocity(playerid,STX,STY,STZ);
    STZ = floatsqroot(floatpower(floatabs(STX), 2.0) + floatpower(floatabs(STY), 2.0) + floatpower(floatabs(STZ), 2.0)) * 100.3;
    return floatround(STZ);
} 

в этой строчке
format(string,sizeof(string),"%d~w~L", v/5);// v/5 - меняем на свою переменную бензина
на этом все спасибо вроде не чего не забыл а если забыл или что то не так так извиняюсь

 

  • Like 3

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Web

Тоже самое. Копипаста. Не указан автор и не получено разрешение от него для создания темы с его мануалом.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Vladimir_Kulkov

Автор : Неизвестно

На том сайте где взял, автор был не он, это писали в комменты, + нет запрета на размещение на другой портал

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Web

@Vladimir_Kulkov, А он тебе давал разрешение на публикацию на сторонем портале? Да и об том, что автор не ты. Вообще не слова.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Vladimir_Kulkov

Я не говорю что я автор, внимательнее почитай!!!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
floZZy

@Wеb,Извините за оффтоп, но всё же. Как я не зайду в любую тему, так ты там везде есть. Ты либо себе набиваешь посты, либо что - то другое. 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
LeonYT

Я не понимаю, зачем для неизменного в процессе работы модификации текстдрава используется CreatePlayerTextDraw

TD_SPEED[0][playerid] = CreatePlayerTextDraw(playerid, 466.000000, 375.812500, "KM/H");
PlayerTextDrawLetterSize(playerid, TD_SPEED[0][playerid], 0.346500, 1.271875);
PlayerTextDrawAlignment(playerid, TD_SPEED[0][playerid], 1);
PlayerTextDrawColor(playerid, TD_SPEED[0][playerid], -8978177);
PlayerTextDrawUseBox(playerid, TD_SPEED[0][playerid], true);
PlayerTextDrawBoxColor(playerid, TD_SPEED[0][playerid], 0);
PlayerTextDrawSetShadow(playerid, TD_SPEED[0][playerid], 0);
PlayerTextDrawSetOutline(playerid, TD_SPEED[0][playerid], 1);
PlayerTextDrawBackgroundColor(playerid, TD_SPEED[0][playerid], 161476864);
PlayerTextDrawFont(playerid, TD_SPEED[0][playerid], 1);
PlayerTextDrawSetProportional(playerid, TD_SPEED[0][playerid], 1); 

CreatePlayerTextDraw уместен для создания текстдравов, которые будут изменяться в процессе работы модификации у игроков (и эти изменения у каждого игрока будут разными), в данном случае вы просто так потеряли довольно много памяти впустую, создав для каждого игрока (даже не подключенного) по одному такому текстдраву. Смысл?

  • Like 2

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Jerry..

@Vladimir_Kulkov, А как убрать эти Литр Бензин?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Vegas

@Jerry..,сам понял что написал? Что мешает удалить просто текстдрав 45 L? 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
Авторизация  

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

  • Похожий контент

    • KandaSorata
      От KandaSorata
      Ищу человека, который переведёт мод с CRMP 0.3e на CRMP 0.3.7. Прошу писать в ВК vk.com/grandilife. Оплата: договорная
    • #Storm
      От #Storm
      Помощь с ошибками [объяснение этих же ошибок]
      Написание систем/работ и т.д с нуля.
      Вырезка/вставка в Ваш мод систем.            Работа любой сложности.
      Связь со мной : https://vk.com/storm_pawn
       
      В данный момент набираю отзывы, делаю очень дёшево.
      Ниже попрошу оставлять отзывы.
    • KandaSorata
      От KandaSorata
      Ищу мапера, который сделает карту для моего сервера. Заплачу с Qiwi, примерная цена - 500-1000р. Мап нужен на всю карту CRMP. Если такие найдутся, то прошу писать в vk.com/grandilife или же сюда.
       По условиям в ЛС ВКонтакте. 
    • Web
      От Web
      Какой мод можно взять под основу? Только не сложный. Желательно на файлах. Писать с нуля не предлагать. Не умею.
    • tReex
      От tReex
      Вакансия №1
      Приветствуем! 
      Новый проект в КРМП ищет в свою команду скриптера с перспективой на постоянную работу, который может качественно справится с задачами любой сложности. 

      Если Вы: 
      - Опытный специалист в сфере скриптинга Pawn; 
      - Ответственный и порядочный человек; 
      - Умеете работать в команде и идти на компромисс; 
      - Имеете в своем распоряжении примеры работ и подтвержденный портфолио; 
      - Уверенный в себе и своих силах; 
      - Желаете работать и зарабатывать. 

      Напишите нам (ссылка ВК в профиле), предварительно указав: 
      1. Реальное имя и фамилию; 
      2. Возраст; 
      3. Страну, город, в котором проживаете; 
      4. Опыт работы в данной сфере; 
      5. Портфолио. 

      Со своей стороны мы гарантируем: 
      - Достойную и своевременную оплату; 
      - Честное и уважительное отношение к Вам; 
      - Постоянное сотрудничество (в перспективе, если сработаемся). 

      Остальное Вы можете уточнить и спросить при собеседовании.
      Вакансия №2
      Наша команда так же ищет в проект КРМП человека на должность главного администратора. 

      Требования: 
      - Возраст 17+ (возможны исключения); 
      - Адекватность, умение находить компромисс и работать в команде; 
      - Вежливость и грамотная речь; 
      - Стаж регулярной игры в КРМП более 2х лет; 
      - Быть компетентным в вопросах игрового режима Role Play; 
      - Разбираться в читах и уметь определить читера; 
      - Активно участвовать в разработке и улучшении проекта. 
      - Умение руководить. 

      Если Вы отвечаете всем выше перечисленным критериям, напишите нам (ссылка ВК в профиле) заполнив анкету: 
      1. Реальное имя и фамилия; 
      2. Возраст; 
      3. Страна, город в котором проживаете; 
      4. Стаж игры в КРМП; 
      5. Перечислите названия серверов, на которых Вы играли, и в каких фракциях состояли; 
      6. Есть ли опыт администрирования в КРМП? (если есть, то укажите на каких серверах и на протяжении какого времени); 
      7. Сколько Вы готовы в день уделять времени игре?; 
      8. Почему именно Вы должны стать главным администратором? 

      Мы Вам предлагаем: 
      - Регулярную зарплату; 
      - Постоянную работу на развивающимся проекте; 
      - Отпуск и регулярные выходные.
       
×

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

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