SA-MP Forums Archive
[DUDA]Detectar dos jugadores en un coche - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: Non-English (https://sampforum.blast.hk/forumdisplay.php?fid=9)
+--- Forum: Languages (https://sampforum.blast.hk/forumdisplay.php?fid=33)
+---- Forum: Español/Spanish (https://sampforum.blast.hk/forumdisplay.php?fid=29)
+---- Thread: [DUDA]Detectar dos jugadores en un coche (/showthread.php?tid=365354)



[DUDA]Detectar dos jugadores en un coche - -[R]hysi- - 02.08.2012

Tengo una duda estoy intentando hacer un sistema de carreras que si o si tengan que tener un pasajero (osea que tengan que ser dos en el coche ) y si alguno se baja termine el recorrido y desaparezca el checkpoint..Nose si me explico logre algo asi.


pawn Код:
YCMD:empezarrecorrido(playerid, params[], help)
{
if (help) SendClientMessage(playerid, 0xFF0000AA, "Puedes comprar en la barra."); // Esto no sale si se usa el comando
else
{
if(!IsPlayerInAnyVehicle(playerid)) return Message(playerid, COLOR_GRAD2, "No estбs en un vehнculo!");
SetPlayerCheckpoint(playerid, pos, pos, pos, 15.0);
return 1;
}
return 1;
}
Pero en la parte que tengo que detectar si estan los dos en el coche estoy muerto :S


Respuesta: [DUDA]Detectar dos jugadores en un coche - Bu11Sh0t - 02.08.2012

pawn Код:
stock HayDos(vehicleid)
{
    new count = 0;
    for(new i = 0; i < GetMaxPlayers(); i++)
        if(IsPlayerInVehicle(i, vehicleid))
            count++;
    if(count > 2) return 1;
    else return 0;
}
No ha sido probado pero deberнa funcionar.


Respuesta: [DUDA]Detectar dos jugadores en un coche - -[R]hysi- - 02.08.2012

Quote:
Originally Posted by Bu11Sh0t
Посмотреть сообщение
pawn Код:
stock HayDos(vehicleid)
{
    new count = 0;
    for(new i = 0; i < GetMaxPlayers(); i++)
        if(IsPlayerInVehicle(i, vehicleid))
            count++;
    if(count > 2) return 1;
    else return 0;
}
No ha sido probado pero deberнa funcionar.
Lo probe solo y no me deja usar el comando,me falta probarlo con otra persona(cuando encuentre con quien testearlo aviso)

Muchas gracias.


Respuesta: [DUDA]Detectar dos jugadores en un coche - -[R]hysi- - 03.08.2012

Perdon el doble post pero no funciono.

De esta manera si estoy solo el coche enciende igual

pawn Код:
YCMD:empezarrecorrido(playerid, params[], help)
{
if (help) SendClientMessage(playerid, 0xFF0000AA, "Puedes comprar en la barra."); // Esto no sale si se usa el comando
else
{
new vehicleid = GetPlayerVehicleID(playerid);
if(!IsPlayerInAnyVehicle(playerid)) return Message(playerid, COLOR_GRAD2, "No estбs en un vehнculo!");
if(HayDos(vehicleid)) return Message(playerid, COLOR_GRAD2, "Tienen que ser dos para el recorrido!.");
//SetPlayerCheckpoint(playerid, pos, pos, pos, 15.0);
new enginem, lights, alarm, doors, bonnet, boot, objective;//define las cosas del auto
GetVehicleParamsEx(GetPlayerVehicleID(playerid),enginem, lights, alarm, doors, bonnet, boot, objective);
SetVehicleParamsEx(GetPlayerVehicleID(playerid),VEHICLE_PARAMS_ON, lights, alarm, doors, bonnet, boot, objective);
SendClientMessage(playerid, COLOR_WHITE, "Son dos en el coche.");
return 1;
}
return 1;
}
Y asi

pawn Код:
YCMD:empezarrecorrido(playerid, params[], help)
{
if (help) SendClientMessage(playerid, 0xFF0000AA, "Puedes comprar en la barra."); // Esto no sale si se usa el comando
else
{
new vehicleid = GetPlayerVehicleID(playerid);
if(!IsPlayerInAnyVehicle(playerid)) return Message(playerid, COLOR_GRAD2, "No estбs en un vehнculo!");
if(!HayDos(vehicleid)) return Message(playerid, COLOR_GRAD2, "Tienen que ser dos para el recorrido!.");
//SetPlayerCheckpoint(playerid, pos, pos, pos, 15.0);
new enginem, lights, alarm, doors, bonnet, boot, objective;//define las cosas del auto
GetVehicleParamsEx(GetPlayerVehicleID(playerid),enginem, lights, alarm, doors, bonnet, boot, objective);
SetVehicleParamsEx(GetPlayerVehicleID(playerid),VEHICLE_PARAMS_ON, lights, alarm, doors, bonnet, boot, objective);
SendClientMessage(playerid, COLOR_WHITE, "Son dos en el coche.");
return 1;
}
return 1;
}
el coche aunque seamos dos en el coche no enciende :S

Help


Respuesta: [DUDA]Detectar dos jugadores en un coche - Bu11Sh0t - 03.08.2012

pawn Код:
stock HayDos(vehicleid)
{
    new count = 0;
    for(new i = 0; i < GetMaxPlayers(); i++)
        if(IsPlayerInVehicle(i, vehicleid))
            count++;
    if(count > 1) return 1;//Aqui puse dos envez de uno.
    else return 0;
}
Error corregido. Trata de nuevo


Respuesta: [DUDA]Detectar dos jugadores en un coche - OTACON - 03.08.2012

pawn Код:
stock HayDos(vehicleid, playerid)
{
    for(new i = 0; i < GetMaxPlayers(); i++)
    if(IsPlayerInVehicle(i, vehicleid))
    if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER && GetPlayerState(i) == PLAYER_STATE_PASSENGER) return 1;
    else return 0;
}



Respuesta: [DUDA]Detectar dos jugadores en un coche - -[R]hysi- - 04.08.2012

Muchas gracias ya funciono :P