Posts: 4,930
Threads: 467
Joined: Dec 2010
Buenas a Todos, Ayuda con esto...
Asi funciona Perfectamente:
pawn Код:
public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
{
if(!ispassenger)
{
if(vehicleid == variablevehiculo)
{
if(!Variable[playerid]) //<------------
{
//SendClientMessage ...
}
return 0;
}
}
return 1;
}
y aca cuando kiero agregar otra variable para ke compruebe si tiene una variable y otra, con los opeadores
&& hay ya me causa problema y no chekea nada y deja subir al vehiculos siempre:
pawn Код:
public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
{
if(!ispassenger)
{
if(vehicleid == variablevehiculo)
{
if(!Variable[playerid] && !VariableNueva[playerid]) //<------------
{
//SendClientMessage ...
}
return 0;
}
}
return 1;
}
Me pueden decir ke sucede?.
Desde ya muchas Gracias.
Posts: 836
Threads: 0
Joined: Dec 2010
Reputation:
0
Ambas variables deben ser igual a 0 (! es lo mismo que == 0)
Posts: 4,930
Threads: 467
Joined: Dec 2010
Quote:
Originally Posted by Daniel-92
Ambas variables deben ser igual a 0 (! es lo mismo que == 0)
|
ya lo se, y tambien comprobe y pasa lo mismo :S.
las variables son bool.
Posts: 836
Threads: 0
Joined: Dec 2010
Reputation:
0
no hay ningъn error en cуdigo, si lo que querйs es que el jugador evite entrar al vehiculo con retornar 0 o 1 no haces nada, tal vez cambiandolo de posiciуn funcione.
probб poniendo un printf arriba del if
printf("(%d && %d) == %d",!Variable[playerid],!VariableNueva[playerid],!Variable[playerid] && !VariableNueva[playerid]);
Posts: 4,930
Threads: 467
Joined: Dec 2010
aver...
estoy medio confuso
XD.
tengo 2 tipos de vehiculos vefinidos con variabla, ahora creare 2 comandos, uno sera para usar un tipo de vehiculo y el otro para usar el otro.
la primer variable seria para poder usar los comando en general, y la segunda para no permitir usar el otro itpo de vehiculo si ya esta usando el otro.
Com podria hacer eso?.
PD: osea no permitirlo entrar con OnPlayerEnterVehicle .
Posts: 4,930
Threads: 467
Joined: Dec 2010
Quote:
Originally Posted by CaptainMactavish
OnPlayerEnterVehicle se llama cuando apretas el botуn para entrar al vehнculo, puede que hayas entrado o no, la callback se llamarб igual. Lo que tenйs que usar es OnPlayerStateChange y comprar newstate con PLAYER_STATE_DRIVER.
pawn Код:
if(!Variable[playerid] && !VariableNueva[playerid])
Traducido serнa:
pawn Код:
si Variable[playerid] esta en false y VariableNueva[playerid] esta en false entonces
Tambiйn podйs hacer la inversa, con la condiciуn contraria y poniendo un return para terminar la ejecuciуn de la callback.
|
es ke lo coloco en OnPlayerEnterVehicle por ke le pongo dento un GetPlayerPos y un SetPlayerPos con z+2.0 asi cuando intenta entrar con entero con g salta el player pero afuera del vehiculo, y en OnPlayerStateChange el player entrar al vehiculo y sale y se kedaria arriba del techo :S.
Pero no tengo problema con eso, es con las variables y operadores.
y lo estoy poniendo bien , y los ejemplo ke me dan explicando es como lo estoy colocando ¬¬.
Posts: 4,930
Threads: 467
Joined: Dec 2010