GTA Közösség - A magyar GTA fórum

San Andreas Multiplayer (SA-MP) => SA-MP: Szerverfejlesztés => A témát indította: Sramm - 2012. július 19. - 14:16:48

Cím: Teleport
Írta: Sramm - 2012. július 19. - 14:16:48
A legújabb alkotásom:
 
#define JARMUVEL 1
#define JARMUNELKUL 0
 
stock Teleport(playerid,Float:x,Float:y,Float:z,interior,vw,withveh)
{
if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
{
    new veh = GetPlayerVehicleID(playerid);
    for(new i; i<MAX_PLAYERS; i++)
    {
        if(IsPlayerInVehicle(i,veh) && i != playerid)
        {
            RemovePlayerFromVehicle(i);
   }
}
if(withveh == 1)
{
   new Float:a;
   GetPlayerFacingAngle(playerid,a);
   SetPlayerPos(playerid,x,y,z);
   SetPlayerInterior(playerid,interior);
   SetPlayerFacingAngle(playerid,a);
   SetPlayerVirtualWorld(playerid,vw);
   SetVehiclePos(veh,x,y,z);
   LinkVehicleToInterior(veh,interior);
   SetVehicleVirtualWorld(veh, vw);
   SetVehicleZAngle(veh, a);
}
else
{
   RemovePlayerFromVehicle(playerid);
   new Float:a;
   GetPlayerFacingAngle(playerid,a);
   SetPlayerPos(playerid,x,y,z);
   SetPlayerInterior(playerid,interior);
   SetPlayerFacingAngle(playerid,a);
   SetPlayerVirtualWorld(playerid,vw);
}
return 1;
}
new Float:a;
GetPlayerFacingAngle(playerid,a);
SetPlayerPos(playerid,x,y,z);
SetPlayerInterior(playerid,interior);
SetPlayerFacingAngle(playerid,a);
SetPlayerVirtualWorld(playerid,vw);
return 1;
}

 
Használat:
 

CMD:teleboltba(playerid,params[])
{
Teleport(playerid,x,y,z,interior,virtualworld,JARMUNELKUL); //Általában boltba nem kocsival megyünk :D
return 1;
}
CMD:telegarazsba(playerid,params[])
{
Teleport(playerid,x,y,z,interior,virtualworld,JARMUVEL);
return 1;
}

 

További ötleteket várok Függvénykönyvtár,Kód, vagy Filterscript készítéséhez.
Cím: Teleport
Írta: Flash - 2012. július 19. - 14:34:04
        new Float:a;
        GetPlayerFacingAngle(playerid,a);
        SetPlayerPos(playerid,x,y,z);
        SetPlayerInterior(playerid,interior);
        SetPlayerFacingAngle(playerid,a);
        SetPlayerVirtualWorld(playerid,vw);

 
Ez minek van duplán?
Cím: Teleport
Írta: Sramm - 2012. július 19. - 14:36:30
Ha jobban megnéznéd tudnád.
Cím: Teleport
Írta: Striker - 2012. július 31. - 19:44:53
hááát nemrossz :D
Cím: Teleport
Írta: ZyZu. - 2012. július 31. - 21:00:07
Én így csináltam és nekem megyen és szerintem egyszerûbb így.
 

CMD:tele-b(playerid,params[])
{
        if(IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid,0x00FF00AA,\"Kocsiban nem Teleportáhatol!\");
        SetPlayerPos(playerid, POS);
        return 1;
}