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.
Dialog Styles
note
- Pada OnDialogResponse, menekan button1 menetapkan nilai response menjadi 1, sedangkan menekan button2 menetapkan nilai response menjadi 0.
- Setiap dialog bisa memiliki tombol ke-dua karena sifatnya opsional. Untuk menghilangkannya, cukup dikosongkan saja, seperti pada contoh pertama. Player tidak dapat menekan tombol tersebut, tapi player dapat menekan tombol ESC dan memicu OnDialogResponse dengan response bernilai 0.
- ShowPlayerDialog: Pewarnaan dapan digunakan di setiap string: caption, info, button1, dan button2.
- Halaman ini mendeskripsikan perilaku dari ShowPlayerDialog dan OnDialogResponse.
- Untuk melihat batasannya, kunjungi halaman Batasan.
- Untuk contoh responnya, berikut ini adalah kodenya:
public OnDialogResponse( playerid, dialogid, response, listitem, inputtext[ ] )
{
printf( "playerid = %d, dialogid = ID_DIALOG_KAMU, response = %d, listitem = %d, inputtext = '%s' (size: %d)", playerid, response, listitem, inputtext, strlen( inputtext ) );
return 1;
}
Gaya 0: DIALOG_STYLE_MSGBOX
Menampilkan:
note
- \t menambah sebuah TAB (lebih banyak spasi).
- \n membuat sebuah baris baru.
- Pewarnaan tidak akan diatur ulang (reset) setelah \n \t
ShowPlayerDialog(playerid, ID_DIALOG_KAMU, DIALOG_STYLE_MSGBOX, "Judul", "Info\n\tInfo", "Tombol 1", "");
Keluaran Respon
note
- listitem selalu bernilai -1.
- inputtext selalu kosong.
// Menekan tombol
playerid = 0, dialogid = ID_DIALOG_KAMU, response = 1, listitem = -1, inputtext = '' (size: 0)
// Menekan ESC (karena tombol ke-dua tidak tampil)
playerid = 0, dialogid = ID_DIALOG_KAMU, response = 0, listitem = -1, inputtext = '' (size: 0)
Gaya 1: DIALOG_STYLE_INPUT
Menampilkan:
note
- \t menambah sebuah TAB (lebih banyak spasi).
- \n membuat sebuah baris baru.
- Pewarnaan tidak akan diatur ulang (reset) setelah \n \t
ShowPlayerDialog(playerid, ID_DIALOG_KAMU, DIALOG_STYLE_INPUT, "Judul", "Masukkan informasi berikut:", "Tombol 1", "Tombol 2");
Keluaran respon
note
- listitem selalu bernilai -1.
- inputtext adalah teks yang ditulis oleh pengguna, termasuk warna-warnanya.
// menulis "input" and dan menekan tombol kiri
playerid = 0, dialogid = ID_DIALOG_KAMU, response = 1, listitem = -1, inputtext = 'input' (size: 5)
// menulis "input" and dan menekan tombol kanan
playerid = 0, dialogid = ID_DIALOG_KAMU, response = 0, listitem = -1, inputtext = 'input' (size: 5)
Gaya 2: DIALOG_STYLE_LIST
Showing:
note
- \t menambah sebuah TAB (lebih banyak spasi).
- \n membuat sebuah baris baru.
- Pewarnaan tidak akan diatur ulang (reset) setelah \n \t
ShowPlayerDialog(playerid, ID_DIALOG_KAMU, DIALOG_STYLE_LIST, "Judul", "Item 0\n{FFFF00}Item 1\nItem 2", "Tombol 1", "Tombol 2");
Keluaran Respon
note
- listitem adalah nomor dari nilai yang dipilih, dimulai dari 0.
- inputtext adalah nilai yang terdapat pada listitem yang dipilih, tanpa warnanya.
// memilih item pada urutan pertama dan menekan tombol kiri
playerid = 0, dialogid = ID_DIALOG_KAMU, response = 1, listitem = 0, inputtext = 'Item 0' (size: 6)
// memilih item pada urutan pertama dan menekan tombol kanan
playerid = 0, dialogid = ID_DIALOG_KAMU, response = 0, listitem = 1, inputtext = 'Item 1' (size: 6)
Gaya 3: DIALOG_STYLE_PASSWORD
note
- Serupa dengan DIALOG_STYLE_INPUT.
Menampilkan:
note
- \t menambah sebuah TAB (lebih banyak spasi).
- \n membuat sebuah baris baru.
ShowPlayerDialog(playerid, ID_DIALOG_KAMU, DIALOG_STYLE_PASSWORD, "Caption", "Enter private information below:", "Button 1", "Button 2");
Keluaran Respon
note
- listitem nilainya selalu -1.
- inputtext adalah teks yang ditulis oleh pengguna, termasuk warna-warnanya.
// menulis "input" dan menekan tombol kiri
playerid = 0, dialogid = ID_DIALOG_KAMU, response = 1, listitem = -1, inputtext = 'input' (size: 5)
// menulis "input" dan menekan tombol kanan
playerid = 0, dialogid = ID_DIALOG_KAMU, response = 0, listitem = -1, inputtext = 'input' (size: 5)
Gaya 4: DIALOG_STYLE_TABLIST
tip
Gaya ini telah ditambahkan di SA-MP 0.3.7 and tidak akan bekerja di versi sebelumnya!
note
- Serupa dengan DIALOG_STYLE_LIST.
Menampilkan:
note
- \t menambah sebuah TAB (lebih banyak spasi).
- \n membuat sebuah baris baru.
- Pewarnaan akan diatur ulang (reset) setelah \n \t
ShowPlayerDialog(playerid, ID_DIALOG_KAMU, DIALOG_STYLE_TABLIST, "Caption",
"Deagle\t$5000\t100\n\
{FF0000}Sawnoff\t{33AA33}$5000\t100\n\
Pistol\t$1000\t50",
"Button 1", "Button 2");
note
- inputtext teks yang berisi nilai dari listitem yang dipilih pada kolom pertama, tanpa warna-warnanya.
// memilih item pertama pada daftar dan menekan tombol kiri
playerid = 0, dialogid = ID_DIALOG_KAMU, response = 1, listitem = 0, inputtext = 'Deagle' (size: 6)
// memilih item ke-dua pada daftar dan menekan tombol kanan
playerid = 0, dialogid = ID_DIALOG_KAMU, response = 0, listitem = 1, inputtext = 'Sawnoff' (size: 7)
Gaya 5: DIALOG_STYLE_TABLIST_HEADERS
tip
Gaya ini telah ditambahkan di SA-MP 0.3.7 and tidak akan bekerja di versi sebelumnya!
note
- Serupa dengan DIALOG_STYLE_LIST.
Menampilkan:
note
- \t menambah sebuah TAB (lebih banyak spasi).
- \n membuat sebuah baris baru.
- Pewarnaan akan diatur ulang setelah \n and \t. info pada baris pertama berisi header.
ShowPlayerDialog(playerid, ID_DIALOG_KAMU, DIALOG_STYLE_TABLIST_HEADERS, "Caption",
"Header 1\tHeader 2\tHeader 3\n\
Item 1 Column 1\tItem 1 Column 2\tItem 1 Column 3\n\
{FF0000}Item 2 Column 1\t{33AA33}Item 2 Column 2\tItem 2 Column 3",
"Button 1", "Button 2");
note
- inputtext berisi teks dari listitem yang dipilih pada kolom pertama, tanpa warna-warnanya.
// memilih item pertama dari daftar dan menekan tombol kiri
playerid = 0, dialogid = ID_DIALOG_KAMU, response = 1, listitem = 0, inputtext = 'Item 1 Column 1' (size: 15)
// memilih item ke-dua dari daftar dan menekan tombol kanan
playerid = 0, dialogid = ID_DIALOG_KAMU, response = 0, listitem = 1, inputtext = 'Item 2 Column 1' (size: 15)