feat(skill): 调整技能提示的动画和样式

- 技能提示现在会短暂停留后垂直向上淡出,而非立即随机漂移
- 调整技能提示的位置、缩放和文本样式以改善视觉效果
- 移除技能提示的粗体样式,使整体显示更加协调
This commit is contained in:
panw
2026-04-15 15:08:08 +08:00
parent 52fe4358ea
commit 3a07a7e9d2
2 changed files with 27 additions and 15 deletions

View File

@@ -2135,7 +2135,7 @@
"_lpos": { "_lpos": {
"__type__": "cc.Vec3", "__type__": "cc.Vec3",
"x": 0, "x": 0,
"y": 20, "y": -20,
"z": 0 "z": 0
}, },
"_lrot": { "_lrot": {
@@ -2201,8 +2201,8 @@
}, },
"_lscale": { "_lscale": {
"__type__": "cc.Vec3", "__type__": "cc.Vec3",
"x": 1, "x": 0.8,
"y": 1, "y": 0.8,
"z": 1 "z": 1
}, },
"_mobility": 0, "_mobility": 0,
@@ -2257,7 +2257,7 @@
}, },
"_lpos": { "_lpos": {
"__type__": "cc.Vec3", "__type__": "cc.Vec3",
"x": -65.359375, "x": -54.4580078125,
"y": 0, "y": 0,
"z": 0 "z": 0
}, },
@@ -3982,7 +3982,7 @@
}, },
"_alignFlags": 10, "_alignFlags": 10,
"_target": null, "_target": null,
"_left": -15, "_left": -8,
"_right": 0.359375, "_right": 0.359375,
"_top": 0, "_top": 0,
"_bottom": 0, "_bottom": 0,
@@ -4031,7 +4031,7 @@
}, },
"_contentSize": { "_contentSize": {
"__type__": "cc.Size", "__type__": "cc.Size",
"width": 100.71875, "width": 92.916015625,
"height": 29.2 "height": 29.2
}, },
"_anchorPoint": { "_anchorPoint": {
@@ -4080,7 +4080,7 @@
"_isSystemFontUsed": true, "_isSystemFontUsed": true,
"_spacingX": 0, "_spacingX": 0,
"_isItalic": false, "_isItalic": false,
"_isBold": true, "_isBold": false,
"_isUnderline": false, "_isUnderline": false,
"_underlineHeight": 2, "_underlineHeight": 2,
"_cacheMode": 0, "_cacheMode": 0,

View File

@@ -102,7 +102,7 @@ export class TooltipCom extends CCComp {
const skillConfig = SkillSet[this.s_uuid]; const skillConfig = SkillSet[this.s_uuid];
const skillName = skillConfig ? "<" + skillConfig.name + ">" : ""; const skillName = skillConfig ? "<" + skillConfig.name + ">" : "";
this.setupLabel("skill", "name", skillName+this.value); this.setupLabel("skill", "name", skillName+this.value);
this.node.setPosition(v3(this.node.position.x, currentY)); // this.node.setPosition(v3(this.node.position.x, currentY));
this.node.setSiblingIndex(topSiblingIndex); this.node.setSiblingIndex(topSiblingIndex);
break; break;
case TooltipTypes.uskill: case TooltipTypes.uskill:
@@ -153,13 +153,25 @@ export class TooltipCom extends CCComp {
// 1. 爆发阶段 (Pop) // 1. 爆发阶段 (Pop)
t.to(this.popDuration, { scale: v3(sx * scaleMax, scaleMax, 1) }, { easing: 'backOut' }); t.to(this.popDuration, { scale: v3(sx * scaleMax, scaleMax, 1) }, { easing: 'backOut' });
const isSkill = this.stype === TooltipTypes.skill;
if (isSkill) {
// 技能类型的提示:回弹后停留 0.5 秒,然后向上淡出
t.to(this.popDuration, { scale: v3(sx * 1.2, 1.2, 1) });
t.delay(0.5);
t.parallel(
tween(this.node).by(this.driftDuration, { position: v3(0, moveY, 0) }, { easing: 'sineOut' }),
tween(this._uiOpacity).delay(this.driftDuration - this.fadeDuration).to(this.fadeDuration, { opacity: 0 })
);
} else {
// 2. 漂移阶段 (Drift) & 3. 淡出 (Fade) // 2. 漂移阶段 (Drift) & 3. 淡出 (Fade)
// 并行执行恢复缩放 + 位移 + 淡出 // 其他类型提示:并行执行恢复缩放、位移和淡出
t.parallel( t.parallel(
tween(this.node).to(this.popDuration, { scale: v3(sx * 1.2, 1.2, 1) }), // 回弹到正常大小 (稍微放大) tween(this.node).to(this.popDuration, { scale: v3(sx * 1.2, 1.2, 1) }), // 回弹到正常大小 (稍微放大)
tween(this.node).by(this.driftDuration, { position: v3(isHeal ? 0 : randomX, moveY, 0) }, { easing: 'sineOut' }), // 治疗垂直飘,其他随机飘 tween(this.node).by(this.driftDuration, { position: v3(isHeal ? 0 : randomX, moveY, 0) }, { easing: 'sineOut' }), // 治疗垂直飘,其他随机飘
tween(this._uiOpacity).delay(this.driftDuration - this.fadeDuration).to(this.fadeDuration, { opacity: 0 }) // 最后阶段淡出 tween(this._uiOpacity).delay(this.driftDuration - this.fadeDuration).to(this.fadeDuration, { opacity: 0 }) // 最后阶段淡出
); );
}
// 结束销毁 // 结束销毁
t.call(() => { t.call(() => {