note Help Needed
This wiki is the result of an ongoing community effort — thank you all for helping!
If you want to provide changes to this page then please click here.
OnPlayerWeaponShot
Deskripsi
Callback ini dipanggil ketika pemain melepaskan tembakan dari senjata. Hanya senjata yang di dukung. Hanya drive-by penumpang yang di dukung (bukan drive-by pengemudi, dan bukan tembakan burung / pemburu).
Nama | Deskripsi |
---|---|
playerid | ID pemain yang menembakkan senjata. |
WEAPON:weaponid | ID dari weapon yang di tembak oleh pemain. |
BULLET_HIT_TYPE:hittype | type Tersebut dari benda yang di tembakkan (tidak ada, pemain, kendaraan, atau (pemain) objek). |
hitid | ID pemain, kendaraan atau objek yang tertabrak. |
Float:fX | Koordinat X yang di tembak. |
Float:fY | Koordinat Y yang di tembak. |
Float:fZ | Koordinat Z yang di tembak. |
Returns
0 - Mencegah peluru menyebabkan kerusakan.
1 - Membiarkan peluru menyebabkan kerusakan.
Itu selalu disebut pertama dalam filterscript sehingga mengembalikan 0 di sana juga memblokir skrip lain agar tidak melihatnya.
Contoh
public OnPlayerWeaponShot(playerid, WEAPON:weaponid, BULLET_HIT_TYPE:hittype, hitid, Float:fX, Float:fY, Float:fZ)
{
new szString[144];
format(szString, sizeof(szString), "Senjata %i telah di tembakkan. hittype: %i hitid: %i pos: %f, %f, %f", weaponid, hittype, hitid, fX, fY, fZ);
SendClientMessage(playerid, -1, szString);
return 1;
}
Catatan
tip
Callback ini hanya di panggil ketika kompensasi lag diaktifkan. Jika tipe hit adalah:
BULLET_HIT_TYPE_NONE
: parameter fX, fY dan fZ adalah koordinat normal, akan memberikan 0,0 untuk koordinat jika tidak ada yang terkena (misalnya objek jauh yang tidak dapat dijangkau oleh peluru);- Others: fX, fY dan fZ adalah offset relatif kepada hitid.
tip
GetPlayerLastShotVectors dapat digunakan dalam callback ini untuk informasi vektor peluru yang lebih detail.
warning
Bug yang Diketahui:
- callback tidak dipanggil jika Anda menembak di kendaraan sebagai pengemudi atau jika Anda melihat ke belakang dengan bidikan di aktifkan (menembak di udara).
- Disebut sebagai
BULLET_HIT_TYPE_VEHICLE
dengan hitid yang benar (id kendaraan pemain yang dipukul) jika Anda menembak pemain yang berada di dalam kendaraan. Itu tidak akan disebut sebagaiBULLET_HIT_TYPE_PLAYER
sama sekali. - Perbaikan sebagian di SA-MP 0.3.7: Jika data senjata palsu dikirim oleh pengguna jahat(chiter), klien pemain lain dapat membeku atau crash. Untuk mengatasi ini, periksa apakah weaponid yang di laporkan benar-benar dapat menembakkan peluru.
Fungsi Terkait
- GetPlayerLastShotVectors: Mengambil vektor tembakan terakhir yang di tembakkan oleh pemain.