public bool setChunkAtPosition(Vector3 _Position, Chunk.Chunk _Chunk, bool _Loaded) { Chunk.Chunk var_Chunk = this.getChunkAtPosition(_Chunk.Position); if (var_Chunk == null) { /*if (_PosX >= Bounds.Left && _PosX <= Bounds.Right) * { * if (_PosY >= Bounds.Top && _PosY <= Bounds.Bottom) * {*/ int var_X = (int)Math.Abs(_Position.X - this.Position.X) / (Block.Block.BlockSize * Chunk.Chunk.chunkSizeX); int var_Y = (int)Math.Abs(_Position.Y - this.Position.Y) / (Block.Block.BlockSize * Chunk.Chunk.chunkSizeY); int var_Position = (int)(var_X + var_Y * regionSizeX); this.chunks[var_Position] = _Chunk; _Chunk.setNeighbours(); /*if (Configuration.Configuration.isHost || Configuration.Configuration.isSinglePlayer) * { * this.loadAllObjectsFromChunkToQuadTree(_Chunk); * }*/ if (_Loaded) { this.loadAllObjectsFromChunkToQuadTree(_Chunk); } else { } return(true); /* } * }*/ Logger.Logger.LogErr("Region->setChunkAtPosition(...) : Platzierung nicht möglich: PosX " + _Position.X + " PosY " + _Position.Y); return(false); } else { Logger.Logger.LogErr("Region->setChunkAtPosition(...) : Chunk mit Id: " + _Chunk.Id + " schon vorhanden!"); return(false); } }