Tampilan buku

Sebuah BookView adalah representasi dari buku GUI pada klien, BookView tidak berkaitan dengan sebuah aktual ItemStack dan ini hanya untuk menampilkan Text melalui sebuah buku kepada pengguna. perhatikan itu hanya sebuah BookView hanya terbaca- saja, karena ini menjadi tidak mungkin untuk memberitahukan klien untuk membuka sebuah buku yang tidak teridentifikasi.

Untuk membuat BookView, kita hanya perlu memperoleh BookView.Builder, yang telah disediakan melalui metode BookView#builder(). Dengan menggunakan pembangunnya, kita dapat menetapkan judulnya, penciptanya, dan halaman dari BookView. Lalu untuk menggunakan tampilannya, kita harus mengirimkannya ke Viewer. Contohnya ditunjukkan di bawah ini:

import org.spongepowered.api.effect.Viewer;
import org.spongepowered.api.text.BookView;
import org.spongepowered.api.text.Text;

BookView bookView = BookView.builder()
        .title(Text.of("Story Mode"))
        .author(Text.of("Notch"))
        .addPage(Text.of("There once was a Steve..."))
        .build();
viewer.sendBookView(bookView);

Ini akan menampilkan sebuah buku ke klien dengan halaman yang berisi teks yang telah ditetapkan dalam metode BookView.Builder#addPage(Text). Tentu saja, anda tidak harus memanggil addPage(Text) untuk setiap halaman yang ingin anda tambahkan. Kelas BookView.Builder menyediakan metode BookView.Builder#addPages(Collection<Text>) yang menerima banyak Texts.

Kelas BookView.Builder juga menyediakan metode BookView.Builder#insertPage(int, Text) dan metode BookView.Builder#insertPages(int, Collection<Text>) yang sesuai untuk memasukkan sebuah halaman atau beberapa halaman pada indeks yang diberikan.

Anda mungkin juga menghapus halaman dari BookView dengan menyediakan salah satu Text dari halaman atau menetapkan indeks dari halaman yang ingin anda hapus. Anda hanya perlu menggunakan metode BookView.Builder#removePage(Text), BookView.Builder#removePage(int), atau BookView.Builder#removePages(Collection<Text>) yang sesuai.