示例#1
0
 public void MulTakeEnemy()
 {
     if (Skillinfo != null)
     {
         MultiSkill ss         = Skillinfo as MultiSkill;
         Ray        ray        = Camera.main.ScreenPointToRay(Input.mousePosition);
         bool       isCollider = Physics.Raycast(ray, out hitInfo);
         if (isCollider)
         {
             if (hitInfo.collider.tag == Tags.ground)
             {
                 if (Vector3.Distance(transform.position, hitInfo.point) < ss.SkillDis)
                 {
                     PlayerStatusManager.Instance.CutMP(Skillinfo.SkillMP);
                     Vector3    vector3 = new Vector3(hitInfo.point.x, hitInfo.point.y + 1, hitInfo.point.z);
                     GameObject effect  = Resources.Load <GameObject>(Skillinfo.EffectPath);
                     effect = Instantiate(effect, vector3, hitInfo.transform.rotation);
                     effect.GetComponent <MulSkillEffect>().Init(Skillinfo);
                     transform.LookAt(hitInfo.point);
                     PlayerState = AnimationStates.SkillAttack;
                     PlayAnim(ss.AnimName, ss.AnimTime, () => { PlayerState = AnimationStates.Attack; });
                 }
             }
         }
     }
     isLockPosition = false;
     Skillinfo      = null;
     MouseCursorManager.Instance.SetMouseCorsor(MouseCursorTypes.Normal);
 }
示例#2
0
 public void Init(BaseSkill skill)
 {
     this.skill = skill as MultiSkill;
 }