Poner a jugador al volante
#1

Hola alguien sabe como puedo poner al jugador para que sea conductor es decir que si pone /comando aparesca en un auto como conductor...
tambien me podrian decir como hacer para que no puedan salir del auto
Reply
#2

https://sampwiki.blast.hk/wiki/Function:PutPlayerInVehicle
Reply
#3

Gracias y como hago para que cuando ponga el comando aparesca con un auto
Reply
#4

pawn Код:
if(!strcmp(cmdtext, "/Comando", true))
    {
    new vehicleid = GetPlayerVehicleID(playerid);
    new Float:var0 = 0, Float:var1 = 0, Float:var2 = 0, Float:var3 = 0;
    GetPlayerPos(playerid, var0, var1, var2);
    GetPlayerFacingAngle(playerid, var3);
    CreateVehicle(432, var0 + 1, var1 + 1, var2, var3, 1, 1, 10000);//432 es la id de un tanque, cambialo
    PutPlayerInVehicle(playerid, vehicleid, 0);
    return 1;
    }
Reply
#5

Quote:
Originally Posted by Jose_grana
Посмотреть сообщение
pawn Код:
if(!strcmp(cmdtext, "/Comando", true))
    {
    new vehicleid = GetPlayerVehicleID(playerid);
    new Float:var0 = 0, Float:var1 = 0, Float:var2 = 0, Float:var3 = 0;
    GetPlayerPos(playerid, var0, var1, var2);
    GetPlayerFacingAngle(playerid, var3);
    CreateVehicle(432, var0 + 1, var1 + 1, var2, var3, 1, 1, 10000);//432 es la id de un tanque, cambialo
    PutPlayerInVehicle(playerid, vehicleid, 0);
    return 1;
    }
Ese comando estб mal porque GetPlayerVehicleID devuelve un valor erroneo cuando no estб ningъn vehнculo.
Corregido:
pawn Код:
new PlayerVehicle[MAX_PLAYERS]; //arriba de todo del script

if(!strcmp(cmdtext, "/Comando", true))
{
    new Float:var0 = 0, Float:var1 = 0, Float:var2 = 0, Float:var3 = 0;
    if(IsPlayerInVehicle(playerid)) return SendClientMessage(playerid, 0xFF0000FF, "Estбs en un vehнculo."),1;
    if(GetVehicleModel(PlayerVehicle[playerid])) DestroyVehicle(PlayerVehicle[playerid]);
    GetPlayerPos(playerid, var0, var1, var2);
    GetPlayerFacingAngle(playerid, var3);
    PlayerVehicle[playerid] = CreateVehicle(432, var0 + 1, var1 + 1, var2, var3, 1, 1, 10000);//432 es la id de un tanque, cambialo
    PutPlayerInVehicle(playerid, PlayerVehicle[playerid], 0);
    return 1;
}
Reply
#6

me queda claro ya realize mi comando pero tengo una duda... existe algun codigo para que no permita al jugador salir del vehiculo hasta que muera?
Reply
#7

No lo testee

Arriba del gm

pawn Код:
#define NOEXISTE (-1)
new bool:ForzarCoche[MAX_PLAYERS];
new gLastCar[MAX_PLAYERS];
En OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)

Pon

pawn Код:
ForzarCoche[playerid] = true;
EnOnPlayerConnect(playerid)

pawn Код:
ForzarCoche[playerid] = false;
    gLastCar[playerid] = NOEXISTE;


En OnPlayerUpdate(playerid)
pawn Код:
if (ForzarCoche[playerid] == true)
    {
    new Coche = gLastCar[playerid];
    PutPlayerInVehicle(playerid, id, Coche);//Dudo que funcione pero prueba...
    return 1;
    }
Reply
#8

OnPlayerUpdate? Are you fucking kidding me?
їEstбs conciente de los recursos que come esa callback? їPor quй no usar OnPlayerStateChange?
Reply
#9

Simplemente no podrб manejar ya que lo estarнas poniendo aproximadamente 20 veces por segundo en el auto, tanto que el jugador se puede lagear..
Reply
#10

Tienes razуn, mejor en OnPlayerStateChange.

Hice el cуdigo rбpido y no recordй ente public.

Fallo mio.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)