jueves, 28 de noviembre de 2013

Script Unity - Sigue objeto o player

A continuación adjunto el script que puede ayudar a muchos en momentos de urgencia.

Este script hace referencia a la acción de seguir a un objeto, parecido a este efecto que tenía el juego de Mario Bros con los fantasmas, que al ingresar a una zona sensible el fantasma seguía al personaje.




El script está desarrollado en JS
_________________________________________________________________________________
var target : Transform; //el Objetivo
var moveSpeed = 3; //velocidad de movimiento
var rotationSpeed = 3; //Velocidad de rotación
var myTransform : Transform;
var velocidadDeAnimacion = moveSpeed*0.3;//Solo si tu objeto esta animado

function Awake() {
    myTransform = transform;
}

function Start() {
    //Si deseas que siga a otro objeto que no sea el solo comenta esta linea de abajo...
     target = GameObject.FindWithTag("Player").transform; //target the player
}

function Update () {
     //Controlar la animacion en funcion de la velocidad a la que se mueva, si no esta animado tu objeto puedes dejar comentadas estas 3 lineas.
   
    /*for (var state : AnimationState in animation) {    
          state.speed = velocidadDeAnimacion;
    }*/

    //valida si la distancia
   
   if (Vector3.Distance (target.position, transform.position)<5){
        myTransform.rotation = Quaternion.Slerp(myTransform.rotation, Quaternion.LookRotation(target.position - myTransform.position), rotationSpeed*Time.deltaTime);

    //Movimiento en dirección del target
    myTransform.position += myTransform.forward * moveSpeed * Time.deltaTime;
    }
}


No hay comentarios:

Publicar un comentario