OnPlayerEnterRaceCheckpoint Kullanımı ve Örnekleri

OnPlayerEnterRaceCheckpoint Kullanımı ve Örnekleri

OnPlayerEnterRaceCheckpoint oyuncu yarış checkpointe girdiğinde olmasını istediklerimizi ayarladığımız bir callbacktir. Oyuncunun oluşturduğumuz yarış checkpointine girdiğinde olmasını  istediğimiz şeyleri bu callbackten ayarlarız. Örnek olarak oyuncu yarış checkpointine girdiğinde oyuncuya 10.000$ ve 20 skor verebiliriz.

OnPlayerEnterRaceCheckpoint Kullanımı:

OnPlayerEnterRaceCheckpoint hiçbir şey eklenmeden aşağıdaki gibidir:

public OnPlayerEnterRaceCheckpoint(playerid)
{
return 1;
}


Bunun içerisini oyuncunun yarış checkpointine girdiğinde olmasını istediklerimiz ile doldururuz. Ondan önce bir yarış checkpointi oluşturmamız gerekiyor.

Bunun için OnPlayerSpawn callbackine gidiyoruz ve aşağıdaki kod ile (SetPlayerRaceCheckpoint fonksiyonu ile) bir callback oluşturuyoruz.

SetPlayerRaceCheckpoint(playerid, Checkpoint Tipi, X, Y, Z, Yön X, Yön Y, Yön Z, Boyut);

Burada değiştirmemiz gereken kısım kırmızı ile işaretlediğim kısımlardır. Bunlar şunlardır:

Checkpoint Tipi: 5 adet checkpoint tipi vardır. Bunlar;


  • 0: Normal
  • 1: Bitiş checkpointi
  • 2: Hiçbir şey (Üzerinde bir şey olmayıp, sadece checkpoint noktası.)
  • 3: Hava yarışları için checkpoint.
  • 4: Hava yarışları için bitiş checkpointi.

X,Y,Z: Checkpointin konumunu buradan ayarlıyoruz.

Yön X, Yön Y, Yön Z: Checkpointin yönünü buradan ayarlıyoruz. İsterseniz 0.0, 0.0, 0.0 değerlerini vererek düz bir checkpoint elde edebilirsiniz.

Boyut: Bu kısımda checkpointin boyutunu ayarladığımız kısım.

Checkpointi oluşturduktan sonra OnPlayerEnterRaceCheckpoint callbackine gidelim ve bu oluşturduğumuz checkpointe girdiğinde olacakları ayarlayalım.

public OnPlayerEnterRaceCheckpoint(playerid)
{
GivePlayerMoney(playerid, 10000);

SetPlayerScore(playerid, GetPlayerScore(playerid)+20);
return 1;
}


Yukarıdaki örnekte, oyuncu checkpointe girdiğinde 10.000$ ve 20 skor verdik.

OnPlayerEnterRaceCheckpoint Örnekleri:

public OnPlayerEnterRaceCheckpoint(playerid)
{
if(GetPlayerHealth(playerid) == 50) return Kick(playerid);

return 1;
}


Yukarıdaki örnekte, oyuncu yarış checkpointine girdiğinde canı 50 ise kickliyoruz.

public OnPlayerEnterRaceCheckpoint(playerid)
{
SendClientMessage(playerid, -1, "Vaov, tamamlamaya çok yakın gibisin... (0/15)");
return 1;
}


Yukarıdaki örnekte, oyuncuya bir mesaj yazdık.

Yorum Gönder

0 Yorumlar