public void Selected() { this.transform.Find("model").gameObject.SetActive(false); m_itemPre = Instantiate(itemPre_prefab); m_itemPre.transform.SetParent(this.transform, false); m_itemPre.transform.localPosition = Vector3.zero; m_itemPre.transform.localRotation = Quaternion.Euler(Vector3.zero); m_itemPre.SetState(true); }
public virtual void StartGenerating() { if (m_isWorking == true) { ExitBuilding(); } m_isWorking = true; m_itemPre = Instantiate(item_prefab.itemPre_prefab); m_itemPre.transform.SetParent(SceneController.CONTEXT.city.transform, false); m_itemPre.transform.localRotation = Quaternion.Euler(0.0f, 0.0f, 0.0f); }
bool CheckPlaneUpdate(ItemPre _item, Vector3Int _itemPosition) { bool avaliableFlag = item_prefab.CheckMapAvaliable(_itemPosition, m_rotation_offset); _item.SetState(avaliableFlag); _item.transform.localPosition = new Vector3(_itemPosition.x - 0.5f, _itemPosition.y, _itemPosition.z - 0.5f); _item.transform.localRotation = Quaternion.Euler(0.0f, 0.0f, 0.0f); return(avaliableFlag); }
protected override bool CheckPlaneUpdate(Vector3Int _itemPosition) { if (m_is_startPoint_down == false) { base.CheckPlaneUpdate(_itemPosition); } else { if (m_last_position != _itemPosition) { m_last_position = _itemPosition; Vector3Int v1 = m_start_position; Vector3Int v2 = _itemPosition; VectorStandardize(ref v1, ref v2); int count = 0; for (int i = v1.x; i <= v2.x; i++) { for (int j = v1.z; j <= v2.z; j++) { ItemPre item = m_itemPreArray[count]; item.gameObject.SetActive(true); CheckPlaneUpdate(item, new Vector3Int(i, v1.y, j)); count++; } } for (; count < m_itemPreArray.Length; count++) { m_itemPreArray[count].gameObject.SetActive(false); } } } return(true); }