Добро пожаловать на Pro Pawn - Портал о PAWN-скриптинге.
Страница 117 из 133 ПерваяПервая ... 17 67 107 115 116 117 118 119 127 ... ПоследняяПоследняя
Показано с 1,161 по 1,170 из 1325
  1. #1161
    Аватар для alonso
    Пользователь

    Статус
    Оффлайн
    Регистрация
    25.09.2017
    Сообщений
    11
    Репутация:
    0 ±
    Что лучше? Использовать YSI или пользоваться отдельными инклудами?

  2. #1162
    Аватар для x86
    Пользователь

    Статус
    Оффлайн
    Регистрация
    26.01.2019
    Сообщений
    41
    Репутация:
    6 ±
    Цитата Сообщение от alonso Посмотреть сообщение
    Что лучше? Использовать YSI или пользоваться отдельными инклудами?
    Вообще этот вопрос должен рассматривать сам разработчик, взвесив все за и против.

    YSI это база инклюдов, которые достаточно хорошо написаны и поддерживаются большим коммюнити. Однако, из-за большой базы просходит долгая компиляция. Исходя из этого, можно сделать вывод: если нужно использовать лишь единственный инклюд, то качать и компилировать все зависимые инклюды - достаточно бесполезное занятие, вы можете найти подобный инклюд, реализующий подобный функционал и использовать его.

  3. #1163
    Аватар для Seviel
    Пользователь

    Статус
    Оффлайн
    Регистрация
    23.12.2016
    Адрес
    Казахстан
    Сообщений
    148
    Репутация:
    26 ±
    Существует ли инклуд для более удобной работы с трейлерами(прицепами для фуры)?

  4. #1164
    Аватар для DeimoS
    Модератор?

    Статус
    Оффлайн
    Регистрация
    27.01.2014
    Адрес
    Восточный Мордор
    Сообщений
    5,588
    Репутация:
    1984 ±
    Цитата Сообщение от Seviel Посмотреть сообщение
    Существует ли инклуд для более удобной работы с трейлерами(прицепами для фуры)?
    Отдельно по трейлерам не видел, но есть, например, в таком функционал, отслеживающий трейлеры (правда, реализация там сомнительная).
    Вообще что именно тебе нужно?
    Связаться со мной в VK можно через личные сообщения этой группы
    Заказы не принимаю

    Широко известно, что идеи стоят 0.8333 цента каждая (исходя из рыночной цены 10 центов за дюжину).
    Великих идей полно, на них нет спроса.
    Воплощение идеи в законченную игру требует долгой работы,
    таланта, терпения и креативности, не говоря уж о затратах денег, времени и ресурсов.
    Предложить идею просто, воплотить – вот в чём проблема

    Steve Pavlina

  5. Пользователь сказал cпасибо:
    Seviel (14.03.2019)
  6. #1165
    Аватар для Seviel
    Пользователь

    Статус
    Оффлайн
    Регистрация
    23.12.2016
    Адрес
    Казахстан
    Сообщений
    148
    Репутация:
    26 ±
    Цитата Сообщение от DeimoS Посмотреть сообщение
    Отдельно по трейлерам не видел, но есть, например, в таком функционал, отслеживающий трейлеры (правда, реализация там сомнительная).
    Вообще что именно тебе нужно?
    Ну по факту только для одного, чтобы понимать когда прицеп был потерян, а не игрок вышел из машины или отцепили трейлер. Понимаю мелочь, но я не любитель писать велосипеды.

  7. #1166
    Аватар для DeimoS
    Модератор?

    Статус
    Оффлайн
    Регистрация
    27.01.2014
    Адрес
    Восточный Мордор
    Сообщений
    5,588
    Репутация:
    1984 ±
    Цитата Сообщение от Seviel Посмотреть сообщение
    Ну по факту только для одного, чтобы понимать когда прицеп был потерян, а не игрок вышел из машины или отцепили трейлер. Понимаю мелочь, но я не любитель писать велосипеды.
    Ну тогда реализация из инклуда для тебя. Хотя если тебе нужно весь транспорт отслеживать, а не только тот, в котором сидят игроки, то я бы сделал через таймер, а не через OnPlayerUpdate

    1. new VehicleTrailerID[MAX_VEHICLES];
    2.  
    3. //OnGameModeInit
    4. SetTimer("@__CheckVehicleTrailer", 500, true);// Соответственно, чем меньше интервал, тем точнее
    5.  
    6. @__CheckVehicleTrailer();
    7. @__CheckVehicleTrailer()
    8. {
    9. for(new i, trailer_id; i < MAX_VEHICLES; i++)
    10. {
    11. continue;
    12. trailer_id = GetVehicleTrailer(i);
    13. if(VehicleTrailerID[i] == trailer_id)
    14. continue;
    15. if(!trailer_id)
    16. {
    17. //Трейлер потерян
    18. }
    19. else
    20. {
    21. //Трейлер прицеплен
    22. }
    23. return 1;
    24. }
    Связаться со мной в VK можно через личные сообщения этой группы
    Заказы не принимаю

    Широко известно, что идеи стоят 0.8333 цента каждая (исходя из рыночной цены 10 центов за дюжину).
    Великих идей полно, на них нет спроса.
    Воплощение идеи в законченную игру требует долгой работы,
    таланта, терпения и креативности, не говоря уж о затратах денег, времени и ресурсов.
    Предложить идею просто, воплотить – вот в чём проблема

    Steve Pavlina

  8. Пользователь сказал cпасибо:
    Seviel (14.03.2019)
  9. #1167
    Аватар для Seviel
    Пользователь

    Статус
    Оффлайн
    Регистрация
    23.12.2016
    Адрес
    Казахстан
    Сообщений
    148
    Репутация:
    26 ±
    Цитата Сообщение от DeimoS Посмотреть сообщение
    Ну тогда реализация из инклуда для тебя. Хотя если тебе нужно весь транспорт отслеживать, а не только тот, в котором сидят игроки, то я бы сделал через таймер, а не через OnPlayerUpdate

    1. new VehicleTrailerID[MAX_VEHICLES];
    2.  
    3. //OnGameModeInit
    4. SetTimer("@__CheckVehicleTrailer", 500, true);// Соответственно, чем меньше интервал, тем точнее
    5.  
    6. @__CheckVehicleTrailer();
    7. @__CheckVehicleTrailer()
    8. {
    9. for(new i, trailer_id; i < MAX_VEHICLES; i++)
    10. {
    11. continue;
    12. trailer_id = GetVehicleTrailer(i);
    13. if(VehicleTrailerID[i] == trailer_id)
    14. continue;
    15. if(!trailer_id)
    16. {
    17. //Трейлер потерян
    18. }
    19. else
    20. {
    21. //Трейлер прицеплен
    22. }
    23. return 1;
    24. }
    Я делал на подобие системы АФК, только вместо OnPlayerUpdate OnTrailerUpdate.
    Пожалуй я сделаю как ты предлагаешь, мне кажется лишним подключать целый инклуд, ради одной функции.

  10. #1168
    Аватар для DeimoS
    Модератор?

    Статус
    Оффлайн
    Регистрация
    27.01.2014
    Адрес
    Восточный Мордор
    Сообщений
    5,588
    Репутация:
    1984 ±
    Цитата Сообщение от Seviel Посмотреть сообщение
    Я делал на подобие системы АФК, только вместо OnPlayerUpdate OnTrailerUpdate.
    Пожалуй я сделаю как ты предлагаешь, мне кажется лишним подключать целый инклуд, ради одной функции.
    Вспомнил, что вот такой вариант использовал когда-то
    1. new bool:VehicleTrailerStatus[MAX_VEHICLES char];
    2.  
    3. public OnTrailerUpdate(playerid, vehicleid)
    4. {
    5. if(VehicleTrailerStatus{vehicleid} == false)
    6. {
    7. static
    8. trailerid;
    9.  
    10. trailerid = vehicleid;
    11. vehicleid = GetPlayerVehicleID(playerid);
    12.  
    13.  
    14. SetTimerEx("OnAttachedTrailerUpdate", 500, false, "iii", playerid, vehicleid, trailerid);
    15. VehicleTrailerStatus{trailerid} = true;
    16. vehicleid = trailerid;// Это на случай, если дальше будет ещё какой-то код.
    17. }
    18. return 1;
    19. }
    20.  
    21. forward OnAttachedTrailerUpdate(driverid, vehicleid, trailerid);
    22. public OnAttachedTrailerUpdate(driverid, vehicleid, trailerid)
    23. {
    24. if(GetVehicleTrailer(vehicleid) != trailerid)
    25. {
    26. VehicleTrailerStatus{trailerid} = false;
    27. }
    28. else
    29. SetTimerEx("OnAttachedTrailerUpdate", 500, false, "iii", driverid, vehicleid, trailerid);
    30. return 1;
    31. }


    То бишь, принцип практически такой же, только таймер запускается не в OnGameModeInit, а когда игрок цепляет трейлер. И обрабатывает таймер только конкретное авто.
    Связаться со мной в VK можно через личные сообщения этой группы
    Заказы не принимаю

    Широко известно, что идеи стоят 0.8333 цента каждая (исходя из рыночной цены 10 центов за дюжину).
    Великих идей полно, на них нет спроса.
    Воплощение идеи в законченную игру требует долгой работы,
    таланта, терпения и креативности, не говоря уж о затратах денег, времени и ресурсов.
    Предложить идею просто, воплотить – вот в чём проблема

    Steve Pavlina

  11. Пользователь сказал cпасибо:
    Seviel (14.03.2019)
  12. #1169
    Аватар для Seviel
    Пользователь

    Статус
    Оффлайн
    Регистрация
    23.12.2016
    Адрес
    Казахстан
    Сообщений
    148
    Репутация:
    26 ±
    Цитата Сообщение от DeimoS Посмотреть сообщение
    Вспомнил, что вот такой вариант использовал когда-то
    1. new bool:VehicleTrailerStatus[MAX_VEHICLES char];
    2.  
    3. public OnTrailerUpdate(playerid, vehicleid)
    4. {
    5. if(VehicleTrailerStatus{vehicleid} == false)
    6. {
    7. static
    8. trailerid;
    9.  
    10. trailerid = vehicleid;
    11. vehicleid = GetPlayerVehicleID(playerid);
    12.  
    13.  
    14. SetTimerEx("OnAttachedTrailerUpdate", 500, false, "iii", playerid, vehicleid, trailerid);
    15. VehicleTrailerStatus{trailerid} = true;
    16. vehicleid = trailerid;// Это на случай, если дальше будет ещё какой-то код.
    17. }
    18. return 1;
    19. }
    20.  
    21. forward OnAttachedTrailerUpdate(driverid, vehicleid, trailerid);
    22. public OnAttachedTrailerUpdate(driverid, vehicleid, trailerid)
    23. {
    24. if(GetVehicleTrailer(vehicleid) != trailerid)
    25. {
    26. VehicleTrailerStatus{trailerid} = false;
    27. }
    28. else
    29. SetTimerEx("OnAttachedTrailerUpdate", 500, false, "iii", driverid, vehicleid, trailerid);
    30. return 1;
    31. }


    То бишь, принцип практически такой же, только таймер запускается не в OnGameModeInit, а когда игрок цепляет трейлер. И обрабатывает таймер только конкретное авто.
    Мне этот вариант больше нравится, "элегантнее" выглядит.

  13. #1170
    Аватар для UnO
    Пользователь

    Статус
    Оффлайн
    Регистрация
    20.01.2018
    Сообщений
    52
    Репутация:
    7 ±
    Реально ли сделать перманентную одышку? Чёт ничего в голову не приходит..

 

 
Страница 117 из 133 ПерваяПервая ... 17 67 107 115 116 117 118 119 127 ... ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •