Exemplo n.º 1
0
    // Start is called before the first frame update
    private IEnumerator Init()
    {
        JobData.Load();
        SkillData.Load();
        EnemyData.Load();
        BattleTileData.Load();
        BattlefieldData.Load();
        BattleGroupData.Load();
        BattleStatusData.Load();
        ItemData.Load();
        EquipData.Load();
        ItemEffectData.Load();
        LanguageData.Load();
        DungeonData.Load();
        RoomData.Load();
        TreasureData.Load();
        ConversationData.Load();
        ShopData.Load();
        DungeonGroupData.Load();
        ExpData.Load();
        NewCookData.Load();

        yield return(new WaitForEndOfFrame());

        InitManager();

        MySceneManager.Instance.Load();

#if UNITY_EDITOR
        DebugCommand.Start();
#endif
    }
Exemplo n.º 2
0
    private void SetData()
    {
        List <DungeonGroupData.RootObject> groupList = DungeonGroupData.GetGroupList(ExploreController.Instance.ArriveFloor);

        //GroupScrollView.SetData(new ArrayList(groupList));
        for (int i = 0; i < MapButtons.Length; i++)
        {
            if (i < groupList.Count)
            {
                MapButtons[i].SetData(groupList[i].Name, groupList[i]);
                MapButtons[i].gameObject.SetActive(true);
            }
            else
            {
                MapButtons[i].gameObject.SetActive(false);
            }
        }

        //等第三關做好之後要改
        if (ExploreController.Instance.ArriveFloor == 13)
        {
            MapButtons[2].SetData("紅魔館", null);
            MapButtons[2].gameObject.SetActive(true);
        }
    }
Exemplo n.º 3
0
    private IEnumerator paint(MapInfo info)
    {
        DungeonGroupData.RootObject data = DungeonGroupData.GetData(info.Group);
        TilePainter.Instance.ClearAll();

        //ground
        for (int i = 0; i < info.MapList.Count; i++)
        {
            TilePainter.Instance.Painting(data.GroundTile, 0, info.MapList[i]);
            if (CheckLoadingCount())
            {
                yield return(null);
            }
        }

        //door
        for (int i = 0; i < info.DoorList.Count; i++)
        {
            TilePainter.Instance.Painting(data.DoorTile, 1, info.DoorList[i]);
        }

        //grass
        for (int i = 0; i < info.GrassList.Count; i++)
        {
            TilePainter.Instance.Painting(data.GrassTile, 0, info.GrassList[i]);
            if (CheckLoadingCount())
            {
                yield return(null);
            }
        }

        //treasure
        foreach (KeyValuePair <Vector2Int, Treasure> item in info.TreasureDic)
        {
            TilePainter.Instance.Painting(item.Value.TileName, 1, item.Key);
        }

        //key
        for (int i = 0; i < info.KeyList.Count; i++)
        {
            TilePainter.Instance.Painting("Key", 1, info.KeyList[i]);
        }

        //explore point
        foreach (KeyValuePair <Vector2Int, Event> item in info.ExploreEventDic)
        {
            TilePainter.Instance.Painting(item.Value.Tile, 1, item.Key);
        }

        //起點
        TilePainter.Instance.Painting("UpStairs", 1, info.Start);

        //終點
        TilePainter.Instance.Painting("DownStairs", 1, info.Goal);

        //Layer 2 是保留給角色的,Mist 蓋在角色上
        TilePainter.Instance.Fill("Mist", 3, info.MapBound.xMin - 15, info.MapBound.yMin - 15, info.MapBound.xMin + info.MapBound.size.x + 15, info.MapBound.yMin + info.MapBound.size.y + 15);
        TilePainter.Instance.Fill(data.WallTile, 4, info.MapBound.xMin - 15, info.MapBound.yMin - 15, info.MapBound.xMin + info.MapBound.size.x + 15, info.MapBound.yMin + info.MapBound.size.y + 15);

        for (int i = 0; i < info.ExploredList.Count; i++)
        {
            TilePainter.Instance.Clear(3, info.ExploredList[i]);
            //if(CheckLoadingCount()) yield return null;
        }

        ExploreController.Instance.SetFloor();
        LoadingUI.Instance.Close();
    }