Beispiel #1
0
        public static int GetLayoutLevel(FightEffectType type)
        {
            if (m_db_layout == null)
            {
                m_db_layout = DBManager.Instance.GetDB <DBFightEfffectLayout>();
            }
            int result = 0;
            var item   = m_db_layout.GetOneItem(type.ToString());

            if (item != null)
            {
                result = item.Level;
            }
            return(result);
        }
Beispiel #2
0
        public static void SetEffectValue(FightEffectType effectType, Text valueLabel, long value = 0, bool show_percent = false, string push_str = "")
        {
            bool must_be_damage = false;

            if (effectType == FightEffectType.BounceDamage)
            {
                must_be_damage = true;
                if (value > 0)
                {
                    value = -value;
                }
            }
            string value_string;

            if (show_percent)
            {
                if (value > 0)
                {
                    value_string = string.Format("+{0}%", value);
                }
                else
                {
                    value_string = string.Format("{0}%", value);
                }
            }
            else
            {
                if (value > 0)
                {
                    value_string = string.Format("+{0}", value);
                }
                else
                {
                    value_string = string.Format("{0}", value);
                }
            }

            switch (effectType)
            {
            //ÓÐÊý×Ö£¬²»°üº¬¡°ÎÄ×Ö¡±
            case FightEffectType.EnemyDamage:  //¼¼ÄÜÉ˺¦
            case FightEffectType.OurDamage:    //×ÔÉíÉ˺¦
            case FightEffectType.BounceDamage: //É˺¦·´µ¯
            case FightEffectType.AddHp:        //¼ÓѪ
            case FightEffectType.AddMp:        //ȯ˦
            case FightEffectType.AddSp:        //SP»ñµÃ
                if (valueLabel != null)
                {
                    valueLabel.text = value_string;
                }
                break;

            case FightEffectType.Attendant_damage:       //ħÆÍÉ˺¦
                if (valueLabel != null)
                {
                    valueLabel.text = xc.TextHelper.GetConstText("CODE_TEXT_LOCALIZATION_25") + value_string;    // Ó¡ÓÃÀ´±íʾ½ÅӡͼƬ
                }
                break;

            //ÓС°ÎÄ×Ö¡±£¨²»ÐèÒªÐ޸ģ©£¬ÓÐÊý×Ö
            case FightEffectType.CriticEnemyDamage:     //±©»÷É˺¦
            case FightEffectType.CriticAttendantDamage: //ħÆͱ©»÷É˺¦
            case FightEffectType.Accelerate:            //Òƶ¯¼ÓËÙ
            case FightEffectType.AddExp:                //¾­Ñé»ñµÃ
            case FightEffectType.AttackSp:              //¹¥ËÙ
            case FightEffectType.FollowAttack:          // ×·ÃüÒ»»÷
                if (valueLabel != null)
                {
                    valueLabel.text = value_string;
                }
                break;

            //Ö»ÓС°ÎÄ×Ö¡±£¬²»°üº¬ÈκÎÊý×Ö
            case FightEffectType.Dodge:        //ÉÁ±Ü
            case FightEffectType.AbsoluteDoge: // ¾ø¶ÔÉÁ±Ü
            case FightEffectType.Parry:        //¸ñµ²
            case FightEffectType.Invincible:   //ÎÞµÐ
            case FightEffectType.Immune:       //ÃâÒß
            case FightEffectType.OneHitKill:   //նɱ
            case FightEffectType.DamageDrain:  //É˺¦ÎüÊÕ
                break;

            default:
                Debug.LogError(string.Format("undefined FightEffectType {0}", effectType.ToString()));
                break;
            }

            if (push_str != null && push_str != "" && valueLabel != null)
            {
                valueLabel.text = valueLabel.text + push_str;
            }
        }