12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788 |
- using System;
- using CombatLibrary.CombatLibrary.CombatCore.CustomizeTimeLogic.FxLogic;
- using Excel2Json;
- using Fort23.Core;
- using GameLogic.Combat.Hero;
- using Utility;
- namespace GameLogic.Combat.CombatTool
- {
- public class CombatCalculateTool : Singleton<CombatCalculateTool>
- {
- public Random Random = new Random();
- public CombatCalculateTool()
- {
- Random = new Random(System.DateTime.Now.Millisecond);
- }
- public int GetOdd()
- {
- return Random.Next(0, 100);
- }
- public int GetOdd(int min,int max)
- {
- return Random.Next(min, max);
- }
- public long GetVlaueRatioForLong(long value, float ration)
- {
- long v = (value * (long)(ration * 100)) / 10000;
- return v;
- }
-
- public HarmReturnInfo Harm(CombatHeroEntity source, CombatHeroEntity target, long att, AttType attType,
- TriggerData triggerData, HarmType harmType = HarmType.Null)
- {
- return Harm(source, target.GetMainHotPoin<CombatHeroHitPoint>(), att,
- attType, triggerData, harmType);
- }
- /// <summary>
- /// 造成伤害
- /// </summary>n
- /// <param name="source">攻击方</param>
- /// <param name="target">被攻击方</param>
- /// <param name="att">伤害值</param>
- public HarmReturnInfo Harm(CombatHeroEntity source, CombatHeroHitPoint target, long att,
- AttType attType, TriggerData triggerData,
- HarmType harmType = HarmType.Default)
- {
-
- HarmReturnInfo harmReturnInfo = new HarmReturnInfo();
- harmReturnInfo.source = source;
- harmReturnInfo.target = target;
- harmReturnInfo.att = att;
- harmReturnInfo.attType = attType;
- harmReturnInfo.harmType = harmType;
- harmReturnInfo.triggerData = triggerData;
- if (target.combatHeroEntity.isDie)
- {
- return harmReturnInfo;
- }
- target.combatHeroEntity.HeroHurt(harmReturnInfo);
-
- return harmReturnInfo;
- }
- public HarmReturnInfo Recover(CombatHeroEntity source, CombatHeroHitPoint target, long att,
- AttType attType, HarmType harmType, TriggerData triggerData)
- {
- HarmReturnInfo harmReturnInfo = new HarmReturnInfo();
- harmReturnInfo.source = source;
- harmReturnInfo.target = target;
- harmReturnInfo.att = att;
- harmReturnInfo.attType = attType;
- harmReturnInfo.harmType = harmType;
- harmReturnInfo.triggerData = triggerData;
- if (target.combatHeroEntity.isDie)
- {
- return harmReturnInfo;
- }
- target.combatHeroEntity.Recover(harmReturnInfo);
- return harmReturnInfo;
- }
- }
- }
|