GTAMulti.com - Türkiye'nin Türkçe GTA Sitesi

Hile nasıl Fixlenir ? Mantıken Anlatım !

Başlatan Rouge, 29 Eylül 2019, 18:48:28

« önceki - sonraki »

0 Üye ve 1 Ziyaretçi konuyu incelemekte.

Rouge

.
Son düzenlenme: 30 Eylül 2019, 18:18:27 Prisonero Sebep: kaldırırmısınız PiloT

Rouge

beyler biliyorum anlatımda şekilleme kötü çok önceden bir platforumda yayınlamıştım şimdi burada yayınlıyorum. Anlatımı alır "Pawno" da kopyala yapıştır yaparsanız daha yararlı olur.


Mükemmelliyetçi

Alıntı yapılan: Rouge. - 29 Eylül 2019, 18:50:42
beyler biliyorum anlatımda şekilleme kötü çok önceden bir platforumda yayınlamıştım şimdi burada yayınlıyorum. Anlatımı alır "Pawno" da kopyala yapıştır yaparsanız daha yararlı olur.
Konuyu düzenleyin şu şekilde düzenleyin daha acık ve net bir anlatım yapın!


static stock ANLATIM : deişkenlerimizi oluşturduk.
PAWN Kodu: Seç
Float:AC_Position[3],
    pLastPosTick[MAX_PLAYERS],
    BitArray:AC_SafeTP<MAX_PLAYERS>
;

Public'in altına ekleyiniz.
PAWN Kodu: Seç
public OnPlayerUpdate
    if(gettime() - pLastPosTick[playerid] > 2) //updates the player location every 2 seconds.
    {
        //on-foot
        if( !IsPlayerInRangeOfPoint(playerid, 70.0, AC_Position
[list][li], AC_Position[1], AC_Position[2]) && !Bit_Get(AC_SafeTP, playerid) && !IsPlayerNPC(playerid)[/li][/list]
        && GetPlayerState(playerid) == PLAYER_STATE_ONFOOT)
        {
            CallLocalFunction("Teleport", "if", playerid, GetPlayerDistanceFromPoint(playerid, AC_Position[ 0 ], AC_Position[ 1 ], AC_Position[ 2 ]));
        }

  //  on-vehicle
        else if( !IsPlayerInRangeOfPoint(playerid, 900.0, AC_Position
[list][li], AC_Position[1], AC_Position[2]) && !Bit_Get(AC_SafeTP, playerid) && !IsPlayerNPC(playerid)[/li][/list]
        && GetVehicleSpeed( GetPlayerVehicleID(playerid) ) <= 9999 && GetPlayerState(playerid) == PLAYER_STATE_DRIVER || GetPlayerState(playerid) == PLAYER_STATE_PASSENGER)
        {
            new vehicleid;
            Bit_Set(AC_SafeTP, vehicleid, true);
            CallLocalFunction("Teleport", "if", playerid, GetPlayerDistanceFromPoint(playerid, AC_Position
[list][li], AC_Position[1], AC_Position[2]));[/li][/list]
        }

        GetPlayerPos(playerid, AC_Position[ 0 ], AC_Position[ 1 ], AC_Position[ 2 ]);
        Bit_Set(AC_SafeTP, playerid, false);
        pLastPosTick[ playerid ] = gettime( ) + 2;
    }

Teleportu fixleyecegiz.

PAWN Kodu: Seç
public OnPlayerInRangeOfPoint

stock pds_SetPlayerPos(playerid, Float:PosX, Float:PosY, Float:PosZ)
{
    GetPlayerPos(playerid, AC_Position
[list][li], AC_Position[1], AC_Position[2]);[/li][/list]
    Bit_Set(AC_SafeTP, playerid, true);
    return SetPlayerPos(playerid, PosX, PosY, PosZ);
}

stock pds_SetPlayerPosFindZ(playerid, Float:PosX, Float:PosY, Float:PosZ)
{
    GetPlayerPos(playerid, AC_Position
[list][li], AC_Position[1], AC_Position[2]);[/li][/list]
    Bit_Set(AC_SafeTP, playerid, true);
    return SetPlayerPosFindZ(playerid, PosX, PosY, PosZ);
}

stock pds_PutPlayerInVehicle(playerid, vehicleid, seatid)
{
    GetPlayerPos(playerid, AC_Position
[list][li], AC_Position[1], AC_Position[2]);[/li][/list]
    Bit_Set(AC_SafeTP, playerid, true);
    return PutPlayerInVehicle(playerid, vehicleid, seatid);
}

Modun boş bir yerine
PAWN Kodu: Seç
forward ac_OnPlayerExitVehicle(playerid, vehicleid);
public ac_OnPlayerExitVehicle(playerid, vehicleid)
{
  Bit_Set(AC_SafeTP, playerid, true);
  return ac_OnPlayerExitVehicle(playerid, vehicleid);
}

stock pds_SetPlayerInterior(playerid, interiorid)
{
    GetPlayerPos(playerid, AC_Position
[list][li], AC_Position[1], AC_Position[2]);[/li][/list]
    Bit_Set(AC_SafeTP, playerid, true);
    return SetPlayerInterior(playerid, interiorid);
}

static stock GetVehicleSpeed( vehicleid ) //records in KMH.
{
    new Float:VehiclePos[3],
    VehicleVelocity;
    Bit_Set(AC_SafeTP, vehicleid, true);
    GetVehicleVelocity( vehicleid, VehiclePos
[list][li], VehiclePos[1], VehiclePos[2] );[/li][/list]
    VehicleVelocity = floatround( floatsqroot( VehiclePos
[list][li]*VehiclePos[/li]
[li]+ VehiclePos[1]*VehiclePos[1] + VehiclePos[2]*VehiclePos[2] ) * 1 );[/li][/list]
    return VehicleVelocity;
}
ANLATIM : Gerekli Public ve Stock larımıza ekledik. Şimdi ise

PAWN Kodu: Seç
forward Teleport(playerid);
public Teleport(playerid)
{
Kick(playerid);
return 1;
}
ANLATIM : Kick için gerekli fonksionlarımızıda ekledik. Laakin herşey sorunsuz compile oldu teste geçtiniz Spawn olunca atılıcaksınız.
Bunu engellemek için 'OnPlayerSpawn' ve 'OnPlayerConnect' Publicine şart eklemeliyiz.

Publicinin altına ekleyin.
PAWN Kodu: Seç
public OnPlayerSpawn

Bit_Set(AC_SafeTP, playerid, true);

Publicinin altına ekleyin.
PAWN Kodu: Seç
public OnPlayerConnect

Bit_Set(AC_SafeTP, playerid, true);
----------------------------------------

ANLATIM : Bu Şekilde sunucuya girdiğimizde Teleport'dan Kick yemeyiz. Sisteme belirttik giriş yapıyorum teleport değilim beni Kickleme demiş gibi olduk :)

BILGI NOT: Eklediğimiz şartlardan örnek vererek anlatıyım bir komut kullandınız örnek veriyim /evegit eve gitti veya evin kapısının yanına sizi teleporttan atar
eve gittiğiniz komutun altına OnPlayerConnect'e eklediğimiz şartı ekleyiniz. Bu Sadece eve git deil Bir yere ışınlanan komutların altınada ekleyiniz. örneğin

PAWN Kodu: Seç
cmd:dm(playerid,params&#91;])
{
SetPlayerPos(playerid, x,y,z);
Bit_Set(AC_SafeTP, playerid, true);
return 1;
}
  NOT DEVAM : Biryere giden ışınlanan komutların altına ekleyiniz '/git' '/cek' gibi.
  Umarım Yardımcı Olmuşumdur, Anlattığım şeyden faydalanarak örnek alarak mantık
  yaratabilirsiniz.


  Bir Hilenin Fixi Sadece Fixlediğiniz Hilenin Fixi Deildir.
  Anlatım : PiloT


lacosapalm

Konu kilitlenip,Kilitli konular bölümüne taşınmıştır.
Son düzenlenme: 30 Eylül 2019, 18:18:54 Prisonero
- S O N