mirror of
https://github.com/OpenFusionProject/OpenFusion.git
synced 2025-12-31 07:10:07 +00:00
Possible fix for chunking desyncs + CHUNKPOS macro
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
#pragma once
|
||||
|
||||
#include "CNProtocol.hpp"
|
||||
#include "CNStructs.hpp"
|
||||
|
||||
#include <utility>
|
||||
#include <vector>
|
||||
@@ -24,20 +25,20 @@ namespace ChunkManager {
|
||||
void init();
|
||||
void cleanup();
|
||||
|
||||
extern std::map<std::tuple<int, int, uint64_t>, Chunk*> chunks;
|
||||
extern std::map<CHUNKPOS, Chunk*> chunks;
|
||||
|
||||
void newChunk(std::tuple<int, int, uint64_t> pos);
|
||||
void populateNewChunk(Chunk* chunk, std::tuple<int, int, uint64_t> pos);
|
||||
void newChunk(CHUNKPOS pos);
|
||||
void populateNewChunk(Chunk* chunk, CHUNKPOS pos);
|
||||
void addNPC(int posX, int posY, uint64_t instanceID, int32_t id);
|
||||
void addPlayer(int posX, int posY, uint64_t instanceID, CNSocket* sock);
|
||||
bool removePlayer(std::tuple<int, int, uint64_t> chunkPos, CNSocket* sock);
|
||||
bool removeNPC(std::tuple<int, int, uint64_t> chunkPos, int32_t id);
|
||||
bool checkChunk(std::tuple<int, int, uint64_t> chunk);
|
||||
void destroyChunk(std::tuple<int, int, uint64_t> chunkPos);
|
||||
std::tuple<int, int, uint64_t> grabChunk(int posX, int posY, uint64_t instanceID);
|
||||
std::vector<Chunk*> grabChunks(std::tuple<int, int, uint64_t> chunkPos);
|
||||
bool removePlayer(CHUNKPOS chunkPos, CNSocket* sock);
|
||||
bool removeNPC(CHUNKPOS chunkPos, int32_t id);
|
||||
bool checkChunk(CHUNKPOS chunk);
|
||||
void destroyChunk(CHUNKPOS chunkPos);
|
||||
CHUNKPOS grabChunk(int posX, int posY, uint64_t instanceID);
|
||||
std::vector<Chunk*> grabChunks(CHUNKPOS chunkPos);
|
||||
std::vector<Chunk*> getDeltaChunks(std::vector<Chunk*> from, std::vector<Chunk*> to);
|
||||
std::vector<std::tuple<int, int, uint64_t>> getChunksInMap(uint64_t mapNum);
|
||||
std::vector<CHUNKPOS> getChunksInMap(uint64_t mapNum);
|
||||
bool inPopulatedChunks(int posX, int posY, uint64_t instanceID);
|
||||
|
||||
void createInstance(uint64_t);
|
||||
|
||||
Reference in New Issue
Block a user