From d003dbf84bad5a2a5978360fa5d99f74622db8aa Mon Sep 17 00:00:00 2001 From: YouWei Zhao Date: Mon, 19 Feb 2018 10:26:23 +0800 Subject: [PATCH] =?UTF-8?q?editor:=E4=BF=AE=E6=94=B9=E6=88=90=E5=8A=9F?= =?UTF-8?q?=E6=88=96=E5=A4=B1=E8=B4=A5=E4=BC=9A=E6=9C=89=E7=9B=B8=E5=BA=94?= =?UTF-8?q?=E7=9A=84=E6=8F=90=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 不再时只是throw错误 --- _server/editor_blockly.js | 6 +++--- _server/editor_file.js | 26 +++++++++++++------------- _server/editor_mode.js | 22 ++++++++++++---------- _server/vm.js | 12 ++++++++++++ editor.html | 2 +- 5 files changed, 41 insertions(+), 27 deletions(-) diff --git a/_server/editor_blockly.js b/_server/editor_blockly.js index cfde9348..38938295 100644 --- a/_server/editor_blockly.js +++ b/_server/editor_blockly.js @@ -226,15 +226,15 @@ initscript=String.raw` var input_=''; editor_blockly.runOne = function (){ //var printf = console.log; - var printf = function(){}; + //var printf = function(){}; var grammerFile = input_; converter = new Converter().init(); converter.generBlocks(grammerFile,[]); - printf(converter.blocks); + //printf(converter.blocks); converter.renderGrammerName(); converter.generToolbox(); converter.generMainFile(); - printf(converter.mainFile.join('')); + //printf(converter.mainFile.join('')); console.log(converter); diff --git a/_server/editor_file.js b/_server/editor_file.js index 01bb0323..e66c722f 100644 --- a/_server/editor_file.js +++ b/_server/editor_file.js @@ -29,7 +29,7 @@ editor_file.getFloorFileList = function(editor,callback){ - if (!isset(callback)) throw('未设置callback'); + if (!isset(callback)) {printe('未设置callback');throw('未设置callback')}; /* var fs = editor.fs; fs.readdir('project/floors',function(err, data){ callback([data,err]); @@ -39,7 +39,7 @@ //callback([Array,err:String]) editor_file.loadFloorFile = function(editor,filename,callback){ //filename不含'/'不含'.js' - if (!isset(callback)) throw('未设置callback'); + if (!isset(callback)) {printe('未设置callback');throw('未设置callback')}; /* var fs = editor.fs; fs.readFile('project/floors/'+filename+'.js','utf-8',function(err, data){ if (err!=null){callback(err);return;} @@ -64,7 +64,7 @@ } //callback(err:String) editor_file.saveFloorFile = function(editor,callback){ - if (!isset(callback)) throw('未设置callback'); + if (!isset(callback)) {printe('未设置callback');throw('未设置callback')}; /* if (!isset(editor.currentFloorId) || !isset(editor.currentFloorData)) { callback('未选中文件或无数据'); } */ @@ -87,7 +87,7 @@ //callback(err:String) editor_file.saveFloorFileAs = function(editor,saveAsFilename,callback){ //saveAsFilename不含'/'不含'.js' - if (!isset(callback)) throw('未设置callback'); + if (!isset(callback)) {printe('未设置callback');throw('未设置callback')}; if (!isset(editor.currentFloorData)) { callback('无数据'); } @@ -102,7 +102,7 @@ //////////////////////////////////////////////////////////////////// editor_file.changeIdAndIdnum = function(editor,id,idnum,info,callback){ - if (!isset(callback)) throw('未设置callback'); + if (!isset(callback)) {printe('未设置callback');throw('未设置callback')}; //检查maps中是否有重复的idnum或id var change = -1; for(var ii in editor.core.maps.blocksInfo){ @@ -150,10 +150,10 @@ saveSetting('maps',[["add","['"+idnum+"']",{'cls': info.images, 'id':id}]],tempcallback); saveSetting('icons',[["add","['"+info.images+"']['"+id+"']",info.y]],tempcallback); if(info.images==='items'){ - saveSetting('items',[["change"/*其实应该是add*/,"['items']['"+id+"']",editor_file.comment.items_template]],function(err){if(err)throw(err)}); + saveSetting('items',[["change"/*其实应该是add*/,"['items']['"+id+"']",editor_file.comment.items_template]],function(err){if(err){printe(err);throw(err)}}); } if(info.images==='enemys'){ - saveSetting('enemys',[["change"/*其实应该是add*/,"['enemys']['"+id+"']",editor_file.comment.enemys_template]],function(err){if(err)throw(err)}); + saveSetting('enemys',[["change"/*其实应该是add*/,"['enemys']['"+id+"']",editor_file.comment.enemys_template]],function(err){if(err){printe(err);throw(err)}}); } callback(null); @@ -167,7 +167,7 @@ ] 为[]时只查询不修改 */ - if (!isset(callback)) throw('未设置callback'); + if (!isset(callback)) {printe('未设置callback');throw('未设置callback')}; if (isset(actionList) && actionList.length > 0){ actionList.forEach(function (value) { var tempindex = value[1].indexOf(']')+1; @@ -216,7 +216,7 @@ ] 为[]时只查询不修改 */ - if (!isset(callback)) throw('未设置callback'); + if (!isset(callback)) {printe('未设置callback');throw('未设置callback')}; if (isset(actionList) && actionList.length > 0){ actionList.forEach(function (value) { value[1] = "['"+id+"']"+value[1]; @@ -263,7 +263,7 @@ ] 为[]时只查询不修改 */ - if (!isset(callback)) throw('未设置callback'); + if (!isset(callback)) {printe('未设置callback');throw('未设置callback')}; if (isset(actionList) && actionList.length > 0){ actionList.forEach(function (value) { value[1] = value[1]+"['"+x+","+y+"']"; @@ -311,7 +311,7 @@ ] 为[]时只查询不修改 */ - if (!isset(callback)) throw('未设置callback'); + if (!isset(callback)) {printe('未设置callback');throw('未设置callback')}; if (isset(actionList) && actionList.length > 0){ saveSetting('floors',actionList,function (err) { callback([ @@ -355,7 +355,7 @@ ] 为[]时只查询不修改 */ - if (!isset(callback)) throw('未设置callback'); + if (!isset(callback)) {printe('未设置callback');throw('未设置callback')}; if (isset(actionList) && actionList.length > 0){ saveSetting('data',actionList,function (err) { callback([ @@ -421,7 +421,7 @@ console.log(file); console.log(actionList); actionList.forEach(function (value) { - if (value[0]!='change' && file!='icons' && file!='maps') throw('目前只支持change'); + if (value[0]!='change' && file!='icons' && file!='maps') {printe('目前只支持change');throw('目前只支持change')}; }); if (file=='icons') { diff --git a/_server/editor_mode.js b/_server/editor_mode.js index 101dba81..4bbe60af 100644 --- a/_server/editor_mode.js +++ b/_server/editor_mode.js @@ -145,23 +145,23 @@ editor_mode.prototype.doActionList = function(mode,actionList){ switch (mode) { case 'loc': - editor_file.editLoc(editor,editor_mode.pos.x,editor_mode.pos.y,actionList,function(objs_){console.log(objs_);if(objs_.slice(-1)[0]!=null)throw(objs_.slice(-1)[0])}); + editor_file.editLoc(editor,editor_mode.pos.x,editor_mode.pos.y,actionList,function(objs_){console.log(objs_);if(objs_.slice(-1)[0]!=null){printe(objs_.slice(-1)[0]);throw(objs_.slice(-1)[0])};printf('修改成功')}); break; case 'emenyitem': if (editor_mode.info.images=='enemys'){ - editor_file.editEnemy(editor,editor_mode.info.id,actionList,function(objs_){console.log(objs_);if(objs_.slice(-1)[0]!=null)throw(objs_.slice(-1)[0])}); + editor_file.editEnemy(editor,editor_mode.info.id,actionList,function(objs_){console.log(objs_);if(objs_.slice(-1)[0]!=null){printe(objs_.slice(-1)[0]);throw(objs_.slice(-1)[0])};printf('修改成功')}); } else if (editor_mode.info.images=='items'){ - editor_file.editItem(editor,editor_mode.info.id,actionList,function(objs_){console.log(objs_);if(objs_.slice(-1)[0]!=null)throw(objs_.slice(-1)[0])}); + editor_file.editItem(editor,editor_mode.info.id,actionList,function(objs_){console.log(objs_);if(objs_.slice(-1)[0]!=null){printe(objs_.slice(-1)[0]);throw(objs_.slice(-1)[0])};printf('修改成功')}); } break; case 'floor': - editor_file.editFloor(editor,actionList,function(objs_){console.log(objs_);if(objs_.slice(-1)[0]!=null)throw(objs_.slice(-1)[0])}); + editor_file.editFloor(editor,actionList,function(objs_){console.log(objs_);if(objs_.slice(-1)[0]!=null){printe(objs_.slice(-1)[0]);throw(objs_.slice(-1)[0])};printf('修改成功')}); break; case 'tower': - editor.file.editTower(editor,actionList,function(objs_){console.log(objs_);if(objs_.slice(-1)[0]!=null)throw(objs_.slice(-1)[0])}); + editor.file.editTower(editor,actionList,function(objs_){console.log(objs_);if(objs_.slice(-1)[0]!=null){printe(objs_.slice(-1)[0]);throw(objs_.slice(-1)[0])};printf('修改成功')}); break; default: break; @@ -249,10 +249,12 @@ editor_mode.prototype.listen = function(callback){ if (newIdIdnum.children[0].value && newIdIdnum.children[1].value){ var id = newIdIdnum.children[0].value; var idnum = parseInt(newIdIdnum.children[1].value); - editor_file.changeIdAndIdnum(editor,id,idnum,editor_mode.info,function(err){if(err)throw(err)}); + editor_file.changeIdAndIdnum(editor,id,idnum,editor_mode.info,function(err){ + if(err){printe(err);throw(err)} + printf('添加id的idnum成功'); + }); } } - //尚未完成,不完善,新物品需要手动改items,新地形的支持不错 var selectFloor = document.getElementById('selectFloor'); editor_file.getFloorFileList(editor,function(floors){ @@ -271,7 +273,7 @@ editor_mode.prototype.listen = function(callback){ var saveFloor = document.getElementById('saveFloor'); saveFloor.onclick = function(){ editor_mode.onmode(''); - editor_file.saveFloorFile(editor,function(err){if(err)throw(err)}); + editor_file.saveFloorFile(editor,function(err){if(err){printe(err);throw(err)}}); } var saveFloorAs = document.getElementById('saveFloorAs'); @@ -280,9 +282,9 @@ editor_mode.prototype.listen = function(callback){ if (!saveAsName.value)return; editor_mode.onmode(''); editor_file.saveFloorFileAs(editor,saveAsName.value,function(err){ - if(err)throw(err); + if(err){printe(err);throw(err)} core.floorIds.push(saveAsName.value); - editor.file.editTower(editor,[['change',"['main']['floorIds']",core.floorIds]],function(objs_){console.log(objs_);if(objs_.slice(-1)[0]!=null)throw(objs_.slice(-1)[0])}); + editor.file.editTower(editor,[['change',"['main']['floorIds']",core.floorIds]],function(objs_){console.log(objs_);if(objs_.slice(-1)[0]!=null){printe(objs_.slice(-1)[0]);throw(objs_.slice(-1)[0])}}); }); } diff --git a/_server/vm.js b/_server/vm.js index 8b227a19..a034eaf6 100644 --- a/_server/vm.js +++ b/_server/vm.js @@ -184,6 +184,16 @@ var clear = new Vue({ } } }) +printf = function(str_,type) { + if(!type){ + tip.msgs[11]=String(str_); + tip.whichShow=12; + } else { + tip.msgs[10]=String(str_); + tip.whichShow=11; + } +} +printe = function(str_){printf(str_,'error')} var tip = new Vue({ el: '#tip', data: { @@ -205,6 +215,8 @@ var tip = new Vue({ "修改成功!可点击复制按钮复制地图数组到剪切板", "选择背景图片失败!文件名格式错误或图片不存在!", "更新背景图片成功!", + "11:警告", + "12:成功" ], mapMsg: '', whichShow: 0, diff --git a/editor.html b/editor.html index 8c1518cc..e408332d 100644 --- a/editor.html +++ b/editor.html @@ -327,7 +327,7 @@