Example #1
0
    public void Add(CtrlIconRoot _iconRoot)
    {
        _iconRoot.SetDepth(m_sprItem.depth);
        _iconRoot.m_iSize = m_dataItem.width;

        m_iconRootList.Add(_iconRoot);
        return;
    }
Example #2
0
    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);
    }
Example #3
0
    // 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;
        }
    }
Example #4
0
    // 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;
            }
        }
    }