feat: 抱团显示数字

This commit is contained in:
unanmed 2024-08-30 16:21:56 +08:00
parent 9b2f23fd97
commit 402ec37cb0
11 changed files with 113 additions and 62 deletions

View File

@ -189,7 +189,7 @@ var enemys_fcae963b_31c9_42b4_b48c_bb48d09f3f80 =
"E676": {"name":"新敌人","hp":0,"atk":0,"def":0,"money":0,"exp":0,"point":0,"special":[]},
"E677": {"name":"骷髅巫师","hp":150000,"atk":2000,"def":5000,"money":5,"exp":600,"point":0,"special":[13]},
"E678": {"name":"新敌人","hp":0,"atk":0,"def":0,"money":0,"exp":0,"point":0,"special":[]},
"E679": {"name":"新敌人","hp":0,"atk":0,"def":0,"money":0,"exp":0,"point":0,"special":[]},
"E679": {"name":"剑盾之卫","hp":30000,"atk":10000,"def":6000,"money":7,"exp":700,"point":0,"special":[1],"crit":600},
"E680": {"name":"新敌人","hp":0,"atk":0,"def":0,"money":0,"exp":0,"point":0,"special":[]},
"E681": {"name":"新敌人","hp":0,"atk":0,"def":0,"money":0,"exp":0,"point":0,"special":[]},
"E682": {"name":"苍蓝聚形","hp":25000,"atk":7000,"def":4000,"money":5,"exp":400,"point":0,"special":[8],"together":20},

View File

@ -31,6 +31,13 @@ main.floors.MT74=
7,
0
]
},
"0,7": {
"floorId": "MT78",
"loc": [
14,
7
]
}
},
"beforeBattle": {},

View File

@ -43,13 +43,13 @@ main.floors.MT75=
"map": [
[648,648,648,648,648,648,648,648,648,648,648,648,648,648,648],
[648,491,491,494,491,494, 0, 0, 0,494,491,494,491,491,648],
[648,648,648,648,648,648, 0, 0, 0,648,648,648,648,648,648],
[648,484,484,492,484,492, 0,677, 0,492,484,492,484,484,648],
[648,648,648,648,648,648,618,682,513,648,648,648,648,648,648],
[648, 0, 0, 0, 0,103,232,671,658,103, 0, 0, 0, 0,648],
[648,648,648,648,648,648, 0,682, 0,648,648,648,648,648,648],
[648,484,484,492,484,492,578,677,679,492,484,492,484,484,648],
[648,648,648,648,648,648,618,249,513,648,648,648,648,648,648],
[648, 0, 0, 0, 0,103,232,658,671,103, 0, 0, 0, 0,648],
[648, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,648],
[ 92, 0, 0,672, 0, 0, 0, 0, 0, 0, 0,599, 0, 0, 94],
[648, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,648],
[648, 0, 0, 0, 0, 0, 0,657, 0, 0, 0, 0, 0, 0,648],
[648, 0, 0, 0, 0,103, 0, 0, 0,103, 0, 0, 0, 0,648],
[648,648,648,648,648,648, 0, 0, 0,648,648,648,648,648,648],
[648,484,484,492,484,492, 0, 0, 0,492,484,492,484,484,648],

View File

@ -31,6 +31,13 @@ main.floors.MT76=
14,
7
]
},
"3,14": {
"floorId": "MT78",
"loc": [
3,
0
]
}
},
"beforeBattle": {},
@ -46,11 +53,11 @@ main.floors.MT76=
[648,376, 34,648, 0,648,648,492,648,648, 0,648,484,376,648],
[648,648,648,648,682,648, 27, 29, 28,648,513,648,648,671,648],
[648, 0,682, 33, 0,648,648,578,648,648, 0,232, 27, 33,648],
[648,484,648, 0,381, 0,648, 0,249,484, 0,648, 29, 28,648],
[648,484,648, 0,381, 0,648, 0,657,484, 0,648, 29, 28,648],
[648, 0,648,648,648,492,648, 0,648, 0,381,648,648,494,648],
[ 92, 0,648,376, 0,378,648,657,648,648,492,648, 92, 0, 94],
[648, 0,648, 0, 22, 0,648, 27,484, 29, 0,648,648,648,648],
[648, 0,648,381, 0,491,648, 0,648,249,648,648, 0,378,648],
[ 92, 0,648,376, 0,378,648,682,648,648,492,648, 92, 0, 94],
[648, 0,492, 0, 22, 0,648, 27,484, 29, 0,648,648,648,648],
[648, 0,648,381, 0,491,648, 0,648,657,648,648, 0,378,648],
[648,657,648,648,682,648,648,658,648, 0,482,658,482, 0,648],
[648, 0, 33, 0, 0,648, 0,484,492, 27, 0,648,648,232,648],
[648,648,648,648,249,648,484,648,648,648,682,648, 29,376,648],

View File

@ -1,45 +1,72 @@
main.floors.MT78=
{
"floorId": "MT78",
"title": "苍蓝之殿-左上",
"name": "78",
"width": 15,
"height": 15,
"canFlyTo": true,
"canFlyFrom": true,
"canUseQuickShop": true,
"cannotViewMap": false,
"images": [],
"ratio": 8,
"defaultGround": "T650",
"bgm": "palaceNorth.mp3",
"firstArrive": [],
"eachArrive": [],
"parallelDo": "",
"events": {},
"changeFloor": {},
"beforeBattle": {},
"afterBattle": {},
"afterGetItem": {},
"afterOpenDoor": {},
"autoEvent": {},
"cannotMove": {},
"cannotMoveIn": {},
"map": [
[ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
[ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
[ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
[ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
[ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
[ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
[ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
[ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
[ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
[ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
[ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
[ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
[ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
[ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
[ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
"floorId": "MT78",
"title": "苍蓝之殿-左上",
"name": "78",
"width": 15,
"height": 15,
"canFlyTo": true,
"canFlyFrom": true,
"canUseQuickShop": true,
"cannotViewMap": false,
"images": [],
"ratio": 8,
"defaultGround": "T650",
"bgm": "palaceNorth.mp3",
"firstArrive": [],
"eachArrive": [],
"parallelDo": "",
"events": {},
"changeFloor": {
"3,0": {
"floorId": "MT76",
"loc": [
3,
14
]
},
"14,7": {
"floorId": "MT74",
"loc": [
0,
7
]
}
},
"beforeBattle": {},
"afterBattle": {},
"afterGetItem": {},
"afterOpenDoor": {},
"autoEvent": {},
"cannotMove": {},
"cannotMoveIn": {},
"map": [
[648,648,648, 91,648,648,648,648,648,648,648,648,648,648,648],
[648, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,648],
[648, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,648],
[648, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,648],
[648, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,648],
[648, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,648],
[ 92, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,648],
[648, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 94],
[648, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,648],
[648, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,648],
[ 92, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,648],
[648, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,648],
[648, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,648],
[648, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,648],
[648,648,648,648,648,648,648, 93,648,648,648,648,648,648,648]
],
"bgmap": [
],
"fgmap": [
],
"bg2map": [
],
"fg2map": [
]
}

View File

@ -323,6 +323,7 @@ export class Damage extends Sprite<EDamageEvent> {
const y = enemy.y!;
const { damage } = enemy.calDamage();
const cri = enemy.calCritical(1)[0]?.atkDelta ?? Infinity;
const real = enemy.getRealInfo();
const dam1: DamageRenderable = {
align: 'left',
@ -341,6 +342,19 @@ export class Damage extends Sprite<EDamageEvent> {
y: y * this.cellSize + this.cellSize - 11
};
block.add(dam1).add(dam2);
if (real.special.includes(8) && real.togetherNum) {
const dam3: DamageRenderable = {
align: 'right',
baseline: 'top',
text: real.togetherNum.toString(),
color: '#09FF5B',
x: x * this.cellSize + this.cellSize - 1,
y: y * this.cellSize - 2,
strokeWidth: 3
};
block.add(dam3);
}
}
/**

View File

@ -24,8 +24,6 @@ interface HaloType {
};
}
type A = Enemy;
export interface EnemyInfo extends Partial<Enemy> {
atk: number;
def: number;
@ -39,6 +37,7 @@ export interface EnemyInfo extends Partial<Enemy> {
x?: number;
y?: number;
floorId?: FloorIds;
togetherNum?: number;
}
interface DamageInfo {
@ -597,6 +596,8 @@ export class DamageEnemy<T extends EnemyIds = EnemyIds> {
) {
e.atkBuff_ += enemy.together ?? 0;
e.defBuff_ += enemy.together ?? 0;
e.togetherNum ??= 0;
e.togetherNum++;
}
}
);

View File

@ -92,13 +92,6 @@ export namespace BluePalace {
export const portalMap: PortalMap = new Map();
export const portals: Partial<Record<FloorIds, Portal[]>> = {
// MT75: [
// { fx: 7, fy: 7, dir: 'left', tx: 9, ty: 9, toDir: 'down' },
// { fx: 5, fy: 11, dir: 'right', tx: 7, ty: 9, toDir: 'up' },
// { fx: 4, fy: 6, dir: 'right', tx: 9, ty: 4, toDir: 'up' },
// { fx: 5, fy: 9, dir: 'right', tx: 3, ty: 7, toDir: 'up' },
// { fx: 7, fy: 5, dir: 'right', tx: 4, ty: 9, toDir: 'up' }
// ]
MT76: [
{ fx: 11, fy: 7, dir: 'right', tx: 4, ty: 6, toDir: 'down' },
{ fx: 6, fy: 5, dir: 'left', tx: 8, ty: 13, toDir: 'right' }

View File

@ -46,8 +46,8 @@ const haloColor: Record<number, string[]> = {
25: ['purple'],
26: ['blue'],
27: ['red'],
29: ['#3CFF49'],
31: ['#51E9FF']
31: ['#3CFF49'],
29: ['#51E9FF']
};
class Halo extends Sprite {

View File

@ -50,6 +50,7 @@ export {};
if (weather) core.setWeather(weather[0], weather[1]);
else core.setWeather();
}
core.status.maps[data].enemy?.extract();
core.updateStatusBar(true, true);
}
Mota.require('module', 'Shadow').Shadow.update(true);

View File

@ -275,6 +275,7 @@ onUnmounted(() => {
height: 2.8vw;
margin-right: 10%;
margin-left: 10%;
pointer-events: none;
}
.status-value {