// Update is called once per frame void Update() { bool bInit = false; if (m_eStepPre != m_eStep) { m_eStepPre = m_eStep; bInit = true; } switch (m_eStep) { case STEP.IDLE: if (bInit) { m_buttonBase.TriggerClear(); } if (m_buttonBase.ButtonPushed) { m_buttonBase.TriggerClear(); if (m_bAbleUse) { Debug.Log("clicked:BannerBase.Mode=" + BannerBase.Mode.ToString()); //SoundManager.Instance.PlaySE (SoundName.BUTTON_PUSH); switch (BannerBase.Mode) { case BannerBase.MODE.MONSTER_DETAIL: m_eStep = STEP.DETAIL; break; case BannerBase.MODE.MONSTER_SET_BUY: m_eStep = STEP.SET_BUY; break; case BannerBase.MODE.MONSTER_SET_MINE: m_eStep = STEP.SET_MINE; break; case BannerBase.MODE.MONSTER_SICK: m_eStep = STEP.SICK; break; default: break; } } } break; case STEP.DETAIL: if (bInit) { SoundManager.Instance.PlaySE(SoundName.BUTTON_PUSH); // この作り方はいただけませんねぇ・・・ GameObject obj = PrefabManager.Instance.MakeObject("prefab/PrefMonsterDetail", gameObject.transform.parent.parent.parent.parent.gameObject); m_monsterDetail = obj.GetComponent <CtrlMonsterDetail> (); m_monsterDetail.Initialize(m_dataMonster.monster_serial); } if (m_monsterDetail.IsEnd()) { SoundManager.Instance.PlaySE(SoundName.BUTTON_PUSH); Destroy(m_monsterDetail.gameObject); m_monsterDetail = null; m_eStep = STEP.IDLE; } break; case STEP.SET_BUY: if (bInit) { SoundManager.Instance.PlaySE(SoundName.SET_ANIMAL); CsvMonsterData monster_data = DataManager.GetMonster(m_dataMonsterMaster.monster_id); if (0 < monster_data.coin) { DataManager.user.AddGold(-1 * monster_data.coin); } else if (0 < monster_data.ticket) { DataManager.user.AddTicket(-1 * monster_data.ticket); } else { ; // エラーちゃう? } // 0番のページに飛ばす DataMonster insertMonster = GameMain.dbMonster.Insert(m_dataMonsterMaster.monster_id, GameMain.Instance.m_iSettingItemSerial); m_tabParent.TriggerOn(0); CtrlFieldItem fielditem = GameMain.ParkRoot.GetFieldItem(GameMain.Instance.m_iSettingItemSerial); GameObject objIcon = PrefabManager.Instance.MakeObject("prefab/PrefIcon", fielditem.gameObject); CtrlIconRoot iconRoot = objIcon.GetComponent <CtrlIconRoot> (); iconRoot.Initialize(insertMonster, fielditem); fielditem.Add(iconRoot); // 仕事の確認 DataWork.WorkCheck(); GameMain.Instance.HeaderRefresh(); if (0 < GameMain.Instance.TutorialMonster) { TutorialManager.Instance.Next(); GameMain.Instance.TutorialMonster = 0; } } break; case STEP.SET_MINE: if (bInit) { SoundManager.Instance.PlaySE(SoundName.SET_ANIMAL); Dictionary <string, string> dict = new Dictionary <string, string> (); dict.Add("item_serial", GameMain.Instance.m_iSettingItemSerial.ToString()); dict.Add("collect_time", "\"" + TimeManager.StrNow() + "\""); GameMain.dbMonster.Update(m_dataMonster.monster_serial, dict); //GameMain.dbMonster.Update (m_dataMonster.monster_serial, GameMain.Instance.m_iSettingItemSerial); m_tabParent.TriggerOn(0); DataMonster insertMonster = GameMain.dbMonster.Select(m_dataMonster.monster_serial); CtrlFieldItem fielditem = GameMain.ParkRoot.GetFieldItem(GameMain.Instance.m_iSettingItemSerial); GameObject objIcon = PrefabManager.Instance.MakeObject("prefab/PrefIcon", fielditem.gameObject); CtrlIconRoot iconRoot = objIcon.GetComponent <CtrlIconRoot> (); iconRoot.Initialize(insertMonster, fielditem); fielditem.Add(iconRoot); // 仕事の確認 DataWork.WorkCheck(); GameMain.Instance.HeaderRefresh(); } break; case STEP.SICK: if (bInit) { GameObject objOjisan = PrefabManager.Instance.MakeObject("prefab/PrefOjisanCheck", gameObject.transform.parent.parent.parent.parent.gameObject); CsvMonsterData monster = DataManager.GetMonster(m_dataMonster.monster_id); int iCost = monster.revenew_coin * (int)(600.0f / (float)monster.revenew_interval); bool bYesOnly = false; string strText = string.Format("こちらの動物を\n治療しますか\n\n治療費:{0}G\n\n{1}G → [FFD900]{2}[-]G", iCost, DataManager.user.m_iGold, DataManager.user.m_iGold - iCost); if (DataManager.user.m_iGold < iCost) { bYesOnly = true; strText = string.Format("こちらの動物を\n治療しますか\n治療費:{0}G\n\n[FFD900]GOLDが足りません[-]", iCost); } m_ojisanCheck = objOjisan.GetComponent <CtrlOjisanCheck> (); m_ojisanCheck.Initialize(strText, bYesOnly); } if (m_ojisanCheck.IsYes()) { SoundManager.Instance.PlaySE("se_cure"); CsvMonsterData monster = DataManager.GetMonster(m_dataMonster.monster_id); int iCost = monster.revenew_coin * (int)(600.0f / (float)monster.revenew_interval); DataManager.user.AddGold(-1 * iCost); GameMain.ListRefresh = true; Destroy(m_ojisanCheck.gameObject); Dictionary <string, string> dict = new Dictionary <string, string> (); int iConditionFine = (int)Define.Monster.CONDITION.FINE; dict.Add("condition", iConditionFine.ToString()); dict.Add("clean_time", string.Format("\"{0}\" ", TimeManager.StrGetTime())); Debug.Log(TimeManager.StrGetTime()); GameMain.dbMonster.Update(m_dataMonster.monster_serial, dict); m_eStep = STEP.IDLE; } else if (m_ojisanCheck.IsNo()) { SoundManager.Instance.PlaySE(SoundName.BUTTON_PUSH); Destroy(m_ojisanCheck.gameObject); m_eStep = STEP.IDLE; } else { } break; case STEP.SET_CAGE: break; case STEP.MAX: default: break; } }
public void Initialize(List <DataItem> _itemList) { if (m_bInitialized == false) { myTransform.localPosition = new Vector3(0.0f, -300.0f, 0.0f); m_fieldItemList.Clear(); GameObject prefab = PrefabManager.Instance.PrefabLoadInstance("prefab/PrefFieldItem"); List <Grid> ignoreGridList = new List <Grid> (); //Debug.Log ("Here"); //DataManager.user.m_iWidth = 20; //DataManager.user.m_iHeight = 20; for (int x = 0; x < DataManager.user.m_iWidth + 1; x++) { for (int y = 0; y < DataManager.user.m_iHeight + 1; y++) { if (IsGridIgnore(ignoreGridList, x, y)) { //Debug.Log ("same" + x.ToString () + " " + y.ToString ()); } else { GameObject obj = PrefabManager.Instance.MakeObject(prefab, gameObject); obj.name = "fielditem_" + x.ToString() + "_" + y.ToString(); CtrlFieldItem script = obj.GetComponent <CtrlFieldItem> (); bool bHit = false; foreach (DataItem item in _itemList) { if (item.x == x && item.y == y) { script.Init(item); bHit = true; for (int dx = item.x; dx < item.x + item.width; dx++) { for (int dy = item.y; dy < item.y + item.height; dy++) { Grid ignoreGrid = new Grid(dx, dy); ignoreGridList.Add(ignoreGrid); } } break; } } if (bHit == false) { int iDummyItemId = 0; if (x == DataManager.user.m_iWidth || y == DataManager.user.m_iHeight) { iDummyItemId = -1; } script.Init(x, y, iDummyItemId); } m_fieldItemList.Add(script); } } } // 所属しているモンスターのみを取り出す List <DataMonster> monster_list = GameMain.dbMonster.Select(" item_serial != 0 "); foreach (DataMonster monster in monster_list) { CtrlFieldItem fielditem = GetFieldItem(monster.item_serial); GameObject objIcon = PrefabManager.Instance.MakeObject("prefab/PrefIcon", fielditem.gameObject); CtrlIconRoot iconRoot = objIcon.GetComponent <CtrlIconRoot> (); //iconRoot.m_iSize = fielditem.m_dataItem.width; iconRoot.Initialize(monster, fielditem); fielditem.Add(iconRoot); } List <DataStaff> staff_list = GameMain.dbStaff.Select(" item_serial != 0 "); foreach (DataStaff staff in staff_list) { CtrlFieldItem fielditem = GetFieldItem(staff.item_serial); GameObject objIcon = PrefabManager.Instance.MakeObject("prefab/PrefIcon", fielditem.gameObject); CtrlIconRoot iconRoot = objIcon.GetComponent <CtrlIconRoot> (); //iconRoot.m_iSize = fielditem.m_dataItem.width; iconRoot.Initialize(staff, fielditem); fielditem.Add(iconRoot); } } m_bInitialized = true; GameMain.Instance.HeaderRefresh(true); }
// Update is called once per frame void Update() { //m_fTimer += Time.deltaTime; if (10.0f < m_fTimer) { m_bIsEnd = true; } if (m_buttonYesNo.IsYes()) { m_bIsEnd = true; DataStaff staff; int iStaffCost = 0; if (0 < m_iSetStaffSerial) { //GameMain.dbStaff.Update( Debug.Log(string.Format("set staff from backyard:{0}", m_iSetStaffSerial)); string strNow = TimeManager.StrNow(); Dictionary <string, string> dict = new Dictionary <string, string> (); dict.Add("office_serial", m_dataOffice.item_serial.ToString()); dict.Add("item_serial", m_dispOffice.SelectingCageSerial.ToString()); dict.Add("setting_time", "\"" + strNow + "\""); staff = GameMain.dbStaff.Update(m_iSetStaffSerial, dict); CsvStaffData staff_data = DataManager.GetStaff(m_iSetStaffId); iStaffCost = staff_data.coin; } else { staff = GameMain.dbStaff.Insert(m_iSetStaffId, m_dataOffice.item_serial, m_dispOffice.SelectingCageSerial); CsvStaffData staff_data = DataManager.GetStaff(m_iSetStaffId); if (0 < staff_data.coin) { DataManager.user.AddGold(-1 * staff_data.coin); } else if (0 < staff_data.ticket) { DataManager.user.AddTicket(-1 * staff_data.ticket); } else { ; // エラーちゃう? } iStaffCost = staff_data.cost; } CtrlFieldItem fielditem = GameMain.ParkRoot.GetFieldItem(m_dispOffice.SelectingCageSerial); GameObject objIcon = PrefabManager.Instance.MakeObject("prefab/PrefIcon", fielditem.gameObject); CtrlIconRoot iconRoot = objIcon.GetComponent <CtrlIconRoot> (); iconRoot.Initialize(staff, fielditem); fielditem.Add(iconRoot); // 仕事の確認 DataWork.WorkCheck(); GameMain.Instance.HeaderRefresh(); GameMain.ListRefresh = true; GameMain.Instance.m_iCostNokori -= iStaffCost; } else if (m_buttonYesNo.IsNo()) { m_bIsEnd = true; } else { ; // } m_iSelectingCageSerial = m_dispOffice.SelectingCageSerial; if (m_iSelectingCageSerialPre != m_iSelectingCageSerial) { if (0 < m_iSelectingCageSerialPre) { CtrlFieldItem script = GameMain.ParkRoot.GetFieldItem(m_iSelectingCageSerialPre); script.SetColor(Color.white); } if (0 < m_iSelectingCageSerial) { m_buttonYesNo.EnableButtonYes(true); CtrlFieldItem script = GameMain.ParkRoot.GetFieldItem(m_iSelectingCageSerial); script.SetColor(Color.red); m_iSelectingCageSerialPre = m_iSelectingCageSerial; } } }