Duda GetPlayerVehicleSeat
#1

Hola, hice un cmd /subir [id][ 1-2](asiento trasero 1 o 2)

pero me nose como aplicar la funcion de GetPlayerVehicleSeat para q cuando use /subie 15 1. me diga q ese asiento ya esta ocupado.

Desde ya -Grax
Reply
#2

pawn Код:
stock AsientoOcupado(playerid, vehicleid, asiento){
  for(new user=0; user<GetMaxPlayers(); user++){
    if(!IsPlayerConnected(user))continue;
    if(playerid == user)continue;
    if(!IsPlayerInVehicle(user, vehicleid))continue;
    if(GetPlayerVehicleSeat(user) == asiento)return true;
}return false;
pawn Код:
if(AsientoOcupado(playerid, vehicleid, asiento)){
// asiento acupado
}else{
// asiento desocupado
}
Reply
#3

Quote:
Originally Posted by OTACON
Посмотреть сообщение
pawn Код:
stock AsientoOcupado(playerid, vehicleid, asiento){
  for(new user=0; user<GetMaxPlayers(); user++){
    if(!IsPlayerConnected(user))continue;
    if(playerid == user)continue;
    if(!IsPlayerInVehicle(user, vehicleid))continue;
    if(GetPlayerVehicleSeat(user) == asiento)return true;
}return false;
pawn Код:
if(AsientoOcupado(playerid, vehicleid, asiento)){
// asiento acupado
}else{
// asiento desocupado
}
Para que usas GetMaxPlayers si puedes usar el playerid del stock?
Reply
#4

Quote:
Originally Posted by jotajeda
Посмотреть сообщение
Para que usas GetMaxPlayers si puedes usar el playerid del stock?
el GetMaxPlayers es para chequear los jugadores que pueden estar en el asiento, y el playerid para chequear que no sea el mismo que usa el comando.

saludos.
Reply
#5

Quote:
Originally Posted by OTACON
Посмотреть сообщение
el GetMaxPlayers es para chequear los jugadores que pueden estar en el asiento, y el playerid para chequear que no sea el mismo que usa el comando.

saludos.
Huy que inteligente, conrazуn.
Reply
#6

me sale esto

PHP код:
error 030compound statement not closed at the end of file (started at line 740
PHP код:
stock AsientoOcupado(playeridvehicleidasiento){
  for(new 
user=0user<GetMaxPlayers(); user++){//<<<-----Linea 740
    
if(!IsPlayerConnected(user))continue;
    if(
playerid == user)continue;
    if(!
IsPlayerInVehicle(uservehicleid))continue;
    if(
GetPlayerVehicleSeat(user) == asiento)return true;
}return 
false
el comando que hice

PHP код:
CMD:subir(playeridparams[])
{
    new 
targetidasiento;
    new 
vehicleid GetPlayerVehicleID(playerid);
    
//if(Jogador[playerid][pMedico] != 1)return SendClientMessage(playerid, -1, "No eres medico");
    
if(GetPlayerState(playerid) != PLAYER_STATE_DRIVER)return SendClientMessage(playerid,-1,"Tienes que ser el conductor de la ambulancia");
    if(
EsAmbu(GetPlayerVehicleID(playerid) ) != 1)return SendClientMessage(playerid,-1,"Tienes que estar en un vehiculo de medicos");
    if(
sscanf(params,"ud"targetidasiento)) return SendClientMessage(playerid, -1,"Usa /subir [ID][1 - 2]");
    if(!
IsPlayerConnected(targetid)) return SendClientMessage(playerid, -1,"Jugador no conectado");
    if(!(
asiento >= && asiento 2))
    {
       return 
SendClientMessage(playerid, -1"Asiento invalido. 1 o 2");
    }
    if(
AsientoOcupado(playeridvehicleidasiento))
    {
       
SendClientMessage(playerid, -1"Asiento ocupado.");
    }
    else
    {
       
PutPlayerInVehicle (targetidGetPlayerVehicleID(playerid), asiento);
    }
    return 
1;

Cuando puse el stock solo. No me dio nada de error. Me salto ese error al agregar la funcion al comando
Reply
#7

Cambia el stock asн

Код:
stock AsientoOcupado(playerid, vehicleid, asiento){ 
  for(new user=0; user<GetMaxPlayers(); user++){
    if(!IsPlayerConnected(user))continue; 
    if(playerid == user)continue; 
    if(!IsPlayerInVehicle(user, vehicleid))continue; 
    if(GetPlayerVehicleSeat(user) == asiento)return true; 
}return false;}
Te faltу un corchete al final.
Reply
#8

Gacias Diego. Y mil gracias Otacon
Reply
#9

pawn Код:
CMD:subir(playerid, params[]){
    new jugadorid, asiento;
    new vehicleid = GetPlayerVehicleID(playerid);
    //if(Jogador[playerid][pMedico] != 1)return SendClientMessage(playerid, -1, "No eres medico");
    if(GetPlayerState(playerid) != PLAYER_STATE_DRIVER)return SendClientMessage(playerid,-1,"Tienes que ser el conductor de la ambulancia");
    if(EsAmbu(GetPlayerVehicleID(playerid) ) != 1)return SendClientMessage(playerid,-1,"Tienes que estar en un vehiculo de medicos");
    if(sscanf(params,"ud", jugadorid, asiento)) return SendClientMessage(playerid, -1,"Usa /subir [ID][1 - 2]");
    if(!IsPlayerConnected(jugadorid)) return SendClientMessage(playerid, -1,"Jugador no conectado");
    if(asiento == 1 || asiento == 2) return SendClientMessage(playerid, -1, "Asiento invalido. 1 o 2");
    if(!AsientoOcupado(playerid, vehicleid, asiento)) return SendClientMessage(playerid, -1, "el asiento esta ocupado");

    PutPlayerInVehicle(jugadorid, vehicleid, asiento);
    SendClientMessage(jugadorid, -1, "te han subido al vehiculo.");
    return true;
}
pawn Код:
stock AsientoOcupado(playerid, vehicleid, asiento){
  for(new user=0; user<GetMaxPlayers(); user++){
    if(!IsPlayerConnected(user))continue;
    if(playerid == user)continue;
    if(!IsPlayerInVehicle(user, vehicleid))continue;
    if(GetPlayerVehicleSeat(user) == asiento)return true;
}return false;}
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)