• 0
Homer4ik

Кто-нибудь знает как именно на определенную машину установить скорость с этим скриптом?

Вопросы

Кто-нибудь знает как именно на определенную машину установить скорость с этим скриптом?

 

Спойлер

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;
}

 

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


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

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

  • 0
19 часов назад, DEST сказал:

@Homer4ik Скидываю последний раз, если не поймете, ваши проблемы. 

Ко всем new: 


new speedtimer[MAX_PLAYERS];

В OnPlayerStateChange: 


if(newstate == PLAYER_STATE_DRIVER)
{
  new modelid = GetVehicleModel(GetPlayerVehicleID(playerid)); 
  speedtimer[playerid] = SetTimerEx("SpeedVehicle222", 10000, true, "dd", playerid, modelid); 
}
if(oldstate == PLAYER_STATE_DRIVER)
	KillTimer(speedtimer[playerid]); 

В конец мода: 


forward SpeedVehicle222(playerid, modelid); 
public SpeedVehicle222(playerid, modelid) 
{
  new newmph; 
  switch(modelid)
  {
    case X: newmph = XXmph; 
    case Y: newmph = YYmph;
  }
  return SetVehicleSpeed(GetPlayerVehicleID(playerid), newmph);
}

 

У меня  машина наоборот через секунд десять сбрасывает скорость, в чем дело?

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


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

@Homer4ik значит, вы неправильно настроили или функция работает неправильно.

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


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

вы же мне сами это скинули

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


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

@Homer4ik функцию вы выкладывали уже готовую, я лишь подсказал как настроить для определенных машин. Выкладывайте паблик SpeedVehilce222 с вашими настройками .

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


Ссылка на сообщение
  • 0
В ‎16‎.‎10‎.‎2017 в 23:03, DEST сказал:

@Homer4ik функцию вы выкладывали уже готовую, я лишь подсказал как настроить для определенных машин. Выкладывайте паблик SpeedVehilce222 с вашими настройками .

forward SpeedVehicle222(playerid, modelid);
public SpeedVehicle222(playerid, modelid)
{
  new newmph;
  switch(modelid)
  {
    case 541: newmph = 60;
    case 400: newmph = 40;
  }
  return SetVehicleSpeed(GetPlayerVehicleID(playerid), newmph);
}

В ‎16‎.‎10‎.‎2017 в 23:03, DEST сказал:

@Homer4ik функцию вы выкладывали уже готовую, я лишь подсказал как настроить для определенных машин. Выкладывайте паблик SpeedVehilce222 с вашими настройками .

Машина замедляется, и это причем на каждую машину работает

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


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

 if(newstate == PLAYER_STATE_DRIVER)
 {
   new modelid = GetVehicleModel(GetPlayerVehicleID(playerid));
   speedtimer[playerid] = SetTimerEx("SpeedVehicle222", 5000, true, "dd", playerid, modelid);
 }
 if(oldstate == PLAYER_STATE_DRIVER)
  KillTimer(speedtimer[playerid]);

Заметка от Гость , создано

Большой код берите под "Код" или спойлер.

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


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

Свой паблик замените этим, а после сядьте в 400 id машину, проедьтесь немного и скиньте логи (файл server_log.txt).

forward SpeedVehicle222(playerid, modelid);
public SpeedVehicle222(playerid, modelid)
{
  printf("Runned SpeedVehicle222 (playerid=%d, modelid=%d)", playerid, modelid);
  new newmph;
  switch(modelid)
  {
    case 541: newmph = 60, print("541 model id configurated was successful!");
    case 400: newmph = 40, print("400 model id configurated was successful!");
  }
  return SetVehicleSpeed(GetPlayerVehicleID(playerid), newmph), printf("SpeedVehicle222(playerid, modelid) was successfully returned SetVehicleSpeed(vehicleid=%d, newmph=%d)", GetPlayerVehicleID(playerid), newmph);
}

 

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


Ссылка на сообщение
  • 0
В ‎20‎.‎10‎.‎2017 в 15:13, DEST сказал:

Свой паблик замените этим, а после сядьте в 400 id машину, проедьтесь немного и скиньте логи (файл server_log.txt).


forward SpeedVehicle222(playerid, modelid);
public SpeedVehicle222(playerid, modelid)
{
  printf("Runned SpeedVehicle222 (playerid=%d, modelid=%d)", playerid, modelid);
  new newmph;
  switch(modelid)
  {
    case 541: newmph = 60, print("541 model id configurated was successful!");
    case 400: newmph = 40, print("400 model id configurated was successful!");
  }
  return SetVehicleSpeed(GetPlayerVehicleID(playerid), newmph), printf("SpeedVehicle222(playerid, modelid) was successfully returned SetVehicleSpeed(vehicleid=%d, newmph=%d)", GetPlayerVehicleID(playerid), newmph);
}

 

[18:11:41] Incoming connection: 127.0.0.1:50372
[18:11:41] [join] Homer_Frolov has joined the server (0:127.0.0.1)
[18:12:14] Runned SpeedVehicle222 (playerid=0, modelid=400)
[18:12:14] 400 model id configurated was successful!
[18:12:14] SpeedVehicle222(playerid, modelid) was successfully returned SetVehicleSpeed(vehicleid=281, newmph=40)
[18:12:25] Runned SpeedVehicle222 (playerid=0, modelid=400)
[18:12:25] 400 model id configurated was successful!
[18:12:25] SpeedVehicle222(playerid, modelid) was successfully returned SetVehicleSpeed(vehicleid=281, newmph=40)
[18:12:36] Runned SpeedVehicle222 (playerid=0, modelid=400)
[18:12:36] 400 model id configurated was successful!
[18:12:36] SpeedVehicle222(playerid, modelid) was successfully returned SetVehicleSpeed(vehicleid=281, newmph=40)
[18:12:47] Runned SpeedVehicle222 (playerid=0, modelid=400)
[18:12:47] 400 model id configurated was successful!
[18:12:47] SpeedVehicle222(playerid, modelid) was successfully returned SetVehicleSpeed(vehicleid=281, newmph=40)
[18:12:58] [part] Homer_Frolov has left the server (0:1)
 

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


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

@Homer4ik можете вернуть паблик тот, который был. Проблема в функции SetVehicleSpeed, а не в настройке. Если найду нормальную, скину вам. Пока можете тоже сами поискать на просторах интернета. 

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


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

@Homer4ik можете вернуть паблик тот, который был. Проблема в функции SetVehicleSpeed, а не в настройке. Если найду нормальную, скину вам. Пока можете тоже сами поискать на просторах интернета. 

Хорошо

 

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


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

@Homer4ik свой stock SetVehicleSpeed попробуйте заменить на этот, должно работать. 

Спойлер

stock SetVehicleSpeed(vehicleid, Float:speed)
{
    new Float:x1, Float:y1, Float:z1, Float:x2, Float:y2, Float:z2, Float:a;
    GetVehicleVelocity(vehicleid, x1, y1, z1);
    GetVehiclePos(vehicleid, x2, y2, z2);
    GetVehicleZAngle(vehicleid, a); a = 360 - a;
    x1 = (floatsin(a, degrees) * (speed/100) + floatcos(a, degrees) * 0 + x2) - x2;
    y1 = (floatcos(a, degrees) * (speed/100) + floatsin(a, degrees) * 0 + y2) - y2;
    SetVehicleVelocity(vehicleid, x1, y1, z1);
}

 

 

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


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

@Homer4ik свой stock SetVehicleSpeed попробуйте заменить на этот, должно работать. 

  Код (открыть спойлер)


stock SetVehicleSpeed(vehicleid, Float:speed)
{
    new Float:x1, Float:y1, Float:z1, Float:x2, Float:y2, Float:z2, Float:a;
    GetVehicleVelocity(vehicleid, x1, y1, z1);
    GetVehiclePos(vehicleid, x2, y2, z2);
    GetVehicleZAngle(vehicleid, a); a = 360 - a;
    x1 = (floatsin(a, degrees) * (speed/100) + floatcos(a, degrees) * 0 + x2) - x2;
    y1 = (floatcos(a, degrees) * (speed/100) + floatsin(a, degrees) * 0 + y2) - y2;
    SetVehicleVelocity(vehicleid, x1, y1, z1);
}

 

 

C:\Users\Ivan\Desktop\ArzamasRP\gamemodes\ArzamasRP.pwn(160) : error 029: invalid expression, assumed zero
C:\Users\Ivan\Desktop\ArzamasRP\gamemodes\ArzamasRP.pwn(160) : warning 215: expression has no effect
C:\Users\Ivan\Desktop\ArzamasRP\gamemodes\ArzamasRP.pwn(160) : error 001: expected token: ";", but found "new"
C:\Users\Ivan\Desktop\ArzamasRP\gamemodes\ArzamasRP.pwn(161) : error 029: invalid expression, assumed zero
C:\Users\Ivan\Desktop\ArzamasRP\gamemodes\ArzamasRP.pwn(161) : warning 215: expression has no effect
C:\Users\Ivan\Desktop\ArzamasRP\gamemodes\ArzamasRP.pwn(161) : error 001: expected token: ";", but found "switch"
C:\Users\Ivan\Desktop\ArzamasRP\gamemodes\ArzamasRP.pwn(162) : error 001: expected token: "{", but found " "
C:\Users\Ivan\Desktop\ArzamasRP\gamemodes\ArzamasRP.pwn(163) : error 029: invalid expression, assumed zero
C:\Users\Ivan\Desktop\ArzamasRP\gamemodes\ArzamasRP.pwn(163) : error 029: invalid expression, assumed zero
C:\Users\Ivan\Desktop\ArzamasRP\gamemodes\ArzamasRP.pwn(163) : error 029: invalid expression, assumed zero
C:\Users\Ivan\Desktop\ArzamasRP\gamemodes\ArzamasRP.pwn(163) : fatal error 107: too many error messages on one line
Compilation aborted.Pawn compiler 3.2.3664     Copyright (c) 1997-2006, ITB CompuPhase

9 Errors.

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


Ссылка на сообщение
Гость
Эта тема закрыта для публикации ответов.
  • Последние посетители   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

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