Posted June 10, 201411 yr Is there a better way to do this? "if (event.entity instanceof EntityZombie || event.entity instanceof EntitySkeleton || event.entity instanceof EntitySkeleton || event.entity instanceof EntityCreeper) {" Only code when your having fun doing it.
June 10, 201411 yr Hard to answer when you dont' indicate what it is you are trying to do. In what you listed, no need to look for EntitySkeleton twice. Long time Bukkit & Forge Programmer Happy to try and help
June 10, 201411 yr If your checking for the same thing in all of them, then no. (Like delphi said remove the second EntitySkeleton).
June 10, 201411 yr Well, if for "easy" you mean less typing, then probably not unless all the entities shared something in common that made them different than all other entities. For example, if you wanted to check for all EntityMob then you wouldn't have to list all the mobs. But sometimes in computer programming you just have to list out all the cases and handle them. Check out my tutorials here: http://jabelarminecraft.blogspot.com/
June 10, 201411 yr if you're going to be using it a lot, you could extract the checks to a method: private static boolean requiredMob(Entity testEntity){ return (testEntity instanceof EntityZombie || testEntity instanceof EntitySkeleton || testEntity instanceof EntityCreeper); } if(requiredMob(event.entity)){ //do code } https://lh6.googleusercontent.com/-z5frUimWWu0/U4Wuz9xle4I/AAAAAAAABsE/q3eMXJIDXIM/s800/EmeraldCasinoSig.png[/img]
June 10, 201411 yr I presume you're trying to do a lot of specific comparisons. You could do this: return (testEntity instanceof EntityZombie || testEntity instanceof EntitySkeleton || testEntity instanceof EntityCreeper); To make the code easier to read, but no, there isn't an easier way to do what you're already doing. if (user.hasKnowledgeOfJava) { if (user.question.hasCode) { return interpetHelpfulResponse(user.getQuestion()); } else { return "Could you post your code please?"; } } else { return "Learn some freaking Java!"; }
June 10, 201411 yr Some more OOC ? public class Group{ private final List<Class> members; public Group(Class...classes){ this.members = Arrays.asList(classes); } public boolean hasMember(Class<?> test){ for(Class<?> member:members){ if(member.isAssignableFrom(test)) return true; } return false; } } public Group meanVanillaBiped = new Group(EntityZombie.class, EntitySkeleton.class, EntityCreeper.class);
June 11, 201411 yr Author Thank you all! By the Way the second skeleton was me forgetting to change it to creeper... Only code when your having fun doing it.
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.