Advertisement
Guest User

Fords Pistol source

a guest
Jul 28th, 2016
74
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 9.94 KB | None | 0 0
  1. import cpw.mods.fml.client.*;
  2. import cpw.mods.fml.client.registry.*;
  3. import cpw.mods.fml.common.*;
  4. import cpw.mods.fml.common.asm.*;
  5. import cpw.mods.fml.common.asm.transformers.*;
  6. import cpw.mods.fml.common.discovery.*;
  7. import cpw.mods.fml.common.discovery.asm.*;
  8. import cpw.mods.fml.common.event.*;
  9. import cpw.mods.fml.common.functions.*;
  10. import cpw.mods.fml.common.network.*;
  11. import cpw.mods.fml.common.registry.*;
  12. import cpw.mods.fml.common.toposort.*;
  13. import cpw.mods.fml.common.versioning.*;
  14. import cpw.mods.fml.relauncher.*;
  15. import cpw.mods.fml.server.*;
  16. import net.minecraft.block.*;
  17. import net.minecraft.block.material.*;
  18. import net.minecraft.client.*;
  19. import net.minecraft.client.audio.*;
  20. import net.minecraft.client.entity.*;
  21. import net.minecraft.client.gui.*;
  22. import net.minecraft.client.gui.achievement.*;
  23. import net.minecraft.client.gui.inventory.*;
  24. import net.minecraft.client.model.*;
  25. import net.minecraft.client.multiplayer.*;
  26. import net.minecraft.client.particle.*;
  27. import net.minecraft.client.renderer.*;
  28. import net.minecraft.client.renderer.culling.*;
  29. import net.minecraft.client.renderer.entity.*;
  30. import net.minecraft.client.renderer.tileentity.*;
  31. import net.minecraft.client.settings.*;
  32. import net.minecraft.command.*;
  33. import net.minecraft.crash.*;
  34. import net.minecraft.creativetab.*;
  35. import net.minecraft.dispenser.*;
  36. import net.minecraft.enchantment.*;
  37. import net.minecraft.entity.*;
  38. import net.minecraft.entity.ai.*;
  39. import net.minecraft.entity.boss.*;
  40. import net.minecraft.entity.effect.*;
  41. import net.minecraft.entity.item.*;
  42. import net.minecraft.entity.monster.*;
  43. import net.minecraft.entity.passive.*;
  44. import net.minecraft.entity.player.*;
  45. import net.minecraft.entity.projectile.*;
  46. import net.minecraft.inventory.*;
  47. import net.minecraft.item.*;
  48. import net.minecraft.item.crafting.*;
  49. import net.minecraft.nbt.*;
  50. import net.minecraft.network.*;
  51. import net.minecraft.network.rcon.*;
  52. import net.minecraft.pathfinding.*;
  53. import net.minecraft.potion.*;
  54. import net.minecraft.profiler.*;
  55. import net.minecraft.server.*;
  56. import net.minecraft.server.dedicated.*;
  57. import net.minecraft.server.gui.*;
  58. import net.minecraft.server.integrated.*;
  59. import net.minecraft.server.management.*;
  60. import net.minecraft.src.*;
  61. import net.minecraft.stats.*;
  62. import net.minecraft.tileentity.*;
  63. import net.minecraft.util.*;
  64. import net.minecraft.village.*;
  65. import net.minecraft.world.*;
  66. import net.minecraft.world.biome.*;
  67. import net.minecraft.world.chunk.*;
  68. import net.minecraft.world.chunk.storage.*;
  69. import net.minecraft.world.demo.*;
  70. import net.minecraft.world.gen.*;
  71. import net.minecraft.world.gen.feature.*;
  72. import net.minecraft.world.gen.layer.*;
  73. import net.minecraft.world.gen.structure.*;
  74. import net.minecraft.world.storage.*;
  75. import net.minecraftforge.classloading.*;
  76. import net.minecraftforge.client.*;
  77. import net.minecraftforge.client.event.*;
  78. import net.minecraftforge.client.event.sound.*;
  79. import net.minecraftforge.common.*;
  80. import net.minecraftforge.event.*;
  81. import net.minecraftforge.event.entity.*;
  82. import net.minecraftforge.event.entity.item.*;
  83. import net.minecraftforge.event.entity.living.*;
  84. import net.minecraftforge.event.entity.minecart.*;
  85. import net.minecraftforge.event.entity.player.*;
  86. import net.minecraftforge.event.terraingen.*;
  87. import net.minecraftforge.event.world.*;
  88. import net.minecraftforge.oredict.*;
  89. import net.minecraftforge.transformers.*;
  90. import net.minecraft.init.*;
  91. import java.util.*;
  92. import org.lwjgl.opengl.GL11;
  93. import org.lwjgl.opengl.GL12;
  94.  
  95. public class mcreator_fordsPistol {
  96.  
  97. public mcreator_fordsPistol(){}
  98.  
  99. public static Item block;
  100. public static Object instance;
  101.  
  102. public void load(){
  103. RenderingRegistry.registerEntityRenderingHandler(EntityArrowCustom.class, new RenderCustom());
  104.  
  105. }
  106.  
  107. public void registerRenderers(){}
  108. public void generateNether(World world, Random random, int chunkX, int chunkZ){}
  109. public void generateSurface(World world, Random random, int chunkX, int chunkZ){}
  110. public int addFuel(ItemStack fuel){
  111. return 0;
  112. }
  113. public void serverLoad(FMLServerStartingEvent event){}
  114. public void preInit(FMLPreInitializationEvent event){
  115.  
  116. int entityID = EntityRegistry.findGlobalUniqueEntityId();
  117. EntityRegistry.registerGlobalEntityID(EntityArrowCustom.class, "entityBulletfordsPistol", entityID);
  118. EntityRegistry.registerModEntity(EntityArrowCustom.class, "entityBulletfordsPistol", entityID, instance, 64, 1, true);
  119.  
  120. }
  121.  
  122. static{
  123. block = (new ItemgGUN());
  124. Item.itemRegistry.addObject(423, "fordsPistol", block);
  125. }
  126.  
  127. static class ItemgGUN extends Item{
  128.  
  129. public ItemgGUN(){
  130. super();
  131. setMaxDamage(100);
  132. maxStackSize = 1;
  133. setFull3D();
  134. setUnlocalizedName("fordsPistol");
  135. setTextureName("gun");
  136. setCreativeTab(CreativeTabs.tabCombat);
  137. }
  138.  
  139. public int getMaxItemUseDuration(ItemStack par1ItemStack)
  140. {
  141. return 72000;
  142. }
  143.  
  144. public ItemStack onItemRightClick(ItemStack par1ItemStack, World par2World, final EntityPlayer par3EntityPlayer){
  145.  
  146. boolean flag = par3EntityPlayer.capabilities.isCreativeMode || EnchantmentHelper.getEnchantmentLevel(Enchantment.infinity.effectId, par1ItemStack) > 0;
  147.  
  148. if (flag || par3EntityPlayer.inventory.hasItem(Items.diamond))
  149. {
  150. float f = 1.0F;
  151.  
  152. EntityArrowCustom entityarrow = new EntityArrowCustom(par2World, par3EntityPlayer, f * 2.0F)
  153. {
  154.  
  155. public void onCollideWithPlayer(EntityPlayer entity){
  156. super.onCollideWithPlayer(entity);
  157. int i = MathHelper.floor_double(this.boundingBox.minX + 0.001D);
  158. int j = MathHelper.floor_double(this.boundingBox.minY + 0.001D);
  159. int k = MathHelper.floor_double(this.boundingBox.minZ + 0.001D);
  160. World world = this.worldObj;
  161.  
  162. }
  163.  
  164. public void onUpdate(){
  165. super.onUpdate();
  166. int i = MathHelper.floor_double(this.boundingBox.minX + 0.001D);
  167. int j = MathHelper.floor_double(this.boundingBox.minY + 0.001D);
  168. int k = MathHelper.floor_double(this.boundingBox.minZ + 0.001D);
  169. World world = this.worldObj;
  170. Entity entity = (Entity)par3EntityPlayer;
  171.  
  172. if (this.worldObj.getBlock(i, j, k) != Blocks.air || this.worldObj.getBlock(i, j-1, k) != Blocks.air ||
  173. this.worldObj.getBlock(i, j+1, k) != Blocks.air ||
  174. this.worldObj.getBlock(i+1, j, k) != Blocks.air || this.worldObj.getBlock(i-1, j, k) != Blocks.air
  175. || this.worldObj.getBlock(i, j, k+1) != Blocks.air || this.worldObj.getBlock(i, j, k-1) != Blocks.air){
  176.  
  177. this.kill();
  178. }
  179.  
  180. }
  181.  
  182. };
  183.  
  184. entityarrow.setIsCritical(false);
  185. entityarrow.setDamage(29.0);
  186. entityarrow.setKnockbackStrength(5);
  187.  
  188. if(false){
  189. entityarrow.setFire(100);
  190. }
  191.  
  192. par1ItemStack.damageItem(1, par3EntityPlayer);
  193. par2World.playSoundAtEntity(par3EntityPlayer, "random.bow", 1.0F, 1.0F / (itemRand.nextFloat() * 0.4F + 1.2F) + f * 0.5F);
  194.  
  195. if (flag)
  196. {
  197. entityarrow.canBePickedUp = 2;
  198. }
  199. else
  200. {
  201. par3EntityPlayer.inventory.consumeInventoryItem(Items.diamond);
  202. }
  203.  
  204. if (!par2World.isRemote)
  205. {
  206. par2World.spawnEntityInWorld(entityarrow);
  207. }
  208. World world = par2World;
  209. EntityPlayer entity = par3EntityPlayer;
  210. int i = (int)entity.posX;
  211. int j = (int)entity.posY;
  212. int k = (int)entity.posZ;
  213.  
  214. }
  215.  
  216. return par1ItemStack;
  217. }
  218.  
  219.  
  220.  
  221. /**
  222. * returns the action that specifies what animation to play when the items is being used
  223. */
  224. public EnumAction getItemUseAction(ItemStack par1ItemStack)
  225. {
  226. return EnumAction.bow;
  227. }
  228.  
  229.  
  230. }
  231.  
  232. public static class EntityArrowCustom extends EntityArrow{
  233. public EntityArrowCustom(World a){
  234. super(a);
  235. }
  236. public EntityArrowCustom(World a, EntityLivingBase b, float c){
  237. super(a,b,c);
  238. }
  239. }
  240.  
  241. public static class RenderCustom extends Render{
  242. private static final ResourceLocation tex = new ResourceLocation("bullet2.gif");
  243. public RenderCustom(){super();shadowSize = 0.1F;}
  244. public void render(EntityArrowCustom bullet, double d, double d1, double d2, float f, float f1){
  245. bindEntityTexture(bullet);
  246. GL11.glPushMatrix();
  247. GL11.glTranslatef((float) d, (float) d1, (float) d2);
  248. GL11.glRotatef(f, 0.0F, 1.0F, 0.0F);
  249. GL11.glRotatef(90F -bullet.prevRotationPitch - (bullet.rotationPitch - bullet.prevRotationPitch) * f1, 1.0F, 0.0F, 0.0F);
  250. ModelBase model = new ModelNew();
  251. if(model != null)model.render(bullet, 0.0F, 0.0F, 0.0F, 0.0F, 0.0F, 0.0625F);
  252. GL11.glPopMatrix();}
  253. @Override public void doRender(Entity entity, double d, double d1, double d2, float f, float f1){render((EntityArrowCustom) entity, d, d1, d2, f, f1);}
  254. @Override protected ResourceLocation getEntityTexture(Entity entity){return tex;}}
  255.  
  256. // Date: 7/28/2016 9:31:05 AM
  257. // Template version 1.1
  258. // Java generated by Techne
  259. // Keep in mind that you still need to fill in some blanks
  260. // - ZeuX
  261.  
  262.  
  263.  
  264.  
  265.  
  266.  
  267.  
  268.  
  269. public static class ModelNew extends ModelBase
  270. {
  271. //fields
  272. ModelRenderer Shape1;
  273.  
  274. public ModelNew()
  275. {
  276. textureWidth = 64;
  277. textureHeight = 32;
  278.  
  279. Shape1 = new ModelRenderer(this, 0, 0);
  280. Shape1.addBox(0F, 0F, 0F, 1, 3, 1);
  281. Shape1.setRotationPoint(0F, 0F, 0F);
  282. Shape1.setTextureSize(64, 32);
  283. Shape1.mirror = true;
  284. setRotation(Shape1, 0F, 0F, 0F);
  285. }
  286.  
  287. public void render(Entity entity, float f, float f1, float f2, float f3, float f4, float f5)
  288. {
  289. super.render(entity, f, f1, f2, f3, f4, f5);
  290. setRotationAngles(f, f1, f2, f3, f4, f5, entity);
  291.  
  292. Shape1.render(f5);
  293. }
  294.  
  295. private void setRotation(ModelRenderer model, float x, float y, float z)
  296. {
  297. model.rotateAngleX = x;
  298. model.rotateAngleY = y;
  299. model.rotateAngleZ = z;
  300. }
  301.  
  302. public void setRotationAngles(float f, float f1, float f2, float f3, float f4, float f5, Entity e)
  303.  
  304. {
  305. super.setRotationAngles(f, f1, f2, f3, f4, f5, e);
  306.  
  307. }
  308.  
  309. }
  310.  
  311. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement