/*void Update() * { * if (Player_Stat.instance.isPhysical_LevelUp) * { * * } * }*/ public Physical_Manager Physic_Skill_Choose(int Min, int Max, int num) { int frame1; int frame2; Physical_Manager chosen1 = null; Physical_Manager chosen2 = null; StartCoroutine("LevelUpDelay"); frame1 = Random.Range(Min, Max + 1); do { frame2 = Random.Range(Min, Max + 1); }while (frame2 == frame1); foreach (Physical_Manager pm in scripts) { if (pm.Skill_Num == frame1) { chosen1 = pm; } if (pm.Skill_Num == frame2) { chosen2 = pm; } } // # 중복이 발생할 수 있는 잘못된 코드이다. if (num == 1) { return(chosen1); } else if (num == 2) { return(chosen2); } else { return(null); } }
void Update() { if (LegCache.gameObject.activeSelf && !ForOne) { Min = 0; // 이건 Skill_Num 값이다. 스프라이트와는 관계 없음. Max = 9; StartCoroutine("WaitForUpdate"); One = Physic_System.GetComponent <Physical_Manager>().Physic_Skill_Choose(Min, Max, 1); Two = Physic_System.GetComponent <Physical_Manager>().Physic_Skill_Choose(Min, Max, 2); LegCurrent.gameObject.SetActive(true); // # 첫번째 버튼 Leg.transform.GetChild(0).GetComponent <Image>().overrideSprite = LegSprites[One.Sprite_Num]; Leg.transform.GetChild(0).transform.GetChild(0).GetComponent <Text>().text = One.Skill_Name; //스킬의 이름을 UI에 띄워준다. Leg.transform.GetChild(0).transform.GetChild(1).GetComponent <Text>().text = One.Skill_Desc; //스킬의 설명을 UI에 띄워준다. // # 두번째 버튼 Leg.transform.GetChild(1).GetComponent <Image>().overrideSprite = LegSprites[Two.Sprite_Num]; Leg.transform.GetChild(1).transform.GetChild(0).GetComponent <Text>().text = Two.Skill_Name; Leg.transform.GetChild(1).transform.GetChild(1).GetComponent <Text>().text = Two.Skill_Desc; ForOne = true; LegIMG.gameObject.SetActive(true); Limitation.gameObject.SetActive(true); LegCurrent.GetComponent <Text>().text = Player_Stat.instance.LegLimit.ToString(); } if (ArmCache.gameObject.activeSelf && !ForOne) { Min = 10; Max = 19; StartCoroutine("WaitForUpdate"); One = Physic_System.GetComponent <Physical_Manager>().Physic_Skill_Choose(Min, Max, 1); Two = Physic_System.GetComponent <Physical_Manager>().Physic_Skill_Choose(Min, Max, 2); ArmCurrent.gameObject.SetActive(true); Arm.transform.GetChild(0).GetComponent <Image>().overrideSprite = ArmSprites[One.Sprite_Num]; Arm.transform.GetChild(0).transform.GetChild(0).GetComponent <Text>().text = One.Skill_Name; Arm.transform.GetChild(0).transform.GetChild(1).GetComponent <Text>().text = One.Skill_Desc; Arm.transform.GetChild(1).GetComponent <Image>().overrideSprite = ArmSprites[Two.Sprite_Num]; Arm.transform.GetChild(1).transform.GetChild(0).GetComponent <Text>().text = Two.Skill_Name; Arm.transform.GetChild(1).transform.GetChild(1).GetComponent <Text>().text = Two.Skill_Desc; ForOne = true; ArmIMG.gameObject.SetActive(true); Limitation.gameObject.SetActive(true); ArmCurrent.GetComponent <Text>().text = Player_Stat.instance.ArmLimit.ToString(); } if (ChestCache.gameObject.activeSelf && !ForOne) { Min = 20; Max = 32; //갱신 예정 StartCoroutine("WaitForUpdate"); One = Physic_System.GetComponent <Physical_Manager>().Physic_Skill_Choose(Min, Max, 1); Two = Physic_System.GetComponent <Physical_Manager>().Physic_Skill_Choose(Min, Max, 2); ChestCurrent.gameObject.SetActive(true); Chest.transform.GetChild(0).GetComponent <Image>().overrideSprite = ChestSprites[One.Sprite_Num]; Chest.transform.GetChild(0).transform.GetChild(0).GetComponent <Text>().text = One.Skill_Name; Chest.transform.GetChild(0).transform.GetChild(1).GetComponent <Text>().text = One.Skill_Desc; Chest.transform.GetChild(1).GetComponent <Image>().overrideSprite = ChestSprites[Two.Sprite_Num]; Chest.transform.GetChild(1).transform.GetChild(0).GetComponent <Text>().text = Two.Skill_Name; Chest.transform.GetChild(1).transform.GetChild(1).GetComponent <Text>().text = Two.Skill_Desc; ForOne = true; ChestIMG.gameObject.SetActive(true); Limitation.gameObject.SetActive(true); ChestCurrent.GetComponent <Text>().text = Player_Stat.instance.ChestLimit.ToString(); } if (HeadCache.gameObject.activeSelf && !ForOne) { Min = 35; Max = 45; StartCoroutine("WaitForUpdate"); One = Physic_System.GetComponent <Physical_Manager>().Physic_Skill_Choose(Min, Max, 1); Two = Physic_System.GetComponent <Physical_Manager>().Physic_Skill_Choose(Min, Max, 2); HeadCurrent.gameObject.SetActive(true); Head.transform.GetChild(0).GetComponent <Image>().overrideSprite = HeadSprites[One.Sprite_Num]; Head.transform.GetChild(0).transform.GetChild(0).GetComponent <Text>().text = One.Skill_Name; Head.transform.GetChild(0).transform.GetChild(1).GetComponent <Text>().text = One.Skill_Desc; Head.transform.GetChild(1).GetComponent <Image>().overrideSprite = HeadSprites[Two.Sprite_Num]; Head.transform.GetChild(1).transform.GetChild(0).GetComponent <Text>().text = Two.Skill_Name; Head.transform.GetChild(1).transform.GetChild(1).GetComponent <Text>().text = Two.Skill_Desc; ForOne = true; HeadIMG.gameObject.SetActive(true); Limitation.gameObject.SetActive(true); HeadCurrent.GetComponent <Text>().text = Player_Stat.instance.HeadLimit.ToString(); } }