ali_yilmaz
Yeni Üye
Paper 1.18 ve üstü ile birlikte gelen Adventure API,
Böylece okuyucu, kitap sayfalarına tıklayarak kendi kararlarını etkileyebilecek bir hikayede yer alır.
Soru: Siz, bir Adventure kitap hikayesinde hangi tür etkileşimleri (ör. eylem, seçim, bulmaca) daha çok tercih edersiniz?
net.kyori.adventure.text.Book nesneleriyle dinamik metinler oluşturmanıza izin verir.- Plugin sınıfı
Kod:public final class StoryPlugin extends JavaPlugin implements CommandExecutor { @Override public void onEnable() { this.getCommand("mystory").setExecutor(this); } } - Kitabı oluşturmak
Bu yapıdaKod:Book book = Book.book() .author("Yazar") .title("Macera Kitabı") .pages( Component.text("Sayfa 1: Seçiminiz ne olacak? ") .append(Command.hoverEvent( HoverEvent.showText(Component.text("Aşağıdaki linke tıklayın")), ClickEvent.runCommand("/story choice1") )), Component.text("Sayfa 2: Başka bir yolculuk...") ).build();Componentise Adventure API’deki metin bileşenidir. - Kitabı oyuncuya vermek
Kod:@Override public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { if (sender instanceof Player player) { player.getInventory().addItem(new ItemStack(Material.WRITTEN_BOOK, 1, (short) 0, book)); player.sendMessage("Hikayen başlıyor!"); return true; } return false; } - Etkinlikleri yakalamak –
@EventHandlerilePlayerCommandPreprocessEventi dinleyip,/story choice1gibi komutları işleyebilirsiniz.
Böylece okuyucu, kitap sayfalarına tıklayarak kendi kararlarını etkileyebilecek bir hikayede yer alır.
Soru: Siz, bir Adventure kitap hikayesinde hangi tür etkileşimleri (ör. eylem, seçim, bulmaca) daha çok tercih edersiniz?