public void changeKuniIconAndParam(int srcKuni, int dstKuni, int srcDaimyoId, int dstDaimyoId){ //Change Icon string imagePath = "Prefabs/Kamon/" + srcDaimyoId.ToString (); GameObject kuniIconView = GameObject.Find ("KuniIconView"); GameObject targetKuni = kuniIconView.transform.FindChild(dstKuni.ToString()).gameObject; targetKuni.GetComponent<Image> ().sprite = Resources.Load (imagePath, typeof(Sprite)) as Sprite; //Change Tochi Color GameObject KuniMap = GameObject.Find ("KuniMap"); GameObject targetKuniMap = kuniIconView.transform.FindChild(dstKuni.ToString()).gameObject; float colorR = (float)daimyoMst.param [srcDaimyoId - 1].colorR; float colorG = (float)daimyoMst.param [srcDaimyoId - 1].colorG; float colorB = (float)daimyoMst.param [srcDaimyoId - 1].colorB; Color kuniColor = new Color (colorR / 255f, colorG / 255f, colorB / 255f, 255f / 255f); KuniMap.transform.FindChild (dstKuni.ToString()).GetComponent<Image> ().color = kuniColor; /*Change Param*/ //Set Senryoku string seiryoku = PlayerPrefs.GetString ("seiryoku"); List<string> seiryokuList = new List<string> (); char[] delimiterChars = {','}; seiryokuList = new List<string> (seiryoku.Split (delimiterChars)); /*Get Winner Kuni Qty*/ EnemySenryokuCalc calc = new EnemySenryokuCalc (); int myKuniQty = GameObject.Find ("GameController").GetComponent<MainStageController> ().myKuniQty; //int enemyKuniQty = kuniIconView.transform.FindChild (srcKuni.ToString ()).GetComponent<SendParam> ().kuniQty; //int newEnemyKuniQty = enemyKuniQty + 1; MainStageController main = new MainStageController (); for (int i = 0; i < seiryokuList.Count; i++) { int tmpDaimyoId = int.Parse(seiryokuList [i]); if(tmpDaimyoId == srcDaimyoId){ List<string> checkedKuniList = new List<string> (); int tmpKuniId = i + 1; int newWinnerKuniQty = main.countLinkedKuniQty(1, tmpKuniId, tmpDaimyoId, seiryokuList, checkedKuniList); //Get New Senryoku int busyoQty = calc.EnemyBusyoQtyCalc (myKuniQty, newWinnerKuniQty); int senryokuRatio = daimyoMst.param [srcDaimyoId - 1].senryoku; int busyoLv = calc.EnemyBusyoLvCalc (senryokuRatio); int butaiQty = calc.EnemyButaiQtyCalc (newWinnerKuniQty); int butaiLv = calc.EnemyButaiLvCalc (senryokuRatio); //Change Name of target Kuni by daimyo info targetKuni.GetComponent<SendParam> ().daimyoId = srcDaimyoId; targetKuni.GetComponent<SendParam> ().daimyoName = daimyoMst.param [srcDaimyoId - 1].daimyoName; targetKuni.GetComponent<SendParam> ().daimyoBusyoId = daimyoMst.param [srcDaimyoId - 1].busyoId; SendParam winnerParam = kuniIconView.transform.FindChild (tmpKuniId.ToString ()).GetComponent<SendParam> (); winnerParam.busyoQty = busyoQty; winnerParam.busyoLv = busyoLv; winnerParam.butaiQty = butaiQty; winnerParam.butaiLv = butaiLv; winnerParam.kuniQty = newWinnerKuniQty; }else if(tmpDaimyoId == dstDaimyoId){ List<string> checkedKuniList = new List<string> (); int tmpKuniId = i + 1; int newLoserKuniQty = main.countLinkedKuniQty(1, tmpKuniId, tmpDaimyoId, seiryokuList, checkedKuniList); //Get New Senryoku int busyoQty = calc.EnemyBusyoQtyCalc (myKuniQty, newLoserKuniQty); int senryokuRatio = daimyoMst.param [dstDaimyoId - 1].senryoku; int busyoLv = calc.EnemyBusyoLvCalc (senryokuRatio); int butaiQty = calc.EnemyButaiQtyCalc (newLoserKuniQty); int butaiLv = calc.EnemyButaiLvCalc (senryokuRatio); SendParam loserParam = kuniIconView.transform.FindChild (tmpKuniId.ToString ()).GetComponent<SendParam> (); loserParam.busyoQty = busyoQty; loserParam.busyoLv = busyoLv; loserParam.butaiQty = butaiQty; loserParam.butaiLv = butaiLv; loserParam.kuniQty = newLoserKuniQty; } } //Icon Color Change by Doumei Situation List<string> myDoumeiList = new List<string> (); string doumeiString = PlayerPrefs.GetString ("doumei"); if (doumeiString != null && doumeiString != "") { if (doumeiString.Contains (",")) { myDoumeiList = new List<string> (doumeiString.Split (delimiterChars)); } else { myDoumeiList.Add (doumeiString); } } if (myDoumeiList.Contains (srcDaimyoId.ToString())) { Color doumeiColor = new Color (100f / 255f, 130f / 255f, 255f / 255f, 255f / 255f); targetKuni.GetComponent<SendParam> ().doumeiFlg = true; targetKuni.GetComponent<Image>().color = doumeiColor; } if (!myDoumeiList.Contains (srcDaimyoId.ToString()) && myDoumeiList.Contains (dstDaimyoId.ToString())) { Color unDoumeiColor = new Color (255f / 255f, 255f / 255f, 255f / 255f, 255f / 255f); targetKuni.GetComponent<SendParam> ().doumeiFlg = false; targetKuni.GetComponent<Image>().color = unDoumeiColor; } }
public void changeKuniIconAndParam(int srcKuni, int dstKuni, int srcDaimyoId, int dstDaimyoId) { //Change Icon string imagePath = "Prefabs/Kamon/" + srcDaimyoId.ToString(); GameObject kuniIconView = GameObject.Find("KuniIconView"); GameObject targetKuni = kuniIconView.transform.FindChild(dstKuni.ToString()).gameObject; targetKuni.GetComponent <Image> ().sprite = Resources.Load(imagePath, typeof(Sprite)) as Sprite; //Change Tochi Color GameObject KuniMap = GameObject.Find("KuniMap"); Daimyo daimyoScript = new Daimyo(); float colorR = daimyoScript.getColorR(srcDaimyoId); float colorG = daimyoScript.getColorG(srcDaimyoId); float colorB = daimyoScript.getColorB(srcDaimyoId); Color kuniColor = new Color(colorR / 255f, colorG / 255f, colorB / 255f, 255f / 255f); KuniMap.transform.FindChild(dstKuni.ToString()).GetComponent <Image> ().color = kuniColor; //Change Yukoudo string tmp = "gaikou" + srcDaimyoId; int yukoudo = PlayerPrefs.GetInt(tmp); targetKuni.GetComponent <SendParam> ().myYukouValue = yukoudo; /*Change Param*/ //Set Senryoku string seiryoku = PlayerPrefs.GetString("seiryoku"); List <string> seiryokuList = new List <string> (); char[] delimiterChars = { ',' }; seiryokuList = new List <string> (seiryoku.Split(delimiterChars)); /*Get Winner Kuni Qty*/ EnemySenryokuCalc calc = new EnemySenryokuCalc(); int myKuniQty = GameObject.Find("GameController").GetComponent <MainStageController> ().myKuniQty; //int enemyKuniQty = kuniIconView.transform.FindChild (srcKuni.ToString ()).GetComponent<SendParam> ().kuniQty; //int newEnemyKuniQty = enemyKuniQty + 1; MainStageController main = new MainStageController(); for (int i = 0; i < seiryokuList.Count; i++) { int tmpDaimyoId = int.Parse(seiryokuList [i]); if (tmpDaimyoId == srcDaimyoId) { List <string> checkedKuniList = new List <string> (); int tmpKuniId = i + 1; int newWinnerKuniQty = main.countLinkedKuniQty(1, tmpKuniId, tmpDaimyoId, seiryokuList, checkedKuniList); //Get New Senryoku int busyoQty = calc.EnemyBusyoQtyCalc(myKuniQty, newWinnerKuniQty, 0); int senryokuRatio = daimyoScript.getSenryoku(srcDaimyoId); int busyoLv = calc.EnemyBusyoLvCalc(senryokuRatio); int butaiQty = calc.EnemyButaiQtyCalc(newWinnerKuniQty, myKuniQty); int butaiLv = calc.EnemyButaiLvCalc(senryokuRatio); //Change Name of target Kuni by daimyo info targetKuni.GetComponent <SendParam> ().daimyoId = srcDaimyoId; targetKuni.GetComponent <SendParam>().daimyoName = daimyoScript.getName(srcDaimyoId); //daimyoMst.param [srcDaimyoId - 1].daimyoName; targetKuni.GetComponent <SendParam>().daimyoBusyoId = daimyoScript.getDaimyoBusyoId(srcDaimyoId); //daimyoMst.param [srcDaimyoId - 1].busyoId; SendParam winnerParam = kuniIconView.transform.FindChild(tmpKuniId.ToString()).GetComponent <SendParam> (); winnerParam.busyoQty = busyoQty; winnerParam.busyoLv = busyoLv; winnerParam.butaiQty = butaiQty; winnerParam.butaiLv = butaiLv; winnerParam.kuniQty = newWinnerKuniQty; } else if (tmpDaimyoId == dstDaimyoId) { List <string> checkedKuniList = new List <string> (); int tmpKuniId = i + 1; int newLoserKuniQty = main.countLinkedKuniQty(1, tmpKuniId, tmpDaimyoId, seiryokuList, checkedKuniList); //Get New Senryoku int busyoQty = calc.EnemyBusyoQtyCalc(myKuniQty, newLoserKuniQty, 0); int senryokuRatio = daimyoScript.getSenryoku(dstDaimyoId);//daimyoMst.param [dstDaimyoId - 1].senryoku; int busyoLv = calc.EnemyBusyoLvCalc(senryokuRatio); int butaiQty = calc.EnemyButaiQtyCalc(newLoserKuniQty, myKuniQty); int butaiLv = calc.EnemyButaiLvCalc(senryokuRatio); SendParam loserParam = kuniIconView.transform.FindChild(tmpKuniId.ToString()).GetComponent <SendParam> (); loserParam.busyoQty = busyoQty; loserParam.busyoLv = busyoLv; loserParam.butaiQty = butaiQty; loserParam.butaiLv = butaiLv; loserParam.kuniQty = newLoserKuniQty; } } //Icon Color Change by Doumei Situation List <string> myDoumeiList = new List <string> (); string doumeiString = PlayerPrefs.GetString("doumei"); if (doumeiString != null && doumeiString != "") { if (doumeiString.Contains(",")) { myDoumeiList = new List <string> (doumeiString.Split(delimiterChars)); } else { myDoumeiList.Add(doumeiString); } } if (myDoumeiList.Contains(srcDaimyoId.ToString())) { Color doumeiColor = new Color(100f / 255f, 130f / 255f, 255f / 255f, 255f / 255f); targetKuni.GetComponent <SendParam> ().doumeiFlg = true; targetKuni.GetComponent <Image>().color = doumeiColor; } if (!myDoumeiList.Contains(srcDaimyoId.ToString()) && myDoumeiList.Contains(dstDaimyoId.ToString())) { Color unDoumeiColor = new Color(255f / 255f, 255f / 255f, 255f / 255f, 255f / 255f); targetKuni.GetComponent <SendParam> ().doumeiFlg = false; targetKuni.GetComponent <Image>().color = unDoumeiColor; } }
// Use this for initialization public void Start () { Resources.UnloadUnusedAssets (); //Data Initialization //DataMaker data = new DataMaker (); //data.Start (); /*Initial Data*/ bool initDataFlg = PlayerPrefs.GetBool ("initDataFlg"); if (initDataFlg == false) { //my daimyo InitDataMaker initData = new InitDataMaker (); initData.makeInitData (); } Entity_kuni_mst kuniMst = Resources.Load ("Data/kuni_mst") as Entity_kuni_mst; Entity_kuni_mapping_mst kuniMappingMst = Resources.Load ("Data/kuni_mapping_mst") as Entity_kuni_mapping_mst; Entity_daimyo_mst daimyoMst = Resources.Load ("Data/daimyo_mst") as Entity_daimyo_mst; //Base Info. int kuniLv = PlayerPrefs.GetInt ("kuniLv"); int money = PlayerPrefs.GetInt ("money"); int busyoDama = PlayerPrefs.GetInt ("busyoDama"); GameObject.Find ("KuniLvValue").GetComponent<Text> ().text = kuniLv.ToString (); GameObject.Find ("MoneyValue").GetComponent<Text> ().text = money.ToString (); GameObject.Find ("BusyoDamaValue").GetComponent<Text> ().text = busyoDama.ToString (); myDaimyo = PlayerPrefs.GetInt ("myDaimyo"); string myDaimyoName = daimyoMst.param [myDaimyo - 1].daimyoName; GameObject.Find ("DaimyoValue").GetComponent<Text> ().text = myDaimyoName; //Kuni List string openKuni = PlayerPrefs.GetString ("openKuni"); List<string> openKuniList = new List<string> (); char[] delimiterChars = {','}; if (openKuni != null && openKuni != "") { if (openKuni.Contains (",")) { openKuniList = new List<string> (openKuni.Split (delimiterChars)); } else { openKuniList.Add (openKuni); } } GameObject kuniIconView = GameObject.Find ("KuniIconView"); string clearedKuni = PlayerPrefs.GetString ("clearedKuni"); List<string> clearedKuniList = new List<string> (); if (clearedKuni != null && clearedKuni != "") { if (clearedKuni.Contains (",")) { clearedKuniList = new List<string> (clearedKuni.Split (delimiterChars)); } else { clearedKuniList.Add (clearedKuni); } } /*View Every Kuni by Master*/ GameObject KuniMap = GameObject.Find ("KuniMap"); //Seiryoku Default Setting string seiryoku = PlayerPrefs.GetString ("seiryoku"); List<string> seiryokuList = new List<string> (); seiryokuList = new List<string> (seiryoku.Split (delimiterChars)); //Count my Kuni QTY for (int m=0; m<seiryokuList.Count; m++) { int seiryokuId = int.Parse (seiryokuList [m]); if (seiryokuId == myDaimyo) { myKuniQty = myKuniQty + 1; } } //My Doumei Color doumeiColor = new Color (100f / 255f, 130f / 255f, 255f / 255f, 255f / 255f); //Blue string myDoumei = PlayerPrefs.GetString ("doumei"); List<string> myDoumeiList = new List<string> (); if (myDoumei != null && myDoumei != "") { if(myDoumei.Contains(",")){ myDoumeiList = new List<string> (myDoumei.Split (delimiterChars)); }else{ myDoumeiList.Add(myDoumei); } } string kuniPath = "Prefabs/Map/Kuni/"; for (int i=0; i<kuniMst.param.Count; i++) { int kuniId = kuniMst.param [i].kunId; string newKuniPath = kuniPath + kuniId.ToString (); int locationX = kuniMst.param [i].locationX; int locationY = kuniMst.param [i].locationY; GameObject kuni = Instantiate (Resources.Load (newKuniPath)) as GameObject; kuni.transform.SetParent (kuniIconView.transform); kuni.name = kuniId.ToString (); kuni.GetComponent<SendParam> ().kuniId = kuniId; kuni.GetComponent<SendParam> ().kuniName = kuniMst.param [i].kuniName; kuni.transform.localScale = new Vector2 (1, 1); //Seiryoku Handling int daimyoId = int.Parse (seiryokuList [kuniId - 1]); string daimyoName = daimyoMst.param [daimyoId - 1].daimyoName; kuni.GetComponent<SendParam> ().daimyoId = daimyoId; kuni.GetComponent<SendParam> ().daimyoName = daimyoName; int daimyoBusyoIdTemp = daimyoMst.param [daimyoId - 1].busyoId; kuni.GetComponent<SendParam> ().daimyoBusyoId = daimyoBusyoIdTemp; //Senryoku //Count QTY of Enemy Kuni int enemyKuniQty = 0; for (int l=0; l<seiryokuList.Count; l++) { int seiryokuId = int.Parse (seiryokuList [l]); if (seiryokuId == daimyoId) { enemyKuniQty = enemyKuniQty + 1; } } EnemySenryokuCalc calc = new EnemySenryokuCalc (); int busyoQty = 0; int busyoLv = 0; int butaiQty = 0; int butaiLv = 0; busyoQty = calc.EnemyBusyoQtyCalc (myKuniQty, enemyKuniQty); int senryokuRatio = daimyoMst.param [daimyoId - 1].senryoku; busyoLv = calc.EnemyBusyoLvCalc (senryokuRatio); butaiQty = calc.EnemyButaiQtyCalc (enemyKuniQty); butaiLv = calc.EnemyButaiLvCalc (senryokuRatio); kuni.GetComponent<SendParam> ().busyoQty = busyoQty; kuni.GetComponent<SendParam> ().busyoLv = busyoLv; kuni.GetComponent<SendParam> ().butaiQty = butaiQty; kuni.GetComponent<SendParam> ().butaiLv = butaiLv; kuni.GetComponent<SendParam>().kuniQty = enemyKuniQty; //Color Handling float colorR = (float)daimyoMst.param [daimyoId - 1].colorR; float colorG = (float)daimyoMst.param [daimyoId - 1].colorG; float colorB = (float)daimyoMst.param [daimyoId - 1].colorB; Color kuniColor = new Color (colorR / 255f, colorG / 255f, colorB / 255f, 255f / 255f); KuniMap.transform.FindChild (kuni.name).GetComponent<Image> ().color = kuniColor; //Daimyo Kamon Image string imagePath = "Prefabs/Kamon/" + daimyoId.ToString (); kuni.GetComponent<Image> ().sprite = Resources.Load (imagePath, typeof(Sprite)) as Sprite; RectTransform kuniTransform = kuni.GetComponent<RectTransform> (); kuniTransform.anchoredPosition = new Vector3 (locationX, locationY, 0); //My Doumei Check if (myDoumei != null && myDoumei != "") { if(myDoumeiList.Contains(daimyoId.ToString())){ kuni.GetComponent<SendParam> ().doumeiFlg = true; kuni.GetComponent<Image>().color = doumeiColor; } } //My daimyo Check if(daimyoId==myDaimyo){ string myDaimyoPath = "Prefabs/Kamon/MyDaimyoKamon/" + myDaimyo.ToString (); kuni.GetComponent<Image> ().sprite = Resources.Load (myDaimyoPath, typeof(Sprite)) as Sprite; kuni.GetComponent<SendParam> ().clearFlg = true; } } //Color Change for kuni icon "Open but never cleared" Color openKuniColor = new Color (255f / 255f, 255f / 255f, 0f / 255f, 255f / 255f); //Yellow for (int i=0; i<openKuniList.Count; i++) { string openKuniId = openKuniList [i]; //Flg Change GameObject targetOpenKuni = GameObject.Find ("KuniIconView").transform.FindChild (openKuniId).gameObject; targetOpenKuni.GetComponent<SendParam> ().openFlg = true; bool doumeiFlg = targetOpenKuni.GetComponent<SendParam>().doumeiFlg; //Color Change if (!clearedKuniList.Contains (openKuniId)) { if(!doumeiFlg){ targetOpenKuni.GetComponent<Image> ().color = openKuniColor; } } } //Clear Kuni Check bool kuniClearedFlg = PlayerPrefs.GetBool ("kuniClearedFlg"); if (kuniClearedFlg == true) { Message msg = new Message (); string Text = "国盗り、祝着至極に御座りますな。\n民から武将珠100個届いておりますぞ。"; msg.makeMessage (Text); //Add Busyo Dama busyoDama = busyoDama + 100; GameObject.Find ("BusyoDamaValue").GetComponent<Text> ().text = busyoDama.ToString (); PlayerPrefs.SetInt ("busyoDama", busyoDama); PlayerPrefs.SetBool ("kuniClearedFlg", false); PlayerPrefs.Flush (); } //From Naisei Check bool fromNaiseiFlg = PlayerPrefs.GetBool ("fromNaiseiFlg"); if (fromNaiseiFlg == true) { int activeKuniId = PlayerPrefs.GetInt ("activeKuniId"); GameObject.Find ("KuniIconView").transform.FindChild (activeKuniId.ToString ()).GetComponent<SendParam> ().OnClick (); PlayerPrefs.SetBool ("fromNaiseiFlg", false); PlayerPrefs.Flush (); } /*Timer Handling*/ //Last Log-In Time string timestring = PlayerPrefs.GetString ("lasttime"); if (timestring == null || timestring == "") timestring = System.DateTime.Now.ToString (); System.DateTime datetime = System.DateTime.Parse (timestring); System.TimeSpan span = System.DateTime.Now - datetime; //Last Get Time string lastGetTime = PlayerPrefs.GetString ("lastGetTime"); if (lastGetTime == null || lastGetTime == "") { lastGetTime = System.DateTime.Now.ToString (); PlayerPrefs.SetString ("lastGetTime", lastGetTime); PlayerPrefs.Flush (); } System.DateTime getdatetime = System.DateTime.Parse (lastGetTime); System.TimeSpan getspan = System.DateTime.Now - getdatetime; //経過時間を秒,時間で取得 double spantime = span.TotalSeconds; double spanhour = getspan.TotalHours; //spantimeでスタミナの回復分を求める double staminaDouble = spantime / 300; int addHyourou = (int)staminaDouble; int amariSec = (int)spantime - (addHyourou * 300); amariSec = 300 - amariSec; //HyourouMax hyourouMax = PlayerPrefs.GetInt ("hyourouMax"); GameObject.Find ("HyourouMaxValue").GetComponent<Text> ().text = hyourouMax.ToString (); //Now Hyourou int nowHyourou = PlayerPrefs.GetInt ("hyourou"); currentHyourou = GameObject.Find ("HyourouCurrentValue").gameObject; currentHyourou.GetComponent<Text> ().text = nowHyourou.ToString (); //Hyourou Full Check if (hyourouMax <= nowHyourou) { hyourouFull = true; GameObject.Find ("HyourouCurrentValue").GetComponent<Text> ().text = hyourouMax.ToString (); PlayerPrefs.SetInt ("hyourou", hyourouMax); PlayerPrefs.Flush (); } else { if (addHyourou > 0) { int newHyourou = nowHyourou + addHyourou; if (hyourouMax <= newHyourou) { hyourouFull = true; PlayerPrefs.SetInt ("hyourou", hyourouMax); PlayerPrefs.Flush (); GameObject.Find ("HyourouCurrentValue").GetComponent<Text> ().text = hyourouMax.ToString (); } else { hyourouFull = false; PlayerPrefs.SetInt ("hyourou", newHyourou); PlayerPrefs.Flush (); GameObject.Find ("HyourouCurrentValue").GetComponent<Text> ().text = newHyourou.ToString (); //Timer GameObject.Find ("TimerValue").GetComponent<Text> ().text = amariSec.ToString (); timer = (float)amariSec; } //終了時の処理 // 現在の時刻を取得 System.DateTime now = System.DateTime.Now; // 文字列に変換して保存 PlayerPrefs.SetString ("lasttime", now.ToString ()); PlayerPrefs.Flush (); } else { hyourouFull = false; PlayerPrefs.SetInt ("hyourou", nowHyourou); PlayerPrefs.Flush (); GameObject.Find ("HyourouCurrentValue").GetComponent<Text> ().text = nowHyourou.ToString (); //Timer GameObject.Find ("TimerValue").GetComponent<Text> ().text = amariSec.ToString (); timer = (float)amariSec; } } //Year Handling string yearSeason = PlayerPrefs.GetString ("yearSeason"); string[] yearSeasonList = yearSeason.Split (delimiterChars); GameObject.Find ("YearValue").GetComponent<Text> ().text = yearSeasonList [0]; int seasonId = int.Parse (yearSeasonList [1]); if (seasonId == 1) { GameObject.Find ("SeasonValue").GetComponent<Text> ().text = "春"; } else if (seasonId == 2) { GameObject.Find ("SeasonValue").GetComponent<Text> ().text = "夏"; } else if (seasonId == 3) { GameObject.Find ("SeasonValue").GetComponent<Text> ().text = "秋"; } else if (seasonId == 4) { GameObject.Find ("SeasonValue").GetComponent<Text> ().text = "冬"; } //Cyosyu Flg cyosyuFlg = PlayerPrefs.GetBool ("cyosyuFlg"); double spansec = getspan.TotalSeconds; cyosyuTimer = cyosyuMstTime - spansec; if (cyosyuTimer <= 0.0f) { cyosyuFlg = true; } else { cyosyuFlg = false; } if (cyosyuFlg == true) { GameObject.Find ("SeiryokuInfo").transform.FindChild ("Ex").GetComponent<Image> ().enabled = true; } else { GameObject.Find ("SeiryokuInfo").transform.FindChild ("Ex").GetComponent<Image> ().enabled = false; } /*--------------------*/ /*Gunzei*/ /*--------------------*/ string keyHistory = PlayerPrefs.GetString ("keyHistory"); List<string> keyHistoryList = new List<string> (); if (keyHistory != null && keyHistory != "") { if(keyHistory.Contains(",")){ keyHistoryList = new List<string> (keyHistory.Split (delimiterChars)); }else{ keyHistoryList.Add(keyHistory); } } for(int n=0; n<keyHistoryList.Count; n++){ string keyTemp = keyHistoryList[n]; string keyValue = PlayerPrefs.GetString (keyTemp); if(keyValue != null){ List<string> keyValueList = new List<string> (); keyValueList = new List<string> (keyValue.Split (delimiterChars)); string gunzeiTime = keyValueList[0]; System.DateTime gunzeiDatetime = System.DateTime.Parse (gunzeiTime); System.TimeSpan gunzeiSpan = System.DateTime.Now - gunzeiDatetime; double gunzeiSpantime = gunzeiSpan.TotalSeconds; double remainTime = 0; List<string> srcDstKuniList = new List<string> (); char[] keyDelimiterChars = {'-'}; srcDstKuniList = new List<string> (keyTemp.Split (keyDelimiterChars)); int srcDaimyoId = int.Parse(keyValueList[1]); int dstDaimyoId = int.Parse(keyValueList[2]); int srcKuni = int.Parse(srcDstKuniList[0]); int dstKuni = int.Parse(srcDstKuniList[1]); bool dstEngunFlg = bool.Parse(keyValueList[9]); string dstEngunDaimyoId = keyValueList[10]; string dstEngunHei = keyValueList[11]; string dstEngunSts = keyValueList[12]; if(gunzeiSpantime >= 300){ //Has past //Simulation Gunzei gunzei = new Gunzei(); if (dstDaimyoId != myDaimyo) { int enemyHei = gunzei.heiryokuCalc (int.Parse(srcDstKuniList[1])); int engunTotalHei = 0; if(dstEngunFlg){ char[] delimiterChars2 = {':'}; List<string> engunHeiList = new List<string>(); engunHeiList = new List<string> (dstEngunHei.Split (delimiterChars2)); for(int k=0; k<engunHeiList.Count; k++){ engunTotalHei = engunTotalHei + int.Parse(engunHeiList[k]); } } enemyHei = enemyHei + engunTotalHei; int ratio = 0; int myHei = int.Parse(keyValueList[5]); if((myHei + enemyHei)>0){ ratio = 100 * myHei / (myHei + enemyHei); if (ratio < 1) { ratio = 1; } } MainEventHandler kassenEvent = new MainEventHandler (); bool winFlg = kassenEvent.CheckByProbability (ratio); if (winFlg) { bool noGunzeiFlg = true; gunzei.win (keyTemp, int.Parse(keyValueList[1]), int.Parse(keyValueList[2]),noGunzeiFlg); } else { deleteKeyHistory(keyTemp); } }else{ MyDaimyoWasAttacked atked = new MyDaimyoWasAttacked(); atked.wasAttacked(keyTemp, srcKuni, dstKuni, srcDaimyoId, dstDaimyoId, dstEngunFlg, dstEngunDaimyoId,dstEngunSts); } }else{ //View Previous string path = "Prefabs/Map/Gunzei"; GameObject Gunzei = Instantiate (Resources.Load (path)) as GameObject; Gunzei.transform.SetParent (GameObject.Find ("Panel").transform); Gunzei.GetComponent<Gunzei>().key = keyTemp; Gunzei.GetComponent<Gunzei>().srcKuni = int.Parse(srcDstKuniList[0]); Gunzei.GetComponent<Gunzei>().dstKuni = int.Parse(srcDstKuniList[1]); Gunzei.GetComponent<Gunzei>().spantime = gunzeiSpantime; Gunzei.GetComponent<Gunzei>().srcDaimyoId = srcDaimyoId; Gunzei.GetComponent<Gunzei>().dstDaimyoId = dstDaimyoId; Gunzei.GetComponent<Gunzei>().srcDaimyoName = keyValueList[3]; Gunzei.GetComponent<Gunzei>().dstDaimyoName = keyValueList[4]; Gunzei.GetComponent<Gunzei>().myHei = int.Parse(keyValueList[5]); Gunzei.GetComponent<Gunzei>().dstEngunFlg = bool.Parse(keyValueList[9]); Gunzei.GetComponent<Gunzei>().dstEngunDaimyoId = keyValueList[10]; Gunzei.GetComponent<Gunzei>().dstEngunHei = keyValueList[11]; Gunzei.GetComponent<Gunzei>().dstEngunSts = keyValueList[12]; Gunzei.name = keyTemp; RectTransform GunzeiTransform = Gunzei.GetComponent<RectTransform> (); GunzeiTransform.anchoredPosition = new Vector3 (int.Parse(keyValueList[6]), int.Parse(keyValueList[7]), 0); if(keyValueList[8] == "right"){ Gunzei.transform.localScale = new Vector2 (1, 1); }else{ Gunzei.transform.localScale = new Vector2 (-1, 1); Gunzei.GetComponent<Gunzei>().leftFlg = true; } } }else{ PlayerPrefs.DeleteKey(keyTemp); PlayerPrefs.Flush(); } } //Metsubou Flg Check if (PlayerPrefs.HasKey ("metsubou")) { string metsubou = PlayerPrefs.GetString ("metsubou"); List<string> metsubouList = new List<string> (); if (metsubou.Contains (",")) { metsubouList = new List<string> (metsubou.Split (delimiterChars)); } else { metsubouList.Add (metsubou); } //Metsubou Message string pathOfBack = "Prefabs/Common/TouchBack"; GameObject back = Instantiate (Resources.Load (pathOfBack)) as GameObject; back.transform.SetParent (GameObject.Find ("Panel").transform); back.transform.localScale = new Vector2 (1, 1); back.transform.localPosition = new Vector2 (0, 0); //make board string pathOfBoard = "Prefabs/Event/EventBoard"; GameObject board = Instantiate (Resources.Load (pathOfBoard)) as GameObject; board.transform.SetParent (GameObject.Find ("Panel").transform); board.transform.localScale = new Vector2 (1, 1); string pathOfScroll = "Prefabs/Event/Metsubou"; GameObject scroll = Instantiate (Resources.Load (pathOfScroll)) as GameObject; scroll.transform.SetParent (board.transform); scroll.transform.localScale = new Vector2 (1, 1); string pathOfSlot = "Prefabs/Event/MetsubouSlot"; GameObject contents = scroll.transform.FindChild ("MetsubouScrollView/MetsubouContent").gameObject; char[] delimiterChars2 = {':'}; foreach (string text in metsubouList) { GameObject slot = Instantiate (Resources.Load (pathOfSlot)) as GameObject; slot.transform.SetParent (contents.transform); List<string> metsubouTextList = new List<string> (); metsubouTextList = new List<string> (text.Split (delimiterChars2)); string srcDaimyoName = daimyoMst.param [int.Parse (metsubouTextList [0]) - 1].daimyoName; string dstDaimyoName = daimyoMst.param [int.Parse (metsubouTextList [1]) - 1].daimyoName; string metsubouText = dstDaimyoName + "は" + srcDaimyoName + "に滅ぼされました"; slot.transform.FindChild ("MetsubouText").GetComponent<Text> ().text = metsubouText; slot.transform.localScale = new Vector2 (1, 1); } PlayerPrefs.DeleteKey ("metsubou"); PlayerPrefs.Flush (); } /*--------------------*/ /*Enemy Action*/ /*--------------------*/ MainEventHandler gameEvent = new MainEventHandler (); gameEvent.mainHandler (); /*--------------------*/ /*Game Over*/ /*--------------------*/ bool gameOverFlg = PlayerPrefs.GetBool("gameOverFlg"); if (gameOverFlg) { Debug.Log ("gameOver"); } }