Esempio n. 1
0
    // 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);
 }