Posted February 19, 20205 yr Hello, i want to make a animation, but i need to know if a entity is attacked by another entity. How to achieve this? New in Modding? == Still learning!
February 19, 20205 yr Have you looked at how vanilla animals (e.g. pig or sheep) do it? Mob entities (which include animals) have goals, which are registered and run by the entity's GoalSelector object. Every mob entity has a goal selector, which is public, and the goal selector has a getRunningGoals() method to get all of the currently-active goals. Take a look at e.g. PigEntity and find the obviously-named goal which controls panic behaviour. That should be all the info you need. It might actually be simpler just to check that the animal has a non-null getRevengeTarget()... depends on how much control you want over the process. An animal can have a revenge target but not have a running panic goal if it can't find somewhere to flee to, for example.
February 19, 20205 yr Author @desht, wow, thanks a lot! I simply cant see the Vanilla code, but thank for your help! New in Modding? == Still learning!
February 19, 20205 yr 15 hours ago, DragonITA said: @desht, wow, thanks a lot! I simply cant see the Vanilla code, but thank for your help! If you can't view vanilla code from your IDE, get that fixed ASAP. It's absolutely critical to be able to see how vanilla and Forge code does stuff, not to mention being able to set debugging breakpoints. Edited February 20, 20205 yr by desht
February 19, 20205 yr Author 16 minutes ago, desht said: get that fixed ASAP What is ASAP? New in Modding? == Still learning!
February 19, 20205 yr 4 hours ago, DragonITA said: What is ASAP? As Soon As Possible About Me Spoiler My Discord - Cadiboo#8887 My Website - Cadiboo.github.io My Mods - Cadiboo.github.io/projects My Tutorials - Cadiboo.github.io/tutorials Versions below 1.14.4 are no longer supported on this forum. Use the latest version to receive support. When asking support remember to include all relevant log files (logs are found in .minecraft/logs/), code if applicable and screenshots if possible. Only download mods from trusted sites like CurseForge (minecraft.curseforge.com). A list of bad sites can be found here, with more information available at stopmodreposts.org Edit your own signature at www.minecraftforge.net/forum/settings/signature/ (Make sure to check its compatibility with the Dark Theme)
March 13, 20205 yr Author On 2/19/2020 at 6:33 PM, desht said: If you can't view vanilla code from your IDE, get that fixed ASAP. It's absolutely critical to be able to see how vanilla and Forge code does stuff, not to mention being able to set debugging breakpoints. So, with the school i not have much time, but i tried to do what i can. I searched a lot about streams and optional, and this is what i actually have: https://github.com/DragonGamerDevelopers/NewFantasyMod/blob/1.15.2/src/main/java/mod/dragonita/fantasymod/entities/UnicornEntity.java#L45 Now it say me that the optional was empty, i really not know why, as my entity walk, look me, if i attack it it flee (The panic), etc…. So i need help. I have done all what i have can do in the Java basic side, but i think that this was a problem more related to modding as Java basic. I have see the Vanilla of getRunningGoals, so normally it should work, so why it don‘t work? Edited March 13, 20205 yr by DragonITA New in Modding? == Still learning!
March 14, 20205 yr return entity.goalSelector.getRunningGoals().anyMatch(prioritizedGoal -> prioritizedGoal.getGoal().getClass() == TargetGoal);
March 15, 20205 yr Author 12 hours ago, loordgek said: return entity.goalSelector.getRunningGoals().anyMatch(prioritizedGoal -> prioritizedGoal.getGoal().getClass() == TargetGoal); @loordgek, thanks for replying! I not am a expert in Java, but it always return false. It not should be the case. I am trying to make a animation if the entity was attacked and the Panic Goal was activated, i kill all my entity (i not have add a regular spawn) and attack the entity, but the Logger always say me that it was false, but i attacked the entity, so it can‘t be was false (as it run in a random position, so it was false), so i not understand why it was always false. New in Modding? == Still learning!
March 15, 20205 yr Author @loordgek It can‘t be possible, so i not understand. Edited March 16, 20205 yr by DragonITA New in Modding? == Still learning!
March 16, 20205 yr Author I think it's a Mojang problem, or am I using it wrong? Because otherwise it's impossible to get a goal, and the function «getRunningGoals()» is also useless On 2/19/2020 at 5:56 PM, desht said: It might actually be simpler just to check that the animal has a non-null getRevengeTarget()... depends on how much control you want over the process. An animal can have a revenge target but not have a running panic goal if it can't find somewhere to flee to, for example. @desht, my entity extends Agreableentity, like a pig, and i don‘t think that a passive entity has a revengetarget. New in Modding? == Still learning!
March 16, 20205 yr it is server side probably, you need to send a packet i dont know for sure edit: did a test and it is server side only Edited March 16, 20205 yr by loordgek
March 17, 20205 yr Author @loordgek, so i need to use @OnlyIn(Dist.SERVER)? So thanks, i will try! 23 hours ago, loordgek said: you need to send a packet What is a packet? Ok, now i am lost. Edited March 17, 20205 yr by DragonITA New in Modding? == Still learning!
March 17, 20205 yr Author On 3/16/2020 at 12:22 PM, loordgek said: it is server side probably How do you know this? New in Modding? == Still learning!
March 17, 20205 yr 32 minutes ago, DragonITA said: How do you know this? Not sure if this is 100% correct, but unless something is graphics, sound, or input, I would pretty much guess that it's server-side, otherwise the client could corrupt/hack stuff.
March 17, 20205 yr Author @Ugdhar, i should send a PacketBuffer, but i have a many questions: why and how. New in Modding? == Still learning!
March 17, 20205 yr 2 hours ago, DragonITA said: @Ugdhar, i should send a PacketBuffer, but i have a many questions: why and how. Unfortunately, not something I've messed with yet, so I can't help you. I was just explaining how (I'm guessing) the other person was figuring it was server side..
March 17, 20205 yr Author 4 hours ago, Ugdhar said: Unfortunately, not something I've messed with yet, so I can't help you. I was just explaining how (I'm guessing) the other person was figuring it was server side.. Ok thanks, but now where can i find a tutorial about PacketBuffer: @Ugdhar, @Cadiboo, @desht or @loordgek??? New in Modding? == Still learning!
March 17, 20205 yr Author @loordgek 1.13 is outdated, and i have see this site, but it not helped me out. New in Modding? == Still learning!
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.