Skip to content

Commit f87218b

Browse files
committed
delete chunk loading dimension conflict
1 parent cdd2bc3 commit f87218b

File tree

6 files changed

+45
-0
lines changed

6 files changed

+45
-0
lines changed

coffee/client/js/World/World.coffee

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -103,6 +103,15 @@ class World
103103
@game.scene.remove @cellMesh[i]
104104
@cellMesh[i]="disposed"
105105
@game.renderer.renderLists.dispose()
106+
resetWorld: ()->
107+
for i of @cellMesh
108+
if @cellMesh[i].geometry isnt undefined
109+
@cellMesh[i].geometry.dispose()
110+
@game.scene.remove @cellMesh[i]
111+
delete @cellMesh[i]
112+
@cellTerrain.cells={}
113+
@_resetWorld()
114+
return
106115
updateCell: (data)->
107116
#Updatowanie komórki z już obliczoną geometrią
108117
cellId=@cellTerrain.vec3 data.info...
@@ -224,6 +233,12 @@ class World
224233
type:"setCell"
225234
data:[cellX,cellY,cellZ,buffer,biome]
226235
}
236+
_resetWorld: ()->
237+
@chunkWorker.postMessage {
238+
type:"resetWorld"
239+
data:null
240+
}
241+
return
227242
_setVoxel: (voxelX,voxelY,voxelZ,value)->
228243
#Wysyłanie do ChunkWorkera informacji o nowym Voxelu
229244
@chunkWorker.postMessage {

coffee/client/js/World/chunk.worker.coffee

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -240,4 +240,8 @@ handlers={
240240
}
241241
setCell: (data)->
242242
terrain.cellTerrain.setCell data[0],data[1],data[2],data[3]
243+
resetWorld: (data)->
244+
console.log "RESET WORLD!"
245+
terrain.cellTerrain.cells={}
246+
return
243247
}

coffee/client/js/index.coffee

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -87,6 +87,7 @@ class Game
8787
"dimension":(dim)->
8888
_this.dimension=dim
8989
console.log "Player dimension has been changed: #{dim}"
90+
_this.world.resetWorld()
9091
return
9192
"mapChunk":(sections,x,z,biomes,dim)->
9293
_this.world._computeSections sections,x,z,biomes,dim

src/client/js/World/World.js

Lines changed: 20 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/client/js/World/chunk.worker.js

Lines changed: 4 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/client/js/index.js

Lines changed: 1 addition & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)