diff --git a/common/build.gradle b/common/build.gradle index eb3e10a..772aee1 100644 --- a/common/build.gradle +++ b/common/build.gradle @@ -13,8 +13,7 @@ dependencies { // Remove the next line if you don't want to depend on the API modApi "dev.architectury:architectury:${rootProject.architectury_version}" -// modImplementation("vazkii.patchouli:Patchouli-xplat:${patchouli_version}-SNAPSHOT") -// modImplementation("xyz.brassgoggledcoders:PatchouliProvider:${patchouli_provider_version}") +// modImplementation("vazkii.patchouli:Patchouli-xplat:${patchouli_version}") } publishing { diff --git a/common/src/main/resources/chococraft/blockstates/gysahl_green.json b/common/src/main/resources/chococraft/blockstates/gysahl_green.json new file mode 100644 index 0000000..5353ce7 --- /dev/null +++ b/common/src/main/resources/chococraft/blockstates/gysahl_green.json @@ -0,0 +1,19 @@ +{ + "variants": { + "age=0": { + "model": "chococraft:block/gysahl_green_stage0" + }, + "age=1": { + "model": "chococraft:block/gysahl_green_stage1" + }, + "age=2": { + "model": "chococraft:block/gysahl_green_stage2" + }, + "age=3": { + "model": "chococraft:block/gysahl_green_stage3" + }, + "age=4": { + "model": "chococraft:block/gysahl_green_stage4" + } + } +} \ No newline at end of file diff --git a/common/src/main/resources/chococraft/blockstates/straw.json b/common/src/main/resources/chococraft/blockstates/straw.json new file mode 100644 index 0000000..b3595f8 --- /dev/null +++ b/common/src/main/resources/chococraft/blockstates/straw.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "chococraft:block/straw" + } + } +} \ No newline at end of file diff --git a/common/src/main/resources/chococraft/lang/en_us.json b/common/src/main/resources/chococraft/lang/en_us.json new file mode 100644 index 0000000..480dff5 --- /dev/null +++ b/common/src/main/resources/chococraft/lang/en_us.json @@ -0,0 +1,179 @@ +{ + "block.chococraft.gysahl_green": "Gysahl Green", + "block.chococraft.straw": "Straw", + "chococraft.entity_chocobo.chocobo_followcmd": "Follow", + "chococraft.entity_chocobo.chocobo_staycmd": "Stay", + "chococraft.entity_chocobo.chocobo_wandercmd": "Wander", + "chococraft.entity_chocobo.heal_fail": "§cHealth full", + "chococraft.entity_chocobo.not_owner": "§cYou are not the owner of this Chocobo!", + "chococraft.entity_chocobo.tame_fail": "§cTame failed", + "chococraft.entity_chocobo.tame_success": "§aTame succeeded", + "chococraft.subtitle.entity.chocobo.kweh": "Chocobo Kwehs", + "chococraft.subtitle.entity.chocobo.kwehwhistlefollow": "Whistles to follow", + "chococraft.subtitle.entity.chocobo.kwehwhistlestay": "Whistles to stay", + "chococraft.subtitle.entity.chocobo.kwehwhistlewander": "Whistles to wander", + "entity.chococraft.chocobo": "Chocobo", + "gui.chocobook.page1": "Table of Contents\n\nI. Chocobos\nII. In the wild\nIII. Gysahl Greens\n .1 Gysahl Mutations\n .2 Gysahl Pickles\nIV. Domestication\n .1 Breeding Chocobos\n .2 Chocobo Colours\nV. The Nether\nVI. Chocobo Pen\nVII. Chocobo Cake\n", + "gui.chocobook.page10": "III.2 Gysahl Pickles\n\nGysahl Greens and sugar can be crafted into raw Gysahl pickles, which can be cooked in a furnace to receive Gysahl pickles. These treats are not only tasty, but also very nourishing.", + "gui.chocobook.page11": "IV. Domestication\n\nChocobos can be tamed by feeding them Gysahl Greens, the birds are very fond of the root vegetable and will sometimes form a bond to whomever is feeding them their fa- vorite food item. If tamed, the owner can fit either a chocobo", + "gui.chocobook.page12": "saddle or pack bags on a Chocobo. Fitted with a saddle the Chocobo can be additionally equipped with saddle bags. (§oPack bags and saddle bags can be accessed by shift-right click§r).", + "gui.chocobook.page13": "IV.1 Chocobo Breeding\n\nIf feed with Loverly or Golden Gysahls, Chocobos of different gender can be breed to produce an off- spring. These infant Chocobos are called Chicobos and even- tually grow into a Chocobo. Besides in- creasing the number", + "gui.chocobook.page14": "of Chocobos in a domesticated flock, breeding is the only way to obtain the different varieties of Chocobos available. There is a slight chance of mutation, which can be in- creased with the use of Golden Gysahls. The following combinations of parents can cause", + "gui.chocobook.page15": "their offspring to mutate into these subspecies:\n\n 1. §6Yellow§0 + §6Yellow§0\n = §aGreen§0 or §9Blue§0\n\n 2. §aGreen§0 + §9Blue§0\n = §7White§0\n\n 3. §6Yellow§0 + §7White§0\n = Black", + "gui.chocobook.page16": "4. Black + §7White§0\n = §6Gold§0\n\nTo enable the off- spring to mutate into a golden Chocobo, the use of Golden Gysahls is mandatory.", + "gui.chocobook.page17": "IV.2 Chocobo Colours\n\n§6Yellow Chocobos§0 are the average variety and have no clear abilities, they can be used however as fast riding and transport animals.\n\n§aGreen Chocobos§0 have the ability to climb, which means they do", + "gui.chocobook.page18": "not have the need to jump when ascending a block level. They are slightly faster than their yellow cousins.\n\n§9Blue Chocobos§0 have the ability to travel fast on water. Al- though all Chocobos have the ability to swim, the blue ones can do it very fast,", + "gui.chocobook.page19": "thus are the first choice of transpor- tation when traveling by water route.\n\n§7White Chocobos§0 have the combined abilities to climb like the green Chocobos and to travel fast on water like the blue. In ad- dition they are slightly faster than the blue", + "gui.chocobook.page2": "I. Chocobos\n\nThese large, herbiv- orous birds are largely unable to fly, but their powerful legs allow them to run at high speeds. Their size and impressive speed make them a popular choice when looking for a mount.\n", + "gui.chocobook.page20": "or green varieties.\n\nBlack Chocobos have the abilities to jump very hight, climb and travel fast on water. Also they are faster than the white ones.\n\n§6Golden Chocobos§0 are the fastes variety and are not only able to glide like the other", + "gui.chocobook.page21": "subspecies, but can fully fly.\n\nAll Chocobo sub- species can glide and avoid fall damage up to a certain hight. Golden Chocobos don't take fall damage at all.", + "gui.chocobook.page22": "V. The Nether\n\nThe Nether is popu- lated by a special breed of Chocobo. The Purple Chocobos roaming the hostile tunnels and caves of the nether in search of the scarce avail- able food. This makes them even harder to find than their yellow", + "gui.chocobook.page23": "cousins. Living in the nether had the purple Chocobos develop the ability to swim in lava and fly.", + "gui.chocobook.page24": "VI. Chocobo Pen\n\nAn area covered with straw and equipped with a water filled cauldron will count as a Chocobo pen. If a hurt Chocobo will stand on the straw near the cauldron it will automatically heal over time.", + "gui.chocobook.page25": "VII. Chocobo Cake\n\nChocobo Cakes can be used to have Chicobos instantly grow up into Chocobos.\n\nRecipe:\nTake an egg, mix it with two units of sugar, two buckets of milk and two bundles of grain. Finally garnish it with two Gysahl Greens.\nEnjoy.", + "gui.chocobook.page3": "Although largely too small to allow real flight, the Chocobo's wings enable the birds to glide and avoid fall damage to itself and its rider up to a cer- tain hight.\n\nDomesticated Chocobos can be deployed as mounts and transport animals.", + "gui.chocobook.page4": "There are even re- ports of desperate adventurers having to relyto their Chocobos as a source of food.", + "gui.chocobook.page5": "II. In the wild\n\nChocobos, in their yellow variety, found wild in most parts of the world. Flocks of mostly three, some- times five animals roam free in the wild. How- ever they are very scarce and an inter- ested ornithologist would have to search", + "gui.chocobook.page6": "wide areas to find a flock.", + "gui.chocobook.page7": "III. Gysahl Greens\n\nThe Chocobo's fa- vorite food are Gysahl Greens, these thick red root vegetables can be found growing widespread in all fertile areas. These plants can be crafted into seeds. The seeds then can be used to domestically grow", + "gui.chocobook.page8": "Gysahl Greens on tilted and moisturised land.", + "gui.chocobook.page9": "III.1 Gysahl Mutations\n\nWhen domestically growing Gysahl Greens, there is a chance of the root mutating into a Loverly or even Golden Gysahl. These special roots can be feed to two Chocobos of opposite gender, to initialise the mating process.", + "info.chococraft.book.chicobo.entry.name": "Chicobo", + "info.chococraft.book.chicobo.text1": "Chicobos are the baby versions of $(l:chococraft:chocobos/chocobo)Chocobos$() that you get from breeding them.$(br)Can be instantly grown by feeding it $(l:chococraft:gysahls/gysahl_cake)Gysahl Cake$() after being tamed.", + "info.chococraft.book.chocobo.black.description": "Obtainable by breeding White and Yellow Chocobos.", + "info.chococraft.book.chocobo.black.description2": "Travel faster than the White Chocobo in addition to being able to jump higher and giving you Night Vision.", + "info.chococraft.book.chocobo.blue.description": "Obtainable by breeding two Yellow Chocobos.", + "info.chococraft.book.chocobo.blue.description2": "Travel twice as fast as regular Chocobos on water and give Water Breathing.", + "info.chococraft.book.chocobo.entry.name": "Chocobo", + "info.chococraft.book.chocobo.flame.description": "They can only be obtained by finding them in The Nether.", + "info.chococraft.book.chocobo.flame.description2": "Have the same abilities of the Gold Chocobo (Except being a bit slower).", + "info.chococraft.book.chocobo.gold.description": "Obtainable by breeding White and Black Chocobos. Breeding a Gold Chocobo with another Gold Chocobo with Golden Gysahls will always result in a gold offspring.", + "info.chococraft.book.chocobo.gold.description2": "Are able to fly, climb, swimg and are immune to fall damage. They're tied for fastest with the Pink and Red Chocobos.", + "info.chococraft.book.chocobo.green.description": "Obtainable by breeding two Yellow Chocobos.", + "info.chococraft.book.chocobo.green.description2": "Can walk up two block high walls.", + "info.chococraft.book.chocobo.pink.description": "They can only be obtained by feeding Gold Chocobos a Pink Gysahl.", + "info.chococraft.book.chocobo.pink.description2": "Have the same abilities of the Gold Chocobo.", + "info.chococraft.book.chocobo.purple.description": "(Currently unobtainable).", + "info.chococraft.book.chocobo.purple.description2": "Have the same abilities of the Flame Chocobo.", + "info.chococraft.book.chocobo.red.description": "They can only be obtained by feeding Gold Chocobos a Red Gysahl.", + "info.chococraft.book.chocobo.red.description2": "Have the same abilities of the Gold Chocobo.", + "info.chococraft.book.chocobo.text": "Chocobos are passive mobs but scared of players so be careful around them.", + "info.chococraft.book.chocobo.text2": "Yellow Chocobos spawn in Plains and Hills type biomes. Flame Chocobos spawn in The Nether. You however can get different color Chocobos by breeding them with $(l:chococraft:gysahls/loverly_gysahl)Loverly$() (20%% Chance of new color with new and better abilities) or $(l:chococraft:gysahls/gold_gysahl)Golden Gysahls$() (50%% Chance). $(l:chococraft:gysahls/gold_gysahl)Golden Gysahls$() are REQUIRED to get a Gold Chocobo from breeding.", + "info.chococraft.book.chocobo.text3": "A group of Chocobos that have spawned in a Plains Biome near a mountain.", + "info.chococraft.book.chocobo.text4": "You breed Chocobos by feeding them Gysahl. All Chocobos can be bred together. But only males and females can breed. You breed a chocobo by feeding the Chocobos either Golden or Loverly Gysahls.", + "info.chococraft.book.chocobo.white.description": "Obtainable by breeding Green and Blue Chocobos.", + "info.chococraft.book.chocobo.white.description2": "Travel faster than Yellow, Green or Blue Chocobos and are able to swim and climb.", + "info.chococraft.book.chocobos.desc": "These entries contain information about $(l:chococraft:chocobos/chocobo)Chocobos$()", + "info.chococraft.book.chocobos.name": "Chocobos", + "info.chococraft.book.chocodisguise.entry.name": "Choco Disguise", + "info.chococraft.book.chocodisguise.text1": "Choco Disguise is a set of armor that can be worn to reduce the risk of wild $(l:chococraft:chocobos/chocobo)Chocobos$() running from you when approaching.", + "info.chococraft.book.equipments.desc": "These entries contain information about the Tools & Equipments of ChocoCraft 4", + "info.chococraft.book.equipments.name": "Tools & Equipments", + "info.chococraft.book.feather.entry.name": "Chocobo Feather", + "info.chococraft.book.feather.text1": "$(l:chococraft:chocobos/chocobo)Chocobos$() every so often shed feathers. They are useful for crafting a $(l:chococraft:equipments/chocodisguise)Choco Disguise$() armor set.", + "info.chococraft.book.gold_gysahl.entry.name": "Gold Gysahl", + "info.chococraft.book.gold_gysahl.text1": "$(bold)Gold Gysahl$() is a mutation of the garden-variety $(l:chococraft:gysahls/gysahl_green)Gysahl Green$() and is used for breeding $(l:chococraft:chocobos/chocobo)Chocobos$().$(br)$(bold)Gold Gysahl$() is obtainable by harvesting $(l:chococraft:gysahls/gysahl_green)Gysahl Green$(), there's a 5%% to get a $(bold)Gold Gysahl$()$(br)Mutated variants of $(l:chococraft:gysahls/gysahl_green)Gysahl Green$() can not be crafted into seeds.", + "info.chococraft.book.gysahl_cake.entry.name": "Gysahl Cake", + "info.chococraft.book.gysahl_cake.text1": "Gysahl Cakes are used to instantly age a $(l:chococraft:chocobos/chicobo)Chicobo$() to a $(l:chococraft:chocobos/chocobo)Chocobo$().$(br)You must first tame the $(l:chococraft:chocobos/chicobo)Chicobo$() to feed it a Gysahl Cake. It can NOT be placed.", + "info.chococraft.book.gysahl_green.entry.name": "Gysahl Green", + "info.chococraft.book.gysahl_green.text1": "Gysahl can be found throughout the Overworld in small patches. Gysahl can be used for taming and healing $(l:chococraft:chocobos/chocobo)Chocobos$().$(br)To have a chance of taming a $(l:chococraft:chocobos/chocobo)Chocobos$() you have to hand feed it a Gysahl. Once tamed it'll display a collar similar to tamed wolves.", + "info.chococraft.book.gysahl_green.text2": "A patch of Gysahl Green that generated in a Plains biome.", + "info.chococraft.book.gysahl_green.text3": "Gysahl Green can be farmed by planting Gyshal Green Seeds. After harvesting wild Gysahl the player can craft it into Gysahl Green Seeds.", + "info.chococraft.book.gysahl_green.text4": "The seeds can be planted on Farmland like most other crops can. When the crop matures and is harvested there's a 15%% to get a $(l:chococraft:gysahls/loverly_gysahl)Loverly Gysahl$() and a a 5%% to get a $(l:chococraft:gysahls/gold_gysahl)Gold Gysahl$().", + "info.chococraft.book.gysahls.desc": "These entries contain information about Gysahls", + "info.chococraft.book.gysahls.name": "Gysahls", + "info.chococraft.book.landing": "The chocopedia is your guide to Chococraft 4. $(br2)It contains information on all of the different abilities and items that you can use in Chococraft 4.", + "info.chococraft.book.legacy.desc": "These are the original entries that can be found in the original Chocopedia Book.", + "info.chococraft.book.legacy.entry.name": "Legacy Info", + "info.chococraft.book.legacy.name": "Legacy", + "info.chococraft.book.legacy.page1": "Table of Contents$(br2)I. Chocobos$(br)II. In the wild$(br)III. Gysahl Greens$(br) .1 Gysahl Mutations$(br) .2 Gysahl Pickles$(br)IV. Domestication$(br) .1 Breeding Chocobos$(br) .2 Chocobo Colours$(br)V. The Nether$(br)VI. Chocobo Pen$(br)VII. Chocobo Cake$(br)", + "info.chococraft.book.legacy.page10": "III.2 Gysahl Pickles$(br2)Gysahl Greens and sugar can be crafted into raw Gysahl pickles, which can be cooked in a furnace to receive Gysahl pickles. These treats are not only tasty, but also very nourishing.", + "info.chococraft.book.legacy.page11": "IV. Domestication$(br2)Chocobos can be tamed by feeding them Gysahl Greens, the birds are very fond of the root vegetable and will sometimes form a bond to whomever is feeding them their fa- vorite food item. If tamed, the owner can fit either a chocobo", + "info.chococraft.book.legacy.page12": "saddle or pack bags on a Chocobo. Fitted with a saddle the Chocobo can be additionally equipped with saddle bags. ($(o)Pack bags and saddle bags can be accessed by shift-right click$()).", + "info.chococraft.book.legacy.page13": "IV.1 Chocobo Breeding$(br2)If feed with Loverly or Golden Gysahls, Chocobos of different gender can be breed to produce an off- spring. These infant Chocobos are called Chicobos and even- tually grow into a Chocobo. Besides in- creasing the number", + "info.chococraft.book.legacy.page14": "of Chocobos in a domesticated flock, breeding is the only way to obtain the different varieties of Chocobos available. There is a slight chance of mutation, which can be in- creased with the use of Golden Gysahls. The following combinations of parents can cause", + "info.chococraft.book.legacy.page15": "their offspring to mutate into these subspecies:$(br2) 1. $(6)Yellow$(0) + $(6)Yellow$(0)$(br) = $(a)Green$(0) or $(9)Blue$(0)$(br2) 2. $(a)Green$(0) + $(9)Blue$(0)$(br) = $(7)White$(0)$(br2) 3. $(6)Yellow$(0) + $(7)White$(0)$(br) = Black", + "info.chococraft.book.legacy.page16": "4. Black + $(7)White$(0)$(br) = $(6)Gold$(0)$(br2)To enable the off- spring to mutate into a golden Chocobo, the use of Golden Gysahls is mandatory.", + "info.chococraft.book.legacy.page17": "IV.2 Chocobo Colours$(br2)$(6)Yellow Chocobos$(0) are the average variety and have no clear abilities, they can be used however as fast riding and transport animals.$(br2)$(a)Green Chocobos$(0) have the ability to climb, which means they do", + "info.chococraft.book.legacy.page18": "not have the need to jump when ascending a block level. They are slightly faster than their yellow cousins.$(br2)$(9)Blue Chocobos$(0) have the ability to travel fast on water. Al- though all Chocobos have the ability to swim, the blue ones can do it very fast,", + "info.chococraft.book.legacy.page19": "thus are the first choice of transpor- tation when traveling by water route.$(br2)$(7)White Chocobos$(0) have the combined abilities to climb like the green Chocobos and to travel fast on water like the blue. In ad- dition they are slightly faster than the blue", + "info.chococraft.book.legacy.page2": "I. Chocobos$(br2)These large, herbiv- orous birds are largely unable to fly, but their powerful legs allow them to run at high speeds. Their size and impressive speed make them a popular choice when looking for a mount.$(br)", + "info.chococraft.book.legacy.page20": "or green varieties.$(br2)Black Chocobos have the abilities to jump very hight, climb and travel fast on water. Also they are faster than the white ones.$(br2)$(6)Golden Chocobos$(0) are the fastes variety and are not only able to glide like the other", + "info.chococraft.book.legacy.page21": "subspecies, but can fully fly.$(br2)All Chocobo sub- species can glide and avoid fall damage up to a certain hight. Golden Chocobos don't take fall damage at all.", + "info.chococraft.book.legacy.page22": "V. The Nether$(br2)The Nether is popu- lated by a special breed of Chocobo. The Purple Chocobos roaming the hostile tunnels and caves of the nether in search of the scarce avail- able food. This makes them even harder to find than their yellow", + "info.chococraft.book.legacy.page23": "cousins. Living in the nether had the purple Chocobos develop the ability to swim in lava and fly.", + "info.chococraft.book.legacy.page24": "VI. Chocobo Pen$(br2)An area covered with straw and equipped with a water filled cauldron will count as a Chocobo pen. If a hurt Chocobo will stand on the straw near the cauldron it will automatically heal over time.", + "info.chococraft.book.legacy.page25": "VII. Chocobo Cake$(br2)Chocobo Cakes can be used to have Chicobos instantly grow up into Chocobos.$(br2)Recipe:$(br)Take an egg, mix it with two units of sugar, two buckets of milk and two bundles of grain. Finally garnish it with two Gysahl Greens.$(br)Enjoy.", + "info.chococraft.book.legacy.page3": "Although largely too small to allow real flight, the Chocobo's wings enable the birds to glide and avoid fall damage to itself and its rider up to a cer- tain hight.$(br2)Domesticated Chocobos can be deployed as mounts and transport animals.", + "info.chococraft.book.legacy.page4": "There are even re- ports of desperate adventurers having to relyto their Chocobos as a source of food.", + "info.chococraft.book.legacy.page5": "II. In the wild$(br2)Chocobos, in their yellow variety, found wild in most parts of the world. Flocks of mostly three, some- times five animals roam free in the wild. How- ever they are very scarce and an inter- ested ornithologist would have to search", + "info.chococraft.book.legacy.page6": "wide areas to find a flock.", + "info.chococraft.book.legacy.page7": "III. Gysahl Greens$(br2)The Chocobo's fa- vorite food are Gysahl Greens, these thick red root vegetables can be found growing widespread in all fertile areas. These plants can be crafted into seeds. The seeds then can be used to domestically grow", + "info.chococraft.book.legacy.page8": "Gysahl Greens on tilted and moisturised land.", + "info.chococraft.book.legacy.page9": "III.1 Gysahl Mutations$(br2)When domestically growing Gysahl Greens, there is a chance of the root mutating into a Loverly or even Golden Gysahl. These special roots can be feed to two Chocobos of opposite gender, to initialise the mating process.", + "info.chococraft.book.loverly_gysahl.entry.name": "Loverly Gysahl", + "info.chococraft.book.loverly_gysahl.text1": "$(bold)Loverly Gysahl$() is a mutation of the garden-variety $(l:chococraft:gysahls/gysahl_green)Gysahl Green$() and is used for breeding $(l:chococraft:chocobos/chocobo)Chocobos$().$(br)$(bold)Loverly Gysahl$() is obtainable by harvesting $(l:chococraft:gysahls/gysahl_green)Gysahl Green$(), there's a 15%% to get a $(bold)Loverly Gysahl$()", + "info.chococraft.book.misc.desc": "These entries contain information about other stuff from ChocoCraft 4.", + "info.chococraft.book.misc.name": "Misc", + "info.chococraft.book.pickled_gysahl.entry.name": "Raw Pickled Gysahl", + "info.chococraft.book.pickled_gysahl.text1": "Raw Pickled Gysahl is a food item that can be crafted from $(l:chococraft:gysahls/gysahl_green)Gysahl Green$().$(br)The raw version can not be eaten, you have to cook it in order for it to be edible.", + "info.chococraft.book.pink_gysahl.entry.name": "Pink Gysahl", + "info.chococraft.book.pink_gysahl.text1": "$(bold)Pink Gysahl$() is a mutation of the garden-variety $(l:chococraft:gysahls/gysahl_green)Gysahl Green$() and is to turn a $(l:chococraft:chocobos/chocobo#gold)Gold Chocobo$() into a $(l:chococraft:chocobos/chocobo#pink)Pink Chocobo$().", + "info.chococraft.book.raw_drumstick.entry.name": "Chocobo Drumstick", + "info.chococraft.book.raw_drumstick.text1": "Raw Chocobo Drumstick is a food item that can be obtained by killing $(l:chococraft:chocobos/chocobo)Chocobos$().", + "info.chococraft.book.red_gysahl.entry.name": "Red Gysahl", + "info.chococraft.book.red_gysahl.text1": "$(bold)Red Gysahl$() is a mutation of the garden-variety $(l:chococraft:gysahls/gysahl_green)Gysahl Green$() and is to turn a $(l:chococraft:chocobos/chocobo#gold)Gold Chocobo$() into a $(l:chococraft:chocobos/chocobo#red)Red Chocobo$().", + "info.chococraft.book.saddle.entry.name": "Chocobo Saddle", + "info.chococraft.book.saddle.text1": "Chocobo Saddle's allow you to ride your tamed $(l:chococraft:chocobos/chocobo)Chocobo$().$(br)There's different types of saddles, the basic variant just allows you to ride the chocobo while others also grant storage space onto the $(l:chococraft:chocobos/chocobo)Chocobo$().", + "info.chococraft.book.saddle.text2": "The $(bold)Chocobo Saddle Bags$() gives you acces to 18 inventory slots.$(br)The $(bold)Chocobo Saddle Pack$() gives you access to 45 inventory slots.", + "info.chococraft.book.straw.entry.name": "Straw", + "info.chococraft.book.straw.text1": "Straw blocks can be placed in your $(l:chococraft:chocobos/chocobo)Chocobo$() pen to allow your $(l:chococraft:chocobos/chocobo)Chocobo$() to heal naturally when inside the pen.", + "info.chococraft.book.subtitle": "Chococraft Guide", + "info.chococraft.book.whistle.entry.name": "Chocobo Whistle", + "info.chococraft.book.whistle.text1": "The Chocobo Whistle allows you to command your tamed $(l:chococraft:chocobos/chocobo)Chocobos$() by right-clicking them with it. $(br2)There are three commands that you can do, $(o)Wander$(), $(o)Follow$(), and $(o)Stay$().", + "info.chocopedia.book.name": "Chocopedia", + "item.chococraft.black_chocobo_spawn_egg": "Black Chocobo Spawn Egg", + "item.chococraft.blue_chocobo_spawn_egg": "Blue Chocobo Spawn Egg", + "item.chococraft.choco_disguise_boots": "Chocodisguise Boots", + "item.chococraft.choco_disguise_chestplate": "Chocodisguise Body", + "item.chococraft.choco_disguise_helmet": "Chocodisguise Helmet", + "item.chococraft.choco_disguise_leggings": "Chocodisguise Legs", + "item.chococraft.chocobo_drumstick_cooked": "Cooked Chocobo Drumstick", + "item.chococraft.chocobo_drumstick_raw": "Raw Chocobo Drumstick", + "item.chococraft.chocobo_feather": "Chocobo Feather", + "item.chococraft.chocobo_saddle": "Chocobo Saddle", + "item.chococraft.chocobo_saddle_bags": "Chocobo Saddle Bags", + "item.chococraft.chocobo_saddle_pack": "Chocobo Saddle Pack", + "item.chococraft.chocobo_whistle": "Chocobo Whistle", + "item.chococraft.chocopedia": "Chocopedia", + "item.chococraft.flame_chocobo_spawn_egg": "Flame Chocobo Spawn Egg", + "item.chococraft.gold_chocobo_spawn_egg": "Golden Chocobo Spawn Egg", + "item.chococraft.gold_gysahl": "Golden Gysahl", + "item.chococraft.green_chocobo_spawn_egg": "Green Chocobo Spawn Egg", + "item.chococraft.gysahl_cake": "Gysahl Cake", + "item.chococraft.gysahl_green": "Gysahl Green", + "item.chococraft.gysahl_green_seeds": "Gysahl Green Seeds", + "item.chococraft.loverly_gysahl_green": "Loverly Gysahl", + "item.chococraft.pickled_gysahl_cooked": "Baked Pickled Gysahl", + "item.chococraft.pickled_gysahl_raw": "Raw Pickled Gysahl", + "item.chococraft.pink_chocobo_spawn_egg": "Pink Chocobo Spawn Egg", + "item.chococraft.pink_gysahl": "Pink Gysahl", + "item.chococraft.purple_chocobo_spawn_egg": "Purple Chocobo Spawn Egg", + "item.chococraft.red_chocobo_spawn_egg": "Red Chocobo Spawn Egg", + "item.chococraft.red_gysahl": "Red Gysahl", + "item.chococraft.white_chocobo_spawn_egg": "White Chocobo Spawn Egg", + "item.chococraft.yellow_chocobo_spawn_egg": "Yellow Chocobo Spawn Egg", + "itemGroup.chococraft.tab": "ChocoCraft 4", + "text.autoconfig.chococraft.option.chocobo": "Chocobo", + "text.autoconfig.chococraft.option.chocobo.canChocobosFly": "Can Chocobo's Fly", + "text.autoconfig.chococraft.option.chocobo.kwehIntervalLimit": "Kweh Interval Limit", + "text.autoconfig.chococraft.option.chocobo.tameChance": "Tame Chance", + "text.autoconfig.chococraft.option.naming": "Naming", + "text.autoconfig.chococraft.option.naming.femaleNames": "Female Chocobo Names", + "text.autoconfig.chococraft.option.naming.maleNames": "Male Chocobo Names", + "text.autoconfig.chococraft.option.naming.nameTamedChocobos": "Name Tamed Chocobos", + "text.autoconfig.chococraft.option.spawning": "Spawning", + "text.autoconfig.chococraft.option.spawning.chocoboPackSizeMax": "Chocobo Pack Min Size", + "text.autoconfig.chococraft.option.spawning.chocoboPackSizeMin": "Chocobo Pack Max Size", + "text.autoconfig.chococraft.option.spawning.chocoboSpawnWeight": "Chocobo Spawn Weight" +} \ No newline at end of file diff --git a/common/src/main/resources/chococraft/models/block/gysahl_green_stage0.json b/common/src/main/resources/chococraft/models/block/gysahl_green_stage0.json new file mode 100644 index 0000000..2f5618e --- /dev/null +++ b/common/src/main/resources/chococraft/models/block/gysahl_green_stage0.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/cross", + "render_type": "minecraft:cutout", + "textures": { + "cross": "chococraft:block/gysahl_green0" + } +} \ No newline at end of file diff --git a/common/src/main/resources/chococraft/models/block/gysahl_green_stage1.json b/common/src/main/resources/chococraft/models/block/gysahl_green_stage1.json new file mode 100644 index 0000000..176a872 --- /dev/null +++ b/common/src/main/resources/chococraft/models/block/gysahl_green_stage1.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/cross", + "render_type": "minecraft:cutout", + "textures": { + "cross": "chococraft:block/gysahl_green1" + } +} \ No newline at end of file diff --git a/common/src/main/resources/chococraft/models/block/gysahl_green_stage2.json b/common/src/main/resources/chococraft/models/block/gysahl_green_stage2.json new file mode 100644 index 0000000..132dabb --- /dev/null +++ b/common/src/main/resources/chococraft/models/block/gysahl_green_stage2.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/cross", + "render_type": "minecraft:cutout", + "textures": { + "cross": "chococraft:block/gysahl_green2" + } +} \ No newline at end of file diff --git a/common/src/main/resources/chococraft/models/block/gysahl_green_stage3.json b/common/src/main/resources/chococraft/models/block/gysahl_green_stage3.json new file mode 100644 index 0000000..d10b8b3 --- /dev/null +++ b/common/src/main/resources/chococraft/models/block/gysahl_green_stage3.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/cross", + "render_type": "minecraft:cutout", + "textures": { + "cross": "chococraft:block/gysahl_green3" + } +} \ No newline at end of file diff --git a/common/src/main/resources/chococraft/models/block/gysahl_green_stage4.json b/common/src/main/resources/chococraft/models/block/gysahl_green_stage4.json new file mode 100644 index 0000000..7051ef1 --- /dev/null +++ b/common/src/main/resources/chococraft/models/block/gysahl_green_stage4.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/cross", + "render_type": "minecraft:cutout", + "textures": { + "cross": "chococraft:block/gysahl_green4" + } +} \ No newline at end of file diff --git a/common/src/main/resources/chococraft/models/block/straw.json b/common/src/main/resources/chococraft/models/block/straw.json new file mode 100644 index 0000000..27fd112 --- /dev/null +++ b/common/src/main/resources/chococraft/models/block/straw.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/carpet", + "textures": { + "wool": "chococraft:block/straw" + } +} \ No newline at end of file diff --git a/common/src/main/resources/chococraft/sounds.json b/common/src/main/resources/chococraft/sounds.json new file mode 100644 index 0000000..d49f861 --- /dev/null +++ b/common/src/main/resources/chococraft/sounds.json @@ -0,0 +1,26 @@ +{ + "entity.chocobo.kweh": { + "sounds": [ + "chococraft:entity/chocobo/kweh" + ], + "subtitle": "chococraft.subtitle.entity.chocobo.kweh" + }, + "entity.chocobo.kwehwhistlefollow": { + "sounds": [ + "chococraft:entity/chocobo/kwehwhistlefollow" + ], + "subtitle": "chococraft.subtitle.entity.chocobo.kwehwhistlefollow" + }, + "entity.chocobo.kwehwhistlestay": { + "sounds": [ + "chococraft:entity/chocobo/kwehwhistlestay" + ], + "subtitle": "chococraft.subtitle.entity.chocobo.kwehwhistlestay" + }, + "entity.chocobo.kwehwhistlewander": { + "sounds": [ + "chococraft:entity/chocobo/kwehwhistlewander" + ], + "subtitle": "chococraft.subtitle.entity.chocobo.kwehwhistlewander" + } +} \ No newline at end of file diff --git a/common/src/main/resources/data/chococraft/patchouli_books/chocopedia/book.json b/common/src/main/resources/data/chococraft/patchouli_books/chocopedia/book.json new file mode 100644 index 0000000..5787831 --- /dev/null +++ b/common/src/main/resources/data/chococraft/patchouli_books/chocopedia/book.json @@ -0,0 +1,18 @@ +{ + "book_texture": "chococraft:textures/gui/patchouli_book.png", + "creative_tab": "chococraft", + "custom_book_item": "chococraft:chocopedia", + "dont_generate_book": true, + "filler_texture": "chococraft:textures/gui/chocobo_page_filler.png", + "i18n": true, + "landing_text": "info.chococraft.book.landing", + "macros": { + "$(item)": "$(#c47567)" + }, + "model": "chococraft:chocopedia", + "name": "info.chocopedia.book.name", + "show_progress": false, + "subtitle": "info.chococraft.book.subtitle", + "use_blocky_font": true, + "use_resource_pack": true +} \ No newline at end of file diff --git a/fabric/build.gradle b/fabric/build.gradle index 78db6ab..a569c2e 100644 --- a/fabric/build.gradle +++ b/fabric/build.gradle @@ -40,8 +40,7 @@ dependencies { modRuntimeOnly("mezz.jei:jei-${minecraft_version}-fabric:${jei_version}") -// modImplementation("vazkii.patchouli:Patchouli:${patchouli_version}-FABRIC-SNAPSHOT") -// modImplementation("xyz.brassgoggledcoders:PatchouliProvider:${patchouli_provider_version}") +// modImplementation("vazkii.patchouli:Patchouli:${patchouli_version}-FABRIC") } processResources { diff --git a/gradle.properties b/gradle.properties index 0031d84..a171d21 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,6 +1,6 @@ org.gradle.jvmargs=-Xmx2G -minecraft_version=1.21 +minecraft_version=1.21.1 enabled_platforms=fabric,neoforge archives_base_name=chococraft @@ -9,17 +9,17 @@ maven_group=net.chococraft architectury_version=13.0.6 -fabric_loader_version=0.15.11 -fabric_api_version=0.102.0+1.21 -cloth_config_version=15.0.128 -mod_menu_version=11.0.1 +fabric_loader_version=0.16.3 +fabric_api_version=0.103.0+1.21.1 +cloth_config_version=15.0.130 +mod_menu_version=11.0.2 #Publishing curseforge_id=225280 modrinth_id=bPTEaC7v -neoforge_version=21.0.167 +neoforge_version=21.1.37 -jei_version=19.8.0.97 -patchouli_version=1.20.4-85 -patchouli_provider_version=1.20.4-1.0.10-Snapshot.6 +jei_version=19.16.4.165 +patchouli_version=1.21-87-NEOFORGE +patchouli_provider_version=1.21.1-1.0.11-Snapshot.3 diff --git a/neoforge/build.gradle b/neoforge/build.gradle index 4afcff2..f0ded69 100644 --- a/neoforge/build.gradle +++ b/neoforge/build.gradle @@ -59,8 +59,9 @@ dependencies { modRuntimeOnly("mezz.jei:jei-${minecraft_version}-neoforge:${jei_version}") -// modImplementation("vazkii.patchouli:Patchouli:${patchouli_version}-NEOFORGE-SNAPSHOT") -// modImplementation("xyz.brassgoggledcoders:PatchouliProvider:${patchouli_provider_version}") + modImplementation "vazkii.patchouli:Patchouli:${patchouli_version}" + + modImplementation "xyz.brassgoggledcoders:PatchouliProvider:${patchouli_provider_version}" } processResources { diff --git a/neoforge/src/main/java/net/chococraft/neoforge/datagen/ModDatagenerator.java b/neoforge/src/main/java/net/chococraft/neoforge/datagen/ModDatagenerator.java index 6d85461..1d11147 100644 --- a/neoforge/src/main/java/net/chococraft/neoforge/datagen/ModDatagenerator.java +++ b/neoforge/src/main/java/net/chococraft/neoforge/datagen/ModDatagenerator.java @@ -8,6 +8,7 @@ import net.chococraft.neoforge.datagen.client.ChocoItemModels; import net.chococraft.neoforge.datagen.client.ChocoLanguage; import net.chococraft.neoforge.datagen.client.ChocoSoundProvider; +import net.chococraft.neoforge.datagen.client.patchouli.PatchouliProvider; import net.chococraft.neoforge.datagen.data.ChocoLoot; import net.chococraft.neoforge.datagen.data.ChocoRecipes; import net.minecraft.core.Cloner; @@ -53,7 +54,7 @@ public static void gatherData(GatherDataEvent event) { generator.addProvider(event.includeServer(), new ChocoLoot(packOutput, lookupProvider)); generator.addProvider(event.includeServer(), new ChocoRecipes(packOutput, lookupProvider)); -// generator.addProvider(event.includeServer(), new PatchouliProvider(packOutput)); + generator.addProvider(event.includeServer(), new PatchouliProvider(packOutput, lookupProvider)); generator.addProvider(event.includeServer(), new DatapackBuiltinEntriesProvider( packOutput, CompletableFuture.supplyAsync(ModDatagenerator::getProvider), Set.of(Chococraft.MOD_ID))); diff --git a/neoforge/src/main/java/net/chococraft/neoforge/datagen/client/patchouli/PatchouliProvider.java b/neoforge/src/main/java/net/chococraft/neoforge/datagen/client/patchouli/PatchouliProvider.java index c23962c..2157319 100644 --- a/neoforge/src/main/java/net/chococraft/neoforge/datagen/client/patchouli/PatchouliProvider.java +++ b/neoforge/src/main/java/net/chococraft/neoforge/datagen/client/patchouli/PatchouliProvider.java @@ -1,263 +1,265 @@ -//package net.chococraft.neoforge.datagen.client.patchouli; -// -//import net.chococraft.Chococraft; -//import net.chococraft.common.entity.properties.ChocoboColor; -//import net.chococraft.registry.ModEntities; -//import net.chococraft.registry.ModRegistry; -//import net.minecraft.data.PackOutput; -//import net.minecraft.nbt.CompoundTag; -//import net.minecraft.resources.ResourceLocation; -//import net.minecraft.world.item.ItemStack; -//import xyz.brassgoggledcoders.patchouliprovider.BookBuilder; -//import xyz.brassgoggledcoders.patchouliprovider.PatchouliBookProvider; -// -//import java.util.function.Consumer; -// -//public class PatchouliProvider extends PatchouliBookProvider { -// public PatchouliProvider(PackOutput packOutput) { -// super(packOutput, Chococraft.MOD_ID, "en_us"); -// } -// -// @Override -// protected void addBooks(Consumer consumer) { -// BookBuilder bookBuilder = createBookBuilder("chocopedia", -// "info.chocopedia.book.name", "info.chococraft.book.landing") -// .setSubtitle("info.chococraft.book.subtitle") -// .setCustomBookItem(new ItemStack(ModRegistry.CHOCOPEDIA.get())) -// .setCreativeTab("chococraft") -// .setModel("chococraft:chocopedia") -// .setBookTexture("chococraft:textures/gui/patchouli_book.png") -// .setDontGenerateBook(true) -// .setShowProgress(false) -// .setUseBlockyFont(true) -// .setI18n(true) -// .setFillerTexture("chococraft:textures/gui/chocobo_page_filler.png") -// .addMacro("$(item)", "$(#c47567)") -// .setUseResourcePack(true); -// -// -// bookBuilder = bookBuilder.addCategory("chocobos", "info.chococraft.book.chocobos.name", -// "info.chococraft.book.chocobos.desc", "chococraft:chocobo_feather") -// .setSortnum(0) -// -// //Add Chocobo entry -// .addEntry("chocobos/chocobo", "info.chococraft.book.chocobo.entry.name", ModRegistry.YELLOW_CHOCOBO_SPAWN_EGG.getId().toString()) -// .addEntityPage(ModEntities.CHOCOBO.getId()).setEntityNbt(getChocoboData(ChocoboColor.YELLOW)) -// .setText("info.chococraft.book.chocobo.text").build() -// .addTextPage("info.chococraft.book.chocobo.text2").build() -// .addSpotlightPage(new ItemStack(ModRegistry.GYSAHL_GREEN_ITEM.get())) -// .setText("info.chococraft.book.chocobo.text4").build() -// .addImagePage(ResourceLocation.fromNamespaceAndPath(Chococraft.MOD_ID, "textures/gui/entry/chocobo.png")) -// .setText("info.chococraft.book.chocobo.text3").setBorder(true).build() -// .addEntityPage(ModEntities.CHOCOBO.getId()).setEntityNbt(getChocoboData(ChocoboColor.GREEN)) -// .setName("Chocobo (Green)") -// .setText("info.chococraft.book.chocobo.green.description").build() -// .addTextPage("info.chococraft.book.chocobo.green.description2").build() -// .addEntityPage(ModEntities.CHOCOBO.getId()).setEntityNbt(getChocoboData(ChocoboColor.BLUE)) -// .setName("Chocobo (Blue)") -// .setText("info.chococraft.book.chocobo.blue.description").build() -// .addTextPage("info.chococraft.book.chocobo.blue.description2").build() -// .addEntityPage(ModEntities.CHOCOBO.getId()).setEntityNbt(getChocoboData(ChocoboColor.WHITE)) -// .setName("Chocobo (White)") -// .setText("info.chococraft.book.chocobo.white.description").build() -// .addTextPage("info.chococraft.book.chocobo.white.description2").build() -// .addEntityPage(ModEntities.CHOCOBO.getId()).setEntityNbt(getChocoboData(ChocoboColor.BLACK)) -// .setName("Chocobo (Black)") -// .setText("info.chococraft.book.chocobo.black.description").build() -// .addTextPage("info.chococraft.book.chocobo.black.description2").build() -// .addEntityPage(ModEntities.CHOCOBO.getId()).setEntityNbt(getChocoboData(ChocoboColor.GOLD)).setAnchor("gold") -// .setName("Chocobo (Gold)") -// .setText("info.chococraft.book.chocobo.gold.description").build() -// .addTextPage("info.chococraft.book.chocobo.gold.description2").build() -// .addEntityPage(ModEntities.CHOCOBO.getId()).setEntityNbt(getChocoboData(ChocoboColor.PURPLE)) -// .setName("Chocobo (Purple)") -// .setText("info.chococraft.book.chocobo.purple.description").build() -// .addTextPage("info.chococraft.book.chocobo.purple.description2").build() -// .addEntityPage(ModEntities.CHOCOBO.getId()).setEntityNbt(getChocoboData(ChocoboColor.FLAME)) -// .setName("Chocobo (Flame)") -// .setText("info.chococraft.book.chocobo.flame.description").build() -// .addTextPage("info.chococraft.book.chocobo.flame.description2").build() -// .addEntityPage(ModEntities.CHOCOBO.getId()).setEntityNbt(getChocoboData(ChocoboColor.PINK)).setAnchor("pink") -// .setName("Chocobo (Pink)") -// .setText("info.chococraft.book.chocobo.pink.description").build() -// .addTextPage("info.chococraft.book.chocobo.pink.description2").build() -// .addEntityPage(ModEntities.CHOCOBO.getId()).setEntityNbt(getChocoboData(ChocoboColor.RED)).setAnchor("red") -// .setName("Chocobo (Red)") -// .setText("info.chococraft.book.chocobo.red.description").build() -// .addTextPage("info.chococraft.book.chocobo.red.description2").build() -// .build() -// -// //Add Chicobo entry -// .addEntry("chocobos/chicobo", "info.chococraft.book.chicobo.entry.name", ModRegistry.YELLOW_CHOCOBO_SPAWN_EGG.getId().toString()) -// .addTextPage("info.chococraft.book.chicobo.text1").build() -// .addEntityPage(ModEntities.CHOCOBO.getId()).setEntityNbt(getChicoboData(ChocoboColor.YELLOW)) -// .setName("Chicobo (Yellow)").build() -// .build() -// -// //Add Raw Drumstick entry -// .addEntry("chocobos/raw_drumstick", "info.chococraft.book.raw_drumstick.entry.name", ModRegistry.CHOCOBO_DRUMSTICK_RAW.getId().toString()) -// .addTextPage("info.chococraft.book.raw_drumstick.text1").build() -// .addSmeltingPage(ResourceLocation.fromNamespaceAndPath(Chococraft.MOD_ID, "chocobo_drumstick_cooked")).build() -// .addSmokingPage(ResourceLocation.fromNamespaceAndPath(Chococraft.MOD_ID, "chocobo_drumstick_cooked_from_smoking")).build() -// .addCampfirePage(ResourceLocation.fromNamespaceAndPath(Chococraft.MOD_ID, "chocobo_drumstick_cooked_from_campfire_cooking")).build() -// .build() -// -// //Add Feather entry -// .addEntry("chocobos/feather", "info.chococraft.book.feather.entry.name", ModRegistry.CHOCOBO_FEATHER.getId().toString()) -// .addTextPage("info.chococraft.book.feather.text1").build() -// .addSpotlightPage(new ItemStack(ModRegistry.CHOCOBO_FEATHER.get())).build() -// .build() -// -// .build(); //Back to the bookbuilder -// -// bookBuilder = bookBuilder.addCategory("gysahls", "info.chococraft.book.gysahls.name", -// "info.chococraft.book.gysahls.desc", "chococraft:gysahl_green") -// .setSortnum(1) -// -// //Add Loverly Gysahl entry -// .addEntry("gysahls/loverly_gysahl", "info.chococraft.book.loverly_gysahl.entry.name", ModRegistry.LOVERLY_GYSAHL_GREEN.getId().toString()) -// .addTextPage("info.chococraft.book.loverly_gysahl.text1").build() -// .addSpotlightPage(new ItemStack(ModRegistry.LOVERLY_GYSAHL_GREEN.get())).build() -// .build() -// -// //Add Golden Gysahl entry -// .addEntry("gysahls/gold_gysahl", "info.chococraft.book.gold_gysahl.entry.name", ModRegistry.GOLD_GYSAHL.getId().toString()) -// .addTextPage("info.chococraft.book.gold_gysahl.text1").build() -// .addSpotlightPage(new ItemStack(ModRegistry.GOLD_GYSAHL.get())).build() -// .build() -// -// //Add Red Gysahl entry -// .addEntry("gysahls/red_gysahl", "info.chococraft.book.red_gysahl.entry.name", ModRegistry.RED_GYSAHL.getId().toString()) -// .addTextPage("info.chococraft.book.red_gysahl.text1").build() -// .addCraftingPage(ResourceLocation.fromNamespaceAndPath(Chococraft.MOD_ID, "red_gysahl")).build() -// .build() -// -// //Add Pink Gysahl entry -// .addEntry("gysahls/pink_gysahl", "info.chococraft.book.pink_gysahl.entry.name", ModRegistry.PINK_GYSAHL.getId().toString()) -// .addTextPage("info.chococraft.book.pink_gysahl.text1").build() -// .addCraftingPage(ResourceLocation.fromNamespaceAndPath(Chococraft.MOD_ID, "pink_gysahl")).build() -// .build() -// -// //Add Gysahl Green entry -// .addEntry("gysahls/gysahl_green", "info.chococraft.book.gysahl_green.entry.name", ModRegistry.GYSAHL_GREEN_ITEM.getId().toString()) -// .addTextPage("info.chococraft.book.gysahl_green.text1").build() -// .addImagePage(ResourceLocation.fromNamespaceAndPath(Chococraft.MOD_ID, "textures/gui/entry/gysahl.png")) -// .setText("info.chococraft.book.gysahl_green.text2").setBorder(true).build() -// .addCraftingPage(ResourceLocation.fromNamespaceAndPath(Chococraft.MOD_ID, "gysahl_green_to_seeds")) -// .setText("info.chococraft.book.gysahl_green.text3").build() -// .addTextPage("info.chococraft.book.gysahl_green.text4").build() -// .addSpotlightPage(new ItemStack(ModRegistry.GYSAHL_GREEN_ITEM.get())).build() -// .build() -// -// //Add Pickled Gysahl entry -// .addEntry("gysahls/pickled_gysahl", "info.chococraft.book.pickled_gysahl.entry.name", ModRegistry.PICKLED_GYSAHL_RAW.getId().toString()) -// .addTextPage("info.chococraft.book.pickled_gysahl.text1").build() -// .addCraftingPage(ResourceLocation.fromNamespaceAndPath(Chococraft.MOD_ID, "pickled_gysahl_raw")).build() -// .addSmeltingPage(ResourceLocation.fromNamespaceAndPath(Chococraft.MOD_ID, "pickled_gysahl_cooked")).build() -// .addSmokingPage(ResourceLocation.fromNamespaceAndPath(Chococraft.MOD_ID, "pickled_gysahl_cooked_from_smoking")).build() -// .addCampfirePage(ResourceLocation.fromNamespaceAndPath(Chococraft.MOD_ID, "pickled_gysahl_cooked_from_campfire_cooking")).build() -// .build() -// -// //Add Gysahl Cake entry -// .addEntry("gysahls/gysahl_cake", "info.chococraft.book.gysahl_cake.entry.name", ModRegistry.GYSAHL_CAKE.getId().toString()) -// .addTextPage("info.chococraft.book.gysahl_cake.text1").build() -// .addCraftingPage(ResourceLocation.fromNamespaceAndPath(Chococraft.MOD_ID, "gysahl_cake")).build() -// .build() -// -// .build(); //Back to the bookbuilder -// -// bookBuilder = bookBuilder.addCategory("equipments", "info.chococraft.book.equipments.name", -// "info.chococraft.book.equipments.desc", "chococraft:chocobo_saddle_pack") -// .setSortnum(2) -// -// //Add Choco Disguise entry -// .addEntry("equipments/chocodisguise", "info.chococraft.book.chocodisguise.entry.name", ModRegistry.CHOCO_DISGUISE_HELMET.getId().toString()) -// .addTextPage("info.chococraft.book.chocodisguise.text1").build() -// .addImagePage(ResourceLocation.fromNamespaceAndPath(Chococraft.MOD_ID, "textures/gui/entry/chocodisguise.png")).setBorder(true).build() -// .addCraftingPage(ResourceLocation.fromNamespaceAndPath(Chococraft.MOD_ID, "choco_disguise_helmet")) -// .setRecipe2(ResourceLocation.fromNamespaceAndPath(Chococraft.MOD_ID, "choco_disguise_chestplate")).build() -// .addCraftingPage(ResourceLocation.fromNamespaceAndPath(Chococraft.MOD_ID, "choco_disguise_leggings")) -// .setRecipe2(ResourceLocation.fromNamespaceAndPath(Chococraft.MOD_ID, "choco_disguise_boots")).build() -// .build() -// -// //Add Saddle entry -// .addEntry("equipments/saddle", "info.chococraft.book.saddle.entry.name", ModRegistry.CHOCOBO_SADDLE.getId().toString()) -// .addTextPage("info.chococraft.book.saddle.text1").build() -// .addCraftingPage(ResourceLocation.fromNamespaceAndPath(Chococraft.MOD_ID, "chocobo_saddle")) -// .setRecipe2(ResourceLocation.fromNamespaceAndPath(Chococraft.MOD_ID, "chocobo_saddle_alt")).build() -// .addTextPage("info.chococraft.book.saddle.text2").build() -// .addCraftingPage(ResourceLocation.fromNamespaceAndPath(Chococraft.MOD_ID, "chocobo_saddle_bags")) -// .setRecipe2(ResourceLocation.fromNamespaceAndPath(Chococraft.MOD_ID, "chocobo_saddle_pack")).build() -// .build() -// -// //Add Whistle entry -// .addEntry("equipments/whistle", "info.chococraft.book.whistle.entry.name", ModRegistry.CHOCOBO_WHISTLE.getId().toString()) -// .addTextPage("info.chococraft.book.whistle.text1").build() -// .addCraftingPage(ResourceLocation.fromNamespaceAndPath(Chococraft.MOD_ID, "chocobo_whistle")).build() -// .build() -// -// .build(); //Back to the bookbuilder -// -// bookBuilder = bookBuilder.addCategory("misc", "info.chococraft.book.misc.name", -// "info.chococraft.book.misc.desc", "chococraft:straw") -// .setSortnum(3) -// -// //Add Straw entry -// .addEntry("misc/straw", "info.chococraft.book.straw.entry.name", ModRegistry.STRAW_ITEM.getId().toString()) -// .addTextPage("info.chococraft.book.straw.text1").build() -// .addCraftingPage(ResourceLocation.fromNamespaceAndPath(Chococraft.MOD_ID, "straw")).build() -// .build() -// -// .build(); //Back to the bookbuilder -// -// //Legacy category -// bookBuilder = bookBuilder.addCategory("legacy", "info.chococraft.book.legacy.name", -// "info.chococraft.book.legacy.desc", "chococraft:chocopedia") -// .setSortnum(4) -// //Add legacy info entry -// .addEntry("legacy/info", "info.chococraft.book.legacy.entry.name", "chococraft:chocopedia") -// .addTextPage("info.chococraft.book.legacy.page1").build() -// .addTextPage("info.chococraft.book.legacy.page2").build() -// .addTextPage("info.chococraft.book.legacy.page3").build() -// .addTextPage("info.chococraft.book.legacy.page4").build() -// .addTextPage("info.chococraft.book.legacy.page5").build() -// .addTextPage("info.chococraft.book.legacy.page6").build() -// .addTextPage("info.chococraft.book.legacy.page7").build() -// .addTextPage("info.chococraft.book.legacy.page8").build() -// .addTextPage("info.chococraft.book.legacy.page9").build() -// .addTextPage("info.chococraft.book.legacy.page10").build() -// .addTextPage("info.chococraft.book.legacy.page11").build() -// .addTextPage("info.chococraft.book.legacy.page12").build() -// .addTextPage("info.chococraft.book.legacy.page13").build() -// .addTextPage("info.chococraft.book.legacy.page14").build() -// .addTextPage("info.chococraft.book.legacy.page15").build() -// .addTextPage("info.chococraft.book.legacy.page16").build() -// .addTextPage("info.chococraft.book.legacy.page17").build() -// .addTextPage("info.chococraft.book.legacy.page18").build() -// .addTextPage("info.chococraft.book.legacy.page19").build() -// .addTextPage("info.chococraft.book.legacy.page20").build() -// .addTextPage("info.chococraft.book.legacy.page21").build() -// .addTextPage("info.chococraft.book.legacy.page22").build() -// .addTextPage("info.chococraft.book.legacy.page23").build() -// .addTextPage("info.chococraft.book.legacy.page24").build() -// .addTextPage("info.chococraft.book.legacy.page25").build() -// .build() -// .build(); //Back to the bookbuilder -// -// //Finish book -// bookBuilder.build(consumer); -// } -// -// public CompoundTag getChocoboData(ChocoboColor color) { -// CompoundTag tag = new CompoundTag(); -// tag.putByte("Color", (byte) color.ordinal()); -// return tag; -// } -// -// public CompoundTag getChicoboData(ChocoboColor color) { -// CompoundTag tag = new CompoundTag(); -// tag.putInt("Age", -1); -// tag.putByte("Color", (byte) color.ordinal()); -// return tag; -// } -//} +package net.chococraft.neoforge.datagen.client.patchouli; + +import net.chococraft.Chococraft; +import net.chococraft.common.entity.properties.ChocoboColor; +import net.chococraft.registry.ModEntities; +import net.chococraft.registry.ModRegistry; +import net.minecraft.core.HolderLookup; +import net.minecraft.data.PackOutput; +import net.minecraft.nbt.CompoundTag; +import net.minecraft.resources.ResourceLocation; +import net.minecraft.world.item.ItemStack; +import xyz.brassgoggledcoders.patchouliprovider.BookBuilder; +import xyz.brassgoggledcoders.patchouliprovider.PatchouliBookProvider; + +import java.util.concurrent.CompletableFuture; +import java.util.function.Consumer; + +public class PatchouliProvider extends PatchouliBookProvider { + public PatchouliProvider(PackOutput output, CompletableFuture registries) { + super(output, Chococraft.MOD_ID, "en_us", registries); + } + + @Override + protected void addBooks(Consumer consumer, HolderLookup.Provider provider) { + BookBuilder bookBuilder = createBookBuilder("chocopedia", + "info.chocopedia.book.name", "info.chococraft.book.landing", provider) + .setSubtitle("info.chococraft.book.subtitle") + .setCustomBookItem(new ItemStack(ModRegistry.CHOCOPEDIA.get())) + .setCreativeTab("chococraft") + .setModel("chococraft:chocopedia") + .setBookTexture("chococraft:textures/gui/patchouli_book.png") + .setDontGenerateBook(true) + .setShowProgress(false) + .setUseBlockyFont(true) + .setI18n(true) + .setFillerTexture("chococraft:textures/gui/chocobo_page_filler.png") + .addMacro("$(item)", "$(#c47567)") + .setUseResourcePack(true); + + + bookBuilder = bookBuilder.addCategory("chocobos", "info.chococraft.book.chocobos.name", + "info.chococraft.book.chocobos.desc", "chococraft:chocobo_feather") + .setSortnum(0) + + //Add Chocobo entry + .addEntry("chocobos/chocobo", "info.chococraft.book.chocobo.entry.name", ModRegistry.YELLOW_CHOCOBO_SPAWN_EGG.getId().toString()) + .addEntityPage(ModEntities.CHOCOBO.getId()).setEntityNbt(getChocoboData(ChocoboColor.YELLOW)) + .setText("info.chococraft.book.chocobo.text").build() + .addTextPage("info.chococraft.book.chocobo.text2").build() + .addSpotlightPage(new ItemStack(ModRegistry.GYSAHL_GREEN_ITEM.get())) + .setText("info.chococraft.book.chocobo.text4").build() + .addImagePage(ResourceLocation.fromNamespaceAndPath(Chococraft.MOD_ID, "textures/gui/entry/chocobo.png")) + .setText("info.chococraft.book.chocobo.text3").setBorder(true).build() + .addEntityPage(ModEntities.CHOCOBO.getId()).setEntityNbt(getChocoboData(ChocoboColor.GREEN)) + .setName("Chocobo (Green)") + .setText("info.chococraft.book.chocobo.green.description").build() + .addTextPage("info.chococraft.book.chocobo.green.description2").build() + .addEntityPage(ModEntities.CHOCOBO.getId()).setEntityNbt(getChocoboData(ChocoboColor.BLUE)) + .setName("Chocobo (Blue)") + .setText("info.chococraft.book.chocobo.blue.description").build() + .addTextPage("info.chococraft.book.chocobo.blue.description2").build() + .addEntityPage(ModEntities.CHOCOBO.getId()).setEntityNbt(getChocoboData(ChocoboColor.WHITE)) + .setName("Chocobo (White)") + .setText("info.chococraft.book.chocobo.white.description").build() + .addTextPage("info.chococraft.book.chocobo.white.description2").build() + .addEntityPage(ModEntities.CHOCOBO.getId()).setEntityNbt(getChocoboData(ChocoboColor.BLACK)) + .setName("Chocobo (Black)") + .setText("info.chococraft.book.chocobo.black.description").build() + .addTextPage("info.chococraft.book.chocobo.black.description2").build() + .addEntityPage(ModEntities.CHOCOBO.getId()).setEntityNbt(getChocoboData(ChocoboColor.GOLD)).setAnchor("gold") + .setName("Chocobo (Gold)") + .setText("info.chococraft.book.chocobo.gold.description").build() + .addTextPage("info.chococraft.book.chocobo.gold.description2").build() + .addEntityPage(ModEntities.CHOCOBO.getId()).setEntityNbt(getChocoboData(ChocoboColor.PURPLE)) + .setName("Chocobo (Purple)") + .setText("info.chococraft.book.chocobo.purple.description").build() + .addTextPage("info.chococraft.book.chocobo.purple.description2").build() + .addEntityPage(ModEntities.CHOCOBO.getId()).setEntityNbt(getChocoboData(ChocoboColor.FLAME)) + .setName("Chocobo (Flame)") + .setText("info.chococraft.book.chocobo.flame.description").build() + .addTextPage("info.chococraft.book.chocobo.flame.description2").build() + .addEntityPage(ModEntities.CHOCOBO.getId()).setEntityNbt(getChocoboData(ChocoboColor.PINK)).setAnchor("pink") + .setName("Chocobo (Pink)") + .setText("info.chococraft.book.chocobo.pink.description").build() + .addTextPage("info.chococraft.book.chocobo.pink.description2").build() + .addEntityPage(ModEntities.CHOCOBO.getId()).setEntityNbt(getChocoboData(ChocoboColor.RED)).setAnchor("red") + .setName("Chocobo (Red)") + .setText("info.chococraft.book.chocobo.red.description").build() + .addTextPage("info.chococraft.book.chocobo.red.description2").build() + .build() + + //Add Chicobo entry + .addEntry("chocobos/chicobo", "info.chococraft.book.chicobo.entry.name", ModRegistry.YELLOW_CHOCOBO_SPAWN_EGG.getId().toString()) + .addTextPage("info.chococraft.book.chicobo.text1").build() + .addEntityPage(ModEntities.CHOCOBO.getId()).setEntityNbt(getChicoboData(ChocoboColor.YELLOW)) + .setName("Chicobo (Yellow)").build() + .build() + + //Add Raw Drumstick entry + .addEntry("chocobos/raw_drumstick", "info.chococraft.book.raw_drumstick.entry.name", ModRegistry.CHOCOBO_DRUMSTICK_RAW.getId().toString()) + .addTextPage("info.chococraft.book.raw_drumstick.text1").build() + .addSmeltingPage(ResourceLocation.fromNamespaceAndPath(Chococraft.MOD_ID, "chocobo_drumstick_cooked")).build() + .addSmokingPage(ResourceLocation.fromNamespaceAndPath(Chococraft.MOD_ID, "chocobo_drumstick_cooked_from_smoking")).build() + .addCampfirePage(ResourceLocation.fromNamespaceAndPath(Chococraft.MOD_ID, "chocobo_drumstick_cooked_from_campfire_cooking")).build() + .build() + + //Add Feather entry + .addEntry("chocobos/feather", "info.chococraft.book.feather.entry.name", ModRegistry.CHOCOBO_FEATHER.getId().toString()) + .addTextPage("info.chococraft.book.feather.text1").build() + .addSpotlightPage(new ItemStack(ModRegistry.CHOCOBO_FEATHER.get())).build() + .build() + + .build(); //Back to the bookbuilder + + bookBuilder = bookBuilder.addCategory("gysahls", "info.chococraft.book.gysahls.name", + "info.chococraft.book.gysahls.desc", "chococraft:gysahl_green") + .setSortnum(1) + + //Add Loverly Gysahl entry + .addEntry("gysahls/loverly_gysahl", "info.chococraft.book.loverly_gysahl.entry.name", ModRegistry.LOVERLY_GYSAHL_GREEN.getId().toString()) + .addTextPage("info.chococraft.book.loverly_gysahl.text1").build() + .addSpotlightPage(new ItemStack(ModRegistry.LOVERLY_GYSAHL_GREEN.get())).build() + .build() + + //Add Golden Gysahl entry + .addEntry("gysahls/gold_gysahl", "info.chococraft.book.gold_gysahl.entry.name", ModRegistry.GOLD_GYSAHL.getId().toString()) + .addTextPage("info.chococraft.book.gold_gysahl.text1").build() + .addSpotlightPage(new ItemStack(ModRegistry.GOLD_GYSAHL.get())).build() + .build() + + //Add Red Gysahl entry + .addEntry("gysahls/red_gysahl", "info.chococraft.book.red_gysahl.entry.name", ModRegistry.RED_GYSAHL.getId().toString()) + .addTextPage("info.chococraft.book.red_gysahl.text1").build() + .addCraftingPage(ResourceLocation.fromNamespaceAndPath(Chococraft.MOD_ID, "red_gysahl")).build() + .build() + + //Add Pink Gysahl entry + .addEntry("gysahls/pink_gysahl", "info.chococraft.book.pink_gysahl.entry.name", ModRegistry.PINK_GYSAHL.getId().toString()) + .addTextPage("info.chococraft.book.pink_gysahl.text1").build() + .addCraftingPage(ResourceLocation.fromNamespaceAndPath(Chococraft.MOD_ID, "pink_gysahl")).build() + .build() + + //Add Gysahl Green entry + .addEntry("gysahls/gysahl_green", "info.chococraft.book.gysahl_green.entry.name", ModRegistry.GYSAHL_GREEN_ITEM.getId().toString()) + .addTextPage("info.chococraft.book.gysahl_green.text1").build() + .addImagePage(ResourceLocation.fromNamespaceAndPath(Chococraft.MOD_ID, "textures/gui/entry/gysahl.png")) + .setText("info.chococraft.book.gysahl_green.text2").setBorder(true).build() + .addCraftingPage(ResourceLocation.fromNamespaceAndPath(Chococraft.MOD_ID, "gysahl_green_to_seeds")) + .setText("info.chococraft.book.gysahl_green.text3").build() + .addTextPage("info.chococraft.book.gysahl_green.text4").build() + .addSpotlightPage(new ItemStack(ModRegistry.GYSAHL_GREEN_ITEM.get())).build() + .build() + + //Add Pickled Gysahl entry + .addEntry("gysahls/pickled_gysahl", "info.chococraft.book.pickled_gysahl.entry.name", ModRegistry.PICKLED_GYSAHL_RAW.getId().toString()) + .addTextPage("info.chococraft.book.pickled_gysahl.text1").build() + .addCraftingPage(ResourceLocation.fromNamespaceAndPath(Chococraft.MOD_ID, "pickled_gysahl_raw")).build() + .addSmeltingPage(ResourceLocation.fromNamespaceAndPath(Chococraft.MOD_ID, "pickled_gysahl_cooked")).build() + .addSmokingPage(ResourceLocation.fromNamespaceAndPath(Chococraft.MOD_ID, "pickled_gysahl_cooked_from_smoking")).build() + .addCampfirePage(ResourceLocation.fromNamespaceAndPath(Chococraft.MOD_ID, "pickled_gysahl_cooked_from_campfire_cooking")).build() + .build() + + //Add Gysahl Cake entry + .addEntry("gysahls/gysahl_cake", "info.chococraft.book.gysahl_cake.entry.name", ModRegistry.GYSAHL_CAKE.getId().toString()) + .addTextPage("info.chococraft.book.gysahl_cake.text1").build() + .addCraftingPage(ResourceLocation.fromNamespaceAndPath(Chococraft.MOD_ID, "gysahl_cake")).build() + .build() + + .build(); //Back to the bookbuilder + + bookBuilder = bookBuilder.addCategory("equipments", "info.chococraft.book.equipments.name", + "info.chococraft.book.equipments.desc", "chococraft:chocobo_saddle_pack") + .setSortnum(2) + + //Add Choco Disguise entry + .addEntry("equipments/chocodisguise", "info.chococraft.book.chocodisguise.entry.name", ModRegistry.CHOCO_DISGUISE_HELMET.getId().toString()) + .addTextPage("info.chococraft.book.chocodisguise.text1").build() + .addImagePage(ResourceLocation.fromNamespaceAndPath(Chococraft.MOD_ID, "textures/gui/entry/chocodisguise.png")).setBorder(true).build() + .addCraftingPage(ResourceLocation.fromNamespaceAndPath(Chococraft.MOD_ID, "choco_disguise_helmet")) + .setRecipe2(ResourceLocation.fromNamespaceAndPath(Chococraft.MOD_ID, "choco_disguise_chestplate")).build() + .addCraftingPage(ResourceLocation.fromNamespaceAndPath(Chococraft.MOD_ID, "choco_disguise_leggings")) + .setRecipe2(ResourceLocation.fromNamespaceAndPath(Chococraft.MOD_ID, "choco_disguise_boots")).build() + .build() + + //Add Saddle entry + .addEntry("equipments/saddle", "info.chococraft.book.saddle.entry.name", ModRegistry.CHOCOBO_SADDLE.getId().toString()) + .addTextPage("info.chococraft.book.saddle.text1").build() + .addCraftingPage(ResourceLocation.fromNamespaceAndPath(Chococraft.MOD_ID, "chocobo_saddle")) + .setRecipe2(ResourceLocation.fromNamespaceAndPath(Chococraft.MOD_ID, "chocobo_saddle_alt")).build() + .addTextPage("info.chococraft.book.saddle.text2").build() + .addCraftingPage(ResourceLocation.fromNamespaceAndPath(Chococraft.MOD_ID, "chocobo_saddle_bags")) + .setRecipe2(ResourceLocation.fromNamespaceAndPath(Chococraft.MOD_ID, "chocobo_saddle_pack")).build() + .build() + + //Add Whistle entry + .addEntry("equipments/whistle", "info.chococraft.book.whistle.entry.name", ModRegistry.CHOCOBO_WHISTLE.getId().toString()) + .addTextPage("info.chococraft.book.whistle.text1").build() + .addCraftingPage(ResourceLocation.fromNamespaceAndPath(Chococraft.MOD_ID, "chocobo_whistle")).build() + .build() + + .build(); //Back to the bookbuilder + + bookBuilder = bookBuilder.addCategory("misc", "info.chococraft.book.misc.name", + "info.chococraft.book.misc.desc", "chococraft:straw") + .setSortnum(3) + + //Add Straw entry + .addEntry("misc/straw", "info.chococraft.book.straw.entry.name", ModRegistry.STRAW_ITEM.getId().toString()) + .addTextPage("info.chococraft.book.straw.text1").build() + .addCraftingPage(ResourceLocation.fromNamespaceAndPath(Chococraft.MOD_ID, "straw")).build() + .build() + + .build(); //Back to the bookbuilder + + //Legacy category + bookBuilder = bookBuilder.addCategory("legacy", "info.chococraft.book.legacy.name", + "info.chococraft.book.legacy.desc", "chococraft:chocopedia") + .setSortnum(4) + //Add legacy info entry + .addEntry("legacy/info", "info.chococraft.book.legacy.entry.name", "chococraft:chocopedia") + .addTextPage("info.chococraft.book.legacy.page1").build() + .addTextPage("info.chococraft.book.legacy.page2").build() + .addTextPage("info.chococraft.book.legacy.page3").build() + .addTextPage("info.chococraft.book.legacy.page4").build() + .addTextPage("info.chococraft.book.legacy.page5").build() + .addTextPage("info.chococraft.book.legacy.page6").build() + .addTextPage("info.chococraft.book.legacy.page7").build() + .addTextPage("info.chococraft.book.legacy.page8").build() + .addTextPage("info.chococraft.book.legacy.page9").build() + .addTextPage("info.chococraft.book.legacy.page10").build() + .addTextPage("info.chococraft.book.legacy.page11").build() + .addTextPage("info.chococraft.book.legacy.page12").build() + .addTextPage("info.chococraft.book.legacy.page13").build() + .addTextPage("info.chococraft.book.legacy.page14").build() + .addTextPage("info.chococraft.book.legacy.page15").build() + .addTextPage("info.chococraft.book.legacy.page16").build() + .addTextPage("info.chococraft.book.legacy.page17").build() + .addTextPage("info.chococraft.book.legacy.page18").build() + .addTextPage("info.chococraft.book.legacy.page19").build() + .addTextPage("info.chococraft.book.legacy.page20").build() + .addTextPage("info.chococraft.book.legacy.page21").build() + .addTextPage("info.chococraft.book.legacy.page22").build() + .addTextPage("info.chococraft.book.legacy.page23").build() + .addTextPage("info.chococraft.book.legacy.page24").build() + .addTextPage("info.chococraft.book.legacy.page25").build() + .build() + .build(); //Back to the bookbuilder + + //Finish book + bookBuilder.build(consumer); + } + + public CompoundTag getChocoboData(ChocoboColor color) { + CompoundTag tag = new CompoundTag(); + tag.putByte("Color", (byte) color.ordinal()); + return tag; + } + + public CompoundTag getChicoboData(ChocoboColor color) { + CompoundTag tag = new CompoundTag(); + tag.putInt("Age", -1); + tag.putByte("Color", (byte) color.ordinal()); + return tag; + } +}