private IEnumerator delayShowTeamACE() { // 延迟显示 yield return(new WaitForSeconds(1f)); Debug.Log("OnTeamACE"); if (m_EffectParam != null) { UEffectManager.Instance.DestroyEffect(UEffectType.UET_EffectPrefab, ref m_EffectParam); m_EffectParam = null; } SWar2ViewMsgAce aceInfo = LogicDataCenter.recordTableDataManager.SelfCampACE; UGradient gradient = aceRankText.GetComponent <UGradient>(); gradient.enabled = false; if (aceInfo.isWin > 0) { m_EffectParam = new UEffectPrefabParam( _eType: UEffectPrefabType.UEPT_EndOfBattleWar_Win, _tfAttachParent: AceFrame.transform, _bAutoDestroy: false); UEffectManager.Instance.CreateEffect(UEffectType.UET_EffectPrefab, ref m_EffectParam); exitWarSuccessBtn.gameObject.SetActive(true); exitWarFailBtn.gameObject.SetActive(false); aceTitleText.text = "“大吉大利,今晚吃鸡!”\n"; gradient.SetGradientColorKey(new Color32(0xea, 0xb8, 0x30, 0xff), new Color32(0xff, 0xff, 0xff, 0xff)); } else { m_EffectParam = new UEffectPrefabParam( _eType: UEffectPrefabType.UEPT_EndOfBattleWar_Failure, _tfAttachParent: AceFrame.transform, _bAutoDestroy: false); UEffectManager.Instance.CreateEffect(UEffectType.UET_EffectPrefab, ref m_EffectParam); exitWarSuccessBtn.gameObject.SetActive(false); exitWarFailBtn.gameObject.SetActive(true); aceTitleText.text = "“再接再厉,早日吃鸡!”"; gradient.SetGradientColorKey(new Color32(0x7f, 0x9e, 0xb6, 0xff), new Color32(0xff, 0xff, 0xff, 0xff)); } DeadFrame.SetActive(false); AceFrame.SetActive(true); gradient.enabled = true; WarRecordTableDataManager.WarPersonInfo personInfo = LogicDataCenter.recordTableDataManager.getWarPersonInfoByPDBID((ulong)LogicDataCenter.playerSystemDataManager.SelfAcotrID); aceKDAText.text = string.Format("淘汰人数:{0}人, 助攻次数:{1}次", personInfo.nKillNum, personInfo.nAssists); aceRankText.text = string.Format("第{0}名", LogicDataCenter.recordTableDataManager.SelfCampACE.nRank); }
//根据类型选择飘字样式及动画效果 private void ChooseFontStyle(WarFloatFontType type, string val) { if (null == t_txt || null == gradient || null == icon || null == m_Anim) { return; } t_txt.color = Color.white; t_txt.fontSize = m_Anim.fontSize; gradient.SetGradientColorKey(m_Anim.topColor, m_Anim.bottomColor); //gradient.vertex1 = m_Anim.topColor; //gradient.vertex2 = m_Anim.bottomColor; icon.gameObject.SetActive(false); Vector3 temp = t_txt.rectTransform.anchoredPosition; switch (type) { case WarFloatFontType.Fatal: { t_txt.text = val; if (null != FatalIcon) { int size = m_Anim.fontSize - 4; icon.sprite = FatalIcon; icon.rectTransform.sizeDelta = new Vector2(size, size); icon.gameObject.SetActive(true); } } break; case WarFloatFontType.TrueDamage: case WarFloatFontType.MagicAttack: case WarFloatFontType.PhysicalAttack: t_txt.text = val; break; case WarFloatFontType.Cure: t_txt.text = "+" + val; break; case WarFloatFontType.Coin: { t_txt.text = "+" + val; if (null != coinIcon) { int size = m_Anim.fontSize - 4; icon.sprite = coinIcon; icon.rectTransform.sizeDelta = new Vector2(size, size); icon.gameObject.SetActive(true); } } break; case WarFloatFontType.LevelUp: t_txt.text = "升 级"; break; default: break; } fontFrame.localScale = new Vector3(m_Anim.expandMinPercent, m_Anim.expandMinPercent, m_Anim.expandMinPercent); m_Sequence = DOTween.Sequence(); m_Sequence.Append(fontFrame.DOScale(m_Anim.expandMaxPercent, m_Anim.expandTime)) .Insert(0, fontFrame.DOJumpAnchorPos(new Vector2(fontFrame.anchoredPosition.x + m_Anim.xOffset, fontFrame.anchoredPosition.y), m_Anim.jumpPower, 1, m_Anim.disappearTime).SetDelay(m_Anim.expandTime + m_Anim.stagnationTime)) .Insert(0, fontFrame.DOAnchorPosY(fontFrame.anchoredPosition.y + m_Anim.yOffset, m_Anim.disappearTime).SetDelay(m_Anim.expandTime + m_Anim.stagnationTime)) .Insert(0, t_txt.DOFade(0, m_Anim.disappearTime).SetDelay(m_Anim.expandTime + m_Anim.stagnationTime)) .Insert(0, fontFrame.DOScale(0, m_Anim.disappearTime).SetDelay(m_Anim.expandTime + m_Anim.stagnationTime)) .OnComplete(SequenceComplete); }