Exemplo n.º 1
0
    public int GetAllMissionsStar(DataConfig.MISSION_DIFFICULTY difficult, int stageId)
    {
        int star = 0;

        Chapters chapters = null;

        if (difficult == DataConfig.MISSION_DIFFICULTY.NORMAL)
        {
            chapters = _chaptersNormal;
        }
        else
        {
            chapters = _chaptersElite;
        }

        foreach (Campaign campaign in chapters.list)
        {
            if (campaign.stageId == stageId)
            {
                foreach (Model_Mission mission in campaign.list)
                {
                    star += mission.starCount;
                }
            }
        }

        return(star);
    }
Exemplo n.º 2
0
    private void InitChaptersNormal()
    {
        _chaptersNormal = new Chapters();

        DataConfig.MISSION_DIFFICULTY difficulty = DataConfig.MISSION_DIFFICULTY.NORMAL;

        DataMissionGroup missionGroup = DataManager.instance.dataMissionGroup;

        List <DataMissionGroup.DataCampaign> dataCampaigns = missionGroup.GetCampaigns(difficulty);

        foreach (DataMissionGroup.DataCampaign dataCampaign in dataCampaigns)
        {
            Campaign campaign = new Campaign(dataCampaign.stageId);
            _chaptersNormal.list.Add(campaign);

            foreach (DataMission dataMission in dataCampaign.missions)
            {
                Model_Mission modelMission = new Model_Mission(dataMission.magicId);
//				modelMission.type = difficulty;
//				modelMission.stageId = stageId;
//				modelMission.missionId = m.missionId;
//				modelMission.starMask = 0;
//				modelMission.remainFightNum = DEFAULT_FIGHT_NUM;

//				modelMission.referenceMission = DataManager.instance.dataMissionGroup.GetMission(m.magicId);
//				Assert.assert(modelMission.referenceMission != null);

                campaign.list.Add(modelMission);
            }
        }
    }
Exemplo n.º 3
0
    public Model_Mission GetLastUnlockMission(DataConfig.MISSION_DIFFICULTY difficult, int minStarCount = 0)
    {
        Chapters chapters = null;

        if (difficult == DataConfig.MISSION_DIFFICULTY.NORMAL)
        {
            chapters = _chaptersNormal;
        }
        else
        {
            chapters = _chaptersElite;
        }

        Model_Mission findMission = null;

        foreach (Campaign campaign in chapters.list)
        {
            foreach (Model_Mission mission in campaign.list)
            {
                if (mission.actived && mission.starCount >= minStarCount)
                {
                    findMission = mission;
                }
            }
        }

        return(findMission);
    }
Exemplo n.º 4
0
    public Model_Mission GetMission(int missionMagicId)
    {
        DataConfig.MISSION_DIFFICULTY difficulty = DataMission.GetDifficulty(missionMagicId);
        int stageId   = DataMission.GetStageId(missionMagicId);
        int missionId = DataMission.GetMissionId(missionMagicId);

        return(GetMission(difficulty, stageId, missionId));
    }
Exemplo n.º 5
0
    private void ParseStageMissionId(int magicId)
    {
        difficulty = GetDifficulty(magicId);
        stageId    = GetStageId(magicId);
        missionId  = GetMissionId(magicId);

        Assert.assert(stageId > 0);
        Assert.assert(missionId > 0);
    }
Exemplo n.º 6
0
    public void TryUnlockNextMission(int battleMissionId)
    {
        /*
         * if (battleMissionId == 0) {
         *      return TryUnlockFirstMission ();
         * }
         */



        DataConfig.MISSION_DIFFICULTY difficulty = DataMission.GetDifficulty(battleMissionId);

        Model_Mission lastUnlockMission = GetLastUnlockMission(difficulty, 1);
        int           stageId           = lastUnlockMission.stageId;
        int           missionId         = lastUnlockMission.missionId;

        Campaign campaign = GetCampaign(difficulty, stageId);

        if (campaign.list.Count == missionId)
        {
            //it is last mission in campaign

            Chapters chapters = GetChapters(difficulty);
            if (stageId < chapters.list.Count)
            {
                if (difficulty == DataConfig.MISSION_DIFFICULTY.NORMAL)
                {
                    Campaign      nextCampaign = GetCampaign(difficulty, stageId + 1);
                    Model_Mission nextMission  = nextCampaign.list [0];
                    if (CheckMissionUnlock(nextMission))
                    {
                        nextMission.actived = true;
                    }
                }


//				return nextMission.referenceMission.magicId;
            }
        }
        else
        {
            int           nextMissionIndex = missionId;
            Model_Mission nextMission      = campaign.list[nextMissionIndex];
            if (CheckMissionUnlock(nextMission))
            {
                nextMission.actived = true;
            }
//			return nextMission.magicId;
        }

        if (difficulty == DataConfig.MISSION_DIFFICULTY.NORMAL)
        {
            TryUnlockEliteFirstMission(battleMissionId);
        }
    }
Exemplo n.º 7
0
    public int GetLastUnlockMissionMagicId(DataConfig.MISSION_DIFFICULTY difficult)
    {
        Model_Mission mission = GetLastUnlockMission(difficult);

        if (mission != null)
        {
            return(mission.magicId);
        }

        return(0);
    }
Exemplo n.º 8
0
 public Chapters GetChapters(DataConfig.MISSION_DIFFICULTY difficulty)
 {
     if (difficulty == DataConfig.MISSION_DIFFICULTY.NORMAL)
     {
         return(_chaptersNormal);
     }
     else
     {
         return(_chaptersElite);
     }
 }
Exemplo n.º 9
0
 public List <DataCampaign> GetCampaigns(DataConfig.MISSION_DIFFICULTY difficulty)
 {
     if (difficulty == DataConfig.MISSION_DIFFICULTY.NORMAL)
     {
         return(campaignsNormal);
     }
     else
     {
         return(campaignsElite);
     }
 }
Exemplo n.º 10
0
    public void Load(LitJson.JSONNode json)
    {
        id      = JsonReader.Int(json, "ID");
        chapter = JsonReader.Int(json, "Chapter");
//		preChapter = JsonReader.Int (json, "PreChapter");
        difficulty = (DataConfig.MISSION_DIFFICULTY)JsonReader.Int(json, "Difficulty");

//		string missionsStr = json["MissionIDs"];
//		missionIds = StringHelper.ReadIntArrayFromString (missionsStr);

//		difficulty = (preChapter > 0) ? DataConfig.MISSION_DIFFICULTY.ELITE : DataConfig.MISSION_DIFFICULTY.NORMAL;
    }
Exemplo n.º 11
0
    public DataBattle GetBattle(DataConfig.MISSION_DIFFICULTY difficulty, int stageId)
    {
        foreach (DataBattle battle in dataBattles)
        {
            if (battle.difficulty == difficulty && battle.chapter == stageId)
            {
                return(battle);
            }
        }

        return(null);
    }
Exemplo n.º 12
0
    public bool IsMissionUnlock(int magicId)
    {
        int stageId = DataMission.GetStageId(magicId);

        DataConfig.MISSION_DIFFICULTY difficulty = DataMission.GetDifficulty(magicId);
        int missionId = DataMission.GetMissionId(magicId);

        Model_Mission model_Mission = GetMission(difficulty, stageId, missionId);
        bool          isUnlcok      = model_Mission.actived;

        return(isUnlcok);
    }
Exemplo n.º 13
0
    public void UpdateUI(Model_Mission model_Mission)
    {
        _model_Mission = model_Mission;

        int         magicId     = model_Mission.magicId;
        DataMission dataMission = DataManager.instance.dataMissionGroup.GetMission(magicId);
        int         power       = InstancePlayer.instance.model_User.model_Formation.CalcPower();

        if (dataMission != null)
        {
            Mission_Name_Label.text = dataMission.name;

            int fightNum = 0;
            if (model_Mission.difficulty == DataConfig.MISSION_DIFFICULTY.NORMAL)
            {
                fightNum = Model_Mission.FIGHT_NUM_NORMAL;
            }
            else
            {
                fightNum = Model_Mission.FIGHT_NUM_ELITE;
            }

            total_fight_num = fightNum;

            left_fight_num = model_Mission.remainFightNum;

            Left_Count.text = model_Mission.remainFightNum + "/" + fightNum;

            Recommend_Power.text = dataMission.evaluate + "";
            Need_Energy.text     = dataMission.EnergyCost + "";
            Current_Power.text   = power + "";

            Honor_Label.text = dataMission.honor + "";
            Exp_Label.text   = dataMission.exp + "";

            // 更新可掉落Item
            UpdateItem(dataMission.itemsId);
        }


        int stageId = DataMission.GetStageId(magicId);

        DataConfig.MISSION_DIFFICULTY difficulty = DataMission.GetDifficulty(magicId);
        int allStarCount = InstancePlayer.instance.model_User.model_level.GetAllMissionsStar(difficulty, stageId);

        Star_Label.text   = allStarCount + "";
        Energy_Label.text = power + "";


        // 更新星级
        UpdateStar(_model_Mission.starCount);
    }
Exemplo n.º 14
0
    //  更新Mission列表
    public void UpdateMissionList()
    {
        List <Model_Mission> model_missions;

        Model_User model_User = InstancePlayer.instance.model_User;

        Model_Level model_level = InstancePlayer.instance.model_User.model_level;

        DataConfig.MISSION_DIFFICULTY difficulty = DataMission.GetDifficulty(_missionMagicId);
        int stageId = DataMission.GetStageId(_missionMagicId);

        Model_Level.Campaign campaign = model_level.GetCampaign(difficulty, stageId);
        model_missions = campaign.list;

        int n = model_missions.Count;
        int currentSelectId = 0;

        GameObject cell_prefab = Resources.Load(MISSION_CELL_PATH) as GameObject;

        for (int i = 0; i < n; ++i)
        {
            GameObject cell = NGUITools.AddChild(grid_Mission.gameObject, cell_prefab);
            grid_Mission.AddChild(cell.transform);
            cell.name = UIHelper.GetItemSuffix(i);

            Model_Mission model_Mission = model_missions [i];

            MissionCellUI cellUI = cell.GetComponent <MissionCellUI> ();
            cellUI.missionDetialUI = missionDetialUI;
            cellUI.missionPanel    = this;

            cellUI.isUnlock = model_Mission.actived;

            //  当前关卡选中项
            if (_missionMagicId == model_Mission.magicId)
            {
                cellUI.isSelected = true;
            }

            // Boss
            if (i == n - 1)
            {
                cellUI.isBoss = true;
            }

            cellUI.UpdateUI(model_Mission);
            mission_cell_list.Add(cellUI);
        }

        grid_Mission.animateSmoothly = false;
        grid_Mission.repositionNow   = true;
    }
Exemplo n.º 15
0
    public Model_Mission GetMission(DataConfig.MISSION_DIFFICULTY difficulty, int stageId, int missionId)
    {
        Campaign campaign = GetCampaign(difficulty, stageId);

        foreach (Model_Mission m in campaign.list)
        {
            if (m.missionId == missionId)
            {
                return(m);
            }
        }
        return(null);
    }
Exemplo n.º 16
0
    /*
     * public Model_Mission(DataConfig.MISSION_DIFFICULTY difficulty, int stageId, int missionId)
     * {
     *      magicId = (int)(difficulty + 1) * 10000 + stageId * 100 + missionId;
     *
     *      this.difficulty = difficulty;
     *      this.stageId = stageId;
     *      this.missionId = missionId;
     *
     *      InitRemainFightNum ();
     * }
     */

    public Model_Mission(int magicId)
    {
        this.magicId = magicId;

        difficulty = DataMission.GetDifficulty(magicId);
        stageId    = DataMission.GetStageId(magicId);
        missionId  = DataMission.GetMissionId(magicId);

        InitRemainFightNum();

        _referenceMission = DataManager.instance.dataMissionGroup.GetMission(magicId);
        Assert.assert(_referenceMission != null);
    }
Exemplo n.º 17
0
    public Campaign GetCampaign(DataConfig.MISSION_DIFFICULTY difficulty, int stageId)
    {
        Chapters chapters = GetChapters(difficulty);

        foreach (Campaign c in chapters.list)
        {
            if (c.stageId == stageId)
            {
                return(c);
            }
        }
        return(null);
    }
Exemplo n.º 18
0
    // Use this for initialization
    void Start()
    {
        DataManager.instance.InitData();

        DataConfig.MISSION_DIFFICULTY difficulty = DataConfig.MISSION_DIFFICULTY.NORMAL;
        int stageId = 1;

        DataMissionGroup.DataCampaign campaign = DataManager.instance.dataMissionGroup.GetCampaign(difficulty, stageId);
        mapControl = new CampaignMapControl(campaign, 0);

        GameObject camera = GameObject.FindGameObjectWithTag(AppConfig.TAB_MAIN_CAMERA);

        _campaignCamera = camera.GetComponent <CampaignCamera> ();
    }
Exemplo n.º 19
0
    public void TryUnlockEliteFirstMission(int battleMissionId)
    {
        Assert.assert(DataMission.GetDifficulty(battleMissionId) == DataConfig.MISSION_DIFFICULTY.NORMAL);

        DataConfig.MISSION_DIFFICULTY difficulty = DataConfig.MISSION_DIFFICULTY.ELITE;
        int stageId   = DataMission.GetStageId(battleMissionId);
        int missionId = DataMission.GetMissionId(battleMissionId);

        Campaign campaign = GetCampaign(difficulty, stageId);

        if (campaign.list.Count == missionId)
        {
            Model_Mission mission = GetMission(difficulty, stageId, 1);
            mission.actived = true;
        }
    }
Exemplo n.º 20
0
    public void UpdatePageUI(int missionMagicId)
    {
        FreeMapControl();

        DataConfig.MISSION_DIFFICULTY difficulty = DataMission.GetDifficulty(missionMagicId);
        int stageId   = DataMission.GetStageId(missionMagicId);
        int missionId = DataMission.GetMissionId(missionMagicId);

        // TODO 强制战役背景资源 ID 为1
//		stageId = 1;

        DataMissionGroup.DataCampaign campaign = DataManager.instance.dataMissionGroup.GetCampaign(difficulty, stageId);
        mapControl = new CampaignMapControl(campaign, missionId - 1);

        int tileIndex = missionId - 1;

        if (tileIndex >= 0)
        {
            mapControl.SelectTile(tileIndex);
        }
    }
Exemplo n.º 21
0
    private void InitChaptersElite()
    {
        _chaptersElite = new Chapters();

        DataConfig.MISSION_DIFFICULTY difficulty = DataConfig.MISSION_DIFFICULTY.ELITE;

        DataMissionGroup missionGroup = DataManager.instance.dataMissionGroup;

        List <DataMissionGroup.DataCampaign> dataCampaigns = missionGroup.GetCampaigns(difficulty);

        foreach (DataMissionGroup.DataCampaign dataCampaign in dataCampaigns)
        {
            Campaign campaign = new Campaign(dataCampaign.stageId);
            _chaptersElite.list.Add(campaign);

            foreach (DataMission dataMission in dataCampaign.missions)
            {
                Model_Mission modelMission = new Model_Mission(dataMission.magicId);
                campaign.list.Add(modelMission);
            }
        }
    }
Exemplo n.º 22
0
 public DataCampaign(DataConfig.MISSION_DIFFICULTY difficulty, int stageId)
 {
     this.difficulty = difficulty;
     this.stageId    = stageId;
 }
Exemplo n.º 23
0
    public DataCampaign GetCampaign(DataConfig.MISSION_DIFFICULTY difficulty, int stageId)
    {
        List <DataCampaign> targetCampaigns = GetCampaigns(difficulty);

        return(targetCampaigns [stageId - 1]);
    }
Exemplo n.º 24
0
    public DataMission GetMission(DataConfig.MISSION_DIFFICULTY difficulty, int stageId, int missionId)
    {
        DataCampaign campaign = GetCampaign(difficulty, stageId);

        return(campaign.missions[missionId - 1]);
    }