| | |
| | | { |
| | | } |
| | | |
| | | private float scaleOffect = 1.5f; |
| | | |
| | | /// <summary> |
| | | /// 当前的 |
| | | /// </summary> |
| | | /// <param name="x"></param> |
| | | /// <param name="y"></param> |
| | | /// <param name="text"></param> |
| | | public void moveBloodText( float x,float y,string text,bool crit = false ) |
| | | public void moveBloodText(float x, float y, string text, bool crit = false) |
| | | { |
| | | // 先设置Text的位置到一个标准位置 |
| | | Vector3 pos = bloodText.transform.position; |
| | |
| | | sval.x = 1.0f; |
| | | sval.y = 1.0f; |
| | | sval.z = 1.0f; |
| | | bloodText.transform.localScale = sval; |
| | | bloodText.transform.localScale = sval * scaleOffect; |
| | | |
| | | bloodText.text = text; |
| | | this.TextMove(bloodText,crit ); |
| | | this.TextMove(bloodText, crit); |
| | | } |
| | | |
| | | /// <summary> |
| | |
| | | Poolable.TryPool(gameObject); |
| | | } |
| | | |
| | | private void TextMove( Graphic graphic,bool crit = false ) |
| | | private void TextMove(Graphic graphic, bool crit = false) |
| | | { |
| | | //获得Text的rectTransform,和颜色,并设置颜色微透明 |
| | | RectTransform rect = graphic.rectTransform; |
| | |
| | | float baseTime = 0.3f; |
| | | if (crit) |
| | | baseTime = 0.2f; |
| | | float scaleUp = 1.8f; |
| | | float scaleUp = 1.8f * scaleOffect; |
| | | if (crit) |
| | | scaleUp = 2.2f; |
| | | scaleUp = 2.2f * scaleOffect; |
| | | float scaleVec = Screen.height / 2400f; |
| | | int basey = rd.Next( (int)(100*scaleVec),(int)(180*scaleVec) ); |
| | | if( crit ) |
| | | int basey = rd.Next((int)(100 * scaleVec), (int)(180 * scaleVec)); |
| | | if (crit) |
| | | basey = rd.Next((int)(150 * scaleVec), (int)(210 * scaleVec)); |
| | | |
| | | int basex; |
| | |
| | | |
| | | Tweener textMove01 = rect.DOMoveY(rect.position.y + basey, baseTime); |
| | | Tweener textMovex = rect.DOMoveX(rect.position.x + basex, baseTime); |
| | | Tweener textMove02 = rect.DOMoveY(rect.position.y + basey + (int)(60*scaleVec), baseTime); |
| | | Tweener textMove02 = rect.DOMoveY(rect.position.y + basey + (int)(60 * scaleVec), baseTime); |
| | | Tweener textColor01 = graphic.DOColor(new Color(color.r, color.g, color.b, 1), baseTime); |
| | | Tweener textColor02 = graphic.DOColor(new Color(color.r, color.g, color.b, 0), baseTime); |
| | | Tweener textScale = rect.DOScale(scaleUp, 0.25f); |
| | |
| | | textMoveSequence.Join(textColor02); |
| | | textMoveSequence.Join(textScale); |
| | | textMoveSequence.AppendCallback(Remove); |
| | | |
| | | |
| | | } |
| | | } |