diff --git a/assets/script/game/common/config/Equips.ts b/assets/script/game/common/config/Equips.ts index eb8992e1..fe045aa8 100644 --- a/assets/script/game/common/config/Equips.ts +++ b/assets/script/game/common/config/Equips.ts @@ -29,9 +29,9 @@ export enum EquipSpecialAttr { ICE=1, //普通技能变冰系冰冻 FIRE=2, //普通技能变火焰易伤 WIND=3, //普通技能变飓风带击退 - FRIND_LIVE_CD=4, //伙伴复活时间减少 - ATK_ADD_FRIND_ATK=5, //伙伴攻击力增加 - ATK_ADD_FRIND_HP=6, //伙伴生命值增加 + FRIEND_LIVE_CD=4, //伙伴复活时间减少 + ATK_ADD_FRIEND_ATK=5, //伙伴攻击力增加 + ATK_ADD_FRIEND_HP=6, //伙伴生命值增加 ATK_ADD_GLOD=7, //金币增加 } export enum EquipQuality { diff --git a/assets/script/game/common/config/GameEvent.ts b/assets/script/game/common/config/GameEvent.ts index 2d4f3307..80c0aa9b 100644 --- a/assets/script/game/common/config/GameEvent.ts +++ b/assets/script/game/common/config/GameEvent.ts @@ -42,4 +42,5 @@ export enum GameEvent { EquipSelectEnd = "EquipSelectEnd", WaveUpdate = "WaveUpdate", ChangeATK = "ChangeATK", + ChangeATK_FRIEND_LIVE_CD = "ChangeATK_FRIEND_LIVE_CD", } \ No newline at end of file diff --git a/assets/script/game/common/config/Mission.ts b/assets/script/game/common/config/Mission.ts index 87eaa66e..480b54c0 100644 --- a/assets/script/game/common/config/Mission.ts +++ b/assets/script/game/common/config/Mission.ts @@ -52,8 +52,10 @@ export const MissionStatus = { end:4, } export enum FightSet { - FRIND_WAVE_UP=2, //伙伴登场波次 + FRIEND_WAVE_UP=2, //伙伴登场波次 MON_WAVE_TIME=10,//怪物波次时间 + FRIEND_LIVE_CD=10,//伙伴复活时间 + FRIEND_LIVE_CD_LESS=2,//伙伴复活时间减少 // ATK_TO_ATK_RATIO=0.1, // ATK_TO_HP_RATIO=0.2, // ATK_TO_SHIELD_RATIO=2, diff --git a/assets/script/game/map/EquipsComp.ts b/assets/script/game/map/EquipsComp.ts index f65d51f1..1eed66c2 100644 --- a/assets/script/game/map/EquipsComp.ts +++ b/assets/script/game/map/EquipsComp.ts @@ -4,6 +4,7 @@ import { GameEvent } from '../common/config/GameEvent'; import { smc } from '../common/SingletonModuleComp'; import { EquipInfo, EquipType, EquipAttrTarget, EquipSpecialAttr} from '../common/config/Equips'; import { BuffAttr, DebuffAttr, geDebuffNum, getBuffNum } from '../common/config/SkillSet'; +import { FightSet } from '../common/config/Mission'; const { ccclass, property } = _decorator; @ccclass('EquipsComp') @@ -145,10 +146,24 @@ export class EquipsComp extends Component { case EquipSpecialAttr.WIND: oops.message.dispatchEvent(GameEvent.ChangeATK,EquipSpecialAttr.WIND) break + } + switch(armor_special_attr){ + case EquipSpecialAttr.FRIEND_LIVE_CD: + oops.message.dispatchEvent(GameEvent.ChangeATK_FRIEND_LIVE_CD,FightSet.FRIEND_LIVE_CD_LESS) + break default: - oops.message.dispatchEvent(GameEvent.ChangeATK,0) + oops.message.dispatchEvent(GameEvent.ChangeATK_FRIEND_LIVE_CD,0) break } + switch(accessory_special_attr){ + case EquipSpecialAttr.FRIEND_LIVE_CD: + oops.message.dispatchEvent(GameEvent.ChangeATK_FRIEND_LIVE_CD,FightSet.FRIEND_LIVE_CD_LESS) + break + default: + oops.message.dispatchEvent(GameEvent.ChangeATK_FRIEND_LIVE_CD,0) + break + } + // 合并所有装备属性 const allBuff = [...weapon_buffs, ...armor_buffs, ...accessory_buffs]; const allDebuff = [...weapon_debuffs, ...armor_debuffs, ...accessory_debuffs]; diff --git a/assets/script/game/map/MissionHeroComp.ts b/assets/script/game/map/MissionHeroComp.ts index 100bee59..3cd6d4f2 100644 --- a/assets/script/game/map/MissionHeroComp.ts +++ b/assets/script/game/map/MissionHeroComp.ts @@ -9,6 +9,7 @@ import { HeroModelComp } from "../hero/HeroModelComp"; import { HeroViewComp } from "../hero/HeroViewComp"; import { oops } from "db://oops-framework/core/Oops"; import { HeroPos } from "../common/config/heroSet"; +import { FightSet } from "../common/config/Mission"; const { ccclass, property } = _decorator; /** 视图层对象 */ @@ -16,9 +17,13 @@ const { ccclass, property } = _decorator; @ecs.register('MissionHeroComp', false) export class MissionHeroCompComp extends CCComp { timer:Timer=new Timer(2) + Friend_alive_cd:Timer=new Timer(10) + Friend_is_dead:boolean=false current_hero_uuid:number=0 onLoad(){ this.on(GameEvent.UseHeroCard,this.call_hero,this) + this.on(GameEvent.ChangeATK_FRIEND_LIVE_CD,this.change_friend_alive_cd,this) + } start() { // this.test_call() @@ -26,8 +31,18 @@ export class MissionHeroCompComp extends CCComp { } protected update(dt: number): void { if(smc.mission.status != 1) return + if(this.Friend_is_dead){ + if(this.Friend_alive_cd.update(dt)){ + console.log("alive friend") + } + } } + change_friend_alive_cd(e:GameEvent,data:any){ + console.log("change_friend_alive_cd",data) + this.Friend_alive_cd=new Timer(FightSet.FRIEND_LIVE_CD-data) + } + init(){ }