private void CreateBuildables() { BuildConfig.BuildableBlueprint[] blueprints = _buildConfig.buildables; BuildConfig.BuildUIData _uiData = _buildConfig._uiData; for (int i = 0; i < blueprints.Length; i++) { BuildConfig.BuildableBlueprint blueprint = blueprints[i]; BuildableUIItem uiItem = GameObject.Instantiate(_uiData._itemPrefabUI, _buildView._buildableParent.transform, false) as BuildableUIItem; uiItem.SetContent(blueprint, i); _buildItems[blueprint.key] = uiItem; } OnBuildTypeChange(_buildingSystem._currentBuildType); }
public void SetContent(BuildConfig.BuildableBlueprint blueprint, int positionOffset) { //do cool ass render texture building prototypes (like fortnite) _text.text = blueprint.currencyCost.ToString(); _hotKey.text = blueprint.buildHotKey.ToString().Replace("Alpha", ""); RenderTexture texture = new RenderTexture(128, 128, 16, RenderTextureFormat.ARGB32); texture.Create(); _renderCam.targetTexture = texture; _renderCam.clearFlags = CameraClearFlags.Color; _renderCam.transform.position += new Vector3(positionOffset * 5, 0, 0); _renderImage.texture = texture; _prototype = GameObject.Instantiate(blueprint.prefab) as Buildable; _prototype.RemovePhysics(); _prototype.gameObject.SetActive(true); _prototype.transform.parent = _renderCam.transform; SetLayerRecursively(_prototype.gameObject, 10); _prototype.transform.position = Vector3.zero; ToggleItem(false); Singleton.instance.gui.screenFader.StartCoroutine(Refresh()); }