private void OnAiSkill(EntityInfo npc, int skillId)
{
Scene scene = npc.SceneContext.CustomData as Scene;
if (null != scene) {
SkillInfo skillInfo = npc.GetSkillStateInfo().GetCurSkillInfo();
if (null == skillInfo || !skillInfo.IsSkillActivated) {
SkillInfo curSkillInfo = npc.GetSkillStateInfo().GetSkillInfoById(skillId);
if (null != curSkillInfo) {
long curTime = TimeUtility.GetLocalMilliseconds();
if (!curSkillInfo.IsInCd(curTime)) {
if (scene.SkillSystem.StartSkill(npc.GetId(), curSkillInfo.ConfigData, 0)) {
Msg_RC_NpcSkill skillBuilder = DataSyncUtility.BuildNpcSkillMessage(npc, skillId);
LogSystem.Info("Send Msg_RC_NpcSkill, EntityId={0}, SkillId={1}",
npc.GetId(), skillId);
scene.NotifyAllUser(RoomMessageDefine.Msg_RC_NpcSkill, skillBuilder);
}
}
}
}
}
}