From f2349199a5e2796f296ec7a406c453023416b231 Mon Sep 17 00:00:00 2001 From: Sollace Date: Tue, 23 May 2023 09:48:40 +0100 Subject: [PATCH] Added pineapples and bananas --- .../com/minelittlepony/unicopia/UTags.java | 7 +++ .../unicopia/item/PineappleItem.java | 40 ++++++++++++++++++ .../minelittlepony/unicopia/item/UItems.java | 2 + .../unicopia/item/toxin/UFoodComponents.java | 1 + .../unicopia/util/RegistryUtils.java | 21 +++++++++ .../resources/assets/unicopia/lang/en_us.json | 2 + .../assets/unicopia/models/item/banana.json | 6 +++ .../unicopia/models/item/pineapple.json | 20 +++++++++ .../unicopia/models/item/pineapple_bite1.json | 6 +++ .../unicopia/models/item/pineapple_bite2.json | 6 +++ .../assets/unicopia/textures/item/banana.png | Bin 0 -> 1870 bytes .../unicopia/textures/item/pineapple.png | Bin 0 -> 2322 bytes .../textures/item/pineapple_bite1.png | Bin 0 -> 2348 bytes .../textures/item/pineapple_bite2.png | Bin 0 -> 2350 bytes .../resources/data/c/tags/items/banana.json | 6 +++ .../resources/data/c/tags/items/bananas.json | 6 +++ .../resources/data/c/tags/items/fruit.json | 4 +- .../resources/data/c/tags/items/fruits.json | 4 +- .../data/c/tags/items/pineapple.json | 6 +++ .../data/c/tags/items/pineapples.json | 6 +++ .../tags/status_effect/pineapple_effects.json | 9 ++++ 21 files changed, 150 insertions(+), 2 deletions(-) create mode 100644 src/main/java/com/minelittlepony/unicopia/item/PineappleItem.java create mode 100644 src/main/resources/assets/unicopia/models/item/banana.json create mode 100644 src/main/resources/assets/unicopia/models/item/pineapple.json create mode 100644 src/main/resources/assets/unicopia/models/item/pineapple_bite1.json create mode 100644 src/main/resources/assets/unicopia/models/item/pineapple_bite2.json create mode 100644 src/main/resources/assets/unicopia/textures/item/banana.png create mode 100644 src/main/resources/assets/unicopia/textures/item/pineapple.png create mode 100644 src/main/resources/assets/unicopia/textures/item/pineapple_bite1.png create mode 100644 src/main/resources/assets/unicopia/textures/item/pineapple_bite2.png create mode 100644 src/main/resources/data/c/tags/items/banana.json create mode 100644 src/main/resources/data/c/tags/items/bananas.json create mode 100644 src/main/resources/data/c/tags/items/pineapple.json create mode 100644 src/main/resources/data/c/tags/items/pineapples.json create mode 100644 src/main/resources/data/unicopia/tags/status_effect/pineapple_effects.json diff --git a/src/main/java/com/minelittlepony/unicopia/UTags.java b/src/main/java/com/minelittlepony/unicopia/UTags.java index e8c3a65f..1c76ab57 100644 --- a/src/main/java/com/minelittlepony/unicopia/UTags.java +++ b/src/main/java/com/minelittlepony/unicopia/UTags.java @@ -4,6 +4,7 @@ import com.minelittlepony.unicopia.item.toxin.Toxics; import net.minecraft.block.Block; import net.minecraft.entity.EntityType; +import net.minecraft.entity.effect.StatusEffect; import net.minecraft.item.Item; import net.minecraft.registry.*; import net.minecraft.registry.tag.TagKey; @@ -36,6 +37,8 @@ public interface UTags { TagKey> TRANSFORMABLE_ENTITIES = entity("transformable"); + TagKey PINEAPPLE_EFFECTS = effect("pineapple_effects"); + static TagKey item(String name) { return TagKey.of(RegistryKeys.ITEM, Unicopia.id(name)); } @@ -48,6 +51,10 @@ public interface UTags { return TagKey.of(RegistryKeys.ENTITY_TYPE, Unicopia.id(name)); } + static TagKey effect(String name) { + return TagKey.of(RegistryKeys.STATUS_EFFECT, Unicopia.id(name)); + } + static void bootstrap() { Toxics.bootstrap(); } diff --git a/src/main/java/com/minelittlepony/unicopia/item/PineappleItem.java b/src/main/java/com/minelittlepony/unicopia/item/PineappleItem.java new file mode 100644 index 00000000..14360d98 --- /dev/null +++ b/src/main/java/com/minelittlepony/unicopia/item/PineappleItem.java @@ -0,0 +1,40 @@ +package com.minelittlepony.unicopia.item; + +import com.minelittlepony.unicopia.AwaitTickQueue; +import com.minelittlepony.unicopia.UTags; +import com.minelittlepony.unicopia.util.RegistryUtils; + +import net.minecraft.entity.LivingEntity; +import net.minecraft.entity.effect.StatusEffectInstance; +import net.minecraft.item.Item; +import net.minecraft.item.ItemStack; +import net.minecraft.sound.SoundCategory; +import net.minecraft.sound.SoundEvents; +import net.minecraft.world.World; + +public class PineappleItem extends Item { + public PineappleItem(Settings settings) { + super(settings); + } + + @Override + public ItemStack finishUsing(ItemStack stack, World world, LivingEntity user) { + if (isFood()) { + user.eatFood(world, stack.copy()); + if (!world.isClient) { + stack.damage(1, user, u -> { + AwaitTickQueue.scheduleTask(u.world, w -> { + w.playSoundFromEntity(null, u, SoundEvents.ENTITY_PLAYER_BURP, SoundCategory.PLAYERS, 1, 0.7F); + }); + }); + + if (world.random.nextInt(20) == 0) { + RegistryUtils.pickRandom(world, UTags.PINEAPPLE_EFFECTS, e -> !user.hasStatusEffect(e)).ifPresent(effect -> { + user.addStatusEffect(new StatusEffectInstance(effect, 10, 1)); + }); + } + } + } + return stack; + } +} diff --git a/src/main/java/com/minelittlepony/unicopia/item/UItems.java b/src/main/java/com/minelittlepony/unicopia/item/UItems.java index 6b04956e..192dc4b4 100644 --- a/src/main/java/com/minelittlepony/unicopia/item/UItems.java +++ b/src/main/java/com/minelittlepony/unicopia/item/UItems.java @@ -75,6 +75,8 @@ public interface UItems { Item PINECONE = register("pinecone", new Item(new Item.Settings().food(UFoodComponents.PINECONE).maxCount(3)), ItemGroups.FOOD_AND_DRINK); Item ACORN = register("acorn", new Item(new Item.Settings().food(UFoodComponents.ACORN).maxCount(16)), ItemGroups.FOOD_AND_DRINK); Item MANGO = register("mango", new Item(new Item.Settings().food(UFoodComponents.MANGO)), ItemGroups.FOOD_AND_DRINK); + Item BANANA = register("banana", new Item(new Item.Settings().food(UFoodComponents.BANANA)), ItemGroups.FOOD_AND_DRINK); + Item PINEAPPLE = register("pineapple", new PineappleItem(new Item.Settings().food(UFoodComponents.BANANA).maxDamage(3)), ItemGroups.FOOD_AND_DRINK); Item PEBBLES = register("pebbles", new RacePredicatedAliasedBlockItem(UBlocks.ROCKS, new Item.Settings(), Race::canUseEarth), ItemGroups.NATURAL); Item ROCK = register("rock", new HeavyProjectileItem(new Item.Settings(), 3), ItemGroups.NATURAL); diff --git a/src/main/java/com/minelittlepony/unicopia/item/toxin/UFoodComponents.java b/src/main/java/com/minelittlepony/unicopia/item/toxin/UFoodComponents.java index 8e7d56d7..5670e89c 100644 --- a/src/main/java/com/minelittlepony/unicopia/item/toxin/UFoodComponents.java +++ b/src/main/java/com/minelittlepony/unicopia/item/toxin/UFoodComponents.java @@ -42,6 +42,7 @@ public interface UFoodComponents { FoodComponent PINECONE = builder(0, 0.01F).snack().alwaysEdible().build(); FoodComponent ACORN = builder(1, 0.01F).snack().alwaysEdible().build(); FoodComponent MANGO = builder(8, 0.8F).alwaysEdible().build(); + FoodComponent BANANA = builder(6, 0.9F).build(); static FoodComponent.Builder builder(int hunger, float saturation) { return new FoodComponent.Builder() diff --git a/src/main/java/com/minelittlepony/unicopia/util/RegistryUtils.java b/src/main/java/com/minelittlepony/unicopia/util/RegistryUtils.java index d2619e91..a5930adb 100644 --- a/src/main/java/com/minelittlepony/unicopia/util/RegistryUtils.java +++ b/src/main/java/com/minelittlepony/unicopia/util/RegistryUtils.java @@ -1,5 +1,7 @@ package com.minelittlepony.unicopia.util; +import java.util.Optional; +import java.util.function.Predicate; import java.util.stream.Stream; import com.mojang.serialization.Lifecycle; @@ -7,9 +9,11 @@ import com.mojang.serialization.Lifecycle; import net.fabricmc.fabric.api.event.registry.FabricRegistryBuilder; import net.minecraft.registry.tag.TagKey; import net.minecraft.util.Identifier; +import net.minecraft.util.Util; import net.minecraft.registry.*; import net.minecraft.registry.entry.RegistryEntry; import net.minecraft.registry.entry.RegistryEntryList; +import net.minecraft.registry.entry.RegistryEntryList.Named; import net.minecraft.world.World; public interface RegistryUtils { @@ -28,4 +32,21 @@ public interface RegistryUtils { static Stream valuesForTag(World world, TagKey key) { return entriesForTag(world, key).stream().map(RegistryEntry::value); } + + static Optional pickRandom(World world, TagKey key) { + return world.getRegistryManager().getOptional(key.registry()) + .flatMap(registry -> registry.getEntryList(key)) + .flatMap(entries -> entries.getRandom(world.random)) + .map(RegistryEntry::value); + } + + static Optional pickRandom(World world, TagKey key, Predicate filter) { + return Util.getRandomOrEmpty(world.getRegistryManager().getOptional(key.registry()) + .flatMap(registry -> registry.getEntryList(key)) + .stream() + .flatMap(Named::stream) + .map(RegistryEntry::value) + .filter(filter) + .toList(), world.random); + } } diff --git a/src/main/resources/assets/unicopia/lang/en_us.json b/src/main/resources/assets/unicopia/lang/en_us.json index b837e5f6..78a014bc 100644 --- a/src/main/resources/assets/unicopia/lang/en_us.json +++ b/src/main/resources/assets/unicopia/lang/en_us.json @@ -74,6 +74,8 @@ "item.unicopia.burned_juice": "Burned Juice", "item.unicopia.mango": "Mango", + "item.unicopia.banana": "Banana", + "item.unicopia.pineapple": "Pineapple", "item.unicopia.sunglasses": "Sunglasses", "item.unicopia.broken_sunglasses": "Broken Sunglasses", diff --git a/src/main/resources/assets/unicopia/models/item/banana.json b/src/main/resources/assets/unicopia/models/item/banana.json new file mode 100644 index 00000000..ebc8e4a0 --- /dev/null +++ b/src/main/resources/assets/unicopia/models/item/banana.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "unicopia:item/banana" + } +} diff --git a/src/main/resources/assets/unicopia/models/item/pineapple.json b/src/main/resources/assets/unicopia/models/item/pineapple.json new file mode 100644 index 00000000..0c243a7f --- /dev/null +++ b/src/main/resources/assets/unicopia/models/item/pineapple.json @@ -0,0 +1,20 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "unicopia:item/pineapple" + }, + "overrides": [ + { + "predicate": { + "damage": 0.3 + }, + "model": "unicopia:item/pineapple_bite1" + }, + { + "predicate": { + "damage": 0.6 + }, + "model": "unicopia:item/pineapple_bite2" + } + ] +} diff --git a/src/main/resources/assets/unicopia/models/item/pineapple_bite1.json b/src/main/resources/assets/unicopia/models/item/pineapple_bite1.json new file mode 100644 index 00000000..ebe3b66c --- /dev/null +++ b/src/main/resources/assets/unicopia/models/item/pineapple_bite1.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "unicopia:item/pineapple_bite1" + } +} diff --git a/src/main/resources/assets/unicopia/models/item/pineapple_bite2.json b/src/main/resources/assets/unicopia/models/item/pineapple_bite2.json new file mode 100644 index 00000000..044a6bce --- /dev/null +++ b/src/main/resources/assets/unicopia/models/item/pineapple_bite2.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "unicopia:item/pineapple_bite2" + } +} diff --git a/src/main/resources/assets/unicopia/textures/item/banana.png b/src/main/resources/assets/unicopia/textures/item/banana.png new file mode 100644 index 0000000000000000000000000000000000000000..9074a939454a7ac59c028b2a52443b054c069a77 GIT binary patch literal 1870 zcmV-U2eJ5xP) zaB^>EX>4U6ba`-PAZ2)IW&i+q+SONCvLq)A{O1%t0$MJ4G$AVr@>OpF?u|jHFH5H`PVZ}o4uc_ulUg!qh}SlA13Y| z;r(iy(F$7GgU@-g1j*Zm__XxZIE4@6@*KlIXq0Y2jQ4H4nm7Ocq}OlGo+fN|Yqb`Q z@J~EO-KJbUEUa*hT-zdE!!Mw3*PHPsUwm_+a4!eZLem zXIm~JSbzHpdND5;Xn9fAU#tQkG;bb-%fa{i@d2<9qFA-uoM2$_b&IHhUfdFQ0WDY< z(CXf7{Rn`IaCU$)BtXDNl0cEXF&h#5n1D}#<}6OR0s;zwJG5jKi2x_@Ivab8uC*L^ z4;eXX3Ht(TnY{?kX*34q=JFURjSrdW3`%UuBCxKOLyU_9W}11H2ek`T_XB31k^4DnbWj6e?!rv5 z=td30X154h=_D-7fEX(Qaa#z0(7Z77iBx$Z=N4u@Gom6ev-`k2qkHogZa5>cr!f#S4y#9IrH(Td_ zapQj{NJi4DUni15@3LTCpWX0{+4VJ5M-<*4qay8IJ+Se#LtNY|%@6%mWpEl5ca&i$ z!*b0O1i}`dJt(*J8#zsBfNv`W`r@k`CDI7qeUuKSZOek>_R)gx+F95gsjccXg);(a zh$Z-T$;&C#zQ^FOHulb0K*cWQoS9nJ>GbH{0*E_vKi;iL8q7*(vLm!wJ#z?_^vT`s zdu@epWj)+b>Q)Ry-s7mcb&XJHD>U6crF%r%Jbq1n!1sLcTu!CkS5KET?=AIy2^j-b zGLBB}`l8$s!M5ih4>>Yjry)UoXlcxFNwa}~t}&*)%e98T`@o)J$XhGa_;X~Yh>Wmp zn8=bjnr=vpaseH-$>!3q_?(vP8V$&J!(^}ML?h(7XOMU-K;L|nN(vHPn;i^(3cD>#!6)~8h0!B==K+U7e8ptTMaif z_sDyO^9YF2QIBVU-LI+ngom5ZqXo$zSX@x7}aZN6!H1s&Fw>+G9JXz7n9@ zIfMO){E7bKi3v*Y;poAV8`1ZK_AGrRwj|ZtRxkN*XYa;)`=Y_#ltp+?S7W^^YIP_; zNpB+N65E4(K8~5ji22XNIDrOHR`kk8*SMYBkQj;|fDoa2Z#?YNMcQo+ZVUaW%dESK ztjpJsqgE~WzlwyzTB@&<_C!iU{{sQsTk5L^m6lNhtmLD*G%Nmr`HS3j4Y`XZe(x!` z9Ql)N8nTKUbGraM_x?5WMZ}RhV`gR$F1RQFmo$!?9X4?ikK!yIZ<%Ie` zQE7)yBXYy__^ot5MC*LGlf{)6r>NhoR50|fmg}*RbBp7sWDjfKYU{VR551$qzjnG~ zKkn2mo_hc;CoTVfu6{Cco6Wd1{0S=B2-Momh$jF50Xs=VK~y-)t&-160znvtpP5Yy ziHN{lh+r2aP`VUdf-WU=t5YCG|3d#m2ZIh?qLWYr(z!#OgRb54(jhmr*v&}j&@Wu4 zgYKGW=~5pI4D<55-#arO{INt(U~4U^y#2{}RmdQ4A!n+WSAn+xWDq#BG6ukWGR)b< zqZrtrkTcchY7!CFIo+Q_)7sk5pb1o?3Jq{98`o{0%OKH9l@DTu(V@$Ja5|-f90nj# zuXX*K?AKX}W?sj#(c=mBj&J)L__14^Z?5mr;|Wx~hU>!4K}Ga@#6r$g0O{pu%Q}Q( zm6@5H0$}&(p#%0O(E~F}8jMV|ln_p-Ow61{XrpBF#V*)S@buhZdt=;>>{vEHGxn!V z_VBJJ>>FHOy|G|KSWLWkg83rAkFbA*_0**DM)Z6A2L4-p0dh@oFeL;c0RR9107*qo IM6N<$g14}gzW@LL literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/unicopia/textures/item/pineapple.png b/src/main/resources/assets/unicopia/textures/item/pineapple.png new file mode 100644 index 0000000000000000000000000000000000000000..651102c582108202af4bbf9d0333411bacfc0842 GIT binary patch literal 2322 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/unicopia/textures/item/pineapple_bite1.png b/src/main/resources/assets/unicopia/textures/item/pineapple_bite1.png new file mode 100644 index 0000000000000000000000000000000000000000..0981c3b785abd6decd802aadee7dfeee9fb7daae GIT binary patch literal 2348 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 UG<^gjzyJUM07*qoM6N<$g8t)fvj6}9 literal 0 HcmV?d00001 diff --git a/src/main/resources/data/c/tags/items/banana.json b/src/main/resources/data/c/tags/items/banana.json new file mode 100644 index 00000000..f2e0bcc6 --- /dev/null +++ b/src/main/resources/data/c/tags/items/banana.json @@ -0,0 +1,6 @@ +{ + "replace": false, + "values": [ + "unicopia:banana" + ] +} diff --git a/src/main/resources/data/c/tags/items/bananas.json b/src/main/resources/data/c/tags/items/bananas.json new file mode 100644 index 00000000..f2e0bcc6 --- /dev/null +++ b/src/main/resources/data/c/tags/items/bananas.json @@ -0,0 +1,6 @@ +{ + "replace": false, + "values": [ + "unicopia:banana" + ] +} diff --git a/src/main/resources/data/c/tags/items/fruit.json b/src/main/resources/data/c/tags/items/fruit.json index 2f6d5efe..6cd22ee2 100644 --- a/src/main/resources/data/c/tags/items/fruit.json +++ b/src/main/resources/data/c/tags/items/fruit.json @@ -1,6 +1,8 @@ { "replace": false, "values": [ - "unicopia:mango" + "unicopia:mango", + "unicopia:banana", + "unicopia:pineapple" ] } diff --git a/src/main/resources/data/c/tags/items/fruits.json b/src/main/resources/data/c/tags/items/fruits.json index 2f6d5efe..6cd22ee2 100644 --- a/src/main/resources/data/c/tags/items/fruits.json +++ b/src/main/resources/data/c/tags/items/fruits.json @@ -1,6 +1,8 @@ { "replace": false, "values": [ - "unicopia:mango" + "unicopia:mango", + "unicopia:banana", + "unicopia:pineapple" ] } diff --git a/src/main/resources/data/c/tags/items/pineapple.json b/src/main/resources/data/c/tags/items/pineapple.json new file mode 100644 index 00000000..60c5a61e --- /dev/null +++ b/src/main/resources/data/c/tags/items/pineapple.json @@ -0,0 +1,6 @@ +{ + "replace": false, + "values": [ + "unicopia:pineapple" + ] +} diff --git a/src/main/resources/data/c/tags/items/pineapples.json b/src/main/resources/data/c/tags/items/pineapples.json new file mode 100644 index 00000000..60c5a61e --- /dev/null +++ b/src/main/resources/data/c/tags/items/pineapples.json @@ -0,0 +1,6 @@ +{ + "replace": false, + "values": [ + "unicopia:pineapple" + ] +} diff --git a/src/main/resources/data/unicopia/tags/status_effect/pineapple_effects.json b/src/main/resources/data/unicopia/tags/status_effect/pineapple_effects.json new file mode 100644 index 00000000..5f8e5576 --- /dev/null +++ b/src/main/resources/data/unicopia/tags/status_effect/pineapple_effects.json @@ -0,0 +1,9 @@ +{ + "replace": false, + "values": [ + "minecraft:regeneration", + "minecraft:absorption", + "minecraft:luck", + "minecraft:haste" + ] +}