Пример #1
0
        void ClickCB(UnityPool pool)
        {
            GameObject go  = pool.Get();
            var        pos = Mouse.current.position.ReadValue();

            go.transform.SetParent(TopLayer.Node, false);
            RectTransformUtility.ScreenPointToLocalPointInRectangle(TopLayer.Node, pos, UIMgr.Instance.UICamera, out Vector2 relatePos);
            go.transform.GetComponent <RectTransform>().anchoredPosition = relatePos;
        }
    private IEnumerator TPObjectPoolSpawnObjects(UnityPool <GameObject> pool)
    {
        isRunning = true;
        GameObject prevObj = pool.Get();

        prevObj.transform.position = RandomSystem.InsideUnitSquare() * 5;
        while (run)
        {
            yield return(ExampleHelper.WaitSecond);

            pool.Push(prevObj);

            prevObj = pool.Get();
            prevObj.transform.position = RandomSystem.InsideUnitSquare() * 5;
            prevObj.SetActive(true);
        }
        isRunning = false;
    }
        private void IncreaseBodyLength()
        {
            var v_body      = _pool.Get <GameObject>(transform);
            var v_transform = v_body.transform;

            v_transform.position = _bodyList.Last().position;
            v_transform.rotation = _bodyList.Last().rotation;
            _bodyList.Add(v_transform);

            var v_meshRenderer = v_transform.GetComponent <MeshRenderer>();

            _meshRenderers.Add(v_meshRenderer);
            if (_transparentPowerUpEnabled)
            {
                v_meshRenderer.sharedMaterial = _playerController.GetInvisibleMaterial();
            }
        }