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

Hile nasıl Fixlenir ? Mantıken Anlatım ! [GÜNCELLENDİ]

Başlatan Rouge, 30 Eylül 2019, 17:22:11

« önceki - sonraki »

0 Üye ve 1 Ziyaretçi konuyu incelemekte.

Rouge

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.

public OnPlayerInRangeOfPoint

PAWN Kodu: Seç
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);
}

PAWN Kodu: Seç
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);
}

PAWN Kodu: Seç
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);
}

PAWN Kodu: Seç
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);
}

PAWN Kodu: Seç
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

PAWN Kodu: Seç
Bit_Set(AC_SafeTP, playerid, true);
Publicinin altına ekleyin.
PAWN Kodu: Seç
public OnPlayerConnect

PAWN Kodu: Seç
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
Son düzenlenme: 30 Eylül 2019, 17:34:02 PiloT

Amper

gtamulti uzun süredir böyle bir kalite görmedi pilot abi.

  Bir Hilenin Fixi Sadece Fixlediğiniz Hilenin Fixi Deildir.
  ..Pilot aka sUpErCoDer

bu sözü duvarıma yazdırıyorum pilot abi adamsın.

allah sabır versin
Son düzenlenme: 30 Eylül 2019, 20:19:56 Amper
software engineer


mortale

Alıntı yapılan: Amper - 30 Eylül 2019, 20:18:45
Bir Hilenin Fixi Sadece Fixlediğiniz Hilenin Fixi Deildir.
  ..Pilot aka sUpErCoDer

press f
Son düzenlenme: 30 Eylül 2019, 20:22:32 Renard

Antik

Alıntı yapılan: Amper - 30 Eylül 2019, 20:18:45
gtamulti uzun süredir böyle bir kalite görmedi pilot abi.

  Bir Hilenin Fixi Sadece Fixlediğiniz Hilenin Fixi Deildir.
  ..Pilot aka sUpErCoDer

bu sözü duvarıma yazdırıyorum pilot abi adamsın.

allah sabır versin

Şair burada ne demek istiyor Gürkan bey?


Amper

henüz ben de anlamış değilim ama duvar yazıma her gün bakıp anlamayı deniyorum bu şifreyi çözebileceğime eminim.
tek bildiğim şey Pilot abimizin süper olduğu

software engineer


Amper

Evet, güncel bilgilerim var. Sözün altında yatan anlamı sonunda buldum sanırım. Bir hile fixlemenin basit bir iş olmadığını, bir hile fixlemenin aslında son derece ehemmiyeti olduğunu ve düşünülenden daha fazla yararı olacağını demek istemiş.
Son düzenlenme: 30 Eylül 2019, 20:31:34 Amper
software engineer


mortale

Alıntı yapılan: Amper - 30 Eylül 2019, 20:29:30
Evet, güncel bilgilerim var. Sözün altında yatan anlamı sonunda buldum sanırım. Bir hile fixlemenin basit bir iş olmadığını, bir hile fixlemenin aslında son derece ehemmiyeti olduğunu ve düşünülenden daha fazla yararı olacağını demek istemiş.

elbette bu sizin kendi görüşünüzdür, bende hemen hemen aynı düşüncelere sahibim ancak bu sözün bu kadar basit ve net yorumlanabilmesini pek mümkün olduğunu düşünmüyorum. yarın Cumhuriyet dönemi Türk edebiyatının gelişmesinde önemli rol oynamış hocama bunu sormak isterim.


Antik

Alıntı yapılan: Amper - 30 Eylül 2019, 20:29:30
Evet, güncel bilgilerim var. Sözün altında yatan anlamı sonunda buldum sanırım. Bir hile fixlemenin basit bir iş olmadığını, bir hile fixlemenin aslında son derece ehemmiyeti olduğunu ve düşünülenden daha fazla yararı olacağını demek istemiş.

amper the edebiyatshaker


Rouge


Zoxy