重做战斗动画

This commit is contained in:
草莓 2025-03-21 11:04:13 +08:00
parent 3224b55f40
commit c2a2f74ba5
4 changed files with 122 additions and 140 deletions

View File

@ -119,7 +119,8 @@ var icons_4665ee12_3a1f_44a4_bea3_0fccba634dc1 =
"T363": 87, "T363": 87,
"T364": 88, "T364": 88,
"T365": 89, "T365": 89,
"T397": 90 "T397": 90,
"T399": 91
}, },
"animates": { "animates": {
"star": 0, "star": 0,

View File

@ -297,6 +297,7 @@ var maps_90f36752_8815_4be8_b32b_d7fad1d0542e =
"396": {"cls":"items","id":"I396"}, "396": {"cls":"items","id":"I396"},
"397": {"cls":"items","id":"postman"}, "397": {"cls":"items","id":"postman"},
"398": {"cls":"terrains","id":"T397"}, "398": {"cls":"terrains","id":"T397"},
"399": {"cls":"terrains","id":"T399"},
"20034": {"cls":"tileset","id":"X20034","canPass":true}, "20034": {"cls":"tileset","id":"X20034","canPass":true},
"20154": {"cls":"tileset","id":"X20154","canPass":true}, "20154": {"cls":"tileset","id":"X20154","canPass":true},
"20216": {"cls":"tileset","id":"X20216","canPass":true}, "20216": {"cls":"tileset","id":"X20216","canPass":true},

Binary file not shown.

Before

Width:  |  Height:  |  Size: 50 KiB

After

Width:  |  Height:  |  Size: 51 KiB

View File

@ -21473,6 +21473,7 @@ var plugins_bb40132b_638b_4a9f_b028_d3fe47acc8d1 =
const ctx = animateAttack.getContext("2d"); const ctx = animateAttack.getContext("2d");
core.plugin.playingattack = new Set(); core.plugin.playingattack = new Set();
const ctx6 = main.dom.animate2.getContext("2d"); const ctx6 = main.dom.animate2.getContext("2d");
const changeY = -30
let easy = false; let easy = false;
const { imagelighter } = core.plugin.utils; const { imagelighter } = core.plugin.utils;
@ -21625,9 +21626,9 @@ var plugins_bb40132b_638b_4a9f_b028_d3fe47acc8d1 =
function animateonAttack(name, onenemy) { function animateonAttack(name, onenemy) {
if (onenemy) { if (onenemy) {
playanimate(name, 290, 180); playanimate(name, 290, 180 + changeY);
} else { } else {
playanimate(name, 130, 180); playanimate(name, 130, 180 + changeY);
} }
} }
@ -21678,20 +21679,30 @@ var plugins_bb40132b_638b_4a9f_b028_d3fe47acc8d1 =
return sx <= x && x <= dx && sy <= y && y <= dy; return sx <= x && x <= dx && sy <= y && y <= dy;
}; };
const pos = [px, py]; const pos = [px, py];
const easybox = makeBox([90, 232], [80, 22]), const easybox = makeBox([90, 232 + changeY], [80, 22]),
easyclosebox = makeBox([290, 232], [40, 22]), easyspeedbox = makeBox([290, 232 + changeY], [40, 22]),
uneasybox = makeBox([265, 330], [65, 20]), uneasybox = makeBox([265, 330 + changeY], [65, 20]),
uneasyclosebox = makeBox([290, 350], [40, 20]); uneasyspeedbox = makeBox([290, 350 + changeY], [40, 20]),
uneasyClosebox = makeBox([265, 370 + changeY], [65, 20]),
easyClosebox = makeBox([290, 255 + changeY], [40, 20]);
if (inRect(pos, easybox) && easy) { if (inRect(pos, easybox) && easy) {
easy = false; easy = false;
} else if (inRect(pos, uneasybox) && !easy) { } else if (inRect(pos, uneasybox) && !easy) {
easy = true; easy = true;
} else if ( } else if (
(inRect(pos, easyclosebox) && easy) || (inRect(pos, easyspeedbox) && easy) ||
(inRect(pos, uneasyclosebox) && !easy) (inRect(pos, uneasyspeedbox) && !easy)
) { ) {
flags.qukly = !flags.qukly flags.qukly = !flags.qukly
} else if ((inRect(pos, easyClosebox) && easy) ||
(inRect(pos, uneasyClosebox) && !easy)
) {
core.status.event.id = "";
core.unregisterAnimationFrame("attackAnimate");
core.clearMap(ctx);
core.closePanel();
res();
} }
}; };
async function drawAttackAnimate( async function drawAttackAnimate(
@ -21751,18 +21762,18 @@ var plugins_bb40132b_638b_4a9f_b028_d3fe47acc8d1 =
ctx, ctx,
hero.name, hero.name,
127, 127,
148, 148 + changeY,
"#FFFFFF", "#FFFFFF",
"#000000", "#000000",
"bold 14px Verdana" "bold 14px Verdana"
); );
core.setTextAlign(ctx, "left"); core.setTextAlign(ctx, "left");
core.drawIcon(ctx, "hp", 70, 210, 16, 16); core.drawIcon(ctx, "hp", 70, 210 + changeY, 16, 16);
core.fillBoldText( core.fillBoldText(
ctx, ctx,
"生命 " + core.formatBigNumber(heroInfo.hp, true), "生命 " + core.formatBigNumber(heroInfo.hp, true),
90, 90,
225, 225 + changeY,
"#FFFFFF", "#FFFFFF",
"#000000", "#000000",
"bold 14px Arial" "bold 14px Arial"
@ -21772,13 +21783,13 @@ var plugins_bb40132b_638b_4a9f_b028_d3fe47acc8d1 =
ctx, ctx,
"详细模式", "详细模式",
90, 90,
250, 250 + changeY,
"#FFFF60", "#FFFF60",
"#000000", "#000000",
"bold 18px Verdana" "bold 18px Verdana"
); );
core.strokeRect(ctx, 112, 159, 32, 48, "rgba(255,255,255,1)", 1); core.strokeRect(ctx, 112, 159 + changeY, 32, 48, "rgba(255,255,255,1)", 1);
let img = let img =
attack && heroDiffList[turn].hp < 0 ? attack && heroDiffList[turn].hp < 0 ?
imagelighter(core.material.images.images["hero.webp"]) : imagelighter(core.material.images.images["hero.webp"]) :
@ -21796,7 +21807,7 @@ var plugins_bb40132b_638b_4a9f_b028_d3fe47acc8d1 =
32, 32,
48, 48,
112, 112,
159, 159 + changeY,
32, 32,
48 48
); );
@ -21806,7 +21817,7 @@ var plugins_bb40132b_638b_4a9f_b028_d3fe47acc8d1 =
ctx, ctx,
enemyInfo.name, enemyInfo.name,
289, 289,
148, 148 + changeY,
"#FFFFFF", "#FFFFFF",
"#000000", "#000000",
"bold 14px Verdana" "bold 14px Verdana"
@ -21814,7 +21825,7 @@ var plugins_bb40132b_638b_4a9f_b028_d3fe47acc8d1 =
core.setTextAlign(ctx, "right"); core.setTextAlign(ctx, "right");
if (enemyInfo.cls === "enemys") { if (enemyInfo.cls === "enemys") {
core.strokeRect(ctx, 272, 175, 32, 32, "rgba(255,255,255,1)", 1); core.strokeRect(ctx, 272, 175 + changeY, 32, 32, "rgba(255,255,255,1)", 1);
let img = let img =
attack && enemyDiffList[turn].hp < 0 ? attack && enemyDiffList[turn].hp < 0 ?
imagelighter(core.getBlockInfo(enemyInfo.id).image) : imagelighter(core.getBlockInfo(enemyInfo.id).image) :
@ -21832,12 +21843,12 @@ var plugins_bb40132b_638b_4a9f_b028_d3fe47acc8d1 =
32, 32,
32, 32,
272, 272,
175, 175 + changeY,
32, 32,
32 32
); );
} else { } else {
core.strokeRect(ctx, 272, 159, 32, 48, "rgba(255,255,255,1)", 1); core.strokeRect(ctx, 272, 159 + changeY, 32, 48, "rgba(255,255,255,1)", 1);
let img = let img =
attack && enemyDiffList[turn].hp < 0 ? attack && enemyDiffList[turn].hp < 0 ?
imagelighter(core.getBlockInfo(enemyInfo.id).image) : imagelighter(core.getBlockInfo(enemyInfo.id).image) :
@ -21855,18 +21866,18 @@ var plugins_bb40132b_638b_4a9f_b028_d3fe47acc8d1 =
32, 32,
48, 48,
272, 272,
159, 159 + changeY,
32, 32,
48 48
); );
} }
core.drawIcon(ctx, "hp", 330, 210, 16, 16); core.drawIcon(ctx, "hp", 330, 210 + changeY, 16, 16);
core.fillBoldText( core.fillBoldText(
ctx, ctx,
core.formatBigNumber(enemyInfo.hp, true) + " 生命", core.formatBigNumber(enemyInfo.hp, true) + " 生命",
330, 330,
225, 225 + changeY,
"#FFFFFF", "#FFFFFF",
"#000000", "#000000",
"bold 14px Verdana" "bold 14px Verdana"
@ -21875,17 +21886,25 @@ var plugins_bb40132b_638b_4a9f_b028_d3fe47acc8d1 =
ctx, ctx,
flags.qukly ? "正常" : "极速", flags.qukly ? "正常" : "极速",
330, 330,
250, 250 + changeY,
"#FFFF60",
"#000000",
"bold 18px Verdana"
);
core.fillBoldText(
ctx,
"跳过",
330,
273 + changeY,
"#FFFF60", "#FFFF60",
"#000000", "#000000",
"bold 18px Verdana" "bold 18px Verdana"
); );
core.fillBoldText( core.fillBoldText(
ctx, ctx,
"V", "V",
219, 219,
183, 183 + changeY,
"#FFFFFF", "#FFFFFF",
"#000000", "#000000",
"bold 48px pala" "bold 48px pala"
@ -21894,7 +21913,7 @@ var plugins_bb40132b_638b_4a9f_b028_d3fe47acc8d1 =
ctx, ctx,
"s", "s",
231, 231,
183, 183 + changeY,
"#FFFFFF", "#FFFFFF",
"#000000", "#000000",
"bold 36px pala" "bold 36px pala"
@ -21904,26 +21923,26 @@ var plugins_bb40132b_638b_4a9f_b028_d3fe47acc8d1 =
let enemynow = Math.min(100 + (enemyInfo.now / oneTurn) * 215, 315); let enemynow = Math.min(100 + (enemyInfo.now / oneTurn) * 215, 315);
ctx.fillStyle = "#FFFFFF"; ctx.fillStyle = "#FFFFFF";
ctx.beginPath(); ctx.beginPath();
ctx.moveTo(enemynow, 120); ctx.moveTo(enemynow, 120 + changeY);
ctx.lineTo(enemynow + 5, 110); ctx.lineTo(enemynow + 5, 110 + changeY);
ctx.lineTo(enemynow - 5, 110); ctx.lineTo(enemynow - 5, 110 + changeY);
ctx.closePath(); ctx.closePath();
ctx.fill(); ctx.fill();
core.drawIcon(ctx, 'T367', enemynow - 16, 74, 32, 32) core.drawIcon(ctx, 'T397', enemynow - 16, 84 + changeY, 32, 32)
core.drawLine(ctx, 100, 125, 315, 125, "#FFFFFF", 5); core.drawLine(ctx, 100, 125 + changeY, 315, 125 + changeY, "#FFFFFF", 5);
equipInfo.forEach(function (v) { equipInfo.forEach(function (v) {
if (!attack && !onAttack) v.now += v.speed; if (!attack && !onAttack) v.now += v.speed;
let vnow = Math.min(100 + (v.now / oneTurn) * 215, 315); let vnow = Math.min(100 + (v.now / oneTurn) * 215, 315);
ctx.beginPath(); ctx.beginPath();
ctx.moveTo(vnow, 120); ctx.moveTo(vnow, 120 + changeY);
ctx.lineTo(vnow + 5, 110); ctx.lineTo(vnow + 5, 110 + changeY);
ctx.lineTo(vnow - 5, 110); ctx.lineTo(vnow - 5, 110 + changeY);
ctx.closePath(); ctx.closePath();
ctx.fill(); ctx.fill();
core.drawIcon(ctx, v.id, vnow - 16, 54, 32, 32); core.drawIcon(ctx, v.id, vnow - 16, 84 + changeY, 32, 32);
}); });
if (!attack && !onAttack && !flags.qukly) heroInfo.now += hero.speed; if (!attack && !onAttack && !flags.qukly) heroInfo.now += hero.speed;
let heronow = Math.min(100 + (heroInfo.now / oneTurn) * 215, 315); let heronow = Math.min(100 + (heroInfo.now / oneTurn) * 215, 315);
@ -21934,18 +21953,8 @@ var plugins_bb40132b_638b_4a9f_b028_d3fe47acc8d1 =
ctx.closePath(); ctx.closePath();
ctx.fill(); ctx.fill();
core.drawImage( core.drawIcon(ctx, 'T399', heronow - 16 - 4, 84 - 4 + changeY, 40, 40)
ctx,
"hero.webp",
0,
0,
32,
48,
heronow - 16,
58,
32,
48
);
} else { } else {
core.fillRect(ctx, 64, 52, 288, 320, "rgba(0,0,0,0.5)"); core.fillRect(ctx, 64, 52, 288, 320, "rgba(0,0,0,0.5)");
core.strokeRect(ctx, 64, 52, 288, 320, "rgba(255,255,255,0.5)", 4); core.strokeRect(ctx, 64, 52, 288, 320, "rgba(255,255,255,0.5)", 4);
@ -21954,25 +21963,25 @@ var plugins_bb40132b_638b_4a9f_b028_d3fe47acc8d1 =
ctx, ctx,
hero.name, hero.name,
127, 127,
148, 148 + changeY,
"#FFFFFF", "#FFFFFF",
"#000000", "#000000",
"bold 14px Verdana" "bold 14px Verdana"
); );
core.setTextAlign(ctx, "left"); core.setTextAlign(ctx, "left");
core.drawIcon(ctx, "hp", 70, 210, 16, 16); core.drawIcon(ctx, "hp", 70, 210 + changeY, 16, 16);
core.drawIcon(ctx, "atk", 70, 230, 16, 16); core.drawIcon(ctx, "atk", 70, 230 + changeY, 16, 16);
core.drawIcon(ctx, "def", 70, 250, 16, 16); core.drawIcon(ctx, "def", 70, 250 + changeY, 16, 16);
core.drawIcon(ctx, "I374", 70, 270, 16, 16); core.drawIcon(ctx, "I374", 70, 270 + changeY, 16, 16);
core.drawIcon(ctx, "I375", 70, 290, 16, 16); core.drawIcon(ctx, "I375", 70, 290 + changeY, 16, 16);
core.drawIcon(ctx, "mdef", 70, 310, 16, 16); core.drawIcon(ctx, "mdef", 70, 310 + changeY, 16, 16);
core.drawIcon(ctx, "amulet", 70, 330, 16, 16); core.drawIcon(ctx, "amulet", 70, 330 + changeY, 16, 16);
core.drawIcon(ctx, "jumpShoes", 70, 350, 16, 16); core.drawIcon(ctx, "jumpShoes", 70, 350 + changeY, 16, 16);
core.fillBoldText( core.fillBoldText(
ctx, ctx,
"生命 " + core.formatBigNumber(heroInfo.hp, true), "生命 " + core.formatBigNumber(heroInfo.hp, true),
90, 90,
225, 225 + changeY,
"#FFFFFF", "#FFFFFF",
"#000000", "#000000",
"bold 14px Arial" "bold 14px Arial"
@ -21982,7 +21991,7 @@ var plugins_bb40132b_638b_4a9f_b028_d3fe47acc8d1 =
ctx, ctx,
"攻击 " + core.formatBigNumber(heroInfo.atk), "攻击 " + core.formatBigNumber(heroInfo.atk),
90, 90,
245, 245 + changeY,
"#FFFFFF", "#FFFFFF",
"#000000", "#000000",
"bold 14px Arial" "bold 14px Arial"
@ -21991,7 +22000,7 @@ var plugins_bb40132b_638b_4a9f_b028_d3fe47acc8d1 =
ctx, ctx,
"防御 " + core.formatBigNumber(heroInfo.def), "防御 " + core.formatBigNumber(heroInfo.def),
90, 90,
265, 265 + changeY,
"#FFFFFF", "#FFFFFF",
"#000000", "#000000",
"bold 14px Arial" "bold 14px Arial"
@ -22000,7 +22009,7 @@ var plugins_bb40132b_638b_4a9f_b028_d3fe47acc8d1 =
ctx, ctx,
"法强 " + core.formatBigNumber(heroInfo.spell), "法强 " + core.formatBigNumber(heroInfo.spell),
90, 90,
285, 285 + changeY,
"#FFFFFF", "#FFFFFF",
"#000000", "#000000",
"bold 14px Arial" "bold 14px Arial"
@ -22009,7 +22018,7 @@ var plugins_bb40132b_638b_4a9f_b028_d3fe47acc8d1 =
ctx, ctx,
"法攻 " + core.formatBigNumber(heroInfo.matk), "法攻 " + core.formatBigNumber(heroInfo.matk),
90, 90,
305, 305 + changeY,
"#FFFFFF", "#FFFFFF",
"#000000", "#000000",
"bold 14px Arial" "bold 14px Arial"
@ -22018,7 +22027,7 @@ var plugins_bb40132b_638b_4a9f_b028_d3fe47acc8d1 =
ctx, ctx,
"护盾 " + core.formatBigNumber(heroInfo.mhp), "护盾 " + core.formatBigNumber(heroInfo.mhp),
90, 90,
325, 325 + changeY,
"#FFFFFF", "#FFFFFF",
"#000000", "#000000",
"bold 14px Arial" "bold 14px Arial"
@ -22027,7 +22036,7 @@ var plugins_bb40132b_638b_4a9f_b028_d3fe47acc8d1 =
ctx, ctx,
"法抗 " + heroInfo.mdef + "%", "法抗 " + heroInfo.mdef + "%",
90, 90,
345, 345 + changeY,
"#FFFFFF", "#FFFFFF",
"#000000", "#000000",
"bold 14px Arial" "bold 14px Arial"
@ -22036,13 +22045,13 @@ var plugins_bb40132b_638b_4a9f_b028_d3fe47acc8d1 =
ctx, ctx,
"速度 " + core.formatBigNumber(heroInfo.speed), "速度 " + core.formatBigNumber(heroInfo.speed),
90, 90,
365, 365 + changeY,
"#FFFFFF", "#FFFFFF",
"#000000", "#000000",
"bold 14px Arial" "bold 14px Arial"
); );
core.strokeRect(ctx, 112, 159, 32, 48, "rgba(255,255,255,1)", 1); core.strokeRect(ctx, 112, 159 + changeY, 32, 48, "rgba(255,255,255,1)", 1);
let img = let img =
attack && heroDiffList[turn].hp < 0 ? attack && heroDiffList[turn].hp < 0 ?
imagelighter(core.material.images.images["hero.webp"]) : imagelighter(core.material.images.images["hero.webp"]) :
@ -22060,7 +22069,7 @@ var plugins_bb40132b_638b_4a9f_b028_d3fe47acc8d1 =
32, 32,
48, 48,
112, 112,
159, 159 + changeY,
32, 32,
48 48
); );
@ -22070,7 +22079,7 @@ var plugins_bb40132b_638b_4a9f_b028_d3fe47acc8d1 =
ctx, ctx,
enemyInfo.name, enemyInfo.name,
289, 289,
148, 148 + changeY,
"#FFFFFF", "#FFFFFF",
"#000000", "#000000",
"bold 14px Verdana" "bold 14px Verdana"
@ -22078,7 +22087,7 @@ var plugins_bb40132b_638b_4a9f_b028_d3fe47acc8d1 =
core.setTextAlign(ctx, "right"); core.setTextAlign(ctx, "right");
if (enemyInfo.cls === "enemys") { if (enemyInfo.cls === "enemys") {
core.strokeRect(ctx, 272, 175, 32, 32, "rgba(255,255,255,1)", 1); core.strokeRect(ctx, 272, 175 + changeY, 32, 32, "rgba(255,255,255,1)", 1);
let img = let img =
attack && enemyDiffList[turn].hp < 0 ? attack && enemyDiffList[turn].hp < 0 ?
imagelighter(core.getBlockInfo(enemyInfo.id).image) : imagelighter(core.getBlockInfo(enemyInfo.id).image) :
@ -22096,12 +22105,12 @@ var plugins_bb40132b_638b_4a9f_b028_d3fe47acc8d1 =
32, 32,
32, 32,
272, 272,
175, 175 + changeY,
32, 32,
32 32
); );
} else { } else {
core.strokeRect(ctx, 272, 159, 32, 48, "rgba(255,255,255,1)", 1); core.strokeRect(ctx, 272, 159 + changeY, 32, 48, "rgba(255,255,255,1)", 1);
let img = let img =
attack && enemyDiffList[turn].hp < 0 ? attack && enemyDiffList[turn].hp < 0 ?
imagelighter(core.getBlockInfo(enemyInfo.id).image) : imagelighter(core.getBlockInfo(enemyInfo.id).image) :
@ -22119,22 +22128,22 @@ var plugins_bb40132b_638b_4a9f_b028_d3fe47acc8d1 =
32, 32,
48, 48,
272, 272,
159, 159 + changeY,
32, 32,
48 48
); );
} }
core.drawIcon(ctx, "hp", 330, 210, 16, 16); core.drawIcon(ctx, "hp", 330, 210 + changeY, 16, 16);
core.drawIcon(ctx, "atk", 330, 230, 16, 16); core.drawIcon(ctx, "atk", 330, 230 + changeY, 16, 16);
core.drawIcon(ctx, "def", 330, 250, 16, 16); core.drawIcon(ctx, "def", 330, 250 + changeY, 16, 16);
core.drawIcon(ctx, "I374", 330, 270, 16, 16); core.drawIcon(ctx, "I374", 330, 270 + changeY, 16, 16);
core.drawIcon(ctx, "amulet", 330, 290, 16, 16); core.drawIcon(ctx, "amulet", 330, 290 + changeY, 16, 16);
core.drawIcon(ctx, "jumpShoes", 330, 310, 16, 16); core.drawIcon(ctx, "jumpShoes", 330, 310 + changeY, 16, 16);
core.fillBoldText( core.fillBoldText(
ctx, ctx,
core.formatBigNumber(enemyInfo.hp, true) + " 生命", core.formatBigNumber(enemyInfo.hp, true) + " 生命",
330, 330,
225, 225 + changeY,
"#FFFFFF", "#FFFFFF",
"#000000", "#000000",
"bold 14px Arial" "bold 14px Arial"
@ -22143,7 +22152,7 @@ var plugins_bb40132b_638b_4a9f_b028_d3fe47acc8d1 =
ctx, ctx,
core.formatBigNumber(enemyInfo.atk) + " 攻击", core.formatBigNumber(enemyInfo.atk) + " 攻击",
330, 330,
245, 245 + changeY,
"#FFFFFF", "#FFFFFF",
"#000000", "#000000",
"bold 14px Arial" "bold 14px Arial"
@ -22152,7 +22161,7 @@ var plugins_bb40132b_638b_4a9f_b028_d3fe47acc8d1 =
ctx, ctx,
core.formatBigNumber(enemyInfo.def) + " 防御", core.formatBigNumber(enemyInfo.def) + " 防御",
330, 330,
265, 265 + changeY,
"#FFFFFF", "#FFFFFF",
"#000000", "#000000",
"bold 14px Arial" "bold 14px Arial"
@ -22161,7 +22170,7 @@ var plugins_bb40132b_638b_4a9f_b028_d3fe47acc8d1 =
ctx, ctx,
(enemyInfo.spell ?? 0) + " 法强", (enemyInfo.spell ?? 0) + " 法强",
330, 330,
285, 285 + changeY,
"#FFFFFF", "#FFFFFF",
"#000000", "#000000",
"bold 14px Arial" "bold 14px Arial"
@ -22170,7 +22179,7 @@ var plugins_bb40132b_638b_4a9f_b028_d3fe47acc8d1 =
ctx, ctx,
(enemyInfo.mdef ?? 0) * 100 + "% 法抗", (enemyInfo.mdef ?? 0) * 100 + "% 法抗",
330, 330,
305, 305 + changeY,
"#FFFFFF", "#FFFFFF",
"#000000", "#000000",
"bold 14px Arial" "bold 14px Arial"
@ -22179,7 +22188,7 @@ var plugins_bb40132b_638b_4a9f_b028_d3fe47acc8d1 =
ctx, ctx,
core.formatBigNumber(enemyInfo.speed) + " 速度", core.formatBigNumber(enemyInfo.speed) + " 速度",
330, 330,
325, 325 + changeY,
"#FFFFFF", "#FFFFFF",
"#000000", "#000000",
"bold 14px Arial" "bold 14px Arial"
@ -22188,7 +22197,7 @@ var plugins_bb40132b_638b_4a9f_b028_d3fe47acc8d1 =
ctx, ctx,
"简易模式", "简易模式",
330, 330,
345, 345 + changeY,
"#FFFF60", "#FFFF60",
"#000000", "#000000",
"bold 16px Verdana" "bold 16px Verdana"
@ -22197,17 +22206,25 @@ var plugins_bb40132b_638b_4a9f_b028_d3fe47acc8d1 =
ctx, ctx,
flags.qukly ? "正常" : "极速", flags.qukly ? "正常" : "极速",
330, 330,
365, 365 + changeY,
"#FFFF60",
"#000000",
"bold 16px Verdana"
);
core.fillBoldText(
ctx,
"跳过",
330,
385 + changeY,
"#FFFF60", "#FFFF60",
"#000000", "#000000",
"bold 16px Verdana" "bold 16px Verdana"
); );
core.fillBoldText( core.fillBoldText(
ctx, ctx,
"V", "V",
219, 219,
183, 183 + changeY,
"#FFFFFF", "#FFFFFF",
"#000000", "#000000",
"bold 48px pala" "bold 48px pala"
@ -22216,7 +22233,7 @@ var plugins_bb40132b_638b_4a9f_b028_d3fe47acc8d1 =
ctx, ctx,
"s", "s",
231, 231,
183, 183 + changeY,
"#FFFFFF", "#FFFFFF",
"#000000", "#000000",
"bold 36px pala" "bold 36px pala"
@ -22226,74 +22243,37 @@ var plugins_bb40132b_638b_4a9f_b028_d3fe47acc8d1 =
let enemynow = Math.min(100 + (enemyInfo.now / oneTurn) * 215, 315); let enemynow = Math.min(100 + (enemyInfo.now / oneTurn) * 215, 315);
ctx.fillStyle = "#FFFFFF"; ctx.fillStyle = "#FFFFFF";
ctx.beginPath(); ctx.beginPath();
ctx.moveTo(enemynow, 120); ctx.moveTo(enemynow, 120 + changeY);
ctx.lineTo(enemynow + 5, 110); ctx.lineTo(enemynow + 5, 110 + changeY);
ctx.lineTo(enemynow - 5, 110); ctx.lineTo(enemynow - 5, 110 + changeY);
ctx.closePath(); ctx.closePath();
ctx.fill(); ctx.fill();
core.drawIcon(ctx, 'T397', enemynow - 16, 84 + changeY, 32, 32)
if (enemyInfo.cls === "enemys") { core.drawLine(ctx, 100, 125 + changeY, 315, 125 + changeY, "#FFFFFF", 5);
core.drawImage(
ctx,
core.getBlockInfo(enemyInfo.id).image,
32,
core.getBlockInfo(enemyInfo.id).posY * 32,
32,
32,
enemynow - 16,
74,
32,
32
);
} else {
core.drawImage(
ctx,
core.getBlockInfo(enemyInfo.id).image,
32,
core.getBlockInfo(enemyInfo.id).posY * 48,
32,
19,
enemynow - 16,
58,
32,
48
);
}
core.drawLine(ctx, 100, 125, 315, 125, "#FFFFFF", 5);
equipInfo.forEach(function (v) { equipInfo.forEach(function (v) {
if (!attack && !onAttack) v.now += v.speed; if (!attack && !onAttack) v.now += v.speed;
let vnow = Math.min(100 + (v.now / oneTurn) * 215, 315); let vnow = Math.min(100 + (v.now / oneTurn) * 215, 315);
ctx.beginPath(); ctx.beginPath();
ctx.moveTo(vnow, 120); ctx.moveTo(vnow, 120 + changeY);
ctx.lineTo(vnow + 5, 110); ctx.lineTo(vnow + 5, 110 + changeY);
ctx.lineTo(vnow - 5, 110); ctx.lineTo(vnow - 5, 110 + changeY);
ctx.closePath(); ctx.closePath();
ctx.fill(); ctx.fill();
core.drawIcon(ctx, v.id, vnow - 16, 54, 32, 32); core.drawIcon(ctx, v.id, vnow - 16, 84 + changeY, 32, 32);
}); });
if (!attack && !onAttack && !flags.qukly) heroInfo.now += hero.speed; if (!attack && !onAttack && !flags.qukly) heroInfo.now += hero.speed;
let heronow = Math.min(100 + (heroInfo.now / oneTurn) * 215, 315); let heronow = Math.min(100 + (heroInfo.now / oneTurn) * 215, 315);
ctx.beginPath(); ctx.beginPath();
ctx.moveTo(heronow, 120); ctx.moveTo(heronow, 120 + changeY);
ctx.lineTo(heronow + 5, 110); ctx.lineTo(heronow + 5, 110 + changeY);
ctx.lineTo(heronow - 5, 110); ctx.lineTo(heronow - 5, 110 + changeY);
ctx.closePath(); ctx.closePath();
ctx.fill(); ctx.fill();
core.drawImage( core.drawIcon(ctx, 'T399', heronow - 16 - 4, 84 - 4 + changeY, 40, 40)
ctx,
"hero.webp",
0,
0,
32,
48,
heronow - 16,
58,
32,
48
);
} }
let nowattacking = false; let nowattacking = false;
if (heroInfo.now >= oneTurn && !heroInfo.isAttack) { if (heroInfo.now >= oneTurn && !heroInfo.isAttack) {
@ -22323,7 +22303,7 @@ var plugins_bb40132b_638b_4a9f_b028_d3fe47acc8d1 =
Dove.MorePerform.ShowDamagePop.PopDamage( Dove.MorePerform.ShowDamagePop.PopDamage(
ctx, // 默认画布名称 ctx, // 默认画布名称
270, // 英雄位置 x 270, // 英雄位置 x
160, // 英雄位置 y 160 + changeY, // 英雄位置 y
text, // 伤害值 text, // 伤害值
18, // 默认字体大小 18, // 默认字体大小
"Arial", //默认字体 "Arial", //默认字体
@ -22348,7 +22328,7 @@ var plugins_bb40132b_638b_4a9f_b028_d3fe47acc8d1 =
Dove.MorePerform.ShowDamagePop.PopDamage( Dove.MorePerform.ShowDamagePop.PopDamage(
ctx, // 默认画布名称 ctx, // 默认画布名称
110, // 英雄位置 x 110, // 英雄位置 x
160, // 英雄位置 y 160 + changeY, // 英雄位置 y
text, // 伤害值 text, // 伤害值
18, // 默认字体大小 18, // 默认字体大小
"Arial", //默认字体 "Arial", //默认字体