spear
This commit is contained in:
@@ -28,7 +28,10 @@ import com.kitsu.medievalcraft.renderer.blocks.machine.ForgeRenderer;
|
||||
import com.kitsu.medievalcraft.renderer.blocks.machine.FourShelfRenderer;
|
||||
import com.kitsu.medievalcraft.renderer.blocks.machine.SolidFilterRender;
|
||||
import com.kitsu.medievalcraft.renderer.blocks.machine.WaterFilterRenderer;
|
||||
import com.kitsu.medievalcraft.renderer.itemrenderer.IRITSpear;
|
||||
import com.kitsu.medievalcraft.renderer.itemrenderer.ItemRendererITModelArrow;
|
||||
import com.kitsu.medievalcraft.renderer.itemrenderer.ItemRendererLongbow;
|
||||
import com.kitsu.medievalcraft.renderer.itemrenderer.ItemRendererModelArrow;
|
||||
import com.kitsu.medievalcraft.renderer.itemrenderer.crucibles.IRCrucible;
|
||||
import com.kitsu.medievalcraft.renderer.itemrenderer.crucibles.empty.IRSlackCrucible;
|
||||
import com.kitsu.medievalcraft.renderer.itemrenderer.crucibles.empty.IRTanninCrucible;
|
||||
@@ -52,7 +55,6 @@ import com.kitsu.medievalcraft.renderer.itemrenderer.tongs.IRSlottedTongs;
|
||||
import com.kitsu.medievalcraft.renderer.itemrenderer.tools.IRCraftingBlade;
|
||||
import com.kitsu.medievalcraft.renderer.itemrenderer.tools.IRForgeHammer;
|
||||
import com.kitsu.medievalcraft.renderer.itemrenderer.tools.IRInlayHammer;
|
||||
import com.kitsu.medievalcraft.renderer.itemrenderer.tools.IRironPicks;
|
||||
import com.kitsu.medievalcraft.renderer.itemrenderer.weapons.IRBattleAxe;
|
||||
import com.kitsu.medievalcraft.renderer.itemrenderer.weapons.IRGladius;
|
||||
import com.kitsu.medievalcraft.renderer.itemrenderer.weapons.ItemRenderHeavymace;
|
||||
@@ -108,10 +110,11 @@ public class RendererRegistry {
|
||||
|
||||
MinecraftForgeClient.registerItemRenderer(ModItems.forgeHammer, new IRForgeHammer());
|
||||
MinecraftForgeClient.registerItemRenderer(ModItems.inlayHammer, new IRInlayHammer());
|
||||
MinecraftForgeClient.registerItemRenderer(ModItems.customIronPick, new IRironPicks());
|
||||
//MinecraftForgeClient.registerItemRenderer(ModItems.customIronPick, new IRironPicks());
|
||||
|
||||
//MinecraftForgeClient.registerItemRenderer(ModItems.itemModelArrow, new ItemRendererModelArrow());
|
||||
//MinecraftForgeClient.registerItemRenderer(ModItems.itemIronTippedModelArrow, new ItemRendererITModelArrow());
|
||||
MinecraftForgeClient.registerItemRenderer(ModItems.itemModelArrow, new ItemRendererModelArrow());
|
||||
MinecraftForgeClient.registerItemRenderer(ModItems.itemIronTippedModelArrow, new ItemRendererITModelArrow());
|
||||
MinecraftForgeClient.registerItemRenderer(ModItems.itemITSpear, new IRITSpear());
|
||||
|
||||
|
||||
MinecraftForgeClient.registerItemRenderer(Item.getItemFromBlock(ModBlocks.emptySoftCrucible), new ItemRendererSECrucible());
|
||||
|
||||
@@ -0,0 +1,63 @@
|
||||
package com.kitsu.medievalcraft.renderer.blocks;
|
||||
|
||||
import org.lwjgl.opengl.GL11;
|
||||
|
||||
import com.kitsu.medievalcraft.entity.EntityITSpear;
|
||||
|
||||
import net.minecraft.client.Minecraft;
|
||||
import net.minecraft.client.renderer.entity.Render;
|
||||
import net.minecraft.entity.Entity;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
import net.minecraftforge.client.model.AdvancedModelLoader;
|
||||
import net.minecraftforge.client.model.IModelCustom;
|
||||
|
||||
public class RenderModelITSpear extends Render
|
||||
{
|
||||
|
||||
//private static final ResourceLocation arrowTextures = new ResourceLocation("textures/entity/arrow.png");
|
||||
private static final ResourceLocation arrowTextures = new ResourceLocation("kitsumedievalcraft:textures/items/Spear.png");
|
||||
public static final ResourceLocation MODEL = new ResourceLocation("kitsumedievalcraft:models/Spear.obj");
|
||||
public static final ResourceLocation TEXTURE = new ResourceLocation("kitsumedievalcraft:models/Spear.png");
|
||||
|
||||
public IModelCustom model = AdvancedModelLoader.loadModel(MODEL);
|
||||
|
||||
public void doRender(EntityITSpear p_76986_1_, double p_76986_2_, double p_76986_4_, double p_76986_6_, float p_76986_8_, float p_76986_9_)
|
||||
{
|
||||
GL11.glPushMatrix();
|
||||
GL11.glScalef(1.0F, 1.0F, 1.0F);
|
||||
GL11.glTranslatef((float)p_76986_2_, (float)p_76986_4_, (float)p_76986_6_ );
|
||||
GL11.glRotatef(p_76986_1_.prevRotationYaw + (p_76986_1_.rotationYaw - p_76986_1_.prevRotationYaw) * p_76986_9_ - 90.0F, 0.0F, 1.0F, 0.0F);
|
||||
GL11.glRotatef(p_76986_1_.prevRotationPitch + (p_76986_1_.rotationPitch - p_76986_1_.prevRotationPitch) * p_76986_9_, 0.0F, 0.0F, 1.0F);
|
||||
Minecraft.getMinecraft().renderEngine.bindTexture(TEXTURE);
|
||||
model.renderAll();
|
||||
|
||||
GL11.glPopMatrix();
|
||||
}
|
||||
|
||||
protected ResourceLocation getEntityTexture(EntityITSpear p_110775_1_)
|
||||
{
|
||||
return arrowTextures;
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the location of an entity's texture. Doesn't seem to be called unless you call Render.bindEntityTexture.
|
||||
*/
|
||||
protected ResourceLocation getEntityTexture(Entity p_110775_1_)
|
||||
{
|
||||
return this.getEntityTexture((EntityITSpear)p_110775_1_);
|
||||
}
|
||||
|
||||
/**
|
||||
* Actually renders the given argument. This is a synthetic bridge method, always casting down its argument and then
|
||||
* handing it off to a worker function which does the actual work. In all probabilty, the class Render is generic
|
||||
* (Render<T extends Entity) and this method has signature public void func_76986_a(T entity, double d, double d1,
|
||||
* double d2, float f, float f1). But JAD is pre 1.5 so doesn't do that.
|
||||
*/
|
||||
|
||||
public void doRender(Entity p_76986_1_, double p_76986_2_, double p_76986_4_, double p_76986_6_, float p_76986_8_, float p_76986_9_)
|
||||
{
|
||||
//System.out.println("doRender Ran");
|
||||
this.doRender((EntityITSpear)p_76986_1_, p_76986_2_, p_76986_4_, p_76986_6_, p_76986_8_, p_76986_9_);
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,154 @@
|
||||
package com.kitsu.medievalcraft.renderer.itemrenderer;
|
||||
|
||||
import org.lwjgl.opengl.GL11;
|
||||
import org.lwjgl.opengl.GL12;
|
||||
|
||||
import net.minecraft.client.Minecraft;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
import net.minecraftforge.client.IItemRenderer;
|
||||
import net.minecraftforge.client.IItemRenderer.ItemRenderType;
|
||||
import net.minecraftforge.client.IItemRenderer.ItemRendererHelper;
|
||||
import net.minecraftforge.client.model.AdvancedModelLoader;
|
||||
import net.minecraftforge.client.model.IModelCustom;
|
||||
|
||||
public class IRITSpear implements IItemRenderer{
|
||||
|
||||
public static final ResourceLocation MODEL = new ResourceLocation("kitsumedievalcraft:models/Spear.obj");
|
||||
public static final ResourceLocation TEXTURE = new ResourceLocation("kitsumedievalcraft:models/Spear.png");
|
||||
|
||||
public IModelCustom model = AdvancedModelLoader.loadModel(MODEL);
|
||||
|
||||
@Override
|
||||
public boolean handleRenderType(ItemStack item, ItemRenderType type) {
|
||||
|
||||
switch(type) {
|
||||
case EQUIPPED: {
|
||||
return true;
|
||||
}
|
||||
case EQUIPPED_FIRST_PERSON: {
|
||||
return true;
|
||||
}
|
||||
case INVENTORY: {
|
||||
return true;
|
||||
}
|
||||
case ENTITY: {
|
||||
return true;
|
||||
}
|
||||
|
||||
default: return false;
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean shouldUseRenderHelper(ItemRenderType type, ItemStack item,
|
||||
ItemRendererHelper helper) {
|
||||
|
||||
switch(type) {
|
||||
case EQUIPPED: {
|
||||
return false;
|
||||
}
|
||||
case EQUIPPED_FIRST_PERSON: {
|
||||
return false;
|
||||
}
|
||||
case INVENTORY: {
|
||||
return false;
|
||||
}
|
||||
case ENTITY: {
|
||||
return false;
|
||||
}
|
||||
|
||||
default: return false;
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void renderItem(ItemRenderType type, ItemStack item, Object... data) {
|
||||
|
||||
switch(type) {
|
||||
|
||||
case EQUIPPED: {
|
||||
|
||||
GL11.glPushMatrix();
|
||||
|
||||
GL11.glScalef(1.0F, 1.0F, 1.0F);
|
||||
|
||||
GL11.glTranslatef(0.5F, 0.4F, -0.0F);
|
||||
//ANGLE, X ROTATE, Y ROTATE, Z ROTATE
|
||||
GL11.glRotatef(140F, 0.0F, 0.0F, 1.0F);
|
||||
//GL11.glRotatef(-20F, 0.0F, 1.0F, 0.0F);
|
||||
//GL11.glRotatef(40F, 1.0F, 0.0F, 0.0F);
|
||||
//GL11.glRotated(90, 1.0, 0.0, 0.0);
|
||||
|
||||
|
||||
|
||||
Minecraft.getMinecraft().renderEngine.bindTexture(TEXTURE);
|
||||
model.renderAll();
|
||||
|
||||
GL11.glPopMatrix();
|
||||
} break;
|
||||
|
||||
case EQUIPPED_FIRST_PERSON: {
|
||||
|
||||
GL11.glPushMatrix();
|
||||
GL11.glScalef(1.0F, 1.0F, 1.0F);
|
||||
|
||||
//ANGLE, X ROTATE, Y ROTATE, Z ROTATE
|
||||
GL11.glTranslatef(0.0F, 2.0F, 0.0F);
|
||||
//GL11.glRotatef(45F, 1.0F, 0.0F, 0.0F);
|
||||
// GL11.glRotatef(90F, 0.0F, 0.0F, 1.0F);
|
||||
// GL11.glRotatef(45F, 0.0F, -1.0F, 0.0F);
|
||||
|
||||
//GL11.glRotated(-85, 1.0, 0.0, 0.0);
|
||||
//GL11.glRotated(50, 0.0F, 0.0F, 1.0F);
|
||||
//GL11.glRotated(3, 0.0F, 1.0F, 0.0F);
|
||||
|
||||
|
||||
|
||||
Minecraft.getMinecraft().renderEngine.bindTexture(TEXTURE);
|
||||
model.renderAll();
|
||||
|
||||
GL11.glPopMatrix();
|
||||
|
||||
} break;
|
||||
|
||||
case INVENTORY: {
|
||||
GL11.glPushMatrix();
|
||||
|
||||
GL11.glEnable(GL11.GL_TEXTURE_2D);
|
||||
float iscale = 9F;
|
||||
GL11.glScalef(iscale, iscale, iscale);
|
||||
//GL11.glRotatef(-45, 0.0F, 0.0F, 1.0F);
|
||||
//GL11.glRotatef(45, 1.0F, 0.0F, 0.0F);
|
||||
//GL11.glTranslatef(0.2F, 1.2F, 0.0F);
|
||||
|
||||
Minecraft.getMinecraft().renderEngine.bindTexture(TEXTURE);
|
||||
model.renderAll();
|
||||
|
||||
GL11.glPopMatrix();
|
||||
|
||||
} break;
|
||||
|
||||
case ENTITY: {
|
||||
GL11.glPushMatrix();
|
||||
Minecraft.getMinecraft().renderEngine.bindTexture(TEXTURE);
|
||||
GL11.glScalef(5.0F, 5.0F, 5.0F);
|
||||
//GL11.glTranslatef(5.0F, 5.0F, 5.0F);
|
||||
|
||||
//ANGLE, X ROTATE, Y ROTATE, Z ROTATE
|
||||
//GL11.glRotatef(180F, 0.0F, 1.0F, 0.0F);
|
||||
//GL11.glRotatef(90F, 1.0F, 0.0F, 1.0F);
|
||||
//GL11.glRotatef(45F, 0.0F, 0.0F, 1.0F);
|
||||
//GL11.glRotated(90, 1.0, 0.0, 0.0);
|
||||
|
||||
model.renderAll();
|
||||
GL11.glPopMatrix();
|
||||
|
||||
} break;
|
||||
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user