public void SetTowerCount(int towerCount) { towerCards = new List <TowerCard>(); foreach (var id in TowerTable.GetTowerIds().Take(towerCount)) { TowerCard card = new TowerCard(); var status = TowerTable.GetStatus(id); card.id = id; card.prefab = (Tower)status.prefab; card.sprite = status.sprite; card.cost = status.cost; towerCards.Add(card); } prefabs = new Dictionary <TowerCard, Tower>(); towerPools = new Dictionary <TowerCard, LocalObjectPool <Tower> >(); foreach (var card in towerCards) { Transform towerHolder = new GameObject($"Tower Pool ({card.id})").transform; LocalObjectPool <Tower> pool = new LocalObjectPool <Tower>( card.prefab, towerHolder, 5 ); prefabs.Add(card, card.prefab); towerPools.Add(card, pool); } cursor.gameObject.SetActive(false); }
protected override void Awake() { base.Awake(); TowerStatus status = TowerTable.GetStatus(id); Initialize(status.hp, status.damage, status.attackSpeed); }
private void Awake() { foreach (var id in TowerTable.GetTowerIds()) { TowerInfoUI instance = Instantiate(prefab); instance.transform.SetParent(holder, false); instance.Initialize(id); instance.gameObject.SetActive(true); } prefab.gameObject.SetActive(false); }
public void Initialize(string towerId) { var status = TowerTable.GetStatus(towerId); name.text = status.name; damage.text = $"데미지 : {status.damage}"; hp.text = $"체력 : {status.hp}"; attackSpeed.text = $"공속 : {status.attackSpeed}"; cost.text = status.cost.ToString(); string f = "없음"; if (towerId == "sg") { f = "근거리"; } if (towerId == "jw") { f = "원거리"; } if (towerId == "c") { f = "슬로우"; } if (towerId == "s") { f = "힐러"; } if (towerId == "g") { f = "탱커"; } if (towerId == "cs") { f = "자폭"; } feature.text = $"특징 : {f}"; image.sprite = status.sprite; }
public void SetId(string id) { var status = TowerTable.GetStatus(id); image.sprite = status.sprite; image.name = status.name; string s = ""; if (id == "sg") { s = "마루와 집 문을 지키는 신, 흔히들 대장신이라고 하며 현재 문짝에 빙의중이다. 몸을 들이 받아 공격한다."; } if (id == "jw") { s = "부엌을 지키는 신, 아궁이에 빙의중이며, 요리를 담당하고 불을 다스릴줄 안다. 때문에 불을 날려 공격한다."; } if (id == "c") { s = "뒷간을 지키는 신, 똥을 닦는 새끼줄에 빙의중이며, 마법으로 적에게 슬로우를 건다."; } if (id == "s") { s = "안방을 지키는 신, 지팡이에 빙의중이며, 집안에 아이가 태어나면 아이의 앞길을 점지해주고 아이들을 지켜준다, 아군을 회복시켜준다."; } if (id == "g") { s = "집터를 지키는 신, 농사와 땅에 관여하며 현재 돌덩이에 빙의중이다, 특별한 능력은 없지만 단단한 신이다."; } if (id == "cs") { s = "장독대를 지키는 신, 현재 장독대에 빙의중이며, 자폭하여 적에게 강한 피해를 준다."; } content.text = s; }
private IEnumerable <string> GetIds() => TowerTable.GetTowerIds();