So here is my gun script but for some reason I keep getting this error.
Unknown identifier: ‘layerMask’ (line 56)
One of my friends helped me out on this script but he hasn’t been online for a while so I decided to turn here for help.
var Range : float = 1000;
var Force : float = 1000;
var Clips : int = 3;
var BulletsPerClip : int = 10;
var ReloadTime : float = 2;
var BulletsLeft : int = 0;
var ShootTimer : float = 0;
var ShootCooler : float = 0.9;
public var ShootAudio : AudioClip;
public var ReloadAudio : AudioClip;
var Damage : int = 10;
var cam : GameObject;
function Start ()
{
BulletsLeft = BulletsPerClip;
cam = GameObject.FindWithTag("MainCamera");
}
function Update ()
{
if(ShootTimer > 0){
ShootTimer -= Time.deltaTime;
}
if (ShootTimer < 0){
ShootTimer =0;
}
if (Input.GetButtonDown("Fire1") BulletsLeft){
if(ShootTimer == 0){
PlayShootAudio();
RayShoot();
ShootTimer = ShootCooler;
}
}
}
function RayShoot ()
{
//GameObject.Find("GunName").animation.Play("Shoot");
var hit : RaycastHit;
var DirectionRay = cam.transform.TransformDirection(Vector3.forward);
var position = cam.transform.position;
Debug.DrawRay(transform.position, DirectionRay * Range, Color.red);
if (Physics.Raycast(position, DirectionRay, hit, range, layerMask.value)){
if(hit.rigidbody){
hit.rigidbody.AddForceAtPosition(DirectionRay * Force, hit.point);
hit.collider.SendMessageUpwards("ApplyDamage", Damage, SendMessageOptions.DontRequireReceiver);
}
}
BulletsLeft --;
if (BulletsLeft < 0){
BulletsLeft = 0;
}
if (BulletsLeft == 0){
Reload();
}
}
function Reload ()
{
//GameObject.Find("GunName").animation.Play("Reload");
PlayReloadAudio();
yield WaitForSeconds(ReloadTime);
if (Clips > 0){
BulletsLeft = BulletsPerClip;
Clips -= 1;
}
}
function PlayShootAudio ()
{
audio.PlayOneShot(ShootAudio);
}
function PlayReloadAudio ()
{
audio.PlayOneShot(ReloadAudio);
}