items_296f5d02_12fd_4166_a7c1_b5e830c9ee3a = { "items": { "yellowKey": { "cls": "keys", "name": "黄钥匙" }, "blueKey": { "cls": "keys", "name": "蓝钥匙" }, "redKey": { "cls": "keys", "name": "红钥匙" }, "redJewel": { "cls": "items", "name": "红宝石" }, "blueJewel": { "cls": "items", "name": "蓝宝石" }, "greenJewel": { "cls": "items", "name": "绿宝石" }, "yellowJewel": { "cls": "items", "name": "黄宝石" }, "redPotion": { "cls": "items", "name": "红血瓶" }, "bluePotion": { "cls": "items", "name": "蓝血瓶" }, "yellowPotion": { "cls": "items", "name": "黄血瓶" }, "greenPotion": { "cls": "items", "name": "绿血瓶" }, "sword1": { "cls": "item", "name": "铁剑", "text": "一把很普通的铁剑", "equipType": 0, "equipEffect": { "atk": 10 }, "animate": "sword" }, "sword2": { "cls": "items", "name": "银剑", "text": "一把很普通的银剑", "equipType": 0, "equipEffect": { "atk": 20 }, "animate": "sword" }, "sword3": { "cls": "items", "name": "骑士剑", "text": "一把很普通的骑士剑", "equipType": 0, "equipEffect": { "atk": 40 }, "animate": "sword" }, "sword4": { "cls": "items", "name": "圣剑", "text": "一把很普通的圣剑", "equipType": 0, "equipEffect": { "atk": 80 }, "animate": "sword" }, "sword5": { "cls": "items", "name": "神圣剑", "text": "一把很普通的神圣剑", "equipType": 0, "equipEffect": { "atk": 100 }, "animate": "sword" }, "shield1": { "cls": "items", "name": "铁盾", "text": "一个很普通的铁盾", "equipType": 1, "equipEffect": { "def": 10 }, }, "shield2": { "cls": "items", "name": "银盾", "text": "一个很普通的银盾", "equipType": 1, "equipEffect": { "def": 20 }, }, "shield3": { "cls": "items", "name": "骑士盾", "text": "一个很普通的骑士盾", "equipType": 1, "equipEffect": { "def": 40 }, }, "shield4": { "cls": "items", "name": "圣盾", "text": "一个很普通的圣盾", "equipType": 1, "equipEffect": { "def": 80 }, }, "shield5": { "cls": "items", "name": "神圣盾", "text": "一个很普通的神圣盾", "equipType": 1, "equipEffect": { "def": 100, "mdef": 100 }, }, "superPotion": { "cls": "items", "name": "圣水" }, "moneyPocket": { "cls": "items", "name": "金钱袋" }, "book": { "cls": "constants", "name": "怪物手册", "text": "可以查看当前楼层各怪物属性" }, "fly": { "cls": "constants", "name": "楼层传送器", "text": "可以自由往来去过的楼层" }, "coin": { "cls": "constants", "name": "幸运金币", "text": "持有时打败怪物可得双倍金币" }, "snow": { "cls": "constants", "name": "冰冻徽章", "text": "可以将面前的熔岩变成平地" }, "cross": { "cls": "constants", "name": "十字架", "text": "持有后无视怪物的无敌属性" }, "knife": { "cls": "constants", "name": "屠龙匕首", "text": "该道具尚未被定义" }, "shoes": { "cls": "constants", "name": "绿鞋", "text": "持有时无视负面地形" }, "bigKey": { "cls": "tools", "name": "大黄门钥匙", "text": "可以开启当前层所有黄门" }, "greenKey": { "cls": "tools", "name": "绿钥匙", "text": "可以打开一扇绿门" }, "steelKey": { "cls": "tools", "name": "铁门钥匙", "text": "可以打开一扇铁门" }, "pickaxe": { "cls": "tools", "name": "破墙镐", "text": "可以破坏勇士面前的墙" }, "icePickaxe": { "cls": "tools", "name": "破冰镐", "text": "可以破坏勇士面前的一堵冰墙" }, "bomb": { "cls": "tools", "name": "炸弹", "text": "可以炸掉勇士面前的怪物" }, "centerFly": { "cls": "tools", "name": "中心对称飞行器", "text": "可以飞向当前楼层中心对称的位置" }, "upFly": { "cls": "tools", "name": "上楼器", "text": "可以飞往楼上的相同位置" }, "downFly": { "cls": "tools", "name": "下楼器", "text": "可以飞往楼下的相同位置" }, "earthquake": { "cls": "tools", "name": "地震卷轴", "text": "可以破坏当前层的所有墙" }, "poisonWine": { "cls": "tools", "name": "解毒药水", "text": "可以解除中毒状态" }, "weakWine": { "cls": "tools", "name": "解衰药水", "text": "可以解除衰弱状态" }, "curseWine": { "cls": "tools", "name": "解咒药水", "text": "可以解除诅咒状态" }, "superWine": { "cls": "tools", "name": "万能药水", "text": "可以解除所有不良状态" }, "hammer": { "cls": "tools", "name": "圣锤", "text": "可以炸掉勇士面前的怪物" }, "lifeWand": { "cls": "tools", "name": "生命魔杖", "text": "可以恢复100点生命值" }, "jumpShoes": { "cls": "tools", "name": "跳跃靴", "text": "能跳跃到前方两格处" }, "blank": { "cls": "blank", "name": " ", "text": " ", "animate": "hand" }, }, "itemEffect": { "redJewel": "core.status.hero.atk += core.values.redJewel * ratio", "blueJewel": "core.status.hero.def += core.values.blueJewel * ratio", "greenJewel": "core.status.hero.mdef += core.values.greenJewel * ratio", "yellowJewel": "core.status.hero.hp+=1000;core.status.hero.atk+=6;core.status.hero.def+=6;core.status.hero.mdef+=10;", "redPotion": "core.status.hero.hp += core.values.redPotion * ratio", "bluePotion": "core.status.hero.hp += core.values.bluePotion * ratio", "yellowPotion": "core.status.hero.hp += core.values.yellowPotion * ratio", "greenPotion": "core.status.hero.hp += core.values.greenPotion * ratio", "sword1": "core.status.hero.atk += 10", "sword2": "core.status.hero.atk += 20", "sword3": "core.status.hero.atk += 40", "sword4": "core.status.hero.atk += 80", "sword5": "core.status.hero.atk += 100", "shield1": "core.status.hero.def += 10", "shield2": "core.status.hero.def += 20", "shield3": "core.status.hero.def += 40", "shield4": "core.status.hero.def += 80", "shield5": "core.status.hero.def += 100;core.status.hero.mdef += 100", "bigKey": "core.status.hero.items.keys.yellowKey++;core.status.hero.items.keys.blueKey++;core.status.hero.items.keys.redKey++;", "superPotion": "core.status.hero.hp *= 2", "moneyPocket": "core.status.hero.money += core.values.moneyPocket" }, "itemEffectTip": { "redJewel": "',攻击+'+core.values.redJewel * ratio", "blueJewel": "',防御+'+core.values.blueJewel * ratio", "greenJewel": "',魔防+'+core.values.greenJewel * ratio", "yellowJewel": "',全属性提升'", "redPotion": "',生命+'+core.values.redPotion * ratio", "bluePotion": "',生命+'+core.values.bluePotion * ratio", "yellowPotion": "',生命+'+core.values.yellowPotion * ratio", "greenPotion": "',生命+'+core.values.greenPotion * ratio", "sword1": ",攻击+10", "sword2": ",攻击+20", "sword3": ",攻击+40", "sword4": ",攻击+80", "sword5": ",攻击+100", "shield1": ",防御+10", "shield2": ",防御+20", "shield3": ",防御+40", "shield4": ",防御+80", "shield5": ",防御+100,魔防+100", "bigKey": "',全钥匙+1'", "superPotion": "',生命值翻倍'", "moneyPocket": "',金币+'+core.values.moneyPocket" }, "useItemEffect": { "book": "core.ui.drawBook(0);", "fly": "core.ui.drawFly(core.status.hero.flyRange.indexOf(core.status.floorId));", "earthquake": "core.removeBlockByIds(core.status.floorId, core.status.event.data);\ncore.drawMap(core.status.floorId, function () {\n core.drawTip(core.material.items[itemId].name + '使用成功');\n});", "pickaxe": "core.removeBlockByIds(core.status.floorId, core.status.event.data);\ncore.drawMap(core.status.floorId, function () {\n core.drawTip(core.material.items[itemId].name + '使用成功');\n});", "icePickaxe": "core.removeBlockByIds(core.status.floorId, core.status.event.data);\ncore.drawMap(core.status.floorId, function () {\n core.drawTip(core.material.items[itemId].name + '使用成功');\n});", "snow": "core.removeBlockByIds(core.status.floorId, core.status.event.data);\ncore.drawMap(core.status.floorId, function () {\n core.drawTip(core.material.items[itemId].name + '使用成功');\n});", "bigKey": "core.removeBlockByIds(core.status.floorId, core.status.event.data);\ncore.drawMap(core.status.floorId, function () {\n core.drawTip(core.material.items[itemId].name + '使用成功');\n});", "bomb": "core.removeBlockByIds(core.status.floorId, core.status.event.data);\ncore.drawMap(core.status.floorId, function () {\n core.drawTip(core.material.items[itemId].name + '使用成功');\n core.events.afterUseBomb();\n});", "hammer": "core.removeBlockByIds(core.status.floorId, core.status.event.data);\ncore.drawMap(core.status.floorId, function () {\n core.drawTip(core.material.items[itemId].name + '使用成功');\n core.events.afterUseBomb();\n});", "centerFly": "core.clearMap('hero');\ncore.setHeroLoc('x', (core.bigmap.width||13)-1-core.getHeroLoc('x'));\ncore.setHeroLoc('y', (core.bigmap.height||13)-1-core.getHeroLoc('y'));\ncore.drawHero();\ncore.drawTip(core.material.items[itemId].name + '使用成功');", "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 core.drawTip(core.material.items[itemId].name + '使用成功');\n core.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 core.drawTip(core.material.items[itemId].name + '使用成功');\n core.replay();\n});", "poisonWine": "core.setFlag('poison', false);", "weakWine": "core.setFlag('weak', false);\ncore.status.hero.atk += core.getFlag('weakAtk', core.values.weakValue);\ncore.status.hero.def += core.getFlag('weakDef', core.values.weakValue);", "curseWine": "core.setFlag('curse', false);", "superWine": "core.setFlag('poison', false);\nif (core.hasFlag('weak')) {\n core.setFlag('weak', false);\n core.status.hero.atk += core.getFlag('weakAtk', core.values.weakValue);\n core.status.hero.def += core.getFlag('weakDef', core.values.weakValue);\n}\ncore.setFlag('curse', false);", "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.setItem('lifeWand', core.itemCount('lifeWand')+1);", "jumpShoes": "core.insertAction({\"type\":\"jumpHero\",\"loc\":[core.nextX(2),core.nextY(2)]});" }, "canUseItemEffect": { "book": "true", "fly": "core.status.hero.flyRange.indexOf(core.status.floorId)>=0", "pickaxe": "var able=false;\nvar ids = [], id2s = [];\nfor (var i in core.status.thisMap.blocks) {\n\tvar block = core.status.thisMap.blocks[i];\n\tif (core.isset(block.event) && !block.disable && Math.abs(block.x-core.status.hero.loc.x)+Math.abs(block.y-core.status.hero.loc.y)<=1\n\t\t&& (block.event.id == 'yellowWall' || block.event.id=='whiteWall' || block.event.id=='blueWall')) // 能破哪些墙\n\t{\n\t\t// 四个方向\n\t\tif (core.flags.pickaxeFourDirections || (block.x == core.nextX() && block.y == core.nextY()))\n\t\t\tids.push(i);\n\t\telse id2s.push(i);\n\t}\n}\nif (ids.length>0) {\n\tcore.status.event.data = ids;\n\table=true;\n}\nelse if (id2s.length==1) {\n\tcore.status.event.data = id2s;\n\table=true;\n}\nable", "icePickaxe": "var able=false;\nfor (var i in core.status.thisMap.blocks) {\n\tvar block = core.status.thisMap.blocks[i];\n\tif (core.isset(block.event) && !block.disable && block.x==core.nextX() && block.y==core.nextY() && block.event.id=='ice') {\n\t\tcore.status.event.data = [i];\n\t\table=true;\n\t}\n}\nable", "bomb": "var able=false;\nvar ids = [], id2s = [];\nfor (var i in core.status.thisMap.blocks) {\n\tvar block = core.status.thisMap.blocks[i];\n\tif (core.isset(block.event) && !block.disable && block.event.cls.indexOf('enemy')==0 && Math.abs(block.x-core.status.hero.loc.x)+Math.abs(block.y-core.status.hero.loc.y)<=1) {\n\t\tvar enemy = core.material.enemys[block.event.id];\n\t\tif (core.isset(enemy) && enemy.notBomb) continue;\n\t\tif (core.flags.bombFourDirections || (block.x==core.nextX() && block.y==core.nextY()))\n\t\t\tids.push(i);\n\t\telse\n\t\t\tid2s.push(i);\n\t}\n}\nif (ids.length>0) {\n\tcore.status.event.data = ids;\n\table=true;\n}\nelse if (id2s.length==1) {\n\tcore.status.event.data = id2s;\n\table=true;\n}\nable", "hammer": "var able=false;\nvar ids = [], id2s = [];\nfor (var i in core.status.thisMap.blocks) {\n\tvar block = core.status.thisMap.blocks[i];\n\tif (core.isset(block.event) && !block.disable && block.event.cls.indexOf('enemy')==0 && \n\t\tMath.abs(block.x-core.status.hero.loc.x)+Math.abs(block.y-core.status.hero.loc.y)<=1) {\n\t\tvar enemy = core.material.enemys[block.event.id];\n\t\tif (core.isset(enemy) && enemy.notBomb) continue;\n\t\tif (block.x==core.nextX() && block.y==core.nextY())\n\t\t\tids.push(i);\n\t\telse\n\t\t\tid2s.push(i);\n\t}\n}\nif (ids.length>0) {\n\tcore.status.event.data = ids;\n\table=true;\n}\nelse if (id2s.length==1) {\n\tcore.status.event.data = id2s;\n\table=true;\n}\nable", "earthquake": "var able=false;\nvar ids = [];\nfor (var i in core.status.thisMap.blocks) {\n var block = core.status.thisMap.blocks[i];\n if (core.isset(block.event) && !block.disable && (block.event.id == 'yellowWall' || block.event.id == 'blueWall' || block.event.id == 'whiteWall')) // 能炸的墙壁\n ids.push(i);\n}\nif (ids.length>0) {\n core.status.event.data = ids;\n able=true;\n}\nable", "centerFly": "var toX = (core.bigmap.width||13)-1-core.getHeroLoc('x'), toY = (core.bigmap.height||13)-1-core.getHeroLoc('y');\ncore.getBlockId(toX, toY) == null", "upFly": "var able=false;\nvar floorId = core.status.floorId, index = core.floorIds.indexOf(floorId);\nif (index=0 && toX=0 && toY0) {\n\tvar toId = core.floorIds[index-1], toX = core.getHeroLoc('x'), toY = core.getHeroLoc('y');\n\tvar mw = core.floors[toId].width||13, mh = core.floors[toId].height||13;\n\tif (toX>=0 && toX=0 && toY0) {\n\tcore.status.event.data = ids;\n\table=true;\n}\nelse if (id2s.length==1) {\n\tcore.status.event.data = id2s;\n\table=true;\n}\nable", "bigKey": "var able=false;\nvar ids = [];\nfor (var i in core.status.thisMap.blocks) {\n var block = core.status.thisMap.blocks[i];\n if (core.isset(block.event) && !block.disable && block.event.id == 'yellowDoor') {\n ids.push(i);\n }\n}\nif (ids.length>0) {\n core.status.event.data = ids;\n able=true;\n}\nable", "poisonWine": "core.hasFlag('poison')", "weakWine": "core.hasFlag('weak')", "curseWine": "core.hasFlag('curse')", "superWine": "core.hasFlag('poison') || core.hasFlag('weak') || core.hasFlag('curse')", "lifeWand": "true", "jumpShoes": "var nx=core.nextX(2),ny=core.nextY(2);nx>=0&&nx=0&&ny