コード例 #1
0
    public override string ToString(Unit target)
    {
        int amount = StressDamage(target);

        return(string.Format("{0} {1} <color={2}></b>Stress<b></color>\n",
                             amount >= 0 ? "Deal" : "Recover", amount, ColorPallete.GetHexColor("Purple")));
    }
コード例 #2
0
 public override string ToString()
 {
     return(string.Format(
                "{0} <color={5}><b>Momentum</b></color>: Gain 1 stack when moving. Gives +{1} Dodge, +{2} Damage per stack.\n",
                stacks, dodge, damage, stacks * dodge, stacks * damage,
                ColorPallete.GetHexColor("Highlight Teal")));
 }
コード例 #3
0
    public override string ToString()
    {
        string block = amount == 1 ? "attack" : string.Format("{0} attacks", amount);

        return(string.Format("<color={2}><b>Block</b></color> the next {0} for {1} turns",
                             block, duration, ColorPallete.GetHexColor("Blue")));
    }
コード例 #4
0
 public override string ToString()
 {
     return(string.Format(
                "<color={2}><b>Inflame</b></color>: +{0} Damage, +{1}% Crit when attacking bleeding targets.\n",
                bonusDamage, bonusCrit,
                ColorPallete.GetHexColor("Highlight Red")));
 }
コード例 #5
0
 public override string ToString()
 {
     return(string.Format(
                "<color={2}><b>Constitution</b></color>: +{0} Max health, +{1} Heal per turn",
                bonusHealth, regen,
                ColorPallete.GetHexColor("Green")));
 }
コード例 #6
0
 public override string ToString()
 {
     return(string.Format(
                "{0} <color={4}><b>Focus</b></color>: Gain 1 stack when attacking marked targets. Gives +{1}% Crit per stack\n" +
                "<color={4}><b>Focus</b></color> : Gives +{3} accuracy against marked targets\n",
                stacks, critBonus, critBonus * stacks, markAccBonus,
                ColorPallete.GetHexColor("Red")));
 }
コード例 #7
0
 public override string ToString(Unit target)
 {
     if (amount > 0 && target.stats.modifiers.CanBuff)
     {
         return(ToString());
     }
     else
     {
         return(string.Format("<color={1}><b>Debuff</b></color>: {0}% chance\n",
                              100 - target.stats.GetStat(StatType.debuffResist), ColorPallete.GetHexColor("Orange")));
     }
 }
コード例 #8
0
 public void SetAbility(Ability a)
 {
     //reset
     abilityName.text   = "";
     usable.sprite      = null;
     targets.sprite     = null;
     abilityStats.text  = "";
     selfEffects.text   = "";
     targetEffects.text = "";
     if (a == null)
     {
         return;
     }
     abilityName.text = a.abilityName;
     usable.sprite    = a.usable.single;
     usable.color     = ColorPallete.GetColor("Highlight Blue");
     targets.sprite   = a.isAOE ? a.targetable.aoe : a.targetable.single;
     targets.color    = a.IsAttack ? ColorPallete.GetColor("Highlight Red") : ColorPallete.GetColor("Green");
     if (a.IsAttack)
     {
         Ability_Attack aa = (Ability_Attack)a;
         abilityStats.text = string.Format("<color={2}><b>Accuracy</b></color>: {0}{1}%\n",
                                           aa.accmod >= 0 ? "+" : "-", aa.accmod, ColorPallete.GetHexColor("Grey"));
         abilityStats.text += string.Format("<color={1}><b>Damage</b></color>: {0}%\n",
                                            aa.dmgmod * 100, ColorPallete.GetHexColor("Red"));
         if (aa.critmod != 0)
         {
             abilityStats.text += string.Format("<color={2}><b>Crit</b></color>: {0}{1}%\n",
                                                aa.critmod >= 0 ? "+" : "-", aa.critmod, ColorPallete.GetHexColor("Yellow"));
         }
     }
     foreach (Effect e in a.SelfBuffs)
     {
         if (selfEffects.text.Length == 0)
         {
             selfEffects.text = "Self: \n";
         }
         selfEffects.text += e.ToString();
     }
     foreach (Effect e in a.TargetBuffs)
     {
         {
             if (targetEffects.text.Length == 0)
             {
                 targetEffects.text = "Target: \n";
             }
             targetEffects.text += e.ToString();
         }
     }
 }
コード例 #9
0
 public override string ToString()
 {
     if (high)
     {
         return(string.Format(
                    "{0} <color={3}><b>Poise</b></color>: Grants +{1} Accuracy, +{2}% Crit.\n",
                    "Agressive", accuracy, crit,
                    ColorPallete.GetHexColor("Highlight Orange")));
     }
     else
     {
         return(string.Format(
                    "{0} <color={3}><b>Poise</b></color>: Grants +{1} Speed, +{2} Dodge.\n",
                    "Evasive", speed, dodge,
                    ColorPallete.GetHexColor("Highlight Teal")));
     }
 }
コード例 #10
0
 public override string ToString()
 {
     return(string.Format("<color={0}><b>Ironwall</b></color>: Unit will always counter attacks when defense is above 0.\n",
                          ColorPallete.GetHexColor("Blue")));
 }
コード例 #11
0
 public override string ToString()
 {
     return(string.Format("<color={2}><b>Guarded</b></color> by {0} for {1} turns",
                          defender != null ? defender.stats.GetName() : "unit", duration, ColorPallete.GetHexColor("Blue")));
 }
コード例 #12
0
 public override string ToString(Unit target)
 {
     return(string.Format("<color={1}><b>Bleed</b></color>: {0}% chance\n",
                          100 - target.stats.GetStat(StatType.bleedResist), ColorPallete.GetHexColor("Highlight Red")));
 }
コード例 #13
0
 public override string ToString()
 {
     return(string.Format("<color={2}><b>Bleed</b></color> {0} dmg for {1} rds\n",
                          amount, duration, ColorPallete.GetHexColor("Highlight Red")));
 }
コード例 #14
0
 public override string ToString()
 {
     return(string.Format("<color={0}><b>Stunned</b></color>: Skips next turn\n", ColorPallete.GetHexColor("Highlight Yellow")));
 }
コード例 #15
0
 public override string ToString()
 {
     return(string.Format("+{0} to <color={1}>Metal</color> reserves", amount, ColorPallete.GetHexColor("Yellow")));
 }
コード例 #16
0
 public override string ToString()
 {
     return(string.Format("<color={1}><b>Heal</b></color> {0} health\n", amount, ColorPallete.GetHexColor("Green")));
 }
コード例 #17
0
    public void SetAbility(Unit actor, Ability ability, Unit target)
    {
        currentAbility = ability;
        if (ability == null)
        {
            unitName.text = "";
            health.text   = "";
            effects.text  = "";
            return;
        }
        int   lines = 3;
        float width = 200f;
        bool  on    = gameObject.activeSelf;

        if (!on)
        {
            gameObject.SetActive(true);
        }

        unitName.text = target.stats.GetName();
        width         = Mathf.Max(LayoutUtility.GetPreferredWidth(unitName.rectTransform), width);
        Vector2Int hp = target.stats.Health();

        health.text  = string.Format("<color={2}><b>Health</b></color>: {0}/{1}", hp.x, hp.y, ColorPallete.GetHexColor("Green"));
        effects.text = "";
        if (actor == target)
        {
            foreach (Effect e in ability.SelfBuffs)
            {
                if (effects.text.Length == 0)
                {
                    effects.text = "Effects: \n";
                }
                effects.text += e.ToString();
                ++lines;
            }
            if (!ability.usable.self)
            {
                foreach (Effect e in ability.TargetBuffs)
                {
                    if (effects.text.Length == 0)
                    {
                        effects.text = "Effects: \n";
                    }
                    effects.text += e.ToString(target) + "\n";
                    ++lines;
                }
            }
        }
        else
        {
            if (ability.IsAttack)
            {
                Ability_Attack aa = (Ability_Attack)ability;
                effects.text = string.Format("<color={1}><b>Accuracy</b></color>: {0}%\n",
                                             aa.accmod + actor.stats.GetStat(StatType.acc), ColorPallete.GetHexColor("Grey"));
                Vector2Int dmg = aa.DamageRange(actor, target);
                effects.text += string.Format("<color={2}><b>Damage</b></color>: {0} - {1}\n", dmg.x, dmg.y, ColorPallete.GetHexColor("Red"));
                int crit = aa.critmod + actor.stats.GetStat(StatType.crit);
                lines += 3;
                if (crit > 0)
                {
                    effects.text += string.Format("<color={1}><b>Crit</b></color>: {0}%\n", crit, ColorPallete.GetHexColor("Yellow"));
                    ++lines;
                }
            }
            foreach (Effect e in ability.TargetBuffs)
            {
                if (effects.text.Length == 0)
                {
                    effects.text = "Effects: \n";
                }
                effects.text += e.ToString(target) + "\n";
                ++lines;
            }
        }

        width        = Mathf.Max(LayoutUtility.GetPreferredWidth(effects.rectTransform), width);
        rt.sizeDelta = new Vector2(width, lines * unitName.fontSize);
        if (!on)
        {
            gameObject.SetActive(false);
        }
    }
コード例 #18
0
 public override string ToString()
 {
     return(string.Format("Gain {0} <color={1}><b>Defense</b></color>\n",
                          amount, ColorPallete.GetHexColor("Blue")));
 }
コード例 #19
0
 public override string ToString()
 {
     return(string.Format("<color={2}><b>Move</b></color> {0} {1}\n",
                          Mathf.Abs(amount), amount > 0 ? "Forward" : "Backward", ColorPallete.GetHexColor("Teal")));
 }
コード例 #20
0
 public override string ToString(Unit target)
 {
     return(string.Format("<color={1}><b>Move</b></color>: {0}% chance\n",
                          100 - target.stats.GetStat(StatType.moveResist), ColorPallete.GetHexColor("Teal")));
 }
コード例 #21
0
 public override string ToString()
 {
     return(string.Format("<color={1}><b>Mark</b></color> for {0} turns",
                          duration, ColorPallete.GetHexColor("Red")));
 }
コード例 #22
0
 public override string ToString(Unit target)
 {
     return(string.Format("Clear all <color={0}><b>debuffs</b></color>\n",
                          ColorPallete.GetHexColor("Orange")));
 }