public void FireLaser(Vector3 startPoint, Vector3 direction) { SetLaserStart(startPoint); RaycastHit hit; if (Physics.Raycast(startPoint, direction, out hit, maxDistance, LayerMask.GetMask("Default"))) { if (hit.collider) { PlayerController player = hit.collider.GetComponent <PlayerController>(); IceCubeController iceCube = hit.collider.GetComponent <IceCubeController>(); if (player) { player.Grow(growthDamage); } if (iceCube) { iceCube.Shrink(meltDamage); } SetLaserEnd(hit.point, hit.normal); SetActiveParticles(true); } } else { SetLaserEnd(transform.forward * maxDistance, Vector3.zero); SetActiveParticles(false); } }
private void Start() { GameOverText.SetActive(false); currentHealth = maxHealth; maxScale = transform.localScale.x - minimumScale; _icc = GetComponent <IceCubeController>(); iceJauge.value = 1; }
private float GetTargetVelocity() { IceCubeController icc = target.GetComponent <IceCubeController>(); if (icc != null) { return(icc.GetCurrentVelocity()); } return(0); }
private void OnTriggerEnter(Collider other) { IceCubeController icc = other.GetComponent <IceCubeController>(); if (icc != null) { icc.FullReset(); icc.EnableSimulation(false); other.GetComponent <EnableThugLife>().Activate(); } }