public static void ReleaseBrick(BrickAvatar avatar) { Queue <BrickAvatar> availableAvatar = instance.availableBrickByType[avatar.brickType]; avatar.gameObject.SetActive(false); availableAvatar.Enqueue(avatar); }
public static void PreinstantiateBrick(BrickAvatar.BrickType brickType, int _numberOfBricksToPreinstantiate) { Queue <BrickAvatar> availableAvatar = BricksFactory.instance.availableBrickByType[brickType]; for (int i = 0; i < _numberOfBricksToPreinstantiate; i++) { BrickAvatar avatar = InstantiateBrick(brickType); if (avatar == null) { Debug.LogError(string.Format("PreinstantiateAvatar() failure to {0} ennemy !", _numberOfBricksToPreinstantiate)); return; } availableAvatar.Enqueue(avatar); } }
public static BrickAvatar InstantiateBrick(BrickAvatar.BrickType brickType) { GameObject brick = null; switch (brickType) { case BrickAvatar.BrickType.simpleBrick: brick = GameObject.Instantiate(instance.simpleBrickPrefab); break; } brick.SetActive(false); brick.transform.parent = BricksFactory.instance.gameObject.transform; BrickAvatar avatar = brick.GetComponent <BrickAvatar>(); BricksFactory.instance.brickCount++; return(avatar); }