From 8b48aba9ddf729bcb3070133b35071fd99a56ba7 Mon Sep 17 00:00:00 2001 From: gutrse3321 Date: Sat, 30 Jun 2018 16:39:52 +0800 Subject: [PATCH] =?UTF-8?q?forget=E5=91=BD=E4=BB=A4=E5=AE=8C=E6=88=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- package.json | 3 ++- src/renderer/core/index.js | 30 ++++++++++++++++++++++++---- src/renderer/views/Home/chatroom.vue | 23 ++++++++++++++------- 3 files changed, 44 insertions(+), 12 deletions(-) diff --git a/package.json b/package.json index e4ed381..32c3ea1 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "marisa", "productName": "marisa", - "version": "0.0.001", + "version": "0.0.1", "author": "gutrse3321 ", "description": "大家的老朋友,莎莎", "license": "", @@ -20,6 +20,7 @@ "pack": "npm run pack:main && npm run pack:renderer", "pack:main": "cross-env NODE_ENV=production webpack --progress --colors --config .electron-vue/webpack.main.config.js", "pack:renderer": "cross-env NODE_ENV=production webpack --progress --colors --config .electron-vue/webpack.renderer.config.js", + "packorder": "npm run pack && electron-packager . --overwrite --asar=true --icon=./src/renderer/assets/icon.ico", "postinstall": "npm run lint:fix" }, "dependencies": { diff --git a/src/renderer/core/index.js b/src/renderer/core/index.js index d66e567..705e2b1 100644 --- a/src/renderer/core/index.js +++ b/src/renderer/core/index.js @@ -5,7 +5,7 @@ segment.useDefault() export default class MarisaCore { /** - * 魔理沙与你的说话格式 + * 魔理沙与你的说话格式,以及处理You的说话格式 * @param {String} name * @param {String} content */ @@ -28,7 +28,7 @@ export default class MarisaCore { let keywords = [] // 处理获取的_content到数据库去遍历查询 - // 大于80%就回复对应回答 + // 大于60%就回复对应回答 for (let i = 0; i < memorise.length; i++) { let ratio = 0 keywords = memorise[i].keyword @@ -38,7 +38,7 @@ export default class MarisaCore { ratio++ } }) - if ((ratio / keywords.length) >= 0.5) { + if ((ratio / keywords.length) >= 0.6) { answer = memorise[i].answer break } @@ -70,7 +70,7 @@ export default class MarisaCore { ratio++ } }) - if ((ratio / keywords.length) >= 0.5) { + if ((ratio / keywords.length) >= 0.6) { keywords.concat(toPpl) // 去除重复的关键词或字 keywords = Array.from(new Set(keywords.filter((x, i, self) => self.indexOf(x) === i))) @@ -90,4 +90,26 @@ export default class MarisaCore { } return memorey } + + /** + * 魔理沙记忆消除中枢 + * @param {Array} list + */ + static forget (list) { + let answers = [] + list.forEach((item) => { + if (item.name === '白絲魔理沙') { + answers.push(item) + } + }) + if (answers.length > 1) { + let finder = db.get('memorise').find({answer: answers[answers.length - 1].content}).value() + if (finder !== undefined) { + db.get('memorise').remove({answer: finder.answer}).write() + return true + } else { + return false + } + } + } } diff --git a/src/renderer/views/Home/chatroom.vue b/src/renderer/views/Home/chatroom.vue index aa2987d..04fd746 100644 --- a/src/renderer/views/Home/chatroom.vue +++ b/src/renderer/views/Home/chatroom.vue @@ -24,12 +24,10 @@ teach 进入内容教学模式 - - forget 忘记最后所说的内容 + forget 忘记最后所说的内容 - - application 管理外部应用接口 + application 管理外部应用接口 status 查看目前知识所掌握情况 @@ -75,6 +73,9 @@ export default { this.talk_list.push(MarisaCore.speak(MARISA, '要教给魔里沙什么 ..? 现在只能学习语句.. 如"问`答".. 中止教学输入 exit ..')) this.cmd_flag = 1 break + case 'forget': + this._marisaForget() + break case 'status': this._marisaStatus() break @@ -87,11 +88,11 @@ export default { if (answer !== '') { this.talk_list.push(MarisaCore.speak(MARISA, answer)) } else { - this.talk_list.push(MarisaCore.speak(MARISA, '唔嗯...不懂你在说什么呢...')) + this.talk_list.push(MarisaCore.speak(MARISA, '唔嗯...不懂你在说什么呢...教教我吧~')) } }, _teachMarisa (_content) { - if (_content === 'exit') { + if (_content === 'exit' || _content === 'teach' || _content === 'forget' || _content === 'status') { this.talk_list.push(MarisaCore.speak(YOU, '白丝魔理沙,退出学习模式')) this.cmd_flag = 0 return @@ -104,6 +105,14 @@ export default { this.talk_list.push(MarisaCore.speak(MARISA, '行,我知道了')) this.cmd_flag = 0 }, + _marisaForget () { + let flag = MarisaCore.forget(this.talk_list) + if (flag) { + this.talk_list.push(MarisaCore.speak(MARISA, '这句话魔理沙说错了么 ... 呜呜呜对不起 ...')) + } else { + this.talk_list.push(MarisaCore.speak(MARISA, '魔理沙这阵子不太想忘记东西的样子……')) + } + }, _marisaStatus () { let memorise = this.$db.get('memorise').value().length let weight = 0.00011 * parseFloat(memorise) @@ -120,7 +129,7 @@ export default { this._scrollBottom() }, created () { - let _startTalk = MarisaCore.speak(MARISA, '白絲魔理沙 Type 0.005,还在继续升级DA☆ZE!') + let _startTalk = MarisaCore.speak(MARISA, '白絲魔理沙 Type 0.01,还在继续升级DA☆ZE!') this.talk_list.push(_startTalk) } }