Exemple #1
0
    void Start()
    {
        float maxScreenDimension = Mathf.Max(Screen.width, Screen.height);

        //Character Image
        if (characterImage)
        {
            characterImage.rectTransform.sizeDelta = new Vector2(maxScreenDimension * characterImageScaleX,
                                                                 maxScreenDimension * characterImageScaleY);

            characterImage.rectTransform.position = new Vector2(characterImage.rectTransform.rect.width + xOffset,
                                                                characterImage.rectTransform.rect.height + yOffset);
        }
        else
        {
            Debug.LogError("Character Image Not Found.");
        }

        //Health Bar
        if (healthBar)
        {
            uiFillbar = healthBar.GetComponent <UIFillBar>();

            RectTransform rt           = (RectTransform)healthBar.transform;
            float         scaleFactorX = characterImage.rectTransform.rect.width / rt.rect.width;
            float         scaleFactorY = scaleFactorX / healthBarWidthHeightRatio;

            healthBar.transform.localScale = new Vector2(scaleFactorX, scaleFactorY);

            healthBar.transform.position = new Vector2(characterImage.rectTransform.position.x + xOffset,
                                                       1.5f * characterImage.rectTransform.position.y + yOffset);
        }
        else
        {
            Debug.LogError("Healthbar GameObject Not Found.");
        }

        //Medic Panel
        if (medicPanel)
        {
            RectTransform rt = (RectTransform)medicPanel.transform;
            float         medicalPanelWidth  = rt.rect.width * medicPanel.transform.localScale.x;
            float         medicalPanelHeight = rt.rect.height * medicPanel.transform.localScale.y;
            medicPanel.transform.position = new Vector2(Screen.width - medicalPanelWidth - xOffset,
                                                        medicalPanelHeight + yOffset);
        }
        else
        {
            Debug.LogError("Medic Panel Not Found.");
        }

        //Defense Panel
        if (defensePanel)
        {
            RectTransform rt = (RectTransform)defensePanel.transform;
            float         defensePanelWidth  = rt.rect.width * defensePanel.transform.localScale.x;
            float         defensePanelHeight = rt.rect.height * defensePanel.transform.localScale.y;
            rt = (RectTransform)medicPanel.transform;
            defensePanel.transform.position = new Vector2(Screen.width - defensePanelWidth - rt.rect.width - xOffset,
                                                          defensePanelHeight + yOffset);
        }
        else
        {
            Debug.LogError("Defense Panel Not Found.");
        }
    }
 private void Awake()
 {
     _forceBarFill = GetComponent <UIFillBar>();
     _eventService = ServiceLocator.Resolve <IEventService>();
 }