That is what I would indeed expect for your coding. The problem is that you can run_dialog(0) twice. In your conditional statement, use the variable choice instead of run_dialog. It should read:
Code:
beginstate 10; reset_dialog(); add_dialog_str(0, "text", 0); add_dialog_str (1, "text", 0); add_dialog_choice (0, "Yes"); add_dialog_choice (1, "No"); choice = run_dialog(0); if (choice ==1) { set_flag (0, 1, 1); set_state_continue(11); }break;beginstate 11; reset_dialog (); add_dialog_str (0, "text", 0);break;