Posted September 14, 201411 yr I want to give the player a book that has already been written, how would I do this
September 14, 201411 yr To create written book that can be spawned you need to first create itemstack which has only one item, that is Items.written_book. Then you create NBT tag compound for that stack with following tags: - NBTtagList named "pages" - To add first page, append that list and add NBTTagString named 1 that contains desired text in String. - To sign, add title and author to that book you add NBTTagString named "author" and "title" with values you want. ItemStack#getTagCompound() should then look something like this: | |-NBTTagString("author", "My Name") |-NBTTagString("title", "Name Of The Book") |-NBTTagList("pages") |------------NBTTagString("1", "Text on the first page") |------------NBTTagString("2", "Text on the second page") Then you can use onEntityJoinWorldEvent which fires when player comes to world. this is where you can either spawn it or scan player.inventory to set it some empty slot.
September 14, 201411 yr Author To create written book that can be spawned you need to first create itemstack which has only one item, that is Items.written_book. Then you create NBT tag compound for that stack with following tags: - NBTtagList named "pages" - To add first page, append that list and add NBTTagString named 1 that contains desired text in String. - To sign, add title and author to that book you add NBTTagString named "author" and "title" with values you want. ItemStack#getTagCompound() should then look something like this: | |-NBTTagString("author", "My Name") |-NBTTagString("title", "Name Of The Book") |-NBTTagList("pages") |------------NBTTagString("1", "Text on the first page") |------------NBTTagString("2", "Text on the second page") Then you can use onEntityJoinWorldEvent which fires when player comes to world. this is where you can either spawn it or scan player.inventory to set it some empty slot. I dont know how to use NBT, could you link me to a tutorial?
September 14, 201411 yr Here is some basic stuff: http://www.minecraftforge.net/wiki/Creating_NBT_for_items You really should check how Vanilla written books are done (because after all, you are creating those same books but not in the game, by coding them so its important that you understand how vanilla books are constructed). Check net.minecraft.client.gui.GuiScreenBook to see how NBT is saved in vanilla.
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.