private void Awake() { if (Instance == null) { Instance = this; } else { Destroy(gameObject); } mDataArr = new ColleagueData[3]; mDataArr[0] = new ColleagueData(); mDataArr[0].Name = "No.1"; mDataArr[0].Level = 0; mDataArr[0].JobTime = 1.1f; mDataArr[0].CostCurrent = 100; mDataArr[1] = new ColleagueData(); mDataArr[1].Name = "No.2"; mDataArr[1].Level = 0; mDataArr[1].JobTime = 1f; mDataArr[1].CostCurrent = 200; mDataArr[2] = new ColleagueData(); mDataArr[2].Name = "No.3"; mDataArr[2].Level = 0; mDataArr[2].JobTime = 1.5f; mDataArr[2].CostCurrent = 300; }
private void Awake() { if (Instance == null) { Instance = this; } else { Destroy(gameObject); } mDataArr = new ColleagueData[3]; mDataArr[0] = new ColleagueData(); mDataArr[0].Name = "No.1"; mDataArr[0].Level = 0; mDataArr[0].Contents = "<color=#ff0000ff>{1}초</color> 마다 <color=#0000ffff>{0}골드</color>를 획득합니다."; mDataArr[0].JobTime = 1.1f; mDataArr[0].JobType = eJobType.Gold; mDataArr[0].ValueCurrent = 1; mDataArr[0].ValueWeight = 1.08d; mDataArr[0].ValueBase = 1; mDataArr[0].CostCurrent = 100; mDataArr[0].CostWeight = 1.2d; mDataArr[0].CostBase = 100; mDataArr[1] = new ColleagueData(); mDataArr[1].Name = "No.2"; mDataArr[1].Level = 0; mDataArr[1].Contents = "<color=#ff0000ff>{1}초</color> 마다 한번씩 터치를 해줍니다."; mDataArr[1].JobTime = 1f; mDataArr[1].JobType = eJobType.Touch; mDataArr[1].ValueCurrent = 0; mDataArr[1].ValueWeight = 1.08d; mDataArr[1].ValueBase = 1; mDataArr[1].CostCurrent = 200; mDataArr[1].CostWeight = 1.2d; mDataArr[1].CostBase = 200; mDataArr[2] = new ColleagueData(); mDataArr[2].Name = "No.3"; mDataArr[2].Level = 0; mDataArr[2].Contents = "<color=#ff0000ff>{1}초</color> 마다 <color=#0000ffff>{0}골드</color>를 획득합니다."; mDataArr[2].JobTime = 1.5f; mDataArr[2].JobType = eJobType.Gold; mDataArr[2].ValueCurrent = 2; mDataArr[2].ValueWeight = 1.1d; mDataArr[2].ValueBase = 2; mDataArr[2].CostCurrent = 300; mDataArr[2].CostWeight = 1.2d; mDataArr[2].CostBase = 300; }
private void Awake() { if (Instance == null) { Instance = this; } else { Destroy(gameObject); } mDataArr = new ColleagueData[3]; mDataArr[0] = new ColleagueData(); mDataArr[0].Name = "No.1"; mDataArr[0].Level = 0; // 텍스트 색깔을 바꾸는 방법 // 띄어쓰기를 하면 안된다. 영문자는 대문자든 소문자든지 상관없다. mDataArr[0].Contents = "<color=ff0000ff>{1}</color>초 마다 <color=0000ffff>{0}</color>골드를 획득합니다."; mDataArr[0].JobTime = 1.1f; mDataArr[0].JobType = eJobType.Touch; // 2019.12.17 화요일 - 코드 추가 // 동료캐릭터가 골드를 올려주는 기능을 할 때는 1로 설정 mDataArr[0].ValueCurrent = 1; mDataArr[0].CostCurrent = 100; mDataArr[1] = new ColleagueData(); mDataArr[1].Name = "No.2"; mDataArr[1].Level = 0; mDataArr[1].Contents = "<color=#FF0000FF>{1}초 마다 한번씩 터치를 해줍니다."; mDataArr[1].JobTime = 1f; mDataArr[1].JobType = eJobType.Touch; // 2019.12.17 화요일 - 코드 추가 // 동료캐릭터가 터치만 해주는 기능을 할 때는 0으로 설정 mDataArr[1].ValueCurrent = 0; mDataArr[1].CostCurrent = 200; mDataArr[2] = new ColleagueData(); mDataArr[2].Name = "No.3"; mDataArr[2].Level = 0; mDataArr[2].Contents = "<color=ff0000ff>{1}</color>초 마다 <color=0000ffff>{0}</color>골드를 획득합니다."; mDataArr[2].JobTime = 1.5f; mDataArr[2].JobType = eJobType.Gold; // 2019.12.17 화요일 - 코드 추가 // 동료캐릭터가 골드를 올려주는 기능을 할 때는 1로 설정 mDataArr[2].ValueCurrent = 1; mDataArr[2].CostCurrent = 300; }
public void JobFinish(int id) { ColleagueData data = mDataArr[id]; switch (data.JobType) { case eJobType.Gold: GameController.Instance.Gold += data.ValueCurrent; break; case eJobType.Touch: GameController.Instance.Touch(); break; default: Debug.LogError("Wrong job type " + data.JobType); break; } }
// 2019.12.13 금요일 - 함수 추가 public void JobFinish(int id) { // 가지고 와야할 데이터는 JobData이다. // 복제본을 만들 것이면 이렇게 하면 안된다. // CurrentData를 따로 만들어서 작업을 해주어야 한다. ColleagueData data = mDataArr[id]; switch (data.JobType) { case eJobType.Gold: GameController.Instance.Gold += 1; break; case eJobType.Touch: GameController.Instance.Touch(); break; default: Debug.LogError("Wrong job type" + data.JobType); break; } }
public void JobFinish(int id, Vector3 pos) { ColleagueData data = mDataArr[id]; switch (data.JobType) { case eJobType.Gold: GameController.Instance.Gold += data.ValueCurrent; TextEffect effect = mTextEffectPool.GetFromPool((int)eTextEffectType.ColleagueIncome); effect.ShowText(UnitBuilder.GetUnitStr(data.ValueCurrent)); effect.transform.position = pos; break; case eJobType.Touch: GameController.Instance.Touch(); break; default: Debug.LogError("Wrong job type " + data.JobType); break; } }
public void JobFinish(int id) { ColleagueData data = mDataArr[id]; switch (data.JobType) { case eJobType.Gold: // 2019.12.17 화요일 - 코드 수정 //GameController.Instance.Gold += 1; // 이렇게 하드코딩이 아닌 방식으로 하는 경우 음수가 더해지는 경우가 안생기도록 // 코드 설계를 잘 해야 한다. GameController.Instance.Gold += data.ValueCurrent; break; case eJobType.Touch: // 조건에 맞으면 터치만 해주면 되므로 이 상황에서는 문제가 생기지 않는다. GameController.Instance.Touch(); break; default: Debug.LogError("Wrong job type " + data.JobType); break; } }