Files

65 lines
2.1 KiB
C#

using BrewMonster.Network;
using BrewMonster.Scripts.Skills;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using static BrewMonster.SkillArrayWrapper;
namespace BrewMonster
{
public class CECSCSkill : CECShortcut
{
CECSkill m_pSkill;
public CECSCSkill() : base()
{
m_iSCType = (int)ShortcutType. SCT_SKILL;
}
public bool Init(CECSkill pSkill)
{
m_pSkill = pSkill;
return true;
}
public override bool Execute()
{
if (ReferenceEquals(m_pSkill, null))
return false;
CECHostPlayer pHost = EC_Game.GetGameRun().GetHostPlayer();
if (ElementSkill.IsGoblinSkill((uint)m_pSkill.GetSkillID()))
{
/*int idSelected = pHost.GetSelectedTarget();
bool bForctAttack = glb_GetForceAttackFlag(NULL);
CECHostGoblin* pHostGoblin = (CECHostGoblin*)pHost->GetGoblinModel();
int i;
for (i = 0; i < pHostGoblin->GetSkillNum(); i++)
{
if (m_pSkill == pHostGoblin->GetSkill(i))
{
break;
}
}
if (i < pHostGoblin->GetSkillNum())
{
pHostGoblin->CastSkill(i, idSelected, bForctAttack);
}*/
}
else
{
// Æï³Ëʱ£¬Òª·Å¼¼ÄÜ, Ö´ÐÐ action switcher£¬·ñÔò ApplySkillShortcut
if (pHost.GetActionSwitcher() == null || !pHost.GetActionSwitcher().OnRideToSkillAction(m_pSkill.GetSkillID(), false, 0, -1))
{
pHost.ApplySkillShortcut(m_pSkill.GetSkillID());
}
}
return true;
}
public CECSkill GetSkill() { return m_pSkill; }
public void SetSkill(CECSkill pSkill) { m_pSkill = pSkill; }
public override string GetDesc() { return m_pSkill.GetSkillID().ToString(); }
}
}