From 3e1220c3507e5eaadc75bb3a1110767fa7efe722 Mon Sep 17 00:00:00 2001 From: oc Date: Sat, 8 Dec 2018 20:16:26 +0800 Subject: [PATCH 1/4] weakValue --- libs/events.js | 15 ++++++++------- project/functions.js | 15 ++++++++------- project/items.js | 11 ++++++----- 3 files changed, 22 insertions(+), 19 deletions(-) diff --git a/libs/events.js b/libs/events.js index d2c55581..0a9c0e1d 100644 --- a/libs/events.js +++ b/libs/events.js @@ -1884,13 +1884,14 @@ events.prototype.passNet = function (data) { if (data.event.id=='weakNet') { // 衰网 if (core.hasFlag('weak')) return; core.setFlag('weak', true); - var weakValue = core.values.weakValue; - var weakAtk = weakValue>=1?weakValue:Math.floor(weakValue*core.status.hero.atk); - var weakDef = weakValue>=1?weakValue:Math.floor(weakValue*core.status.hero.def); - core.setFlag('weakAtk', weakAtk); - core.setFlag('weakDef', weakDef); - core.status.hero.atk-=weakAtk; - core.status.hero.def-=weakDef; + if (core.values.weakValue>=1) { // >=1:直接扣数值 + core.status.hero.atk -= core.values.weakValue; + core.status.hero.def -= core.values.weakValue; + } + else { // <1:扣比例 + core.setFlag("equip_atk_buff", core.getFlag("equip_atk_buff", 1) + core.values.weakValue - 1); + core.setFlag("equip_def_buff", core.getFlag("equip_def_buff", 1) + core.values.weakValue - 1); + } } if (data.event.id=='curseNet') { // 咒网 if (core.hasFlag('curse')) return; diff --git a/project/functions.js b/project/functions.js index 20b5b209..5e677c96 100644 --- a/project/functions.js +++ b/project/functions.js @@ -179,13 +179,14 @@ var functions_d6ad677b_427a_4623_b50f_a445a3b0ef8a = // 衰弱 if (core.enemys.hasSpecial(special, 13) && !core.hasFlag('weak')) { core.setFlag('weak', true); - var weakValue = core.values.weakValue; - var weakAtk = weakValue>=1?weakValue:Math.floor(weakValue*core.status.hero.atk); - var weakDef = weakValue>=1?weakValue:Math.floor(weakValue*core.status.hero.def); - core.setFlag('weakAtk', weakAtk); - core.setFlag('weakDef', weakDef); - core.status.hero.atk-=weakAtk; - core.status.hero.def-=weakDef; + if (core.values.weakValue>=1) { // >=1:直接扣数值 + core.status.hero.atk -= core.values.weakValue; + core.status.hero.def -= core.values.weakValue; + } + else { // <1:扣比例 + core.setFlag("equip_atk_buff", core.getFlag("equip_atk_buff", 1) + core.values.weakValue - 1); + core.setFlag("equip_def_buff", core.getFlag("equip_def_buff", 1) + core.values.weakValue - 1); + } } // 诅咒 if (core.enemys.hasSpecial(special, 14) && !core.hasFlag('curse')) { diff --git a/project/items.js b/project/items.js index 4c648cfe..4f925f40 100644 --- a/project/items.js +++ b/project/items.js @@ -1,4 +1,4 @@ -var items_296f5d02_12fd_4166_a7c1_b5e830c9ee3a = +var items_296f5d02_12fd_4166_a7c1_b5e830c9ee3a = { "items": { "yellowKey": { @@ -301,7 +301,7 @@ var items_296f5d02_12fd_4166_a7c1_b5e830c9ee3a = "cls": "constants", "name": "技能:二倍斩", "text": "可以打开或关闭主动技能二倍斩", - "hideInReplay": true + "hideInReplay": true } }, "itemEffect": { @@ -368,9 +368,9 @@ var items_296f5d02_12fd_4166_a7c1_b5e830c9ee3a = "upFly": "var loc = {'direction': core.status.hero.loc.direction, 'x': core.status.event.data.x, 'y': core.status.event.data.y};\ncore.changeFloor(core.status.event.data.id, null, loc, null, function (){\n\tcore.drawTip(core.material.items[itemId].name + '使用成功');\n\tcore.replay();\n});", "downFly": "var loc = {'direction': core.status.hero.loc.direction, 'x': core.status.event.data.x, 'y': core.status.event.data.y};\ncore.changeFloor(core.status.event.data.id, null, loc, null, function (){\n\tcore.drawTip(core.material.items[itemId].name + '使用成功');\n\tcore.replay();\n});", "poisonWine": "core.removeFlag('poison');", - "weakWine": "core.removeFlag('weak');\ncore.status.hero.atk += core.getFlag('weakAtk', core.values.weakValue);\ncore.status.hero.def += core.getFlag('weakDef', core.values.weakValue);", + "weakWine": "core.removeFlag('weak');\nif (core.values.weakValue>=1) { // >=1:直接扣数值\n\tcore.status.hero.atk += core.values.weakValue;\n\tcore.status.hero.def += core.values.weakValue;\n}\nelse { // <1:扣比例\n\tcore.setFlag(\"equip_atk_buff\", core.getFlag(\"equip_atk_buff\", 1) - core.values.weakValue + 1);\n\tcore.setFlag(\"equip_def_buff\", core.getFlag(\"equip_def_buff\", 1) - core.values.weakValue + 1);\n}", "curseWine": "core.removeFlag('curse');", - "superWine": "core.removeFlag('poison');\nif (core.hasFlag('weak')) {\n\tcore.removeFlag('weak');\n\tcore.status.hero.atk += core.getFlag('weakAtk', core.values.weakValue);\n\tcore.status.hero.def += core.getFlag('weakDef', core.values.weakValue);\n}\ncore.removeFlag('curse');", + "superWine": "core.removeFlag('poison');\nif (core.hasFlag('weak')) {\n\tcore.removeFlag('weak');\n\tif (core.values.weakValue>=1) { // >=1:直接扣数值\n\t\tcore.status.hero.atk += core.values.weakValue;\n\t\tcore.status.hero.def += core.values.weakValue;\n\t}\n\telse { // <1:扣比例\n\t\tcore.setFlag(\"equip_atk_buff\", core.getFlag(\"equip_atk_buff\", 1) - core.values.weakValue + 1);\n\t\tcore.setFlag(\"equip_def_buff\", core.getFlag(\"equip_def_buff\", 1) - core.values.weakValue + 1);\n\t}\n}\ncore.removeFlag('curse');", "lifeWand": "core.insertAction([\n\t{\"type\": \"input\", \"text\": \"请输入生命魔杖使用次数:(0-${item:lifeWand})\"},\n\t{\"type\": \"if\", \"condition\": \"flag:input<=item:lifeWand\",\n\t\t\"true\": [\n\t\t\t{\"type\": \"setValue\", \"name\": \"item:lifeWand\", \"value\": \"item:lifeWand-flag:input\"},\n\t\t\t{\"type\": \"setValue\", \"name\": \"status:hp\", \"value\": \"status:hp+flag:input*100\"},\n\t\t\t\"成功使用${flag:input}次生命魔杖,恢复${flag:input*100}点生命。\"\n\t\t],\n\t\t\"false\": [\"输入不合法!\"]\n\t},\n]);\ncore.addItem('lifeWand', 1);", "jumpShoes": "core.insertAction({\"type\":\"jumpHero\",\"loc\":[core.nextX(2),core.nextY(2)]});", "redPotion": "core.status.hero.hp += core.values.redPotion", @@ -411,5 +411,6 @@ var items_296f5d02_12fd_4166_a7c1_b5e830c9ee3a = "greenJewel": "true", "yellowJewel": "true", "skill1": "true" - } + }, + "canEquip": {} } \ No newline at end of file From 962cc005c67ff2743e4b310b6fb9c962a8f28703 Mon Sep 17 00:00:00 2001 From: oc Date: Sat, 8 Dec 2018 20:19:06 +0800 Subject: [PATCH 2/4] weakValue --- libs/events.js | 4 ++-- project/functions.js | 4 ++-- project/items.js | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/libs/events.js b/libs/events.js index 0a9c0e1d..048e3118 100644 --- a/libs/events.js +++ b/libs/events.js @@ -1889,8 +1889,8 @@ events.prototype.passNet = function (data) { core.status.hero.def -= core.values.weakValue; } else { // <1:扣比例 - core.setFlag("equip_atk_buff", core.getFlag("equip_atk_buff", 1) + core.values.weakValue - 1); - core.setFlag("equip_def_buff", core.getFlag("equip_def_buff", 1) + core.values.weakValue - 1); + core.setFlag("equip_atk_buff", core.getFlag("equip_atk_buff", 1) - core.values.weakValue); + core.setFlag("equip_def_buff", core.getFlag("equip_def_buff", 1) - core.values.weakValue); } } if (data.event.id=='curseNet') { // 咒网 diff --git a/project/functions.js b/project/functions.js index 5e677c96..5e21f9d1 100644 --- a/project/functions.js +++ b/project/functions.js @@ -184,8 +184,8 @@ var functions_d6ad677b_427a_4623_b50f_a445a3b0ef8a = core.status.hero.def -= core.values.weakValue; } else { // <1:扣比例 - core.setFlag("equip_atk_buff", core.getFlag("equip_atk_buff", 1) + core.values.weakValue - 1); - core.setFlag("equip_def_buff", core.getFlag("equip_def_buff", 1) + core.values.weakValue - 1); + core.setFlag("equip_atk_buff", core.getFlag("equip_atk_buff", 1) - core.values.weakValue); + core.setFlag("equip_def_buff", core.getFlag("equip_def_buff", 1) - core.values.weakValue); } } // 诅咒 diff --git a/project/items.js b/project/items.js index 4f925f40..8b25809c 100644 --- a/project/items.js +++ b/project/items.js @@ -368,9 +368,9 @@ var items_296f5d02_12fd_4166_a7c1_b5e830c9ee3a = "upFly": "var loc = {'direction': core.status.hero.loc.direction, 'x': core.status.event.data.x, 'y': core.status.event.data.y};\ncore.changeFloor(core.status.event.data.id, null, loc, null, function (){\n\tcore.drawTip(core.material.items[itemId].name + '使用成功');\n\tcore.replay();\n});", "downFly": "var loc = {'direction': core.status.hero.loc.direction, 'x': core.status.event.data.x, 'y': core.status.event.data.y};\ncore.changeFloor(core.status.event.data.id, null, loc, null, function (){\n\tcore.drawTip(core.material.items[itemId].name + '使用成功');\n\tcore.replay();\n});", "poisonWine": "core.removeFlag('poison');", - "weakWine": "core.removeFlag('weak');\nif (core.values.weakValue>=1) { // >=1:直接扣数值\n\tcore.status.hero.atk += core.values.weakValue;\n\tcore.status.hero.def += core.values.weakValue;\n}\nelse { // <1:扣比例\n\tcore.setFlag(\"equip_atk_buff\", core.getFlag(\"equip_atk_buff\", 1) - core.values.weakValue + 1);\n\tcore.setFlag(\"equip_def_buff\", core.getFlag(\"equip_def_buff\", 1) - core.values.weakValue + 1);\n}", + "weakWine": "core.removeFlag('weak');\nif (core.values.weakValue>=1) { // >=1:直接扣数值\n\tcore.status.hero.atk += core.values.weakValue;\n\tcore.status.hero.def += core.values.weakValue;\n}\nelse { // <1:扣比例\n\tcore.setFlag(\"equip_atk_buff\", core.getFlag(\"equip_atk_buff\", 1) + core.values.weakValue);\n\tcore.setFlag(\"equip_def_buff\", core.getFlag(\"equip_def_buff\", 1) + core.values.weakValue);\n}", "curseWine": "core.removeFlag('curse');", - "superWine": "core.removeFlag('poison');\nif (core.hasFlag('weak')) {\n\tcore.removeFlag('weak');\n\tif (core.values.weakValue>=1) { // >=1:直接扣数值\n\t\tcore.status.hero.atk += core.values.weakValue;\n\t\tcore.status.hero.def += core.values.weakValue;\n\t}\n\telse { // <1:扣比例\n\t\tcore.setFlag(\"equip_atk_buff\", core.getFlag(\"equip_atk_buff\", 1) - core.values.weakValue + 1);\n\t\tcore.setFlag(\"equip_def_buff\", core.getFlag(\"equip_def_buff\", 1) - core.values.weakValue + 1);\n\t}\n}\ncore.removeFlag('curse');", + "superWine": "core.removeFlag('poison');\nif (core.hasFlag('weak')) {\n\tcore.removeFlag('weak');\n\tif (core.values.weakValue>=1) { // >=1:直接扣数值\n\t\tcore.status.hero.atk += core.values.weakValue;\n\t\tcore.status.hero.def += core.values.weakValue;\n\t}\n\telse { // <1:扣比例\n\t\tcore.setFlag(\"equip_atk_buff\", core.getFlag(\"equip_atk_buff\", 1) + core.values.weakValue);\n\t\tcore.setFlag(\"equip_def_buff\", core.getFlag(\"equip_def_buff\", 1) + core.values.weakValue);\n\t}\n}\ncore.removeFlag('curse');", "lifeWand": "core.insertAction([\n\t{\"type\": \"input\", \"text\": \"请输入生命魔杖使用次数:(0-${item:lifeWand})\"},\n\t{\"type\": \"if\", \"condition\": \"flag:input<=item:lifeWand\",\n\t\t\"true\": [\n\t\t\t{\"type\": \"setValue\", \"name\": \"item:lifeWand\", \"value\": \"item:lifeWand-flag:input\"},\n\t\t\t{\"type\": \"setValue\", \"name\": \"status:hp\", \"value\": \"status:hp+flag:input*100\"},\n\t\t\t\"成功使用${flag:input}次生命魔杖,恢复${flag:input*100}点生命。\"\n\t\t],\n\t\t\"false\": [\"输入不合法!\"]\n\t},\n]);\ncore.addItem('lifeWand', 1);", "jumpShoes": "core.insertAction({\"type\":\"jumpHero\",\"loc\":[core.nextX(2),core.nextY(2)]});", "redPotion": "core.status.hero.hp += core.values.redPotion", From 7d9c111479b991d9274efc5f518b653eb3de0c44 Mon Sep 17 00:00:00 2001 From: oc Date: Sat, 8 Dec 2018 21:06:30 +0800 Subject: [PATCH 3/4] fog onerror --- libs/core.js | 3 +++ 1 file changed, 3 insertions(+) diff --git a/libs/core.js b/libs/core.js index 6a602754..21972a8d 100644 --- a/libs/core.js +++ b/libs/core.js @@ -331,6 +331,9 @@ core.prototype.init = function (coreData, callback) { core.material.ground.src = "project/images/ground.png"; core.animateFrame.weather.fog = new Image(); + core.animateFrame.weather.fog.onerror = function () { + core.animateFrame.weather.fog = null; + } core.animateFrame.weather.fog.src = "project/images/fog.png"; core.bigmap.tempCanvas = document.createElement('canvas').getContext('2d'); From 58ba6b57b0cabb64158449197c79fd77c7b25fbd Mon Sep 17 00:00:00 2001 From: oc Date: Sat, 8 Dec 2018 23:58:04 +0800 Subject: [PATCH 4/4] onload --- libs/loader.js | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/libs/loader.js b/libs/loader.js index 5ff3c386..ff24e929 100644 --- a/libs/loader.js +++ b/libs/loader.js @@ -106,14 +106,10 @@ loader.prototype.loadImage = function (imgName, callback) { if (name.indexOf(".")<0) name=name+".png"; var image = new Image(); - image.src = 'project/images/' + name + "?v=" + main.version; - if (image.complete) { - callback(imgName, image); - return; - } image.onload = function () { callback(imgName, image); } + image.src = 'project/images/' + name + "?v=" + main.version; } catch (e) { console.log(e);