private void Awake() { //找到子物体 btnTemplate 实例 Transform btnTemplate = transform.Find("btnTemplate"); btnTemplate.gameObject.SetActive(false); //加载所有建筑体类型资源文件 BuildingTypeListSO buildingTypeList = Resources.Load <BuildingTypeListSO>(typeof(BuildingTypeListSO).Name); btnTransformDictionary = new Dictionary <BuildingTypeSO, Transform>(); int index = 0; //生成数据箭头的实例 arrowBtn = Instantiate(btnTemplate, transform); arrowBtn.gameObject.SetActive(true); //设置生成的资源UI实例位置偏移点 float offsetAmount = +130f; arrowBtn.GetComponent <RectTransform>().anchoredPosition = new Vector2(offsetAmount * index, 0); //设置生成的资源UI实例的精灵图片 arrowBtn.Find("image").GetComponent <Image>().sprite = arrowSprite; arrowBtn.Find("image").GetComponent <RectTransform>().sizeDelta = new Vector2(50, 50); //绑定按钮点击事件 arrowBtn.GetComponent <Button>().onClick.AddListener(() => { //激活点击的建筑体实例 BuildingManager.Instance.SetActiveBuildingType(null); }); index++; //遍历所有建筑体类型资源,并生成实例 foreach (BuildingTypeSO buildingType in buildingTypeList.list) { Transform btnTransform = Instantiate(btnTemplate, transform); btnTransform.gameObject.SetActive(true); //设置生成的资源UI实例位置偏移点 offsetAmount = +130f; btnTransform.GetComponent <RectTransform>().anchoredPosition = new Vector2(offsetAmount * index, 0); //设置生成的资源UI实例的精灵图片 btnTransform.Find("image").GetComponent <Image>().sprite = buildingType.sprite; //绑定按钮点击事件 btnTransform.GetComponent <Button>().onClick.AddListener(() => { //激活点击的建筑体实例 BuildingManager.Instance.SetActiveBuildingType(buildingType); }); //将建筑体加入字典map中 btnTransformDictionary[buildingType] = btnTransform; index++; } }
private void Start() { mainCamera = Camera.main; buildingTypeList = Resources.Load <BuildingTypeListSO>(typeof(BuildingTypeListSO).Name); buildingType = buildingTypeList.list[0]; }
private void Awake() { btnTypeButtonDict = new Dictionary <BuildingTypeSO, Button>(); Transform btnTmpTrm = transform.Find("btnTamplate"); btnTmpTrm.gameObject.SetActive(false); buildingTypeListSO = Resources.Load <BuildingTypeListSO>(typeof(BuildingTypeListSO).Name); Debug.Log(buildingTypeListSO.btList.Count); int idx = 0; foreach (var item in buildingTypeListSO.btList) { // 생성 및 활성화 Transform btnTrm = Instantiate(btnTmpTrm, transform); btnTrm.gameObject.SetActive(true); // 위치 적용 float offsetAmount = 146f; btnTrm.GetComponent <RectTransform>().anchoredPosition = new Vector2(offsetAmount * idx, 0); // 이미지 적용 btnTrm.Find("image").GetComponent <Image>().sprite = item.sprite; btnTrm.GetComponent <Button>().onClick.AddListener(() => { BuilderManager.Instance.SetActiveBuildingType(item); }); idx++; } }
private void Start() { cam = Camera.main; buildingTypeList = Resources.Load <BuildingTypeListSO>(nameof(BuildingTypeListSO)); buildingType = buildingTypeList.List[0]; }
private void Awake() { //looking for a folder name // Debug.Log(Resources.Load<BuildingTypeListSO>("BuildingTypeList")); //add debug for testing Instance = this; buildingTypeList = Resources.Load <BuildingTypeListSO>(typeof(BuildingTypeListSO).Name); //another way to write it :: must mach with the name of file //activeBuldingType = buildingTypeList.list[0]; }
private void Awake() { Transform buttonTemplate = transform.Find("ButtonTemplate"); buttonTemplate.gameObject.SetActive(false); BuildingTypeListSO buildingTypeList = Resources.Load <BuildingTypeListSO>(typeof(BuildingTypeListSO).Name); buttonTransformDictionary = new Dictionary <BuildingTypeSO, Transform>(); int index = 0; arrowButton = Instantiate(buttonTemplate, transform); arrowButton.gameObject.SetActive(true); float offsetAmount = +120f; arrowButton.GetComponent <RectTransform>().anchoredPosition = new Vector2(offsetAmount * index, 0); arrowButton.Find("image").GetComponent <Image>().sprite = arrowSprite; arrowButton.Find("image").GetComponent <RectTransform>().sizeDelta = new Vector2(0, -30); arrowButton.GetComponent <Button>().onClick.AddListener(() => { BuildingManager.Instance.SetActiveBuildingType(null); }); index++; foreach (BuildingTypeSO buildingType in buildingTypeList.list) { Transform buttonTransform = Instantiate(buttonTemplate, transform); buttonTransform.gameObject.SetActive(true); offsetAmount = +120f; buttonTransform.GetComponent <RectTransform>().anchoredPosition = new Vector2(offsetAmount * index, 0); buttonTransform.Find("image").GetComponent <Image>().sprite = buildingType.sprite; buttonTransform.GetComponent <Button>().onClick.AddListener(() => { BuildingManager.Instance.SetActiveBuildingType(buildingType); }); buttonTransformDictionary[buildingType] = buttonTransform; index++; } }
private void Awake() { var index = 0; btnTransformDictionary = new Dictionary <BuildingTypeSO, Transform>(); Transform btnTemplate = transform.Find("btnTemplate"); btnTemplate.gameObject.SetActive(false); arrowBtn = Instantiate(btnTemplate, transform); arrowBtn.GetComponent <RectTransform>().anchoredPosition = new Vector2(offsetAmount * index, 0); arrowBtn.gameObject.SetActive(true); arrowBtn.Find("image").GetComponent <Image>().sprite = arrowSprite; arrowBtn.Find("image").GetComponent <RectTransform>().sizeDelta = new Vector2(0, -30); arrowBtn.GetComponent <Button>().onClick.AddListener(() => { Debug.Log("Selected: Arrow Button [NULL]"); BuildingManager.Instance.SetActiveBuildingType(null); UpdateActiveBuildingTypeButton(); }); index++; BuildingTypeListSO buildingTypeList = Resources.Load <BuildingTypeListSO>(nameof(BuildingTypeListSO)); foreach (BuildingTypeSO buildingType in buildingTypeList.list) { Transform bntTranform = Instantiate(btnTemplate, transform); bntTranform.GetComponent <RectTransform>().anchoredPosition = new Vector2(offsetAmount * index, 0); bntTranform.gameObject.SetActive(true); bntTranform.Find("image").GetComponent <Image>().sprite = buildingType.sprite; bntTranform.GetComponent <Button>().onClick.AddListener(() => { Debug.Log("Selected: " + buildingType.nameString); BuildingManager.Instance.SetActiveBuildingType(buildingType); }); btnTransformDictionary[buildingType] = bntTranform; index++; } }
private void Awake() { Transform btnTemplate = transform.Find("btnTemplate"); btnTemplate.gameObject.SetActive(false); BuildingTypeListSO buildingTypeList = Resources.Load <BuildingTypeListSO>(typeof(BuildingTypeListSO).Name); btnTransformDictionary = new Dictionary <BuldingTypeSO, Transform>(); int index = 0; //-- [mouse cursor] //Transform arrowBtn = Instantiate(btnTemplate, transform); //arrowBtn.gameObject.SetActive(true); //float offsetAmount = +130f; //going right //arrowBtn.GetComponent<RectTransform>().anchoredPosition = new Vector2(offsetAmount * index, 0); //x & y //arrowBtn.Find("image").GetComponent<Image>().sprite = arrowSprite; //arrowBtn.GetComponent<Button>().onClick.AddListener(() => { // BuildingManager.Instance.SetActiveBuildingType(null); //}); //index++; //-- foreach (BuldingTypeSO buildingType in buildingTypeList.list) { Transform btnTransform = Instantiate(btnTemplate, transform); btnTransform.gameObject.SetActive(true); float offsetAmount = +130f; //going right :: remove float btnTransform.GetComponent <RectTransform>().anchoredPosition = new Vector2(offsetAmount * index, 0); //x & y btnTransform.Find("image").GetComponent <Image>().sprite = buildingType.sprite; btnTransform.GetComponent <Button>().onClick.AddListener(() => { BuildingManager.Instance.SetActiveBuildingType(buildingType); }); btnTransformDictionary[buildingType] = btnTransform; index++; } }
private void Awake() { _buildingTypeList = Resources.Load <BuildingTypeListSO>(nameof(BuildingTypeListSO)); _buildingType = _buildingTypeList.list[0]; }
private void Awake() { Transform btnTemplate = transform.Find("btnTemplate"); btnTemplate.gameObject.SetActive(false); BuildingTypeListSO buildingTypeList = Resources.Load <BuildingTypeListSO>(typeof(BuildingTypeListSO).Name); btnTransformDictionary = new Dictionary <BuildingTypeSO, Transform>(); int index = 0; arrowBtn = Instantiate(btnTemplate, transform); arrowBtn.gameObject.SetActive(true); float offsetAmount = +130f; arrowBtn.GetComponent <RectTransform>().anchoredPosition = new Vector2(offsetAmount * index, 0); arrowBtn.Find("image").GetComponent <Image>().sprite = arrowSprite; arrowBtn.Find("image").GetComponent <RectTransform>().sizeDelta = new Vector2(0, -40); arrowBtn.GetComponent <Button>().onClick.AddListener(() => { BuildingManager.Instance.SetActiveBuildingType(null); }); MouseEnterExitEvent mouseEnterExitEvents = arrowBtn.GetComponent <MouseEnterExitEvent>(); mouseEnterExitEvents.OnMouseEnter += (object sender, EventArgs e) => { TooltipUI.Instance.Show("Arrow"); }; mouseEnterExitEvents.OnMouseExit += (object sender, EventArgs e) => { TooltipUI.Instance.Hide(); }; index++; foreach (BuildingTypeSO buildingType in buildingTypeList.list) { if (ignoreBuildingTypeList.Contains(buildingType)) { continue; } Transform btnTransform = Instantiate(btnTemplate, transform); btnTransform.gameObject.SetActive(true); offsetAmount = +130f; btnTransform.GetComponent <RectTransform>().anchoredPosition = new Vector2(offsetAmount * index, 0); btnTransform.Find("image").GetComponent <Image>().sprite = buildingType.sprite; btnTransform.GetComponent <Button>().onClick.AddListener(() => { BuildingManager.Instance.SetActiveBuildingType(buildingType); }); mouseEnterExitEvents = btnTransform.GetComponent <MouseEnterExitEvent>(); mouseEnterExitEvents.OnMouseEnter += (object sender, EventArgs e) => { TooltipUI.Instance.Show(buildingType.nameString + "\n" + buildingType.GetConstructionResourceCostString()); }; mouseEnterExitEvents.OnMouseExit += (object sender, EventArgs e) => { TooltipUI.Instance.Hide(); }; btnTransformDictionary[buildingType] = btnTransform; index++; } }
private void Awake() { Instance = this; buildingTypeList = Resources.Load <BuildingTypeListSO>(typeof(BuildingTypeListSO).Name); }
private void Awake() { btnTypeButtonDict = new Dictionary <BuildingTypeSO, Button>(); Transform btnTmpTrm = transform.Find("btnTamplate"); btnTmpTrm.gameObject.SetActive(false); buildingTypeListSO = Resources.Load <BuildingTypeListSO>(typeof(BuildingTypeListSO).Name); Debug.Log(buildingTypeListSO.btList.Count); int idx = 0; arrowBtnTrm = Instantiate(btnTmpTrm, transform); arrowBtnTrm.gameObject.SetActive(true); // 위치 적용 float offsetAmount = 146f; arrowBtnTrm.GetComponent <RectTransform>().anchoredPosition = new Vector2(offsetAmount * idx, 0); // 이미지 적용 Transform imageTrm = arrowBtnTrm.Find("image"); imageTrm.GetComponent <Image>().sprite = arrowSprite; imageTrm.GetComponent <RectTransform>().sizeDelta = new Vector2(-30, -30); Button imageButton = imageTrm.gameObject.AddComponent <Button>(); imageButton.onClick.AddListener(() => { BuilderManager.Instance.SetActiveBuildingType(null); selectedImgTrm.position = arrowBtnTrm.position; }); idx++; foreach (var item in buildingTypeListSO.btList) { if (ignoreBuilidingTypeList.Contains(item)) { continue; } // 생성 및 활성화 Transform btnTrm = Instantiate(btnTmpTrm, transform); btnTrm.gameObject.SetActive(true); // 위치 적용 btnTrm.GetComponent <RectTransform>().anchoredPosition = new Vector2(offsetAmount * idx, 0); // 이미지 적용 btnTrm.Find("image").GetComponent <Image>().sprite = item.sprite; btnTrm.GetComponent <Button>().onClick.AddListener(() => { BuilderManager.Instance.SetActiveBuildingType(item); selectedImgTrm.position = btnTrm.position; }); idx++; //마우스 이벤트 캡처 코드 MouseEnterExitEvents mouseEnterExitEvents = btnTrm.GetComponent <MouseEnterExitEvents>(); mouseEnterExitEvents.OnMouseEnter += () => UIToolTip.instance.ShowBulidingInfo(item.nameStr, item.buildResCostArr); mouseEnterExitEvents.OnMouseExit += () => UIToolTip.instance.Hide(); } }
private void Awake() { buildingTypeList = Resources.Load <BuildingTypeListSO>(typeof(BuildingTypeListSO).Name); buildingType = buildingTypeList.list[0]; }
private void Awake() { Instance = this; buildingTypeList = Resources.Load <BuildingTypeListSO>(typeof(BuildingTypeListSO).Name); activeBuildingType = buildingTypeList.btList[0]; }
private void Awake() { Instance = this; buildingTypeList = Resources.Load <BuildingTypeListSO>(nameof(BuildingTypeListSO)); activeBuildingType = null; }