private void think() {
        //TODO: instead of setNextPhase, pass priority
        final String phase = AllZone.getPhase().getPhase();

        if (AllZone.getStack().size() > 0)
            computer.stack_not_empty();
        else if (phase.equals(Constant.Phase.Main1)) {
            Log.debug("Computer main1");
            computer.main1();
        } else if (phase.equals(Constant.Phase.Combat_Begin)) {
            computer.begin_combat();
        } else if (phase.equals(Constant.Phase.Combat_Declare_Attackers)) {
            computer.declare_attackers();
        } else if (phase.equals(Constant.Phase.Combat_Declare_Attackers_InstantAbility)) {
            computer.declare_attackers_after();
        } else if (phase.equals(Constant.Phase.Combat_Declare_Blockers_InstantAbility)) {
            computer.declare_blockers_after();
        } else if (phase.equals(Constant.Phase.Combat_End)) {
            computer.end_of_combat();
        } else if (phase.equals(Constant.Phase.Main2)) {
            Log.debug("Computer main2");
            computer.main2();
        } else
            computer.stack_not_empty();

    }//think