refactor(game): 拆分装备卡配置与逻辑,独立管理装备系统
1. 将装备卡从原技能卡池拆分至独立的EquipSet.ts配置 2. 新增专用的装备盒实体与事件流程,替换原有技能卡复用逻辑 3. 调整FieldSkillHelper以支持装备卡的属性加成统计 4. 优化装备商店与抽卡逻辑,移除装备卡的抽卡参与
This commit is contained in:
@@ -4,18 +4,19 @@
|
||||
*
|
||||
* 职责:
|
||||
* 1. 渲染单个装备卡的显示信息(名称、等级、属性词条、图标)。
|
||||
* 2. 处理购买点击 → 扣费 → 派发 UseSkillCard 事件触发装备生效。
|
||||
* 2. 处理购买点击 → 扣费 → 派发 UseEquipCard 事件触发装备生效。
|
||||
*
|
||||
* 装备使用机制:
|
||||
* 与技能卡使用流程一致——购买后派发 GameEvent.UseSkillCard,
|
||||
* 由 MissSkillsComp 接收并创建 SkillBoxComp 实体,
|
||||
* SkillBoxComp 按 Field 类型被动驻场,属性加成由 FieldSkillHelper 全局聚合。
|
||||
* 与技能卡使用流程一致——购买后派发 GameEvent.UseEquipCard,
|
||||
* 由 MissEquipComp 接收并创建 EquipBoxComp 实体,
|
||||
* EquipBoxComp 按 Field 类型被动驻场,属性加成由 FieldSkillHelper 全局聚合。
|
||||
*/
|
||||
import { mLogger } from "../common/Logger";
|
||||
import { _decorator, Node, Sprite, Label, NodeEventType } from "cc";
|
||||
import { ecs } from "../../../../extensions/oops-plugin-framework/assets/libs/ecs/ECS";
|
||||
import { CCComp } from "../../../../extensions/oops-plugin-framework/assets/module/common/CCComp";
|
||||
import { CardConfig, CardPoolList } from "../common/config/CardSet";
|
||||
import { CardConfig } from "../common/config/CardSet";
|
||||
import { EquipPoolList } from "../common/config/EquipSet";
|
||||
import { FieldSkillSet } from "../common/config/SkillSet";
|
||||
import { oops } from "db://oops-framework/core/Oops";
|
||||
import { GameEvent } from "../common/config/GameEvent";
|
||||
@@ -106,7 +107,7 @@ export class EquipListComp extends CCComp {
|
||||
updateUI() {
|
||||
if (!this.cardData) return;
|
||||
|
||||
const cardConfig = CardPoolList.find(c => c.uuid === this.cardData!.uuid);
|
||||
const cardConfig = EquipPoolList.find(c => c.uuid === this.cardData!.uuid);
|
||||
|
||||
// 名称
|
||||
if (this.name_label) {
|
||||
@@ -191,8 +192,8 @@ export class EquipListComp extends CCComp {
|
||||
return;
|
||||
}
|
||||
|
||||
// 派发 UseSkillCard,装备生效流程与技能卡一致
|
||||
oops.message.dispatchEvent(GameEvent.UseSkillCard, this.cardData);
|
||||
// 派发 UseEquipCard,装备生效流程由 MissEquipComp 接收处理
|
||||
oops.message.dispatchEvent(GameEvent.UseEquipCard, this.cardData);
|
||||
|
||||
// 标记已购买
|
||||
this.isPurchased = true;
|
||||
|
||||
Reference in New Issue
Block a user