entity.setDone(true);
if ( setDone ) { entity.setDone(true); }
    private void processAttack(Entity entity, Vector vector) {        for (Enumeration i = vector.elements(); i.hasMoreElements();) {            EntityAction ea = (EntityAction)i.nextElement();            // is this the right entity?            if (ea.getEntityId() != entity.getId()) {                System.err.println("error: attack packet has wrong attacker");                continue;            }            if (ea instanceof PushAttackAction) {                // push attacks go the end of the displacement attacks                PushAttackAction paa = (PushAttackAction)ea;                entity.setDisplacementAttack(paa);                game.addCharge(paa);            } else if (ea instanceof DodgeAction) {                entity.dodging = true;            } else if (ea instanceof SpotAction) {                entity.setSpotting(true);            } else {                // add to the normal attack list.                game.addAction(ea);            }        }        // this entity is done for the round        entity.setDone(true);        entityUpdate(entity.getId());        // update all players on the attacks.  Don't worry about pushes being a        // "charge" attack.  It doesn't matter to the client.        send(createAttackPacket(vector, false));    }