The gun instaniates bullets at the firepoint, which are both children of the player camera. whenever the player is facing near 180 degrees Y, the spread zeroes out. Not sure why.
The Script.
var Range : int = 256;
var Damage : float = 0;
var Hitspark : GameObject;
var Concretespark : GameObject;
var Rotation : float = 0;
function Start(){
transform.rotation.y += Random.Range(-Rotation,Rotation);
transform.rotation.x += Random.Range(-Rotation,Rotation);
var hit : RaycastHit;
var fwd2 = transform.TransformDirection (Vector3.forward);
if (Physics.Raycast(transform.position, fwd2,hit, Range)){
if(hit.collider.gameObject.CompareTag("Untagged")){
Instantiate(Concretespark, hit.point, Quaternion.LookRotation(hit.normal));
}
if(hit.collider.gameObject.CompareTag("Enemy")){
hit.collider.gameObject.GetComponent(EnemyHPManager).HP -= Damage;
Instantiate(Hitspark, hit.point, Quaternion.LookRotation(hit.normal));
}
if(hit.collider.gameObject.CompareTag("NonEnemy")){
hit.collider.gameObject.GetComponent(DelayedDeath).Health -= Damage;
Instantiate(Hitspark, hit.point, Quaternion.LookRotation(hit.normal));
}
if(hit.collider.gameObject.CompareTag("BitOfenemy")){
hit.collider.gameObject.GetComponent(APCbit).HP -= Damage;
Instantiate(Hitspark, hit.point, Quaternion.LookRotation(hit.normal));
}
}
Tick();
}
function Tick(){
yield WaitForSeconds(0.01);
Destroy(gameObject);
}
↧