Вопросы

Добрый день, у меня возникла проблема, сделал себе систему разгона авто как тут: https://pawno-rus.ru/topic/1179-zakryto-kto-nibud-znaet-kak-imenno-na-opredelennuyu-mashinu-ustanovit-skorost-s-etim-skriptom/ и теперь у меня  когда авто едет каждые 10 секунд авто останавливается. Кто может помочь?

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


Ссылка на сообщение

16 ответов на этот вопрос

  • 0
SetVehicleSpeed(const vehicleid, const Float:speed) {
    new Float:pos[7];
    GetVehicleVelocity(vehicleid, pos[0], pos[1], pos[2]);
    GetVehiclePos(vehicleid, pos[3], pos[4], pos[5]);
    GetVehicleZAngle(vehicleid, pos[6]); pos[6] = 360 - pos[6];
    pos[0] = (floatsin(pos[6], degrees) * (speed/100) + floatcos(pos[6], degrees) * 0 + pos[3]) - pos[3];
    pos[1] = (floatcos(pos[6], degrees) * (speed/100) + floatsin(pos[6], degrees) * 0 + pos[4]) - pos[4];
    SetVehicleVelocity(vehicleid, pos[0], pos[1], pos[2]);
}  

 

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


Ссылка на сообщение
  • 0
4 часа назад, Timur_Top сказал:

Добрый день, у меня возникла проблема, сделал себе систему разгона авто как тут: https://pawno-rus.ru/topic/1179-zakryto-kto-nibud-znaet-kak-imenno-na-opredelennuyu-mashinu-ustanovit-skorost-s-etim-skriptom/ и теперь у меня  когда авто едет каждые 10 секунд авто останавливается. Кто может помочь?

Покажи как вставил :)

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


Ссылка на сообщение
  • 0
Только что, Покемон сказал:

Покажи как вставил :)

Шо именно?

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


Ссылка на сообщение
  • 0
1 минуту назад, Timur_Top сказал:

Шо именно?

Все как вставлял.

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


Ссылка на сообщение
  • 0

@Покемон 

Весь New:

new timer[MAX_PLAYERS]; 

OnPlayerStateChange

if(newstate == PLAYER_STATE_DRIVER)
  timer[playerid] = SetTimerEx("SpeedVehicle", 10000, true, "d", playerid); 
else if(oldstate == PLAYER_STATE_DRIVER)
  KillTimer(timer[playerid]); 

Конец мода

Спойлер

stock SetVehicleSpeed(vehicleid,mph)
{
      new Float:Vx, Float:Vy, Float:Vz ,Float:speeds, Float:multiple;
      GetVehicleVelocity(vehicleid,Vx,Vy,Vz);
      speeds = floatsqroot(Vx*Vx + Vy*Vy + Vz*Vz);
      if(speeds > 0)
      {
          multiple = (mph / (speeds * 250));
          return SetVehicleVelocity(vehicleid, Vx*multiple, Vy*multiple, Vz*multiple);
      }
      return 0;
}
forward SpeedVehicle(playerid);
public SpeedVehicle(playerid) return SetVehicleSpeed(GetPlayerVehicleID(playerid), 5);

 

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


Ссылка на сообщение
  • 0

@RaZoR4D извините, это куда?

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


Ссылка на сообщение
  • 0

@Remmi_Feed вместо своей функции вставить эту. 

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


Ссылка на сообщение
  • 0
7 минут назад, Timur_Top сказал:

@DEST То-есть это сток?

 

Да добавьте "stock"

Спойлер

stock SetVehicleSpeed(const vehicleid, const Float:speed) 
{
    new Float:pos[7];
    GetVehicleVelocity(vehicleid, pos[0], pos[1], pos[2]);
    GetVehiclePos(vehicleid, pos[3], pos[4], pos[5]);
    GetVehicleZAngle(vehicleid, pos[6]); pos[6] = 360 - pos[6];
    pos[0] = (floatsin(pos[6], degrees) * (speed/100) + floatcos(pos[6], degrees) * 0 + pos[3]) - pos[3];
    pos[1] = (floatcos(pos[6], degrees) * (speed/100) + floatsin(pos[6], degrees) * 0 + pos[4]) - pos[4];
    SetVehicleVelocity(vehicleid, pos[0], pos[1], pos[2]);
}

 

 

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


Ссылка на сообщение
  • 0

@RaZoR4D Так же, не работает, авто после 10 сек. останавливается.

 

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


Ссылка на сообщение
  • 0
1 минуту назад, Timur_Top сказал:

@RaZoR4D Так же, не работает, авто после 10 сек. останавливается.

 

Нет уберите прежнюю функцию полностью и используйте то что дал я.

Спойлер

if(newstate == PLAYER_STATE_DRIVER)
{
    new car = GetPlayerVehicleID(playerid);
    SetVehicleSpeed(car, 150); //150 это скорость,а car это модель авто на котором сидит игрок
    return true;
}

 

 

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


Ссылка на сообщение
  • 0

@RaZoR4D заменить в паблике : OnPlayerStateChange ?

 

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


Ссылка на сообщение
  • 0
Только что, Timur_Top сказал:

@RaZoR4D заменить в паблике : OnPlayerStateChange ?

 

Уберите прежние коды и ставьте код выше в паблик OnPlayerStateChange

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


Ссылка на сообщение
  • 0

Закрываю тему.. Спасибо тем кто помог.

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


Ссылка на сообщение
  • 0

@Timur_Top так не пойдет, вы выбирайте лучший ответ или говорите, кто помог. Иначе мне придется забрать у вас возможность закрывать свои темы. 

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


Ссылка на сообщение
Гость
Эта тема закрыта для публикации ответов.
  • Последние посетители   0 пользователей онлайн

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

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

    • Узбек
      От Узбек
      Всем добрый вечер ребят! 
      Я начинающий, сегодня я вам сливаю команду 2(шт) на технические работы
      Ловите 
       
    • nazpol9
      От nazpol9
      Привет всем.

      У меня имеется мод для самп сервера и VPS с Ubuntu, на котором я пытаюсь его запустить.

      В чем суть проблемы: при запуске samp03svr, сервер запускается, но на версии 0.3.DL R-1. Когда я пытаюсь запустить этот же мод локально на Windows, сервер работает на версии 0.3.7 и я могу зайти на него без клиента 0.3.DL.

      Для решения этой проблемы я уже пробовал заменять инклуды и исполнительные файлы теми, что есть в архивах на официальном сайте сампа, перекомпилировал мод, и ничего не изменилось.
       
      #include <a_samp> #include <a_mysql> #include <foreach> #include <Pawn.RakNet> #include <streamer> #include <sscanf2> #include <float2> #include <crashdetect> #include <fmt> #include <a_http> #include <Pawn.CMD> #include <Pawn.Regex> #include <requests> #include <callbacks> #include <MD5> #include <mxdate> #include <TOTP> #include <gvar> #include <md-sort> #include <nex-ac> #include <weapon-config> #include <discord-connector> #include <3DTryg> #include <textdraw-streamer>  
      plugins crashdetect.so streamer.so textdraw-streamer.so sscanf.so pawnraknet.so pawncmd.so mysql.so requests.so profiler.so pawnregex.so TOTP.so gvar.so discord-connector.so

      Если у кого-то будут какие-либо догадки, прошу ими поделиться, если понадобится больше информации - я постараюсь её предоставить.