コード例 #1
0
 public override void executeAction()
 {
     foreach (Chara chara in targetList)
     {
         if (!chara.isEnemy && chara.HPcurr > 0)
         {
             StatusEffect se = new Ef_AtkDOWN();
             se.InitializeSE(level, dur);
             chara.InflictStatus(se);
         }
     }
 }
コード例 #2
0
 public override void executeAction()
 {
     foreach (Chara chara in targetList)
     {
         if (!chara.isEnemy && chara.HPcurr > 0)
         {
             StatusEffect se = new Ef_AtkDOWN();
             se.InitializeSE(level, duration);
             chara.TakeDamage(CalculateDamage(source.atk / 2, chara));
             chara.InflictStatus(se);
         }
     }
 }
コード例 #3
0
    public override void executeAction()
    {
        StatusEffect se = new Ef_AtkDOWN();

        se.InitializeSE(2, 1);
        source.InflictStatus(se);
        se = new Ef_AtkUP();
        se.InitializeSE(5, 2);
        foreach (Chara chara in targetList)
        {
            if (chara.isEnemy && chara.HPcurr > 0 && chara != source)
            {
                chara.InflictStatus(se);
            }
        }
    }
コード例 #4
0
 public override void executeAction()
 {
     if (source.MPcurr < mpCost)
     {
         message = source.name + " has not enough MP!\n";
     }
     else
     {
         source.MPcurr -= mpCost;
         damage         = CalculateDamage(source.atk, target);
         message        = target.name + " is attacked for " + damage + " and inflicted SPD and ATK DOWN!\n";
         target.TakeDamage(damage);
         StatusEffect se = new Ef_AtkDOWN();
         se.InitializeSE(level, duration);
         target.InflictStatus(se);
         se = new Ef_DefDOWN();
         se.InitializeSE(level, duration);
         target.InflictStatus(se);
     }
 }
コード例 #5
0
 public override void executeAction()
 {
     if (source.MPcurr < mpCost)
     {
         message = source.name + " does not have enough MP!\n";
     }
     else
     {
         source.MPcurr -= mpCost;
         foreach (Chara chara in allChara)
         {
             if (chara.isEnemy && chara.HPcurr > 0)
             {
                 StatusEffect se = new Ef_AtkDOWN();
                 se.InitializeSE(level, duration);
                 damage = CalculateDamage(source.atk, chara);
                 chara.TakeDamage(damage);
                 chara.InflictStatus(se);
             }
         }
     }
 }
コード例 #6
0
    public override void executeAction()
    {
        StatusEffect se  = new Ef_AtkDOWN();
        StatusEffect se2 = new Ef_SpdDOWN();
        StatusEffect se3 = new Ef_DefDOWN();

        se.InitializeSE(level, dur);
        se2.InitializeSE(level, dur);
        se3.InitializeSE(level, dur);

        List <Chara> viableTarget = new List <Chara>();

        foreach (Chara chara in targetList)
        {
            if (!chara.isEnemy && chara.HPcurr > 0)
            {
                viableTarget.Add(chara);
            }
        }
        target = viableTarget[Random.Range(0, viableTarget.Count)];
        target.InflictStatus(se);
        target.InflictStatus(se2);
        target.InflictStatus(se3);
    }