protected void Spawn(Vector3 pos, Quaternion rot) { IPoolObject enemy = GameMan.Instance.ObjPoolMan.GetObjectFromPool(objectPoolType); enemy.Activate(pos, rot); spawnAmount--; currentTime = 0f; }
public GameObject GetActiveGameObject(int index, object parameter) { if (ready) { try { GameObject c = objects[index].First(x => !x.GetComponent <IPoolObject>().Active); IPoolObject p = c.GetComponent <IPoolObject>(); if (parameter != null) { p.Activate(parameter); } else { p.Activate(); } return(c); } catch (Exception error) { GameObject c = Instantiate(prefabs[index], new Vector3(100, 0, 100), prefabs[index].transform.rotation); c.GetComponent <IPoolObject>().Deactivate(); if (parameter != null) { c.GetComponent <IPoolObject>().Activate(parameter); } else { c.GetComponent <IPoolObject>().Activate(); } return(c); } } else { return(null); } }