Exemplo n.º 1
0
        bool findSkill()
        {
            if (!checkStamina())
            {
                //didn't have enough stamina to do shit, just rest instead
                owner.rest();
                return(true);
            }

            if (!intelligencePull())
            {   //chaos didn't overtake them, use pulls
                determinePulls();
                checkPulls();
                do
                {   //keep trying to figure out the skill until we do
                    decideSkill();
                } while (!testSkill());


                if (skillToUse.targetNumber == "all")
                {   //skill just effects all of a side, so no need to determine target
                    switch (skillToUse.targetGroup)
                    {
                    case "enemies":
                        targets.AddRange(BC.PCS);
                        break;

                    case "allies":
                        targets.AddRange(BC.NPCS);
                        break;

                    case "self":
                        targets.Add(owner);
                        break;
                    }
                    if (skillToUse.use(owner, targets))
                    {
                        return(true);
                    }
                }
                else
                {
                    if (skillToUse.use(owner, findTarget()))
                    {
                        return(true);
                    }
                }
            }

            else
            {   //Chaos!! just use random shit on random guys!
                skillToUse = randomTurn();
                if (skillToUse.use(owner, randomTarget()))
                {
                    return(true);
                }
            }
            //all failed, return false
            return(false);
        }
Exemplo n.º 2
0
 public void getTargets(Skill sk, List <Character> dialogTargets)
 {
     //Combat.output(dialogTargets.Count.ToString()+" Targets recieved!");
     if (sk.use(currentCharacter, dialogTargets))
     {
         //if the skill was used successfully, find the next turn.
         update();
         findTurn();
     }
 }