mirror of
https://github.com/unanmed/HumanBreak.git
synced 2026-11-14 02:04:30 +08:00
refactor: 修复所有问题
This commit is contained in:
1 parent
74f0386fd9
commit
5c520e3d52
68 files changed
+1230
-1077
No files matched your search
@@ -22,8 +22,6 @@ import {
|
||||
import { IDamageEnemy, IEnemyCollection, MapDamage } from '@motajs/types';
|
||||
import { UserEnemyInfo } from '@user/data-state';
|
||||
|
||||
const { ensureFloorDamage } = Mota.require('@user/data-state');
|
||||
|
||||
/**
|
||||
* 根据伤害大小获取颜色
|
||||
* @param damage 伤害大小
|
||||
@@ -59,6 +57,7 @@ export class FloorDamageExtends
|
||||
if (!this.sprite || !floor) return;
|
||||
const map = core.status.maps[floor];
|
||||
this.sprite.setMapSize(map.width, map.height);
|
||||
const { ensureFloorDamage } = Mota.require('@user/data-state');
|
||||
ensureFloorDamage(floor);
|
||||
const enemy = core.status.maps[floor].enemy;
|
||||
|
||||
@@ -79,6 +78,7 @@ export class FloorDamageExtends
|
||||
|
||||
private onUpdate = (floor: FloorIds) => {
|
||||
if (!this.floorBinder.bindThisFloor) {
|
||||
const { ensureFloorDamage } = Mota.require('@user/data-state');
|
||||
ensureFloorDamage(floor);
|
||||
core.status.maps[floor].enemy.calRealAttribute();
|
||||
}
|
||||
|
||||
@@ -4,8 +4,11 @@ import { UIController } from '@motajs/system-ui';
|
||||
import { mainSceneUI } from './ui/main';
|
||||
import { MAIN_HEIGHT, MAIN_WIDTH } from './shared';
|
||||
import { hook } from '@user/data-base';
|
||||
import { createItemDetail } from './itemDetail';
|
||||
import { createLoopMap } from './loopMap';
|
||||
import { createGameCanvas } from './legacy/gameCanvas';
|
||||
|
||||
export function create() {
|
||||
export function createGameRenderer() {
|
||||
const main = new MotaRenderer();
|
||||
main.size(MAIN_WIDTH, MAIN_HEIGHT);
|
||||
|
||||
@@ -34,6 +37,12 @@ export function create() {
|
||||
console.log(main);
|
||||
}
|
||||
|
||||
export function createRender() {
|
||||
createGameCanvas();
|
||||
createItemDetail();
|
||||
createLoopMap();
|
||||
}
|
||||
|
||||
export * from './components';
|
||||
export * from './ui';
|
||||
export * from './use';
|
||||
@@ -21,11 +21,13 @@ interface ItemData {
|
||||
y: number;
|
||||
}
|
||||
|
||||
hook.on('setBlock', (x, y, floorId, block) => {
|
||||
FloorItemDetail.listened.forEach(v => {
|
||||
v.setBlock(block, x, y);
|
||||
export function createItemDetail() {
|
||||
hook.on('setBlock', (x, y, floorId, block) => {
|
||||
FloorItemDetail.listened.forEach(v => {
|
||||
v.setBlock(block, x, y);
|
||||
});
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
export class FloorItemDetail implements ILayerGroupRenderExtends {
|
||||
id: string = 'item-detail';
|
||||
|
||||
@@ -12,15 +12,19 @@ function getCanvasFilterByFloorId(floorId: FloorIds = core.status.floorId) {
|
||||
return filterMap.find(v => v[0].includes(floorId))?.[1] ?? '';
|
||||
}
|
||||
|
||||
loading.once('coreInit', () => {
|
||||
filterMap.push(
|
||||
[['MT50', 'MT60', 'MT61'], 'contrast(120%)'], // 童心佬的滤镜(
|
||||
[
|
||||
core.floorIds.slice(61, 70).concat(core.floorIds.slice(72, 107)),
|
||||
'contrast(120%)'
|
||||
] // 童心佬的滤镜(
|
||||
);
|
||||
});
|
||||
export function createGameCanvas() {
|
||||
loading.once('coreInit', () => {
|
||||
filterMap.push(
|
||||
[['MT50', 'MT60', 'MT61'], 'contrast(120%)'], // 童心佬的滤镜(
|
||||
[
|
||||
core.floorIds
|
||||
.slice(61, 70)
|
||||
.concat(core.floorIds.slice(72, 107)),
|
||||
'contrast(120%)'
|
||||
] // 童心佬的滤镜(
|
||||
);
|
||||
});
|
||||
}
|
||||
|
||||
export class LayerGroupFilter implements ILayerGroupRenderExtends {
|
||||
id: string = 'filter';
|
||||
|
||||
@@ -18,9 +18,11 @@ let show: boolean = false;
|
||||
/** 循环式地图中,更新视角的委托ticker */
|
||||
let delegation: number = -1;
|
||||
|
||||
hook.on('changingFloor', (floorId, heroLoc) => {
|
||||
enableLoopMapElement(floorId);
|
||||
});
|
||||
export function createLoopMap() {
|
||||
hook.on('changingFloor', (floorId, heroLoc) => {
|
||||
enableLoopMapElement(floorId);
|
||||
});
|
||||
}
|
||||
|
||||
function createLayer() {
|
||||
const group = new LayerGroup();
|
||||
|
||||
Reference in new issue
Block a user