- Home /
how to avoid enemies pushing me when they reach me
Hi everyone. This is my first question so I'm sorry if it's not posted propertly. And I'm sorry for my bad english too.
I have a little test game, where the enemy starts chasing the main character (the player) when he gets in a certain distance. (at the end of the post is the script of the enemy). The thing is that when the enemy reaches the player, he keeps walking forward and pushing the player. It even pushes it upward, so the enemy start walking and pushing the character in the air!
How can I avoid this? I do not have the action decided, but I would like to know how to stop it, no matter what happens later (if the player dies, or just start talking with the enemy).
Thanks everyone.
Here's the script of the enemy (it's based in a few answers I found here):
var LookAtTarget:Transform; var speed : float = 3; var proximity : float = 3;
function Update(){ var dist = Vector3.Distance(LookAtTarget.transform.position, transform.position);
//check whether you are within target proximity
if (dist < proximity ) {
animation.Play("threaten");
transform.LookAt (LookAtTarget); //you look at player with this
transform.Translate (0,0,speed*Time.deltaTime);
//moves with speed in local z and you are looking toward him so you move toward the player //write other codes here } else { animation.Play("idle"); }
}
Answer by Bravini · Jan 24, 2011 at 08:23 PM
use another variable, maxDistance = 0.3; then change your statement from
if (dist < proximity ) {
to
if (dist < proximity && dist > maxDistance ) {
or optimally make a check just for the translate.
you may also want to check the Hack n Slash tutorial http://www.burgzergarcade.com/hack-slash-rpg-unity3d-game-engine-tutorial it's a great series of video tutorials, really worth the time.
Thanks Bravini, but I need another way, becouse it make the enemy return to the idle position once he gets there, and if the variable maxDistance is not exact, the problem remains the same.
Your answer
Follow this Question
Related Questions
Following the next item in an array 0 Answers
Suggestions for AI Selecting From Multiple Targets? 3 Answers
Need help with basic AI script. 2 Answers
focusing on a unit during unit detection in an RTS 1 Answer
AI distance from Player 3 Answers