public int GetCollect(bool _bCollect, out int _iCollectGold, out int _iCollectExp) { double diffSec = TimeManager.Instance.GetDiffNow(collect_time).TotalSeconds * -1.0d; //Debug.Log (diffSec.ToString() + ":" + condition.ToString() ); CsvMonsterData csvMonster = DataManager.GetMonster(monster_id); double dCount = diffSec / csvMonster.revenew_interval; int iCollectGold = (int)dCount * csvMonster.revenew_coin; int iCollectExp = (int)dCount * csvMonster.revenew_exp; if (_bCollect) { string strNow = TimeManager.StrNow(); Dictionary <string, string> dict = new Dictionary <string, string> (); dict.Add("collect_time", "\"" + strNow + "\""); GameMain.dbMonster.Update(monster_serial, dict); } _iCollectGold = iCollectGold; _iCollectExp = iCollectExp; // 健全なのは1 if ((int)Define.Monster.CONDITION.SICK == condition) { iCollectGold = 0; } return((int)iCollectGold); }
public void Initialize(int _iMonsterId) { m_eStep = STEP.IDLE; CsvMonsterData master_data = DataManager.GetMonster(_iMonsterId); m_lbNumber.text = string.Format("No.{0}", master_data.monster_id); m_lbName.text = master_data.name; m_lbUriage.text = UtilString.GetSyuunyuu(master_data.revenew_coin, master_data.revenew_interval); //m_lbUriage.text = master_data.revenew_coin.ToString() + " / " + master_data.revenew_interval.ToString(); m_lbExp.text = master_data.revenew_exp.ToString(); m_lbCost.text = master_data.cost.ToString(); m_lbExplain.text = master_data.description_book; string strRarity = ""; for (int i = 0; i < master_data.rare; i++) { strRarity += "★"; } m_lbRarity.text = strRarity; //master_data.rare.ToString(); string strSpriteName = GetSpriteName(master_data.monster_id); UIAtlas atlas = AtlasManager.Instance.GetAtlas(strSpriteName); m_sprMonster.atlas = atlas; m_sprMonster.spriteName = strSpriteName; }
static void WhereTest() { for (int i = 0; i < 10; i++) { CsvMonsterData monster_csv = DataManager.GetMonster(i); Debug.Log(string.Format("name:{0} revin:{1}", monster_csv.name, monster_csv.revenew_interval)); } }
// 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.INITIALIZE: if (bInit) { m_switchSprite.SetSprite("work_clear"); } //Debug.LogError (SpriteManager.Instance.IsIdle ()); if (SpriteManager.Instance.IsIdle()) { m_eStep = STEP.IDLE; } break; case STEP.IDLE: if (bInit) { m_goHit.SetActive(false); m_sprWhite.gameObject.SetActive(false); m_btnClose.gameObject.SetActive(false); } if (0 < m_WorkIdQueue.Count && TutorialManager.Instance.IsTutorial() == false) { m_iPopupWorkId = m_WorkIdQueue.Dequeue(); m_eStep = STEP.OPEN; } break; case STEP.OPEN: if (bInit) { GameMain.Instance.TutorialInputLock = true; SoundManager.Instance.PlaySE("se_work_clear"); m_goHit.SetActive(true); m_sprWhite.gameObject.SetActive(true); m_btnClose.gameObject.SetActive(true); m_sprWorkIcon.spriteName = BannerWork.GetSpriteName(m_iPopupWorkId); m_sprWorkIcon.atlas = AtlasManager.Instance.GetAtlas(m_sprWorkIcon.spriteName); CsvWorkData work_data = DataManager.GetWork(m_iPopupWorkId); m_lbTitle.text = work_data.title; m_lbTitle2.text = work_data.title; m_lbMessage.text = work_data.description; m_lbExp.text = work_data.exp.ToString(); string strPrize = ""; if (0 < work_data.prize_coin) { strPrize = string.Format("{0}G", work_data.prize_coin); } else if (0 < work_data.prize_monster) { CsvMonsterData monster_data = DataManager.GetMonster(work_data.prize_monster); strPrize = string.Format("{0}", monster_data.name); } else if (0 < work_data.prize_ticket) { strPrize = string.Format("チケット{0}枚", work_data.prize_ticket); } else { Debug.LogError("unknown prize"); } m_lbPrize.text = strPrize; TweenScale ts = TweenScale.Begin(m_switchSprite.gameObject, 0.2f, Vector3.one); EventDelegate.Set(ts.onFinished, EndTween); } if (m_bIsEndTween) { m_eStep = STEP.WAIT; } break; case STEP.WAIT: if (bInit) { m_btnClose.TriggerClear(); } if (m_btnClose.ButtonPushed) { m_eStep = STEP.CLOSE; } break; case STEP.CLOSE: if (bInit) { m_bIsEndTween = false; TweenScale ts = TweenScale.Begin(m_switchSprite.gameObject, 0.2f, Vector3.zero); EventDelegate.Set(ts.onFinished, EndTween); GameMain.Instance.TutorialInputLock = false; } if (m_bIsEndTween) { m_eStep = STEP.IDLE; if (0 < m_WorkIdQueue.Count) { m_iPopupWorkId = m_WorkIdQueue.Dequeue(); m_eStep = STEP.OPEN; } } break; case STEP.MAX: default: break; } return; }
public int GetUriagePerHour() { float fTotalRate = GetSymbolRate(); int iRet = 0; bool bHalf = true; CtrlFieldItem ctrlFieldItem = GameMain.ParkRoot.GetFieldItem(item_serial); //Debug.LogError (item_serial); if (ctrlFieldItem != null) { //Debug.LogError (ctrlFieldItem.m_dataItem.category); } if (ctrlFieldItem != null && ctrlFieldItem.m_eRoad == Define.ROAD.CONNECTION_SHOP) { bHalf = false; //Debug.LogError ("here "); } //Debug.LogError (bHalf); // 例外?処理 CsvItemData csv_item_data = DataManager.GetItem(item_id); if (0 < csv_item_data.revenue) { int iCount = 3600 / csv_item_data.revenue_interval; // お店自体金額回収 iRet = iCount * csv_item_data.revenue; if (bHalf) { iRet /= 2; } if (status == 0) { iRet = 0; } iRet = (int)(iRet * fTotalRate); return(iRet); } List <DataMonster> monster_list = GameMain.dbMonster.Select(" item_serial = " + item_serial.ToString()); int iUriageMax = 0; foreach (DataMonster monster in monster_list) { CsvMonsterData monster_csv = DataManager.GetMonster(monster.monster_id); int iCount = 3600 / monster_csv.revenew_interval; iUriageMax += monster_csv.revenew_coin * iCount; } CsvItemDetailData item_detail_data = DataManager.GetItemDetail(item_id, level); iUriageMax = (iUriageMax * item_detail_data.revenue_rate) / 100; iRet = iUriageMax; if (bHalf) { iRet /= 2; } iRet = (int)(iRet * fTotalRate); return(iRet); }
//DBへ保存 public void Replace(CsvMonsterData _replocalData) { int iInitStatus = 0; if (_replocalData.open_work_id == 0) { iInitStatus = 1; } string strName = CommonConvertToSaveDb(_replocalData.name); string strDescriptionBook = CommonConvertToSaveDb(_replocalData.description_book); string strDescriptionCell = CommonConvertToSaveDb(_replocalData.description_cell); DataMonsterMaster data_replace = new DataMonsterMaster(); data_replace.monster_id = _replocalData.monster_id; data_replace.name = strName; data_replace.description_cell = _replocalData.description_cell; data_replace.cost = _replocalData.cost; data_replace.fill = _replocalData.fill; data_replace.dust = _replocalData.dust; data_replace.coin = _replocalData.coin; data_replace.ticket = _replocalData.ticket; data_replace.revenew_coin = _replocalData.revenew_coin; data_replace.revenew_exp = _replocalData.revenew_exp; data_replace.revenew_interval = _replocalData.revenew_interval; data_replace.open_work_id = _replocalData.open_work_id; data_replace.description_book = _replocalData.description_book; data_replace.size = _replocalData.size; data_replace.rare = _replocalData.rare; data_replace.status = iInitStatus; m_soDataMonsterMaster.list.Add(data_replace); /* * //データの上書きのコマンドを設定する * string strQuery = "replace into " + TABLE_NAME + " (monster_id,name,description_cell,cost,fill,dust,coin,ticket,revenew_coin,revenew_exp,revenew_interval,open_work_id,description_book,size,rare,status) values( '" + * _replocalData.monster_id.ToString () + "',\"" + * strName.ToString () + "\",\"" + * strDescriptionCell.ToString () + "\",'" + * _replocalData.cost.ToString () + "','" + * _replocalData.fill.ToString () + "','" + * _replocalData.dust.ToString () + "',\"" + * _replocalData.coin.ToString () + "\",'" + * _replocalData.ticket.ToString () + "','" + * _replocalData.revenew_coin.ToString () + "','" + * _replocalData.revenew_exp.ToString () + "','" + * _replocalData.revenew_interval.ToString () + "','" + * _replocalData.open_work_id.ToString () + "',\"" + * strDescriptionBook+ "\",'" + * _replocalData.size.ToString () + "','" + * _replocalData.rare.ToString () + "','" + * iInitStatus.ToString () + "');"; * * Debug.Log( "DBMonsterMaster:"+strQuery); * * //m_sqlDBはDBDataBaseのプロテクト変数 * SQLiteQuery query = new SQLiteQuery(m_sqlDB,strQuery); * * query.Step (); // * query.Release (); //解放 */ }
// 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_dataWork.status == 1) { if (0 < m_dataWork.mission_monster) { m_eStep = STEP.MONSTER_BUY_CHECK; } else if (0 < m_dataWork.mission_item) { DataItemMaster item_master = GameMain.dbItemMaster.Select(m_dataWork.mission_item); if (item_master.status == (int)Define.Item.Status.NONE) { m_eStep = STEP.ITEM_HINT; } else { m_eStep = STEP.ITEM_MOVE; } } else if (0 < m_dataWork.mission_staff) { m_eStep = STEP.STAFF_MOVE; } else { } } } break; case STEP.MONSTER_BUY_CHECK: if (bInit) { GameObject objOjisan = PrefabManager.Instance.MakeObject("prefab/PrefOjisanCheck", gameObject.transform.parent.parent.parent.parent.gameObject); m_ojisanCheck = objOjisan.GetComponent <CtrlOjisanCheck> (); CsvMonsterData monster_data = DataManager.GetMonster(m_dataWork.mission_monster); string strDisp = ""; if (monster_data.coin <= DataManager.user.m_iGold) { strDisp = string.Format("本当に購入しますか?\n({0}G)\n\n{1}G→[FFD900]{2}G[-]", monster_data.coin, DataManager.user.m_iGold, DataManager.user.m_iGold - monster_data.coin); //strDisp = string.Format("こちらの動物を\n購入しますか({0}G)\n\n{1}G→{2}G" , monster_data.coin , DataManager.user.m_iGold , DataManager.user.m_iGold - monster_data.coin ); } else { strDisp = string.Format("こちらの動物を\n購入しますか\n\n購入には[FF0000]{0}G[-]必要です\n[FF0000]{1}G[-]不足しています", monster_data.coin, monster_data.coin - DataManager.user.m_iGold); m_ojisanCheck.YesOrNo.EnableButtonYes(false); } m_ojisanCheck.Initialize(strDisp); } if (m_ojisanCheck.IsYes()) { Destroy(m_ojisanCheck.gameObject); SoundManager.Instance.PlaySE(SoundName.BUTTON_PUSH); m_eStep = STEP.MONSTER_BUY; } else if (m_ojisanCheck.IsNo()) { Destroy(m_ojisanCheck.gameObject); SoundManager.Instance.PlaySE(SoundName.BUTTON_PUSH); m_eStep = STEP.IDLE; } else { } break; case STEP.MONSTER_BUY: if (bInit) { GameObject objOjisan = PrefabManager.Instance.MakeObject("prefab/PrefOjisanCheck", gameObject.transform.parent.parent.parent.parent.gameObject); m_ojisanCheck = objOjisan.GetComponent <CtrlOjisanCheck> (); string strDisp = "購入完了しました\n檻から設置を\n行ってください\n"; m_ojisanCheck.Initialize(strDisp, true); /* * Dictionary< string , string > dict = new Dictionary< string , string > (); * int iConditionFine = (int)Define.Monster.CONDITION.FINE; * dict.Add( "condition" , iConditionFine.ToString() ); */ GameMain.dbMonster.Insert(m_dataWork.mission_monster, 0); CsvMonsterData monster_data = DataManager.GetMonster(m_dataWork.mission_monster); DataManager.user.AddGold(monster_data.coin * -1); DataWork.WorkCheck(); } if (m_ojisanCheck.IsYes()) { Destroy(m_ojisanCheck.gameObject); m_eStep = STEP.IDLE; GameMain.ListRefresh = true; } break; case STEP.ITEM_HINT: if (bInit) { GameObject objOjisan = PrefabManager.Instance.MakeObject("prefab/PrefOjisanCheck", gameObject.transform.parent.parent.parent.parent.gameObject); m_ojisanCheck = objOjisan.GetComponent <CtrlOjisanCheck> (); DataItemMaster item_mission = GameMain.dbItemMaster.Select(m_dataWork.mission_item); DataItemMaster item_open = GameMain.dbItemMaster.Select(item_mission.open_item_id); string strDisp = string.Format("HINT!\n\n{0}は\n[FF0000]{1}[-]を購入すると\n購入可能になります", item_mission.name, item_open.name); m_ojisanCheck.Initialize(strDisp, true); } if (m_ojisanCheck.IsYes()) { Destroy(m_ojisanCheck.gameObject); m_eStep = STEP.IDLE; } break; case STEP.ITEM_MOVE: if (bInit) { GameObject objOjisan = PrefabManager.Instance.MakeObject("prefab/PrefOjisanCheck", gameObject.transform.parent.parent.parent.parent.gameObject); m_ojisanCheck = objOjisan.GetComponent <CtrlOjisanCheck> (); string strDisp = string.Format("購入ページに移動します\nよろしいですか?"); m_ojisanCheck.Initialize(strDisp); } if (m_ojisanCheck.IsYes()) { Destroy(m_ojisanCheck.gameObject); DataItemMaster item_mission = GameMain.dbItemMaster.Select(m_dataWork.mission_item); switch (item_mission.category) { case 1: default: GameMain.Instance.m_iMoveTab = 0; break; case 2: GameMain.Instance.m_iMoveTab = 1; break; case 3: GameMain.Instance.m_iMoveTab = 2; break; } GameMain.Instance.SetStatus(GameMain.STATUS.ITEM); //m_eStep = STEP.IDLE; } else if (m_ojisanCheck.IsNo()) { Destroy(m_ojisanCheck.gameObject); m_eStep = STEP.IDLE; } else { } break; case STEP.STAFF_MOVE: if (bInit) { GameObject objOjisan = PrefabManager.Instance.MakeObject("prefab/PrefOjisanCheck", gameObject.transform.parent.parent.parent.parent.gameObject); m_ojisanCheck = objOjisan.GetComponent <CtrlOjisanCheck> (); //string strDisp = string.Format("HINT!\n\nスタッフを雇う場合は\n檻を選択してから\n配置を行うことができます" ); string strDisp = string.Format("\n\nHINT!\n\nオフィス購入後、各施設の「配置」タブからスタッフを雇えるよ!\n\n"); m_ojisanCheck.Initialize(strDisp, true); } if (m_ojisanCheck.IsYes()) { Destroy(m_ojisanCheck.gameObject); m_eStep = STEP.IDLE; } break; break; case STEP.MAX: default: break; } }