From 9739b7089fb998be4f6899a38653c8f10ff6fa48 Mon Sep 17 00:00:00 2001 From: ckcz123 Date: Thu, 30 Apr 2020 17:15:17 +0800 Subject: [PATCH] Fix \t .png issue --- _server/MotaAction.g4 | 35 ++++++++++++++++++----------------- v2.x-final更新.txt | 4 ++-- 2 files changed, 20 insertions(+), 19 deletions(-) diff --git a/_server/MotaAction.g4 b/_server/MotaAction.g4 index 5bc7ce65..bf3c3930 100644 --- a/_server/MotaAction.g4 +++ b/_server/MotaAction.g4 @@ -459,7 +459,7 @@ return code; */; text_1_s - : '标题' EvalString? '图像' IdString? '对话框效果' EvalString? ':' EvalString Newline + : '标题' EvalString? '图像' EvalString? '对话框效果' EvalString? ':' EvalString Newline /* text_1_s @@ -468,17 +468,17 @@ helpUrl : https://h5mota.com/games/template/_docs/#/event?id=text%EF%BC%9A%E6%98 default : ["小妖精","fairy","","欢迎使用事件编辑器(双击方块进入多行编辑)"] var title=''; if (EvalString_0==''){ - if (IdString_0=='')title=''; - else title='\\t['+IdString_0+']'; + if (EvalString_1=='' )title=''; + else title='\\t['+EvalString_1+']'; } else { - if (IdString_0=='')title='\\t['+EvalString_0+']'; - else title='\\t['+EvalString_0+','+IdString_0+']'; + if (EvalString_1=='')title='\\t['+EvalString_0+']'; + else title='\\t['+EvalString_0+','+EvalString_1+']'; } -if(EvalString_1 && !(/^(up|center|down|hero|null)(,(hero|null|\d+,\d+|\d+))?$/.test(EvalString_1))) { +if(EvalString_2 && !(/^(up|center|down|hero|null)(,(hero|null|\d+,\d+|\d+))?$/.test(EvalString_2))) { throw new Error('对话框效果的用法请右键点击帮助'); } -EvalString_1 = EvalString_1 && ('\\b['+EvalString_1+']'); -var code = '"'+title+EvalString_1+EvalString_2+'",\n'; +EvalString_2 = EvalString_2 && ('\\b['+EvalString_2+']'); +var code = '"'+title+EvalString_2+EvalString_3+'",\n'; return code; */; @@ -496,7 +496,7 @@ return code; */; autoText_s - : '自动剧情文本: 标题' EvalString? '图像' IdString? '对话框效果' EvalString? '时间' Int BGNL? EvalString Newline + : '自动剧情文本: 标题' EvalString? '图像' EvalString? '对话框效果' EvalString? '时间' Int BGNL? EvalString Newline /* autoText_s @@ -505,17 +505,17 @@ helpUrl : https://h5mota.com/games/template/_docs/#/event?id=autotext%EF%BC%9A%E default : ["小妖精","fairy","",3000,"用户无法跳过自动剧情文本,大段剧情文本请添加“是否跳过剧情”的提示"] var title=''; if (EvalString_0==''){ - if (IdString_0=='')title=''; - else title='\\t['+IdString_0+']'; + if (EvalString_1=='' )title=''; + else title='\\t['+EvalString_1+']'; } else { - if (IdString_0=='')title='\\t['+EvalString_0+']'; - else title='\\t['+EvalString_0+','+IdString_0+']'; + if (EvalString_1=='')title='\\t['+EvalString_0+']'; + else title='\\t['+EvalString_0+','+EvalString_1+']'; } -if(EvalString_1 && !(/^(up|down)(,hero)?(,([+-]?\d+),([+-]?\d+))?$/.test(EvalString_1))) { +if(EvalString_2 && !(/^(up|down)(,hero)?(,([+-]?\d+),([+-]?\d+))?$/.test(EvalString_2))) { throw new Error('对话框效果的用法请右键点击帮助'); } -EvalString_1 = EvalString_1 && ('\\b['+EvalString_1+']'); -var code = '{"type": "autoText", "text": "'+title+EvalString_1+EvalString_2+'", "time" :'+Int_0+'},\n'; +EvalString_2 = EvalString_2 && ('\\b['+EvalString_2+']'); +var code = '{"type": "autoText", "text": "'+title+EvalString_2+EvalString_3+'", "time" :'+Int_0+'},\n'; return code; */; @@ -3833,7 +3833,8 @@ ActionParser.prototype.getTitleAndPosition = function (string) { string = string.replace(/\\t\[(([^\],]+),)?([^\],]+)\]/g, function (s0, s1, s2, s3) { if (s3) title = s3; if (s2) { icon = s3; title = s2; } - if (icon && !/^[0-9a-zA-Z_][0-9a-zA-Z_:]*$/.test(icon)) { title += "," + icon; icon = ''; } + if (icon && !/^(.*)\.(jpg|jpeg|png)$/.test(icon) + && !/^[0-9a-zA-Z_][0-9a-zA-Z_:]*$/.test(icon)) { title += "," + icon; icon = ''; } return ""; }).replace(/\\b\[(.*?)\]/g, function (s0, s1) { position = s1; return ""; diff --git a/v2.x-final更新.txt b/v2.x-final更新.txt index 2575367f..b90f8e4c 100644 --- a/v2.x-final更新.txt +++ b/v2.x-final更新.txt @@ -3,9 +3,9 @@ (已修复) 2. 请求修复(如果还没修复)新建单张空白地图无法自定义宽高的bug (文档相关给秋橙) 3. 希望给M键“追加素材”功能写个更详细的说明,在线文档中没有所以离线文档中也没写成 (已解决;现在注册会进行判定) 4. 请求修复图块id可以使用“0-9A-Za-z和下划线”以外的字符的bug(如贪婪之神和经验之神的两个耳朵使用了减号,它们会干扰显示文章等事件块的解析) -5. (接上)请求修复\t[xxx,yyy.png]解析后全部被放入标题框的bug,yyy.png应放入图像框才对 +(已修复) 5. (接上)请求修复\t[xxx,yyy.png]解析后全部被放入标题框的bug,yyy.png应放入图像框才对 (已删除此函数) 6. 增强core.getStatusName()的适用面,目前它只用于装备栏属性变化非图标模式的绘制,事实上很多写死的文案值得改为此函数的调用(如rmxp默认的“力量”、“灵巧”、“G”),同理还有一些道具名称文案也存在此问题(如“楼层传送器似乎失效了”) -x 7. (来自鹿神)core.insertAction()在接受单个字符串参数时存在不稳定性(如跨塔抄别人脚本时),建议优化 +(不处理) 7. (来自鹿神)core.insertAction()在接受单个字符串参数时存在不稳定性(如跨塔抄别人脚本时),建议优化 8. core.changeFloor()等函数的参数列表过于混乱,建议优化 9. useItemEvent用于有afterGetItem事件(浅蓝点)的即捡即用类道具时,其执行次序与itemEffect相反,建议在表格注释中强调一下 10. 装备孔的最大总个数在15*15为8而不再是6,在线文档没有提到