From fdfa9cbd37f51bbca497d6bc95488e0c2c89c604 Mon Sep 17 00:00:00 2001 From: panw Date: Tue, 17 Jun 2025 17:21:54 +0800 Subject: [PATCH] dd --- assets/script/game/common/config/Equips.ts | 42 ++++++++++++++++++---- assets/script/game/hero/HeroViewComp.ts | 10 ++++-- assets/script/game/map/EquipsComp.ts | 37 ++++++++++--------- 3 files changed, 61 insertions(+), 28 deletions(-) diff --git a/assets/script/game/common/config/Equips.ts b/assets/script/game/common/config/Equips.ts index a1b18058..7d1f2d58 100644 --- a/assets/script/game/common/config/Equips.ts +++ b/assets/script/game/common/config/Equips.ts @@ -70,13 +70,19 @@ export interface EquipData { name: string; // 装备名称 type: EquipType; // 装备类型 info: string; // 装备描述 - special_attr: EquipSpecialAttrData; // 特殊属性 + special_attr: EquipSpecialAttrData[]; // 特殊属性数组 buff: EquipAttribute[]; // 属性加成列表 debuff: EquipDebuffAttribute[]; // 属性减益列表 } export const EquipInfo: { [key: number]: EquipData } = { 2001: {uuid: 2001, name: "新手剑", type: EquipType.WEAPON,info:"攻击力增加80%", - special_attr: {special_attr:EquipSpecialAttr.FRIEND_LIVE_CD,special_attr_value:3}, + special_attr: [ + {special_attr:EquipSpecialAttr.ATK_ADD_FRIEND_ATK,special_attr_value:3}, + {special_attr:EquipSpecialAttr.ATK_ADD_FRIEND_HP,special_attr_value:30}, + {special_attr:EquipSpecialAttr.ATK_ADD_GLOD,special_attr_value:3}, + {special_attr:EquipSpecialAttr.ATK_ADD_MASTER_ATK,special_attr_value:3}, + {special_attr:EquipSpecialAttr.ATK_ADD_MASTER_HP,special_attr_value:3}, + ], buff: [ { type: BuffAttr.ATK, value: 80, target: EquipAttrTarget.HERO }, ], @@ -85,7 +91,13 @@ export const EquipInfo: { [key: number]: EquipData } = { ] }, 2002: {uuid: 2002,name: "新手剑2",type: EquipType.WEAPON,info:"攻击速度增加30%", - special_attr:{special_attr:EquipSpecialAttr.FRIEND_LIVE_CD,special_attr_value:3}, + special_attr:[ + {special_attr:EquipSpecialAttr.ATK_ADD_FRIEND_ATK,special_attr_value:3}, + {special_attr:EquipSpecialAttr.ATK_ADD_FRIEND_HP,special_attr_value:30}, + {special_attr:EquipSpecialAttr.ATK_ADD_GLOD,special_attr_value:3}, + {special_attr:EquipSpecialAttr.ATK_ADD_MASTER_ATK,special_attr_value:3}, + {special_attr:EquipSpecialAttr.ATK_ADD_MASTER_HP,special_attr_value:3}, + ], buff: [ { type: BuffAttr.ATK_CD, value: 30, target: EquipAttrTarget.HERO }, ], @@ -94,7 +106,13 @@ export const EquipInfo: { [key: number]: EquipData } = { ] }, 2003: {uuid: 2003,name: "新手剑3",type: EquipType.WEAPON,info:"攻击次数增加1次", - special_attr:{special_attr:EquipSpecialAttr.FRIEND_LIVE_CD,special_attr_value:3}, + special_attr:[ + {special_attr:EquipSpecialAttr.ATK_ADD_FRIEND_ATK,special_attr_value:3}, + {special_attr:EquipSpecialAttr.ATK_ADD_FRIEND_HP,special_attr_value:30}, + {special_attr:EquipSpecialAttr.ATK_ADD_GLOD,special_attr_value:3}, + {special_attr:EquipSpecialAttr.ATK_ADD_MASTER_ATK,special_attr_value:3}, + {special_attr:EquipSpecialAttr.ATK_ADD_MASTER_HP,special_attr_value:3}, + ], buff: [ { type: BuffAttr.ATK_COUNT, value: 1, target: EquipAttrTarget.HERO }, ], @@ -103,7 +121,13 @@ export const EquipInfo: { [key: number]: EquipData } = { ] }, 2004: {uuid: 2004,name: "防具1",type: EquipType.ARMOR,info:"生命值增加100%", - special_attr:{special_attr:EquipSpecialAttr.FRIEND_LIVE_CD,special_attr_value:3}, + special_attr:[ + {special_attr:EquipSpecialAttr.ATK_ADD_FRIEND_ATK,special_attr_value:3}, + {special_attr:EquipSpecialAttr.ATK_ADD_FRIEND_HP,special_attr_value:30}, + {special_attr:EquipSpecialAttr.ATK_ADD_GLOD,special_attr_value:3}, + {special_attr:EquipSpecialAttr.ATK_ADD_MASTER_ATK,special_attr_value:3}, + {special_attr:EquipSpecialAttr.ATK_ADD_MASTER_HP,special_attr_value:3}, + ], buff: [ { type: BuffAttr.HP, value: 100, target: EquipAttrTarget.HERO }, ], @@ -112,7 +136,13 @@ export const EquipInfo: { [key: number]: EquipData } = { ] }, 2005: {uuid: 2005,name: "防具2",type: EquipType.ARMOR,info:"免伤增加50%", - special_attr:{special_attr:EquipSpecialAttr.FRIEND_LIVE_CD,special_attr_value:3}, + special_attr:[ + {special_attr:EquipSpecialAttr.ATK_ADD_FRIEND_ATK,special_attr_value:3}, + {special_attr:EquipSpecialAttr.ATK_ADD_FRIEND_HP,special_attr_value:30}, + {special_attr:EquipSpecialAttr.ATK_ADD_GLOD,special_attr_value:3}, + {special_attr:EquipSpecialAttr.ATK_ADD_MASTER_ATK,special_attr_value:3}, + {special_attr:EquipSpecialAttr.ATK_ADD_MASTER_HP,special_attr_value:3}, + ], buff: [ { type: BuffAttr.DEF, value: 50, target: EquipAttrTarget.HERO }, ], diff --git a/assets/script/game/hero/HeroViewComp.ts b/assets/script/game/hero/HeroViewComp.ts index fc27db2f..1cecfede 100644 --- a/assets/script/game/hero/HeroViewComp.ts +++ b/assets/script/game/hero/HeroViewComp.ts @@ -119,7 +119,7 @@ export class HeroViewComp extends CCComp { // return // } if(this.is_dead) { - console.log("[HeroViewComp]:alive friend cd",this.Friend_alive_cd ,this.Friend_alive_cd.elapsedTime) + // console.log("[HeroViewComp]:alive friend cd",this.Friend_alive_cd ,this.Friend_alive_cd.elapsedTime) if(this.Friend_alive_cd.update(dt)){ this.to_alive() @@ -152,7 +152,7 @@ export class HeroViewComp extends CCComp { this.atk_skill=6001 } } - + get isActive() { return this.ent.has(HeroViewComp) && this.node?.isValid; } @@ -187,6 +187,7 @@ export class HeroViewComp extends CCComp { * @param ap 要增加的攻击。 */ add_ap(ap: number,is_num:boolean=true){ + console.log("[HeroViewComp]:add_ap add:",ap,this.ap) if(is_num){ this.ap += Math.floor(ap); }else{ @@ -196,6 +197,7 @@ export class HeroViewComp extends CCComp { } de_ap(ap: number,is_num:boolean=true){ + console.log("[HeroViewComp]:de_ap de:",ap,this.ap) if(is_num){ this.ap -= Math.floor(ap); }else{ @@ -205,6 +207,7 @@ export class HeroViewComp extends CCComp { } add_hp_max(hp: number=0,is_num:boolean=true){ + console.log("[HeroViewComp]:add_hp_max add:",hp,this.hp_max) if(is_num){ this.hp_max += Math.floor(hp) ; this.hp += Math.floor(hp) ; @@ -216,6 +219,7 @@ export class HeroViewComp extends CCComp { } de_hp_max(hp: number=0,is_num:boolean=true){ + console.log("[HeroViewComp]:de_hp_max de:",hp,this.hp_max) if(is_num){ this.hp_max -= Math.floor(hp) ; }else{ @@ -252,7 +256,7 @@ export class HeroViewComp extends CCComp { if(!this.is_master) return this.atk_count+=1 if(this.atk_count< FightSet.ATK_ADD_FRIEND_COUNT) return - if(this.FIGHTCON.atk_add_glod >0) smc.mission.add_gold(this.FIGHTCON.atk_add_glod) + if(this.FIGHTCON.atk_add_glod >0) smc.vmdata.mission_data.gold+=this.FIGHTCON.atk_add_glod this.do_friend_atk_add() this.do_master_atk_add() diff --git a/assets/script/game/map/EquipsComp.ts b/assets/script/game/map/EquipsComp.ts index b80c0f9e..933231d9 100644 --- a/assets/script/game/map/EquipsComp.ts +++ b/assets/script/game/map/EquipsComp.ts @@ -113,7 +113,7 @@ export class EquipsComp extends Component { count_attrs(){ // 重置所有属性 this.reset_attrs(); - console.log("重置后的属性", this.attrs); + console.log("[EquipsComp]:重置后的属性", this.attrs); // 获取所有装备的属性 let weapon_buffs = this.weapon.uuid ? EquipInfo[this.weapon.uuid]?.buff || [] : []; @@ -122,20 +122,20 @@ export class EquipsComp extends Component { let weapon_debuffs = this.weapon.uuid ? EquipInfo[this.weapon.uuid]?.debuff || [] : []; let armor_debuffs = this.armor.uuid ? EquipInfo[this.armor.uuid]?.debuff || [] : []; let accessory_debuffs = this.accessory.uuid ? EquipInfo[this.accessory.uuid]?.debuff || [] : []; - let weapon_special_attr = this.weapon.uuid ? EquipInfo[this.weapon.uuid]?.special_attr : null; - let armor_special_attr = this.armor.uuid ? EquipInfo[this.armor.uuid]?.special_attr : null; - let accessory_special_attr = this.accessory.uuid ? EquipInfo[this.accessory.uuid]?.special_attr : null; + let weapon_special_attr = this.weapon.uuid ? EquipInfo[this.weapon.uuid]?.special_attr : []; + let armor_special_attr = this.armor.uuid ? EquipInfo[this.armor.uuid]?.special_attr : []; + let accessory_special_attr = this.accessory.uuid ? EquipInfo[this.accessory.uuid]?.special_attr : []; - console.log("武器特殊属性", weapon_special_attr); - console.log("防具特殊属性", armor_special_attr); - console.log("饰品特殊属性", accessory_special_attr); - console.log("武器属性", weapon_buffs); - console.log("防具属性", armor_buffs); - console.log("饰品属性", accessory_buffs); - console.log("武器减益", weapon_debuffs); - console.log("防具减益", armor_debuffs); - console.log("饰品减益", accessory_debuffs); - const all_special_attr=[weapon_special_attr,armor_special_attr,accessory_special_attr] + console.log("[EquipsComp]:weapon_special_attr", weapon_special_attr); + console.log("[EquipsComp]:armor_special_attr", armor_special_attr); + console.log("[EquipsComp]:accessory_special_attr", accessory_special_attr); + console.log("[EquipsComp]:weapon_buffs", weapon_buffs); + console.log("[EquipsComp]:防具属性", armor_buffs); + console.log("[EquipsComp]:饰品属性", accessory_buffs); + console.log("[EquipsComp]:武器减益", weapon_debuffs); + console.log("[EquipsComp]:防具减益", armor_debuffs); + console.log("[EquipsComp]:饰品减益", accessory_debuffs); + const all_special_attr=[...weapon_special_attr,...armor_special_attr,...accessory_special_attr] let equip_special_attr=this.count_equip_special_attr(all_special_attr) oops.message.dispatchEvent(GameEvent.ChangeATK_EQUIP_SPECIAL_ATTR,equip_special_attr) @@ -143,8 +143,8 @@ export class EquipsComp extends Component { // 合并所有装备属性 const allBuff = [...weapon_buffs, ...armor_buffs, ...accessory_buffs]; const allDebuff = [...weapon_debuffs, ...armor_debuffs, ...accessory_debuffs]; - console.log("合并后的所有属性", allBuff); - console.log("合并后的所有减益", allDebuff); + console.log("[EquipsComp]:合并后的所有属性", allBuff); + console.log("[EquipsComp]:合并后的所有减益", allDebuff); // 计算每个目标的属性加成 allBuff.forEach(attr => { const target = attr.target || EquipAttrTarget.HERO; @@ -178,7 +178,7 @@ export class EquipsComp extends Component { this.add_debuff(targetKey,attr) }); - console.log("最终属性加成", this.attrs); + console.log("[EquipsComp]:debuff buff attrs ", this.attrs); oops.message.dispatchEvent(GameEvent.EquipChange, this.attrs); } @@ -195,7 +195,7 @@ export class EquipsComp extends Component { atk_add_master_atk:0, atk_add_master_hp:0, } - + console.log("[EquipsComp]:all_special_attr",all_special_attr) all_special_attr.forEach(special_attr=>{ if(special_attr){ switch(special_attr.special_attr){ @@ -229,7 +229,6 @@ export class EquipsComp extends Component { } } }) - console.log("[EquipsComp]:equip_special_attr",equip_special_attr) return equip_special_attr }