// Use this for initialization void Start() { rec = RecolorManager.Get(); reclist = transform.parent.GetComponent <RecolorListener> (); txts = buttonTop.GetComponentsInChildren <TMPro.TextMeshProUGUI> (); src = gameObject.AddComponent <AudioSource> (); src.clip = sound; input = FindObjectOfType <InputManager> (); button = GetComponentInChildren <Button> (); camControl = FindObjectOfType <CameraController>(); Vector3 targetOffset = new Vector3(223, 234, 0); if ((float)Screen.width / Screen.height < 0.5f) { UnityEngine.UI.CanvasScaler cnv = positionRef.root.GetComponent <UnityEngine.UI.CanvasScaler> (); float canvasRatio = Mathf.Lerp(cnv.referenceResolution.x, cnv.referenceResolution.y, cnv.matchWidthOrHeight); float screenRatio = Mathf.Lerp(Screen.width, Screen.height, cnv.matchWidthOrHeight); scaleRatio = canvasRatio / screenRatio; //Debug.Log (Screen.width/Screen.height); targetOffset = new Vector3(150, 110, 0); } Vector3 b = buttonTop.rectTransform.TransformPoint(targetOffset); Vector2 screenPoint = camControl.WorldToUI(b); pos = screenPoint * scaleRatio; Debug.LogWarning("Bomb pos is " + pos); anchorPos = toShake.anchoredPosition; _charges = Persistence.bombs; Toggle(_charges > 0); UpdateUI(); }
public void Deregister(RecolorListener rl) { listeners.Remove(rl); }
public void Register(RecolorListener rl) { Init(); listeners.Add(rl); }