stock TeleportJumperEasy(playerid, Float:distancia, Float:enterx,Float:entery,Float:enterz,intenter,vwenter, Float:exitx,Float:exity,Float:exitz,intexit,vwexit, estado=PLAYER_STATE_ONFOOT) {
if(IsPlayerInRangeOfPoint(playerid, distancia, enterx,entery,enterz)) {
switch(estado) {
case PLAYER_STATE_ONFOOT: {
SetPlayerPos(playerid,enterx,entery,enterz);
SetPlayerInterior(playerid, intenter);
SetPlayerVirtualWorld(playerid, vwenter);
} case PLAYER_STATE_DRIVER: {
SetVehiclePos(GetPlayerVehicleID(playerid), enterx,entery,enterz);
LinkVehicleToInterior(GetPlayerVehicleID(playerid), intenter);
SetVehicleVirtualWorld(GetPlayerVehicleID(playerid), vwenter);
for(new player=0; player<GetMaxPlayers(); player++) {
if(!IsPlayerConnected(player)) continue;
if(IsPlayerInVehicle(player, GetPlayerVehicleID(playerid)) && GetPlayerState(player)==PLAYER_STATE_PASSENGER) {
SetPlayerInterior(player, intenter);
SetPlayerVirtualWorld(player, vwenter);
break;
}
} }
}
} else if(IsPlayerInRangeOfPoint(playerid, distancia, exitx,exity,exitz)) {
switch(estado) {
case PLAYER_STATE_ONFOOT: {
SetPlayerPos(playerid,exitx,exity,exitz);
SetPlayerInterior(playerid, intexit);
SetPlayerVirtualWorld(playerid, vwexit);
} case PLAYER_STATE_DRIVER: {
SetVehiclePos(GetPlayerVehicleID(playerid), exitx,exity,exitz);
LinkVehicleToInterior(GetPlayerVehicleID(playerid), intexit);
SetVehicleVirtualWorld(GetPlayerVehicleID(playerid), vwexit);
for(new player=0; player<GetMaxPlayers(); player++) {
if(!IsPlayerConnected(player)) continue;
if(IsPlayerInVehicle(player, GetPlayerVehicleID(playerid)) && GetPlayerState(player)==PLAYER_STATE_PASSENGER) {
SetPlayerInterior(player, intexit);
SetPlayerVirtualWorld(player, vwexit);
break;
}
} }
}
} return true;
}
if(IsPlayerInRangeOfPoint(playerid, distancia, enterx,entery,enterz))
SetPlayerPos(playerid,enterx,entery,enterz);
Por lo que yo entiendo...
Aquн compruebas si el jugador estб a "X" distancia del punto de entrada. pawn Код:
pawn Код:
|