public void OnUpdate() { if (Time.time - mAttachTime > mBuffCfg.mDuration) { OwnActor.GetBuffCmpt().RemoveBuff(this); return; } UpdateEffectActorList(); }
private void Start() { GameActor gameActor = ActorSys.Instance.GetMainActor(); mGameActor = gameActor; BuffCmpt buffCmpt = mGameActor.GetBuffCmpt(); buffCmpt.AddOnBuffAddListener(OnAddBuff); buffCmpt.AddOnRemoveAddListener(OnRemoveBuff); }
private void AddBuffEffect(GameActor targetActor) { if (mBuffCfg.mBuffEffectConfig.mBuffCfgId > 0) { var buffCmpt = targetActor.GetBuffCmpt(); if (null != buffCmpt) { var buff = BuffConfigMgr.Instance.GetBuff(mBuffCfg.mBuffEffectConfig.mBuffCfgId); buffCmpt.AddBuff(buff); } } }