1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283 |
- using System.Collections.Generic;
- using CombatLibrary.CombatLibrary.CombatCore.CustomizeTimeLogic.FxLogic;
- using Fort23.Core;
- using GameLogic.Combat.Buff;
- using GameLogic.Combat.CombatTool;
- using GameLogic.Combat.Hero;
- using OfficeOpenXml.FormulaParsing.Excel.Functions.Logical;
- using UnityEngine;
- using UTool.CustomizeTimeLogic.FxLogic.TimeLineEventinterface;
- namespace GameLogic.Combat.Skill.MagicSkill
- {
- /// <summary>
- /// 对敌人照成伤害,并随机封锁敌人{0}个法宝,让其{1}秒内不能使用和不能充能
- /// </summary>
- public class S901004 : MagicSkillBasic
- {
- private CombatHeroEntity target;
- protected override void ProMagicUseSkill()
- {
- // StraightLineShow straightLineShow = new StraightLineShow();
- // straightLineShow.Init(this);
- CombatHeroEntity[] allHero =
- CombatController.currActiveCombat.CombatHeroController.GetHero(!CombatHeroEntity.IsEnemy);
- if (allHero == null || allHero.Length <= 0)
- {
- SkillPlayFinish();
- return;
- }
-
- // SkillPlayFinish();
- target = allHero[0];
- MagicAttShowBasic magicAttShowBasic = InitMagicAttShowBasic(allHero[0], Finish);
-
- SetMagicAttShowBasic(magicAttShowBasic);
- }
- private void Finish()
- {
- CombatHeroEntity combatHeroEntity =target;
- ILifetCycleHitPoint lifetCycleHitPoint = target.GetMainHotPoin<ILifetCycleHitPoint>();
- if (lifetCycleHitPoint == null)
- {
- return;
- }
- CombatMagicWeaponEntity[] AllMagicWeapon = combatHeroEntity.heroMagicWeaponControl.AllMagicWeapon;
- int maxCount = combatHeroEntity.heroMagicWeaponControl.MagicWeaponCount;
- List<CombatMagicWeaponEntity> currAllMagicWeapon = new List<CombatMagicWeaponEntity>();
- currAllMagicWeapon.AddRange(AllMagicWeapon);
- for (int i = 0; i < effectValue[0]; i++)
- {
- if (maxCount > 0)
- {
- int index = Random.Range(0, maxCount);
- BuffInfo buffInfo = BuffInfo.GetBuffInfo(10081, effectValue[1], 1);
- CombatMagicWeaponEntity combatMagicWeaponEntity = currAllMagicWeapon[index];
- combatMagicWeaponEntity.BuffControl.AddBuff(CombatMagicWeaponEntity.RootMagicWeaponControl.combatHeroEntity,
- buffInfo);
- currAllMagicWeapon.RemoveAt(index);
- maxCount--;
- }
- }
- BetterList<ILifetCycleHitPoint> cBetterList = new BetterList<ILifetCycleHitPoint>(1);
- cBetterList.Add(lifetCycleHitPoint);
- ActivationTimeLineData("gongji", currTarget: cBetterList);
- SkillPlayFinish();
- // TimeLineEventLogicGroupBasic timeLineEventLogicGroupBasic =
- // ActivationTimeLineData("sk1_xiaoshi");
- }
-
- // protected override ILifetCycleHitPoint[] ProGetTineLineTargetEntity(
- // TimeLineEventLogicBasic timeLineEventLogicBasic)
- // {
- // ILifetCycleHitPoint[] lifetCycleHitPoints = new ILifetCycleHitPoint[1];
- // lifetCycleHitPoints[0] = target.GetMainHotPoin<ILifetCycleHitPoint>();
- // return lifetCycleHitPoints;
- // }
- }
- }
|