mirror of
https://github.com/SillyTavern/SillyTavern.git
synced 2025-06-05 21:59:27 +02:00
#1814 Fix regex placement attribution
This commit is contained in:
@ -1603,15 +1603,21 @@ function messageFormatting(mes, ch_name, isSystem, isUser, messageId) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (!isSystem) {
|
if (!isSystem) {
|
||||||
let regexPlacement;
|
function getRegexPlacement() {
|
||||||
if (isUser) {
|
try {
|
||||||
regexPlacement = regex_placement.USER_INPUT;
|
if (isUser) {
|
||||||
} else if (ch_name !== name2) {
|
return regex_placement.USER_INPUT;
|
||||||
regexPlacement = regex_placement.SLASH_COMMAND;
|
} else if (chat[messageId]?.extra?.type === 'narrator') {
|
||||||
} else {
|
return regex_placement.SLASH_COMMAND;
|
||||||
regexPlacement = regex_placement.AI_OUTPUT;
|
} else {
|
||||||
|
return regex_placement.AI_OUTPUT;
|
||||||
|
}
|
||||||
|
} catch {
|
||||||
|
return regex_placement.AI_OUTPUT;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const regexPlacement = getRegexPlacement();
|
||||||
const usableMessages = chat.map((x, index) => ({ message: x, index: index })).filter(x => !x.message.is_system);
|
const usableMessages = chat.map((x, index) => ({ message: x, index: index })).filter(x => !x.message.is_system);
|
||||||
const indexOf = usableMessages.findIndex(x => x.index === Number(messageId));
|
const indexOf = usableMessages.findIndex(x => x.index === Number(messageId));
|
||||||
const depth = messageId >= 0 && indexOf !== -1 ? (usableMessages.length - indexOf - 1) : undefined;
|
const depth = messageId >= 0 && indexOf !== -1 ? (usableMessages.length - indexOf - 1) : undefined;
|
||||||
@ -5899,10 +5905,10 @@ function updateMessage(div) {
|
|||||||
let regexPlacement;
|
let regexPlacement;
|
||||||
if (mes.is_user) {
|
if (mes.is_user) {
|
||||||
regexPlacement = regex_placement.USER_INPUT;
|
regexPlacement = regex_placement.USER_INPUT;
|
||||||
} else if (mes.name === name2) {
|
} else if (mes.extra?.type === 'narrator') {
|
||||||
regexPlacement = regex_placement.AI_OUTPUT;
|
|
||||||
} else if (mes.name !== name2 || mes.extra?.type === 'narrator') {
|
|
||||||
regexPlacement = regex_placement.SLASH_COMMAND;
|
regexPlacement = regex_placement.SLASH_COMMAND;
|
||||||
|
} else {
|
||||||
|
regexPlacement = regex_placement.AI_OUTPUT;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Ignore character override if sent as system
|
// Ignore character override if sent as system
|
||||||
|
Reference in New Issue
Block a user