// Use this for initialization void Start() { if (HRezLaserList.Length > 0) { HighRezLaser = HRezLaserList[CurrentHRezLaser]; } cameraTransform = Camera.main.gameObject.transform; // Assign Targets to Beams for (int i = 0; i < HRezLaserList.Length; i++) { if (i == 0) { HRezLaserList[i].CurrentTarget = BeamTarget1Transform; } else if (i == 1) { HRezLaserList[i].CurrentTarget = BeamTarget2Transform; } else if (i == 2) { HRezLaserList[i].CurrentTarget = BeamTarget3Transform; } else if (i == 3) { HRezLaserList[i].CurrentTarget = BeamTarget4Transform; } else if (i == 4) { HRezLaserList[i].CurrentTarget = BeamTarget5Transform; } } }
private void UpdateMouseTargeting() { if (HighRezLaser == HRezLaserList[CurrentHRezLaser]) { if (!HRezLaserList[CurrentHRezLaser].LaserFiring) { mouseHit = new RaycastHit(); vRay = Camera.main.ScreenPointToRay(Input.mousePosition); if (Physics.Raycast(vRay, out mouseHit, 1000)) { HRezLaserList[CurrentHRezLaser].CurrentTarget.position = mouseHit.point; HRezLaserList[CurrentHRezLaser].FireLaser(); } } else { // Laser Already Firing Just Update Target Position Lerp mouseHit = new RaycastHit(); vRay = Camera.main.ScreenPointToRay(Input.mousePosition); if (Physics.Raycast(vRay, out mouseHit, 1000)) { HRezLaserList[CurrentHRezLaser].CurrentTarget.position = Vector3.Lerp(HRezLaserList[CurrentHRezLaser].CurrentTarget.position, mouseHit.point, TargetPointFollowSpeed * Time.deltaTime); } } } else { HighRezLaser = HRezLaserList[CurrentHRezLaser]; } }
IEnumerator flashMuzzle() { if (gun.prefabName == "Railgun") { WSP_HighRezLaser o = GetComponentInChildren <WSP_HighRezLaser>(); o.FireLaser(); } Vector3 rot = Vector3.zero; rot.z = Random.Range(0f, 180f); muzzleFlash.localEulerAngles = rot; muzzleFlash.localScale = new Vector3(Random.Range(1.00f, 1.20f), Random.Range(1.00f, 1.20f), Random.Range(0.75f, 1.50f)); muzzleFlash.gameObject.SetActive(true); yield return(new WaitForSeconds(muzzleFlashLength)); muzzleFlash.gameObject.SetActive(false); }
void Start() { parentHighRezLaser = gameObject.GetComponent <WSP_HighRezLaser>(); random = new System.Random((int)Time.realtimeSinceStartup); }
private void UpdateCurrentHRezLaser() { HighRezLaser = HRezLaserList[CurrentHRezLaser]; }