Continuando…
  • Vamos agora criar os inimigos, na verdade vamos criar um e duplicá-lo.
  • Crie um cubo para ser o inimigo, scale-o até o tamanho que vc achar ideal para o inimigo, adicione o componente rigidBory nele,marque Frezze rotation e  coloque a massa como 90, nos post anteriores mostrei como fazer isto.
  • Crie um novo javaScript, renomei-o para inimigo e cole o código abaixo nele.
  •  
//personagem
var personagem : Transform;
//Velocidade do tiro
var velTiro = 150.0;
//Obj bala
var balaObj : GameObject;
//Var para resetar
private var posIni:Vector3;
function Start(){
 //Pega posição para resetar
 posIni = transform.position;
 mudaLado();
 Auto();
}

function reseta(){
 transform.position = posIni;
}
//Se levou um tiro morre
function OnCollisionEnter (collision : Collision)
{
 //Se levou um tiro morre
 if(collision.gameObject.tag == "bala"){
  Destroy(gameObject);
 }
}

function FixedUpdate ()
{
 //Se estiver longe do personagem anda
 var pos = transform.position - personagem.position;
 //print(pos.magnitude);
 if(pos.magnitude > 200)
 transform.Translate(Vector3.forward * Time.deltaTime * 15);
 //Longe do cenario reseta
 if(transform.position.x > 1800 || transform.position.x < 200 || transform.position.z > 1800 || transform.position.z < 200){
  reseta();
 }

}

function mudaLado(){
 while(active){
  //Sorteia um novo lado para andar
  var ladoSorteado = Random.Range(-180,180);
  transform.eulerAngles = Vector3(0, ladoSorteado, 0);
  yield WaitForSeconds(8);
 }

}
function Auto(){
 //Verifica se esta proximo ao jogador, caso sim ele vira para ele e atira
 while(active){
  var pos = transform.position - personagem.position;
  //print(pos.magnitude);
  if(pos.magnitude < 200){

   transform.LookAt(personagem);
   Atira();
  }

  yield WaitForSeconds(Random.Range(0,3));
 }
}

function Atira () {
 //Função que atira no personagem
 var bala = Instantiate(balaObj,transform.position,transform.rotation); //GameObject.CreatePrimitive(PrimitiveType.Sphere);
 bala.tag = "balaIni";
 bala.AddComponent(Rigidbody);
 bala.rigidbody.velocity = (transform.forward * velTiro);
 bala.rigidbody.mass = 1;
}

  • Coloque este script no inimigo que vc criou( cubo ), e nas propriedades (Janela  Inspector ) carregue os parâmtros com os seguintes dados:
  1. Personagem: Arraste o personagem até este campo.
  2. BalaObj: Arraste o Prefab da Bala até este campo.

Agora é só selecionar o inimigo, duplicar ele ( Ctrl+D ) e espalha-lo pelo cenário.
  • Vamos agora criar mais um javaScript, desta vez para controlar a vida do personagem, crie, renomeio para vida e cole o código abaixo:
//Life
private var vida:int = 100;
//Arma para ser retirada quandomorre
var arma : GameObject;
function OnCollisionEnter (collision : Collision)
{
 //Se foi atingido retira vida
 if(collision.gameObject.tag == "balaIni"){
  Destroy(collision.gameObject);
  vida-=10;
  verifica();

 }
}

function verifica(){
 //Verifica se morreu, caso sim reinicia o jogo
 if(vida <= 0){
  gameObject.GetComponent("mov_personagem").enabled = false;
  Destroy(arma);
  yield WaitForSeconds(5);
  Application.LoadLevel(0);

 }
}

function OnGUI ()
{
 //Mostra a vida na tela
 if(vida > 0){
  GUILayout.Label("Vida: "+vida);
 }else{
  GUILayout.Label("Game Over");
 }

}

  • Coloque este script no personagem.
  • No parâmetro arma arraste a arma que esta conectada a Main Camera para que quando o personagem morrer a arma possa ser retirada.
Pronto!
  Se você chegou até aqui ja deve ter o jogo rodando, agora vc pode adicionar mais elementos como som por exemplo ( é só arrastar o som para dentro da janela Project e depois arrastar para o objeto) e outros objetos para cena.