@@ -355,27 +355,35 @@ const reloadDOM = (executes, mods, tools) => {
355355 } )
356356}
357357
358- // 安装模组 按钮
359- const installMod = document . getElementById ( 'installMod' )
360- installMod . addEventListener ( 'click' , ( ) => {
358+ // 安装扩展资源 函数
359+ const installResources = ( ) => {
361360 dialog . showOpenDialog (
362361 {
363- title : '选取Mod资源包 ……' ,
362+ title : '选取扩展资源包 ……' ,
364363 filters : [
365364 {
366- name : '雀魂Plus Mod' ,
367- extensions : [ 'mspm' ]
368- } ,
369- {
370- name : '所有文件' ,
371- extensions : [ '*' ]
365+ name : '雀魂Plus扩展' ,
366+ extensions : [ 'mspm' , 'mspe' , 'mspt' ]
372367 }
373368 ]
374369 } ,
375370 filename => {
376371 if ( filename ) {
377372 const unzip = new AdmZip ( filename )
378- unzip . extractAllToAsync ( modRootDir , true , err => {
373+ const extname = path . extname ( filename )
374+ let installDir
375+ switch ( extname ) {
376+ case 'mspm' :
377+ installDir = modRootDir
378+ break
379+ case 'mspe' :
380+ installDir = executeRootDir
381+ break
382+ case 'mspt' :
383+ installDir = toolsRootDir
384+ break
385+ }
386+ unzip . extractAllToAsync ( installDir , true , err => {
379387 if ( err ) {
380388 alert ( '安装失败!\n错误信息如下:\n' + err )
381389 } else {
@@ -386,73 +394,19 @@ installMod.addEventListener('click', () => {
386394 }
387395 }
388396 )
389- } )
397+ }
398+
399+ // 安装模组 按钮
400+ const installMod = document . getElementById ( 'installMod' )
401+ installMod . addEventListener ( 'click' , installResources )
390402
391403// 安装插件 按钮
392404const installExecute = document . getElementById ( 'installExecute' )
393- installExecute . addEventListener ( 'click' , ( ) => {
394- dialog . showOpenDialog (
395- {
396- title : '选取插件资源包……' ,
397- filters : [
398- {
399- name : '雀魂Plus插件' ,
400- extensions : [ 'mspe' ]
401- } ,
402- {
403- name : '所有文件' ,
404- extensions : [ '*' ]
405- }
406- ]
407- } ,
408- filename => {
409- if ( filename ) {
410- const unzip = new AdmZip ( filename )
411- unzip . extractAllToAsync ( executeRootDir , true , err => {
412- if ( err ) {
413- alert ( '安装失败!\n错误信息如下:\n' + err )
414- } else {
415- alert ( '安装成功!' )
416- refreshFunction ( )
417- }
418- } )
419- }
420- }
421- )
422- } )
405+ installExecute . addEventListener ( 'click' , installResources )
423406
424407// 安装工具 按钮
425408const installTool = document . getElementById ( 'installTool' )
426- installTool . addEventListener ( 'click' , ( ) => {
427- dialog . showOpenDialog (
428- {
429- title : '选取工具资源包……' ,
430- filters : [
431- {
432- name : '雀魂Plus工具' ,
433- extensions : [ 'mspt' ]
434- } ,
435- {
436- name : '所有文件' ,
437- extensions : [ '*' ]
438- }
439- ]
440- } ,
441- filename => {
442- if ( filename ) {
443- const unzip = new AdmZip ( filename )
444- unzip . extractAllToAsync ( toolsRootDir , true , err => {
445- if ( err ) {
446- alert ( '安装失败!\n错误信息如下:\n' + err )
447- } else {
448- alert ( '安装成功!' )
449- refreshFunction ( )
450- }
451- } )
452- }
453- }
454- )
455- } )
409+ installTool . addEventListener ( 'click' , installResources )
456410
457411// 记录编辑状态使用的变量
458412let executesEditFlag = false
0 commit comments