-
Posts
150 -
Joined
-
Last visited
Converted
-
Gender
Male
Recent Profile Visitors
The recent visitors block is disabled and is not being shown to other users.
theishiopian's Achievements
Creeper Killer (4/8)
1
Reputation
-
I have been attempting to make a spear for my mod, and up until now everything had been going fairly well by using the trident as a guide. The problem is that I absolutely cannot get the entity to render. As in, at all. I am registering the renderer, and I've confirmed the event is being called for it. @OnlyIn(Dist.CLIENT) public void ClientSetup(FMLClientSetupEvent event) { if(Config.flailEnabled.get())ModItems.RegisterFlailOverrides(); MinecraftForge.EVENT_BUS.addListener(ClientEvents::OnClick); MinecraftForge.EVENT_BUS.addListener(ClientEvents::OnKeyPressed); RenderingRegistry.registerEntityRenderingHandler(ModEntities.SPEAR.get(), RenderSpear::new); } The other 3 lines here work perfectly. Here is the renderer: public class RenderSpear extends EntityRenderer<SpearEntity> { public RenderSpear(EntityRendererManager manager) { super(manager); } @Override public void render(SpearEntity spearEntity, float yaw, float partialTicks, MatrixStack matrix, @NotNull IRenderTypeBuffer buffer, int light) { System.out.println("the funny"); matrix.pushPose(); //todo: translate/rotate/scale matrix Minecraft mc = Minecraft.getInstance(); mc.getItemRenderer().render(spearEntity.spearItem, ItemCameraTransforms.TransformType.FIXED, false, matrix, buffer, light, OverlayTexture.NO_OVERLAY, mc.getItemRenderer().getModel(spearEntity.spearItem, spearEntity.level, null)); matrix.popPose(); } @Override public ResourceLocation getTextureLocation(@NotNull SpearEntity entity) { return null; } } The println at the top does not print, proving this method is not being called. The entity itself works fine, I can throw it and deal damage just like a trident. It just won't render.
-
I am attempting to add config entries for disabling items from being loaded. When I attempt to change the config however (with the game closed) not only does it not work, but the entries are erased from the .toml, and the first entry after the new entries is also removed. Config class: https://pastebin.com/67b9Ytf7 The config file is attached, with different versions for the default, the edited one, and the broken one. The entries i edit are the first three, which i set to false. Notice how even the fourth entry is deleted, despite not being edited. Log: https://pastebin.com/d0bKF4Pa I already saw the 4 lines about the file being changed, but i have no idea what is changing it. parrying-common BEFORE LOAD.toml parrying-common BEFORE LOAD EDITED.toml parrying-common AFTER LOAD.toml
-
I am attempting to make a weapon with a custom attribute, in this case armor penetration. Everything has made sense so far, except that the attribute map on the item requires a UUID, which from what i can tell, is just preset at random. My current constructor looks like this: public WeaponMace(IItemTier tier, Properties properties, float baseDamage, double speed, int armorPen) { super(tier, properties); Builder<Attribute, AttributeModifier> builder = ImmutableMultimap.builder(); float attackDamage = baseDamage + tier.getAttackDamageBonus(); builder.put(Attributes.ATTACK_DAMAGE, new AttributeModifier(BASE_ATTACK_DAMAGE_UUID, "Weapon modifier", attackDamage, AttributeModifier.Operation.ADDITION)); builder.put(Attributes.ATTACK_SPEED, new AttributeModifier(BASE_ATTACK_SPEED_UUID, "Weapon modifier", speed, AttributeModifier.Operation.ADDITION)); builder.put(ModAttributes.ARMOR_PENETRATION.get(), new AttributeModifier(UUID.fromString("c7675e5c-2e25-4589-ace1-f0ad816b40b8"), "Weapon modifier", armorPen, AttributeModifier.Operation.ADDITION)); this.defaultModifiers = builder.build(); } Is this an ok way of doing this?
-
This is a follow up to an earlier post about not being able to use the knockback method. Well, since then I've learned a bit more about the nature of my problem. It turns out that knockback DOES work, but the catch is if I cancel the LivingAttackEvent that I'm calling the code from, then all attempts to modify the velocity of the player are nullified, even if i extract the mojang knockback code and reuse it (which I don't want to do in the long run, for legal reasons). As soon as I stop canceling the event, the knockback works. Unfortunately, I NEED to cancel the event, since its the whole point of the mod. What could be causing this interaction???
-
Yes, I know I wasn't using it correctly, that is extremely unhelpful. Fortunately, I was able to figure it out. turns out you have to pass null as the entity argument, which the docs don't do a good job of explaining.
-
I can't seem to get a sound to play. Code is: player.getLevel().playSound(player, player.blockPosition(), SoundEvents.SHIELD_BLOCK, SoundCategory.PLAYERS, 5, 1); "player" is of type ServerPlayerEntity. I know this code is being called, but no sound is playing.
-
I am attempting to knock the player in a direction, but cannot seem to figure out how to do it. im using the latest mdk, I've tried "entity.knockback()", "entity.push()" and even "entity.setDeltaMovement()" and nothing seems to work. What is the best way to apply knockback in a direction?
-
Greetings, not sure if this is the right place for this, but I need some modding experts to help with a peculiar phenomenon. My friend runs a modded server and recently updated the pack, which can be found here: https://www.curseforge.com/minecraft/modpacks/arcanes-pack After the most recent update, the console has started spamming the number "50". Thats it, nothing else, just 50. It happens whenever anyone places a block. We are searching the added mods for the cause, I'd guess its some sort of debug code, but in the mean time has anyone else had this happen?