Skip to content

Commit

Permalink
did staff stuff for wizards so its tag-based
Browse files Browse the repository at this point in the history
  • Loading branch information
CammiePone committed Jan 21, 2025
1 parent 6552aa2 commit 2554820
Show file tree
Hide file tree
Showing 4 changed files with 23 additions and 15 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
{
"replace": false,
"values": [
"arcanuscontinuum:wooden_staff",
"arcanuscontinuum:crystal_staff",
"arcanuscontinuum:divination_staff",
"arcanuscontinuum:crescent_staff",
"arcanuscontinuum:ancient_staff"
]
}
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ public class ArcanusItemTags {
public static final TagKey<Item> CRAFTING_SPELLBINDING_SPELLBOOKS = TagKey.create(Registries.ITEM, Arcanus.id("crafting/spellbinding_acceptable_spellbooks"));
public static final TagKey<Item> STAVES = TagKey.create(Registries.ITEM, Arcanus.id("staves"));
public static final TagKey<Item> WIZARD_ARMOR = TagKey.create(Registries.ITEM, Arcanus.id("wizard_armor"));
public static final TagKey<Item> STAVES_FOR_WIZARDS = TagKey.create(Registries.ITEM, Arcanus.id("staves_for_wizards"));

public static final TagKey<Item> C_FEATHERS = ConventionsHelper.tag(Registries.ITEM, "feathers");
}
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@
import dev.cammiescorner.arcanuscontinuum.common.util.ArcanusHelper;
import net.minecraft.ChatFormatting;
import net.minecraft.advancements.CriteriaTriggers;
import net.minecraft.core.registries.BuiltInRegistries;
import net.minecraft.nbt.CompoundTag;
import net.minecraft.nbt.Tag;
import net.minecraft.network.chat.Component;
Expand All @@ -28,7 +29,6 @@
import net.minecraft.world.entity.npc.AbstractVillager;
import net.minecraft.world.entity.npc.VillagerTrades;
import net.minecraft.world.entity.player.Player;
import net.minecraft.world.item.Item;
import net.minecraft.world.item.ItemStack;
import net.minecraft.world.item.trading.MerchantOffer;
import net.minecraft.world.item.trading.MerchantOffers;
Expand Down Expand Up @@ -175,22 +175,12 @@ public AgeableMob getBreedOffspring(ServerLevel world, AgeableMob entity) {
return null;
}

@Override
public boolean canBeLeashed(Player player) {
return false;
}

private ItemStack getRandomStaff(RandomSource random) {
// TODO use a tag for this
List<Item> staves = List.of(
ArcanusItems.WOODEN_STAFF.get(),
ArcanusItems.CRYSTAL_STAFF.get(),
ArcanusItems.DIVINATION_STAFF.get(),
ArcanusItems.CRESCENT_STAFF.get(),
ArcanusItems.ANCIENT_STAFF.get()
return new ItemStack(BuiltInRegistries.ITEM.getOrCreateTag(ArcanusItemTags.STAVES_FOR_WIZARDS)
.getRandomElement(random)
.orElse(BuiltInRegistries.ITEM.wrapAsHolder(ArcanusItems.CRYSTAL_STAFF.get()))
.value()
);

return new ItemStack(staves.get(random.nextInt(staves.size())));
}

public void setRobeColor(int color) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -62,6 +62,13 @@ protected void addTags(HolderLookup.Provider arg) {
.add(ArcanusItems.MAGIC_TOME.get())
.add(ArcanusItems.MAGE_PISTOL.get());

getOrCreateTagBuilder(ArcanusItemTags.STAVES_FOR_WIZARDS)
.add(ArcanusItems.WOODEN_STAFF.get())
.add(ArcanusItems.CRYSTAL_STAFF.get())
.add(ArcanusItems.DIVINATION_STAFF.get())
.add(ArcanusItems.CRESCENT_STAFF.get())
.add(ArcanusItems.ANCIENT_STAFF.get());

getOrCreateTagBuilder(ArcanusItemTags.WIZARD_ARMOR)
.add(ArcanusItems.WIZARD_HAT.get())
.add(ArcanusItems.WIZARD_ROBES.get())
Expand Down

0 comments on commit 2554820

Please sign in to comment.