stock TeleportWithVehicleTrailer(playerid, Float:Vx, Float:Vy, Float:Vz, Float:Va, Float:Px, Float:Py, Float:Pz, Float:Pa) { if(IsPlayerInAnyVehicle(playerid)) { if(GetPlayerState(playerid) != PLAYER_STATE_DRIVER) return SendClientMessage(playerid, 0xFFFFFFFF, "SERVER: Unknown command."); SetVehiclePos(GetPlayerVehicleID(playerid), Float:Vx, Float:Vy, Float:Vz); SetVehicleZAngle(GetPlayerVehicleID(playerid),Float:Va); SetCameraBehindPlayer(playerid); if(IsTrailerAttachedToVehicle(GetPlayerVehicleID(playerid))) { AttachTrailerToVehicle(GetVehicleTrailer(GetPlayerVehicleID(playerid)),GetPlayerVehicleID(playerid)); } } else { SetPlayerPos(playerid, Float:Px, Float:Py, Float:Pz); SetPlayerFacingAngle(playerid, Float:Pa); SetCameraBehindPlayer(playerid); } return 1; }
- Fix for Attach/DetachTrailerFromVehicle (can be applied to streamed in vehicles only). |
stock TeleportWithVehicleTrailer(playerid, Float:Vx, Float:Vy, Float:Vz, Float:Va, Float:Px, Float:Py, Float:Pz, Float:Pa) { if(IsPlayerInAnyVehicle(playerid)) { if(GetPlayerState(playerid) != PLAYER_STATE_DRIVER) return SendClientMessage(playerid, 0xFFFFFFFF, "SERVER: Unknown command."); SetVehiclePos(GetPlayerVehicleID(playerid), Float:Vx, Float:Vy, Float:Vz); SetVehicleZAngle(GetPlayerVehicleID(playerid),Float:Va); SetCameraBehindPlayer(playerid); AttachTrailerToVehicle(GetVehicleTrailer(GetPlayerVehicleID(playerid)),GetPlayerVehicleID(playerid)); SetVehiclePos(GetVehicleTrailer(GetPlayerVehicleID(playerid)), Float:Vx, Float:Vy, Float:Vz); SetVehicleZAngle(GetVehicleTrailer(GetPlayerVehicleID(playerid)), Float:Va); } else { SetPlayerPos(playerid, Float:Px, Float:Py, Float:Pz); SetPlayerFacingAngle(playerid, Float:Pa); SetCameraBehindPlayer(playerid); } return 1; }
Originally Posted by yugokoral
I think yes, look at the last script i posted.
|
stock TeleportWithVehicleTrailer(playerid, Float:Vx, Float:Vy, Float:Vz, Float:Va, Float:Px, Float:Py, Float:Pz, Float:Pa)
{
if(IsPlayerInAnyVehicle(playerid))
{
if(GetPlayerState(playerid) != PLAYER_STATE_DRIVER)
return SendClientMessage(playerid, 0xFFFFFFFF, "SERVER: Unknown command.");
SetVehiclePos(GetPlayerVehicleID(playerid), Float:Vx, Float:Vy, Float:Vz);
SetVehicleZAngle(GetPlayerVehicleID(playerid),Float:Va);
SetCameraBehindPlayer(playerid);
SetVehiclePos(GetVehicleTrailer(GetPlayerVehicleID(playerid)), Float:Vx, Float:Vy, Float:Vz);
SetVehicleZAngle(GetVehicleTrailer(GetPlayerVehicleID(playerid)), Float:Va);
AttachTrailerToVehicle(GetVehicleTrailer(GetPlayerVehicleID(playerid)),GetPlayerVehicleID(playerid)); // this is on the last line
}
else
{
SetPlayerPos(playerid, Float:Px, Float:Py, Float:Pz);
SetPlayerFacingAngle(playerid, Float:Pa);
SetCameraBehindPlayer(playerid);
}
return 1;
}
stock TeleportWithVehicleTrailer(playerid, Float:Vx, Float:Vy, Float:Vz, Float:Va, Float:Px, Float:Py, Float:Pz, Float:Pa)
{
if(IsPlayerInAnyVehicle(playerid))
{
if(GetPlayerState(playerid) != PLAYER_STATE_DRIVER)
return SendClientMessage(playerid, 0xFFFFFFFF, "SERVER: Unknown command.");
SetVehiclePos(GetPlayerVehicleID(playerid), Float:Vx, Float:Vy, Float:Vz);
SetVehicleZAngle(GetPlayerVehicleID(playerid),Float:Va);
SetCameraBehindPlayer(playerid);
if(IsVehicleStreamedIn(GetVehicleTrailer(GetPlayerVehicleID(playerid)), playerid))
{
SetVehiclePos(GetVehicleTrailer(GetPlayerVehicleID(playerid)), Float:Vx, Float:Vy, Float:Vz);
SetVehicleZAngle(GetVehicleTrailer(GetPlayerVehicleID(playerid)), Float:Va);
}
AttachTrailerToVehicle(GetVehicleTrailer(GetPlayerVehicleID(playerid)),GetPlayerVehicleID(playerid));
}
else
{
SetPlayerPos(playerid, Float:Px, Float:Py, Float:Pz);
SetPlayerFacingAngle(playerid, Float:Pa);
SetCameraBehindPlayer(playerid);
}
return 1;
}
stock TeleportWithVehicleTrailer(playerid, Float:Vx, Float:Vy, Float:Vz, Float:Va, Float:Px, Float:Py, Float:Pz, Float:Pa)
{
if(IsPlayerInAnyVehicle(playerid))
{
if(GetPlayerState(playerid) != PLAYER_STATE_DRIVER)
return SendClientMessage(playerid, 0xFFFFFFFF, "SERVER: Unknown command.");
SetVehiclePos(GetPlayerVehicleID(playerid), Float:Vx, Float:Vy, Float:Vz);
SetVehicleZAngle(GetPlayerVehicleID(playerid),Float:Va);
SetCameraBehindPlayer(playerid);
SetVehiclePos(GetVehicleTrailer(GetPlayerVehicleID(playerid)), Float:Vx, Float:Vy, Float:Vz);
SetVehicleZAngle(GetVehicleTrailer(GetPlayerVehicleID(playerid)), Float:Va);
}
else
{
SetPlayerPos(playerid, Float:Px, Float:Py, Float:Pz);
SetPlayerFacingAngle(playerid, Float:Pa);
SetCameraBehindPlayer(playerid);
}
return 1;
}
public OnVehicleStreamIn(vehicleid, forplayerid)
{
AttachTrailerToVehicle(GetVehicleTrailer(GetPlayerVehicleID(forplayerid)),GetPlayerVehicleID(forplayerid));
}