
Xile
Members-
Posts
10 -
Joined
-
Last visited
Everything posted by Xile
-
Detect all nearby entities to player and then shoot lightning at them
Xile replied to Xile's topic in Modder Support
Thank you very much! You have all been a great help. One thing that's been giving me issues is that for some reason the detection of the armor that is equipped doesnt work properly. Currently this is how I am detecting what armor is worn. It doesn't seem to work at all though. This is just a test. public void onArmorTick(World world, EntityPlayer player, ItemStack armor) { //0 is Boots //1 is Legs //2 is Chest //3 is Helm ItemStack armorslot = player.inventory.armorItemInSlot(0); System.out.println(armorslot + " Is Equipped"); if (player.inventory.armorItemInSlot(0) == ItemLoader.ArmorTeslaBoots) { System.out.println("Boots worn"); in console it prints: 1xitem.ArmorTeslaBoots@0 Is Equipped however it does not print "Boots Worn" when equipped... -
Detect all nearby entities to player and then shoot lightning at them
Xile replied to Xile's topic in Modder Support
Edit: Nevermind I fixed it! Should I just use this code after the lightning spawn to make it only fire every half second? try { TimeUnit.MILLISECONDS.sleep(500); } catch (InterruptedException e) { //Handle exception } Working Code: //Attempt at Entity scan and target if (KeyInputHandler.ArmorOn == true) { System.out.println("Scanner Activated"); List entities = player.worldObj.getEntitiesWithinAABB(EntityLivingBase.class, AxisAlignedBB.getBoundingBox(player.posX - 5, player.posY - 5, player.posZ - 5, player.posX + 7, player.posY + 7, player.posZ + 7)); if (entities != null && !entities.isEmpty()) { Iterator iterator = entities.iterator(); double posX; double posY; double posZ; EntityLivingBase ent; while (iterator.hasNext()) { ent = (EntityLivingBase) iterator.next(); posX = ent.posX; posY = ent.posY; posZ = ent.posZ; EntityLightningBolt Lightning = new EntityLightningBolt(world, posX, posY, posZ); world.spawnEntityInWorld(Lightning); } } } } Pre Edit: Ok, I feel like this should work. However as soon as I activate it my whole game just freezes with no errors //Attempt at Entity scan and target if (KeyInputHandler.ArmorOn == true) { System.out.println("Scanner Activated"); List entities = player.worldObj.getEntitiesWithinAABB(EntityLivingBase.class, AxisAlignedBB.getBoundingBox(player.posX - 5, player.posY - 5, player.posZ - 5, player.posX + 7, player.posY + 7, player.posZ + 7)); Iterator iterator = entities.iterator(); double posX; double posY; double posZ; EntityLivingBase ent; while (iterator.hasNext()); ent = (EntityLivingBase)iterator.next(); posX = ent.posX; posY = ent.posY; posZ = ent.posZ; EntityLightningBolt Lightning = new EntityLightningBolt(world, posX, posY, posZ); world.spawnEntityInWorld(Lightning); -
Detect all nearby entities to player and then shoot lightning at them
Xile replied to Xile's topic in Modder Support
Well, I'm once again stumped lol. How do I go about pulling the entities coordinates out of the list by using the Iterator? Any help or hints is much appreciated -
Detect all nearby entities to player and then shoot lightning at them
Xile replied to Xile's topic in Modder Support
Disregard that! After some searching I was able to get it working with this code: List entities = player.worldObj.getEntitiesWithinAABB(EntityLivingBase.class, AxisAlignedBB.getBoundingBox(player.posX - 5, player.posY - 5, player.posZ - 5, player.posX + 7, player.posY + 7, player.posZ + 7) This correctly prints out all nearby entities in the console as well Thank you everyone! -
Detect all nearby entities to player and then shoot lightning at them
Xile replied to Xile's topic in Modder Support
You guys have all been an immense help thus far! This is what I currently have in the armortick //Armor Effects @Override public void onArmorTick(World world, EntityPlayer player, ItemStack armor) { EnergyStored = armor.stackTagCompound.getInteger("Energy"); if (EnergyStored < 1) NoPower = true; if (KeyInputHandler.ArmorOn == true) if (NoPower != true) System.out.println("Tesla AOE Activated"); else System.out.println("Tesla Ability Deactivated"); //Just A Test For Charging Armor Without External Mods! if (KeyInputHandler.ArmorOn == false) armor.stackTagCompound.setInteger("Energy", (EnergyStored + 1000)); //PotionEffects Not sure why they dont work when all armor equipped... is weird.. if (player.inventory.armorItemInSlot(2) == ItemLoader.armorTeslaLegs) { if (NoPower != true) player.addPotionEffect(new PotionEffect(Potion.moveSpeed.id, 500, 4)); } if (player.inventory.armorItemInSlot(3) == ItemLoader.armorTeslaBoots) { if (NoPower != true) player.addPotionEffect(new PotionEffect(Potion.jump.id, 500, 4)); } while (KeyInputHandler.ArmorOn == true) { List players = world.getEntitiesWithinAABB(EntityLivingBase.class, player.getBoundingBox().expand(7, 7, 7)); System.out.println("Nearby Entities" + players + "!"); } } currently I'm just testing random things to find out how they work but the bounding box crashes the game when my world with me wearing my armor loads up with this crash. http://pastebin.com/KgYbz6gh I got this crash when i was previously messing with bounding boxes as well. I feel like its something obvious I'm missing here. -
Detect all nearby entities to player and then shoot lightning at them
Xile replied to Xile's topic in Modder Support
Ok this is what I tried. List players = worldObj.getEntitiesWithinAABB(EntityLivingBase.class, player.getBoundingBox().expand(3, 3, 3)); System.out.println("Nearby Entities" + players + "!"); Is this correct? apologies if this is a noob question. I've been able to figure out some stuff myself but this one has been stumping me. -
Detect all nearby entities to player and then shoot lightning at them
Xile replied to Xile's topic in Modder Support
Thank you very much! However getWorldObj() says that it cannot find that method. I forgot to mention this is on 1.7.10. That may be why? -
Detect all nearby entities to player and then shoot lightning at them
Xile replied to Xile's topic in Modder Support
Yea that's the part i'm having trouble with how do make it follow the player around. If its even possible. -
Detect all nearby entities to player and then shoot lightning at them
Xile replied to Xile's topic in Modder Support
Initially i was going to do my own zaps, but this is my first mod and im a noob so I just want to make vanilla lightning from sky hit them. This is what I have tried so far. to no avail. //Bounding Box Attempt public double minX; public double minY; public double minZ; public double maxX; public double maxY; public double maxZ; public AxisAlignedBB axisalignedbb = AxisAlignedBB.getBoundingBox(minX, minY, minZ, maxX, maxY, maxZ); { this.minX = 0; this.minY = 0; this.minZ = 0; this.maxX = 10; this.maxY = 10; this.maxZ = 10; } @Override public void onArmorTick(World world, EntityPlayer player, ItemStack armor) { List entities = world.getEntitiesWithinAABB(getClass(), axisalignedbb); System.out.println("These Entities Are within Range!" + entities + ""); } It doesn't detect any entities unfortunately -
Hello everyone, I'm new to modding and java in general, and I'm currently working on an RF powered armor set. The issue is I would like to make my armor detect nearby players and mobs within a configurable radius around the player and then constantly zap them with lightning at a configurable interval. If anyone could provide insight into how I would go about doing this I would be immensely grateful. Thank you.