Example #1
0
    static void ChunksEnterLeaveViewRes(object data)
    {
        CSChunksEnterLeaveViewRes rsp = NetworkManager.Deserialize <CSChunksEnterLeaveViewRes>(data);

        //Debug.Log("CSChunksEnterLeaveViewRes," + rsp.EnterViewChunks.Count + "," + rsp.LeaveViewChunks.Count);
        if (rsp.RetCode == 0)
        {
            foreach (CSVector2Int csv in rsp.LeaveViewChunks)
            {
                UnloadChunk(csv.x, csv.y);
            }
            foreach (CSChunk cschunk in rsp.EnterViewChunks)
            {
                LoadChunk(cschunk);
            }
            if (!PlayerController.isInitialized)
            {
                PlayerController.Init();
                LocalNavMeshBuilder.Init();
                ChunkRefresher.ForceRefreshAll();
            }
            ChunkChecker.FinishRefresh();
        }
        else
        {
            FastTips.Show(rsp.RetCode);
        }
    }
Example #2
0
 void Update()
 {
     if (PlayerController.isInitialized)
     {
         ChunkChecker.Update();
         ChunkRefresher.Update();
     }
 }
Example #3
0
    void Start()
    {
        ChunkChecker.Init();
        ChunkRefresher.Init();
        ChunkManager.Init();
        ChunkPool.Init();
        OtherPlayerManager.Init();
        ItemSelectPanel.Show();
        ChatPanel.ShowChatPanel();

        List <Vector2Int> preloadChunks = Utilities.GetSurroudingChunks(PlayerController.GetCurrentChunk());

        ChunkManager.ChunksEnterLeaveViewReq(preloadChunks);
    }
Example #4
0
    void Update()
    {
        if (PlayerController.isInitialized)
        {
            ChunkChecker.Update();
            ChunkRefresher.Update();
        }

        Texture2D day = Resources.Load <Texture2D>("GUI/Day");

        Shader.SetGlobalTexture("_DayLightTexture", day);
        Texture2D night = Resources.Load <Texture2D>("GUI/Night");

        Shader.SetGlobalTexture("_NightLightTexture", night);
    }
Example #5
0
 public static void ChunksEnterLeaveViewReq(List <Vector2Int> enterViewChunks, List <Vector2Int> leaveViewChunks = null)
 {
     foreach (Vector2Int chunkPos in enterViewChunks)
     {
         NBTChunk chunk = NBTHelper.LoadChunk(chunkPos.x, chunkPos.y);
         ChunkRefresher.Add(chunk);
     }
     if (leaveViewChunks != null)
     {
         foreach (Vector2Int chunk in leaveViewChunks)
         {
             UnloadChunk(chunk.x, chunk.y);
         }
     }
     ChunkChecker.FinishRefresh();
 }
Example #6
0
    void Start()
    {
        SettingsPanel.Init();
        ChunkRefresher.Init();
        ChunkPool.Init();
        ItemSelectPanel.Show();
        ChatPanel.ShowChatPanel();
        InventorySystem.Init();
        GameModeManager.Init();

        // load chunk here
        ChunkChecker.Init();

        PlayerController.Init();
        LocalNavMeshBuilder.Init();
        ChunkRefresher.ForceRefreshAll();
    }
Example #7
0
    public async static void ChunksEnterLeaveViewReq(List <Vector2Int> enterViewChunks, List <Vector2Int> leaveViewChunks = null)
    {
        List <NBTChunk> chunks = new List <NBTChunk>();

        foreach (Vector2Int chunkPos in enterViewChunks)
        {
            NBTChunk chunk = await NBTHelper.LoadChunkAsync(chunkPos.x, chunkPos.y);

            chunks.Add(chunk);
        }
        ChunkRefresher.Add(chunks);
        ChunkChecker.FinishRefresh();

        if (leaveViewChunks != null)
        {
            foreach (Vector2Int chunk in leaveViewChunks)
            {
                UnloadChunk(chunk.x, chunk.y);
            }
        }
    }