26.10.2012, 07:36
I made the code a little easier to read for you.
I don't see why removing the "return 1;" should give any errors, this code should work perfectly fine.
Jesse
EDIT:
Just seen the replies, FML xD
I don't see why removing the "return 1;" should give any errors, this code should work perfectly fine.
pawn Код:
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
if(newstate == PLAYER_STATE_DRIVER || newstate == PLAYER_STATE_PASSENGER)
{
new vehicleid = GetPlayerVehicleID(playerid),
playingid = v_VehicleInfo[vehicleid][RadioPlaying];
if(USE_TEXTDRAW_SET == 2)
{
new string[50];
format(string,sizeof(string),"Listening to: ~n~~w~%s",r_RadioInfo[playingid][r_Name]);
TextDrawSetString(v_VehicleInfo[vehicleid][r_Draw],string);
}
else
{
TextDrawSetString(v_VehicleInfo[vehicleid][r_Draw],r_RadioInfo[playingid][r_Name]);
}
TextDrawShowForPlayer(playerid,v_VehicleInfo[vehicleid][r_Draw]);
SetPVarInt(playerid,"ID_HideRadioTextdraw",SetTimerEx("HideRadioTextdraw",TEXTDRAW_DISAPPEAR_TIME,false,"ii",playerid,vehicleid));
PlayAudioStreamForPlayer(playerid,r_RadioInfo[playingid][r_Link]);
SetPVarInt(playerid,"ID_OldVehicle",vehicleid);
}
if(oldstate == PLAYER_STATE_DRIVER || oldstate == PLAYER_STATE_PASSENGER)
{
new vehicleid = GetPVarInt(playerid,"ID_OldVehicle"),
timer = GetPVarInt(playerid,"ID_HideRadioTextdraw");
if(timer != -1)
{
TextDrawHideForPlayer(playerid,v_VehicleInfo[vehicleid][r_Draw]);
KillTimer(timer);
}
StopAudioStreamForPlayer(playerid);
}
}
EDIT:
Just seen the replies, FML xD