using CombatLibrary.CombatLibrary.CombatCore.CustomizeTimeLogic.FxLogic; using GameLogic.Bag; 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 { public class S900001 : SkillBasic { protected override void ProUseSkill() { } public void UseSkill() { PlayerHeroEntity playerHeroEntity = CombatHeroEntity as PlayerHeroEntity; Vector3[] pos = new Vector3[] { playerHeroEntity.startPos, playerHeroEntity.endPos }; ActivationTimeLineData("900001", customizePos: pos); } protected override void ProSkillPlayFinish() { } protected override void ProDefaultTimeLineTrigger(string groupName, CombatHeroHitPoint targetEntity, ITimelineFxLogic timelineFxLogic, TriggerData triggerData) { CombatCalculateTool.Instance.TrueHarm(CombatHeroEntity, targetEntity, 1, AttType.Skill, triggerData); if (targetEntity.combatHeroEntity.CurrCombatHeroInfo.heroType == 4) { int odds = CombatCalculateTool.Instance.GetOdd(0, 100); if (odds < 40) { BagController.Instance.DropMonsterGold(targetEntity.combatHeroEntity.combatHeroGameObject.position, 3, 3); } } else { int odds = CombatCalculateTool.Instance.GetOdd(0, 100); if (odds < 30) { BagController.Instance.DropMonsterGold(targetEntity.combatHeroEntity.combatHeroGameObject.position, 1, 1); } } } protected override void ProTimeLineTriggerGround(string groupName, ITimelineFxLogic timelineFxLogic, TriggerData triggerData) { base.ProTimeLineTriggerGround(groupName, timelineFxLogic, triggerData); } } }