Detectar si esta con trailer -
chucho - 12.10.2012
hola que tal quiero saber como puedo hacer para detectar que este en un camion con caja de carga y si la caja se quita del camion me mande un mensaje diciendo que no trae caja?
Respuesta: Detectar si esta con trailer -
Parka - 12.10.2012
bueno puedes usar esta
GetVehicleTrailer o esta
DetachTrailerFromVehicle dependiendo de para que lo utilizaras
EDIT: con esto puedes chequear
IsTrailerAttachedToVehicle
Respuesta: Detectar si esta con trailer -
TiNcH010 - 12.10.2012
Como dijo cesar, podes usar la funciуn IsTrailerAttachedToVehicled.
pawn Код:
if(!IsTrailerAttachedToVehicle(GetPlayerVehicleID(playerid)))
{
SendClientMessage(playerid, -1, "No llevas un trailer enganchado!");
return 1;
}
Respuesta: Detectar si esta con trailer -
chucho - 12.10.2012
comprendo lo que sucede es lo siguiente
yo estoy manejando un camion con trailer enganchado, despues doy una vuelta y se desengancha y quiero que cuando se desenganche envie un mensaje indicando que no llevo el trailer enganchando pero no se en que callback o como realizar la funcion
Respuesta: Detectar si esta con trailer -
-[R]hysi- - 12.10.2012
podes hacer un timer que se ejecute en onplayerstatechange cuando alguien se sube a un camion y que detecte el trailer si no lo tiene que mande el mensaje.
Respuesta: Detectar si esta con trailer -
Parka - 12.10.2012
Creas Una Variable Que Te Indique Cuando Montes Ese Vehiculo en especifico luego haces lo siguiente
PHP код:
///---recuerda setearlo a 0
new SiTieneTrailer[MAX_PLAYERS];
public OnPlayerStateChange(playerid, newstate, oldstate)
{
if(SiTieneTrailer[playerid] == 1)
{
if(!IsTrailerAttachedToVehicle(GetPlayerVehicleID(playerid)))
{
SendClientMessage(playerid, -1, "No llevas un trailer enganchado!");
/// aqui colocas el timer que contara la funcion que aras al pasar el time sin el trailer puesto
return 1;
}
else
{
// aqui iria la funcion si tiene trailer
}
}
return 1;
}
public OnPlayerExitVehicle(playerid, vehicleid)
{
if(vehicleid == iddelcamion)
{
SiTieneTrailer[playerid] = 0;
}
return 1;
}
public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
{
if(vehicleid == iddelcamion)
{
SiTieneTrailer[playerid] = 1;
}
return 1;
}
PD: si asi no es ps noce como :S
Respuesta: Detectar si esta con trailer -
TiNcH010 - 12.10.2012
pawn Код:
new Timer[MAX_PLAYERS];
new Mensaje[MAX_PLAYERS];
forward TimerCheck(playerid);
public OnPlayerStateChange(playerid, newstate, oldstate)
{
if(newstate == PLAYER_STATE_DRIVER) // Mensaje al conductor.
{
Timer[playerid] = SetTimerEx("TimerCheck", 1000, 0, "d", playerid);
Mensaje[playerid] = 1;
return 1;
}
if(oldstate == PLAYER_STATE_DRIVER)
{
KillTimer(Timer[playerid]);
Mensaje[playerid] = 0;
return 1;
}
return 1;
}
public TimerCheck(playerid)
{
if(Mensaje[playerid] == 1)
{
if(!IsTrailerAttachedToVehicle(GetPlayerVehicleID(playerid)))
{
SendClientMessage(playerid, -1, "No llevas un trailer enganchado!");
return 1;
}
}
Mensaje[playerid] = 0;
}
Eso es un ejemplo de lo que pedis. Si queres que cuando no haya nadie dentro del camiуn y cuando el acoplado se salga y le envнe un mensaje, entonces en vez de usar los parбmetros de playerid usa los de vehicleid (MAX_VEHICLES).