bool duel::can_change_state_to( const state_t& new_state ) { if (m_states.empty()) { return true; } return m_states.back()->is_valid_state_change_to(new_state->name()); }