if (first) { first = false; } else { allDesc.append((modifier.value < 0 ? " - " : " + ")); } allDesc.append(Math.abs(modifier.value)); allDesc.append(" ("); allDesc.append(modifier.desc); allDesc.append(")");
    private void recalculate() {        boolean first = true;        total = 0;        allDesc = new StringBuffer();                for (Iterator i = modifiers.iterator(); i.hasNext();) {            Modifier modifier = (Modifier)i.next();                        // check for break condition            if (modifier.value == IMPOSSIBLE || modifier.value == AUTOMATIC_FAIL             || modifier.value == AUTOMATIC_SUCCESS) {                total = modifier.value;                allDesc = new StringBuffer(modifier.desc);                break;            }                        // add modifier            total += modifier.value;                        // add desc            if (first) {                first = false;            } else {                allDesc.append((modifier.value < 0 ? " - " : " + "));            }            allDesc.append(Math.abs(modifier.value));            allDesc.append(" (");            allDesc.append(modifier.desc);            allDesc.append(")");        }    }