Jump to content


  • Posts

  • Joined


  • Gender
  • Personal Text
    I am new!

pelep's Achievements

Creeper Killer

Creeper Killer (4/8)



  1. I used to find the mcmod.info annoying too and started to hard code my mod info that way, but i realized there might possibly be some other programs that depend on the mcmod.info file. maybe a launcher that uses the file to detect mods or get info about it? i think of it as a pseudo-manifest file. anyway, i thought it might not be a good idea to get rid of the mcmod.info and ended up putting the file back just to be safe. there's almost no difference anyway and it's sort of the standard thing to have already
  2. you really should get your facts straight before you go around insulting people.. @gmod622 an easier way to do what you want is this if(j.getItem() != null && j.getItem() == main_ProcessCraft.ShapingHammer) { if (!j.attemptDamageItem(1, player.getRNG())) { j.stackSize++; } } although, this should already work fine assuming you added it to the rest of your code correctly int d = j.getItemDamage(); if(d > 128) { inv.setInventorySlotContents(i, null); }
  3. then i suggest learning "advanced" java... or rethinking your definition of "basic". i remember your old thread and all you needed to know was already posted in it multiple times. people even posted code for you. the only thing stopping you from making your stuff work was.. well, not having a firm grasp of basic java.. yup. sadly, this is turning out almost exactly like the last thread
  4. @hydroflame yep @OP that's really weird because i just tested it on a dedicated server and it wouldn't even get past the "if (Class.forName() && Keyboablablaba)" part. and it shouldn't. if it's working on a dedicated server, where the heck is it getting the keyboard input from? it can't be from the clients because the only checks for keyboard input is in pressClientKey() which is called by the server. also, i don't think you need packets. you can probably just use the datawatcher.
  5. and just to clarify. onUpdate() is only called server side. so if you call pressKeyClient() in onUpdate() and only there, you're gonna have to change your set up because it won't work on a dedicated server
  6. i'm trying to make sense of you code, and i don't get why pressKeyClient() is in your onUpdate() method. have you tested it on smp already?
  7. don't the entity updates get called server side only? i'm not sure actually. but i vaguely remember that it's only server side. hence the data watchers was typing that but nevermind. if they update client side first for your truck, then i guess you aren't updating it properly like hydroflame said
  8. doesn't look like you're sending the wheelyaw info to the client
  9. your code should work. go to (0, 0, 0) in your world and you should see it rendered somewhere there..
  10. coplanar! that's the word i was looking for. can't believe i already said the word "plane" and didn't think of it *facepalm* lol. @hydroflame i kid you not. if you look at RenderBlocks the only calls to glTranslatef you'll find is in renderBlockAsItem()
  11. actually, for some reason, that doesn't work with the ISBRH
  12. the vertices have to end up aligned. you should be able to make a plane out of the 4 vertices you provided. if they aren't aligned, imagine a plan with one corner pulled away from the rest. something like that happens. what you posted would render something, but definitely not a quad. don't know what it would be either though
  13. that code you posted makes me think you didn't take a look at the torch code.. anyway, here's an example. just two random faces. hopefully, you'll be able to figure out how to use icons from that as well @Override public boolean renderWorldBlock(IBlockAccess world, int x, int y, int z, Block block, int rId, RenderBlocks rb) { Tessellator t = Tessellator.instance; Icon icon = Block.pumpkin.getIcon(3, 0); double minU = icon.getMinU(); double maxU = icon.getMaxU(); double minV = icon.getMinV(); double maxV = icon.getMaxV(); double p = 0.0625D; //first side t.setColorOpaque_F(1F, 1F, 1F); t.setBrightness(150); t.addVertexWithUV(x + (p * 14D), y + 1D, z + 1D, minU, minV); t.addVertexWithUV(x + (p * 14D), y + 0D, z + 1D, minU, maxV); t.addVertexWithUV(x + (p * 14D), y + 0D, z + 0D, maxU, maxV); t.addVertexWithUV(x + (p * 14D), y + 1D, z + 0D, maxU, minV); //second side. just messing around a bit here double u8 = icon.getInterpolatedU(8D); t.setBrightness(block.getMixedBrightnessForBlock(world, x - 1, y, z)); t.addVertexWithUV(x - (p * 0D), y + 2D, z + 0D, minU, minV); t.addVertexWithUV(x - (p * 0D), y + 0D, z + 0D, minU, maxV); t.addVertexWithUV(x - (p * 8D), y + 0D, z + 1D, u8, maxV); t.addVertexWithUV(x - (p * 8D), y + 2D, z + 1D, u8, minV); return true; }
  14. pelep


  15. there is. look harder. it's really not that difficult to find considering it's in the same class. anyway, create a new MerchantRecipe (you can specify the buy/sell items in the constructor) then add it to the provided merchant recipe list. although i don't think you can remove the villager's default trades through an IVillageTradeHandler because they're only added after mod trades are added
  • Create New...

Important Information

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