OnPlayerRequestClass, oyuncunun karakter seçme ekranında gerçekleşecek olacakları görev olarak bilir. En küçük örneğinden, burada karakter seçerken seçtiği karaktere göre işlemler uygulayabiliriz.
OnPlayerRequestClass Kullanımı:
OnPlayerRequestClass callbackine hiçbir şey eklenmeden önceki hali aşağıdaki gibidir:public OnPlayerRequestClass(playerid, classid)
{
return 1;
}
Bunun içerisine karakter seçerken olacakları ekleriz. Örneğin birinci karakter seçme bölümünde ekrana "Hey CJ!" yazdıralım.
public OnPlayerRequestClass(playerid, classid)
{
switch(classid)
{
case 0: GameTextForPlayer(playerid, "~r~HEY, ~w~CJ!", 3000, 3);
}
return 1;
}
OnPlayerRequestClass Örnekleri:
Aşağıdaki örnekte oyuncuya bir bilgi mesajı verdik.public OnPlayerRequestClass(playerid, classid)
{
SendClientMessage(playerid, 0x00FF00FF, "===============================");
SendClientMessage(playerid, -1, "Bir karakter seçiyorsun...");
SendClientMessage(playerid, -1, "Doğduktan sonra bir daha başkasını seçemeyeceksin.");
SendClientMessage(playerid, -1, "Ona göre, seçimini iyi yap!");
SendClientMessage(playerid, 0x00FF00FF, "===============================");
return 1;
}
Örneklerle devam... Aşağıdaki örnek ile ekranda kaçıncı karakter olduğunu yazdırdık.
public OnPlayerRequestClass(playerid, classid)
{
new strgame[70];
format(strgame, sizeof(strgame), "~b~Karakter: ~w~%d", classid);
GameTextForPlayer(playerid, strgame, 3000, 3);
return 1;
}
Durmak yok be... Duracağımı mı sanıyorsun? Örneklere devam! Şimdiki örneğimizde de oyuncunun takımını ayarlayalım.
public OnPlayerRequestClass(playerid, classid)
{
switch(classid)
{
case 0: SetPlayerTeam(playerid, 0); // Birinci karakterin takımını 1 değeri yaptık. Bu karakteri seçenler, bu karakterde olan kişileri vuramazlar.
}
return 1;
}
Son bir örnek ile örnekleri sonlandıralım... Bu örnek ile de belirtilen karaktere skor bildirisi ekleyelim.
public OnPlayerRequestClass(playerid, classid)
{
if(classid == 0 && GetPlayerScore(playerid) < 2) // Birinci karakter ve skoru 2'den yüksek değilse.
{
SendClientMessage(playerid, -1, "Dikkatli ol, skorun 2'den yüksek değil.");
}
return 1;
}
Fakat yukarıdaki örnekte oyuncu spawn olacaktır. Eğer spawn olmamasını istiyor iseniz OnPlayerRequestSpawn callbackine geçip aşağıdaki kodu ekleyiniz:
if(classid == 0 && GetPlayerScore(playerid) < 2)
{
SendClientMessage(playerid, -1, "Skorun 2'den yüksek değil.");
return 0; // Spawn olmadı, engelledik.
}
0 Yorumlar
Yorum yapmak için Google hesabına veya bir web sitesine ihtiyacınız yoktur. Kimlik seçme bölümündeki varsayılan değeri "Adı/URL" olarak seçebilir, isminizi yazdıktan sonra "Devam" butonuna tıklamanız yeterlidir. Sizlere gösterdiğimiz minik adımların arkasından yorumunuzu yazmaya başlayabilirsiniz. İçeriğimizle ilgili yorumunuzu yaptıktan sonra "Yayınla" butonuna basmayı unutmayın!