OnPlayerCommandText genellikle komut yapımlarında kullanılır. En basitinden /can veya /zirh komutları bu callback ile yapılır. Bir komut yapmak için strcmp fonksiyonunu ve if döngüsünü kullanacağız.
OnPlayerCommandText Kullanımı:
OnPlayerCommandText callbackine hiçbir şey eklenmeden önceki hali aşağıdaki gibidir.public OnPlayerCommandText(playerid, cmdtext[])
{
return 0;
}
Bunun içerisini oyuncu komut kullandığınızda olacaklar ile doldururuz. Örnek olarak bir /can komutu yapalım. Bunun için if döngüsü ve strcmp fonksiyonunu kullanacağız.
public OnPlayerCommandText(playerid, cmdtext[])
{
if(strcmp("/can", cmdtext, true))
{
SetPlayerHealth(playerid, 100);
SendClientMessage(playerid, -1, "Bedava can aldınız.");
return 1;
}
return
0;
}
Yukarıda oyuncu /can yazdığında oyuncuya bedava can verip yanında da bedava can aldığına dair bilgilendirme mesajı gönderdik.
OnPlayerCommandText Örnekleri:
Aşağıdaki örnekte oyuncu /cz yazdığında hem can hem de zırh alır.public OnPlayerCommandText(playerid, cmdtext[])
{
if(strcmp("/cz", cmdtext, true))
{
SetPlayerHealth(playerid, 100);
SetPlayerArmour(playerid, 100);
SendClientMessage(playerid, -1, "Bedava can ve zırhaldınız.");
return 1;
}
return
0;
}
Aşağıdaki örnekte oyuncu /quit2 yazdığında oyundan atılır.
public OnPlayerCommandText(playerid, cmdtext[])
{
if(strcmp("/quit2", cmdtext, true))
{
Kick(playerid);
return 1;
}
return
0;
}
Aşağıdaki örnekte oyuncu /skorum yazdığında karşısına skoru çıkar.
public OnPlayerCommandText(playerid, cmdtext[])
{
if(strcmp("/skorum", cmdtext, true))
{
new skors[80];
format(skors, sizeof(skors), "Skorunuz: %d", GetPlayerScore(playerid));
SendClientMessage(playerid, -1, skors);
return 1;
}
return
0;
}