Bonjour,
j'ai commencé récemment un mod et je cherche a savoir s'il fait jour ou nuit au moment ou mon block se casse, de cette réponse en dépendras l'item drop (mon mod serais en rapport avec le soleil et la nuit voila pourquoi j'ai besoin de cela) , j'ai galéré pendant quelques heures et j'ai finalement trouvé un moyen, voici ce que j'ai mis dans la classe de mon bloc:
donc jusqu'ici aucune erreur, voici le contenu de ma classe TutorialBlocks:
PS: ce n'est encore qu'un test pour le nom du block et le drop.
Mais voila, a chaque fois que je lance le jeu il me met une erreur, et lorsque j’enlève mon bloc de ma classe TutorialBlocks, l'erreur disparaît et mon mode fonctionne correctement, je ne sais plus quoi faire voir même si cela en deviens possible ou non, j’espère sincèrement que quelqu'un pourra me donner une réponse merci d'avance toute aide est la bienvenue.
j'ai commencé récemment un mod et je cherche a savoir s'il fait jour ou nuit au moment ou mon block se casse, de cette réponse en dépendras l'item drop (mon mod serais en rapport avec le soleil et la nuit voila pourquoi j'ai besoin de cela) , j'ai galéré pendant quelques heures et j'ai finalement trouvé un moyen, voici ce que j'ai mis dans la classe de mon bloc:
Code:
package fr.minecraftforgefrance.tutorial.blocks;
import fr.minecraftforgefrance.tutorial.items.TutorialItems;
import net.minecraft.block.Block;
import net.minecraft.block.material.Material;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.init.Blocks;
import net.minecraft.item.Item;
import net.minecraft.world.World;
public class SolariumOre extends Block
{
public World world;
public boolean isDaytime() {
return world.getSkylightSubtracted() < 4;
}
public SolariumOre(Material materialIn) {
super(materialIn);
this.setUnlocalizedName("minerais de solarium").setCreativeTab(CreativeTabs.BUILDING_BLOCKS).setHardness(6.0F).setResistance(20.0F);
if(isDaytime() == true) Item.getIdFromItem(TutorialItems.SOLARIUM);
else Item.getItemFromBlock(Blocks.DIAMOND_BLOCK);
}
}
Code:
package fr.minecraftforgefrance.tutorial.blocks;
import fr.minecraftforgefrance.tutorial.ModTutorial;
import net.minecraft.block.Block;
import net.minecraft.block.material.Material;
import net.minecraft.client.renderer.block.model.ModelResourceLocation;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.item.Item;
import net.minecraftforge.client.model.ModelLoader;
import net.minecraftforge.fml.common.registry.GameRegistry;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
public class TutorialBlocks {
public static final Block SOLARIUMBLOCK = new IngotBlock(Material.IRON).setCreativeTab(CreativeTabs.BUILDING_BLOCKS).setHardness(6.0F).setResistance(20.0F).setUnlocalizedName("bloc_de_solarium");
public static final Block SOLARIUMORE = new SolariumOre(Material.IRON).setCreativeTab(CreativeTabs.BUILDING_BLOCKS).setHardness(6.0F).setResistance(20.0F).setUnlocalizedName("minerais_de_solarium");
public static void registerBlocks() {
GameRegistry.registerBlock(SOLARIUMBLOCK, "bloc_de_solarium");
GameRegistry.registerBlock(SOLARIUMORE, "minerais_de_solarium");
}
@SideOnly(Side.CLIENT)
public static void registerBlocksModels()
{
//ModelLoader.setCustomModelRessourceLocation(nomblockitem, , new ModelRessourceLocation(Modtutorial.modid + ":nomblock_blocks", "inventory"));
ModelLoader.setCustomModelResourceLocation(Item.getItemFromBlock(SOLARIUMBLOCK), 0, new ModelResourceLocation(ModTutorial.MODID + ":bloc_de_solarium", "inventory"));
ModelLoader.setCustomModelResourceLocation(Item.getItemFromBlock(SOLARIUMORE), 0, new ModelResourceLocation(ModTutorial.MODID + ":minerais_de_solarium", "inventory"));
}
}
Mais voila, a chaque fois que je lance le jeu il me met une erreur, et lorsque j’enlève mon bloc de ma classe TutorialBlocks, l'erreur disparaît et mon mode fonctionne correctement, je ne sais plus quoi faire voir même si cela en deviens possible ou non, j’espère sincèrement que quelqu'un pourra me donner une réponse merci d'avance toute aide est la bienvenue.