public void Start()
    {
        sharedInstance = this;
        objectList     = new Dictionary <SSObjectID, SSPooledObject>();

        for (int i = 0; i < pooledObjects.Length; i++)
        {
            GameObject objParent = new GameObject(pooledObjects[i].obj.name + " Parent");
            objParent.transform.parent = transform;

            SSPooledObject    pooledObj = new SSPooledObject();
            List <GameObject> objList   = new List <GameObject>();

            for (int j = 0; j < pooledObjects[i].pooledSize; j++)
            {
                GameObject obj = (GameObject)Instantiate(pooledObjects[i].obj);
                obj.name             = pooledObjects[i].obj.name;
                obj.transform.parent = objParent.transform;
                obj.SetActive(false);
                objList.Add(obj);
            }

            pooledObj.obj     = pooledObjects[i].obj;
            pooledObj.parent  = objParent.transform;
            pooledObj.objList = objList;
            objectList.Add(pooledObjects[i].objID, pooledObj);
        }
    }
示例#2
0
    public void AddObject(SSObjectID name, GameObject obj)
    {
        List<GameObject> gameObjList = null;
        if (objectList.ContainsKey(name)) {
            gameObjList = objectList[name].objList;
            gameObjList.Add(obj);
        }
        else {
            gameObjList = new List<GameObject>();
            gameObjList.Add(obj);

            SSPooledObject pooledObj = new SSPooledObject();
            pooledObj.obj = obj;

            GameObject objParent = new GameObject(obj.name + " Parent");
            pooledObj.parent = objParent.transform;
            objectList.Add(name, pooledObj);
        }
    }
    public void AddObject(SSObjectID name, GameObject obj)
    {
        List <GameObject> gameObjList = null;

        if (objectList.ContainsKey(name))
        {
            gameObjList = objectList[name].objList;
            gameObjList.Add(obj);
        }
        else
        {
            gameObjList = new List <GameObject>();
            gameObjList.Add(obj);

            SSPooledObject pooledObj = new SSPooledObject();
            pooledObj.obj = obj;

            GameObject objParent = new GameObject(obj.name + " Parent");
            pooledObj.parent = objParent.transform;
            objectList.Add(name, pooledObj);
        }
    }
示例#4
0
    public void Start()
    {
        sharedInstance = this;
        objectList = new Dictionary<SSObjectID, SSPooledObject>();

        for (int i = 0; i < pooledObjects.Length; i++) {
            GameObject objParent = new GameObject(pooledObjects[i].obj.name + " Parent");
            objParent.transform.parent = transform;

            SSPooledObject pooledObj = new SSPooledObject();
            List<GameObject> objList = new List<GameObject>();

            for (int j = 0; j < pooledObjects[i].pooledSize; j++) {
                GameObject obj = (GameObject)Instantiate(pooledObjects[i].obj);
                obj.name = pooledObjects[i].obj.name;
                obj.transform.parent = objParent.transform;
                obj.SetActive(false);
                objList.Add(obj);
            }

            pooledObj.obj = pooledObjects[i].obj;
            pooledObj.parent = objParent.transform;
            pooledObj.objList = objList;
            objectList.Add(pooledObjects[i].objID, pooledObj);
        }
    }