diff --git a/src/ts/parser.ts b/src/ts/parser.ts index 8dd5f3c2..63f62cf0 100644 --- a/src/ts/parser.ts +++ b/src/ts/parser.ts @@ -926,6 +926,10 @@ function basicMatcher (p1:string,matcherArg:matcherArg,vars:{[key:string]:string return db.subModel } case 'role': { + if (chatID !== -1) { + const selchar = db.characters[get(selectedCharID)] + return selchar.chats[selchar.chatPage].message[chatID].role; + } return matcherArg.role ?? 'role' } case 'jbtoggled':{ diff --git a/src/ts/process/scripts.ts b/src/ts/process/scripts.ts index 9b4c0016..488329a9 100644 --- a/src/ts/process/scripts.ts +++ b/src/ts/process/scripts.ts @@ -197,7 +197,7 @@ export async function processScriptFull(char:character|groupChat|simpleCharacter } } else{ - data = risuChatParser(data.replace(reg, outScript)) + data = risuChatParser(data.replace(reg, outScript), { chatID: chatID }) } } }