Szerző Téma: Teleport funkció hiba  (Megtekintve 785 alkalommal)

Teleport funkció hiba
« Dátum: 2016. február 29. - 07:03:31 »
0 Show voters
Sziasztok! Könnyíteni akartam a munkámon és elkezdtem egy teleport funkciót írni, amit beírtam az OnPlayerUpdate alá, de mindig az adott kordinátára dob :SS
 
forward Teleport(playerid,Float:range,Float:ax,Float:ay,Float:az,Float:bx,Float:by,Float:bz,interior);

 

public Teleport(playerid,Float:range,Float:ax,Float:ay,Float:az,Float:bx,Float:by,Float:bz,interior)
{
    if(IsPlayerInRangeOfPoint(playerid, range, ax, ay, az))
    {
        SetPlayerPos(playerid,bx,by,bz);
        SetPlayerInterior(playerid,interior);
        PlayerInfo[playerid][PosInt] = interior;
        PlayerInfo[playerid][PosX] = bx;
        PlayerInfo[playerid][PosX] = by;
        PlayerInfo[playerid][PosX] = bz;
    }
    return 1;
}

 
az A betűvel kezdődő kordináták az ahol éppen áll a player, a B ahova rakja le.

Teleport funkció hiba
« Válasz #1 Dátum: 2016. február 29. - 09:57:27 »
0 Show voters
public Teleport(playerid,Float:range,Float:ax,Float:ay,Float:az,Float:bx,Float:by,Float:bz,interior)
{
    if(IsPlayerInRangeOfPoint(playerid, range, ax, ay, az))
    {
        SetPlayerPos(playerid,bx,by,bz);
        SetPlayerInterior(playerid,interior);
        PlayerInfo[playerid][PosInt] = interior;
        PlayerInfo[playerid][PosX] = bx;
        PlayerInfo[playerid][PosX] = by;
        PlayerInfo[playerid][PosX] = bz;
    }
    return 1;
}

 
így is használod?
 
public OnPlayerUpdate(playerid)
{
     new Float:Poz[3];
     GetPlayerPos(playerid, Poz[0], Poz[1], Poz[2]);
     Teleport(playerid,5.0,Poz[0], Poz[1], Poz[2], 0 ,0 ,3,0);
     return true;
}
« Utoljára szerkesztve: 2016. február 29. - 10:59:07 írta Brian Harris »

Teleport funkció hiba
« Válasz #2 Dátum: 2016. február 29. - 16:02:27 »
0 Show voters
Nem így csináltam, teljesen máshogy de így nekem is jobban tetszik, még valami, ha többet akarok akkor azt hogy csináljam meg?
Így jó lenne?
 
public OnPlayerUpdate(playerid)
{
     new Float:Poz[3];
     GetPlayerPos(playerid, Poz[0], Poz[1], Poz[2]);
     Teleport(playerid,5.0,Poz[0], Poz[1], Poz[2], 0 ,0 ,3,0);
     Teleport(playerid,5.0,Poz[0],Poz[1],Poz[2],500,500,500,0);
     return true;
}

Nem elérhető BVZS

  • 487
    • Profil megtekintése
Teleport funkció hiba
« Válasz #3 Dátum: 2016. február 29. - 16:15:15 »
0 Show voters
        PlayerInfo[playerid][PosX] = bx;
        PlayerInfo[playerid][PosX] = by;
        PlayerInfo[playerid][PosX] = bz;

 
Szerintem ne ugyan abba a változóba ments 3 koordinátát :D ([PosX] van mindegyiknél)

Teleport funkció hiba
« Válasz #4 Dátum: 2016. február 29. - 16:17:00 »
0 Show voters
Figyelmetlenség volt, köszi h szóltál.
Amúgy első hozzászóló: annak sok értelme nem lenne, mivel lekéri a pozt, és ha annál a poznál van (ezesetben amit lekért) akkor elteleportálja, lehet én értelmezem rosszul de szerintem az van ott.

Dupla hozzászólás automatikusan összefûzve. ( 2016. február 29. - 16:34:22 )

Sikerült megcsinálnom. Azért köszi szépen a segítségeteket, 1. hozzászóló adott egy ötletet egy másik script elkészítésében a 2. meg egy figyelmetlenségre hívta fel a figyelmem!
« Utoljára szerkesztve: 2016. február 29. - 16:34:22 írta Zippanto »

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal