public void UpdateWorld(int pos, CamMgr.Direction dir) { _cur_map_pos = pos; _localmgr.UpdateScene(pos, dir); _cmrmgr.UpdateScene(); _kmmgr.UpdateScene(pos); }
public void UpdateScene(int world_pos, CamMgr.Direction dir) { if (world_pos > 0) { //UpdateMineral(world_pos); UpdateMonster(world_pos); // 전투맵 업데이트 if (dir == CamMgr.Direction.Right) { for (int i = 0; i < _local_info.Count; i++) { switch (_local_info[i].name) { case "LEFT": _local_info[i].name = "RESERVE_RIGHT"; _local_info[i].pos = new Vector3((world_pos + 1) * Constans.LOCAL_SCENE_WIDTH, Constans.LOCAL_HEIGHT, 0f); _local_info[i].go.transform.localPosition = _local_info[i].pos; _local_info[i].go.GetComponent <SpriteRenderer>().sprite = _battleground_spr.sprite; break; case "MIDDLE": _local_info[i].name = "RESERVE_LEFT"; break; case "RIGHT": _local_info[i].name = "RESERVE_MIDDLE"; break; } } for (int i = 0; i < _local_info.Count; i++) { switch (_local_info[i].name) { case "RESERVE_LEFT": _local_info[i].name = "LEFT"; break; case "RESERVE_MIDDLE": _local_info[i].name = "MIDDLE"; break; case "RESERVE_RIGHT": _local_info[i].name = "RIGHT"; break; } } } else // camera left { for (int i = 0; i < _local_info.Count; i++) { switch (_local_info[i].name) { case "LEFT": _local_info[i].name = "RESERVE_MIDDLE"; break; case "MIDDLE": _local_info[i].name = "RESERVE_RIGHT"; break; case "RIGHT": _local_info[i].name = "RESERVE_LEFT"; _local_info[i].pos = new Vector3((world_pos - 1) * Constans.LOCAL_SCENE_WIDTH, Constans.LOCAL_HEIGHT, 0f); _local_info[i].go.transform.localPosition = _local_info[i].pos; if (world_pos == 1) { _local_info[i].go.GetComponent <SpriteRenderer>().sprite = _village_spr.sprite; } else { _local_info[i].go.GetComponent <SpriteRenderer>().sprite = _battleground_spr.sprite; } break; } } for (int i = 0; i < _local_info.Count; i++) { switch (_local_info[i].name) { case "RESERVE_LEFT": _local_info[i].name = "LEFT"; break; case "RESERVE_MIDDLE": _local_info[i].name = "MIDDLE"; break; case "RESERVE_RIGHT": _local_info[i].name = "RIGHT"; break; } } } } else if (world_pos < 0) { UpdateMineral(world_pos); // 채광맵 업데이트 if (dir == CamMgr.Direction.Right) { for (int i = 0; i < _local_info.Count; i++) { switch (_local_info[i].name) { case "LEFT": _local_info[i].name = "RESERVE_RIGHT"; _local_info[i].pos = new Vector3((world_pos + 1) * Constans.LOCAL_SCENE_WIDTH, Constans.LOCAL_HEIGHT, 0f); _local_info[i].go.transform.localPosition = _local_info[i].pos; if (world_pos == -1) { _local_info[i].go.GetComponent <SpriteRenderer>().sprite = _village_spr.sprite; } else { _local_info[i].go.GetComponent <SpriteRenderer>().sprite = _mine_spr.sprite; } break; case "MIDDLE": _local_info[i].name = "RESERVE_LEFT"; break; case "RIGHT": _local_info[i].name = "RESERVE_MIDDLE"; break; } } for (int i = 0; i < _local_info.Count; i++) { switch (_local_info[i].name) { case "RESERVE_LEFT": _local_info[i].name = "LEFT"; break; case "RESERVE_MIDDLE": _local_info[i].name = "MIDDLE"; break; case "RESERVE_RIGHT": _local_info[i].name = "RIGHT"; break; } } } else { for (int i = 0; i < _local_info.Count; i++) { switch (_local_info[i].name) { case "LEFT": _local_info[i].name = "RESERVE_MIDDLE"; break; case "MIDDLE": _local_info[i].name = "RESERVE_RIGHT"; break; case "RIGHT": _local_info[i].name = "RESERVE_LEFT"; _local_info[i].pos = new Vector3((world_pos - 1) * Constans.LOCAL_SCENE_WIDTH, Constans.LOCAL_HEIGHT, 0f); _local_info[i].go.transform.localPosition = _local_info[i].pos; _local_info[i].go.GetComponent <SpriteRenderer>().sprite = _mine_spr.sprite; break; } } for (int i = 0; i < _local_info.Count; i++) { switch (_local_info[i].name) { case "RESERVE_LEFT": _local_info[i].name = "LEFT"; break; case "RESERVE_MIDDLE": _local_info[i].name = "MIDDLE"; break; case "RESERVE_RIGHT": _local_info[i].name = "RIGHT"; break; } } } } else { // 마을맵 업데이트 if (dir == CamMgr.Direction.Right) { _game_asset_mgr.GoldSave(); // 마을에 도착하면 골드 저장체크. _km_mgr.InitAsset(); // 광산에서 마을로 온 상황 for (int i = 0; i < _local_info.Count; i++) { switch (_local_info[i].name) { case "LEFT": _local_info[i].name = "RESERVE_RIGHT"; _local_info[i].pos = new Vector3((world_pos + 1) * Constans.LOCAL_SCENE_WIDTH, Constans.LOCAL_HEIGHT, 0f); _local_info[i].go.transform.localPosition = _local_info[i].pos; _local_info[i].go.GetComponent <SpriteRenderer>().sprite = _battleground_spr.sprite; break; case "MIDDLE": _local_info[i].name = "RESERVE_LEFT"; break; case "RIGHT": _local_info[i].name = "RESERVE_MIDDLE"; break; } } for (int i = 0; i < _local_info.Count; i++) { switch (_local_info[i].name) { case "RESERVE_LEFT": _local_info[i].name = "LEFT"; break; case "RESERVE_MIDDLE": _local_info[i].name = "MIDDLE"; break; case "RESERVE_RIGHT": _local_info[i].name = "RIGHT"; break; } } } else { // 배틀에서 마을로 온 상황 for (int i = 0; i < _local_info.Count; i++) { switch (_local_info[i].name) { case "LEFT": _local_info[i].name = "RESERVE_MIDDLE"; break; case "MIDDLE": _local_info[i].name = "RESERVE_RIGHT"; break; case "RIGHT": _local_info[i].name = "RESERVE_LEFT"; _local_info[i].pos = new Vector3((world_pos - 1) * Constans.LOCAL_SCENE_WIDTH, Constans.LOCAL_HEIGHT, 0f); _local_info[i].go.transform.localPosition = _local_info[i].pos; _local_info[i].go.GetComponent <SpriteRenderer>().sprite = _mine_spr.sprite; break; } } for (int i = 0; i < _local_info.Count; i++) { switch (_local_info[i].name) { case "RESERVE_LEFT": _local_info[i].name = "LEFT"; break; case "RESERVE_MIDDLE": _local_info[i].name = "MIDDLE"; break; case "RESERVE_RIGHT": _local_info[i].name = "RIGHT"; break; } } } } }