private void capture( Unit unit, State state ){
        state.setProvLoyalty(unit.getLoyalty());
        state.setInCapture(true);
        Turn.addEvent(new com.nasser.poulet.conquest.model.Event(1, state.getProductivity() , state, new Callback<State>(){
            public void methodCallback(State state) {
            if(state.isInCapture()){
                state.setInCapture(false);
                if(state.getLoyalty() != state.getProvLoyalty() && state.getLoyalty() != Loyalty.EMPTY && state.getLoyalty() != Loyalty.NONE) {
                	board.getStateArrayList()[state.getLoyalty().ordinal() - 2].remove(state);
                }
                state.setLoyalty(state.getProvLoyalty());
                board.getStateArrayList()[state.getLoyalty().ordinal() - 2].add(state);
                state.generateUnitSpawnCallback();
            }
            }
        }));
    }