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); }
public void Init(BaseSkill skill) { this.skill = skill as MultiSkill; }