Compare commits
4 Commits
27dc408d80
...
83e9188cd4
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
83e9188cd4 | ||
|
|
861ed26977 | ||
|
|
76a37049c7 | ||
|
|
68e184c94d |
@@ -4352,7 +4352,7 @@
|
||||
"node": {
|
||||
"__id__": 1
|
||||
},
|
||||
"_enabled": true,
|
||||
"_enabled": false,
|
||||
"__prefab": {
|
||||
"__id__": 197
|
||||
},
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -53,8 +53,6 @@ export class CardLiteComp extends CCComp {
|
||||
Ckind_node: Node = null!
|
||||
@property(Node)
|
||||
BG_node: Node = null!
|
||||
@property(Node)
|
||||
pool_lv_node: Node = null!
|
||||
@property(Label)
|
||||
lvl_node: Label = null!
|
||||
|
||||
@@ -211,10 +209,7 @@ export class CardLiteComp extends CCComp {
|
||||
hasIcon: !!this.icon_node,
|
||||
hasCost: !!this.cost_node,
|
||||
hasBG: !!this.BG_node,
|
||||
hasPoolLv: !!this.pool_lv_node,
|
||||
hasLvl: !!this.lvl_node,
|
||||
bgChildren: this.BG_node?.children.map(c => c.name) || [],
|
||||
poolChildren: this.pool_lv_node?.children.map(c => c.name) || [],
|
||||
nodeActive: this.node.active,
|
||||
nodeScale: this.node.scale.toString(),
|
||||
nodePos: this.node.position.toString(),
|
||||
@@ -223,16 +218,22 @@ export class CardLiteComp extends CCComp {
|
||||
|
||||
const kindName = CKind[this.cardData.kind];
|
||||
|
||||
const poolColorNames = ["green", "blue", "purple", "yellow", "red"];
|
||||
const poolColorIdx = Math.min(this.cardData.pool_lv, 5) - 1;
|
||||
const activeColor = poolColorNames[poolColorIdx];
|
||||
|
||||
if (this.BG_node) {
|
||||
this.BG_node.children.forEach(child => {
|
||||
child.active = (child.name === kindName);
|
||||
});
|
||||
}
|
||||
|
||||
const cardLvStr = `lv${this.cardData.pool_lv}`;
|
||||
if (this.pool_lv_node) {
|
||||
this.pool_lv_node.children.forEach(child => {
|
||||
child.active = (child.name === cardLvStr);
|
||||
if (child.active) {
|
||||
child.children.forEach(colorChild => {
|
||||
colorChild.active = (colorChild.name === activeColor);
|
||||
});
|
||||
} else {
|
||||
child.children.forEach(colorChild => {
|
||||
colorChild.active = false;
|
||||
});
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@@ -304,10 +305,12 @@ export class CardLiteComp extends CCComp {
|
||||
}
|
||||
if (this.lvl_node) this.lvl_node.node.active = false;
|
||||
if (this.BG_node) {
|
||||
this.BG_node.children.forEach(child => child.active = false);
|
||||
}
|
||||
if (this.pool_lv_node) {
|
||||
this.pool_lv_node.children.forEach(child => child.active = false);
|
||||
this.BG_node.children.forEach(child => {
|
||||
child.active = false;
|
||||
child.children.forEach(colorChild => {
|
||||
colorChild.active = false;
|
||||
});
|
||||
});
|
||||
}
|
||||
if (this.icon_node) {
|
||||
(this.icon_node as Node).setScale(new Vec3(1, 1, 1));
|
||||
|
||||
@@ -36,6 +36,7 @@ import { mLogger } from "../common/Logger";
|
||||
import { MissionHeroComp } from "./MissionHeroComp";
|
||||
import { MoveComp } from "../hero/MoveComp";
|
||||
import { FacSet, getLvColor } from "../common/config/GameSet";
|
||||
import { CKind } from "../common/config/CardSet";
|
||||
import { MissionEconomy } from "./MissionEconomy";
|
||||
|
||||
const {property, ccclass } = _decorator;
|
||||
@@ -56,6 +57,10 @@ export class HInfoComp extends CCComp {
|
||||
@property(Node)
|
||||
sell_node=null!
|
||||
|
||||
/** 卡牌背景底框节点(按卡池等级切换子节点显示) */
|
||||
@property(Node)
|
||||
BG_node=null!
|
||||
|
||||
/** 关闭窗口按钮节点 */
|
||||
@property(Node)
|
||||
close_node=null!
|
||||
@@ -71,8 +76,6 @@ export class HInfoComp extends CCComp {
|
||||
@property(Label)
|
||||
lv_node: Label = null!
|
||||
|
||||
@property(Node)
|
||||
pool_lvnode: Node = null!
|
||||
@property(Node)
|
||||
ap_node=null!
|
||||
|
||||
@@ -155,10 +158,22 @@ export class HInfoComp extends CCComp {
|
||||
this.lv_node.color = getLvColor(heroLv);
|
||||
}
|
||||
|
||||
if (this.pool_lvnode) {
|
||||
const poolLvStr = `lv${this.previewPoolLv}`;
|
||||
this.pool_lvnode.children.forEach(child => {
|
||||
child.active = (child.name === poolLvStr);
|
||||
const poolColorNames = ["green", "blue", "purple", "yellow", "red"];
|
||||
const poolColorIdx = Math.min(this.previewPoolLv, 5) - 1;
|
||||
const activeColor = poolColorNames[poolColorIdx];
|
||||
const kindName = CKind[CKind.Hero];
|
||||
if (this.BG_node) {
|
||||
this.BG_node.children.forEach(child => {
|
||||
child.active = (child.name === kindName);
|
||||
if (child.active) {
|
||||
child.children.forEach(colorChild => {
|
||||
colorChild.active = (colorChild.name === activeColor);
|
||||
});
|
||||
} else {
|
||||
child.children.forEach(colorChild => {
|
||||
colorChild.active = false;
|
||||
});
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@@ -264,16 +279,22 @@ export class HInfoComp extends CCComp {
|
||||
}
|
||||
|
||||
// ---- 卡池等级标识 ----
|
||||
if (this.pool_lvnode) {
|
||||
const poolLvStr = `lv${this.model.pool_lv ?? 1}`;
|
||||
this.pool_lvnode.children.forEach(child => {
|
||||
// if (child.name === "light") {
|
||||
// child.active = false;
|
||||
// } else if (child.name === "bg") {
|
||||
// child.active = true;
|
||||
// } else {
|
||||
child.active = (child.name === poolLvStr);
|
||||
// }
|
||||
const poolColorNames = ["green", "blue", "purple", "yellow", "red"];
|
||||
const poolColorIdx = Math.min(this.model.pool_lv ?? 1, 5) - 1;
|
||||
const activeColor = poolColorNames[poolColorIdx];
|
||||
const kindName = CKind[CKind.Hero];
|
||||
if (this.BG_node) {
|
||||
this.BG_node.children.forEach(child => {
|
||||
child.active = (child.name === kindName);
|
||||
if (child.active) {
|
||||
child.children.forEach(colorChild => {
|
||||
colorChild.active = (colorChild.name === activeColor);
|
||||
});
|
||||
} else {
|
||||
child.children.forEach(colorChild => {
|
||||
colorChild.active = false;
|
||||
});
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
@@ -24,6 +24,7 @@ import { oops } from "db://oops-framework/core/Oops";
|
||||
import { mLogger } from "../common/Logger";
|
||||
import { HeroInfo, HeroList } from "../common/config/heroSet";
|
||||
import { buildSkillDesc } from "../common/config/HeroSkillDesc";
|
||||
import { CKind } from "../common/config/CardSet";
|
||||
import { CardLiteComp } from "./CardLiteComp";
|
||||
|
||||
const { property, ccclass } = _decorator;
|
||||
@@ -45,6 +46,10 @@ export class HerosListComp extends CCComp {
|
||||
@property(Node)
|
||||
cd_node = null!
|
||||
|
||||
/** 卡牌背景底框节点(按卡池等级切换子节点显示) */
|
||||
@property(Node)
|
||||
BG_node=null!
|
||||
|
||||
@property(Node)
|
||||
info_node = null!
|
||||
|
||||
@@ -199,11 +204,32 @@ export class HerosListComp extends CCComp {
|
||||
if (infoLabel) infoLabel.string = desc || hero.info || ""
|
||||
}
|
||||
|
||||
this.updatePoolLvBg(hero.pool_lv ?? 1)
|
||||
this.updateLvDisplay(hero)
|
||||
this.updateTypeDisplay(hero)
|
||||
this.updateHeroAnimation(uuid)
|
||||
}
|
||||
|
||||
private updatePoolLvBg(poolLv: number) {
|
||||
if (!this.BG_node) return
|
||||
const poolColorNames = ["green", "blue", "purple", "yellow", "red"];
|
||||
const poolColorIdx = Math.min(poolLv, 5) - 1;
|
||||
const activeColor = poolColorNames[poolColorIdx];
|
||||
const kindName = CKind[CKind.Hero];
|
||||
this.BG_node.children.forEach(child => {
|
||||
child.active = (child.name === kindName);
|
||||
if (child.active) {
|
||||
child.children.forEach(colorChild => {
|
||||
colorChild.active = (colorChild.name === activeColor);
|
||||
});
|
||||
} else {
|
||||
child.children.forEach(colorChild => {
|
||||
colorChild.active = false;
|
||||
});
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
private updateCdDisplay(hero: typeof HeroInfo[number]) {
|
||||
if (!this.cd_node) return
|
||||
const skillKeys = Object.keys(hero.skills)
|
||||
|
||||
Reference in New Issue
Block a user