public void DoKanjyoOperation(string kanjyoTyp){ GameObject ExpSliderObj = GameObject.Find ("ExpSlider"); string busyoId = GameObject.Find ("GameScene").GetComponent<NowOnBusyo>().OnBusyo; string busyoName = GameObject.Find ("GameScene").GetComponent<NowOnBusyo>().OnBusyoName; //Classification string QtyValue = ""; string ExValue = ""; if (kanjyoTyp == "DoKakyuKanjyo") { QtyValue = "KakyuKanjyoQtyValue"; ExValue = "KakyuKanjyoExpValue"; }else if(kanjyoTyp == "DoCyukyuKanjyo"){ QtyValue = "CyukyuKanjyoQtyValue"; ExValue = "CyukyuKanjyoExpValue"; }else if(kanjyoTyp == "DoJyokyuKanjyo"){ QtyValue = "JyokyuKanjyoQtyValue"; ExValue = "JyokyuKanjyoExpValue"; } //Check exist or not GameObject qty = GameObject.Find (QtyValue); int kanjyoQty = int.Parse(qty.GetComponent<Text>().text); if (kanjyoQty == 0) { /*Error*/ string Text = "感状はありませぬぞ。"; Message msg = new Message(); msg.makeMessage (Text); GameObject.Find ("DoKakyuKanjyo").GetComponent<Button> ().enabled = true; GameObject.Find ("DoCyukyuKanjyo").GetComponent<Button> ().enabled = true; GameObject.Find ("DoJyokyuKanjyo").GetComponent<Button> ().enabled = true; GameObject.Find ("close").GetComponent<Button> ().enabled = true; } else { /*Correct Case*/ //reduce qty qty.GetComponent<Text> ().text = (kanjyoQty - 1).ToString (); //increase exp int nowLv = PlayerPrefs.GetInt (busyoId); string tempExp = "exp" + busyoId; int nowExp = PlayerPrefs.GetInt (tempExp); int newExp = nowExp + int.Parse (GameObject.Find (ExValue).GetComponent<Text> ().text); Exp exp = new Exp (); int targetLv = exp.getLvbyTotalExp (nowLv, newExp); int targetMaxExp = 0; List<float> maxExpList = new List<float> (); if(targetLv != 100){ targetMaxExp = exp.getExpforNextLv (targetLv); for (int k=nowLv; k<=targetLv; k++) { maxExpList.Add (exp.getDifExpforNextLv (k)); } }else{ maxExpList.Add((float)exp.getExpLv100()); } ExpSliderObj.GetComponent<ExpSlider> ().maxExpArray = maxExpList; //Max Experience by Level ExpSliderObj.GetComponent<ExpSlider> ().i = 0; // ExpSliderObj.GetComponent<ExpSlider> ().startLv = nowLv; // ExpSliderObj.GetComponent<ExpSlider> ().nowExp = float.Parse (GameObject.Find ("CurrentExpValue").GetComponent<Text> ().text); // ExpSliderObj.GetComponent<ExpSlider> ().kanjyoExp = float.Parse (GameObject.Find (ExValue).GetComponent<Text> ().text); ExpSliderObj.GetComponent<ExpSlider> ().newExp = newExp; // ExpSliderObj.GetComponent<ExpSlider> ().targetMaxExp = targetMaxExp; // ExpSliderObj.GetComponent<Slider> ().value = float.Parse (GameObject.Find ("CurrentExpValue").GetComponent<Text> ().text); ExpSliderObj.GetComponent<Slider> ().maxValue = maxExpList [0]; //Set Qty of Kanjyo string kanjyoQtyString = ""; if (kanjyoTyp == "DoKakyuKanjyo") { kanjyoQtyString = (kanjyoQty - 1).ToString () + "," + kanjyoList [1] + "," + kanjyoList [2]; } else if (kanjyoTyp == "DoCyukyuKanjyo") { kanjyoQtyString = kanjyoList [0] + "," + (kanjyoQty - 1).ToString () + "," + kanjyoList [2]; } else if (kanjyoTyp == "DoJyokyuKanjyo") { kanjyoQtyString = kanjyoList [0] + "," + kanjyoList [1] + "," + (kanjyoQty - 1).ToString (); } PlayerPrefs.SetString ("kanjyo", kanjyoQtyString); PlayerPrefs.SetInt (tempExp, newExp); PlayerPrefs.SetInt (busyoId, targetLv); PlayerPrefs.Flush(); string kanjyoText = busyoName + "に感状を与えました。"; Message msg = new Message(); msg.makeMessage (kanjyoText); //Run ExpSliderObj.GetComponent<ExpSlider> ().enabled = true; } }
public void createBusyoStatusView(string busyoId){ int lv = PlayerPrefs.GetInt (busyoId); StatusGet sts = new StatusGet (); int hp = sts.getHp (int.Parse (busyoId), lv); int atk = sts.getAtk (int.Parse (busyoId), lv); int dfc = sts.getDfc (int.Parse (busyoId), lv); int spd = sts.getSpd (int.Parse (busyoId), lv); int adjHp = hp * 100; int adjAtk = atk * 10; int adjDfc = dfc * 10; GameObject.Find ("LvValue").GetComponent<Text> ().text = lv.ToString (); GameObject.Find ("TosotsuValue").GetComponent<Text> ().text = adjHp.ToString (); GameObject.Find ("BuyuuValue").GetComponent<Text> ().text = adjAtk.ToString (); GameObject.Find ("ChiryakuValue").GetComponent<Text> ().text = adjDfc.ToString (); GameObject.Find ("SpeedValue").GetComponent<Text> ().text = spd.ToString (); //Exp string expId = "exp" + busyoId.ToString (); string expString = ""; int nowExp = PlayerPrefs.GetInt(expId); Exp exp = new Exp (); int requiredExp = 0; if (lv != 100) { requiredExp = exp.getExpforNextLv (lv); } else { requiredExp = exp.getExpLv100(); } expString = nowExp + "/" + requiredExp; GameObject.Find ("ExpValue").GetComponent<Text> ().text = expString; //Kahou status KahouStatusGet kahouSts = new KahouStatusGet (); string[] KahouStatusArray =kahouSts.getKahouForStatus (busyoId,adjHp,adjAtk,adjDfc,spd); int totalBusyoHp =0; //Kanni string kanniTmp = "kanni" + busyoId; float addAtkByKanni = 0; float addHpByKanni = 0; float addDfcByKanni = 0; if (PlayerPrefs.HasKey (kanniTmp)) { int kanniId = PlayerPrefs.GetInt (kanniTmp); Kanni kanni = new Kanni (); string kanniIkai = kanni.getIkai (kanniId); string kanniName = kanni.getKanni (kanniId); GameObject.Find ("StatusKanni").transform.FindChild ("Value").GetComponent<Text> ().text = kanniIkai + "\n" + kanniName; //Status string kanniTarget = kanni.getEffectTarget(kanniId); int effect = kanni.getEffect(kanniId); if(kanniTarget=="atk"){ addAtkByKanni = ((float)adjAtk * (float)effect)/100; }else if(kanniTarget=="hp"){ addHpByKanni = ((float)adjHp * (float)effect)/100; }else if(kanniTarget=="dfc"){ addDfcByKanni = ((float)adjDfc * (float)effect)/100; } } else { GameObject.Find ("StatusKanni").transform.FindChild ("Value").GetComponent<Text> ().text = "官位無し"; } //Jyosyu string jyosyuTmp = "jyosyuBusyo" + busyoId; if (PlayerPrefs.HasKey (jyosyuTmp)) { int kuniId = PlayerPrefs.GetInt(jyosyuTmp); KuniInfo kuni = new KuniInfo(); string kuniName = kuni.getKuniName(kuniId); GameObject.Find ("StatusJyosyu").transform.FindChild ("Value").GetComponent<Text> ().text = kuniName + "\n城主"; } else { GameObject.Find ("StatusJyosyu").transform.FindChild ("Value").GetComponent<Text> ().text = "城無し"; } //Show Additional Status int finalAtk = int.Parse (KahouStatusArray [0]) + Mathf.FloorToInt (addAtkByKanni); int finalHp = int.Parse (KahouStatusArray [1]) + Mathf.FloorToInt (addHpByKanni); int finalDfc= int.Parse (KahouStatusArray [2]) + Mathf.FloorToInt (addDfcByKanni); int finalSpd = int.Parse (KahouStatusArray [3]); GameObject.Find ("KahouAtkValue").GetComponent<Text> ().text = "+" + finalAtk.ToString (); GameObject.Find ("KahouHpValue").GetComponent<Text>().text = "+" + finalHp.ToString(); totalBusyoHp = adjHp + finalHp; GameObject.Find ("KahouDfcValue").GetComponent<Text>().text = "+" + finalDfc.ToString(); GameObject.Find ("KahouSpdValue").GetComponent<Text>().text = "+" + finalSpd.ToString(); //Butai Status string heiId = "hei" + busyoId.ToString (); string chParam = PlayerPrefs.GetString (heiId, "0"); char[] delimiterChars = {':'}; string[] ch_list = chParam.Split (delimiterChars); string ch_type = ch_list [0]; int ch_num = int.Parse (ch_list [1]); int ch_lv = int.Parse (ch_list [2]); float ch_status = float.Parse (ch_list [3]); string heisyu = ""; if (ch_type == "KB") { heisyu = "騎馬隊"; } else if (ch_type == "YR") { heisyu = "槍隊"; } else if (ch_type == "TP") { heisyu = "鉄砲隊"; } else if (ch_type == "YM") { heisyu = "弓隊"; } GameObject.Find ("ChildNameValue").GetComponent<Text> ().text = heisyu; GameObject.Find ("ChildQtyValue").GetComponent<Text> ().text = ch_num.ToString (); GameObject.Find ("ChildLvValue").GetComponent<Text> ().text = ch_lv.ToString (); //Jyosyu Handling JyosyuHeiryoku jyosyuHei = new JyosyuHeiryoku (); float addHei = (float)jyosyuHei.GetJyosyuHeiryoku (busyoId); float hei = ch_status * 10; string heiText = hei.ToString() + "<size=150><Color=#35D74BFF>+" + addHei + "</Color></size>"; GameObject.Find ("ChildHeiryokuValue").GetComponent<Text> ().text = heiText; int chAtkDfc = (int)sts.getChAtkDfc ((int)hei, totalBusyoHp); string chAtkDfcString = chAtkDfc.ToString () + "/" + chAtkDfc.ToString (); GameObject.Find ("ChildStatusValue").GetComponent<Text> ().text = chAtkDfcString; //Child Image foreach (Transform n in GameObject.Find ("Img").transform) { GameObject.Destroy (n.gameObject); } string chPath = "Prefabs/Player/Unit/" + ch_type; GameObject chObj = Instantiate (Resources.Load (chPath)) as GameObject; chObj.transform.SetParent(GameObject.Find ("Img").transform); RectTransform chTransform = chObj.GetComponent<RectTransform> (); chTransform.anchoredPosition3D = new Vector3 (-200, -50, 0); chTransform.sizeDelta = new Vector2 (40, 40); chObj.transform.localScale = new Vector2 (4, 4); GameObject chigyo = GameObject.Find ("ButtonCyouhei"); chigyo.GetComponent<BusyoStatusButton> ().ch_type = ch_type; chigyo.GetComponent<BusyoStatusButton> ().ch_heisyu = heisyu; chigyo.GetComponent<BusyoStatusButton> ().ch_num = ch_num; chigyo.GetComponent<BusyoStatusButton> ().ch_status = chAtkDfc; chigyo.GetComponent<BusyoStatusButton> ().ch_hp = hei; chigyo.GetComponent<BusyoStatusButton> ().pa_hp = totalBusyoHp/100; GameObject kunren = GameObject.Find ("ButtonKunren"); kunren.GetComponent<BusyoStatusButton> ().ch_type = ch_type; kunren.GetComponent<BusyoStatusButton> ().ch_heisyu = heisyu; kunren.GetComponent<BusyoStatusButton> ().ch_lv = ch_lv; kunren.GetComponent<BusyoStatusButton> ().ch_status = chAtkDfc; kunren.GetComponent<BusyoStatusButton> ().ch_hp = hei ; kunren.GetComponent<BusyoStatusButton> ().ch_num = ch_num; kunren.GetComponent<BusyoStatusButton> ().pa_hp = totalBusyoHp/100; //Parametor Setting GameObject.Find ("GameScene").GetComponent<NowOnBusyo>().OnBusyo = busyoId; }
public void createBusyoStatusView(string busyoId){ int lv = PlayerPrefs.GetInt (busyoId); StatusGet sts = new StatusGet (); int hp = sts.getHp (int.Parse (busyoId), lv); int atk = sts.getAtk (int.Parse (busyoId), lv); int dfc = sts.getDfc (int.Parse (busyoId), lv); int spd = sts.getSpd (int.Parse (busyoId), lv); int adjHp = hp * 100; int adjAtk = atk * 10; int adjDfc = dfc * 10; GameObject.Find ("LvValue").GetComponent<Text> ().text = lv.ToString (); GameObject.Find ("TosotsuValue").GetComponent<Text> ().text = adjHp.ToString (); GameObject.Find ("BuyuuValue").GetComponent<Text> ().text = adjAtk.ToString (); GameObject.Find ("ChiryakuValue").GetComponent<Text> ().text = adjDfc.ToString (); GameObject.Find ("SpeedValue").GetComponent<Text> ().text = spd.ToString (); //Exp string expId = "exp" + busyoId.ToString (); string expString = ""; int nowExp = PlayerPrefs.GetInt(expId); Exp exp = new Exp (); int requiredExp = 0; if (lv != 100) { requiredExp = exp.getExpforNextLv (lv); } else { requiredExp = exp.getExpLv100(); } expString = nowExp + "/" + requiredExp; GameObject.Find ("ExpValue").GetComponent<Text> ().text = expString; //Kahou status KahouStatusGet kahouSts = new KahouStatusGet (); string[] KahouStatusArray =kahouSts.getKahouForStatus (busyoId,adjHp,adjAtk,adjDfc,spd); int totalBusyoHp =0; for(int i=0;i<KahouStatusArray.Length;i++){ string status = KahouStatusArray[i]; if(i==0){ //Attack GameObject.Find ("KahouAtkValue").GetComponent<Text>().text = "+" + status; }else if(i==1){ //HP GameObject.Find ("KahouHpValue").GetComponent<Text>().text = "+" + status; totalBusyoHp = adjHp + int.Parse(status); }else if(i==2){ //DFC GameObject.Find ("KahouDfcValue").GetComponent<Text>().text = "+" + status; }else if(i==3){ //SPD GameObject.Find ("KahouSpdValue").GetComponent<Text>().text = "+" + status; } } //Butai Status string heiId = "hei" + busyoId.ToString (); string chParam = PlayerPrefs.GetString (heiId, "0"); char[] delimiterChars = {':'}; string[] ch_list = chParam.Split (delimiterChars); string ch_type = ch_list [0]; int ch_num = int.Parse (ch_list [1]); int ch_lv = int.Parse (ch_list [2]); float ch_status = float.Parse (ch_list [3]); string heisyu = ""; if (ch_type == "KB") { heisyu = "騎馬隊"; } else if (ch_type == "YR") { heisyu = "槍隊"; } else if (ch_type == "TP") { heisyu = "鉄砲隊"; } else if (ch_type == "YM") { heisyu = "弓隊"; } GameObject.Find ("ChildNameValue").GetComponent<Text> ().text = heisyu; GameObject.Find ("ChildQtyValue").GetComponent<Text> ().text = ch_num.ToString (); GameObject.Find ("ChildLvValue").GetComponent<Text> ().text = ch_lv.ToString (); //Jyosyu Handling JyosyuHeiryoku jyosyuHei = new JyosyuHeiryoku (); float addHei = (float)jyosyuHei.GetJyosyuHeiryoku (busyoId); float hei = ch_status * 10; string heiText = hei.ToString() + "<size=150><Color=#35D74BFF>+" + addHei + "</Color></size>"; GameObject.Find ("ChildHeiryokuValue").GetComponent<Text> ().text = heiText; float chAtkDfc = ch_status + totalBusyoHp / 200; string chAtkDfcString = chAtkDfc.ToString () + "/" + chAtkDfc.ToString (); GameObject.Find ("ChildStatusValue").GetComponent<Text> ().text = chAtkDfcString; //Child Image foreach (Transform n in GameObject.Find ("Img").transform) { GameObject.Destroy (n.gameObject); } string chPath = "Prefabs/Player/Unit/" + ch_type; GameObject chObj = Instantiate (Resources.Load (chPath)) as GameObject; chObj.transform.SetParent(GameObject.Find ("Img").transform); RectTransform chTransform = chObj.GetComponent<RectTransform> (); chTransform.anchoredPosition = new Vector3 (-200, -50, 0); chTransform.sizeDelta = new Vector2 (40, 40); chObj.transform.localScale = new Vector2 (4, 4); //Child Status Transfer to Button//Keep busyo name GameObject kanjyo = GameObject.Find ("ButtonKanjyo"); if (lv != 100) { kanjyo.GetComponent<BusyoStatusButton> ().pa_lv = lv; Color okColor = new Color (255f / 255f, 255f / 255f, 255f / 255f, 255f / 255f); kanjyo.transform.FindChild("Text").GetComponent<Text> ().color = okColor; kanjyo.GetComponent<Button>().enabled = true; } else { Color ngColor = new Color (90f / 255f, 90f / 255f, 90f / 255f, 255f / 255f); kanjyo.transform.FindChild("Text").GetComponent<Text> ().color = ngColor; kanjyo.GetComponent<Button>().enabled = false; } GameObject chigyo = GameObject.Find ("ButtonCyouhei"); chigyo.GetComponent<BusyoStatusButton> ().ch_type = ch_type; chigyo.GetComponent<BusyoStatusButton> ().ch_heisyu = heisyu; chigyo.GetComponent<BusyoStatusButton> ().ch_num = ch_num; chigyo.GetComponent<BusyoStatusButton> ().ch_status = chAtkDfc; chigyo.GetComponent<BusyoStatusButton> ().ch_hp = hei; chigyo.GetComponent<BusyoStatusButton> ().pa_hp = totalBusyoHp/100; GameObject kunren = GameObject.Find ("ButtonKunren"); kunren.GetComponent<BusyoStatusButton> ().ch_type = ch_type; kunren.GetComponent<BusyoStatusButton> ().ch_heisyu = heisyu; kunren.GetComponent<BusyoStatusButton> ().ch_lv = ch_lv; kunren.GetComponent<BusyoStatusButton> ().ch_status = chAtkDfc; kunren.GetComponent<BusyoStatusButton> ().ch_hp = hei ; kunren.GetComponent<BusyoStatusButton> ().ch_num = ch_num; kunren.GetComponent<BusyoStatusButton> ().pa_hp = totalBusyoHp/100; //Parametor Setting GameObject.Find ("GameScene").GetComponent<NowOnBusyo>().OnBusyo = busyoId; }