fix(victory): align buttons with final type
The stage-complete settle type was renamed to final; update the victory panel to match the value sent by MissionComp. - show the secondary button on every settle result, labeled back for final and exit otherwise - hide the next button only for the final settle type - sync the bound confirm button visibility
This commit is contained in:
@@ -766,9 +766,9 @@ export class VictoryComp extends CCComp {
|
||||
|
||||
/**
|
||||
* 统一更新按钮显隐与文案:
|
||||
* section(小节胜利)→ next="下一节",btn 隐藏
|
||||
* victory(末关通关)→ btn="确认",next 隐藏
|
||||
* defeat(失败) → btn="确认",next="再来一次"
|
||||
* section(小节胜利)→ btn="退出",next="下一节"
|
||||
* final(末关通关) → btn="返回",next 隐藏
|
||||
* defeat(失败) → btn="退出",next="再来一次"
|
||||
*/
|
||||
private updateButtonStates() {
|
||||
const btns = this.node.getChildByName("btns");
|
||||
@@ -777,16 +777,18 @@ export class VictoryComp extends CCComp {
|
||||
const btnNode = btns.getChildByName("btn");
|
||||
const nextNode = btns.getChildByName("next");
|
||||
|
||||
// btn 确认按钮:仅小节胜利时隐藏
|
||||
// btn 确认/退出按钮:所有结算类型都显示
|
||||
if (btnNode) {
|
||||
btnNode.active = this.settleType !== "section";
|
||||
btnNode.active = true;
|
||||
const label = btnNode.getChildByName("Label")?.getComponent(Label);
|
||||
if (label) label.string = "确认";
|
||||
if (label) {
|
||||
label.string = this.settleType === "final" ? "返回" : "退出";
|
||||
}
|
||||
}
|
||||
|
||||
// next 按钮:小节胜利→"下一节",失败→"再来一次",末关通关隐藏
|
||||
if (nextNode) {
|
||||
nextNode.active = this.settleType !== "victory";
|
||||
nextNode.active = this.settleType !== "final";
|
||||
const label = nextNode.getChildByName("Label")?.getComponent(Label);
|
||||
if (label) {
|
||||
label.string = this.settleType === "section" ? "下一节" : "再来一次";
|
||||
@@ -795,7 +797,7 @@ export class VictoryComp extends CCComp {
|
||||
|
||||
// 属性绑定的确认按钮同步显隐
|
||||
if (this.confirm_btn && this.confirm_btn.isValid) {
|
||||
this.confirm_btn.active = this.settleType !== "section";
|
||||
this.confirm_btn.active = true;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user