fix: at模式下多接受了一个at信息的问题

This commit is contained in:
ikechan8370 2023-03-29 11:21:05 +08:00
parent fadf9f6a8c
commit 1563e49a25
2 changed files with 4 additions and 1 deletions

View file

@ -514,6 +514,9 @@ export class chatgpt extends plugin {
}
if (e.user_id == Bot.uin) return false
prompt = e.raw_message.trim()
let me = e.group.pickMember(Bot.uin)
let card = me.card || me.nickname
prompt = prompt.replace(`@${card}`, '').trim()
} else {
let ats = e.message.filter(m => m.type === 'at')
if (!e.atme && ats.length > 0) {

View file

@ -436,7 +436,7 @@ export default class SydneyAIClient {
context += chats
.map(chat => {
let sender = chat.sender
return `${sender.card} qq${sender.user_id}群角色 ${roleMap[sender.role] || '普通成员'}${sender.area ? '来自' + sender.area + '' : ''} ${sender.age}岁, 群头衔:${sender.title} 性别:${sender.sex},时间:${formatDate(new Date(chat.time * 1000))} 说:${chat.raw_message} 发言时间:\n`
return `${sender.card}qq${sender.user_id}昵称:${sender.nickname}群角色 ${roleMap[sender.role] || '普通成员'}${sender.area ? '来自' + sender.area + '' : ''} ${sender.age}岁, 群头衔:${sender.title} 性别:${sender.sex},时间:${formatDate(new Date(chat.time * 1000))} 说:${chat.raw_message} 发言时间:\n`
})
.join('\n')
}