mirror of
https://github.com/Wx-2025/ST-Amily2-Chat-Optimisation.git
synced 2026-06-06 22:05:50 +00:00
2 lines
5.9 KiB
JavaScript
2 lines
5.9 KiB
JavaScript
(function(_0x2b1dd0,_0x2cb771){const _0x5974f=_0x1140,_0xd42c4d=_0x2b1dd0();while(!![]){try{const _0x5e0023=parseInt(_0x5974f(0xdf))/0x1+parseInt(_0x5974f(0xb8))/0x2+-parseInt(_0x5974f(0xc1))/0x3*(parseInt(_0x5974f(0xc6))/0x4)+-parseInt(_0x5974f(0xbc))/0x5*(-parseInt(_0x5974f(0xb1))/0x6)+-parseInt(_0x5974f(0xb2))/0x7*(-parseInt(_0x5974f(0xda))/0x8)+parseInt(_0x5974f(0xdd))/0x9*(-parseInt(_0x5974f(0xc3))/0xa)+parseInt(_0x5974f(0xc2))/0xb*(-parseInt(_0x5974f(0xb0))/0xc);if(_0x5e0023===_0x2cb771)break;else _0xd42c4d['push'](_0xd42c4d['shift']());}catch(_0x310336){_0xd42c4d['push'](_0xd42c4d['shift']());}}}(_0x5e22,0x8abee));import{log}from'./logger.js';function _0x1140(_0x277865,_0x58e9f3){const _0x5e22b5=_0x5e22();return _0x1140=function(_0x114003,_0x1c4fc0){_0x114003=_0x114003-0xaf;let _0x352a3e=_0x5e22b5[_0x114003];return _0x352a3e;},_0x1140(_0x277865,_0x58e9f3);}function insertRow(_0x3b8a00,_0x483031,_0x57c71c){const _0x3dce36=_0x1140;if(!_0x3b8a00[_0x483031])return log(_0x3dce36(0xd9)+_0x483031+_0x3dce36(0xde),'error'),{'state':_0x3b8a00,'changes':[]};const _0x16e29e=_0x3b8a00[_0x483031],_0x235dca=_0x16e29e[_0x3dce36(0xc4)][_0x3dce36(0xd7)],_0x12a217=Array(_0x235dca)[_0x3dce36(0xd2)](''),_0x242f10=[],_0x253f52=_0x16e29e['rows'][_0x3dce36(0xd7)];for(const _0xba2838 in _0x57c71c){const _0x3b302e=parseInt(_0xba2838,0xa);_0x3b302e<_0x235dca&&(_0x12a217[_0x3b302e]=_0x57c71c[_0xba2838],_0x242f10['push']({'type':_0x3dce36(0xaf),'tableIndex':_0x483031,'rowIndex':_0x253f52,'colIndex':_0x3b302e}));}return _0x16e29e[_0x3dce36(0xc5)][_0x3dce36(0xca)](_0x12a217),{'state':_0x3b8a00,'changes':_0x242f10};}function _0x5e22(){const _0x1a1f94=['99876vaDHak','6oZDQMC','21yzKzQF','AI指令错误:尝试更新不存在的表格\x20','forEach','\x22\x20的参数时出错:\x20','stringify','updateRow(','1386562hUtLPw','info','推演指令\x20\x22','changes','3559895xXJjcp','指令格式错误,无法解析:\x20\x22','deleteRow(','replace','检测到AI指令块,开始推演...','3dyaTfe','671ZAClKH','10MGvrLy','headers','rows','2893880aaQITS','state','splice','parse','push','args','name','AI指令错误:尝试删除不存在的表格\x20','trim','\x20或行\x20','insertRow(','成功推演指令:\x20','fill','解析函数\x20\x22','error','\x22。已阻止执行。','filter','length','\x22\x20时发生运行时错误:\x20','AI指令错误:尝试在不存在的表格索引\x20','2031832FZgnvg','\x20超出范围,自动转换为\x20insertRow。','match','9892710GdYChe','\x20中插入行。','731468OVMKJD','split','startsWith','update'];_0x5e22=function(){return _0x1a1f94;};return _0x5e22();}function updateRow(_0x1cd88e,_0x219933,_0x6bad1a,_0x8d0feb){const _0x33f887=_0x1140;if(!_0x1cd88e[_0x219933])return log(_0x33f887(0xb3)+_0x219933+'。','error'),{'state':_0x1cd88e,'changes':[]};const _0x43c33b=_0x1cd88e[_0x219933];if(_0x6bad1a>=_0x43c33b[_0x33f887(0xc5)]['length'])return log('AI指令修正:updateRow\x20的行索引\x20'+_0x6bad1a+_0x33f887(0xdb),'warn'),insertRow(_0x1cd88e,_0x219933,_0x8d0feb);const _0x16c8d4=_0x43c33b[_0x33f887(0xc5)][_0x6bad1a],_0x194d7e=[];for(const _0x51506e in _0x8d0feb){const _0x32220b=parseInt(_0x51506e,0xa);_0x32220b<_0x16c8d4[_0x33f887(0xd7)]&&(_0x16c8d4[_0x32220b]=_0x8d0feb[_0x51506e],_0x194d7e['push']({'type':_0x33f887(0xaf),'tableIndex':_0x219933,'rowIndex':_0x6bad1a,'colIndex':_0x32220b}));}return{'state':_0x1cd88e,'changes':_0x194d7e};}function deleteRow(_0x42729c,_0x1ae91a,_0x3aaba8){const _0x3e2463=_0x1140;if(!_0x42729c[_0x1ae91a]||!_0x42729c[_0x1ae91a][_0x3e2463(0xc5)][_0x3aaba8])return log(_0x3e2463(0xcd)+_0x1ae91a+_0x3e2463(0xcf)+_0x3aaba8+'。','error'),{'state':_0x42729c,'changes':[]};return _0x42729c[_0x1ae91a][_0x3e2463(0xc5)][_0x3e2463(0xc8)](_0x3aaba8,0x1),{'state':_0x42729c,'changes':[]};}const allowedFunctions={'insertRow':insertRow,'updateRow':updateRow,'deleteRow':deleteRow};function parseFunctionCall(_0x50bff7){const _0xafbf74=_0x1140,_0x2f054c=_0x50bff7['trim']()[_0xafbf74(0xdc)](/(\w+)\((.*)\)/);if(!_0x2f054c)return log(_0xafbf74(0xbd)+_0x50bff7+'\x22',_0xafbf74(0xd4)),null;const _0x5727f2=_0x2f054c[0x1],_0x4bc4ef=_0x2f054c[0x2];if(!allowedFunctions[_0x5727f2])return log('检测到非法函数调用:\x20\x22'+_0x5727f2+_0xafbf74(0xd5),'error'),null;try{const _0x42f4ef=new Function('return\x20['+_0x4bc4ef+']')();return{'name':_0x5727f2,'args':_0x42f4ef};}catch(_0xf12983){return log(_0xafbf74(0xd3)+_0x5727f2+_0xafbf74(0xb5)+_0xf12983['message'],_0xafbf74(0xd4)),null;}}export function executeCommands(_0x1a4acf,_0x2dc07f){const _0x298a47=_0x1140,_0x4b1a9b=/<Amily2Edit>([\s\S]*?)<\/Amily2Edit>/,_0x471b75=_0x1a4acf['match'](_0x4b1a9b);if(!_0x471b75)return{'finalState':_0x2dc07f,'hasChanges':![],'changes':[]};log(_0x298a47(0xc0),_0x298a47(0xb9));const _0x37fb40=_0x471b75[0x1][_0x298a47(0xbf)](/<!--|-->/g,'')['trim']();if(!_0x37fb40)return{'finalState':_0x2dc07f,'hasChanges':![],'changes':[]};const _0x12110a=_0x37fb40[_0x298a47(0xe0)]('\x0a')[_0x298a47(0xd6)](_0x44f924=>_0x44f924[_0x298a47(0xce)]()!=='');if(_0x12110a['length']===0x0)return{'finalState':_0x2dc07f,'hasChanges':![],'changes':[]};let _0x471045=JSON[_0x298a47(0xc9)](JSON[_0x298a47(0xb6)](_0x2dc07f)),_0x5dfc50=[];_0x12110a[_0x298a47(0xb4)](_0x27fdf7=>{const _0x548fd9=_0x298a47,_0x4bab69=_0x27fdf7[_0x548fd9(0xce)]();if(_0x4bab69['startsWith'](_0x548fd9(0xd0))||_0x4bab69[_0x548fd9(0xe1)](_0x548fd9(0xbe))||_0x4bab69[_0x548fd9(0xe1)](_0x548fd9(0xb7))){const _0x5aedd7=parseFunctionCall(_0x4bab69);if(_0x5aedd7)try{const _0x4d48bb=allowedFunctions[_0x5aedd7[_0x548fd9(0xcc)]](_0x471045,..._0x5aedd7[_0x548fd9(0xcb)]);_0x471045=_0x4d48bb[_0x548fd9(0xc7)],_0x4d48bb[_0x548fd9(0xbb)]&&_0x4d48bb[_0x548fd9(0xbb)][_0x548fd9(0xd7)]>0x0&&(_0x5dfc50=_0x5dfc50['concat'](_0x4d48bb['changes'])),log(_0x548fd9(0xd1)+_0x27fdf7,'success');}catch(_0x3225ba){log(_0x548fd9(0xba)+_0x27fdf7+_0x548fd9(0xd8)+_0x3225ba['message'],_0x548fd9(0xd4));}}});const _0x431375=_0x5dfc50['length']>0x0;return{'finalState':_0x471045,'hasChanges':_0x431375,'changes':_0x5dfc50};}
|