using System.Collections; using System.Collections.Generic; using UnityEngine; public class PlayerController : MonoBehaviour { public bool isLocked = false; public float power; public float radius; public float time; public GameObject waveRing; void Start() { NotificationServer.register("show GameUI", showGameUI); NotificationServer.register("hide GameUI", hideGameUI); } // Update is called once per frame void Update () { if (Input.GetButtonDown("Fire1") && !isLocked) { Debug.Log("Click"); RaycastHit hit; Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition); LayerMask rayMask = (1 << 4); Debug.DrawRay(ray.origin, ray.direction * 100, Color.green); if (Physics.Raycast(ray, out hit, Mathf.Infinity,rayMask)) { WaterController waterScript = hit.collider.gameObject.GetComponent(); Debug.DrawLine(Camera.main.transform.position, hit.point, Color.red,1); Debug.Log("I hit: " + hit.transform.name); if (waterScript != null) waterScript.CreateWave(hit.point, radius, power); } } } private void showGameUI() { Debug.Log("UI open"); isLocked = false; } private void hideGameUI() { Debug.Log("UI close"); isLocked = true; } }