Asweez Posted August 5, 2016 Share Posted August 5, 2016 I want the player to act like they are using EntityAIWander by simulating mouse and keyboard input (this is a client side mod). What's the best way to do this? AI can only be applied to EntityLivings and that's what most AI algorithms use. Right now I use a PathFinder with a WalkNodeProcessor, then calculate the path to a randomly calculated position nearby. To do this I use PathFinder#findPath and creating a new ChunkCache (with the client-side world object), and then here's where it gets iffy: I make a new EntityCow and use that for the EntityLiving param. Is there a better way to do this? NodeProcessor nodeProcessor = new WalkNodeProcessor(); nodeProcessor.setCanEnterDoors(true); PathFinder pf = new PathFinder(nodeProcessor); Vec3d vec3d = findRandomTargetBlock(player, 4, 1, (Vec3d) null); BlockPos pos = new BlockPos(vec3d); float f = 128; BlockPos blockpos = new BlockPos(player); int i = (int) (f + 8.0F); ChunkCache chunkcache = new ChunkCache(Minecraft.getMinecraft().theWorld, blockpos.add(-i, -i, -i), blockpos.add(i, i, i), 0); EntityCow cow = new EntityCow(Minecraft.getMinecraft().theWorld); cow.setPosition(blockpos.getX(), blockpos.getY(), blockpos.getZ()); Path path = pf.findPath(chunkcache, cow, pos, f); Quote Creator of the MyFit, MagiCraft, Tesseract gun, and Papa's Wingeria mod. Link to comment Share on other sites More sharing options...
Asweez Posted August 6, 2016 Author Share Posted August 6, 2016 Bump Quote Creator of the MyFit, MagiCraft, Tesseract gun, and Papa's Wingeria mod. Link to comment Share on other sites More sharing options...
Asweez Posted August 6, 2016 Author Share Posted August 6, 2016 Bump Quote Creator of the MyFit, MagiCraft, Tesseract gun, and Papa's Wingeria mod. Link to comment Share on other sites More sharing options...
Recommended Posts
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.