mirror of
https://github.com/unanmed/HumanBreak.git
synced 2025-01-31 23:29:27 +08:00
feat: 性能优化 & 战争号角属性
This commit is contained in:
parent
ac3b0c0fc2
commit
4189f80866
6
idea.md
6
idea.md
@ -85,7 +85,7 @@ dam4.png ---- 存档 59
|
||||
[x] 自定义快捷键
|
||||
[x] 优化 ui 控制系统
|
||||
[x] 优化游戏进程与渲染进程间的通讯
|
||||
[] 优化资源分离,音乐放到 bgm 目录下
|
||||
[x] 优化资源分离,音乐放到 bgm 目录下
|
||||
[] 一次性道具拾取与清怪
|
||||
[] 重构数据统计
|
||||
[] 优化路径显示,瞬移可以闪一下再熄灭
|
||||
@ -94,7 +94,7 @@ dam4.png ---- 存档 59
|
||||
[] 楼层转换加入随机小贴士
|
||||
[x] ui 中如果元素发生改变,那么做出背景亮一下再熄灭的效果
|
||||
[] 双击怪物手册拐点可以直接在拖动条上定位
|
||||
[] 重构技能树结构
|
||||
[x] 重构技能树结构
|
||||
[] 技能树允许自动升级
|
||||
[] 重构装备系统
|
||||
[x] 弹幕系统
|
||||
@ -118,3 +118,5 @@ dam4.png ---- 存档 59
|
||||
[x] 对 vnode 进行简单的包装,提供出显示文字、显示图片等 api 以及修改 css 的 api
|
||||
[] mapDamage 注册
|
||||
[] Box 组件右下角添加 resize 按钮
|
||||
[] 被光环加成的怪显示受到了哪些加成
|
||||
[x] 鼠标放到光环怪上时高亮它产生的光环
|
||||
|
@ -180,7 +180,7 @@ export abstract class RenderItem<E extends ERenderItemEvent = ERenderItemEvent>
|
||||
protected cacheDirty: boolean = true;
|
||||
/** 是否启用缓存机制 */
|
||||
readonly enableCache: boolean = true;
|
||||
/** 是否启用transform下穿机制 */
|
||||
/** 是否启用transform下穿机制,即画布的变换是否会继续作用到下一层画布 */
|
||||
readonly transformFallThrough: boolean = false;
|
||||
|
||||
constructor(
|
||||
|
@ -104,6 +104,12 @@ export class Animate extends Sprite {
|
||||
|
||||
this.setRenderFn((canvas, transform) => {
|
||||
const { ctx } = canvas;
|
||||
if (
|
||||
this.absoluteAnimates.size === 0 &&
|
||||
this.staticAnimates.size === 0
|
||||
) {
|
||||
return;
|
||||
}
|
||||
ctx.save();
|
||||
this.drawAnimates(this.absoluteAnimates, canvas);
|
||||
transformCanvas(canvas, transform);
|
||||
|
@ -340,7 +340,8 @@ export class Damage extends Sprite<EDamageEvent> {
|
||||
};
|
||||
block.add(dam1).add(dam2);
|
||||
|
||||
if (real.special.has(8) && real.togetherNum) {
|
||||
const hasHorn = real.special.has(33);
|
||||
if (real.special.has(8) && real.togetherNum && !hasHorn) {
|
||||
const dam3: DamageRenderable = {
|
||||
align: 'right',
|
||||
baseline: 'top',
|
||||
@ -365,7 +366,7 @@ export class Damage extends Sprite<EDamageEvent> {
|
||||
};
|
||||
block.add(dam4);
|
||||
}
|
||||
if (enemy.col && real.special.has(33)) {
|
||||
if (enemy.col && hasHorn) {
|
||||
const dam5: DamageRenderable = {
|
||||
align: 'right',
|
||||
baseline: 'top',
|
||||
|
@ -2,6 +2,7 @@ import { getHeroStatusOf, getHeroStatusOn } from '@/game/state/hero';
|
||||
import { Range } from '../util/range';
|
||||
import { ensureArray, has, manhattan } from '@/plugin/game/utils';
|
||||
import EventEmitter from 'eventemitter3';
|
||||
import { hook } from '../game';
|
||||
|
||||
// todo: 光环划分优先级,从而可以实现光环的多级运算
|
||||
|
||||
@ -152,6 +153,7 @@ export class EnemyCollection extends EventEmitter<EnemyCollectionEvent> {
|
||||
);
|
||||
});
|
||||
this.emit('extract');
|
||||
hook.emit('enemyExtract', this);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -70,7 +70,7 @@ export const specials: SpecialDeclaration[] = [
|
||||
name: '抱团',
|
||||
desc: enemy =>
|
||||
`怪物周围5×5范围内每有一个拥有该属性的怪物(不包括自身),则对方攻防就增加${enemy.together}%(线性叠加)` +
|
||||
`,受加成怪物会在右上角显示当前周围有多少个怪物`,
|
||||
`,受加成怪物会在右上角以绿色字体显示当前周围有多少个怪物`,
|
||||
color: '#fa4'
|
||||
},
|
||||
{
|
||||
@ -240,11 +240,15 @@ export const specials: SpecialDeclaration[] = [
|
||||
name: '乾坤挪移',
|
||||
desc: enemy => {
|
||||
const [dx, dy] = enemy.translation!;
|
||||
return `此怪物在场时,所有光环向${
|
||||
dx < 0 ? '左' : '右'
|
||||
}平移${Math.abs(dx)}格,向${dy < 0 ? '上' : '下'}平移${Math.abs(
|
||||
dy
|
||||
)}格。不同怪物间为加算叠加`;
|
||||
let str = `此怪物在场时,所有光环`;
|
||||
if (dx !== 0) {
|
||||
str += `向${dx < 0 ? '左' : '右'}平移${Math.abs(dx)}格,`;
|
||||
}
|
||||
if (dy !== 0) {
|
||||
str += `向${dy < 0 ? '上' : '下'}平移${Math.abs(dy)}格,`;
|
||||
}
|
||||
str += `不同怪物间为加算叠加`;
|
||||
return str;
|
||||
},
|
||||
color: '#FDCD0B'
|
||||
},
|
||||
@ -272,7 +276,7 @@ export const specials: SpecialDeclaration[] = [
|
||||
if (hp) str += `生命值增加${hp}%,`;
|
||||
if (atk) str += `攻击增加${atk}%,`;
|
||||
if (def) str += `防御增加${def}%,`;
|
||||
str += '线性叠加';
|
||||
str += '线性叠加。该怪物会在右上角以黄色字体显示当前地图有多少怪物';
|
||||
return str;
|
||||
},
|
||||
color: '#fff866'
|
||||
|
Loading…
Reference in New Issue
Block a user