private void BuildMap() { int width = (int)level.Size.x; int height = (int)level.Size.y; Debug.Log("BuildMap " + width + " " + height); for (int i = 0; i < width; i++) { for (int j = 0; j < height; j++) { var item = level.GetElement(i, j); pos = new Vector3(i, j); if (item.DictionaryIndex > 0) { AddAsset(item, pos); } //else //{ // var bgInst = GameObject.Instantiate<GameObject>(bg); // pos.z += 1; // bgInst.transform.position = pos; // bgInst.name = pos.ToString(); // bgInst.transform.parent = this.transform; //} } } onMapLoaded.Invoke(); }
// Update is called once per frame void Update() { int width = (int)level.Size.x; int height = (int)level.Size.y; if (Input.GetKeyDown(KeyCode.LeftArrow)) { if (transform.position.x - 1 >= 0) { transform.position += Vector3.left; } } if (Input.GetKeyDown(KeyCode.RightArrow)) { if (transform.position.x + 1 < width) { transform.position += Vector3.right; } } if (Input.GetKeyDown(KeyCode.UpArrow)) { if (transform.position.y + 1 < height) { transform.position += Vector3.up; } } if (Input.GetKeyDown(KeyCode.DownArrow)) { if (transform.position.y - 1 >= 0) { transform.position += Vector3.down; } } if (Input.GetKeyDown(KeyCode.E)) { MapElementStruct cellVal = level.GetElement(transform.position); if (cellVal.DictionaryIndex > 0) { RemoveAsset(transform.position); } AddAsset((int)selectedElementIndex.value, selectedTransform.value.GetComponent <AMapElement>().GetData(), transform.position); level.UpdateElement(transform.position, ((int)selectedElementIndex.value + 1), selectedTransform.value.GetComponent <AMapElement>().GetData()); } if (Input.GetKeyDown(KeyCode.D)) { var cellVal = level.GetElement(transform.position); if (cellVal.DictionaryIndex > 0) { RemoveAsset(transform.position); } level.RemoveElement(transform.position); } //for (int i = 0; i <= level.assetsDictionary.MapAssets.Count; i++) //{ // if (Input.GetKeyDown(i + "")) // { // } //} }