Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
51 commits
Select commit Hold shift + click to select a range
848c2ce
changed:bowattack,eventlisteners,humanoidgolementity
D12epic May 30, 2023
2263009
changed:bowattack,eventlisteners,humanoidgolementity
D12epic Jun 11, 2023
b714031
changed:bowattack,eventlisteners,humanoidgolementity
D12epic May 30, 2023
35383b8
changed:bowattack,eventlisteners,humanoidgolementity
D12epic Jun 11, 2023
893c367
Add files via upload
D12epic Jun 11, 2023
c81920e
changed:eventlisteners,humanoidgolementity
D12epic Jun 11, 2023
b530a95
changed:eventlisteners,humanoidgolementity
D12epic Jun 11, 2023
ce61129
changed:eventlisteners,humanoidgolementity
D12epic Jun 15, 2023
544273d
changed:eventlisteners,humanoidgolementity
D12epic Jun 15, 2023
ce1671c
Merge remote-tracking branch 'origin/1.19' into 1.19
D12epic Jun 29, 2023
01485dd
Merge remote-tracking branch 'origin/1.19' into 1.19
D12epic Jun 29, 2023
8615c4f
format
lcy0x1 Jun 29, 2023
02ecc53
organize
lcy0x1 Jun 29, 2023
66c939d
fix space
lcy0x1 Jun 29, 2023
de78038
fix space
lcy0x1 Jun 30, 2023
230908e
Merge remote-tracking branch 'origin/1.19' into 1.19
D12epic Jul 8, 2023
39ac9c4
clean up
lcy0x1 May 4, 2023
e20e71a
clean up
lcy0x1 May 4, 2023
d9bf0fa
DELETE COMPATS
lcy0x1 May 4, 2023
9e1032e
finish golem 1.19.4
lcy0x1 May 4, 2023
5b36e57
regen data
lcy0x1 May 4, 2023
1227b3b
fix inv tab
lcy0x1 May 5, 2023
abc168c
update to new lib
lcy0x1 May 7, 2023
5097723
fix jar
lcy0x1 May 7, 2023
4cd9947
move arrow mixin to library
lcy0x1 May 8, 2023
475fb37
fix recipes
lcy0x1 May 14, 2023
a5cb66c
fix
lcy0x1 May 23, 2023
a96c3a3
finish
lcy0x1 May 23, 2023
934fca1
add blazegear
lcy0x1 May 29, 2023
3efd785
port
lcy0x1 Jun 13, 2023
9a5a09e
regen assets
lcy0x1 Jun 13, 2023
a24558f
update lib
lcy0x1 Jun 17, 2023
1304110
1.20 init
lcy0x1 Jun 17, 2023
a60669d
init 1.20
lcy0x1 Jun 19, 2023
3f7fd46
regen assets
lcy0x1 Jun 19, 2023
d1b7054
release
lcy0x1 Jun 19, 2023
650be09
update lib, fix location
lcy0x1 Jun 19, 2023
d761a9f
fix summon wand text
lcy0x1 Jun 19, 2023
585d06f
migrate config
lcy0x1 Jun 21, 2023
90aee5d
add advancements
lcy0x1 Jun 24, 2023
77b3ed9
fix range
lcy0x1 Jun 24, 2023
3fb6feb
updat
lcy0x1 Jun 29, 2023
ee25e3e
update mods
lcy0x1 Jun 30, 2023
febdd11
fix patchouli
lcy0x1 Jul 2, 2023
aa2925d
bug fix
lcy0x1 Jul 3, 2023
675c251
Merge remote-tracking branch 'upstream/1.20.1' into 1.19
D12epic Jul 8, 2023
d222f18
Merge remote-tracking branch 'origin/1.19' into 1.19
D12epic Jul 13, 2023
daee32d
Merge remote-tracking branch 'D12s 1.20.1' into 1.19
D12epic Jul 14, 2023
d4a4099
Merge remote-tracking branch 'D12s 1.20.1' into 1.19
D12epic Jul 14, 2023
bdf22ff
Merge remote-tracking branch 'D12s 1.20.1' into 1.19
D12epic Jul 14, 2023
19060de
Merge branch 'rider' into D12's_1.20.1(RiderUpgrade)
lcy0x1 Jul 15, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -103,6 +103,7 @@ c551f7f40b62278b6423b57b00126deec9035225 assets/modulargolems/models/item/quartz
43717a5eb1b01a2e9640f297929c1b5d838cbd26 assets/modulargolems/models/item/recycle_blue.json
e21189fc27b4253bd81cbafcc4bfeee9bd19683c assets/modulargolems/models/item/recycle_purple.json
295b30187a6f2f55f4089bec3ff128db02269865 assets/modulargolems/models/item/retrieval_wand.json
2b92cf818596b85466df98f955ce653f3eeddb55 assets/modulargolems/models/item/rider_wand.json
9806afe1161ebd9726ce1a694c0c8cbd8f081122 assets/modulargolems/models/item/slow.json
9c32e472d6fddd1120cd945cfcd0f36e5adaa630 assets/modulargolems/models/item/slow_blue.json
95f8a06aead32162ab7be1fdd8aece601f509835 assets/modulargolems/models/item/slow_purple.json
Expand Down
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
// 1.20.1 2023-07-06T09:24:53.44889 Golem Config

c2109e3144fe2e624e8895b77ea4815b55d19cd3 data/modulargolems/modulargolems_config/materials/vanilla.json
45c774627b2c77dbae4c65f4654dd7033fda2f83 data/modulargolems/modulargolems_config/parts/default.json
2 changes: 2 additions & 0 deletions src/generated/resources/assets/modulargolems/lang/en_ud.json
Original file line number Diff line number Diff line change
Expand Up @@ -127,6 +127,7 @@
"item.modulargolems.quartz": "ǝpɐɹbd∩ zʇɹɐnὉ",
"item.modulargolems.recycle": "ǝpɐɹbdb∩ ǝןɔʎɔǝᴚ",
"item.modulargolems.retrieval_wand": "puɐM ןɐʌǝıɹʇǝᴚ",
"item.modulargolems.rider_wand": "puɐM ɹǝpıᴚ",
"item.modulargolems.slow": "ssǝuʍoןS :ǝpɐɹbd∩ uoıʇoԀ",
"item.modulargolems.soul_flame": "ǝɯɐןℲ ןnoS :ǝpɐɹbd∩ uoıʇoԀ",
"item.modulargolems.speed": "ǝpɐɹbd∩ pǝǝdS",
Expand Down Expand Up @@ -232,6 +233,7 @@
"modulargolems.tooltip.standing": ")%s '%s '%s( ʇɐ ʎɐʇs ןןıʍ ɯǝןo⅁",
"modulargolems.wand.command": "˙ʇı oʇ ʇǝbɹɐʇ ɥɔʇıʍs oʇ sɯǝןob buıpunoɹɹns ɹnoʎ ןןɐ ןןɐɔ ןןıʍ puɐʍ sıɥʇ ɥʇıʍ ʎʇıʇuǝ buıʞɔɐʇʇⱯ ˙ʎɹoʇuǝʌuı ǝɹnbıɟuoɔ oʇ ɯǝןob pıouɐɯnH ʞɔıןɔ ʇɥbıɹ ʇɟıɥS ˙sɯǝןob ɹoɟ sǝpoɯ ɥɔʇıʍs oʇ ʞɔıןɔ ʇɥbıᴚ",
"modulargolems.wand.retrieve": "˙ʎɹoʇuǝʌuı oʇuı ʞɔɐq ɯǝןob ǝʌǝıɹʇǝɹ oʇ sɯǝןob ʎɐʍɐɹɐɟ ʞɔıןɔ ʇɥbıɹ ʇɟıɥS ˙sɯǝןob buıpunoɹɹns ɹnoʎ ןןɐ ǝʌǝıɹʇǝɹ oʇ ʞɔıןɔ ʇɥbıᴚ",
"modulargolems.wand.rider": "˙ʇı uo ǝpıɹ oʇ ɯǝןobbop ɹnoʎ oʇ ʞɔıןɔ ʇɥbıᴚ",
"modulargolems.wand.summon": "˙ʎɹoʇuǝʌuı ɹnoʎ ɯoɹɟ sɯǝןob ןןɐ uoɯɯns oʇ ʞɔıןɔ ʇɥbıɹ ʇɟıɥS ˙puɐʍ ǝɥʇ ʎq pǝʇuıod uoıʇısod ʎɐʍɐɹɐɟ ɐ oʇ ɯǝןob ǝuo uoɯɯns oʇ ʞɔıןɔ ʇɥbıᴚ",
"patchouli.modulargolems.landing": "poɯ ǝpɐɹbdn puɐ ʎןqɯǝssɐ ɯǝןob ǝʞıן-ɹǝʞuı⟘ oʇ ǝɯoɔןǝM",
"patchouli.modulargolems.title": "ǝpın⅁ ɯǝןo⅁ ɹɐןnpoW"
Expand Down
2 changes: 2 additions & 0 deletions src/generated/resources/assets/modulargolems/lang/en_us.json
Original file line number Diff line number Diff line change
Expand Up @@ -127,6 +127,7 @@
"item.modulargolems.quartz": "Quartz Upgrade",
"item.modulargolems.recycle": "Recycle Ugpgrade",
"item.modulargolems.retrieval_wand": "Retrieval Wand",
"item.modulargolems.rider_wand": "Rider Wand",
"item.modulargolems.slow": "Potion Upgrade: Slowness",
"item.modulargolems.soul_flame": "Potion Upgrade: Soul Flame",
"item.modulargolems.speed": "Speed Upgrade",
Expand Down Expand Up @@ -232,6 +233,7 @@
"modulargolems.tooltip.standing": "Golem will stay at (%s, %s, %s)",
"modulargolems.wand.command": "Right click to switch modes for golems. Shift right click Humanoid golem to configure inventory. Attacking entity with this wand will call all your surrounding golems to switch target to it.",
"modulargolems.wand.retrieve": "Right click to retrieve all your surrounding golems. Shift right click faraway golems to retrieve golem back into inventory.",
"modulargolems.wand.rider": "Right click to your doggolem to ride on it.",
"modulargolems.wand.summon": "Right click to summon one golem to a faraway position pointed by the wand. Shift right click to summon all golems from your inventory.",
"patchouli.modulargolems.landing": "Welcome to Tinker-like golem assembly and upgrade mod",
"patchouli.modulargolems.title": "Modular Golem Guide"
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
{
"parent": "minecraft:item/generated",
"textures": {
"layer0": "modulargolems:item/rider_wand"
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,8 @@
public class AbstractGolemEntity<T extends AbstractGolemEntity<T, P>, P extends IGolemPart<P>> extends AbstractGolem
implements IEntityAdditionalSpawnData, NeutralMob, OwnableEntity, PowerableMob {

protected AbstractGolemEntity(EntityType<T> type, Level level) {

protected AbstractGolemEntity(EntityType<T> type, Level level) {
super(type, level);
this.waterNavigation = new AmphibiousPathNavigation(this, level);
this.groundNavigation = new GroundPathNavigation(this, level);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,24 +13,29 @@
import net.minecraft.network.syncher.SynchedEntityData;
import net.minecraft.sounds.SoundEvent;
import net.minecraft.sounds.SoundEvents;
import net.minecraft.util.Mth;
import net.minecraft.world.InteractionHand;
import net.minecraft.world.InteractionResult;
import net.minecraft.world.damagesource.DamageSource;
import net.minecraft.world.entity.Entity;
import net.minecraft.world.entity.EntityType;
import net.minecraft.world.entity.LivingEntity;
import net.minecraft.world.entity.ai.attributes.Attributes;
import net.minecraft.world.entity.ai.goal.LookAtPlayerGoal;
import net.minecraft.world.entity.ai.goal.RandomLookAroundGoal;
import net.minecraft.world.entity.player.Player;
import net.minecraft.world.item.ItemStack;
import net.minecraft.world.level.Level;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.phys.Vec2;
import net.minecraft.world.phys.Vec3;

@SerialClass
public class DogGolemEntity extends AbstractGolemEntity<DogGolemEntity, DogGolemPartType> {

private float standAnimO;
protected boolean isJumping;
public DogGolemEntity(EntityType<DogGolemEntity> type, Level level) {
super(type, level);
setMaxUpStep(1);
}

public float getTailAngle() {
Expand All @@ -41,7 +46,78 @@ public float getTailAngle() {
return (0.55F - percentage * 0.16F) * (float) Math.PI;
}
}
//ride
public void aiStep() {
super.aiStep();
}
protected void positionRider(Entity p_289569_, Entity.MoveFunction p_289558_) {
super.positionRider(p_289569_, p_289558_);
if (this.standAnimO > 0.0F) {
float f = Mth.sin(this.yBodyRot * ((float)Math.PI / 180F));
float f1 = Mth.cos(this.yBodyRot * ((float)Math.PI / 180F));
float f2 = 0.7F * this.standAnimO;
float f3 = 0.15F * this.standAnimO;
p_289558_.accept(p_289569_, this.getX() + (double)(f2 * f), this.getY() + this.getPassengersRidingOffset() + p_289569_.getMyRidingOffset() + (double)f3, this.getZ() - (double)(f2 * f1));
if (p_289569_ instanceof LivingEntity) {
((LivingEntity)p_289569_).yBodyRot = this.yBodyRot;
}
}
}
protected void tickRidden(Player player, Vec3 vec3) {
super.tickRidden(player, vec3);
Vec2 vec2 = this.getRiddenRotation(player);
this.setRot(vec2.y, vec2.x);
this.yRotO = this.yBodyRot = this.yHeadRot = this.getYRot();
if (this.isControlledByLocalInstance()) {
if (this.onGround()) {
if (player.jumping) {
this.executeRidersJump(vec3);
}
}
}

}
protected Vec2 getRiddenRotation(LivingEntity p_275502_) {
return new Vec2(p_275502_.getXRot() * 0.5F, p_275502_.getYRot());
}
protected Vec3 getRiddenInput(Player p_278278_, Vec3 p_275506_) {
float f = p_278278_.xxa * 0.5F;
float f1 = p_278278_.zza;
if (f1 <= 0.0F) {
f1 *= 0.25F;
}
return new Vec3((double)f, 0.0D, (double)f1);
}
public LivingEntity getControllingPassenger() {
Entity entity = this.getFirstPassenger();
if (entity instanceof LivingEntity) {
return (LivingEntity) entity;
}
return null;
}
protected float getRiddenSpeed(Player p_278336_) {
return (float)this.getAttributeValue(Attributes.MOVEMENT_SPEED);
}
//jump when ridding
public double getCustomJump() {
return 2;
}
public void setIsJumping(boolean p_30656_) {
this.isJumping = p_30656_;
}
protected void executeRidersJump(Vec3 p_275435_) {
Vec3 vec3 = this.getDeltaMovement();
this.setDeltaMovement(vec3.x, 0.53F, vec3.z);
this.setIsJumping(true);
this.hasImpulse = true;
net.minecraftforge.common.ForgeHooks.onLivingJump(this);
if (p_275435_.z > 0.0D) {
float f = Mth.sin(this.getYRot() * ((float)Math.PI / 180F));
float f1 = Mth.cos(this.getYRot() * ((float)Math.PI / 180F));
this.setDeltaMovement(this.getDeltaMovement().add((double)(-0.4F * f * 0.53F), 0.0D, (double)(0.4F * f1 *0.53F)));
}

}
// sit

protected static final EntityDataAccessor<Byte> DATA_FLAGS_ID = SynchedEntityData.defineId(DogGolemEntity.class, EntityDataSerializers.BYTE);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ protected static void transform(PoseStack stack, ItemDisplayContext transform, @
case THIRD_PERSON_LEFT_HAND:
case THIRD_PERSON_RIGHT_HAND: {
stack.translate(0.25, 0.4, 0.5);
float size = 1F;
float size = 0.5F;
stack.scale(size, size, size);
break;
}
Expand Down Expand Up @@ -60,7 +60,7 @@ protected static void transform(PoseStack stack, ItemDisplayContext transform, @
}

public DogGolemRenderer(EntityRendererProvider.Context ctx) {
super(ctx, new DogGolemModel(ctx.bakeLayer(ModelLayers.WOLF)), 0.5F, DogGolemPartType::values);
super(ctx, new DogGolemModel(ctx.bakeLayer(ModelLayers.WOLF)), 1F, DogGolemPartType::values);
}

protected float getBob(DogGolemEntity dog, float pPartialTicks) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -90,7 +90,7 @@ public void reassessWeaponGoal() {
}

public ItemStack getProjectile(ItemStack pShootable) {
if (pShootable.getItem() instanceof ProjectileWeaponItem) {
if (pShootable.getItem() instanceof ProjectileWeaponItem ) {
Predicate<ItemStack> predicate = ((ProjectileWeaponItem) pShootable.getItem()).getSupportedHeldProjectiles();
ItemStack itemstack = ProjectileWeaponItem.getHeldProjectile(this, predicate);
return net.minecraftforge.common.ForgeHooks.getProjectile(this, pShootable, itemstack);
Expand Down Expand Up @@ -406,6 +406,45 @@ public void aiStep() {
stack.inventoryTick(level(), this, slot.ordinal(), slot == EquipmentSlot.MAINHAND);
}
}
attackStep();
}

public void attackStep() {
if (tickCount % 2 != 0) return;
LivingEntity target = getTarget();
ItemStack main = getItemBySlot(EquipmentSlot.MAINHAND);
ItemStack off = getItemBySlot(EquipmentSlot.OFFHAND);
if (main.getItem() instanceof ProjectileWeaponItem) {
if (getProjectile(main).isEmpty()) {
if (off.getItem() instanceof ProjectileWeaponItem) {
return;
}
} else {
if (target == null) {
return;
}
double d0 = distanceToSqr(target.getX(), target.getY(), target.getZ());
if (meleeGoal.getAttackReachSqr(target) < d0) {
return;
}
}
} else if (off.getItem() instanceof ProjectileWeaponItem) {
super.setItemInHand(InteractionHand.MAIN_HAND, off);
boolean noArrow = getProjectile(off).isEmpty();
super.setItemInHand(InteractionHand.MAIN_HAND, main);
if (noArrow) {
return;
}
if (target != null) {
double d0 = distanceToSqr(target.getX(), target.getY(), target.getZ());
if (meleeGoal.getAttackReachSqr(target) > d0) {
return;
}
}
} else {
return;
}
setItemInHand(InteractionHand.MAIN_HAND, off);
setItemInHand(InteractionHand.OFF_HAND, main);
}
}

}
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
package dev.xkmc.modulargolems.content.item;

import dev.xkmc.modulargolems.content.entity.dog.DogGolemEntity;
import net.minecraft.world.item.Item;
import dev.xkmc.l2serial.util.Wrappers;
import dev.xkmc.modulargolems.content.entity.common.AbstractGolemEntity;
import dev.xkmc.modulargolems.init.data.MGLangData;
import net.minecraft.network.chat.Component;
import net.minecraft.world.InteractionHand;
import net.minecraft.world.InteractionResult;
import net.minecraft.world.entity.LivingEntity;
import net.minecraft.world.entity.player.Player;
import net.minecraft.world.item.ItemStack;
import net.minecraft.world.item.TooltipFlag;
import net.minecraft.world.level.Level;
import org.jetbrains.annotations.Nullable;

import java.util.List;

public class RiderWandItem extends Item implements WandItem {
public RiderWandItem(Properties props) {
super(props);
}

public InteractionResult interactLivingEntity(ItemStack stack, Player user, LivingEntity target, InteractionHand hand) {
if (!(target instanceof AbstractGolemEntity<?, ?> golem)) return InteractionResult.PASS;
return ride(target.level(), user, Wrappers.cast(golem)) ? InteractionResult.SUCCESS : InteractionResult.FAIL;
}
private static boolean ride(Level level, Player user, AbstractGolemEntity<?, ?> golem) {
if (!golem.isAlliedTo(user)) return false;
if (level.isClientSide()) return true;
if (golem instanceof DogGolemEntity e) {
user.startRiding(e,true);
return true;
}
return true;



}
public void appendHoverText(ItemStack pStack, @Nullable Level pLevel, List<Component> list, TooltipFlag pIsAdvanced) {
list.add(MGLangData.WAND_RIDER.get());
}

}
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
import net.minecraft.world.entity.projectile.AbstractArrow;
import net.minecraft.world.entity.projectile.ThrownTrident;
import net.minecraft.world.item.ArrowItem;
import net.minecraft.world.item.ItemStack;
import net.minecraft.world.item.BowItem;
import net.minecraft.world.item.TridentItem;
import net.minecraftforge.eventbus.api.SubscribeEvent;
import net.minecraftforge.fml.common.Mod;
Expand All @@ -18,9 +18,10 @@ public class GolemEventListeners {

@SubscribeEvent
public static void onEquip(GolemEquipEvent event) {
ItemStack stack = event.getStack();
if (stack.getItem() instanceof ArrowItem) {
event.setSlot(EquipmentSlot.OFFHAND, event.getStack().getCount());
if (!event.getEntity().getItemBySlot(EquipmentSlot.MAINHAND).isEmpty()) {
if (event.getStack().getItem() instanceof BowItem) {
event.setSlot(EquipmentSlot.OFFHAND, event.getStack().getCount());
}
}
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,7 @@ public enum MGLangData {
WAND_RETRIEVE("wand.retrieve", "Right click to retrieve all your surrounding golems. Shift right click faraway golems to retrieve golem back into inventory.", 0, ChatFormatting.GRAY),
WAND_COMMAND("wand.command", "Right click to switch modes for golems. Shift right click Humanoid golem to configure inventory. Attacking entity with this wand will call all your surrounding golems to switch target to it.", 0, ChatFormatting.GRAY),
WAND_SUMMON("wand.summon", "Right click to summon one golem to a faraway position pointed by the wand. Shift right click to summon all golems from your inventory.", 0, ChatFormatting.GRAY),
WAND_RIDER("wand.rider","Right click to your doggolem to ride on it.",0, ChatFormatting.GRAY),

DESTROY_ITEM("msg.destroy_item", "Golem %s destroyed %s items because it finds no place to store.", 2, ChatFormatting.RED),
DESTROY_EXP("msg.destroy_exp", "Golem %s destroyed %s experience because it finds no place to store.", 2, ChatFormatting.RED),
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,20 +12,24 @@
import dev.xkmc.modulargolems.content.entity.humanoid.HumanoidGolemEntity;
import dev.xkmc.modulargolems.content.entity.metalgolem.MetalGolemEntity;
import dev.xkmc.modulargolems.content.entity.metalgolem.MetalGolemPartType;
import dev.xkmc.modulargolems.content.item.CommandWandItem;
import dev.xkmc.modulargolems.content.item.DispenseWand;
import dev.xkmc.modulargolems.content.item.RetrievalWandItem;
import dev.xkmc.modulargolems.content.item.SimpleUpgradeItem;
import dev.xkmc.modulargolems.content.item.*;
import dev.xkmc.modulargolems.content.item.golem.GolemHolder;
import dev.xkmc.modulargolems.content.item.golem.GolemPart;
import dev.xkmc.modulargolems.content.modifier.base.GolemModifier;
import dev.xkmc.modulargolems.init.ModularGolems;
import dev.xkmc.modulargolems.init.data.MGLangData;
import dev.xkmc.modulargolems.init.data.MGTagGen;
import net.minecraft.network.chat.Component;
import net.minecraft.resources.ResourceLocation;
import net.minecraft.world.item.CreativeModeTab;
import net.minecraft.world.item.Item;
import net.minecraft.world.item.ItemStack;
import net.minecraft.world.item.TooltipFlag;
import net.minecraft.world.level.Level;
import net.minecraftforge.client.model.generators.ModelFile;
import org.jetbrains.annotations.Nullable;

import java.util.List;
import java.util.function.Supplier;

import static dev.xkmc.modulargolems.init.ModularGolems.REGISTRATE;
Expand Down Expand Up @@ -57,14 +61,16 @@ public class GolemItems {
public static final ItemEntry<RetrievalWandItem> RETRIEVAL_WAND;
public static final ItemEntry<CommandWandItem> COMMAND_WAND;
public static final ItemEntry<DispenseWand> DISPENSE_WAND;
public static final ItemEntry<RiderWandItem> RIDER_WAND;


static {

GOLEM_TEMPLATE = REGISTRATE.item("metal_golem_template", Item::new).defaultModel().defaultLang().register();
RETRIEVAL_WAND = REGISTRATE.item("retrieval_wand", p -> new RetrievalWandItem(p.stacksTo(1))).defaultModel().defaultLang().register();
COMMAND_WAND = REGISTRATE.item("command_wand", p -> new CommandWandItem(p.stacksTo(1))).defaultModel().defaultLang().register();
DISPENSE_WAND = REGISTRATE.item("summon_wand", p -> new DispenseWand(p.stacksTo(1))).defaultModel().defaultLang().register();

RIDER_WAND = REGISTRATE.item("rider_wand", p -> new RiderWandItem(p.stacksTo(1))).defaultModel().defaultLang().register();
// upgrades
{
EMPTY_UPGRADE = REGISTRATE.item("empty_upgrade", Item::new).defaultModel().defaultLang().register();
Expand Down
Loading