Posted February 8, 201411 yr So I was rendering a mob, and it all came along well with a new spawn egg and all, but when I use it. I crash from the rendering. Can you please look at the code and tell me whats wrong? I'm relatively new to modding. Stack Trace ---- Minecraft Crash Report ---- 2014-02-08 11:51:38 [iNFO] [sTDOUT] // You're mean. 2014-02-08 11:51:38 [iNFO] [sTDOUT] 2014-02-08 11:51:38 [iNFO] [sTDOUT] Time: 2/8/14 11:51 AM 2014-02-08 11:51:38 [iNFO] [sTDOUT] Description: Rendering entity in world 2014-02-08 11:51:38 [iNFO] [sTDOUT] 2014-02-08 11:51:38 [iNFO] [sTDOUT] java.lang.NullPointerException 2014-02-08 11:51:38 [iNFO] [sTDOUT] at net.minecraft.client.renderer.entity.RendererLivingEntity.func_130000_a(RendererLivingEntity.java:79) 2014-02-08 11:51:38 [iNFO] [sTDOUT] at net.minecraft.client.renderer.entity.RenderLiving.doRenderLiving(RenderLiving.java:28) 2014-02-08 11:51:38 [iNFO] [sTDOUT] at bettermc.test.phoenixmob.PhoenixRender.renderPhoenix(PhoenixRender.java:22) 2014-02-08 11:51:38 [iNFO] [sTDOUT] at bettermc.test.phoenixmob.PhoenixRender.doRender(PhoenixRender.java:38) 2014-02-08 11:51:38 [iNFO] [sTDOUT] at net.minecraft.client.renderer.entity.RenderManager.renderEntityWithPosYaw(RenderManager.java:312) 2014-02-08 11:51:38 [iNFO] [sTDOUT] at net.minecraft.client.renderer.entity.RenderManager.renderEntity(RenderManager.java:281) 2014-02-08 11:51:38 [iNFO] [sTDOUT] at net.minecraft.client.renderer.RenderGlobal.renderEntities(RenderGlobal.java:524) 2014-02-08 11:51:38 [iNFO] [sTDOUT] at net.minecraft.client.renderer.EntityRenderer.renderWorld(EntityRenderer.java:1160) 2014-02-08 11:51:38 [iNFO] [sTDOUT] at net.minecraft.client.renderer.EntityRenderer.updateCameraAndRender(EntityRenderer.java:1006) 2014-02-08 11:51:38 [iNFO] [sTDOUT] at net.minecraft.client.Minecraft.runGameLoop(Minecraft.java:934) 2014-02-08 11:51:38 [iNFO] [sTDOUT] at net.minecraft.client.Minecraft.func_99999_d(Minecraft.java:826) 2014-02-08 11:51:38 [iNFO] [sTDOUT] at net.minecraft.client.main.Main.main(Main.java:93) 2014-02-08 11:51:38 [iNFO] [sTDOUT] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 2014-02-08 11:51:38 [iNFO] [sTDOUT] at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) 2014-02-08 11:51:38 [iNFO] [sTDOUT] at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) 2014-02-08 11:51:38 [iNFO] [sTDOUT] at java.lang.reflect.Method.invoke(Unknown Source) 2014-02-08 11:51:38 [iNFO] [sTDOUT] at net.minecraft.launchwrapper.Launch.launch(Launch.java:57) 2014-02-08 11:51:38 [iNFO] [sTDOUT] at net.minecraft.launchwrapper.Launch.main(Launch.java:18) 2014-02-08 11:51:38 [iNFO] [sTDOUT] 2014-02-08 11:51:38 [iNFO] [sTDOUT] 2014-02-08 11:51:38 [iNFO] [sTDOUT] A detailed walkthrough of the error, its code path and all known details is as follows: 2014-02-08 11:51:38 [iNFO] [sTDOUT] --------------------------------------------------------------------------------------- 2014-02-08 11:51:38 [iNFO] [sTDOUT] 2014-02-08 11:51:38 [iNFO] [sTDOUT] -- Head -- 2014-02-08 11:51:38 [iNFO] [sTDOUT] Stacktrace: 2014-02-08 11:51:38 [iNFO] [sTDOUT] at net.minecraft.client.renderer.entity.RendererLivingEntity.func_130000_a(RendererLivingEntity.java:79) 2014-02-08 11:51:38 [iNFO] [sTDOUT] at net.minecraft.client.renderer.entity.RenderLiving.doRenderLiving(RenderLiving.java:28) 2014-02-08 11:51:38 [iNFO] [sTDOUT] at bettermc.test.phoenixmob.PhoenixRender.renderPhoenix(PhoenixRender.java:22) 2014-02-08 11:51:38 [iNFO] [sTDOUT] at bettermc.test.phoenixmob.PhoenixRender.doRender(PhoenixRender.java:38) 2014-02-08 11:51:38 [iNFO] [sTDOUT] 2014-02-08 11:51:38 [iNFO] [sTDOUT] -- Entity being rendered -- 2014-02-08 11:51:38 [iNFO] [sTDOUT] Details: 2014-02-08 11:51:38 [iNFO] [sTDOUT] Entity Type: Phoenix (bettermc.test.phoenixmob.PhoenixEntityClass) 2014-02-08 11:51:38 [iNFO] [sTDOUT] Entity ID: 2595 2014-02-08 11:51:38 [iNFO] [sTDOUT] Entity Name: entity.Phoenix.name 2014-02-08 11:51:38 [iNFO] [sTDOUT] Entity's Exact location: -782.50, 4.00, -1135.50 2014-02-08 11:51:38 [iNFO] [sTDOUT] Entity's Block location: World: (-783,4,-1136), Chunk: (at 1,0,0 in -49,-71; contains blocks -784,0,-1136 to -769,255,-1121), Region: (-2,-3; contains chunks -64,-96 to -33,-65, blocks -1024,0,-1536 to -513,255,-1025) 2014-02-08 11:51:38 [iNFO] [sTDOUT] Entity's Momentum: 0.00, 0.00, 0.00 2014-02-08 11:51:38 [iNFO] [sTDOUT] 2014-02-08 11:51:38 [iNFO] [sTDOUT] -- Renderer details -- 2014-02-08 11:51:38 [iNFO] [sTDOUT] Details: 2014-02-08 11:51:38 [iNFO] [sTDOUT] Assigned renderer: bettermc.test.phoenixmob.PhoenixRender@1b03d90 2014-02-08 11:51:38 [iNFO] [sTDOUT] Location: 0.18,-1.62,1.71 - World: (0,-2,1), Chunk: (at 0,-1,1 in 0,0; contains blocks 0,0,0 to 15,255,15), Region: (0,0; contains chunks 0,0 to 31,31, blocks 0,0,0 to 511,255,511) 2014-02-08 11:51:38 [iNFO] [sTDOUT] Rotation: 4.21875 2014-02-08 11:51:38 [iNFO] [sTDOUT] Delta: 0.20637262 2014-02-08 11:51:38 [iNFO] [sTDOUT] Stacktrace: 2014-02-08 11:51:38 [iNFO] [sTDOUT] at net.minecraft.client.renderer.entity.RenderManager.renderEntityWithPosYaw(RenderManager.java:312) 2014-02-08 11:51:38 [iNFO] [sTDOUT] at net.minecraft.client.renderer.entity.RenderManager.renderEntity(RenderManager.java:281) 2014-02-08 11:51:38 [iNFO] [sTDOUT] at net.minecraft.client.renderer.RenderGlobal.renderEntities(RenderGlobal.java:524) 2014-02-08 11:51:38 [iNFO] [sTDOUT] at net.minecraft.client.renderer.EntityRenderer.renderWorld(EntityRenderer.java:1160) 2014-02-08 11:51:38 [iNFO] [sTDOUT] 2014-02-08 11:51:38 [iNFO] [sTDOUT] -- Affected level -- 2014-02-08 11:51:38 [iNFO] [sTDOUT] Details: 2014-02-08 11:51:38 [iNFO] [sTDOUT] Level name: MpServer 2014-02-08 11:51:38 [iNFO] [sTDOUT] All players: 1 total; [EntityClientPlayerMP['Player825'/138, l='MpServer', x=-782.68, y=5.62, z=-1137.21]] 2014-02-08 11:51:38 [iNFO] [sTDOUT] Chunk stats: MultiplayerChunkCache: 441 2014-02-08 11:51:38 [iNFO] [sTDOUT] Level seed: 0 2014-02-08 11:51:38 [iNFO] [sTDOUT] Level generator: ID 01 - flat, ver 0. Features enabled: false 2014-02-08 11:51:38 [iNFO] [sTDOUT] Level generator options: 2014-02-08 11:51:38 [iNFO] [sTDOUT] Level spawn location: World: (-607,4,-1163), Chunk: (at 1,0,5 in -38,-73; contains blocks -608,0,-1168 to -593,255,-1153), Region: (-2,-3; contains chunks -64,-96 to -33,-65, blocks -1024,0,-1536 to -513,255,-1025) 2014-02-08 11:51:38 [iNFO] [sTDOUT] Level time: 148949 game time, 400 day time 2014-02-08 11:51:38 [iNFO] [sTDOUT] Level dimension: 0 2014-02-08 11:51:38 [iNFO] [sTDOUT] Level storage version: 0x00000 - Unknown? 2014-02-08 11:51:38 [iNFO] [sTDOUT] Level weather: Rain time: 0 (now: false), thunder time: 0 (now: false) 2014-02-08 11:51:38 [iNFO] [sTDOUT] Level game mode: Game mode: creative (ID 1). Hardcore: false. Cheats: false 2014-02-08 11:51:38 [iNFO] [sTDOUT] Forced entities: 115 total; [EntityVillager['Villager'/0, l='MpServer', x=-791.91, y=9.00, z=-1179.50], EntityVillager['Villager'/1, l='MpServer', x=-792.69, y=9.00, z=-1179.50], EntityVillager['Villager'/2, l='MpServer', x=-793.53, y=3.00, z=-1174.44], EntityVillager['Villager'/3, l='MpServer', x=-794.31, y=4.00, z=-1178.78], EntityVillager['Villager'/4, l='MpServer', x=-797.50, y=5.00, z=-1173.88], EntityVillager['Villager'/5, l='MpServer', x=-787.84, y=4.00, z=-1176.34], EntityVillager['Villager'/6, l='MpServer', x=-792.69, y=5.00, z=-1180.06], EntityVillager['Villager'/7, l='MpServer', x=-792.69, y=5.00, z=-1180.91], EntityVillager['Villager'/8, l='MpServer', x=-786.00, y=4.00, z=-1173.63], EntityVillager['Villager'/9, l='MpServer', x=-785.13, y=5.00, z=-1167.69], EntityVillager['Villager'/10, l='MpServer', x=-787.69, y=5.00, z=-1169.69], EntityVillager['Villager'/11, l='MpServer', x=-790.88, y=4.00, z=-1169.47], EntityVillager['Villager'/12, l='MpServer', x=-786.31, y=5.00, z=-1169.69], EntityVillager['Villager'/13, l='MpServer', x=-786.09, y=5.00, z=-1168.34], EntityVillager['Villager'/14, l='MpServer', x=-793.31, y=4.00, z=-1178.69], EntityVillager['Villager'/15, l='MpServer', x=-786.69, y=4.00, z=-1175.44], EntityVillager['Villager'/17, l='MpServer', x=-795.58, y=2.92, z=-1162.31], EntityVillager['Villager'/16, l='MpServer', x=-789.00, y=4.00, z=-1174.13], EntityVillager['Villager'/19, l='MpServer', x=-794.72, y=4.45, z=-1162.50], EntityVillager['Villager'/18, l='MpServer', x=-794.76, y=4.34, z=-1163.69], EntityVillager['Villager'/21, l='MpServer', x=-800.31, y=4.00, z=-1168.25], EntityVillager['Villager'/20, l='MpServer', x=-795.69, y=3.48, z=-1163.37], EntityVillager['Villager'/23, l='MpServer', x=-785.16, y=5.00, z=-1166.75], EntityVillager['Villager'/22, l='MpServer', x=-787.20, y=5.00, z=-1168.83], EntityVillager['Villager'/25, l='MpServer', x=-787.75, y=4.00, z=-1171.50], EntityVillager['Villager'/24, l='MpServer', x=-787.44, y=4.00, z=-1163.31], EntityVillager['Villager'/27, l='MpServer', x=-787.69, y=5.00, z=-1168.09], EntityVillager['Villager'/26, l='MpServer', x=-787.69, y=5.00, z=-1167.17], EntityVillager['Villager'/29, l='MpServer', x=-791.91, y=5.00, z=-1143.44], EntityVillager['Villager'/28, l='MpServer', x=-789.97, y=5.00, z=-1144.91], EntityVillager['Villager'/31, l='MpServer', x=-792.13, y=5.00, z=-1146.38], EntityVillager['Villager'/30, l='MpServer', x=-792.53, y=5.00, z=-1140.31], EntityVillager['Villager'/32, l='MpServer', x=-797.56, y=4.00, z=-1143.84], EntityItem['item.tile.dirt'/38, l='MpServer', x=-786.25, y=3.13, z=-1089.84], EntityItem['item.tile.dirt'/39, l='MpServer', x=-785.59, y=3.13, z=-1092.88], EntityItem['item.tile.dirt'/36, l='MpServer', x=-787.56, y=3.13, z=-1091.63], EntityItem['item.tile.dirt'/37, l='MpServer', x=-784.69, y=3.13, z=-1091.56], EntityItem['item.tile.dirt'/42, l='MpServer', x=-784.25, y=3.13, z=-1092.44], EntityItem['item.tile.dirt'/43, l='MpServer', x=-785.72, y=3.13, z=-1088.09], EntityItem['item.tile.dirt'/40, l='MpServer', x=-785.16, y=2.13, z=-1090.78], EntityItem['item.tile.dirt'/41, l='MpServer', x=-784.75, y=3.13, z=-1088.75], EntityItem['item.tile.dirt'/46, l='MpServer', x=-786.88, y=1.13, z=-1080.13], EntityItem['item.tile.dirt'/47, l='MpServer', x=-789.63, y=3.13, z=-1079.81], EntityItem['item.tile.dirt'/44, l='MpServer', x=-787.31, y=2.13, z=-1080.03], EntityItem['item.tile.dirt'/45, l='MpServer', x=-786.97, y=3.13, z=-1077.13], EntityItem['item.tile.dirt'/51, l='MpServer', x=-787.03, y=2.13, z=-1082.19], EntityItem['item.tile.dirt'/50, l='MpServer', x=-787.88, y=2.13, z=-1082.59], EntityItem['item.tile.dirt'/49, l='MpServer', x=-789.28, y=3.13, z=-1081.09], EntityItem['item.tile.dirt'/48, l='MpServer', x=-788.75, y=2.13, z=-1079.38], EntityVillager['Villager'/54, l='MpServer', x=-783.31, y=4.00, z=-1152.56], EntityVillager['Villager'/53, l='MpServer', x=-781.78, y=4.00, z=-1150.59], EntityItem['item.tile.dirt'/52, l='MpServer', x=-785.75, y=2.13, z=-1079.25], EntityItem['item.tile.dirt'/68, l='MpServer', x=-775.72, y=2.13, z=-1110.13], EntityItem['item.tile.dirt'/69, l='MpServer', x=-776.09, y=3.13, z=-1112.88], EntityItem['item.tile.dirt'/70, l='MpServer', x=-776.44, y=3.13, z=-1109.25], EntityItem['item.tile.dirt'/71, l='MpServer', x=-774.31, y=3.13, z=-1112.28], EntityItem['item.tile.dirt'/67, l='MpServer', x=-777.47, y=3.13, z=-1110.28], EntityItem['item.tile.dirt'/76, l='MpServer', x=-783.97, y=3.13, z=-1090.59], EntityItem['item.tile.dirt'/77, l='MpServer', x=-783.72, y=3.13, z=-1091.47], EntitySheep['Sheep'/78, l='MpServer', x=-752.91, y=4.00, z=-1205.09], EntitySheep['Sheep'/79, l='MpServer', x=-750.88, y=4.00, z=-1192.91], EntityItem['item.tile.dirt'/72, l='MpServer', x=-774.66, y=3.13, z=-1110.06], EntityItem['item.tile.dirt'/73, l='MpServer', x=-783.44, y=3.13, z=-1092.25], EntityItem['item.tile.dirt'/74, l='MpServer', x=-783.19, y=3.13, z=-1088.88], EntityItem['item.tile.dirt'/75, l='MpServer', x=-782.38, y=3.13, z=-1089.03], EntitySheep['Sheep'/81, l='MpServer', x=-724.19, y=4.00, z=-1172.81], EntitySheep['Sheep'/80, l='MpServer', x=-723.88, y=4.00, z=-1208.06], EntityVillager['Villager'/93, l='MpServer', x=-808.28, y=5.00, z=-1168.31], EntityVillager['Villager'/95, l='MpServer', x=-812.87, y=5.00, z=-1167.25], EntityVillager['Villager'/94, l='MpServer', x=-807.31, y=5.00, z=-1169.69], EntityVillager['Villager'/102, l='MpServer', x=-807.31, y=5.00, z=-1168.72], EntityVillager['Villager'/103, l='MpServer', x=-809.34, y=5.00, z=-1167.78], EntityVillager['Villager'/100, l='MpServer', x=-813.69, y=6.00, z=-1168.16], EntityVillager['Villager'/101, l='MpServer', x=-812.91, y=6.50, z=-1168.56], EntityVillager['Villager'/98, l='MpServer', x=-812.69, y=6.00, z=-1169.69], EntityVillager['Villager'/99, l='MpServer', x=-811.13, y=5.00, z=-1169.69], EntityVillager['Villager'/96, l='MpServer', x=-813.69, y=6.00, z=-1169.09], EntityVillager['Villager'/97, l='MpServer', x=-810.31, y=5.00, z=-1169.69], EntityVillager['Villager'/110, l='MpServer', x=-813.09, y=5.00, z=-1158.38], EntityVillager['Villager'/111, l='MpServer', x=-812.33, y=5.00, z=-1158.12], EntityVillager['Villager'/108, l='MpServer', x=-813.31, y=9.00, z=-1158.31], EntityVillager['Villager'/109, l='MpServer', x=-811.31, y=12.00, z=-1158.69], EntityVillager['Villager'/106, l='MpServer', x=-812.00, y=5.00, z=-1166.31], EntityVillager['Villager'/107, l='MpServer', x=-810.75, y=5.00, z=-1168.09], EntityVillager['Villager'/104, l='MpServer', x=-812.00, y=5.50, z=-1168.88], EntityVillager['Villager'/105, l='MpServer', x=-808.13, y=5.00, z=-1169.66], EntityVillager['Villager'/119, l='MpServer', x=-812.90, y=5.00, z=-1166.30], EntityVillager['Villager'/118, l='MpServer', x=-810.25, y=5.00, z=-1166.31], EntityVillager['Villager'/117, l='MpServer', x=-814.66, y=3.00, z=-1167.50], EntityVillager['Villager'/116, l='MpServer', x=-803.09, y=4.00, z=-1167.50], EntityVillager['Villager'/115, l='MpServer', x=-811.31, y=5.00, z=-1159.47], EntityVillager['Villager'/114, l='MpServer', x=-813.69, y=5.00, z=-1159.56], EntityVillager['Villager'/113, l='MpServer', x=-813.70, y=5.00, z=-1166.30], EntityVillager['Villager'/112, l='MpServer', x=-812.03, y=5.00, z=-1157.43], EntityVillager['Villager'/127, l='MpServer', x=-806.53, y=4.00, z=-1148.63], EntityVillager['Villager'/126, l='MpServer', x=-810.69, y=4.00, z=-1153.69], EntityVillager['Villager'/125, l='MpServer', x=-814.31, y=2.00, z=-1151.22], EntityVillager['Villager'/124, l='MpServer', x=-815.31, y=4.00, z=-1157.56], EntityVillager['Villager'/123, l='MpServer', x=-813.56, y=2.00, z=-1152.69], EntityVillager['Villager'/122, l='MpServer', x=-813.84, y=4.00, z=-1167.50], EntityVillager['Villager'/121, l='MpServer', x=-811.16, y=5.00, z=-1166.31], EntityVillager['Villager'/120, l='MpServer', x=-810.00, y=4.00, z=-1163.25], EntityVillager['Villager'/137, l='MpServer', x=-812.10, y=5.00, z=-1159.00], EntityVillager['Villager'/136, l='MpServer', x=-805.69, y=3.00, z=-1160.34], EntityVillager['Villager'/139, l='MpServer', x=-813.41, y=4.00, z=-1162.59], EntityClientPlayerMP['Player825'/138, l='MpServer', x=-782.68, y=5.62, z=-1137.21], EntityVillager['Villager'/129, l='MpServer', x=-806.75, y=4.00, z=-1149.59], EntityVillager['Villager'/128, l='MpServer', x=-807.53, y=3.00, z=-1151.16], EntityVillager['Villager'/131, l='MpServer', x=-797.50, y=5.00, z=-1150.59], EntityVillager['Villager'/130, l='MpServer', x=-810.38, y=4.00, z=-1147.53], EntityVillager['Villager'/133, l='MpServer', x=-805.72, y=3.00, z=-1143.22], EntityVillager['Villager'/132, l='MpServer', x=-806.78, y=2.00, z=-1144.09], EntityVillager['Villager'/135, l='MpServer', x=-789.78, y=5.00, z=-1143.53], EntityVillager['Villager'/134, l='MpServer', x=-813.34, y=2.00, z=-1150.28], PhoenixEntityClass['entity.Phoenix.name'/2595, l='MpServer', x=-782.50, y=4.00, z=-1135.50]] 2014-02-08 11:51:38 [iNFO] [sTDOUT] Retry entities: 0 total; [] 2014-02-08 11:51:38 [iNFO] [sTDOUT] Server brand: fml,forge 2014-02-08 11:51:38 [iNFO] [sTDOUT] Server type: Integrated singleplayer server 2014-02-08 11:51:38 [iNFO] [sTDOUT] Stacktrace: 2014-02-08 11:51:38 [iNFO] [sTDOUT] at net.minecraft.client.multiplayer.WorldClient.addWorldInfoToCrashReport(WorldClient.java:440) 2014-02-08 11:51:38 [iNFO] [sTDOUT] at net.minecraft.client.Minecraft.addGraphicsAndWorldToCrashReport(Minecraft.java:2298) 2014-02-08 11:51:38 [iNFO] [sTDOUT] at net.minecraft.client.Minecraft.func_99999_d(Minecraft.java:844) 2014-02-08 11:51:38 [iNFO] [sTDOUT] at net.minecraft.client.main.Main.main(Main.java:93) 2014-02-08 11:51:38 [iNFO] [sTDOUT] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 2014-02-08 11:51:38 [iNFO] [sTDOUT] at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) 2014-02-08 11:51:38 [iNFO] [sTDOUT] at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) 2014-02-08 11:51:38 [iNFO] [sTDOUT] at java.lang.reflect.Method.invoke(Unknown Source) 2014-02-08 11:51:38 [iNFO] [sTDOUT] at net.minecraft.launchwrapper.Launch.launch(Launch.java:57) 2014-02-08 11:51:38 [iNFO] [sTDOUT] at net.minecraft.launchwrapper.Launch.main(Launch.java:18) 2014-02-08 11:51:38 [iNFO] [sTDOUT] 2014-02-08 11:51:38 [iNFO] [sTDOUT] -- System Details -- 2014-02-08 11:51:38 [iNFO] [sTDOUT] Details: 2014-02-08 11:51:38 [iNFO] [sTDOUT] Minecraft Version: 1.6.2 2014-02-08 11:51:38 [iNFO] [sTDOUT] Operating System: Windows 7 (x86) version 6.1 2014-02-08 11:51:38 [iNFO] [sTDOUT] Java Version: 1.7.0_45, Oracle Corporation 2014-02-08 11:51:38 [iNFO] [sTDOUT] Java VM Version: Java HotSpot(TM) Client VM (mixed mode), Oracle Corporation 2014-02-08 11:51:38 [iNFO] [sTDOUT] Memory: 824191664 bytes (786 MB) / 1060372480 bytes (1011 MB) up to 1060372480 bytes (1011 MB) 2014-02-08 11:51:38 [iNFO] [sTDOUT] JVM Flags: 3 total; -Xincgc -Xmx1024M -Xms1024M 2014-02-08 11:51:38 [iNFO] [sTDOUT] AABB Pool Size: 21635 (1211560 bytes; 1 MB) allocated, 1510 (84560 bytes; 0 MB) used 2014-02-08 11:51:38 [iNFO] [sTDOUT] Suspicious classes: FML and Forge are installed 2014-02-08 11:51:38 [iNFO] [sTDOUT] IntCache: cache: 0, tcache: 0, allocated: 0, tallocated: 0 2014-02-08 11:51:38 [iNFO] [sTDOUT] FML: MCP v8.04 FML v6.2.35.804 Minecraft Forge 9.10.0.804 4 mods loaded, 4 mods active 2014-02-08 11:51:38 [iNFO] [sTDOUT] mcp{8.04} [Minecraft Coder Pack] (minecraft.jar) Unloaded->Constructed->Pre-initialized->Initialized->Post-initialized->Available->Available->Available->Available 2014-02-08 11:51:38 [iNFO] [sTDOUT] FML{6.2.35.804} [Forge Mod Loader] (coremods) Unloaded->Constructed->Pre-initialized->Initialized->Post-initialized->Available->Available->Available->Available 2014-02-08 11:51:38 [iNFO] [sTDOUT] Forge{9.10.0.804} [Minecraft Forge] (coremods) Unloaded->Constructed->Pre-initialized->Initialized->Post-initialized->Available->Available->Available->Available 2014-02-08 11:51:38 [iNFO] [sTDOUT] BMC{1.0.0} [betterMC] (bin) Unloaded->Constructed->Pre-initialized->Initialized->Post-initialized->Available->Available->Available->Available 2014-02-08 11:51:38 [iNFO] [sTDOUT] Launched Version: 1.6 2014-02-08 11:51:38 [iNFO] [sTDOUT] LWJGL: 2.9.0 2014-02-08 11:51:38 [iNFO] [sTDOUT] OpenGL: Intel 945GM GL version 1.4.0 - Build 8.14.10.1930, Intel 2014-02-08 11:51:38 [iNFO] [sTDOUT] Is Modded: Definitely; Client brand changed to 'fml,forge' 2014-02-08 11:51:38 [iNFO] [sTDOUT] Type: Client (map_client.txt) 2014-02-08 11:51:38 [iNFO] [sTDOUT] Resource Pack: Default 2014-02-08 11:51:38 [iNFO] [sTDOUT] Current Language: English (US) 2014-02-08 11:51:38 [iNFO] [sTDOUT] Profiler Position: N/A (disabled) 2014-02-08 11:51:38 [iNFO] [sTDOUT] Vec3 Pool Size: 1724 (96544 bytes; 0 MB) allocated, 283 (15848 bytes; 0 MB) used 2014-02-08 11:51:38 [iNFO] [sTDOUT] #@!@# Game crashed! Crash report saved to: #@!@# C:\Users\Dom\Desktop\FMods - Copy\forge\mcp\jars\.\crash-reports\crash-2014-02-08_11.51.38-client.txt AL lib: (EE) alc_cleanup: 1 device not closed Main Class: package bettermc.test; import net.minecraft.block.Block; import net.minecraft.block.BlockBreakable; import net.minecraft.block.material.Material; import net.minecraft.client.renderer.entity.RenderSnowball; import net.minecraft.creativetab.CreativeTabs; import net.minecraft.entity.EnumCreatureType; import net.minecraft.item.EnumToolMaterial; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; import net.minecraft.src.ModLoader; import net.minecraft.world.biome.BiomeGenBase; import net.minecraftforge.common.Configuration; import net.minecraftforge.common.DimensionManager; import net.minecraftforge.common.MinecraftForge; import cpw.mods.fml.client.registry.RenderingRegistry; import cpw.mods.fml.common.FMLCommonHandler; import cpw.mods.fml.common.Mod; import cpw.mods.fml.common.Mod.EventHandler; import cpw.mods.fml.common.Mod.Instance; import cpw.mods.fml.common.SidedProxy; import cpw.mods.fml.common.event.FMLInitializationEvent; import cpw.mods.fml.common.event.FMLPostInitializationEvent; import cpw.mods.fml.common.event.FMLPreInitializationEvent; import cpw.mods.fml.common.network.NetworkMod; import cpw.mods.fml.common.registry.EntityRegistry; import cpw.mods.fml.common.registry.GameRegistry; import cpw.mods.fml.common.registry.LanguageRegistry; @Mod(modid="BMC", name="BetterMC", version="1.0.0") @NetworkMod(clientSideRequired=true, serverSideRequired=false) public class Main { public static CreativeTabs tabBlasters = new CreativeTabs("tabBlasters") { public ItemStack getIconItemStack() { return new ItemStack(blasterRifle, 1, 0); } }; public EnumToolMaterial mat; // The instance of your mod that Forge uses. @Instance("Test") public static Main instance; //public final static Item MagicEx1 = new MagicExtracter(5004).func_111206_d("bettermc:MagicDrag").setCreativeTab(tabBlasters).setUnlocalizedName("MagicE1");;; public final static Item Oore = new GraxOre(3092).func_111206_d("bettermc:GraxOre").setCreativeTab(tabBlasters).setUnlocalizedName("GraxOre");;; public final static Block Magic = new MagicBlock(3095, Material.portal).setHardness(0.5F) .setStepSound(Block.soundGravelFootstep) .setUnlocalizedName("Magic") .setCreativeTab(CreativeTabs.tabBlock) .func_111022_d("bettermc:Furnace"); public final static Item PhoenixBlade = new BlazeBlade(3094).func_111206_d("bettermc:BlazeBlade").setCreativeTab(tabBlasters).setUnlocalizedName("PhoenixBlade");;; public final static Item blasterRifle = new Blaster(3093).setCreativeTab(tabBlasters).setUnlocalizedName("Blaster").func_111206_d("bettermc:Blaster"); // Says where the client and server 'proxy' code is loaded. @SidedProxy(clientSide="bettermc.test.client.ClientProxy", serverSide="bettermc.test.CommonProxy") public static CommonProxy proxy; @EventHandler public void preInit(FMLPreInitializationEvent event) { proxy.registerRenderers(); //MinecraftForge.setToolClass(MagicEx1, "MagicTool", 5); Configuration config = new Configuration(event.getSuggestedConfigurationFile()); config.load(); //example int randomBlockID = config.getItem("GraxOre", 20001).getInt(); int randomItemID = config.getItem("Phoenix Blaster", 20000).getInt(); int PhoenixBladeID = config.getItem("PhoenixBlade", 20002).getInt(); config.save(); } @EventHandler public void Init(FMLInitializationEvent event) { int redColor = (255 << 16); int orangeColor = (255 << 16)+ (200 << ; //Register mob EntityRegistry.registerGlobalEntityID(bettermc.test.phoenixmob.PhoenixEntityClass.class,"Phoenix",EntityRegistry.findGlobalUniqueEntityId(), redColor,orangeColor); //Localize mob name LanguageRegistry.instance().addStringLocalization("entity.RedDragon.name", "en_US", "Red Dragon"); //Add mob spawn EntityRegistry.addSpawn(bettermc.test.phoenixmob.PhoenixEntityClass.class, 2, 1, 2, EnumCreatureType.monster, BiomeGenBase.plains); EntityRegistry.addSpawn(bettermc.test.phoenixmob.PhoenixEntityClass.class, 5, 1, 2, EnumCreatureType.monster, BiomeGenBase.extremeHills); //Localize mob name LanguageRegistry.addName(Oore, "Nether Essence"); //LanguageRegistry.addName(MagicEx1, "Magic Extracter"); LanguageRegistry.addName(Magic, "Magic Block"); LanguageRegistry.addName(PhoenixBlade, "Phoenix Blade"); GameRegistry.registerItem(Oore, "Nether Essence"); //GameRegistry.registerItem(MagicEx1, "Magic Extracter"); GameRegistry.registerItem(PhoenixBlade, "Phoenix Blade"); GameRegistry.registerItem(blasterRifle, "Phoenix Blaster"); GameRegistry.registerBlock(Magic, "Magic"); LanguageRegistry.addName(blasterRifle, "Phoenix Blaster"); RenderingRegistry.registerEntityRenderingHandler(EntityBlasterBolt.class, new RenderSnowball(Oore)); LanguageRegistry.instance().addStringLocalization("itemGroup.tabBlasters", "en_US", "Blaze Phoenix Mod"); ItemStack dirtStack = new ItemStack(Item.ingotIron); ItemStack cobblestack = new ItemStack(blasterRifle); ItemStack gravelStack = new ItemStack(Oore); GameRegistry.addRecipe(cobblestack, "x ", " x ", " yx", 'x', dirtStack, 'y', gravelStack); ItemStack quartzstack = new ItemStack(Item.netherQuartz); ItemStack blazestack = new ItemStack(Item.blazePowder); GameRegistry.addShapelessRecipe(gravelStack, quartzstack, blazestack); } @EventHandler public void postInit(FMLPostInitializationEvent event) { // Stub Method } } Client Proxy: package bettermc.test.client; import cpw.mods.fml.client.registry.RenderingRegistry; import cpw.mods.fml.common.registry.EntityRegistry; import net.minecraft.client.renderer.entity.Render; import net.minecraftforge.client.IItemRenderer; import net.minecraftforge.client.MinecraftForgeClient; import bettermc.test.CommonProxy; import bettermc.test.ItemRender; public class ClientProxy extends CommonProxy { @Override public void registerRenderers() { MinecraftForgeClient.registerItemRenderer(bettermc.test.Main.blasterRifle.itemID, (IItemRenderer)new ItemRender()); RenderingRegistry.registerEntityRenderingHandler(bettermc.test.phoenixmob.PhoenixEntityClass.class, new bettermc.test.phoenixmob.PhoenixRender(new bettermc.test.phoenixmob.PhoenixMob(), 0.5F)); } } Entity Class: package bettermc.test.phoenixmob; import net.minecraft.entity.EntityAgeable; import net.minecraft.entity.ai.EntityAIFollowParent; import net.minecraft.entity.ai.EntityAILookIdle; import net.minecraft.entity.ai.EntityAIMate; import net.minecraft.entity.ai.EntityAIPanic; import net.minecraft.entity.ai.EntityAISwimming; import net.minecraft.entity.ai.EntityAITempt; import net.minecraft.entity.ai.EntityAIWander; import net.minecraft.entity.ai.EntityAIWatchClosest; import net.minecraft.entity.passive.EntityAnimal; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.Item; import net.minecraft.world.World; //Your declaration. If your mob swims, change EntityAnimal to EntityWaterMob. public class PhoenixEntityClass extends EntityAnimal { public PhoenixEntityClass(World par1World) { super(par1World); //The below means if possible, it wont walk into water this.getNavigator().setAvoidsWater(true); //This is the hitbox size. I believe it starts in the center and grows outwards this.setSize(1.5F, 0.9F); //Pretty self-explanatory. this.isImmuneToFire = true; float var2 = 0.25F; //Now, we have the AI. Each number in the addTask is a priority. 0 is the highest, the largest is lowest. //They should be set in the order which the mob should focus, because it can only do one thing at a time. I'll explain my choice for order below. //There are tonnes of tasks you can add. Look in the JavaDocs or other mob classes to find some more! //Swimming should ALWAYS be first. Otherwise if your mob falls in water, but it's running away from you or something it'll drown. //This makes the mob run away when you punch it this.tasks.addTask(0, new EntityAIPanic(this, 0.38F)); //If you have mating code, this allows it to mate. this.tasks.addTask(1, new EntityAIMate(this, var2)); //This code is used to get the mob to follow you (like cows with wheat). Here it's set to a custom fruit this.tasks.addTask(2, new EntityAITempt(this, 0.3F, bettermc.test.Main.Oore.itemID, false)); //If the mob is a child, it will follow it's parent. this.tasks.addTask(3, new EntityAIFollowParent(this, 0.28F)); //This makes the mob walk around. Without it, it'd just stand still. this.tasks.addTask(4, new EntityAIWander(this, var2)); //This makes the mob watch the nearest player, within a range set by the float. this.tasks.addTask(5, new EntityAIWatchClosest(this, EntityPlayer.class, 6.0F)); //Finally, this makes it look around when it's not looking at a player or wandering. this.tasks.addTask(6, new EntityAILookIdle(this)); } //This is required. If it's false, none of the above takes effect. public boolean isAIEnabled() { return true; } //Pretty obvious, set it's health! public int getMaxHealth() { return 10; } //A basic example of what a mob should drop on death. For more advanced examples, look at code for chicken or squid. protected int getDropItemId() { return Item.blazePowder.itemID; } //This is required regardless of if your animal can breed or not. Set to null if it can't breed - I wont cover breeding here. public EntityAgeable createChild(EntityAgeable var1) { return null; } } Render Class: (This is where all the errors are) package bettermc.test.phoenixmob; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; import net.minecraft.client.model.ModelBase; import net.minecraft.client.renderer.entity.RenderLiving; import net.minecraft.entity.Entity; import net.minecraft.entity.EntityLiving; import net.minecraft.entity.passive.EntityCow; import net.minecraft.util.ResourceLocation; @SideOnly(Side.CLIENT) public class PhoenixRender extends RenderLiving { public PhoenixRender(ModelBase par1ModelBase, float par2) { super(null, par2); } public void renderPhoenix(PhoenixEntityClass par1EntityPhoenix, double par2, double par4, double par6, float par8, float par9) { super.doRenderLiving(par1EntityPhoenix, par2, par4, par6, par8, par9); } public void doRenderLiving(EntityLiving par1EntityLiving, double par2, double par4, double par6, float par8, float par9) { this.renderPhoenix((PhoenixEntityClass)par1EntityLiving, par2, par4, par6, par8, par9); } /** * 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 doRender(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 par1Entity, double par2, double par4, double par6, float par8, float par9) { this.renderPhoenix((PhoenixEntityClass)par1Entity, par2, par4, par6, par8, par9); } @Override protected ResourceLocation func_110775_a(Entity entity) { ResourceLocation loc = new ResourceLocation("bettermc", "textures/mob/PhoenixMobTex.png"); return loc; } } Model Class: [bonus Points: Can you tell me how to animate walking and looking?] // Date: 2/8/2014 11:12:03 AM // Template version 1.1 // Java generated by Techne // Keep in mind that you still need to fill in some blanks // - ZeuX package bettermc.test.phoenixmob; import net.minecraft.client.model.ModelBase; import net.minecraft.client.model.ModelRenderer; import net.minecraft.entity.Entity; public class PhoenixMob extends ModelBase { //fields ModelRenderer Body; ModelRenderer LWingBase; ModelRenderer LFeather1; ModelRenderer LFeather2; ModelRenderer LFeather3; ModelRenderer RWingBase; ModelRenderer RFeather1; ModelRenderer RFeather2; ModelRenderer RFeather3; ModelRenderer LLegBase; ModelRenderer LLegClaw1; ModelRenderer LLegClaw2; ModelRenderer LLegClaw3; ModelRenderer RLegBase; ModelRenderer RLegClaw1; ModelRenderer RLegClaw2; ModelRenderer RLegClaw3; ModelRenderer TailFeather1; ModelRenderer TailFeather2; ModelRenderer TailFeather3; ModelRenderer Head; ModelRenderer HFeather1; ModelRenderer HFeather2; ModelRenderer Neck; ModelRenderer Beak; public PhoenixMob() { textureWidth = 64; textureHeight = 32; Body = new ModelRenderer(this, 0, 0); Body.addBox(-3F, 0F, -4F, 6, 3, 10); Body.setRotationPoint(0F, 15F, -1F); Body.setTextureSize(64, 32); Body.mirror = true; setRotation(Body, -0.4833219F, 0F, 0F); LWingBase = new ModelRenderer(this, 0, 13); LWingBase.addBox(0F, 0F, 0F, 1, 3, 3); LWingBase.setRotationPoint(2F, 15F, -3F); LWingBase.setTextureSize(64, 32); LWingBase.mirror = true; setRotation(LWingBase, 0F, 0.2602503F, -0.260246F); LFeather1 = new ModelRenderer(this, 0, 19); LFeather1.addBox(0F, 0F, 3F, 1, 1, 4); LFeather1.setRotationPoint(2F, 15F, -3F); LFeather1.setTextureSize(64, 32); LFeather1.mirror = true; setRotation(LFeather1, -0.122173F, 0.260246F, -0.260246F); LFeather2 = new ModelRenderer(this, 10, 19); LFeather2.addBox(0F, 0F, 3F, 1, 1, 4); LFeather2.setRotationPoint(2F, 16F, -3F); LFeather2.setTextureSize(64, 32); LFeather2.mirror = true; setRotation(LFeather2, -0.122173F, 0.260246F, -0.260246F); LFeather3 = new ModelRenderer(this, 20, 19); LFeather3.mirror = true; LFeather3.addBox(0F, -0.5F, 2.666667F, 1, 1, 4); LFeather3.setRotationPoint(2F, 17F, -3F); LFeather3.setTextureSize(64, 32); LFeather3.mirror = true; setRotation(LFeather3, -0.1965303F, 0.260246F, -0.260246F); LFeather3.mirror = false; RWingBase = new ModelRenderer(this, 0, 13); RWingBase.mirror = true; RWingBase.addBox(0F, 0F, 0F, 1, 3, 3); RWingBase.setRotationPoint(-3F, 14F, -3F); RWingBase.setTextureSize(64, 32); RWingBase.mirror = true; setRotation(RWingBase, 0F, -0.260246F, 0.260246F); RWingBase.mirror = false; RFeather1 = new ModelRenderer(this, 20, 19); RFeather1.addBox(0F, 0F, 2F, 1, 1, 4); RFeather1.setRotationPoint(-3F, 14F, -3F); RFeather1.setTextureSize(64, 32); RFeather1.mirror = true; setRotation(RFeather1, 0.010631F, -0.260246F, 0.260246F); RFeather2 = new ModelRenderer(this, 10, 19); RFeather2.addBox(0.2F, 1F, 2F, 1, 1, 4); RFeather2.setRotationPoint(-3F, 14F, -3F); RFeather2.setTextureSize(64, 32); RFeather2.mirror = true; setRotation(RFeather2, 0.0106291F, -0.260246F, 0.260246F); RFeather3 = new ModelRenderer(this, 0, 19); RFeather3.addBox(-0.3F, 2F, 2F, 1, 1, 4); RFeather3.setRotationPoint(-2F, 14F, -3F); RFeather3.setTextureSize(64, 32); RFeather3.mirror = true; setRotation(RFeather3, 0.0106291F, -0.260246F, 0.260246F); LLegBase = new ModelRenderer(this, 8, 13); LLegBase.addBox(0F, 0F, 0F, 1, 5, 1); LLegBase.setRotationPoint(1F, 19F, 0F); LLegBase.setTextureSize(64, 32); LLegBase.mirror = true; setRotation(LLegBase, 0F, 0F, 0F); LLegClaw1 = new ModelRenderer(this, 12, 16); LLegClaw1.addBox(0F, 4F, -3F, 1, 1, 2); LLegClaw1.setRotationPoint(1F, 19F, 0F); LLegClaw1.setTextureSize(64, 32); LLegClaw1.mirror = true; setRotation(LLegClaw1, 0F, -0.8551081F, 0F); LLegClaw2 = new ModelRenderer(this, 12, 16); LLegClaw2.addBox(0F, 4F, -2F, 1, 1, 2); LLegClaw2.setRotationPoint(1F, 19F, 0F); LLegClaw2.setTextureSize(64, 32); LLegClaw2.mirror = true; setRotation(LLegClaw2, 0F, 0F, 0F); LLegClaw3 = new ModelRenderer(this, 12, 16); LLegClaw3.addBox(0F, 4F, -2F, 1, 1, 2); LLegClaw3.setRotationPoint(1F, 19F, 0F); LLegClaw3.setTextureSize(64, 32); LLegClaw3.mirror = true; setRotation(LLegClaw3, 0F, 0.8518239F, 0F); RLegBase = new ModelRenderer(this, 8, 13); RLegBase.addBox(0F, 0F, 0F, 1, 5, 1); RLegBase.setRotationPoint(-2F, 19F, 0F); RLegBase.setTextureSize(64, 32); RLegBase.mirror = true; setRotation(RLegBase, 0F, 0F, 0F); RLegClaw1 = new ModelRenderer(this, 12, 16); RLegClaw1.addBox(0F, 4F, -2F, 1, 1, 2); RLegClaw1.setRotationPoint(-2F, 19F, 0F); RLegClaw1.setTextureSize(64, 32); RLegClaw1.mirror = true; setRotation(RLegClaw1, 0F, -0.8551081F, 0F); RLegClaw2 = new ModelRenderer(this, 12, 16); RLegClaw2.addBox(0F, 4F, -2F, 1, 1, 2); RLegClaw2.setRotationPoint(-2F, 19F, 0F); RLegClaw2.setTextureSize(64, 32); RLegClaw2.mirror = true; setRotation(RLegClaw2, 0F, 0F, 0F); RLegClaw3 = new ModelRenderer(this, 12, 16); RLegClaw3.addBox(0F, 4F, -2F, 1, 1, 2); RLegClaw3.setRotationPoint(-2F, 19F, 0F); RLegClaw3.setTextureSize(64, 32); RLegClaw3.mirror = true; setRotation(RLegClaw3, 0F, 0.8518239F, 0F); TailFeather1 = new ModelRenderer(this, 0, 24); TailFeather1.addBox(0F, 0F, 0F, 1, 1, 7); TailFeather1.setRotationPoint(0F, 18F, 4F); TailFeather1.setTextureSize(64, 32); TailFeather1.mirror = true; setRotation(TailFeather1, 0F, 0F, 0F); TailFeather2 = new ModelRenderer(this, 0, 24); TailFeather2.addBox(0F, 0F, 0F, 1, 1, 7); TailFeather2.setRotationPoint(0F, 18F, 4F); TailFeather2.setTextureSize(64, 32); TailFeather2.mirror = true; setRotation(TailFeather2, 0F, 0.4461433F, 0F); TailFeather3 = new ModelRenderer(this, 0, 24); TailFeather3.addBox(0F, 0F, 0F, 1, 1, 7); TailFeather3.setRotationPoint(0F, 18F, 4F); TailFeather3.setTextureSize(64, 32); TailFeather3.mirror = true; setRotation(TailFeather3, 0F, -0.5948578F, 0F); Head = new ModelRenderer(this, 40, 0); Head.addBox(-2F, -8F, -7F, 4, 3, 5); Head.setRotationPoint(0F, 15F, -4F); Head.setTextureSize(64, 32); Head.mirror = true; setRotation(Head, 0F, 0F, 0F); HFeather1 = new ModelRenderer(this, 10, 19); HFeather1.addBox(-0.5F, -8F, -2F, 1, 1, 4); HFeather1.setRotationPoint(0F, 15F, -4F); HFeather1.setTextureSize(64, 32); HFeather1.mirror = true; setRotation(HFeather1, 0F, 0F, 0F); HFeather2 = new ModelRenderer(this, 0, 19); HFeather2.addBox(-0.5F, -9F, 2F, 1, 1, 4); HFeather2.setRotationPoint(0F, 15F, -4F); HFeather2.setTextureSize(64, 32); HFeather2.mirror = true; setRotation(HFeather2, 0.6320364F, 0F, 0F); Neck = new ModelRenderer(this, 32, 0); Neck.addBox(-1F, -7F, -1F, 2, 6, 2); Neck.setRotationPoint(0F, 15F, -4F); Neck.setTextureSize(64, 32); Neck.mirror = true; setRotation(Neck, 0.4089647F, 0F, 0F); Beak = new ModelRenderer(this, 30, 18); Beak.addBox(-1F, -7F, -11F, 2, 2, 4); Beak.setRotationPoint(0F, 15F, -4F); Beak.setTextureSize(64, 32); Beak.mirror = true; setRotation(Beak, 0F, 0F, 0F); } public void render(Entity entity, float f, float f1, float f2, float f3, float f4, float f5) { super.render(entity, f, f1, f2, f3, f4, f5); setRotationAngles(f, f1, f2, f3, f4, f5, entity); Body.render(f5); LWingBase.render(f5); LFeather1.render(f5); LFeather2.render(f5); LFeather3.render(f5); RWingBase.render(f5); RFeather1.render(f5); RFeather2.render(f5); RFeather3.render(f5); LLegBase.render(f5); LLegClaw1.render(f5); LLegClaw2.render(f5); LLegClaw3.render(f5); RLegBase.render(f5); RLegClaw1.render(f5); RLegClaw2.render(f5); RLegClaw3.render(f5); TailFeather1.render(f5); TailFeather2.render(f5); TailFeather3.render(f5); Head.render(f5); HFeather1.render(f5); HFeather2.render(f5); Neck.render(f5); Beak.render(f5); } private void setRotation(ModelRenderer model, float x, float y, float z) { model.rotateAngleX = x; model.rotateAngleY = y; model.rotateAngleZ = z; } public void setRotationAngles(float f, float f1, float f2, float f3, float f4, float f5, Entity ent) { super.setRotationAngles(f, f1, f2, f3, f4, f5, ent); } }
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.