All pastes #406828 Raw Edit

Something

public text v1 · immutable
·published 2007-03-22 18:47 UTC
rendered paste body
//above main()

new NULL = 0;
new Float:rFixLoc[9][4] = {
	{1975.1804,2162.5784,10.8704,90.1089},
	{-100.1352,1118.3375,19.5417,181.2912},
	{-1420.5887,2585.4241,55.6433,358.5637},
	{-1904.7299,283.3181,40.8468,180.4850},
	{-2425.5505,1022.5369,50.1976,0.4951},
	{720.1949,-457.7932,16.1359,179.5804},
	{2066.0303,-1831.3240,13.3469,269.5785},
	{488.0963,-1740.4331,10.9467,358.9579},
	{1024.8448,-1023.6094,31.9015,179.0922}};
new Float:pFixLoc[3],FixPID;


//somewhere in OnPlayerCommandText

if(strcmp(cmdtext,"/fix",true) == 0)
{
    new rFix = random(sizeof(rFixLoc));
    GetPlayerPos(playerid,pFixLoc[0],pFixLoc[1],pFixLoc[2]);
    TeleportPlayer(playerid,rFixLoc[rFix][0],rFixLoc[rFix][1],rFixLoc[rFix][2],rFixLoc[rFix][3],0," ",0,0);
    FixPID = playerid;
    SetTimer("TeleBack",5000,0);
    return 1;
}


//put these two anywhere in your script

public TeleportPlayer(playerid,Float:x,Float:y,Float:z,Float:ang,intr,const msg[],time,style)
{
    new cars=GetPlayerVehicleID(playerid);
    new State=GetPlayerState(playerid);
    if(State != PLAYER_STATE_DRIVER)
    {
        SetPlayerPos(playerid,x,y,z);
	SetPlayerFacingAngle(playerid,ang);
    }
    else if(IsPlayerInVehicle(playerid,cars) == 1)
    {
	SetVehiclePos(cars,x,y,z);
	SetVehicleZAngle(cars,ang);
    }
    else
    {
	SetPlayerPos(playerid,x,y,z);
	SetPlayerFacingAngle(playerid,ang);
    }
    SetPlayerInterior(playerid,intr);
    if(time == NULL || style == NULL)
    {
        return 1;
    }
    else
    {
        GameTextForPlayer(playerid,msg,time,style);
    }
    return 1;
}

public TeleBack()
{
	TeleportPlayer(FixPID,pFixLoc[0],pFixLoc[1],pFixLoc[2],random(360),0," ",0,0);
	return 1;
}