Example #1
0
    public string[] GetBg(Scene_CitySceneTableItem Item)
    {
        if (null == Item)
        {
            return(null);
        }

        string[] split = Item.mBg.Split(new char[] { '|' });

        if (0 == Item.resID)
        {
            if (1 == split.Length)
            {
                return(split);
            }
        }

        else if (1 == Item.resID)
        {
            if (2 == split.Length)
            {
                return(split);
            }
        }

        else if (3 == split.Length)
        {
            return(split);
        }

        return(null);
    }
Example #2
0
    public void initWorldMapData()
    {
        IDictionaryEnumerator itr = DataManager.SceneCityTable.GetEnumerator();

        while (itr.MoveNext())
        {
            Scene_CitySceneTableItem item = itr.Value as Scene_CitySceneTableItem;
            if (null == item)
            {
                continue;
            }

            if (isLevel(item) && !isLock(item))
            {
                UpdateMapData(item.resID, true);
                UpdateMapData(item.resID, false);
            }
        }
//         foreach (DictionaryEntry de in DataManager.SceneCityTable)
//         {
//             Scene_CitySceneTableItem item = de.Value as Scene_CitySceneTableItem;
//             if (null == item)
//                 continue;
//
//             if (isLevel(item) &&!isLock(item))
//             {
//                 UpdateMapData(item.resID, true);
//                 UpdateMapData(item.resID, false);
//             }
//         }
    }
Example #3
0
    private void CorrectMap()
    {
        BaseScene scn = SceneManager.Instance.GetCurScene();

        if (null == scn)
        {
            return;
        }

        int resid = Pdm.GuideResId == -1 ? scn.GetSceneResId() : Pdm.GuideResId;

        if (0 > resid)
        {
            return;
        }

        if (!DataManager.SceneTable.ContainsKey(resid))
        {
            return;
        }

        Scene_CitySceneTableItem mSceneRes = DataManager.SceneTable[resid] as Scene_CitySceneTableItem;

        ArrayList list = mSceneRes.GetResolving(mSceneRes);

        if (null == list || null == list[1])
        {
            return;
        }

        Vector3 vec = (Vector3)list[1];

        mtransform.localPosition = new Vector3(vec.x, vec.y, vec.z);
        RevisePos();
    }
Example #4
0
 private void CheckPush(Scene_CitySceneTableItem item, CityPanel citypan)
 {
     citypan.mItem = item;
     if (0 == item.resID || (Pdm.isLevel(item) && !Pdm.isLock(item)))
     {
         mUnlocks.Add(citypan);
     }
     else
     {
         mlocks.Add(citypan);
     }
 }
Example #5
0
    public bool isLevel(Scene_CitySceneTableItem Item)
    {
        PlayerDataModule module = ModuleManager.Instance.FindModule <PlayerDataModule>();

        if (null == module)
        {
            return(false);
        }

        if (Item.mUnlock <= module.GetLevel())
        {
            return(true);
        }

        return(false);
    }
Example #6
0
    private void RefreshUI()
    {
        PlayerDataModule ply = ModuleManager.Instance.FindModule <PlayerDataModule>();

        if (null == ply)
        {
            return;
        }

        Hashtable shortTable = HashValSort(DataManager.SceneCityTable);

        foreach (DictionaryEntry de in shortTable)
        {
            Scene_CitySceneTableItem item = de.Value as Scene_CitySceneTableItem;
            if (null == item)
            {
                continue;
            }

            GameObject gameObj = WindowManager.Instance.CloneGameObject(mMapItemUnit);
            if (gameObj == null)
            {
                GameDebug.LogError("instance citypan error");
                return;
            }

            ArrayList list = item.GetResolving(item);
            if (null == list || null == list[0])
            {
                GameDebug.LogError("Scene_city.txt error");
                return;
            }

            gameObj.SetActive(true);
            gameObj.transform.parent        = mContainer.gameObject.transform;
            gameObj.transform.localScale    = Vector3.one;
            gameObj.transform.localPosition = (Vector3)list[0];
            gameObj.name = item.resID.ToString();
            UIEventListener.Get(gameObj).onClick = onEnterScene;

            CheckPush(item, new CityPanel(gameObj));
        }
    }
Example #7
0
    public ArrayList GetResolving(Scene_CitySceneTableItem Item)
    {
        if (null == Item)
        {
            return(null);
        }

        string[] splitb = Item.mUiPos.Split(new char[] { '|' });

        ArrayList list = new ArrayList();

        for (int i = 0; i < splitb.Length; i++)
        {
            string[] split = splitb[i].Split(new char[] { ',' });

            if (3 != split.Length)
            {
                return(null);
            }
            list.Add(new Vector3(Convert.ToInt32(split[0]), Convert.ToInt32(split[1]), Convert.ToInt32(split[2])));
        }

        return(list);
    }
Example #8
0
    public bool isLock(Scene_CitySceneTableItem Item)
    {
        PlayerDataModule module = ModuleManager.Instance.FindModule <PlayerDataModule>();

        if (module == null || null == Item)
        {
            return(true);
        }

        if (-1 == Item.mZoneid)
        {
            return(false);
        }

        if (!isHasZoneId(Item.mZoneid))
        {
            GameDebug.LogError("scene_city.txt:" + Item.name + "场景在 scene_stagelist.txt 没有对应战区Id");
            return(true);
        }

        if (0 >= DataManager.Scene_StageListTable.Count)
        {
            return(true);
        }

        IDictionaryEnumerator itr = DataManager.Scene_StageListTable.GetEnumerator();

        while (itr.MoveNext())
        {
            Scene_StageListTableItem item = itr.Value as Scene_StageListTableItem;
            if (null == item)
            {
                return(true);
            }

            if (Item.mZoneid != item.mZoneId)
            {
                continue;
            }

            if (0 == module.GetStagePassTimes(item.mNromalStageId))
            {
                return(true);
            }
        }
//         foreach (DictionaryEntry de in DataManager.Scene_StageListTable)
//         {
//             Scene_StageListTableItem item = de.Value as Scene_StageListTableItem;
//             if (null == item)
//                 return true;
//
//             if (Item.mZoneid != item.mZoneId)
//                 continue;
//
//             if (0 == module.GetStagePassTimes(item.mNromalStageId))
//             {
//                 return true;
//             }
//         }

        return(false);
    }