Jump to content
View in the app

A better way to browse. Learn more.

Forge Forums

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Mew

Members
  • Joined

  • Last visited

Everything posted by Mew

  1. Mew replied to ashtonr12's topic in Modder Support
    *bows* At your service I love being tired.. Except for the fact that my logic becomes extremely flawed... So much for working on my Pokemon Battle Simulator 1) that is because there is no method called loadTexture in the the renderdagger class, or any of its super classes. (The class it extends and the one it extends etc. 2) I will explain it using your file now package ashtonsmod.common; import net.minecraft.client.renderer.Tessellator; import net.minecraft.client.renderer.entity.Render; import net.minecraft.entity.Entity; import net.minecraft.util.MathHelper; import net.minecraft.util.ResourceLocation; import org.lwjgl.opengl.GL11; import org.lwjgl.opengl.GL12; public class RenderDagger extends Render { private ResourceLocation MyFunnyWeirdButExtremelyButNotReallyDescriptiveVariableNameForMyResourceLocation = new ResourceLocation("ashtonsmod", "textures/gui/dagger.png"); public RenderDagger() { } public void renderDagger(EntityDagger par1EntityDagger, double par2, double par4, double par6, float par8, float par9) { GL11.glPushMatrix(); GL11.glTranslatef((float)par2, (float)par4, (float)par6); GL11.glRotatef(par1EntityDagger.prevRotationYaw + (par1EntityDagger.rotationYaw - par1EntityDagger.prevRotationYaw) * par9 - 90.0F, 0.0F, 1.0F, 0.0F); GL11.glRotatef(par1EntityDagger.prevRotationPitch + (par1EntityDagger.rotationPitch - par1EntityDagger.prevRotationPitch) * par9, 0.0F, 0.0F, 1.0F); Tessellator tessellator = Tessellator.instance; byte b0 = 0; float f2 = 0.0F; float f3 = 0.5F; float f4 = (float)(0 + b0 * 10) / 32.0F; float f5 = (float)(5 + b0 * 10) / 32.0F; float f6 = 0.0F; float f7 = 0.15625F; float f8 = (float)(5 + b0 * 10) / 32.0F; float f9 = (float)(10 + b0 * 10) / 32.0F; float f10 = 0.05625F; GL11.glEnable(GL12.GL_RESCALE_NORMAL); float f11 = (float)par1EntityDagger.arrowShake - par9; if (f11 > 0.0F) { float f12 = -MathHelper.sin(f11 * 3.0F) * f11; GL11.glRotatef(f12, 0.0F, 0.0F, 1.0F); } GL11.glRotatef(45.0F, 1.0F, 0.0F, 0.0F); GL11.glScalef(f10, f10, f10); GL11.glTranslatef(-4.0F, 0.0F, 0.0F); GL11.glNormal3f(f10, 0.0F, 0.0F); tessellator.startDrawingQuads(); tessellator.addVertexWithUV(-7.0D, -2.0D, -2.0D, (double)f6, (double)f8); tessellator.addVertexWithUV(-7.0D, -2.0D, 2.0D, (double)f7, (double)f8); tessellator.addVertexWithUV(-7.0D, 2.0D, 2.0D, (double)f7, (double)f9); tessellator.addVertexWithUV(-7.0D, 2.0D, -2.0D, (double)f6, (double)f9); tessellator.draw(); GL11.glNormal3f(-f10, 0.0F, 0.0F); tessellator.startDrawingQuads(); tessellator.addVertexWithUV(-7.0D, 2.0D, -2.0D, (double)f6, (double)f8); tessellator.addVertexWithUV(-7.0D, 2.0D, 2.0D, (double)f7, (double)f8); tessellator.addVertexWithUV(-7.0D, -2.0D, 2.0D, (double)f7, (double)f9); tessellator.addVertexWithUV(-7.0D, -2.0D, -2.0D, (double)f6, (double)f9); tessellator.draw(); for (int i = 0; i < 4; ++i) { GL11.glRotatef(90.0F, 1.0F, 0.0F, 0.0F); GL11.glNormal3f(0.0F, 0.0F, f10); tessellator.startDrawingQuads(); tessellator.addVertexWithUV(-8.0D, -2.0D, 0.0D, (double)f2, (double)f4); tessellator.addVertexWithUV(8.0D, -2.0D, 0.0D, (double)f3, (double)f4); tessellator.addVertexWithUV(8.0D, 2.0D, 0.0D, (double)f3, (double)f5); tessellator.addVertexWithUV(-8.0D, 2.0D, 0.0D, (double)f2, (double)f5); tessellator.draw(); } GL11.glDisable(GL12.GL_RESCALE_NORMAL); GL11.glPopMatrix(); } /** * 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.renderDagger((EntityDagger)par1Entity, par2, par4, par6, par8, par9); } @Override protected ResourceLocation func_110775_a(Entity entity) { return MyFunnyWeirdButExtremelyButNotReallyDescriptiveVariableNameForMyResourceLocation; // here we go again... Geez } } That should fix it up nicely. (You really might want to change the variable name... I am WAY to good at getting these to come on the fly )
  2. Mew replied to ashtonr12's topic in Modder Support
    No, not quite Its more like this: @Override protected ResourceLocation func_110775_a(Entity entity) { return YourResourceLocationVariableThatHoldsTheTextureYouWant; // Don't mind the variable name, wait, do mind it. You need to change it to what it is saying. So basically change it to the resource location of yours that is for the texture you want } Sorry for that... I am tired and when I get tired... Whew, I am Mew definitely.
  3. Mew replied to Duskite's topic in Modder Support
    Well if the void is pretty easy, then the rest should be pretty easy too. What you are wanting is some world generation. And then lots of if statements. So you will want a new world generation file for every piece of the original building. So every time you place a door, you check it to the list of the coordinates etc. to see if what part of the building you want, and from there, what generation file. I am sorry if I am not making much sense. I will try to explain better later if you want me to... But I am messed up a lil atm Need a bit o' sleep.
  4. I think he means that it allows any mob to be on the horse, but he only wants the skeletons and zombies to do it.
  5. Or you could just have the block... and the item... and the tileentity. All you have to do is, in the method that returns what the block drops, you create a new Item and give it all the data it needs, and then spawn the EntityItem with that item you spawned. And that item is the item etc, that you create *EDIT* Just relized that it wouldn't look like a block though, it would be the 2D item. But hey, it would be easier
  6. Haha, ok. That makes more sense. Let me pull up what I know about 1.4.7...
  7. Firstly, that should match your mod id. So you might want to change it to pablisMod. Another thing, get rid of those preloadTexture lines. That method isn't used anymore. Ill just point out that you seem to be using much, MUCH older methods and such than 1.6.2? Are you in 1.6.2 yet? Or are you still using the same methods?
  8. Hmm... I would advise NOT using the ArrowLooseEvent. I mean, it's in the name. ArrowLooseEvent (I am not trying to be mean or anything.) If it was me, I would do this: /** * called when the player releases the use item button. Args: itemstack, world, entityplayer, itemInUseCount */ public void onPlayerStoppedUsing(ItemStack par1ItemStack, World par2World, EntityPlayer par3EntityPlayer, int par4) { int j = this.getMaxItemUseDuration(par1ItemStack) - par4; if (par3EntityPlayer.capabilities.isCreativeMode || par3EntityPlayer.inventory.hasItem(Item.arrow.itemID)) // this is the ammo that the wand uses { float f = (float)j / 20.0F; f = (f * f + f * 2.0F) / 3.0F; if ((double)f < 0.1D) { return; } if (f > 1.0F) { f = 1.0F; } EntityMagicBall magicBall = new EntityMagicBall(par2World, par3EntityPlayer, f * 2.0F); if (f == 1.0F) { magicBall.setIsCritical(true); } if (par3EntityPlayer.capabilities.isCreativeMode) { magicBall.canBePickedUp = 2; } else { int inventorySize = par3EntityPlayer.inventory.getSizeInventory() + 5; // this is so we can cycle through the inventory to find the ammo. The reason 5 is added is because the inventory size for some reason does not count the crafting... So you have to add five or else the for loop doesn't get all 44 slots covered. This is a simple way of doing it. ItemStack ammoStack; for (int i = 0; i < inventorySize; ++i) { Slot slot = par3EntityPlayer.inventoryContainer.getSlot(i); if (slot.getHasStack()) if (slot.getStack().itemID == Item.pickaxeDiamond.itemID) { ammoStack = slot.getStack(); ammoStack.damageItem(200 /* This is the amount of damage you want to do to the item stack */, par3EntityPlayer); } } } if (!par2World.isRemote) { par2World.spawnEntityInWorld(magicBall); } } } I hope that helps a bit
  9. Cool Glad to know I am still slightly useful Hope it works well for ya
  10. Haha, thats awesome. Don't you just love that feeling of being able to share something you found on your own? I know I love that feeling. There is nothing more satisfying than solving a problem.
  11. Fruitsalid, has hydroflame fixed it for ya? Is it all working as intended?
  12. My magical code viewing machine is not working at the moment, sorry... So could you please post your code for me to browse for problems?
  13. Is the class mod_PowerfulInventory in the package net.PowerfulInventory.Mod??? If it isn't, there is your problem
  14. You beat me to the punch line
  15. Did you register the tile entity? That could be your problem
  16. Thanks! That cleared my conscious (or is it the other one?). Glad you figured it out
  17. Mew replied to TLHPoE's topic in Modder Support
    ^^^ He beat me too it...
  18. Lol, I guess it is then For once logic actually worked AND it was in minecraft source (double)
  19. Mew replied to TLHPoE's topic in Modder Support
    Containers are used with GUI's and are what hold the slots. GUI is just the visuals, the container is pretty much what it says. It holds all the extras and such. Like you can't DRAW a slot, its more of an object (literal sense).
  20. I believe he is looking for something like itemStackInstance.damageItem(); (probably NOT what it is).
  21. Mew replied to TLHPoE's topic in Modder Support
    Well... It depends what you are wanting to do. Like do you want to have a GUI that has a scrolling area? A GUI that can be dragged around? Something I can't think of? All of the above? Or are you wanting to do stuff with containers, and inventory GUI's?
  22. Sounds like I didn't help much then That is the problem with my code, I try to do things in weird and wonderful ways. It mostly doesn't work though... Or I just make things harder than they should be...
  23. I don't think that is the problem... But I am still wanting to see his code and his directories...
  24. Umm... all I can say is.. Why? What made you think that you needed the minecraft folder?? *looks shamefaced* Sorry about that. I just don't get it sometimes when people don't get things I see clearly... I am still realizing people or different to me I hate being young... (My definition of young is 12-15)

Important Information

By using this site, you agree to our Terms of Use.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.