Ejemplo n.º 1
0
    void OnDestroy()
    {
        HideDialogBubble(0);

        if (m_hpBarScript != null)
        {
            m_hpBarScript.SetTargetActor(null);
            m_hpBarScript = null;
        }

        if (mTextObject != null)
        {
            // 取消激活VerticalLayoutGroup
            var layout_trans = mTextObject.transform.Find("Layout");
            if (layout_trans != null)
            {
                var vert_layout = layout_trans.GetComponent <VerticalLayoutGroup>();
                if (vert_layout != null)
                {
                    if (vert_layout.enabled)
                    {
                        vert_layout.enabled = false;
                    }
                }
            }

            if (mDefaultFontSize != 0)
            {
                FontSize = mDefaultFontSize;
            }

            ObjCachePoolMgr.Instance.RecyclePrefab(mTextObject, mPoolType, mPoolKey);
            mTextObject = null;
        }

        mTextString = "";

        if (timer != null)
        {
            timer.Destroy();
            timer = null;
        }
    }
Ejemplo n.º 2
0
    void Init()
    {
        mTextObject = ObjCachePoolMgr.Instance.LoadFromCache(mPoolType, mPoolKey) as GameObject;
        if (mTextObject == null)
        {
            mTextObject = (GameObject)GameObject.Instantiate(mHudActorWin.TextObj);

            PoolGameObject pg = mTextObject.AddComponent <PoolGameObject>();
            pg.poolType = mPoolType;
            pg.key      = mPoolKey;
        }

        Transform textTrans = mTextObject.transform;

        textTrans.SetParent(mHudActorWin.TextRootTrans);
        textTrans.localPosition = Vector3.zero;
        textTrans.localScale    = mScale;

        // 激活VerticalLayoutGroup
        var layout_trans = textTrans.Find("Layout");

        if (layout_trans != null)
        {
            CommonTool.SetActive(layout_trans.gameObject, true);
            var vert_layout = layout_trans.GetComponent <VerticalLayoutGroup>();
            if (vert_layout != null)
            {
                if (!vert_layout.enabled)
                {
                    vert_layout.enabled = true;
                }
            }
        }

        mTextObject.SetActive(true);
        mTextLabel = UIHelper.FindChild(textTrans, "TextLabel").GetComponent <Text>();
        if (mTextLabel != null)
        {
            mDefaultFontSize = mTextLabel.fontSize;                                                      // 保存默认的字体大小
        }
        mGuildNameTextLabel = UIHelper.FindChild(textTrans, "GuildNameTextLabel").GetComponent <Text>(); //帮派名
        mMateNameTextLabel  = UIHelper.FindChild(textTrans, "MateNameTextLabel").GetComponent <Text>();  //帮派名
        mRankTextLabel      = UIHelper.FindChild(textTrans, "RankTextLabel").GetComponent <Text>();      //排名
        mHangUpTextLabel    = UIHelper.FindChild(textTrans, "HangUpTextLabel").GetComponent <Text>();    //挂机中
        mTextLabel.text     = mTextString;
        mGuildNameTextLabel.gameObject.SetActive(false);
        mMateNameTextLabel.gameObject.SetActive(false);
        mRankTextLabel.gameObject.SetActive(false);
        mHangUpTextLabel.gameObject.SetActive(false);
        mBGSprite          = UIHelper.FindChild(textTrans, "BGSprite").GetComponent <Image>();
        mPreBGSprite       = UIHelper.FindChild(textTrans, "PreBGSprite").GetComponent <Image>();
        mPeakTeamIconImage = UIHelper.FindChild(textTrans, "PeakTeamIconImage").GetComponent <Image>();
        mTeamIconImage     = UIHelper.FindChild(textTrans, "TeamIconImage").GetComponent <Image>();
        mAffiliationPanel  = UIHelper.FindChild(textTrans.gameObject, "AffiliationPanel").transform;
        mHpBar             = UIHelper.FindChild(textTrans.gameObject, "PlayerHpBar").transform;
        mHpBar.gameObject.SetActive(false);
        mHpBarForegroundFillImage = mHpBar.Find("Foreground/Fill Area/Fill").GetComponent <Image>();

        mHonorPanel = UIHelper.FindChild(textTrans, "HonorPanel");
        mHonorPanel.SetActive(false);

        mHonorIcon = UIHelper.FindChild(textTrans, "HonorIcon").GetComponent <Image>();
        mHonorIcon.gameObject.SetActive(true);

        mTitleIcon = UIHelper.FindChild(textTrans, "TitleIcon").GetComponent <Image>();
        mTitleIcon.gameObject.SetActive(false);

        mTitleEffect = mTitleIcon.transform.Find("Effect").GetComponent <RawImage>();
        mTitleEffect.gameObject.SetActive(false);

        m_hpBarScript = mHpBar.gameObject.GetComponent <UIPlayerHpBar>();
        if (m_hpBarScript == null)
        {
            m_hpBarScript = mHpBar.gameObject.AddComponent <UIPlayerHpBar>();
        }

        DialogBubbleParent = UIHelper.FindChild(textTrans.gameObject, "ChatMsgBg").transform;
        DialogBubbleText   = UIHelper.FindChild(textTrans.gameObject, "ChatMsgText").GetComponent <EmojiText>();
        DialogChatMsgArrow = UIHelper.FindChild(textTrans.gameObject, "ChatMsgArrow").transform;
        mButton            = textTrans.Find("Button").GetComponent <Button>();
        mButton.gameObject.SetActive(false);
        mTrans = textTrans;

        mOwnerTrans = transform;

        if (mStyleInfo != null)
        {
            mBGSprite.gameObject.SetActive(mStyleInfo.IsShowBg);
            mPreBGSprite.gameObject.SetActive(mStyleInfo.IsShowBgPreHead);
            mTeamIconImage.gameObject.SetActive(mStyleInfo.IsShowTeamIcon);
            IsShowAffiliationPanel = mStyleInfo.IsShowAffiliationPanel;
        }
        else
        {
            mBGSprite.gameObject.SetActive(false);
            mPreBGSprite.gameObject.SetActive(false);
            IsShowAffiliationPanel = false;
            mTeamIconImage.gameObject.SetActive(false);
        }
        mPeakTeamIconImage.gameObject.SetActive(false);

        mMaxVisibleDistanceSquare = GameConstHelper.GetFloat("GAME_MWAR_ACTOR_HEAD_TEXT_MAX_VISIBLE_DISTANCE_SQUARE");
    }