// Update is called once per frame void Update() { if (SetSele && Input.GetMouseButtonUp(0)) { SeleEnd(); } if (ToUp) { float dis = Vector3.Magnitude(transform.position - TarPos); transform.position = Vector3.Lerp(transform.position, TarPos, Time.deltaTime * 15f / dis); if (dis < 0.1f) { transform.position = TarPos; ToUp = false; } } if (ToDown) { float dis = Vector3.Magnitude(transform.position - DownPos); transform.position = Vector3.Lerp(transform.position, DownPos, Time.deltaTime * 15f / dis); if (dis < 0.1f) { transform.position = DownPos; state = Postype.Init; ToDown = false; } } }
public void SeleEnd() { if (!SetSele) { return; } SetSele = false; switch (state) { case Postype.Init: transform.position += new Vector3(0, 0.5f, 0); state = Postype.Beseleted; mark.SetActive(false); break; case Postype.Beseleted: transform.position -= new Vector3(0, 0.5f, 0); state = Postype.Init; mark.SetActive(false); break; case Postype.BeUsed: mark.SetActive(false); ToDown = true; Pokemgr.Instance.CardBack(this, DunTpye); break; default: break; } }
public void AISort(Vector3 Po) { TarPos = Po; state = Postype.BeUsed; mark.SetActive(false); ToUp = true; }
public void BeUsed(Vector3 pos, DunTpye dun) { DunTpye = dun; Vector3 scr = RectTransformUtility.WorldToScreenPoint(Camera.main, pos); scr.z = 0; scr.z = Mathf.Abs(Camera.main.transform.position.z - transform.position.z); TarPos = Camera.main.ScreenToWorldPoint(scr); ToUp = true; state = Postype.BeUsed; //transform.position = tar; //transform.DOBlendableLocalMoveBy(tar, 1f); }