14.07.2012, 19:46
Bom, estava jogando killing floor(30 mins atrбs lol.) e em um certo momento me venho um ideia de como chamar a public onplayerexitvehicle ao cair da bike, entгo iniciei e cheguei as seguintes conclusхes:
Achei que isto era um cуdigo ъtil, entгo resolvi postar aqui.
Caso ache alguma possнvel falha no code, cite-os que eu tentarei melhorar a lуgica.
pawn Код:
public OnPlayerEnterVehicle(playerid,vehicleid,ispassenger)
{
if(GetVehicleModel(vehicleid) == 448 || 461 || 462 || 463 || 468 || 471 || 481 || 509 || 510 || 521 || 522 || 523 || 586) // Caso seja algum desses modelos.
{
SetPVarInt(playerid,"bike",1); // defini a var bike como 1.
}
return 1;
}
public OnPlayerExitVehicle(playerid, vehicleid) // ao cair da bike este public nгo iria ser chamada, entгo a var "bike" sempre iria ficar como 1, caso ele sempre caнsse.
{
SetPVarInt(playerid,"bike",0); // ao sair defini como 0, assim evitando que a onplayerstatechange seja chamada sem necessidade.
}
public OnPlayerStateChange(playerid, newstate, oldstate)
{
if(GetPVarInt(playerid,"bike") == 1) // Caso ele esteja no veнculo.
{
if(newstate == PLAYER_STATE_ONFOOT && oldstate == PLAYER_STATE_DRIVER) // caso ele esteja no chгo e o seu antigo estado seja dirigindo chamar a public onplayerexitvehicle.
{
CallLocalFunction("OnPlayerExitVehicle","i",playerid);
}
}
return 1;
}
Caso ache alguma possнvel falha no code, cite-os que eu tentarei melhorar a lуgica.