diff --git a/_server/blockly/MotaAction.g4 b/_server/blockly/MotaAction.g4 index 236d0d53..c60f37a5 100644 --- a/_server/blockly/MotaAction.g4 +++ b/_server/blockly/MotaAction.g4 @@ -507,7 +507,7 @@ setGlobalFlag_s /* setGlobalFlag_s tooltip : setGlobalFlag:设置系统开关 -helpUrl : https://h5mota.com/games/template/docs/#/event?id=setGlobalValue%ef%bc%9a%e8%ae%be%e7%bd%ae%e4%b8%80%e4%b8%aa%e5%85%a8%e5%b1%80%e6%95%b0%e5%80%bc +helpUrl : https://h5mota.com/games/template/docs/#/event?id=setGlobalFlag%ef%bc%9a%e8%ae%be%e7%bd%ae%e4%b8%80%e4%b8%aa%e7%b3%bb%e7%bb%9f%e5%bc%80%e5%85%b3 default : ["enableFloor","true"] colour : this.dataColor var code = '{"type": "setGlobalFlag", "name": "'+Global_Flag_List_0+'", "value": '+Bool_0+'},\n'; diff --git a/docs/event.md b/docs/event.md index 6fd8e0ca..39b2b186 100644 --- a/docs/event.md +++ b/docs/event.md @@ -431,13 +431,13 @@ value是一个表达式,将通过这个表达式计算出的结果赋值给nam ``` js "x,y": [ // 实际执行的事件列表 - {"type": "setFloor", "name": "title", "value": "'主塔 0 层'" } // 设置当前楼层的中文名为主塔0层 + {"type": "setFloor", "name": "title", "value": ""主塔 0 层"" } // 设置当前楼层的中文名为主塔0层 {"type": "setFloor", "name": "canFlyTo", "floorId": "MT2", "value": "false" } // 设置MT2层不可飞行 {"type": "setFloor", "name": "cannotViewMap", "floorId": "MT0", "value": "true" } // 设置MT0层不可被浏览地图 {"type": "setFloor", "name": "item_ratio", "value": "5" } // 设置当前楼层的宝石血瓶属性加成为5 - {"type": "setFloor", "name": "images", "value": "[[0,0,'tree.png',2]]" } // 设置当前楼层的楼层贴图 + {"type": "setFloor", "name": "images", "value": "[[0,0,"tree.png",2]]" } // 设置当前楼层的楼层贴图 {"type": "setFloor", "name": "upFloor", "value": "[2,3]" } // 设置当前楼层的上楼梯 - {"type": "setFloor", "name": "bgm", "floorId": "MT10", "value": "'233.mp3'" } // 设置当前楼层的背景音乐 + {"type": "setFloor", "name": "bgm", "floorId": "MT10", "value": ""233.mp3"" } // 设置当前楼层的背景音乐 ] ``` @@ -481,6 +481,23 @@ name必填项,代表要修改的全局数值,其和全塔属性中的values value为必填项,代表要修改到的结果。该项必须是个数值。 +### setGlobalFlag:设置一个系统开关 + +使用`{"type":"setGlobalFlag"}`可以设置一个系统开关。 + +``` js +"x,y": [ // 实际执行的事件列表 + {"type": "setGlobalFlag", "name": "enableMDef", "value": false}, // 不在状态栏显示魔防值 +] +``` + +name必填项,代表要修改的系统开关,其是全塔属性中的flags中的一部分。目前只能为`"enableFloor", "enableName", "enableLv", +"enableHPMax", "enableMana", "enableMDef", "enableMoney", "enableExperience", "enableLevelUp", "levelUpLeftMode", +"enableKeys", "enablePZF", "enableDebuff", "enableSkill", "flyNearStair", "enableAddPoint", "enableNegativeDamage", +"useLoop", "enableGentleClick", "canGoDeadZone", "enableMoveDirectly", "disableShopOnDamage"`。 + +value为必填项,只能为true或false,代表要修改到的结果。 + ### show:将一个禁用事件启用 我们上面提到了,所有事件都必须靠其他事件驱动来完成,不存在当某个flag为true时自动执行的说法。那么,我们自然要有启用事件的写法。 @@ -730,7 +747,7 @@ loc为可选的,表示要更改地图块的坐标。如果忽略此项,则 "x,y": [ // 实际执行的事件列表 {"type": "setHeroIcon", "name": "hero2.png"}, // 将勇士行走图改成hero2.png;必须在全塔属性的images中被定义过。 {"type": "setHeroIcon"}, // 如果不加name则恢复最初默认状态 - {"type": "setValue", "name": "status:name", "value": "'可绒'"}, // 修改勇士名;请注意value必须加单引号。 + {"type": "setValue", "name": "status:name", "value": ""可绒""}, // 修改勇士名;请注意value必须加单引号。 ] ``` @@ -2041,7 +2058,7 @@ if (core.getFlag("door",0)==2) { ////// 使用炸弹/圣锤后的事件 ////// "afterUseBomb": function () { // 这是一个使用炸弹也能开门的例子 - if (core.status.floorId=='xxx' && core.terrainExists(x0,y0,'specialDoor') // 某个楼层,该机关门存在 + if (core.status.floorId=="xxx" && core.terrainExists(x0,y0,"specialDoor") // 某个楼层,该机关门存在 && !core.enemyExists(x1,y1) && !core.enemyExists(x2,y2)) // 且守门的怪物都不存在 { core.insertAction([ // 插入事件 @@ -2077,7 +2094,7 @@ if (core.getFlag("door",0)==2) { // 地图上是否还存在未推到的箱子,如果不存在则返回true,存在则返回false for (var i=0;i