事件多坐标允许任意函数

This commit is contained in:
ckcz123 2021-07-31 12:57:38 +08:00
parent 13cd3a15b2
commit 517cc9ea9d
6 changed files with 131 additions and 153 deletions

View File

@ -1575,6 +1575,9 @@ showDisable: 隐藏点是否不返回nulltrue表示不返回null
getBlockOpacity: fn(x: number, y: number, floorId?: string, showDisable?: bool) -> number getBlockOpacity: fn(x: number, y: number, floorId?: string, showDisable?: bool) -> number
判定某个点的不透明度。如果该点无图块则返回null。 判定某个点的不透明度。如果该点无图块则返回null。
getFaceDownId: fn(block?: string|number|block) -> string
获得某个图块对应行走图朝向向下的那一项的id如果不存在行走图绑定则返回自身id。
getFgMapArray: fn(floorId?: string, noCache?: bool) -> [[number]] getFgMapArray: fn(floorId?: string, noCache?: bool) -> [[number]]
生成前景层矩阵 生成前景层矩阵
例如core.getFgMapArray('MT0'); // 生成主塔0层的前景层矩阵使用缓存 例如core.getFgMapArray('MT0'); // 生成主塔0层的前景层矩阵使用缓存

View File

@ -3213,6 +3213,10 @@ var terndefs_f6783a0a_522d_417e_8407_94c67b692e50 = [
"!doc": "获得某个图块或素材的信息包括IDcls图片坐标faceIds等等", "!doc": "获得某个图块或素材的信息包括IDcls图片坐标faceIds等等",
"!type": "fn(block?: number|string|block) -> blockInfo" "!type": "fn(block?: number|string|block) -> blockInfo"
}, },
"getFaceDownId": {
"!doc": "获得某个图块对应行走图朝向向下的那一项的id如果不存在行走图绑定则返回自身id。",
"!type": "fn(block?: string|number|block) -> string"
},
"canMoveDirectlyArray": { "canMoveDirectlyArray": {
"!doc": "获得某些点可否通行的信息", "!doc": "获得某些点可否通行的信息",
"!type": "fn(locs?: [[number]])" "!type": "fn(locs?: [[number]])"

View File

@ -1342,20 +1342,17 @@ allFloorIds : ['IdString_0']
colour : this.mapColor colour : this.mapColor
var floorstr = ''; var floorstr = '';
if (EvalString_0 && EvalString_1) { if (EvalString_0 && EvalString_1) {
var pattern1 = MotaActionFunctions.pattern.id; var x = EvalString_0, y = EvalString_1;
if(pattern1.test(EvalString_0) || pattern1.test(EvalString_1)){ var pattern = /^([+-]?\d+)(, ?[+-]?\d+)*$/;
EvalString_0=MotaActionFunctions.PosString_pre(EvalString_0); if (pattern.test(x) && pattern.test(y) && x.split(',').length == y.split(',').length) {
EvalString_1=MotaActionFunctions.PosString_pre(EvalString_1); x=x.split(',');
EvalString_0=[EvalString_0,EvalString_1] y=y.split(',');
} else { for(var ii=0;ii<x.length;ii++) x[ii]='['+x[ii].trim()+','+y[ii].trim()+']';
var pattern2 = /^([+-]?\d+)(,[+-]?\d+)*$/; floorstr = ', "loc": ['+x.join(',')+']';
if(!pattern2.test(EvalString_0) || !pattern2.test(EvalString_1))throw new Error('坐标格式错误,请右键点击帮助查看格式'); }
EvalString_0=EvalString_0.split(','); if (floorstr == '') {
EvalString_1=EvalString_1.split(','); floorstr = ', "loc": ["'+x+'","'+y+'"]';
if(EvalString_0.length!==EvalString_1.length)throw new Error('坐标格式错误,请右键点击帮助查看格式');
for(var ii=0;ii<EvalString_0.length;ii++)EvalString_0[ii]='['+EvalString_0[ii]+','+EvalString_1[ii]+']';
} }
floorstr = ', "loc": ['+EvalString_0.join(',')+']';
} }
IdString_0 = IdString_0 && (', "floorId": "'+IdString_0+'"'); IdString_0 = IdString_0 && (', "floorId": "'+IdString_0+'"');
IntString_0 = IntString_0 ?(', "time": '+IntString_0):''; IntString_0 = IntString_0 ?(', "time": '+IntString_0):'';
@ -1377,20 +1374,17 @@ allFloorIds : ['IdString_0']
colour : this.mapColor colour : this.mapColor
var floorstr = ''; var floorstr = '';
if (EvalString_0 && EvalString_1) { if (EvalString_0 && EvalString_1) {
var pattern1 = MotaActionFunctions.pattern.id; var x = EvalString_0, y = EvalString_1;
if(pattern1.test(EvalString_0) || pattern1.test(EvalString_1)){ var pattern = /^([+-]?\d+)(, ?[+-]?\d+)*$/;
EvalString_0=MotaActionFunctions.PosString_pre(EvalString_0); if (pattern.test(x) && pattern.test(y) && x.split(',').length == y.split(',').length) {
EvalString_1=MotaActionFunctions.PosString_pre(EvalString_1); x=x.split(',');
EvalString_0=[EvalString_0,EvalString_1] y=y.split(',');
} else { for(var ii=0;ii<x.length;ii++) x[ii]='['+x[ii].trim()+','+y[ii].trim()+']';
var pattern2 = /^([+-]?\d+)(,[+-]?\d+)*$/; floorstr = ', "loc": ['+x.join(',')+']';
if(!pattern2.test(EvalString_0) || !pattern2.test(EvalString_1))throw new Error('坐标格式错误,请右键点击帮助查看格式'); }
EvalString_0=EvalString_0.split(','); if (floorstr == '') {
EvalString_1=EvalString_1.split(','); floorstr = ', "loc": ["'+x+'","'+y+'"]';
if(EvalString_0.length!==EvalString_1.length)throw new Error('坐标格式错误,请右键点击帮助查看格式');
for(var ii=0;ii<EvalString_0.length;ii++)EvalString_0[ii]='['+EvalString_0[ii]+','+EvalString_1[ii]+']';
} }
floorstr = ', "loc": ['+EvalString_0.join(',')+']';
} }
IdString_0 = IdString_0 && (', "floorId": "'+IdString_0+'"'); IdString_0 = IdString_0 && (', "floorId": "'+IdString_0+'"');
IntString_0 = IntString_0 ?(', "time": '+IntString_0):''; IntString_0 = IntString_0 ?(', "time": '+IntString_0):'';
@ -1413,20 +1407,17 @@ allFloorIds : ['IdString_0']
colour : this.mapColor colour : this.mapColor
var floorstr = ''; var floorstr = '';
if (EvalString_0 && EvalString_1) { if (EvalString_0 && EvalString_1) {
var pattern1 = MotaActionFunctions.pattern.id; var x = EvalString_0, y = EvalString_1;
if(pattern1.test(EvalString_0) || pattern1.test(EvalString_1)){ var pattern = /^([+-]?\d+)(, ?[+-]?\d+)*$/;
EvalString_0=MotaActionFunctions.PosString_pre(EvalString_0); if (pattern.test(x) && pattern.test(y) && x.split(',').length == y.split(',').length) {
EvalString_1=MotaActionFunctions.PosString_pre(EvalString_1); x=x.split(',');
EvalString_0=[EvalString_0,EvalString_1] y=y.split(',');
} else { for(var ii=0;ii<x.length;ii++) x[ii]='['+x[ii].trim()+','+y[ii].trim()+']';
var pattern2 = /^([+-]?\d+)(,[+-]?\d+)*$/; floorstr = ', "loc": ['+x.join(',')+']';
if(!pattern2.test(EvalString_0) || !pattern2.test(EvalString_1))throw new Error('坐标格式错误,请右键点击帮助查看格式'); }
EvalString_0=EvalString_0.split(','); if (floorstr == '') {
EvalString_1=EvalString_1.split(','); floorstr = ', "loc": ["'+x+'","'+y+'"]';
if(EvalString_0.length!==EvalString_1.length)throw new Error('坐标格式错误,请右键点击帮助查看格式');
for(var ii=0;ii<EvalString_0.length;ii++)EvalString_0[ii]='['+EvalString_0[ii]+','+EvalString_1[ii]+']';
} }
floorstr = ', "loc": ['+EvalString_0.join(',')+']';
} }
if (Number_0 < 0 || Number_0 > 1) throw new Error('不透明度需要在0~1之间'); if (Number_0 < 0 || Number_0 > 1) throw new Error('不透明度需要在0~1之间');
IdString_0 = IdString_0 && (', "floorId": "'+IdString_0+'"'); IdString_0 = IdString_0 && (', "floorId": "'+IdString_0+'"');
@ -1449,20 +1440,17 @@ allFloorIds : ['IdString_0']
colour : this.mapColor colour : this.mapColor
var floorstr = ''; var floorstr = '';
if (EvalString_0 && EvalString_1) { if (EvalString_0 && EvalString_1) {
var pattern1 = MotaActionFunctions.pattern.id; var x = EvalString_0, y = EvalString_1;
if(pattern1.test(EvalString_0) || pattern1.test(EvalString_1)){ var pattern = /^([+-]?\d+)(, ?[+-]?\d+)*$/;
EvalString_0=MotaActionFunctions.PosString_pre(EvalString_0); if (pattern.test(x) && pattern.test(y) && x.split(',').length == y.split(',').length) {
EvalString_1=MotaActionFunctions.PosString_pre(EvalString_1); x=x.split(',');
EvalString_0=[EvalString_0,EvalString_1] y=y.split(',');
} else { for(var ii=0;ii<x.length;ii++) x[ii]='['+x[ii].trim()+','+y[ii].trim()+']';
var pattern2 = /^([+-]?\d+)(,[+-]?\d+)*$/; floorstr = ', "loc": ['+x.join(',')+']';
if(!pattern2.test(EvalString_0) || !pattern2.test(EvalString_1))throw new Error('坐标格式错误,请右键点击帮助查看格式'); }
EvalString_0=EvalString_0.split(','); if (floorstr == '') {
EvalString_1=EvalString_1.split(','); floorstr = ', "loc": ["'+x+'","'+y+'"]';
if(EvalString_0.length!==EvalString_1.length)throw new Error('坐标格式错误,请右键点击帮助查看格式');
for(var ii=0;ii<EvalString_0.length;ii++)EvalString_0[ii]='['+EvalString_0[ii]+','+EvalString_1[ii]+']';
} }
floorstr = ', "loc": ['+EvalString_0.join(',')+']';
} }
if (Number_0 < 0) throw '虚化不得小于00为完全没有虚化'; if (Number_0 < 0) throw '虚化不得小于00为完全没有虚化';
if (Int_0 < 0 || Int_0 >= 360) throw '色相需要在0~359之间'; if (Int_0 < 0 || Int_0 >= 360) throw '色相需要在0~359之间';
@ -1565,20 +1553,17 @@ default : ["yellowDoor","","","","",false]
selectPoint : ["EvalString_1", "EvalString_2", "IdString_0"] selectPoint : ["EvalString_1", "EvalString_2", "IdString_0"]
var floorstr = ''; var floorstr = '';
if (EvalString_1 && EvalString_2) { if (EvalString_1 && EvalString_2) {
var pattern1 = MotaActionFunctions.pattern.id; var x = EvalString_1, y = EvalString_2;
if(pattern1.test(EvalString_1) || pattern1.test(EvalString_2)){ var pattern = /^([+-]?\d+)(, ?[+-]?\d+)*$/;
EvalString_1=MotaActionFunctions.PosString_pre(EvalString_1); if (pattern.test(x) && pattern.test(y) && x.split(',').length == y.split(',').length) {
EvalString_2=MotaActionFunctions.PosString_pre(EvalString_2); x=x.split(',');
EvalString_1=[EvalString_1,EvalString_2] y=y.split(',');
} else { for(var ii=0;ii<x.length;ii++) x[ii]='['+x[ii].trim()+','+y[ii].trim()+']';
var pattern2 = /^([+-]?\d+)(,[+-]?\d+)*$/; floorstr = ', "loc": ['+x.join(',')+']';
if(!pattern2.test(EvalString_1) || !pattern2.test(EvalString_2))throw new Error('坐标格式错误,请右键点击帮助查看格式'); }
EvalString_1=EvalString_1.split(','); if (floorstr == '') {
EvalString_2=EvalString_2.split(','); floorstr = ', "loc": ["'+x+'","'+y+'"]';
if(EvalString_1.length!==EvalString_2.length)throw new Error('坐标格式错误,请右键点击帮助查看格式');
for(var ii=0;ii<EvalString_1.length;ii++)EvalString_1[ii]='['+EvalString_1[ii]+','+EvalString_2[ii]+']';
} }
floorstr = ', "loc": ['+EvalString_1.join(',')+']';
} }
IdString_0 = IdString_0 && (', "floorId": "'+IdString_0+'"'); IdString_0 = IdString_0 && (', "floorId": "'+IdString_0+'"');
IntString_0 = IntString_0 && (', "time": ' + IntString_0); IntString_0 = IntString_0 && (', "time": ' + IntString_0);
@ -1600,20 +1585,17 @@ default : [null,"","",""]
selectPoint : ["EvalString_0", "EvalString_1", "IdString_0"] selectPoint : ["EvalString_0", "EvalString_1", "IdString_0"]
var floorstr = ''; var floorstr = '';
if (EvalString_0 && EvalString_1) { if (EvalString_0 && EvalString_1) {
var pattern1 = MotaActionFunctions.pattern.id; var x = EvalString_0, y = EvalString_1;
if(pattern1.test(EvalString_0) || pattern1.test(EvalString_1)){ var pattern = /^([+-]?\d+)(, ?[+-]?\d+)*$/;
EvalString_0=MotaActionFunctions.PosString_pre(EvalString_0); if (pattern.test(x) && pattern.test(y) && x.split(',').length == y.split(',').length) {
EvalString_1=MotaActionFunctions.PosString_pre(EvalString_1); x=x.split(',');
EvalString_0=[EvalString_0,EvalString_1] y=y.split(',');
} else { for(var ii=0;ii<x.length;ii++) x[ii]='['+x[ii].trim()+','+y[ii].trim()+']';
var pattern2 = /^([+-]?\d+)(,[+-]?\d+)*$/; floorstr = ', "loc": ['+x.join(',')+']';
if(!pattern2.test(EvalString_0) || !pattern2.test(EvalString_1))throw new Error('坐标格式错误,请右键点击帮助查看格式'); }
EvalString_0=EvalString_0.split(','); if (floorstr == '') {
EvalString_1=EvalString_1.split(','); floorstr = ', "loc": ["'+x+'","'+y+'"]';
if(EvalString_0.length!==EvalString_1.length)throw new Error('坐标格式错误,请右键点击帮助查看格式');
for(var ii=0;ii<EvalString_0.length;ii++)EvalString_0[ii]='['+EvalString_0[ii]+','+EvalString_1[ii]+']';
} }
floorstr = ', "loc": ['+EvalString_0.join(',')+']';
} }
if (DirectionEx_List_0 == 'null') DirectionEx_List_0 = ''; if (DirectionEx_List_0 == 'null') DirectionEx_List_0 = '';
DirectionEx_List_0 = DirectionEx_List_0 && (', "direction": "'+DirectionEx_List_0+'"'); DirectionEx_List_0 = DirectionEx_List_0 && (', "direction": "'+DirectionEx_List_0+'"');
@ -1634,20 +1616,17 @@ allFloorIds : ['IdString_0']
colour : this.mapColor colour : this.mapColor
var floorstr = ''; var floorstr = '';
if (EvalString_0 && EvalString_1) { if (EvalString_0 && EvalString_1) {
var pattern1 = MotaActionFunctions.pattern.id; var x = EvalString_0, y = EvalString_1;
if(pattern1.test(EvalString_0) || pattern1.test(EvalString_1)){ var pattern = /^([+-]?\d+)(, ?[+-]?\d+)*$/;
EvalString_0=MotaActionFunctions.PosString_pre(EvalString_0); if (pattern.test(x) && pattern.test(y) && x.split(',').length == y.split(',').length) {
EvalString_1=MotaActionFunctions.PosString_pre(EvalString_1); x=x.split(',');
EvalString_0=[EvalString_0,EvalString_1] y=y.split(',');
} else { for(var ii=0;ii<x.length;ii++) x[ii]='['+x[ii].trim()+','+y[ii].trim()+']';
var pattern2 = /^([+-]?\d+)(,[+-]?\d+)*$/; floorstr = ', "loc": ['+x.join(',')+']';
if(!pattern2.test(EvalString_0) || !pattern2.test(EvalString_1))throw new Error('坐标格式错误,请右键点击帮助查看格式'); }
EvalString_0=EvalString_0.split(','); if (floorstr == '') {
EvalString_1=EvalString_1.split(','); floorstr = ', "loc": ["'+x+'","'+y+'"]';
if(EvalString_0.length!==EvalString_1.length)throw new Error('坐标格式错误,请右键点击帮助查看格式');
for(var ii=0;ii<EvalString_0.length;ii++)EvalString_0[ii]='['+EvalString_0[ii]+','+EvalString_1[ii]+']';
} }
floorstr = ', "loc": ['+EvalString_0.join(',')+']';
} }
IdString_0 = IdString_0 && (', "floorId": "'+IdString_0+'"'); IdString_0 = IdString_0 && (', "floorId": "'+IdString_0+'"');
var code = '{"type": "showFloorImg"'+floorstr+IdString_0+'},\n'; var code = '{"type": "showFloorImg"'+floorstr+IdString_0+'},\n';
@ -1666,20 +1645,17 @@ allFloorIds : ['IdString_0']
colour : this.mapColor colour : this.mapColor
var floorstr = ''; var floorstr = '';
if (EvalString_0 && EvalString_1) { if (EvalString_0 && EvalString_1) {
var pattern1 = MotaActionFunctions.pattern.id; var x = EvalString_0, y = EvalString_1;
if(pattern1.test(EvalString_0) || pattern1.test(EvalString_1)){ var pattern = /^([+-]?\d+)(, ?[+-]?\d+)*$/;
EvalString_0=MotaActionFunctions.PosString_pre(EvalString_0); if (pattern.test(x) && pattern.test(y) && x.split(',').length == y.split(',').length) {
EvalString_1=MotaActionFunctions.PosString_pre(EvalString_1); x=x.split(',');
EvalString_0=[EvalString_0,EvalString_1] y=y.split(',');
} else { for(var ii=0;ii<x.length;ii++) x[ii]='['+x[ii].trim()+','+y[ii].trim()+']';
var pattern2 = /^([+-]?\d+)(,[+-]?\d+)*$/; floorstr = ', "loc": ['+x.join(',')+']';
if(!pattern2.test(EvalString_0) || !pattern2.test(EvalString_1))throw new Error('坐标格式错误,请右键点击帮助查看格式'); }
EvalString_0=EvalString_0.split(','); if (floorstr == '') {
EvalString_1=EvalString_1.split(','); floorstr = ', "loc": ["'+x+'","'+y+'"]';
if(EvalString_0.length!==EvalString_1.length)throw new Error('坐标格式错误,请右键点击帮助查看格式');
for(var ii=0;ii<EvalString_0.length;ii++)EvalString_0[ii]='['+EvalString_0[ii]+','+EvalString_1[ii]+']';
} }
floorstr = ', "loc": ['+EvalString_0.join(',')+']';
} }
IdString_0 = IdString_0 && (', "floorId": "'+IdString_0+'"'); IdString_0 = IdString_0 && (', "floorId": "'+IdString_0+'"');
var code = '{"type": "hideFloorImg"'+floorstr+IdString_0+'},\n'; var code = '{"type": "hideFloorImg"'+floorstr+IdString_0+'},\n';
@ -1699,20 +1675,17 @@ allFloorIds : ['IdString_0']
colour : this.mapColor colour : this.mapColor
var floorstr = ''; var floorstr = '';
if (EvalString_0 && EvalString_1) { if (EvalString_0 && EvalString_1) {
var pattern1 = MotaActionFunctions.pattern.id; var x = EvalString_0, y = EvalString_1;
if(pattern1.test(EvalString_0) || pattern1.test(EvalString_1)){ var pattern = /^([+-]?\d+)(, ?[+-]?\d+)*$/;
EvalString_0=MotaActionFunctions.PosString_pre(EvalString_0); if (pattern.test(x) && pattern.test(y) && x.split(',').length == y.split(',').length) {
EvalString_1=MotaActionFunctions.PosString_pre(EvalString_1); x=x.split(',');
EvalString_0=[EvalString_0,EvalString_1] y=y.split(',');
} else { for(var ii=0;ii<x.length;ii++) x[ii]='['+x[ii].trim()+','+y[ii].trim()+']';
var pattern2 = /^([+-]?\d+)(,[+-]?\d+)*$/; floorstr = ', "loc": ['+x.join(',')+']';
if(!pattern2.test(EvalString_0) || !pattern2.test(EvalString_1))throw new Error('坐标格式错误,请右键点击帮助查看格式'); }
EvalString_0=EvalString_0.split(','); if (floorstr == '') {
EvalString_1=EvalString_1.split(','); floorstr = ', "loc": ["'+x+'","'+y+'"]';
if(EvalString_0.length!==EvalString_1.length)throw new Error('坐标格式错误,请右键点击帮助查看格式');
for(var ii=0;ii<EvalString_0.length;ii++)EvalString_0[ii]='['+EvalString_0[ii]+','+EvalString_1[ii]+']';
} }
floorstr = ', "loc": ['+EvalString_0.join(',')+']';
} }
IdString_0 = IdString_0 && (', "floorId": "'+IdString_0+'"'); IdString_0 = IdString_0 && (', "floorId": "'+IdString_0+'"');
var code = '{"type": "showBgFgMap", "name": "' + Bg_Fg_List_0 + '"' +floorstr+IdString_0+'},\n'; var code = '{"type": "showBgFgMap", "name": "' + Bg_Fg_List_0 + '"' +floorstr+IdString_0+'},\n';
@ -1732,20 +1705,17 @@ colour : this.mapColor
selectPoint : ["EvalString_0", "EvalString_1", "IdString_0"] selectPoint : ["EvalString_0", "EvalString_1", "IdString_0"]
var floorstr = ''; var floorstr = '';
if (EvalString_0 && EvalString_1) { if (EvalString_0 && EvalString_1) {
var pattern1 = MotaActionFunctions.pattern.id; var x = EvalString_0, y = EvalString_1;
if(pattern1.test(EvalString_0) || pattern1.test(EvalString_1)){ var pattern = /^([+-]?\d+)(, ?[+-]?\d+)*$/;
EvalString_0=MotaActionFunctions.PosString_pre(EvalString_0); if (pattern.test(x) && pattern.test(y) && x.split(',').length == y.split(',').length) {
EvalString_1=MotaActionFunctions.PosString_pre(EvalString_1); x=x.split(',');
EvalString_0=[EvalString_0,EvalString_1] y=y.split(',');
} else { for(var ii=0;ii<x.length;ii++) x[ii]='['+x[ii].trim()+','+y[ii].trim()+']';
var pattern2 = /^([+-]?\d+)(,[+-]?\d+)*$/; floorstr = ', "loc": ['+x.join(',')+']';
if(!pattern2.test(EvalString_0) || !pattern2.test(EvalString_1))throw new Error('坐标格式错误,请右键点击帮助查看格式'); }
EvalString_0=EvalString_0.split(','); if (floorstr == '') {
EvalString_1=EvalString_1.split(','); floorstr = ', "loc": ["'+x+'","'+y+'"]';
if(EvalString_0.length!==EvalString_1.length)throw new Error('坐标格式错误,请右键点击帮助查看格式');
for(var ii=0;ii<EvalString_0.length;ii++)EvalString_0[ii]='['+EvalString_0[ii]+','+EvalString_1[ii]+']';
} }
floorstr = ', "loc": ['+EvalString_0.join(',')+']';
} }
IdString_0 = IdString_0 && (', "floorId": "'+IdString_0+'"'); IdString_0 = IdString_0 && (', "floorId": "'+IdString_0+'"');
var code = '{"type": "hideBgFgMap", "name": "' + Bg_Fg_List_0 + '"' +floorstr+IdString_0+'},\n'; var code = '{"type": "hideBgFgMap", "name": "' + Bg_Fg_List_0 + '"' +floorstr+IdString_0+'},\n';
@ -1766,20 +1736,17 @@ allFloorIds : ['IdString_0']
default : ["bg","yellowDoor","","",""] default : ["bg","yellowDoor","","",""]
var floorstr = ''; var floorstr = '';
if (EvalString_1 && EvalString_2) { if (EvalString_1 && EvalString_2) {
var pattern1 = MotaActionFunctions.pattern.id; var x = EvalString_1, y = EvalString_2;
if(pattern1.test(EvalString_1) || pattern1.test(EvalString_2)){ var pattern = /^([+-]?\d+)(, ?[+-]?\d+)*$/;
EvalString_1=MotaActionFunctions.PosString_pre(EvalString_1); if (pattern.test(x) && pattern.test(y) && x.split(',').length == y.split(',').length) {
EvalString_2=MotaActionFunctions.PosString_pre(EvalString_2); x=x.split(',');
EvalString_1=[EvalString_1,EvalString_2] y=y.split(',');
} else { for(var ii=0;ii<x.length;ii++) x[ii]='['+x[ii].trim()+','+y[ii].trim()+']';
var pattern2 = /^([+-]?\d+)(,[+-]?\d+)*$/; floorstr = ', "loc": ['+x.join(',')+']';
if(!pattern2.test(EvalString_1) || !pattern2.test(EvalString_2))throw new Error('坐标格式错误,请右键点击帮助查看格式'); }
EvalString_1=EvalString_1.split(','); if (floorstr == '') {
EvalString_2=EvalString_2.split(','); floorstr = ', "loc": ["'+x+'","'+y+'"]';
if(EvalString_1.length!==EvalString_2.length)throw new Error('坐标格式错误,请右键点击帮助查看格式');
for(var ii=0;ii<EvalString_1.length;ii++)EvalString_1[ii]='['+EvalString_1[ii]+','+EvalString_2[ii]+']';
} }
floorstr = ', "loc": ['+EvalString_1.join(',')+']';
} }
IdString_0 = IdString_0 && (', "floorId": "'+IdString_0+'"'); IdString_0 = IdString_0 && (', "floorId": "'+IdString_0+'"');
var code = '{"type": "setBgFgBlock", "name": "' + Bg_Fg_List_0 + '", "number": "'+EvalString_0+'"'+floorstr+IdString_0+'},\n'; var code = '{"type": "setBgFgBlock", "name": "' + Bg_Fg_List_0 + '", "number": "'+EvalString_0+'"'+floorstr+IdString_0+'},\n';
@ -3815,11 +3782,11 @@ return ['core.getBlockCls('+PosString_0+','+PosString_1+')', Blockly.JavaScript.
nextXY_e nextXY_e
: '前方' Int '格的' NextXY_List : '前方' NInt '格的' NextXY_List
/* nextXY_e /* nextXY_e
default : [1, 'nextX'] default : [1, 'nextX']
var code = NextXY_List_0 == 'nextY' ? ('core.nextY('+Int_0+')') : ('core.nextX('+Int_0+')'); var code = NextXY_List_0 == 'nextY' ? ('core.nextY('+NInt+')') : ('core.nextX('+NInt+')');
return [code, Blockly.JavaScript.ORDER_ATOMIC]; return [code, Blockly.JavaScript.ORDER_ATOMIC];
*/; */;

View File

@ -128,13 +128,6 @@ var comment_c456ea59_6018_45ef_8bcc_211a24c627dc = {
"_docs": "怪物描述", "_docs": "怪物描述",
"_data": "可在怪物详细信息页面写的怪物描述,支持颜色、字体大小和样式、粗体斜体等转义方式。" "_data": "可在怪物详细信息页面写的怪物描述,支持颜色、字体大小和样式、粗体斜体等转义方式。"
}, },
"displayIdInBook": {
"_leaf": true,
"_type": "textarea",
"_string": true,
"_docs": "手册ID",
"_data": "在怪物手册中映射到的怪物ID。如果此项不为null则在怪物手册中将用目标ID来替换该怪物原本的ID。常被运用在同一个怪物的多朝向上。"
},
"faceIds": { "faceIds": {
"_leaf": true, "_leaf": true,
"_type": "event", "_type": "event",

View File

@ -1893,7 +1893,15 @@ maps.prototype.searchBlockWithFilter = function (blockFilter, floorId, showDisab
////// 获得某个图块其行走图朝向朝下的图块ID ////// ////// 获得某个图块其行走图朝向朝下的图块ID //////
maps.prototype.getFaceDownId = function (block) { maps.prototype.getFaceDownId = function (block) {
if (block == null || !block.event) return null; if (block == null) return null;
if (typeof block == 'string') { // 参数是ID
block = this.getNumberById(block);
}
if (typeof block == 'number') { // 参数是数字
if (block == 0) return null;
block = this.getBlockByNumber(block);
}
if (!block.event) return null;
return (block.event.faceIds || {}).down || block.event.id; return (block.event.faceIds || {}).down || block.event.id;
} }

3
runtime.d.ts vendored
View File

@ -1826,6 +1826,9 @@ declare class maps {
/** 获得某个图块或素材的信息包括IDcls图片坐标faceIds等等 */ /** 获得某个图块或素材的信息包括IDcls图片坐标faceIds等等 */
getBlockInfo(block?: any): any getBlockInfo(block?: any): any
/** 获得某个图块对应行走图朝向向下的那一项的id如果不存在行走图绑定则返回自身id */
getFaceDownIds(block?: any): string
/** 根据图块的索引来隐藏图块 */ /** 根据图块的索引来隐藏图块 */
hideBlockByIndex(index?: any, floorId?: string): void hideBlockByIndex(index?: any, floorId?: string): void