1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859 |
- using CommonAI.Data;
- using CommonAI.Zone.Formula;
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- using XmdsCommon.Plugin;
- using XmdsCommonServer.Plugin;
- using XmdsCommonServer.XLS.Data;
- using static CommonAI.Zone.Instance.InstanceUnit;
- namespace XmdsCommonSkill.Plugin.CardSkill
- {
- public class CardSkill_1030010 : CardSkill_LiangYiBase
- {
- private static readonly int ID = 1030010;
- public override int SkillID { get { return ID; } }
- // 蓄势翻倍概率
- protected static XmdsSkillValue s_ValueSet1;
- //额外获得一层蓄势概率
- protected static XmdsSkillValue s_ValueSet2;
- //触发卡牌技能
- public override void OnTriggerCardSkill(XmdsVirtual player, XmdsVirtual hitter, AttackSource source, CardSkillData skillData, int sameNums)
- {
- BuffState buff = player.mUnit.GetBuffByID(JSGCardSkillBase.BUFF_STOREENERGY);
- int buffLayer = buff == null ? 0 : buff.OverlayLevel;
- int finalAddLayer = buffLayer;
- if (player.RandomPercent(s_ValueSet1.GetValue(skillData.skilLv)))
- {
- finalAddLayer += finalAddLayer;
- }
- if(player.RandomPercent(s_ValueSet2.GetValue(skillData.skilLv)))
- {
- finalAddLayer += 1;
- }
- if (finalAddLayer > 0)
- {
- player.mUnit.AddBuff(JSGCardSkillBase.BUFF_STOREENERGY, player.mUnit, 0, false, false, false, 0, finalAddLayer);
- //加蓄势伤害层数
- base.AddXuShi(player, finalAddLayer - buffLayer);
- base.unitLaunchSpell(player, hitter, this.GetEffectID(skillData.skilLv, sameNums));
- }
- }
- protected override void OnInitSkillParam()
- {
- XmdsSkillData data = XmdsDataMgr.GetInstance().GetXmdsSkillData(this.SkillID);
- InitData(data, out s_ValueSet1, XmdsSkillData.XmdsSkillDataKey.ValueSet);
- InitData(data, out s_ValueSet2, XmdsSkillData.XmdsSkillDataKey.ValueSet2);
- }
- }
- }
|