[En Attente] 1.12.2 Problème de dalles

Besoin d'aide ? c'est par ici ;)
Règles du forum
[En Attente] - Qui est défini par défaut à l'ouverture de la demande d'aide
[En Cours] - Qui est à mettre lorsque vous venez d'avoir une réponse à votre demande d'aide
[Résolu] - Qui est à mettre lorsque votre problème est résolu
Merci de respecter ce modèle pour toutes demandes d'assistances !
Merci de mettre votre code dans les balises code prévus à cet effet, icon </>
Version de Minecraft:
Version de Forge: (Il s'agit du numéro de version indiqué sur le nom de votre dossier forge téléchargé)

Description du problème:
(Un maximum d'informations sera utile, quel code fait crash ?, quand cela ce produit ?, ne pas hésiter à mettre des captures d'écran et fichiers de log en pièces jointes)
Répondre
HybrideTV
Messages : 2
Inscription : 01 févr. 2020 10:38
Localisation : Digne les Bains
Contact :

1.12.2 Problème de dalles

Message par HybrideTV »

Bonjour,
J'ai créer des dalles, elles fonctionnent bien mais sont légèrement buggés. Quand je les pose par terre (screen 1) et que je me déconnecte, quand je reviens sur le monde je les retrouve en l'air (screen 2). J'ai suivi un tuto que j'ai trouvé mais je ne vois pas le soucis... Si on peut m'aider..
1-Image
2-Image
La class CustomBlockSlab :

Code : Tout sélectionner

package net.fightmc.mod.blocks;

import java.util.Random;

import net.fightmc.mod.Fightmc;
import net.minecraft.block.BlockSlab;
import net.minecraft.block.material.Material;
import net.minecraft.block.properties.IProperty;
import net.minecraft.block.state.BlockStateContainer;
import net.minecraft.block.state.IBlockState;
import net.minecraft.init.Blocks;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;

public abstract class CustomBlockSlab extends BlockSlab
{
	public CustomBlockSlab(String name, float hardness, float resistance)
	{
		super(Material.ROCK);
		setUnlocalizedName(name);
		setRegistryName(name);
		setHardness(hardness);
		setResistance(resistance);
		setCreativeTab(Fightmc.fightmctab);
		
		IBlockState state = this.blockState.getBaseState();
		
		if(!this.isDouble())
		{
			state = state.withProperty(HALF, EnumBlockHalf.BOTTOM);
		}
		
		setDefaultState(state);
		this.useNeighborBrightness = true;
	}
	

	@Override
	public String getUnlocalizedName(int meta) 
	{
		return this.getUnlocalizedName();
	}

	@Override
	public IProperty<?> getVariantProperty() 
	{
		return HALF;
	}
	
	@Override
	public Comparable<?> getTypeForItem(ItemStack stack)
	{
		return EnumBlockHalf.BOTTOM;
	}
	
	@Override
	public int damageDropped(IBlockState state) 
	{
		return 0;
	}
	
	@Override
	public IBlockState getStateFromMeta(int meta) 
	{
		if(!this.isDouble())
		{
			return this.getDefaultState().withProperty(HALF, EnumBlockHalf.values()[meta % EnumBlockHalf.values().length]);
		}
		return this.getDefaultState();
	}
	
	@Override
	public int getMetaFromState(IBlockState state) 
	{
		if(!this.isDouble())
		{
			return 0;
		}
		
		return ((EnumBlockHalf)state.getValue(HALF)).ordinal() + 1;
	}
	
	@Override
	public Item getItemDropped(IBlockState state, Random rand, int fortune) 
	{
		return Item.getItemFromBlock(Blocks.STONEBRICK);
	}
	
	@Override
	protected BlockStateContainer createBlockState() 
	{
		return new BlockStateContainer(this, new IProperty[] {HALF});
	}
}



La class CustomBlockHalfSlab :

Code : Tout sélectionner

package net.fightmc.mod.blocks;

public class CustomBlockHalfSlab extends CustomBlockSlab
{
	public CustomBlockHalfSlab(String name, float hardness, float resistance)
	{
		super(name, hardness, resistance);
	}

	@Override
	public boolean isDouble() 
	{
		return false;
	}

}
Et la class CustomBlockDoubleSlab :

Code : Tout sélectionner

package net.fightmc.mod.blocks;


public class CustomBlockDoubleSlab extends CustomBlockSlab
{
	public CustomBlockDoubleSlab(String name, float hardness, float resistance) 
	{
		super(name, hardness, resistance);
	}
	
	@Override
	public boolean isDouble() 
	{
		return true;
	}
	
}
Merci.
Cordialement,
HybrideTV
Répondre