[1.6.4]Augmenter taille des items en main
-
J’avais tenté mais ya un bug avec itemstack1
-
Tu nous dis un bug, mais quel est ce bug ?
Un crash ? Eclipse qui souligne en rouge ?
-
J’ai repris le render par rapport au bow et j’ai changé pour sabre
package Opk; import static net.minecraftforge.client.IItemRenderer.ItemRenderType.EQUIPPED; import static net.minecraftforge.client.IItemRenderer.ItemRendererHelper.BLOCK_3D; import org.lwjgl.opengl.GL11; import net.minecraft.block.Block; import net.minecraft.client.renderer.RenderBlocks; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; import net.minecraftforge.client.IItemRenderer; import net.minecraftforge.client.MinecraftForgeClient; public class RenderGrand implements IItemRenderer { @Override public boolean handleRenderType(ItemStack item, ItemRenderType type) { // TODO Auto-generated method stub return false; } @Override public boolean shouldUseRenderHelper(ItemRenderType type, ItemStack item, ItemRendererHelper helper) { // TODO Auto-generated method stub return false; } @Override public void renderItem(ItemRenderType type, ItemStack item, Object… data) { // TODO Auto-generated method stub } float f11; IItemRenderer customRenderer = MinecraftForgeClient.getItemRenderer(itemstack1, EQUIPPED); boolean is3D = (customRenderer != null && customRenderer.shouldUseRenderHelper(EQUIPPED, itemstack1, BLOCK_3D)); boolean isBlock = ItemStack.itemID < Block.blocksList.length && itemstack1.getItemSpriteNumber() == 0; if (is3D || (isBlock && RenderBlocks.renderItemIn3d(Block.blocksList[itemstack1.itemID].getRenderType()))) { f11 = 0.5F; GL11.glTranslatef(0.0F, 0.1875F, -0.3125F); f11 *= 0.75F; GL11.glRotatef(20.0F, 1.0F, 0.0F, 0.0F); GL11.glRotatef(45.0F, 0.0F, 1.0F, 0.0F); GL11.glScalef(-f11, -f11, f11); } else if (itemstack1.itemID == Item.sabre.itemID) { f11 = 0.625F; GL11.glTranslatef(0.0F, 0.125F, 0.3125F); GL11.glRotatef(-20.0F, 0.0F, 1.0F, 0.0F); GL11.glScalef(f11, -f11, f11); GL11.glRotatef(-100.0F, 1.0F, 0.0F, 0.0F); GL11.glRotatef(45.0F, 0.0F, 1.0F, 0.0F); } }Et le bug viens de l’item stack1
-
Remplace par item.
ÉDIT : ça ne fonctionnera pas, car il manque d’autre code (le GL pull et GL push).
-
Je trouve le gl push mais gl pull ? ^^
-
GL11.glPushMatrix(); (toujours en premier) GL11.glPopMatrix(); (toujours après PushMatrix(); )
Je crois que robin a trop l’habitude de GitHub xD -
En effet oui x)
-
J’ai des erreurs sur tous les item
classe de mon renderpackage Opk; import static net.minecraftforge.client.IItemRenderer.ItemRenderType.EQUIPPED; import static net.minecraftforge.client.IItemRenderer.ItemRendererHelper.BLOCK_3D; import org.lwjgl.opengl.GL11; import net.minecraft.block.Block; import net.minecraft.client.renderer.RenderBlocks; import net.minecraft.item.EnumAction; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; import net.minecraftforge.client.IItemRenderer; import net.minecraftforge.client.MinecraftForgeClient; public class RenderGrand implements IItemRenderer { @Override public boolean handleRenderType(ItemStack item, ItemRenderType type) { // TODO Auto-generated method stub return false; } @Override public boolean shouldUseRenderHelper(ItemRenderType type, ItemStack item, ItemRendererHelper helper) { // TODO Auto-generated method stub return false; } @Override public void renderItem(ItemRenderType type, ItemStack item, Object… data) { // TODO Auto-generated method stub } { GL11.glPushMatrix(); float f11; IItemRenderer customRenderer = MinecraftForgeClient.getItemRenderer(Item, EQUIPPED); boolean is3D = (customRenderer != null && customRenderer.shouldUseRenderHelper(EQUIPPED, Item, BLOCK_3D)); boolean isBlock = Item.itemID < Block.blocksList.length && Item.getitempriteNumber() == 0; if (is3D || (isBlock && RenderBlocks.renderItemIn3d(Block.blocksList[Item.itemID].getRenderType()))) { f11 = 0.5F; GL11.glTranslatef(0.0F, 0.1875F, -0.3125F); f11 *= 0.75F; GL11.glRotatef(20.0F, 1.0F, 0.0F, 0.0F); GL11.glRotatef(45.0F, 0.0F, 1.0F, 0.0F); GL11.glScalef(-f11, -f11, f11); } else if (Item.itemID == Item.bow.itemID) { f11 = 0.625F; GL11.glTranslatef(0.0F, 0.125F, 0.3125F); GL11.glRotatef(-20.0F, 0.0F, 1.0F, 0.0F); GL11.glScalef(f11, -f11, f11); GL11.glRotatef(-100.0F, 1.0F, 0.0F, 0.0F); GL11.glRotatef(45.0F, 0.0F, 1.0F, 0.0F); GL11.glPopMatrix(); } } } -
Item != item
J’ai dit item, sans majuscule, c’est le nom de ton paramètre dans la fonction :
public void renderItem(ItemRenderType type, ItemStack item, Object… data) {
Mais ça ne fonctionnera sûrement pas comme ça, la tu es en train de faire une boucle infini (car tu utilise la fonction MinecraftForgeClient.getItemRenderer(Item, EQUIPPED); à l’intérieur même d’un endroit ou elle est utilisé).
Je vais regarder de mon côté dès que j’ai réinstallé Eclipse sur mon pc (oui, j’ai encore formaté mon pc il y a pas longtemps (Windows arium 8 pour remplacer Windaube 7 et Ubuntu 13.04 à la place de la 13.10 pour avoir les pilotes propriétaire) et je compte en profité pour refaire les tutoriels d’installation que je trouve pas super). -
Arf donc j’attends de ton coté
-