怪物手册完毕
This commit is contained in:
parent
20465e0e97
commit
a7a6468a71
@ -431,6 +431,7 @@ var functions_d6ad677b_427a_4623_b50f_a445a3b0ef8a =
|
||||
case "kill":
|
||||
|
||||
if (a.kill === enemyId && (!a.floorIds || a.floorIds.includes(core.status.floorId))) a.has++
|
||||
else if (!a.kill && (!a.floorIds || a.floorIds.includes(core.status.floorId))) a.has++
|
||||
break
|
||||
case "killLocs":
|
||||
if (core.status.floorId === a.floorId) {
|
||||
@ -439,9 +440,7 @@ var functions_d6ad677b_427a_4623_b50f_a445a3b0ef8a =
|
||||
})
|
||||
}
|
||||
break
|
||||
case "killCount":
|
||||
if (!a.floorIds || a.floorIds.includes(core.status.floorId)) a.has++
|
||||
break
|
||||
|
||||
case "killSpecial":
|
||||
if (!a.floorIds || a.floorIds.includes(core.status.floorId)) {
|
||||
|
||||
|
@ -22036,18 +22036,15 @@ var plugins_bb40132b_638b_4a9f_b028_d3fe47acc8d1 =
|
||||
this.right = document.createElement("canvas")
|
||||
this.tempLeft = document.createElement("canvas")
|
||||
this.tempRight = document.createElement("canvas")
|
||||
this.left.width = 300;
|
||||
this.left.height = 400;
|
||||
this.right.width = 300;
|
||||
this.right.height = 400;
|
||||
this.tempLeft.width = 300;
|
||||
this.tempLeft.height = 400;
|
||||
this.tempRight.width = 300;
|
||||
this.tempRight.height = 400;
|
||||
|
||||
this.left = this.left.getContext("2d")
|
||||
this.right = this.right.getContext("2d")
|
||||
this.tempLeft = this.tempLeft.getContext("2d")
|
||||
this.tempRight = this.tempRight.getContext("2d")
|
||||
core.maps._setHDCanvasSize(this.left, 300, 400)
|
||||
core.maps._setHDCanvasSize(this.right, 300, 400)
|
||||
core.maps._setHDCanvasSize(this.tempLeft, 300, 400)
|
||||
core.maps._setHDCanvasSize(this.tempRight, 300, 400)
|
||||
this.animateObjs = {}
|
||||
this.atk = 0
|
||||
this.speed = 0
|
||||
@ -22746,6 +22743,7 @@ var plugins_bb40132b_638b_4a9f_b028_d3fe47acc8d1 =
|
||||
}
|
||||
async turnleft(page) {
|
||||
if (this.page <= 1) return
|
||||
if (!this.paperpages[page - 1]) this.paperpages[page - 1] = [this.paperTexture('left'), this.paperTexture('right')]
|
||||
this.isAnimate = true
|
||||
bookInfo.drawTempLeft(page - 1)
|
||||
bookInfo.drawTempRight(page - 1)
|
||||
@ -23355,9 +23353,9 @@ var plugins_bb40132b_638b_4a9f_b028_d3fe47acc8d1 =
|
||||
ctx.shadowOffsetY = 0;
|
||||
core.drawBoxAnimate()
|
||||
// 绘制左页
|
||||
core.drawImage(ctx, this.paperpages[this.page - 1][0], 0, 0, 300 - this.ani.x / (this.width * 2), 400, dx, dy, 300 - this.ani.x / (this.width * 2), this.height);
|
||||
core.drawImage(ctx, this.paperpages[this.page - 1][0], this.ani.x / (this.width * 2) * 300, 0, 300 - this.ani.x / (this.width * 2) * 300, 400, dx + this.ani.x / (this.width * 2) * 300, dy, 300 - this.ani.x / (this.width * 2) * 300, this.height);
|
||||
ctx.shadowColor = "transparent";
|
||||
core.drawImage(ctx, bookInfo.left.canvas, 0, 0, 300 - this.ani.x / (this.width * 2), 400, dx, dy, 300 - this.ani.x / (this.width * 2), this.height);
|
||||
core.drawImage(ctx, bookInfo.left.canvas, 0, 0, bookInfo.left.canvas.width, bookInfo.left.canvas.height, dx, dy, this.width, this.height);
|
||||
ctx.shadowColor = "rgba(0,0,0,0.5)";
|
||||
ctx.shadowBlur = 10;
|
||||
ctx.shadowOffsetX = 0;
|
||||
@ -23365,7 +23363,7 @@ var plugins_bb40132b_638b_4a9f_b028_d3fe47acc8d1 =
|
||||
// 绘制右页
|
||||
core.drawImage(ctx, this.paperpages[this.page - 1][1], Math.max(0, this.ani.x - 300), 0, Math.min(600 - this.ani.x, 300), 400, dx + this.width + Math.max(0, this.ani.x - 300), dy, Math.min(600 - this.ani.x, 300), this.height);
|
||||
ctx.shadowColor = "transparent";
|
||||
core.drawImage(ctx, bookInfo.right.canvas, Math.max(0, this.ani.x - 300), 0, Math.min(600 - this.ani.x, 300), 400, dx + this.width + Math.max(0, this.ani.x - 300), dy, Math.min(600 - this.ani.x, 300), this.height);
|
||||
core.drawImage(ctx, bookInfo.right.canvas, 0, 0, bookInfo.right.canvas.width, bookInfo.right.canvas.height, dx + this.width, dy, this.width, this.height);
|
||||
ctx.shadowColor = "rgba(0,0,0,0.5)";
|
||||
ctx.shadowBlur = 10;
|
||||
ctx.shadowOffsetX = 0;
|
||||
@ -23373,7 +23371,7 @@ var plugins_bb40132b_638b_4a9f_b028_d3fe47acc8d1 =
|
||||
//绘制上一页左页
|
||||
core.drawImage(ctx, this.paperpages[page - 1][0], 0, 0, this.ani.x / (this.width * 2) * 300, 400, dx, dy, this.ani.x / 2, this.height);
|
||||
ctx.shadowColor = "transparent";
|
||||
core.drawImage(ctx, bookInfo.tempLeft.canvas, 0, 0, this.ani.x / (this.width * 2) * 300, 400, dx, dy, this.ani.x / 2, this.height);
|
||||
core.drawImage(ctx, bookInfo.tempLeft.canvas, 0, 0, this.ani.x / (this.width * 2) * bookInfo.tempLeft.canvas.width, bookInfo.tempLeft.canvas.height, dx, dy, this.ani.x / 2, this.height);
|
||||
ctx.shadowColor = "rgba(0,0,0,0.5)";
|
||||
ctx.shadowBlur = 10;
|
||||
ctx.shadowOffsetX = 0;
|
||||
@ -23381,7 +23379,7 @@ var plugins_bb40132b_638b_4a9f_b028_d3fe47acc8d1 =
|
||||
//绘制翻起的右页
|
||||
core.drawImage(ctx, this.paperpages[page - 1][1], 300 - this.ani.x / (this.width * 2) * 300, 0, this.ani.x / (this.width * 2) * 300, 400, this.ani.x / 2 + dx, dy, this.ani.x / 2, this.height);
|
||||
ctx.shadowColor = "transparent";
|
||||
core.drawImage(ctx, bookInfo.tempRight.canvas, 300 - this.ani.x / (this.width * 2) * 300, 0, this.ani.x / (this.width * 2) * 300, 400, this.ani.x / 2 + dx, dy, this.ani.x / 2, this.height);
|
||||
core.drawImage(ctx, bookInfo.tempRight.canvas, bookInfo.tempRight.canvas.width - this.ani.x / (this.width * 2) * bookInfo.tempRight.canvas.width, 0, this.ani.x / (this.width * 2) * bookInfo.tempRight.canvas.width, bookInfo.tempRight.canvas.height, this.ani.x / 2 + dx, dy, this.ani.x / 2, this.height);
|
||||
ctx.shadowColor = "rgba(0,0,0,0.5)";
|
||||
ctx.shadowBlur = 10;
|
||||
ctx.shadowOffsetX = 0;
|
||||
@ -23422,6 +23420,7 @@ var plugins_bb40132b_638b_4a9f_b028_d3fe47acc8d1 =
|
||||
}
|
||||
async turnright(page) {
|
||||
if (this.page >= this.pagemax) return
|
||||
if (!this.paperpages[page - 1]) this.paperpages[page - 1] = [this.paperTexture('left'), this.paperTexture('right')]
|
||||
this.isAnimate = true
|
||||
bookInfo.drawTempLeft(page - 1)
|
||||
bookInfo.drawTempRight(page - 1)
|
||||
@ -24033,7 +24032,7 @@ var plugins_bb40132b_638b_4a9f_b028_d3fe47acc8d1 =
|
||||
// 绘制左页
|
||||
core.drawImage(ctx, this.paperpages[this.page - 1][0], 0, 0, 300 - Math.max(0, this.ani.x - this.width) / this.width * 300, 400, dx, dy, 300 - Math.max(0, this.ani.x - this.width) / this.width * 300, this.height);
|
||||
ctx.shadowColor = "transparent";
|
||||
core.drawImage(ctx, bookInfo.left.canvas, 0, 0, 300, 400, dx, dy, this.width, this.height);
|
||||
core.drawImage(ctx, bookInfo.left.canvas, 0, 0, bookInfo.left.canvas.width, bookInfo.left.canvas.height, dx, dy, this.width, this.height);
|
||||
ctx.shadowColor = "rgba(0,0,0,0.5)";
|
||||
ctx.shadowBlur = 10;
|
||||
ctx.shadowOffsetX = 0;
|
||||
@ -24041,7 +24040,7 @@ var plugins_bb40132b_638b_4a9f_b028_d3fe47acc8d1 =
|
||||
// 绘制右页
|
||||
core.drawImage(ctx, this.paperpages[this.page - 1][1], 0, 0, 300 - this.ani.x / (this.width * 2) * 300, 400, dx + this.width, dy, 300 - this.ani.x / (this.width * 2) * 300, this.height);
|
||||
ctx.shadowColor = "transparent";
|
||||
core.drawImage(ctx, bookInfo.right.canvas, 0, 0, 300, 400, dx + this.width, dy, this.width, this.height);
|
||||
core.drawImage(ctx, bookInfo.right.canvas, 0, 0, bookInfo.right.canvas.width, bookInfo.right.canvas.height, dx + this.width, dy, this.width, this.height);
|
||||
ctx.shadowColor = "rgba(0,0,0,0.5)";
|
||||
ctx.shadowBlur = 10;
|
||||
ctx.shadowOffsetX = 0;
|
||||
@ -24049,7 +24048,7 @@ var plugins_bb40132b_638b_4a9f_b028_d3fe47acc8d1 =
|
||||
//绘制翻起的左页
|
||||
core.drawImage(ctx, this.paperpages[page - 1][0], 0, 0, this.ani.x / (this.width * 2) * 300, 400, 676 - dx - this.ani.x, dy, this.ani.x / 2, this.height);
|
||||
ctx.shadowColor = "transparent";
|
||||
core.drawImage(ctx, bookInfo.tempLeft.canvas, 0, 0, this.ani.x / (this.width * 2) * 300, 400, 676 - dx - this.ani.x, dy, this.ani.x / 2, this.height);
|
||||
core.drawImage(ctx, bookInfo.tempLeft.canvas, 0, 0, this.ani.x / (this.width * 2) * bookInfo.tempLeft.canvas.width, bookInfo.tempLeft.canvas.height, 676 - dx - this.ani.x, dy, this.ani.x / 2, this.height);
|
||||
ctx.shadowColor = "rgba(0,0,0,0.5)";
|
||||
ctx.shadowBlur = 10;
|
||||
ctx.shadowOffsetX = 0;
|
||||
@ -24057,7 +24056,7 @@ var plugins_bb40132b_638b_4a9f_b028_d3fe47acc8d1 =
|
||||
//绘制下一页右页
|
||||
core.drawImage(ctx, this.paperpages[page - 1][1], 300 - this.ani.x / (this.width * 2) * 300, 0, this.ani.x / (this.width * 2) * 300, 400, 676 - dx - this.ani.x / 2, dy, this.ani.x / 2, this.height);
|
||||
ctx.shadowColor = "transparent";
|
||||
core.drawImage(ctx, bookInfo.tempRight.canvas, 300 - this.ani.x / (this.width * 2) * 300, 0, this.ani.x / (this.width * 2) * 300, 400, 676 - dx - this.ani.x / 2, dy, this.ani.x / 2, this.height);
|
||||
core.drawImage(ctx, bookInfo.tempRight.canvas, bookInfo.tempRight.canvas.width - this.ani.x / (this.width * 2) * bookInfo.tempRight.canvas.width, 0, this.ani.x / (this.width * 2) * bookInfo.tempRight.canvas.width, bookInfo.tempRight.canvas.height, 676 - dx - this.ani.x / 2, dy, this.ani.x / 2, this.height);
|
||||
|
||||
ctx.shadowColor = "rgba(0,0,0,0.5)";
|
||||
ctx.shadowBlur = 10;
|
||||
@ -24113,7 +24112,7 @@ var plugins_bb40132b_638b_4a9f_b028_d3fe47acc8d1 =
|
||||
curveCtx.clearRect(0, 0, 300, 400);
|
||||
|
||||
// 创建带毛边的路径
|
||||
const createTornEdgePath = (ctx, offsetY = 0) => {
|
||||
const createTornEdgePath = (ctx) => {
|
||||
ctx.beginPath();
|
||||
|
||||
// 生成更自然的毛边函数
|
||||
@ -24159,43 +24158,45 @@ var plugins_bb40132b_638b_4a9f_b028_d3fe47acc8d1 =
|
||||
ctx.quadraticCurveTo(cpX, cpY, p.x, p.y);
|
||||
}
|
||||
};
|
||||
ctx.moveTo(0, offsetY);
|
||||
ctx.moveTo(0, 0);
|
||||
|
||||
// 上边缘曲线(添加毛边)
|
||||
|
||||
createTornEdge(0, offsetY, 300, offsetY, 16, 24);
|
||||
|
||||
createTornEdge(0, 0, 300, 0, Math.random() * 10 + 10, Math.random() * 60 + 10);
|
||||
ctx.lineTo(300, 0)
|
||||
|
||||
// 右侧边缘(根据方向决定是否添加毛边)
|
||||
if (dir === "right") {
|
||||
createTornEdge(300, offsetY, 300, 400 + offsetY, 16, 24);
|
||||
createTornEdge(300, 0, 300, 400, Math.random() * 10 + 10, Math.random() * 60 + 10);
|
||||
ctx.lineTo(300, 400)
|
||||
} else {
|
||||
ctx.lineTo(300, 400 + offsetY);
|
||||
ctx.lineTo(300, 400);
|
||||
}
|
||||
|
||||
// 下边缘曲线(添加毛边)
|
||||
|
||||
createTornEdge(300, 400 + offsetY, 0, 400 + offsetY, 16, 24);
|
||||
|
||||
createTornEdge(300, 400, 0, 400, Math.random() * 10 + 10, Math.random() * 60 + 10);
|
||||
|
||||
ctx.lineTo(0, 400)
|
||||
// 左侧边缘(根据方向决定是否添加毛边)
|
||||
if (dir === "left") {
|
||||
createTornEdge(0, 400 + offsetY, 0, offsetY, 16, 24);
|
||||
createTornEdge(0, 400, 0, 0, Math.random() * 10 + 10, Math.random() * 60 + 10);
|
||||
ctx.lineTo(0, 0)
|
||||
} else {
|
||||
ctx.lineTo(0, offsetY);
|
||||
ctx.lineTo(0, 0);
|
||||
}
|
||||
|
||||
ctx.closePath();
|
||||
};
|
||||
|
||||
// 创建上蒙版(顶部有毛边)
|
||||
createTornEdgePath(curveCtx, 0);
|
||||
createTornEdgePath(curveCtx);
|
||||
curveCtx.fillStyle = 'white';
|
||||
curveCtx.fill();
|
||||
|
||||
// 创建下蒙版(底部有毛边)
|
||||
curveCtx.clearRect(0, 0, 300, 400);
|
||||
createTornEdgePath(curveCtx, 0);
|
||||
createTornEdgePath(curveCtx);
|
||||
curveCtx.fillStyle = 'white';
|
||||
curveCtx.fill();
|
||||
|
||||
@ -24555,7 +24556,7 @@ var plugins_bb40132b_638b_4a9f_b028_d3fe47acc8d1 =
|
||||
// 超真实细节系统
|
||||
const addHyperRealisticDetails = () => {
|
||||
// 3.1 纤维纹理(模拟羊皮纸纤维)
|
||||
for (let i = 0; i < 200; i++) {
|
||||
for (let i = 0; i < 2000; i++) {
|
||||
const x = Math.random() * 300;
|
||||
const y = Math.random() * 400;
|
||||
const length = 1 + Math.random() * 4;
|
||||
@ -25501,24 +25502,12 @@ var plugins_bb40132b_638b_4a9f_b028_d3fe47acc8d1 =
|
||||
|
||||
// 重置阴影
|
||||
ctx.shadowColor = "transparent";
|
||||
core.drawImage(ctx, bookInfo.left.canvas, 0, 0, 300, 400, dx, dy, this.width, this.height)
|
||||
core.drawImage(ctx, bookInfo.right.canvas, 0, 0, 300, 400, dx + this.width, dy, this.width, this.height)
|
||||
core.drawImage(ctx, bookInfo.left.canvas, 0, 0, bookInfo.left.canvas.width, bookInfo.left.canvas.height, dx, dy, this.width, this.height)
|
||||
core.drawImage(ctx, bookInfo.right.canvas, 0, 0, bookInfo.right.canvas.width, bookInfo.right.canvas.height, dx + this.width, dy, this.width, this.height)
|
||||
|
||||
ctx.restore();
|
||||
}
|
||||
setPage(num) {
|
||||
|
||||
if (num === 1) {
|
||||
this.paperpages = [
|
||||
[this.paperTexture('left'), this.paperTexture('right')]
|
||||
]
|
||||
} else {
|
||||
for (let i = 1; i < num; i++) {
|
||||
this.paperpages.push([this.paperTexture('left'), this.paperTexture('right')])
|
||||
}
|
||||
}
|
||||
this.pagemax = num
|
||||
}
|
||||
clearPage() {
|
||||
this.paperpages.forEach(v => {
|
||||
|
||||
@ -25541,7 +25530,10 @@ var plugins_bb40132b_638b_4a9f_b028_d3fe47acc8d1 =
|
||||
bookInfo.clear()
|
||||
this.page = 1
|
||||
book.style.display = 'none'
|
||||
this.setPage(1)
|
||||
this.paperpages = [
|
||||
[this.paperTexture('left'), this.paperTexture('right')]
|
||||
]
|
||||
this.pagemax = 1
|
||||
}
|
||||
|
||||
|
||||
@ -25559,7 +25551,7 @@ var plugins_bb40132b_638b_4a9f_b028_d3fe47acc8d1 =
|
||||
core.clearUI()
|
||||
bookInfo.init(floorId)
|
||||
core.book.update()
|
||||
if (bookInfo.enemys.length > 1) core.book.setPage(bookInfo.enemys.length)
|
||||
if (bookInfo.enemys.length > 1) core.book.pagemax = bookInfo.enemys.length
|
||||
}
|
||||
},
|
||||
"存读档": function () {
|
||||
@ -28366,11 +28358,6 @@ var plugins_bb40132b_638b_4a9f_b028_d3fe47acc8d1 =
|
||||
this.count = info.count
|
||||
this.has = info.has ?? 0
|
||||
this.operator = info.operator
|
||||
} else if (info.type === "killCount") {
|
||||
this.floorIds = info.floorIds
|
||||
this.count = info.count
|
||||
this.has = info.has ?? 0
|
||||
this.operator = info.operator
|
||||
} else if (info.type === "killSpecial") {
|
||||
this.floorIds = info.floorIds
|
||||
this.killSpecial = info.killSpecial
|
||||
@ -28405,7 +28392,7 @@ var plugins_bb40132b_638b_4a9f_b028_d3fe47acc8d1 =
|
||||
else if (this.type === "checkBlock") return this.checkInfo(this.count, this.has = core.searchBlock(this.checkBlock, this.floorIds).length)
|
||||
else if (this.type === "checkEnemyType") return this.checkInfo(this.count, this.has = core.searchBlockWithFilter(block => block.event.cls.startsWith("enemy") && block.event.type === this.checkEnemyType, this.floorIds).length)
|
||||
else if (this.type === "killAll") return this.has = core.searchBlockWithFilter(block => block.event.cls.startsWith("enemy"), this.floorIds).length, this.has === 0
|
||||
else if (this.type === "specialBlock" || this.type === "changeFloor" || this.type === "kill" || this.type === "killSpecial" || this.type === "killLocs" || this.type === "killCount") return this.checkInfo(this.count, this.has)
|
||||
else if (this.type === "specialBlock" || this.type === "changeFloor" || this.type === "kill" || this.type === "killSpecial" || this.type === "killLocs") return this.checkInfo(this.count, this.has)
|
||||
else if (this.type === "arrival") return Boolean(this.has)
|
||||
else if (this.type === "outer") return false
|
||||
|
||||
@ -28465,11 +28452,6 @@ var plugins_bb40132b_638b_4a9f_b028_d3fe47acc8d1 =
|
||||
info.count = this.locs.length
|
||||
info.has = this.has
|
||||
info.operator = this.operator
|
||||
} else if (info.type === "killCount") {
|
||||
info.floorIds = this.floorIds
|
||||
info.count = this.count
|
||||
info.has = this.has
|
||||
info.operator = this.operator
|
||||
} else if (info.type === "killSpecial") {
|
||||
info.floorIds = this.floorIds
|
||||
info.killSpecial = this.killSpecial
|
||||
|
Loading…
Reference in New Issue
Block a user