Jump to content

Recommended Posts

Posted (edited)

When i place a block, with this block class:

Spoiler

import net.minecraft.block.Block;
import net.minecraft.block.BlockState;
import net.minecraftforge.common.ToolType;

public class ElypsisStonePickaxeBlocks extends Block{

    public ElypsisStonePickaxeBlocks(Properties properties) {
        super(properties);
    }
       @Override
       public net.minecraftforge.common.ToolType getHarvestTool(BlockState state) {
          return ToolType.PICKAXE;
       }

       @Override
       public int getHarvestLevel(BlockState state) {
          return 3;
       }

}

i can still pick it up with a wooden pickaxe.

 

the line for my block:

Spoiler

setup(new ElypsisDiamondPickaxeBlocks(Block.Properties.create(Material.IRON).hardnessAndResistance(2.0F, 30.0F).sound(SoundType.STONE)), "amber_block"),
               

there are no warnings/errors in my log related to this.

Edited by Kaelym
forgot version.
Posted

Overriding the getHarvestLevel method and returning an Int value works for me. But then again I'm not dropping the block via a Loot Table, I spawn desired items in spawnAdditionalDrops method, and this is called when the block is harvested.

Posted

i am also having the same issue. i tried to use the spawnAdditionalDrops but it is still being called even when i use my fist. what version of forge are you both using maybe it has something to do with that. i am using forge-1.14.2-26.0.25

 

i had the idea of using json to check if you are using a diamond pick but this would get very messy when using multiple tools and tool types and it would not truly fix the problem.

 

i am going to try a few different forge versions and see if it works on an older or newer one. ill be sure to report back with any findings

Posted (edited)

I FOUND OUT WHY!!!

 

i tried to change to the newest version and the problem persisted.

 

after delving into the forge files i was able to find out that it had nothing to do with forge not working properly and had everything to do with the material type. in older versions of minecraft the material did not really mean much. now there are materials that require no tool.

 

take a look at net.minecraftforge.common.ForgeHooks if you are interested.

 

all i had to do was change my blocks Material from SAND to ROCK and everything worked as expected.

Edited by madmobhunter
swagger
Posted
2 hours ago, madmobhunter said:

in older versions of minecraft the material did not really mean much. now there are materials that require no tool.

Yeah, that's not true at all.

Apparently I'm a complete and utter jerk and come to this forum just like to make fun of people, be confrontational, and make your personal life miserable.  If you think this is the case, JUST REPORT ME.  Otherwise you're just going to get reported when you reply to my posts and point it out, because odds are, I was trying to be nice.

 

Exception: If you do not understand Java, I WILL NOT HELP YOU and your thread will get locked.

 

DO NOT PM ME WITH PROBLEMS. No help will be given.

Posted
On 6/19/2019 at 7:21 AM, Draco18s said:

Yeah, that's not true at all.

im not sure what i said that is not true. maybe next time you can be more descriptive with your words.

 

i modded long ago with 1.5.2 and jumped all the way to 1.14 and so i dont know about any of the versions in between.

 

if you are talking about the materials not meaning much in older versions, in 1.5.2 the materials had no major effect on the block and were mainly used as a grouping system by mods.

 

if you are talking about the materials in 1.14 there are definitely materials that force the block to not require any tool to be harvested. as i posted before you can check it out in:

 

net.minecraftforge.common.ForgeHooks

Posted
3 hours ago, madmobhunter said:

i modded long ago with 1.5.2 and jumped all the way to 1.14 and so i dont know about any of the versions in between.

I don't remember many details back in 1.5.2, but I know for a fact that harvesting being affected by the block's material was true in 1.7.2 because I remember having this exact issue way way back then. I modded some in 1.5 and 1.6 as well, but not as much as I did in 1.7, so I'm pretty confident in my statement that materials affecting harvesting has been true for a long, long time.

Apparently I'm a complete and utter jerk and come to this forum just like to make fun of people, be confrontational, and make your personal life miserable.  If you think this is the case, JUST REPORT ME.  Otherwise you're just going to get reported when you reply to my posts and point it out, because odds are, I was trying to be nice.

 

Exception: If you do not understand Java, I WILL NOT HELP YOU and your thread will get locked.

 

DO NOT PM ME WITH PROBLEMS. No help will be given.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Announcements



  • Recently Browsing

    • No registered users viewing this page.
  • Posts

    • Im trying to build my mod using shade since i use the luaj library however i keep getting this error Reason: Task ':reobfJar' uses this output of task ':shadowJar' without declaring an explicit or implicit dependency. This can lead to incorrect results being produced, depending on what order the tasks are executed. So i try adding reobfJar.dependsOn shadowJar  Could not get unknown property 'reobfJar' for object of type org.gradle.api.internal.artifacts.dsl.dependencies.DefaultDependencyHandler. my gradle file plugins { id 'eclipse' id 'idea' id 'maven-publish' id 'net.minecraftforge.gradle' version '[6.0,6.2)' id 'com.github.johnrengelman.shadow' version '7.1.2' id 'org.spongepowered.mixin' version '0.7.+' } apply plugin: 'net.minecraftforge.gradle' apply plugin: 'org.spongepowered.mixin' apply plugin: 'com.github.johnrengelman.shadow' version = mod_version group = mod_group_id base { archivesName = mod_id } // Mojang ships Java 17 to end users in 1.18+, so your mod should target Java 17. java.toolchain.languageVersion = JavaLanguageVersion.of(17) //jarJar.enable() println "Java: ${System.getProperty 'java.version'}, JVM: ${System.getProperty 'java.vm.version'} (${System.getProperty 'java.vendor'}), Arch: ${System.getProperty 'os.arch'}" minecraft { mappings channel: mapping_channel, version: mapping_version copyIdeResources = true runs { configureEach { workingDirectory project.file('run') property 'forge.logging.markers', 'REGISTRIES' property 'forge.logging.console.level', 'debug' arg "-mixin.config=derp.mixin.json" mods { "${mod_id}" { source sourceSets.main } } } client { // Comma-separated list of namespaces to load gametests from. Empty = all namespaces. property 'forge.enabledGameTestNamespaces', mod_id } server { property 'forge.enabledGameTestNamespaces', mod_id args '--nogui' } gameTestServer { property 'forge.enabledGameTestNamespaces', mod_id } data { workingDirectory project.file('run-data') args '--mod', mod_id, '--all', '--output', file('src/generated/resources/'), '--existing', file('src/main/resources/') } } } sourceSets.main.resources { srcDir 'src/generated/resources' } repositories { flatDir { dirs './libs' } maven { url = "https://jitpack.io" } } configurations { shade implementation.extendsFrom shade } dependencies { minecraft "net.minecraftforge:forge:${minecraft_version}-${forge_version}" implementation 'org.luaj:luaj-jse-3.0.2' implementation fg.deobf("com.github.Virtuoel:Pehkui:${pehkui_version}") annotationProcessor 'org.spongepowered:mixin:0.8.5:processor' minecraftLibrary 'luaj:luaj-jse:3.0.2' shade 'luaj:luaj-jse:3.0.2' } // Example for how to get properties into the manifest for reading at runtime. tasks.named('jar', Jar).configure { manifest { attributes([ 'Specification-Title' : mod_id, 'Specification-Vendor' : mod_authors, 'Specification-Version' : '1', // We are version 1 of ourselves 'Implementation-Title' : project.name, 'Implementation-Version' : project.jar.archiveVersion, 'Implementation-Vendor' : mod_authors, 'Implementation-Timestamp': new Date().format("yyyy-MM-dd'T'HH:mm:ssZ"), "TweakClass" : "org.spongepowered.asm.launch.MixinTweaker", "TweakOrder" : 0, "MixinConfigs" : "derp.mixin.json" ]) } rename 'mixin.refmap.json', 'derp.mixin-refmap.json' } shadowJar { archiveClassifier = '' configurations = [project.configurations.shade] finalizedBy 'reobfShadowJar' } assemble.dependsOn shadowJar reobf { re shadowJar {} } publishing { publications { mavenJava(MavenPublication) { artifact jar } } repositories { maven { url "file://${project.projectDir}/mcmodsrepo" } } }  
    • All versions of Minecraft Forge suddenly black screen even without mods (tried reinstalling original Minecraft, Java, updating drivers doesn't work)
    • When i join minecraft all ok, when i join world all working fine, but when i open indentity menu, i get this The game crashed whilst unexpected error Error: java.lang.NullPointerException: Cannot invoke "top.ribs.scguns.common.Gun$Projectile.getDamage()" because "this.projectile" is null crash report here https://paste.ee/p/0vKaf
  • Topics

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.