# Arcing homing projectiles

## Recommended Posts

Hello all.

I'm trying to finish the ProjectE homing arrows. They currently have a crap linear "point directly at target and go there", but I want something that's pretty and arcs towards the target.

I'm fuzzy on how projectiles in Minecraft work, but I'm gonna try to bump the rotationPitch and rotationYaw so the arrow faces correctly.

I've read some pages online, but currently have no idea where to go.

What I have so far:

[*]Get the arrow's position vector

[*]Get the target's position vector

[*]Subtract the two vectors to gain the one that points directly from the arrow to the target

I need to find a way to rotate the arrow vector onto this vector (someone says cross product and axis-angle rotation), but the problem is.... how do I apply this back to Minecraft? Need to find how to bump the rotation and pitch, and how to reset the arrow's velocity vector. At a loss here, and some explanations and sample (pseudo)code would be nice

My trigonometry and vector calculus are extremely weak, so please explain your reasoning if you give me sample code.

##### Share on other sites

Once you have the direct target vector, you can find the difference between the current trajectory and the target vector and apply a portion of that to the current trajectory, e.g.:

```double arcRate = 0.25D;
double dx = current.xCoord - target.xCoord;
current.xCoord += dx * arcRate;
```

Something like that anyway - I'm just typing off the top of my head here.

##### Share on other sites

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.

DO NOT PM ME WITH PROBLEMS. No help will be given.

## 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.

Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.

×   Pasted as rich text.   Restore formatting

Only 75 emoji are allowed.

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

• ### Posts

• MINECRAFT JAVA wht is ic_im it shows up yellow heres the modpack https://rocktheslayer.wixsite.com/my-site-7 also It wouldnt Let me submit a bug report only a suggestion for this post
• Maybe it's just that my model is janked in some way? My .java model class file from blockbench doesn't have a render method, but every model from everyone who's had this issue in the past has had a render or doRender method that take different values than my models renderToBuffer method which requires the ever puzzling and mysterious vertexConsumer. But if that were the case, surely I'd have issues rendering mob entities with the model as well?   Note: making my own either leads to infinite recursion or the exact same "can't use static method in non-static context" message
• Having the same problem, have you found a fix?
• If I make a new renderer class it seems it lets me use the render method off of that. But I have no idea how to get the context? Additionally, I'm not sure that even if I do get the context for the constructor it won't just red line out the render method again telling me "non static method can't be used in static context"   final EntityRendererProvider context = ??????; ToaPlayerRenderer h = new ToaPlayerRenderer(context, false); h.render(p, 1f,pTicks, stack, buffer, paLights); However, I feel like this isn't going to work even if I somehow figure out where to look to get context and the render method can actually be used
• Did you ever solve this issue? I have the exact same problem and no one seems to even bother to answer any question about this.

• ### Who's Online (See full list)

×

• #### Activity

×
• Create New...