- Home /
Bullets shooting in unpredictable directions
Hi guys,
I have a character in an iOS game whose controls are based on the Camera Relative Controls mobile example. This is the code from AttackBehavior.js:
var projectile : Transform;
...
function Shoot() { // Instantiate the projectile at the position and rotation of this transform var clone : Transform; clone = Instantiate(projectile, animationController.animationTarget.transform.position, transform.rotation);
// Add force to the cloned object in the player's forward direction
clone.rigidbody.AddForce(animationController.animationTarget.transform.forward * bulletSpeed);
}
AttackBehavior.js is attached to the Player GameObject, which is a child CameraRelativeControls (which is also the great grandparent of the main camera) and the parent of the player model. The problem is that when I tap my attack button (which shoots a projectile if the player has energy to do so, and punches when the player runs out of energy), the bullets go in completely random directions.
A possible solution is to make homing bullets, but I'm confused as to how to do so. This is Bullet.js:
var damageValue : int = 2;
private var enemies : GameObject[];
private var target;
function Start () {
enemies = GameObject.FindGameObjectsWithTag("Enemy");
//TODO: Set target to nearest enemy }
function FixedUpdate () {
// TODO: Add homing code here
}
function OnColliderEnter(other : Collider) { if (other.tag == "Enemy") other.SendMessage("ApplyDamage", damageValue); if (other.tag != "Player") Destroy(gameObject); }
In the above code, I'm confused as to how to make it set target to the nearest enemy, as well as how to rotate the rigidbody to face the target once it's selected.
MachCUBED
Your answer
Follow this Question
Related Questions
The name 'Joystick' does not denote a valid type ('not found') 2 Answers
guiText/GameObject position 2 Answers
rotate camera on mobile 1 Answer
traps player for a few seconds 1 Answer
Shoot when GUI is pressed? 0 Answers