Posts: 4,930
Threads: 467
Joined: Dec 2010
pawn Код:
public OnPlayerExitVehicle(playerid, vehicleid)
{
if(UsingBelt[playerid] == 1)
{
if(PutPlayerInVehicle(playerid, vehicleid, 1) || PutPlayerInVehicle(playerid, vehicleid, 2) || PutPlayerInVehicle(playerid, vehicleid, 3))
SendClientMessage(playerid, ROJO_OSCURO, "* Debes quitarte el cinturon (/cinturon) para poder bajarte.");
return 1;
}
return 1;
}
---> https://sampwiki.blast.hk/wiki/Function:PutPlayerInVehicle
Posts: 836
Threads: 0
Joined: Dec 2010
Reputation:
0
el code estб bien no le veo ningun error es raro que no te funcione.
Posts: 211
Threads: 32
Joined: Jul 2010
Reputation:
0
Es que cuando soy conductor, se me baja aunque lo tenga, en cambio, si soy pasajero, no se baja...
Posts: 1,675
Threads: 34
Joined: Feb 2010
Reputation:
0
Cuando suben hace que se guarde el asiento en una variable, cuando bajan usa esa variable para setear el lugar.
Posts: 4,930
Threads: 467
Joined: Dec 2010
Quote:
Originally Posted by rubensm
pawn Код:
if(strcmp(cmd, "/cinturon", true) == 0) { if(IsPlayerConnected(playerid)) { if(IsPlayerInAnyVehicle(playerid)) { GetPlayerName(playerid, sendername, sizeof(sendername)); if(!BikeModel(playerid)) { if(UsingBelt[playerid] == 0) { format(string, sizeof(string), "* %s se abrocha el cinturуn.", sendername); MandarMensajeCercano(30.0, playerid, string, ROSA,ROSA,ROSA,ROSA,ROSA); UsingBelt[playerid] = 1; } else { format(string, sizeof(string), "* %s se desabrocha el cinturуn.", sendername); MandarMensajeCercano(30.0, playerid, string, ROSA,ROSA,ROSA,ROSA,ROSA); UsingBelt[playerid] = 0; } } } } return 1; }
Lo que yo quiero, es que el conductor no se pueda bajar tampoco...
|
Fijate la pagina ke te pase , para ke el conductor tambien , agrega un PutPlayerInVehicle mas con el numero 0 ke es el asiento del conductor.
y el code anda perfecto
.
0 - Conductor
1 - acompaсante del conductor
2 - Pasajero de atras izquierdo
3 - pasajero de atras derecho
4+ - Asientos para pasajeros (autobъs, etc)
Posts: 211
Threads: 32
Joined: Jul 2010
Reputation:
0
Nada sigue sin funcionarme tras seguir investigando varios dнas, Julian, їpodrнas decirme mas o menos algo de como hacerlo?
Gracias de antemano.
Posts: 522
Threads: 25
Joined: May 2012
Reputation:
0
Queria que alguem me ensina como fazer texdraw que mostra fps,ping,score,spree, Se alguem pode me ensina agradeзo desde de ja
Posts: 1,461
Threads: 71
Joined: Oct 2010
24.05.2012, 19:37
(
Last edited by Jovanny; 24/05/2012 at 11:07 PM.
)
El problema es que al usar GetPlayerVehicleSeat retorna -1 si el player no esta en un vehiculo, y probablemente el onplayerexitvehicle es llamado cuando el player ya esta afuera del auto, por lo que mejor almacenamos el seatid al entrar al vehiculo
pawn Code:
new PlayerSeat[MAX_PLAYERS];
public OnPlayerConnect(playerid)
{
PlayerSeat[playerid] = -1;
}
public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
{
PlayerSeat[playerid] = GetPlayerVehicleSeat(playerid);
return 1;
}
public OnPlayerExitVehicle(playerid, vehicleid)
{
if(UsingBelt[playerid] && PlayerSeat[playerid] != -1)
{
PutPlayerInVehicle(playerid, vehicleid, PlayerSeat[playerid]);
SendClientMessage(playerid, ROJO_OSCURO, "* Debes quitarte el cinturon (/cinturon) para poder bajarte.");
}
else PlayerSeat[playerid] = -1;
return 1;
}
public OnPlayerStateChange(playerid, newstate, oldstate)
{
if(oldstate == PLAYER_STATE_DRIVER && UsingBelt[playerid] && PlayerSeat[playerid] != -1)
{
PutPlayerInVehicle(playerid, vehicleid, PlayerSeat[playerid]);
SendClientMessage(playerid, ROJO_OSCURO, "* Debes quitarte el cinturon (/cinturon) para poder bajarte.");
}
else if(!UsingBelt[playerid] && oldstate == PLAYER_STATE_DRIVER) PlayerSeat[playerid] = -1;
return 1;
}
Posts: 147
Threads: 6
Joined: Nov 2011
Reputation:
0
OnPlayerExitVehicle es llamado desde que presionas la tecla F y cuando se hace la anim del PJ saliendo del auto y termina de salir entonces se llama OnPlayerStateChange.
Si sales de otra forma que no sea por la tecla de salir (Ej: setplayerpos, putplayerinvehicle) no se llama OnPlayerExitVehicle.