Exemplo n.º 1
0
    public void ShowAttDamageNumber(int weaponDamage, bool isCritical = false, int elementDamage = 0, CreatureElementTypes type = CreatureElementTypes.Fire)
    {
        //Logger.LogWarning("weapon damage = {0} element damage = {1}  element type = {2}", weaponDamage,elementDamage,type);
        InitComponent();
        gameObject.SetActive(true);
        InitTextData();
        EnumDamageDisplayType t = (weaponDamage > 0 ? EnumDamageDisplayType.Attack : EnumDamageDisplayType.None) | (elementDamage > 0 ? EnumDamageDisplayType.Element : EnumDamageDisplayType.None);

        SetDamageParentVisible(t);
        SetNormalTextData(weaponDamage, isCritical);
        SetElementDamageTextData(type, elementDamage);
        m_tween?.PlayForward();
    }
Exemplo n.º 2
0
    private Text GetTargetText(EnumDamageDisplayType type, int childIndex)
    {
        Text[] texts = null;
        switch (type)
        {
        case EnumDamageDisplayType.Attack: texts = attackTexts; break;

        case EnumDamageDisplayType.Element: texts = elementTexts; break;

        case EnumDamageDisplayType.Buff: texts = buffTexts; break;
        }

        if (texts != null && childIndex < texts.Length)
        {
            return(texts[childIndex]);
        }
        else
        {
            Logger.LogWarning("try to get damage number text [type:{0} index:{1}] failed", type, childIndex);
            return(null);
        }
    }
Exemplo n.º 3
0
 private void SetDamageParentVisible(EnumDamageDisplayType type = EnumDamageDisplayType.None)
 {
     attackParent.SetActive((type & EnumDamageDisplayType.Attack) > 0);
     elementParent.SetActive((type & EnumDamageDisplayType.Element) > 0);
     buffParent.SetActive((type & EnumDamageDisplayType.Buff) > 0);
 }