Ejemplo n.º 1
0
        public void loadLabelEffect(cmd_war_add_label label, int nLabelCount)
        {
            SSchemeLabelConfig labelConfig = WarSupportPlayerConfigPage.Instance.GetLabelConfig(label.nLabelID);

            if (labelConfig == null)
            {
                return;
            }

            // 格式:“标签名称 +2”
            string labelStr = labelConfig.labelName + " +" + nLabelCount;

            Text labelEffectText = ResNode.InstantiateRes <Text>(DefaultLabelEffectText);

            labelEffectText.gameObject.SetActive(true);
            labelEffectText.gameObject.transform.SetParent(DefaultLabelEffectText.transform.parent, false);

            labelEffectText.text = labelStr;

            // 2s后变透明
            DOTween.ToAlpha(() => labelEffectText.color, x => labelEffectText.color = x, 0f, 2f).Play();
            // 2s后升高100像素
            labelEffectText.transform.DOBlendableLocalMoveBy(new Vector3(0f, 200f, 0), 2f).OnComplete(() =>
            {
                var temp = labelEffectText.gameObject;
                ResNode.DestroyRes(ref temp);
            });
        }
Ejemplo n.º 2
0
        public void onClick()
        {
            if (m_Pdbid <= 0 || !m_isShowLabel || m_curLabelList == null)
            {
                return;
            }

            // 显示点击特效
            ClickEffect.gameObject.SetActive(true);

            // 播放点击音效
            SSchemeUSoundData soundData = new SSchemeUSoundData();

            if (UISoundConfig.Instance.GetData("support", "Support_click", ref soundData))
            {
                SoundManager.CreateUISound(soundData.USoundID);
            }

            // 延迟隐藏点赞按钮,等点击特效播放
            StartCoroutine(delayHideAllVoteBtn());

            int nCurLabelID = m_curLabelList[m_curLabel];

            cmd_war_add_label msgInfo = new cmd_war_add_label();

            msgInfo.targetPdbid = m_Pdbid;
            msgInfo.nLabelID    = nCurLabelID;


            EntityEventHelper.Instance.SendCommand <cmd_war_add_label>(EntityFactory.MainHeroID, EntityLogicDef.ENTITY_CMD_WAR_ADD_LABEL, ref msgInfo);
        }
Ejemplo n.º 3
0
        // 获取最新的标签
        public bool getLastPlayerLabel(uint nPdbid, out cmd_war_add_label lastLabel, out int nLabelCount)
        {
            lastLabel   = new cmd_war_add_label();
            nLabelCount = 0;

            if (m_LastLabelList.Count <= 0)
            {
                return(false);
            }

            lastLabel = m_LastLabelList.Peek();
            if (lastLabel.targetPdbid != nPdbid)
            {
                return(false);
            }

            lastLabel   = m_LastLabelList.Dequeue();
            nLabelCount = m_dicLabelData[lastLabel.targetPdbid][lastLabel.nLabelID];

            return(true);
        }
Ejemplo n.º 4
0
        public void recvAddLabel(cmd_war_add_label data)
        {
            if (data.targetPdbid <= 0)
            {
                Debug.LogError("WarLabelDataManger::recvAddLabel, data.targetPdbid <= 0");
                return;
            }


            uint uTargetPdbid = data.targetPdbid;
            int  nLabelID     = data.nLabelID;

            // 获取某个玩家本次的标签信息
            Dictionary <int, int> outLabelInfo;

            if (!m_dicLabelData.TryGetValue(uTargetPdbid, out outLabelInfo))
            {
                outLabelInfo = new Dictionary <int, int>();
                m_dicLabelData.Add(uTargetPdbid, outLabelInfo);
            }

            // 判断该玩家是否有该标签信息
            if (!outLabelInfo.ContainsKey(nLabelID))
            {
                outLabelInfo.Add(nLabelID, 0);
            }

            outLabelInfo[nLabelID]++;

            // 保存最新的标签
            m_LastLabelList.Enqueue(data);

            UAddLabelMsgData msgData = new UAddLabelMsgData();

            msgData.msgID        = (int)WndMsgID.WND_MSG_WAR_HAS_ADD_LABEL;
            msgData.nLabelID     = data.nLabelID;
            msgData.operatorName = data.szOperatorName;
            msgData.targetName   = data.szTargetName;
            UISystem.Instance.SendWndMessage(WndMsgID.WND_MSG_WAR_HAS_ADD_LABEL, msgData);
        }