Posted November 5, 201410 yr goood days i know this looks noob question but i get stuck here i wanna break some blocks wuith a custom item, but idont realize how to declare this weel i been doing some research and fin this world.destroyBlock(x,y,z, true); but not work in 1.710 in some forum they say thath deprecated but there is still a world.func_147480_a(x, y,z, true); but still not work and inthe world class i found world.destroyBlockInWorldPartially(int,int,int,int,int); but i dont get how to use this and the examples well the re is no examples. and donot know the order of the int's is not clear i been triying Block blck = world.getBlock(x, y, z); int idblock=Block.getIdFromBlock(blck); int idplayer=p_77659_3_.getEntityId(); world.destroyBlockInWorldPartially(idplayer,x,y,z,-1); not work world.destroyBlockInWorldPartially(idblock,x,y,z,-1); not work ñaaaaaaaaa sooo howdo you do to destroy a block in the given coordinates xyz droping what its drops.??
November 5, 201410 yr Block blck = world.getBlock(x, y, z); blck.dropBlockAsItem(...); Apparently I'm a complete and utter jerk and come to this forum just like to make fun of people, be confrontational, and make your personal life miserable. If you think this is the case, JUST REPORT ME. Otherwise you're just going to get reported when you reply to my posts and point it out, because odds are, I was trying to be nice. Exception: If you do not understand Java, I WILL NOT HELP YOU and your thread will get locked. DO NOT PM ME WITH PROBLEMS. No help will be given.
November 6, 201410 yr Author jejejeje is half way but i must question again public ItemStack onItemRightClick(ItemStack p_77659_1_, World world, EntityPlayer p_77659_3_){ int[] coordenadas = util.coordenadaDeBlockeEnFoco(world, 10); Block blck = world.getBlock(coordenadas[0],coordenadas[1],coordenadas[2]); blck.dropBlockAsItem(world, coordenadas[0],coordenadas[1],coordenadas[2], 0, 0); } thismake the block drop but dont destroy the block, is bad declarated or is mandatory to set the block to air whith world.setBlock(x,y,z, Block.air);
November 6, 201410 yr It works, but I'd suggest calling blck.removedByPlayer(...) instead. removedByPlayer lets the block destroy itself, as well as call any ancillary functions that it might have that happens when the block is destroyed (I'm actually working on a mod right now that overrides this function). I'd also suggest inserting a call to blck.onBlockDestroyedByPlayer(...) somewhere as well (before the call to removedByPlayer or setBlockToAir). Apparently I'm a complete and utter jerk and come to this forum just like to make fun of people, be confrontational, and make your personal life miserable. If you think this is the case, JUST REPORT ME. Otherwise you're just going to get reported when you reply to my posts and point it out, because odds are, I was trying to be nice. Exception: If you do not understand Java, I WILL NOT HELP YOU and your thread will get locked. DO NOT PM ME WITH PROBLEMS. No help will be given.
November 6, 201410 yr Wait, what do you mean by "world.func_147480_a(x, y,z, true); but still not work " I've used that code many times in 1.7.10, so I don't know how it isn't working. Please explain. -Mitchellbrine Minecraft can do ANYTHING, it's coded in Java and you got the full power of Java behind you when you code. So nothing is impossible. It may be freaking fucking hard though, but still possible If you create a topic on Modder Support, live by this motto: I don't want your charity, I want your information
November 6, 201410 yr Are you sure your coordinates are correct? Apparently I'm a complete and utter jerk and come to this forum just like to make fun of people, be confrontational, and make your personal life miserable. If you think this is the case, JUST REPORT ME. Otherwise you're just going to get reported when you reply to my posts and point it out, because odds are, I was trying to be nice. Exception: If you do not understand Java, I WILL NOT HELP YOU and your thread will get locked. DO NOT PM ME WITH PROBLEMS. No help will be given.
November 7, 201410 yr Author i been cleaning up mi code and converting the arrays[] to ArrayList<Integer> and just figure out what happened but the problem is that when i hold the rigthclick it sends like tenthousand orders to break this specific block soo after testing it whit the ArrayList system world.func_147480_a(x,y,z, true); works breaking the block and droping in just one step blck.dropBlockAsItem(world, x,y,z, 0, 0); works make the block drops whitout destroy and world.setBlock(x,y,z, Blocks.air); delete the block as well but i see this before in others mods the blocks are destroy and drops item but still there, if try to jump in the hole i get stuck, and if i close the game and reload the world the blocks come back like nothing happend ?is nesesary to cast some kind of sorcery to get the world to save the change in the chunks ¿
November 7, 201410 yr Than you are destroying the block on the client side, destroy it on the server side.
November 7, 201410 yr from where are you destroying the block? you can detect the side with world.isRemote, returning true for client, false for server
November 7, 201410 yr Author ñaaa //codigo public static void romper(World world,List<Integer> lis){ System.out.println("#### romper"); int llist=lis.size(); //longitud de la lista System.out.println("#### llist="+llist); for (int conteo=0; conteo < llist;conteo=conteo+3){ int x=lis.get(conteo),y=lis.get(conteo+1),z=lis.get(conteo+2); //Block blck = world.getBlock(x,y,z); //blck.dropBlockAsItem(world, x,y,z, 1, 1); //world.setBlock(x,y,z, Blocks.air); world.func_147480_a(x,y,z, true); //####### aqui esta la flag \/ \/ \/ if (world.isRemote){ System.out.println("#### world.isRemote=true ");} else { System.out.println("#### world.isRemote=false");} //####### aqui esta la flag /\ /\ /\ System.out.println("#### x="+x+" y="+y+" z="+z); System.out.println("#### conteo="+conteo); } } //codigo #### romper [12:43:28] [Client thread/INFO] [sTDOUT]: #### llist=12 [12:43:28] [Client thread/INFO] [sTDOUT]: #### world.isRemote=true [12:43:28] [Client thread/INFO] [sTDOUT]: #### x=221 y=77 z=342 by this code im working on a remote world?? remenber from other guides something about a class proxiserver and proxiclient is that related whith error.this
November 7, 201410 yr is public static void romper(World world,List<Integer> lis){ a minecraft method or do you call it yourself If you call it show the code you call it with. There are basically 2 worlds, the client world and the server world.
November 8, 201410 yr Author very confused whit this is the world is provided by the method onItemRightClick anyway this are the two principal class of this item and a video showing how works //############ package mercenary00.mercenarymod.items; import java.io.IOException; import net.minecraft.init.Items; import mercenary00.mercenarymod.utilidades.cfg; import net.minecraft.item.EnumAction; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; import mercenary00.mercenarymod.Mercenary; import cpw.mods.fml.common.registry.GameRegistry; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; import net.minecraft.block.Block; import net.minecraft.client.Minecraft; import net.minecraft.client.renderer.texture.IIconRegister; import net.minecraft.creativetab.CreativeTabs; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.Item; import net.minecraft.util.IChatComponent; import net.minecraft.util.IIcon; import net.minecraft.util.MovingObjectPosition; import net.minecraft.world.World; import net.minecraftforge.common.MinecraftForge; import net.minecraftforge.event.entity.player.ArrowNockEvent; import mercenary00.mercenarymod.utilidades.util; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; import net.minecraft.client.renderer.texture.IIconRegister; import net.minecraft.creativetab.CreativeTabs; import net.minecraft.enchantment.Enchantment; import net.minecraft.enchantment.EnchantmentHelper; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.entity.projectile.EntityArrow; import net.minecraft.init.Items; import net.minecraft.util.IIcon; import net.minecraft.world.World; import net.minecraftforge.common.MinecraftForge; import net.minecraftforge.event.entity.player.ArrowLooseEvent; import net.minecraftforge.event.entity.player.ArrowNockEvent; import java.util.ArrayList; public class varaMercenaria00 extends Item{ public static String name="varamercenaria00"; public static final String[] bowPullIconNameArray = new String[] {"pulling_0", "pulling_1", "pulling_2"}; @SideOnly(Side.CLIENT) private IIcon[] iconArray; private static final String __OBFID = "CL_00001777"; public static ArrayList<Integer> coordenadas0 = new ArrayList<Integer>(); public static ArrayList<Integer> coordenadas1 = new ArrayList<Integer>(); public static ArrayList<Integer> coordenadas2 = new ArrayList<Integer>(); public static boolean coor1=false; public static boolean coor2=false; //############################################################################################# public varaMercenaria00() { setUnlocalizedName(Mercenary.MODID + "_" + name); GameRegistry.registerItem(this, name); setCreativeTab(CreativeTabs.tabTools); setTextureName(Mercenary.MODID + ":" + name); this.maxStackSize = 1; this.setMaxDamage(500); this.setCreativeTab(CreativeTabs.tabCombat); } //############################################################################################# //############################################################################################# public ItemStack onItemRightClick(ItemStack p_77659_1_, World world, EntityPlayer steve){ // System.out.println("### presss"); coordenadas0=util.coordenadaDeBlockeEnFocol(world, 10); // util.MostrarLista(coordenadas0); if (util.compararListas(coordenadas2,coordenadas0)==false){ //ignorar click if (coor1){ // System.out.println("coor1 true"); if ((coor2==false)&&(util.compararListas(coordenadas0,coordenadas1)==false)){ coordenadas2=coordenadas0;coor2=true; } }else{ // System.out.println("coor1 false"); coordenadas1=coordenadas0;coor1=true; } if ((coor1)&&(coor2)){ System.out.println("Tengo dos coordenadas distintas"); util.MostrarLista(coordenadas1); util.MostrarLista(coordenadas2); coor1=false; coor2=false; //util.romper(world, util.Cuadrado(0, coordenadas1,coordenadas2)); util.romper(world,util.circulo( coordenadas1,coordenadas2)); } } //ignorar click return p_77659_1_; } }//fin de la classe //########################################################################## //########################################################################## //########################################################################## //########################################################################## //########################################################################## //########################################################################## //########################################################################## //########################################################################## //########################################################################## package mercenary00.mercenarymod.utilidades; import net.minecraft.init.Blocks; import java.io.IOException; import java.util.ArrayList; import java.util.List; import net.minecraft.init.Items; import mercenary00.mercenarymod.utilidades.cfg; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; import mercenary00.mercenarymod.Mercenary; import cpw.mods.fml.common.registry.GameRegistry; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; import net.minecraft.block.Block; import net.minecraft.client.Minecraft; import net.minecraft.client.renderer.texture.IIconRegister; import net.minecraft.creativetab.CreativeTabs; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.Item; import net.minecraft.util.IIcon; import net.minecraft.util.MovingObjectPosition; import net.minecraft.world.World; import net.minecraftforge.common.MinecraftForge; import net.minecraftforge.event.entity.player.ArrowNockEvent; import mercenary00.mercenarymod.utilidades.util; public class util{ //################################################################################################################# //#### devuelve las coordenadas del blocke al que esta mirando steve public static ArrayList<Integer> coordenadaDeBlockeEnFocol(World world,int distancia){ //System.out.println("###coordenadaDeBlockeEnFocoL"); ArrayList<Integer> lin =new ArrayList<Integer>(); // x y z //lin.add(0);lin.add(0);lin.add(0); MovingObjectPosition mop = Minecraft.getMinecraft().renderViewEntity.rayTrace(distancia, 1.0F); //System.out.println("###mop="+mop); if(mop != null) { int blockHitSide = mop.sideHit; Block blockLookingAt = world.getBlock(mop.blockX, mop.blockY, mop.blockZ) ; int fx=(int)mop.blockX; int fy=(int)mop.blockY; int fz=(int)mop.blockZ; // System.out.println("fx="+fx+" fy="+fy+" fz="+fz); lin.add(0,fx); lin.add(1,fy); lin.add(2,fz); } // // int x=lin.get(0); // int y=lin.get(1); // int z=lin.get(2); // if (world.isAirBlock(x,y,z)) {System.out.println(">>>>>### el blocke x="+x+" y="+y+" z="+z+" es aire");} // System.out.println("x="+lin.get(0)+" y="+lin.get(1)+" z="+lin.get(2)); return lin; // } //################################################################################################################# //### devuelve la id 0 del blocke en las coordenadas public static int IDdelBlockeEn(World world, List<Integer> lin){ //int x=lin.get(0); //int y=lin.get(1); //int z=lin.get(3); Block blck = world.getBlock(lin.get(0),lin.get(1),lin.get(2)); int iblck=Block.getIdFromBlock(blck); return iblck; } //################################################################################################################# public static boolean compararListas(List<Integer> lia, List<Integer> lib){ // System.out.println("compararVectores"); int la=lia.size(),lb=lib.size();int count=0; if (la==lb){ // System.out.println("A y B miden lo mismo la="+la+" lb="+lb); for (int c=0; c < la ;c++){ // System.out.println("c="+c); int a=lia.get©,b=lib.get©; if (a==b){ count++; ;} // System.out.println("count="+count+" a="+a+" y b="+b); } } // System.out.println("count="+count+" la="+la+" lb="+lb); if ((count==la)&&(la==lb)){ return true; }else{ return false; } } //################################################################################################################# public static List<Integer> minmax(List<Integer> lia, List<Integer> lib){ System.out.println("#### \nMetodo minmax"); ArrayList<Integer> orga =new ArrayList<Integer>(); for (int or=0; or<6 ; or++ ) { orga.add(0); } int count=0; int liasize=lia.size(),libsize=lib.size(); System.out.println("x="+lia.get(0)+" y="+lia.get(1)+" z="+lia.get(2)); System.out.println("x="+lib.get(0)+" y="+lib.get(1)+" z="+lib.get(2)); System.out.println(""); if (liasize==libsize){ // System.out.println("los dos vectores miden lo mismo "); for (int c=0;c<3;c++){ int a=lia.get©; int b=lib.get©; if ( a <= b ){ orga.set( c , a ) ;} if ( a >= b ){ orga.set((c+3) , a);} if ( b <= a ){ orga.set( c , b ) ;} if ( b >= a ){ orga.set((c+3) , b);} } } return orga; } //################################################################################################################# public static void romper(World world,List<Integer> lis){ System.out.println("#### romper"); int llist=lis.size(); //longitud de la lista System.out.println("#### llist="+llist); for (int conteo=0; conteo < llist;conteo=conteo+3){ int x=lis.get(conteo),y=lis.get(conteo+1),z=lis.get(conteo+2); //Block blck = world.getBlock(x,y,z); //blck.dropBlockAsItem(world, x,y,z, 1, 1); //world.setBlock(x,y,z, Blocks.air); world.func_147480_a(x,y,z, true); if (world.isRemote){ System.out.println("#### world.isRemote=true ");} else { System.out.println("#### world.isRemote=false");} System.out.println("#### x="+x+" y="+y+" z="+z); System.out.println("#### conteo="+conteo); } } //################################################################################################################# public static ArrayList<Integer> Cuadrado(int modo,List<Integer> lia, List<Integer> lib){ ArrayList<Integer> li = new ArrayList<Integer>(); ArrayList<Integer> lo = new ArrayList<Integer>(); ArrayList<Integer> orga = new ArrayList<Integer>(); //System.out.println("antes de organizar"); //System.out.println("min x="+min[0]+" y="+min[1]+" z="+min[2]); //System.out.println("max x="+max[0]+" y="+max[1]+" z="+max[2]); orga=(ArrayList<Integer>) minmax(lia , lib); ///por si acaso organizar min y maximos System.out.println("despues de organizar"); System.out.println("min x="+orga.get(0)+" y="+orga.get(1)+" z="+orga.get(2)); System.out.println("max x="+orga.get(3)+" y="+orga.get(4)+" z="+orga.get(5)); //############################################# int xmin=orga.get(0), ymin=orga.get(1), zmin=orga.get(2); int xmax=orga.get(3), ymax=orga.get(4), zmax=orga.get(5); for(int u=zmin;u<=zmax;u++){ for(int o=ymin;o<=ymax;o++){ for(int i=xmin;i<=xmax;i++){ li.add(i); li.add(o); li.add(u); }}} //############################################# /* try { Thread.sleep (10000); } catch (Exception e) { // Mensaje en caso de que falle } */ return li; } public static void MostrarLista(List<Integer> in){ int lilong=in.size(); for (int lins=0 ; lins < lilong ; lins=lins+3){ int x=in.get(lins),y=in.get(lins+1),z=in.get(lins+2); System.out.println(lins+" > x="+x+" y="+y+" z="+z); ;} } //################################################################################################################# public static ArrayList<Integer> circulo(List<Integer> lia, List<Integer> lib){ ArrayList<Integer> li = new ArrayList<Integer>(); ArrayList<Integer> lo = new ArrayList<Integer>(); ArrayList<Integer> orga = new ArrayList<Integer>(); li.clear(); lo.clear(); orga.clear(); double xc=lia.get(0), yc=lia.get(1), zc=lia.get(2); double xr=lib.get(0), yr=lib.get(1), zr=lib.get(2); double radio= Math.sqrt(Math.pow((xc-xr),2)+Math.pow((zc-zr),2)); int radiu=(int)radio; int longitud=(int)(yc-yr); if (longitud < 0){longitud=-longitud ;} System.out.println("Radio="+radio+"\nLongitud="+longitud); //z2+x2=r2 System.out.println("cargar li"); for (int y=0 ; y<= longitud ; y++ ){ for (int x=(-radiu);x <= radiu ;x++){ double dz=Math.sqrt( Math.pow(radio,2)-Math.pow(x,2) ); //System.out.println("x="+x+" y="+y+" z="+dz); //li.add(x);li.add(y);li.add((int)dz); int zmax=(int)dz; int zmin=(int) -dz; for (int relleno=zmin; relleno <= zmax ; relleno++){ li.add(x);li.add(y);li.add(relleno); ;} //li.add(x);li.add(y);li.add((int) -dz); } } //util.MostrarLista(li); int lisize=li.size(); System.out.println("cargar lo lisize="+lisize); for (int lis=0 ; lis < lisize ; lis=lis+3){ System.out.println("lis="+lis); lo.add( (int) (xc+li.get(lis))); lo.add( (int) (yc+li.get(lis+1))); lo.add( (int) (zc+li.get(lis+2))); } return lo; } }//fin de la classe
November 8, 201410 yr very confused whit this is the world is provided by the method onItemRightClick minecraft always calls that kind of methods twice once with the client word once with the server world: public ItemStack onItemRightClick(ItemStack stack, World world, EntityPlayer steve){ System.out.println(world.isRemote); return stack; } This would print out: true false I'm not too sure about the code tho (I'm somewhat new to coding) But what i think happens is u check for coor1 to be true and then call ur own method with the client world, then u set coor1 to false. When the method actually gets called with the server world coor1 is false and you ofc dont call the method, so, Maybe just put the whole code in onItemRightClick in a if(!world.isRemote)
November 8, 201410 yr Author public static int conteo=0; public ItemStack onItemRightClick(ItemStack p_77659_1_, World world, EntityPlayer steve){ // System.out.println("### presss"); conteo++; System.out.println("is "+conteo+" times onItemRightClick is execute"); System.out.println("world.isRemote="+world.isRemote); coordenadas0=util.coordenadaDeBlockeEnFocol(world, 10); // util.MostrarLista(coordenadas0); it gets weirder here : 16:00:10] Player962 joined the game [16:00:20] items.varaMercenaria00:onItemRightClick:79]: is 1 times onItemRightClick is execute [16:00:20] items.varaMercenaria00:onItemRightClick:80]: world.isRemote=true [16:00:20] items.varaMercenaria00:onItemRightClick:79]: is 2 times onItemRightClick is execute [16:00:20] items.varaMercenaria00:onItemRightClick:80]: world.isRemote=false [16:00:21] items.varaMercenaria00:onItemRightClick:79]: is 3 times onItemRightClick is execute [16:00:21] items.varaMercenaria00:onItemRightClick:80]: world.isRemote=true [16:00:21] items.varaMercenaria00:onItemRightClick:107]: Tengo dos coordenadas distintas [16:00:21] .utilidades.util:romper:174]: #### romper [16:00:21] .utilidades.util:romper:191]: #### world.isRemote=true [16:00:21] .utilidades.util:romper:191]: #### world.isRemote=true _________________________________________________________________________ the world is remote true an then false an again is true in the romper part is always true anyway on item rigth click is giving my this remote world and dont think this is a bug this code was copy from the item.bow class _________________________________________________________________________ soo i made a little xperiment create a block that on click it breaks the floor under and make the world check think [server thread/INFO] [sTDOUT]: onBlockClicked:46]: se ejecuto onBlockClicked [16:47:33] [server thread/INFO] [sTDOUT]:onBlockClicked:50]: #### world.isRemote=false [16:47:33] [server thread/INFO] [sTDOUT]l:romper:174]: #### romper [16:47:33] [Client thread/INFO] [sTDOUT]:: se ejecuto onBlockClicked [16:47:33] [Client thread/INFO] [sTDOUT]:onBlockClicked:49]: #### world.isRemote=true [Client thread/INFO] [sTDOUT]:: se ejecuto onBlockActivated [16:47:49] [Client thread/INFO] : #### world.isRemote=true [16:47:49] [Client thread/INFO] #### romper [16:47:49] [Client thread/INFO] : #### world.isRemote=true [16:47:49] [Client thread/INFO: #### world.isRemote=true [server thread/INFO] [sTDOUT]:: se ejecuto onBlockActivated [16:47:49] [server thread/INFO] [sTDOUT]: #### world.isRemote=false [16:47:49] [server thread/INFO] [sTDOUT]:: #### romper
November 8, 201410 yr Author SO i made little video showing this think the think jeopardizing is this [16:59:49] [Client thread/INFO] [sTDOUT] [16:59:49] [Client thread/INFO] [sTDOUT] [16:59:49] [server thread/INFO] [sTDOUT] [16:59:49] [server thread/INFO] [sTDOUT]: Client thread | Server thread wen i destroy whit the block is make a cycle on client and then a cycle on server but why this is not happening with the wand
November 8, 201410 yr So, that item is supposed to explode only? then why are you copying the bow code? I mean, copy paste ftw, but that's absolutly unnecessary
November 8, 201410 yr Author i use the bow code as base to make this, cut paste i edit wat i need soo the code for varita mercenaria is a few post up. basicli im using the method public ItemStack onItemRightClick(ItemStack p_77659_1_, World world, EntityPlayer steve){ } // i get this from the bow class varamercenaria00 exist just to get two blocks coordenates i name it coordenadas1=firstclick coordenadas2=secundclick coordenadas0 is just a cache for the input from util.coordenadaDeBlockeEnFocol(world, 10); when there is two diferent coordenates loaded in coordenadas1 and coordenas2 it run util.romper(world,util.circulo( coordenadas1,coordenadas2)); and set to zero coordenadas1 and coordenas2 the magic is in util.circulo( coordenadas1,coordenadas2) who define all the block in a cilinder volumen and returit like a list of coordenates then util.romper take the world data and break all the blocks in the list late i the nigth i gona reduce the exit of system.out soo the importantings could be seen in the eclipse stoudout the trouble whith eclipse, it have a limit to the output so i can grab all the exit,
November 9, 201410 yr Author public ItemStack onItemRightClick(ItemStack p_77659_1_, World world, EntityPlayer steve){ // System.out.println("### presss"); conteo++; System.out.println("is "+conteo+" times onItemRightClick is execute"); System.out.println("world.isRemote="+world.isRemote); return p_77659_1_; } //stoudout [20:52:32] [Client thread/INFO] [sTDOUT]: [mercenary00.mercenarymod.items.varaMercenaria00:onItemRightClick:89]: is 1 times onItemRightClick is execute [20:52:32] [Client thread/INFO] [sTDOUT]: [mercenary00.mercenarymod.items.varaMercenaria00:onItemRightClick:90]: world.isRemote=true [20:52:32] [server thread/INFO] [sTDOUT]: [mercenary00.mercenarymod.items.varaMercenaria00:onItemRightClick:89]: is 2 times onItemRightClick is execute [20:52:32] [server thread/INFO] [sTDOUT]: [mercenary00.mercenarymod.items.varaMercenaria00:onItemRightClick:90]: world.isRemote=false [20:52:32] [Client thread/INFO] [sTDOUT]: [mercenary00.mercenarymod.items.varaMercenaria00:onItemRightClick:89]: is 3 times onItemRightClick is execute [20:52:32] [Client thread/INFO] [sTDOUT]: [mercenary00.mercenarymod.items.varaMercenaria00:onItemRightClick:90]: world.isRemote=true [20:52:32] [server thread/INFO] [sTDOUT]: [mercenary00.mercenarymod.items.varaMercenaria00:onItemRightClick:89]: is 4 times onItemRightClick is execute [20:52:32] [server thread/INFO] [sTDOUT]: [mercenary00.mercenarymod.items.varaMercenaria00:onItemRightClick:90]: world.isRemote=false [20:52:33] [Client thread/INFO] [sTDOUT]: [mercenary00.mercenarymod.items.varaMercenaria00:onItemRightClick:89]: is 5 times onItemRightClick is execute [20:52:33] [Client thread/INFO] [sTDOUT]: [mercenary00.mercenarymod.items.varaMercenaria00:onItemRightClick:90]: world.isRemote=true [20:52:33] [server thread/INFO] [sTDOUT]: [mercenary00.mercenarymod.items.varaMercenaria00:onItemRightClick:89]: is 6 times onItemRightClick is execute [20:52:33] [server thread/INFO] [sTDOUT]: [mercenary00.mercenarymod.items.varaMercenaria00:onItemRightClick:90]: world.isRemote=false [20:52:39] [Client thread/INFO] [sTDOUT]: [mercenary00.mercenarymod.items.varaMercenaria00:onItemRightClick:89]: is 7 times onItemRightClick is execute [20:52:39] [Client thread/INFO] [sTDOUT]: [mercenary00.mercenarymod.items.varaMercenaria00:onItemRightClick:90]: world.isRemote=true [20:52:39] [server thread/INFO] [sTDOUT]: [mercenary00.mercenarymod.items.varaMercenaria00:onItemRightClick:89]: is 8 times onItemRightClick is execute [20:52:39] [server thread/INFO] [sTDOUT]: [mercenary00.mercenarymod.items.varaMercenaria00:onItemRightClick:90]: world.isRemote=false
November 9, 201410 yr Author I just realized in which consist the problem when one uses the method onItemRightClick() validates several times runs several times interleaving the worlds first remote then the local remote again and again the local performance obsessed me as I wrote the code so that it will only accept a cycle by sending the coordinates and the parameters only once so sending only the first world the remote world that is always first, ignoring the local world. change the code to just send the variables only when the world is local and only do it once until the coordinates change now looks like this if ((coor1)&&(coor2)&&(!world.isRemote)){ util.romper(world,util.circulo( coordenadas1,coordenadas2)); } there in a one more cuestion but it goes in another treat
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.