| 2541 | 2545 | |
| 2542 | 2546 | // Run generate and restore previous character |
| 2543 | 2547 | try { |
| 2548 | + eventSource.once(event_types.MESSAGE_RECEIVED, restoreCharacter); |
| 2544 | 2549 | toastr.info(`Asking ${character.name} something...`); |
| 2545 | 2550 | askResult = await Generate('ask_command'); |
| 2546 | 2551 | } catch (error) { |
| 2552 | + restoreCharacter(); |
| 2547 | 2553 | console.error('Error running /ask command', error); |
| 2548 | 2554 | } finally { |
| 2549 | | - restoreCharacter(); |
| 2555 | + if (String(this_chid) === String(prevChId)) { |
| 2550 | | - |
| 2551 | | - if (this_chid === prevChId) { |
| 2552 | 2556 | await saveChatConditional(); |
| 2553 | 2557 | } else { |
| 2554 | 2558 | toastr.error('It is strongly recommended to reload the page.', 'Something went wrong'); |