@divinevoxel/vlox 0.0.4 → 0.0.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (662) hide show
  1. package/Cache/Cache.types.d.ts +3 -3
  2. package/Contexts/Base/Main/DataGenerator.types.d.ts +5 -0
  3. package/Contexts/Base/Main/{Generator/InitDataGenerator.d.ts → InitDataGenerator.d.ts} +1 -1
  4. package/Contexts/Base/Main/InitDataGenerator.js +19 -0
  5. package/Contexts/Base/Remote/DataSync.types.d.ts +18 -0
  6. package/Contexts/Base/Remote/InitDataSync.js +42 -0
  7. package/Contexts/Base/Remote/InitWorldDataSync.js +19 -0
  8. package/Contexts/Base/ThreadManager.d.ts +6 -11
  9. package/Contexts/Base/ThreadManager.js +31 -30
  10. package/Contexts/Constructor/DivineVoxelEngineConstructor.d.ts +0 -2
  11. package/Contexts/Constructor/DivineVoxelEngineConstructor.js +0 -2
  12. package/Contexts/Nexus/DivineVoxelEngineNexus.d.ts +0 -2
  13. package/Contexts/Nexus/DivineVoxelEngineNexus.js +0 -6
  14. package/Contexts/Nexus/NexusTheads.js +1 -4
  15. package/Contexts/Render/DVERenderThreads.d.ts +0 -3
  16. package/Contexts/Render/DVERenderThreads.js +1 -7
  17. package/Contexts/Render/DivineVoxelEngineRender.d.ts +28 -9
  18. package/Contexts/Render/DivineVoxelEngineRender.js +2 -4
  19. package/Contexts/World/DivineVoxelEngineWorld.d.ts +28 -10
  20. package/Contexts/World/DivineVoxelEngineWorld.js +0 -26
  21. package/Contexts/World/WorldThreads.d.ts +1 -2
  22. package/Contexts/World/WorldThreads.js +1 -4
  23. package/Data/Cursor/{Interfaces/DataCursor.interface.d.ts → DataCursor.interface.d.ts} +1 -1
  24. package/Data/Structs/{Builder/StructBuilder.d.ts → StructBuilder.d.ts} +5 -3
  25. package/Init/StartConstructor.js +23 -19
  26. package/Init/StartNexus.js +12 -9
  27. package/Init/StartRenderer.d.ts +2 -12
  28. package/Init/StartRenderer.js +22 -45
  29. package/Init/StartWorld.d.ts +4 -1
  30. package/Init/StartWorld.js +22 -97
  31. package/Math/Indexing.d.ts +12 -0
  32. package/Math/Indexing.js +58 -0
  33. package/Math/index.d.ts +8 -11
  34. package/Math/index.js +2 -11
  35. package/Mesher/Functions/CompactMesh.d.ts +2 -3
  36. package/Mesher/Functions/CompactMesh.js +36 -31
  37. package/Mesher/Functions/CompactVoxelMesh.d.ts +1 -1
  38. package/Mesher/Functions/CompactVoxelMesh.js +82 -107
  39. package/Mesher/Functions/MeshSection.d.ts +3 -0
  40. package/Mesher/Functions/MeshSection.js +113 -0
  41. package/Mesher/Functions/MeshTexture.d.ts +1 -0
  42. package/Mesher/Functions/MeshTexture.js +275 -0
  43. package/Mesher/Functions/MeshVoxel.d.ts +3 -0
  44. package/Mesher/Functions/MeshVoxel.js +43 -0
  45. package/Mesher/Geomtry/Geometry.types.d.ts +11 -0
  46. package/Mesher/Geomtry/Geometry.types.js +13 -0
  47. package/Mesher/Geomtry/GeometryNormals.d.ts +10 -0
  48. package/Mesher/Geomtry/GeometryNormals.js +52 -0
  49. package/Mesher/Geomtry/Mesh.d.ts +11 -0
  50. package/Mesher/Geomtry/Mesh.js +23 -0
  51. package/Mesher/Geomtry/MeshData.types.d.ts +13 -0
  52. package/Mesher/Geomtry/MeshData.types.js +6 -0
  53. package/Mesher/Geomtry/Primitives/Quad.d.ts +38 -0
  54. package/Mesher/Geomtry/Primitives/Quad.js +224 -0
  55. package/Mesher/Geomtry/Primitives/QuadVertexData.d.ts +66 -0
  56. package/Mesher/Geomtry/Primitives/QuadVertexData.js +349 -0
  57. package/Mesher/Geomtry/Primitives/index.d.ts +2 -0
  58. package/Mesher/Geomtry/Primitives/index.js +2 -0
  59. package/Mesher/Geomtry/Tools/MesherDataTools.d.ts +7 -0
  60. package/Mesher/Geomtry/Tools/MesherDataTools.js +12 -0
  61. package/Mesher/Geomtry/Tools/index.d.ts +1 -0
  62. package/Mesher/Geomtry/Tools/index.js +1 -0
  63. package/Mesher/Geomtry/VoxelGeometryBuilder.d.ts +6 -0
  64. package/Mesher/Geomtry/VoxelGeometryBuilder.js +242 -0
  65. package/Mesher/Geomtry/index.d.ts +2 -0
  66. package/Mesher/Geomtry/index.js +2 -0
  67. package/Mesher/InitMesher.d.ts +2 -0
  68. package/Mesher/InitMesher.js +23 -0
  69. package/Mesher/InitTask.d.ts +2 -0
  70. package/Mesher/InitTask.js +44 -0
  71. package/Mesher/Models/Common/BoxGeometryNode.d.ts +2 -2
  72. package/Mesher/Models/Common/BoxGeometryNode.js +61 -56
  73. package/Mesher/Models/Common/Calc/CalcConstants.d.ts +2 -2
  74. package/Mesher/Models/Common/Calc/CalcConstants.js +8 -7
  75. package/Mesher/Models/Common/Calc/FaceDataCalc.js +5 -4
  76. package/Mesher/Models/Common/QuadGeometryNode.d.ts +2 -2
  77. package/Mesher/Models/Common/QuadGeometryNode.js +1 -1
  78. package/Mesher/Models/Nodes/Custom/Liquid/FlowGradient.d.ts +10 -5
  79. package/Mesher/Models/Nodes/Custom/Liquid/FlowGradient.js +148 -57
  80. package/Mesher/Models/Nodes/Custom/Liquid/LiquidGeomtryNode.d.ts +1 -1
  81. package/Mesher/Models/Nodes/Custom/Liquid/LiquidGeomtryNode.js +59 -116
  82. package/Mesher/Models/Nodes/GeometryNode.d.ts +1 -1
  83. package/Mesher/Models/Nodes/Ruled/BoxVoxelGeometryNode.d.ts +4 -2
  84. package/Mesher/Models/Nodes/Ruled/BoxVoxelGeometryNode.js +9 -8
  85. package/Mesher/Models/Nodes/Ruled/QuadVoxelGeometryNode.d.ts +4 -2
  86. package/Mesher/Models/Nodes/Ruled/QuadVoxelGeometryNode.js +9 -8
  87. package/Mesher/Models/Nodes/Ruleless/RulelessBoxVoxelGeometryNode.d.ts +10 -3
  88. package/Mesher/Models/Nodes/Ruleless/RulelessBoxVoxelGeometryNode.js +9 -8
  89. package/Mesher/Models/Nodes/Ruleless/RulelessQuadVoxelGeometryNode.d.ts +4 -2
  90. package/Mesher/Models/Nodes/Ruleless/RulelessQuadVoxelGeometryNode.js +9 -8
  91. package/Mesher/Models/Nodes/VoxelGeometryConstructor.d.ts +2 -2
  92. package/Mesher/Models/Nodes/VoxelGeometryConstructor.js +1 -1
  93. package/Mesher/Models/VoxelConstructor.d.ts +3 -3
  94. package/Mesher/Models/VoxelConstructor.js +1 -1
  95. package/Mesher/Models/VoxelGeometryLookUp.d.ts +2 -2
  96. package/Mesher/Models/VoxelGeometryLookUp.js +2 -2
  97. package/Mesher/Models/VoxelModelConstructorRegister.d.ts +4 -4
  98. package/Mesher/Models/VoxelModelConstructorRegister.js +1 -1
  99. package/Mesher/RenderedMaterials.d.ts +6 -0
  100. package/Mesher/RenderedMaterials.js +12 -0
  101. package/Mesher/Tools/OutlinedVoxelTool.d.ts +2 -11
  102. package/Mesher/Tools/OutlinedVoxelTool.js +69 -39
  103. package/Mesher/Tools/VoxelMeshBVHBuilder.d.ts +1 -1
  104. package/Mesher/Tools/VoxelMeshBVHBuilder.js +3 -3
  105. package/Mesher/Tools/VoxelMeshVertexStructCursor.d.ts +1 -1
  106. package/Mesher/Tools/VoxelMesherDataTool.d.ts +23 -17
  107. package/Mesher/Tools/VoxelMesherDataTool.js +28 -61
  108. package/Mesher/Types/Mesher.types.d.ts +8 -12
  109. package/Models/Defaults/CubeVoxelModels.js +26 -26
  110. package/Models/Defaults/PanelVoxelModels.js +24 -24
  111. package/Models/Input/BoxVoxelGometryInputs.d.ts +5 -3
  112. package/Models/Input/BoxVoxelGometryInputs.js +5 -5
  113. package/Models/Input/QuadVoxelGometryInputs.d.ts +1 -1
  114. package/Models/Rules/Classes/OcclusionFace.js +1 -1
  115. package/Models/Rules/Classes/VoxelRulesGeometry.d.ts +3 -3
  116. package/Models/Rules/Functions/BuildGeomtryInputs.js +44 -37
  117. package/Models/Rules/Functions/GetOcclusionFaces.d.ts +2 -2
  118. package/Models/Rules/Functions/GetOcclusionFaces.js +1 -1
  119. package/Models/Shared/Transform.d.ts +2 -2
  120. package/Models/Shared/Transform.js +4 -6
  121. package/Models/VoxelModel.types.d.ts +1 -1
  122. package/Renderer/Classes/DVESectionMeshInterface.d.ts +3 -0
  123. package/Renderer/Classes/DVESectionMeshes.d.ts +6 -0
  124. package/Renderer/Classes/DVESectionMeshes.js +2 -0
  125. package/Renderer/Classes/SectionMesh.d.ts +13 -0
  126. package/Renderer/Classes/SectionMesh.js +26 -0
  127. package/Renderer/Classes/SectorMesh.d.ts +11 -0
  128. package/Renderer/Classes/SectorMesh.js +33 -0
  129. package/Renderer/DVERenderNode.types.d.ts +1 -1
  130. package/Renderer/DVERenderer.d.ts +2 -2
  131. package/Renderer/InitTasks.d.ts +2 -0
  132. package/Renderer/InitTasks.js +19 -0
  133. package/Renderer/MeshManager.d.ts +5 -7
  134. package/Renderer/MeshManager.js +27 -52
  135. package/Renderer/MeshRegister.d.ts +14 -27
  136. package/Renderer/MeshRegister.js +38 -164
  137. package/Renderer/Renderer.types.d.ts +21 -0
  138. package/Renderer/index.d.ts +4 -0
  139. package/Renderer/index.js +4 -0
  140. package/Settings/EngineSettings.d.ts +19 -21
  141. package/Settings/EngineSettings.js +15 -43
  142. package/Settings/EngineSettings.types.d.ts +8 -35
  143. package/Settings/EngineSettings.types.js +8 -35
  144. package/Tasks/IWG/IWG.d.ts +25 -0
  145. package/Tasks/IWG/IWG.js +89 -0
  146. package/Tasks/IWG/Internal/Classes/DimensionSegment.d.ts +37 -0
  147. package/Tasks/IWG/Internal/Classes/DimensionSegment.js +67 -0
  148. package/Tasks/IWG/Internal/Classes/Generator.d.ts +27 -0
  149. package/Tasks/IWG/Internal/Classes/Generator.js +41 -0
  150. package/Tasks/IWG/Internal/Classes/IWGTaskBase.d.ts +15 -0
  151. package/Tasks/IWG/Internal/Classes/IWGTaskBase.js +62 -0
  152. package/Tasks/IWG/Internal/Classes/SectorState.d.ts +11 -0
  153. package/Tasks/IWG/Internal/Classes/SectorState.js +20 -0
  154. package/Tasks/IWG/Internal/Classes/SectorVisistedMap.d.ts +9 -0
  155. package/Tasks/IWG/Internal/Classes/SectorVisistedMap.js +24 -0
  156. package/Tasks/IWG/Internal/Functions/cullSectors.d.ts +2 -0
  157. package/Tasks/IWG/Internal/Functions/cullSectors.js +112 -0
  158. package/Tasks/IWG/Internal/Functions/getSectorState.d.ts +4 -0
  159. package/Tasks/IWG/Internal/Functions/getSectorState.js +42 -0
  160. package/Tasks/IWG/Internal/Functions/runBuildUpdate.d.ts +2 -0
  161. package/Tasks/IWG/Internal/Functions/runBuildUpdate.js +52 -0
  162. package/Tasks/IWG/Internal/Functions/runWorldUpdate.d.ts +2 -0
  163. package/Tasks/IWG/Internal/Functions/runWorldUpdate.js +71 -0
  164. package/Tasks/IWG/Internal/IWGDimensions.d.ts +6 -0
  165. package/Tasks/IWG/Internal/IWGDimensions.js +17 -0
  166. package/Tasks/IWG/Internal/IWGTasks.d.ts +34 -0
  167. package/Tasks/IWG/Internal/IWGTasks.js +154 -0
  168. package/Tasks/IWG/Internal/IWGTools.d.ts +8 -0
  169. package/Tasks/IWG/Internal/IWGTools.js +5 -0
  170. package/Tasks/IWG/Internal/TaskRegister.d.ts +7 -0
  171. package/Tasks/IWG/Internal/TaskRegister.js +14 -0
  172. package/Tasks/IWG/Procedures/InitalLoad.d.ts +10 -0
  173. package/Tasks/IWG/Procedures/InitalLoad.js +53 -0
  174. package/Tasks/IWG/Procedures/SaveAllSectors.d.ts +5 -0
  175. package/Tasks/IWG/Procedures/SaveAllSectors.js +20 -0
  176. package/Tasks/IWG/index.d.ts +2 -1
  177. package/Tasks/IWG/index.js +2 -1
  178. package/Tasks/Propagation/Explosion/ExplosionManager.js +26 -26
  179. package/Tasks/Propagation/Flow/FlowManager.d.ts +9 -51
  180. package/Tasks/Propagation/Flow/FlowManager.js +96 -108
  181. package/Tasks/Propagation/Flow/{Functions/FlowRemove.d.ts → FlowRemove.d.ts} +1 -1
  182. package/Tasks/Propagation/Flow/FlowRemove.js +157 -0
  183. package/Tasks/Propagation/Flow/{Functions/FlowUpdate.d.ts → FlowUpdate.d.ts} +1 -1
  184. package/Tasks/Propagation/Flow/FlowUpdate.js +98 -0
  185. package/Tasks/Propagation/Flow/WorldFlow.d.ts +2 -0
  186. package/Tasks/Propagation/Flow/WorldFlow.js +153 -0
  187. package/Tasks/Propagation/Illumanation/CommonFunctions.d.ts +104 -0
  188. package/Tasks/Propagation/Illumanation/CommonFunctions.js +280 -0
  189. package/Tasks/Propagation/Illumanation/{Functions/RGBUpdate.d.ts → RGBUpdate.d.ts} +1 -1
  190. package/Tasks/Propagation/Illumanation/{Functions/RGBUpdate.js → RGBUpdate.js} +8 -8
  191. package/Tasks/Propagation/Illumanation/{Functions/SunUpdate.d.ts → SunUpdate.d.ts} +1 -1
  192. package/Tasks/Propagation/Illumanation/{Functions/SunUpdate.js → SunUpdate.js} +11 -11
  193. package/Tasks/Propagation/Illumanation/WorldRGB.d.ts +2 -0
  194. package/Tasks/Propagation/Illumanation/WorldRGB.js +44 -0
  195. package/Tasks/Propagation/Illumanation/WorldSun.d.ts +2 -0
  196. package/Tasks/Propagation/Illumanation/WorldSun.js +119 -0
  197. package/Tasks/Propagation/InitTasks.js +32 -16
  198. package/Tasks/Propagation/index.d.ts +2 -1
  199. package/Tasks/Propagation/index.js +2 -1
  200. package/Tasks/Tasks.types.d.ts +6 -77
  201. package/Tasks/TasksIds.d.ts +3 -3
  202. package/Tasks/TasksIds.js +3 -3
  203. package/Tasks/Update/InitTasks.js +9 -24
  204. package/Tasks/Update/UpdateTask.d.ts +2 -2
  205. package/Tasks/Update/UpdateTask.js +18 -17
  206. package/Tasks/Update/VoxelUpdate.d.ts +3 -2
  207. package/Tasks/Update/VoxelUpdate.js +23 -19
  208. package/Tasks/WorldGeneration/InitTasks.js +2 -10
  209. package/Tasks/WorldGeneration/WorldGenBrush.d.ts +3 -3
  210. package/Tasks/WorldGeneration/WorldGenBrush.js +20 -27
  211. package/Tasks/WorldGeneration/WorldGenRegister.d.ts +2 -2
  212. package/Tasks/WorldGeneration/WorldGenRegister.js +30 -40
  213. package/Tasks/WorldGeneration/WorldGeneration.d.ts +1 -1
  214. package/Tasks/WorldGeneration/WorldGeneration.js +15 -11
  215. package/{Data/Cursor/Template → Templates/Cursor}/TemplateCursor.d.ts +1 -1
  216. package/{Data/Cursor/Template → Templates/Cursor}/TemplateCursor.js +1 -1
  217. package/{Data/Cursor/Template → Templates/Cursor}/TemplateVoxelCursor.d.ts +2 -1
  218. package/{Data/Cursor/Template → Templates/Cursor}/TemplateVoxelCursor.js +4 -1
  219. package/Templates/FullVoxelTemplate.d.ts +1 -0
  220. package/Templates/FullVoxelTemplate.js +14 -7
  221. package/Templates/Functions/CreateTemplate.js +58 -37
  222. package/Templates/Functions/FlipTemplate.js +4 -0
  223. package/Templates/Functions/RotateTemplate.js +4 -0
  224. package/Templates/VoxelTemplate.d.ts +5 -2
  225. package/Templates/VoxelTemplate.js +33 -18
  226. package/Templates/VoxelTemplates.types.d.ts +5 -7
  227. package/Textures/Texture.types.d.ts +1 -0
  228. package/Textures/TextureManager.d.ts +4 -5
  229. package/Textures/TextureManager.js +3 -1
  230. package/Textures/TextureRegister.d.ts +9 -10
  231. package/Textures/TextureRegister.js +12 -12
  232. package/Textures/index.d.ts +1 -0
  233. package/Textures/index.js +1 -0
  234. package/Tools/Brush/AdvancedBrushTool.d.ts +2 -1
  235. package/Tools/Brush/AdvancedBrushTool.js +12 -15
  236. package/Tools/Brush/Brush.d.ts +4 -4
  237. package/Tools/Brush/Brush.js +22 -22
  238. package/Tools/Data/SubstanceDataTool.d.ts +2 -1
  239. package/Tools/Data/SubstanceDataTool.js +6 -5
  240. package/Tools/Tasks/TasksTool.d.ts +43 -88
  241. package/Tools/Tasks/TasksTool.js +97 -212
  242. package/Util/BinaryObject.d.ts +2 -0
  243. package/Util/BinaryObject.js +14 -0
  244. package/Util/Environment.d.ts +4 -0
  245. package/Util/Environment.js +10 -0
  246. package/Util/TypedEventTarget.d.ts +5 -0
  247. package/Util/TypedEventTarget.js +12 -0
  248. package/Util/Util.types.d.ts +0 -2
  249. package/{Data → Voxels}/Cursor/VoxelCursor.d.ts +3 -3
  250. package/{Data/Cursor/Interfaces → Voxels/Cursor}/VoxelCursor.interface.d.ts +14 -7
  251. package/{Data/Cursor/Interfaces → Voxels/Cursor}/VoxelCursor.interface.js +57 -44
  252. package/{Data → Voxels}/Cursor/VoxelCursor.js +7 -8
  253. package/Voxels/Cursor/VoxelLightData.d.ts +45 -0
  254. package/Voxels/Cursor/VoxelLightData.js +146 -0
  255. package/Voxels/Effects/VoxelEffect.d.ts +4 -4
  256. package/Voxels/Functions/BuildStateData.js +1 -1
  257. package/Voxels/Indexes/VoxelIndex.d.ts +2 -2
  258. package/Voxels/Indexes/VoxelIndex.js +6 -6
  259. package/Voxels/InitVoxelData.d.ts +7 -3
  260. package/Voxels/InitVoxelData.js +182 -29
  261. package/Voxels/Segments/MaterialDataGenerator.d.ts +6 -0
  262. package/{Contexts/Base/Main/Generator → Voxels}/Segments/MaterialDataGenerator.js +2 -2
  263. package/Voxels/Segments/SubstanceDataGenerator.d.ts +6 -0
  264. package/{Contexts/Base/Main/Generator → Voxels}/Segments/SubstanceDataGenerator.js +4 -4
  265. package/{Contexts/Base/Main/Generator → Voxels}/Segments/VoxelDataGenerator.d.ts +2 -2
  266. package/{Contexts/Base/Main/Generator → Voxels}/Segments/VoxelDataGenerator.js +4 -5
  267. package/Voxels/State/LogicStatementReader.js +1 -1
  268. package/Voxels/State/Schema/BinarySchema.d.ts +4 -0
  269. package/Voxels/State/Schema/BinarySchema.js +32 -1
  270. package/Voxels/State/Schema/StateSchema.d.ts +2 -2
  271. package/Voxels/State/Schema/VoxelSchema.d.ts +4 -4
  272. package/Voxels/State/Schema/VoxelSchema.js +6 -6
  273. package/Voxels/State/SchemaRegister.d.ts +4 -3
  274. package/Voxels/State/SchemaRegister.js +5 -2
  275. package/Voxels/State/VoxelTagStates.js +1 -1
  276. package/Voxels/Structs/Builder/SubstanceStructBuilder.d.ts +2 -0
  277. package/{Data → Voxels}/Structs/Builder/SubstanceStructBuilder.js +2 -2
  278. package/Voxels/Structs/Builder/VoxelStructBuilder.d.ts +2 -0
  279. package/{Data → Voxels}/Structs/Builder/VoxelStructBuilder.js +2 -7
  280. package/{Data → Voxels}/Structs/SubstanceStruct.d.ts +2 -1
  281. package/{Data → Voxels}/Structs/SubstanceStruct.js +2 -4
  282. package/{Data → Voxels}/Structs/VoxelStruct.d.ts +2 -2
  283. package/{Data → Voxels}/Structs/VoxelStruct.js +1 -1
  284. package/Voxels/{Voxel.types.d.ts → Types/Voxel.types.d.ts} +18 -7
  285. package/Voxels/{Voxel.types.js → Types/Voxel.types.js} +19 -1
  286. package/Voxels/Types/VoxelModelCompiledData.types.d.ts +93 -0
  287. package/Voxels/index.d.ts +3 -3
  288. package/Voxels/index.js +3 -3
  289. package/World/Archive/Archive.types.d.ts +159 -0
  290. package/World/Archive/Functions/ArchiveArea.d.ts +10 -0
  291. package/World/Archive/Functions/ArchiveArea.js +350 -0
  292. package/World/Archive/Functions/ArchiveSector.d.ts +7 -0
  293. package/World/Archive/Functions/ArchiveSector.js +355 -0
  294. package/World/Archive/Functions/ImportSector.d.ts +9 -0
  295. package/World/Archive/Functions/ImportSector.js +234 -0
  296. package/World/Archive/Functions/index.d.ts +3 -0
  297. package/World/Archive/Functions/index.js +3 -0
  298. package/World/Archive/InitTasks.d.ts +4 -0
  299. package/World/Archive/InitTasks.js +71 -0
  300. package/World/Cursor/SectionCursor.d.ts +16 -0
  301. package/World/Cursor/SectionCursor.js +58 -0
  302. package/{Data/Cursor/World/ColumnCursor.d.ts → World/Cursor/SectorCursor.d.ts} +8 -7
  303. package/World/Cursor/SectorCursor.js +58 -0
  304. package/{Data/Cursor/World → World/Cursor}/WorldCursor.d.ts +4 -4
  305. package/World/Cursor/WorldCursor.js +52 -0
  306. package/{Data/Cursor/World → World/Cursor}/WorldSectionCursor.interface.d.ts +2 -2
  307. package/{Data/Cursor/World → World/Cursor}/WorldVoxelCursor.d.ts +3 -2
  308. package/World/Cursor/WorldVoxelCursor.js +58 -0
  309. package/{Data/World/Classes → World/Dimension}/Dimension.d.ts +5 -5
  310. package/World/Dimension/Dimension.js +20 -0
  311. package/World/InitTasks.d.ts +6 -0
  312. package/World/InitTasks.js +97 -0
  313. package/World/Lock/WorldLock.d.ts +11 -0
  314. package/{Contexts/World → World}/Lock/WorldLock.js +34 -37
  315. package/World/Section/Section.d.ts +34 -0
  316. package/World/Section/Section.js +89 -0
  317. package/World/Section/SectionHeightMap.d.ts +10 -0
  318. package/World/Section/SectionHeightMap.js +39 -0
  319. package/World/Section/SectionStruct.d.ts +8 -0
  320. package/World/Section/SectionStruct.js +29 -0
  321. package/{Data/Structs/Constants/ChunkStructProperties.d.ts → World/Section/SectionStructProperties.d.ts} +1 -1
  322. package/World/Section/SectionStructProperties.js +11 -0
  323. package/World/Section/index.d.ts +1 -0
  324. package/World/Section/index.js +1 -0
  325. package/World/Sector/Sector.d.ts +23 -0
  326. package/World/Sector/Sector.js +60 -0
  327. package/World/Sector/SectorHeightMap.d.ts +5 -0
  328. package/World/Sector/SectorHeightMap.js +49 -0
  329. package/World/Sector/SectorStruct.d.ts +1 -0
  330. package/World/Sector/SectorStruct.js +46 -0
  331. package/World/Sector/SectorStructIds.d.ts +13 -0
  332. package/World/Sector/SectorStructIds.js +14 -0
  333. package/World/Sector/index.d.ts +1 -0
  334. package/World/Sector/index.js +1 -0
  335. package/World/Storage/WorldStorage.interface.d.ts +6 -0
  336. package/{Data/Types/RichWorldData.types.d.ts → World/Types/WorldData.types.d.ts} +11 -2
  337. package/World/Types/WorldDataSyncIds.d.ts +6 -0
  338. package/World/Types/WorldDataSyncIds.js +7 -0
  339. package/{Data/World → World}/WorldBounds.js +4 -0
  340. package/World/WorldRegister.d.ts +35 -0
  341. package/World/WorldRegister.js +91 -0
  342. package/World/WorldSpaces.d.ts +34 -0
  343. package/World/WorldSpaces.js +96 -0
  344. package/World/index.d.ts +4 -0
  345. package/World/index.js +4 -0
  346. package/index.d.ts +1 -1
  347. package/index.js +1 -1
  348. package/package.json +2 -7
  349. package/Archive/Archive.types.d.ts +0 -176
  350. package/Archive/Functions/ArchiveArea.d.ts +0 -10
  351. package/Archive/Functions/ArchiveArea.js +0 -315
  352. package/Archive/Functions/ArchiveColumn.d.ts +0 -8
  353. package/Archive/Functions/ArchiveColumn.js +0 -293
  354. package/Archive/Functions/ImportColumn.d.ts +0 -9
  355. package/Archive/Functions/ImportColumn.js +0 -213
  356. package/Archive/Functions/index.d.ts +0 -3
  357. package/Archive/Functions/index.js +0 -3
  358. package/Contexts/Base/DataHooks.d.ts +0 -51
  359. package/Contexts/Base/DataHooks.js +0 -29
  360. package/Contexts/Base/Main/Generator/DataGenerator.types.d.ts +0 -12
  361. package/Contexts/Base/Main/Generator/InitDataGenerator.js +0 -201
  362. package/Contexts/Base/Main/Generator/Segments/MaterialDataGenerator.d.ts +0 -6
  363. package/Contexts/Base/Main/Generator/Segments/SubstanceDataGenerator.d.ts +0 -6
  364. package/Contexts/Base/Remote/Sync/DataSync.types.d.ts +0 -34
  365. package/Contexts/Base/Remote/Sync/InitDataSync.js +0 -43
  366. package/Contexts/Base/Remote/Sync/InitWorldDataSync.js +0 -37
  367. package/Contexts/Constructor/Tasks/ConstructorRemoteThreadTasks.d.ts +0 -7
  368. package/Contexts/Constructor/Tasks/ConstructorRemoteThreadTasks.js +0 -8
  369. package/Contexts/Constructor/Tasks/DVEConstructorTasksQueues.d.ts +0 -27
  370. package/Contexts/Constructor/Tasks/DVEConstructorTasksQueues.js +0 -72
  371. package/Contexts/Render/Scene/MeshRegister.d.ts +0 -39
  372. package/Contexts/Render/Scene/MeshRegister.js +0 -218
  373. package/Contexts/Render/Tasks/RenderTasks.d.ts +0 -7
  374. package/Contexts/Render/Tasks/RenderTasks.js +0 -20
  375. package/Contexts/Render/Tasks/RenderTasks.types.d.ts +0 -21
  376. package/Contexts/World/Data/DataSync.d.ts +0 -29
  377. package/Contexts/World/Data/DataSync.js +0 -110
  378. package/Contexts/World/Data/DataSyncNode.d.ts +0 -28
  379. package/Contexts/World/Data/DataSyncNode.js +0 -54
  380. package/Contexts/World/Lock/WorldLock.d.ts +0 -12
  381. package/Contexts/World/Tasks/WorldTasks.d.ts +0 -11
  382. package/Contexts/World/Tasks/WorldTasks.js +0 -104
  383. package/Data/Constants/DVEFDataSyncIds.d.ts +0 -12
  384. package/Data/Constants/DVEFDataSyncIds.js +0 -13
  385. package/Data/Constants/DataHeaders.d.ts +0 -6
  386. package/Data/Constants/DataHeaders.js +0 -6
  387. package/Data/Cursor/World/ChunkCursor.d.ts +0 -16
  388. package/Data/Cursor/World/ChunkCursor.js +0 -59
  389. package/Data/Cursor/World/ColumnCursor.js +0 -57
  390. package/Data/Cursor/World/WorldCursor.js +0 -50
  391. package/Data/Cursor/World/WorldVoxelCursor.js +0 -55
  392. package/Data/Structs/Builder/SubstanceStructBuilder.d.ts +0 -2
  393. package/Data/Structs/Builder/VoxelStructBuilder.d.ts +0 -2
  394. package/Data/Structs/ChunkStruct.d.ts +0 -1
  395. package/Data/Structs/ChunkStruct.js +0 -29
  396. package/Data/Structs/ColumnStruct.d.ts +0 -1
  397. package/Data/Structs/ColumnStruct.js +0 -45
  398. package/Data/Structs/Constants/ChunkStructProperties.js +0 -11
  399. package/Data/Structs/Constants/SubstanceStructIds.d.ts +0 -0
  400. package/Data/Structs/Constants/SubstanceStructIds.js +0 -1
  401. package/Data/Structs/RegionStruct.d.ts +0 -3
  402. package/Data/Structs/RegionStruct.js +0 -50
  403. package/Data/Types/DimensionData.types.d.ts +0 -9
  404. package/Data/Types/WorldData.types.d.ts +0 -10
  405. package/Data/Types/WorldData.types.js +0 -19
  406. package/Data/World/Classes/Chunk.d.ts +0 -26
  407. package/Data/World/Classes/Chunk.js +0 -75
  408. package/Data/World/Classes/Column.d.ts +0 -19
  409. package/Data/World/Classes/Column.js +0 -35
  410. package/Data/World/Classes/Dimension.js +0 -20
  411. package/Data/World/Classes/Region.d.ts +0 -23
  412. package/Data/World/Classes/Region.js +0 -67
  413. package/Data/World/Classes/index.d.ts +0 -4
  414. package/Data/World/Classes/index.js +0 -4
  415. package/Data/World/DimensionsRegister.d.ts +0 -14
  416. package/Data/World/DimensionsRegister.js +0 -53
  417. package/Data/World/RegionHeaderRegister.d.ts +0 -29
  418. package/Data/World/RegionHeaderRegister.js +0 -56
  419. package/Data/World/WorldPainter.d.ts +0 -12
  420. package/Data/World/WorldPainter.js +0 -56
  421. package/Data/World/WorldRegister.d.ts +0 -51
  422. package/Data/World/WorldRegister.js +0 -228
  423. package/Data/World/WorldRegisterCache.d.ts +0 -23
  424. package/Data/World/WorldRegisterCache.js +0 -68
  425. package/Data/World/WorldSpaces.d.ts +0 -4
  426. package/Data/World/WorldSpaces.js +0 -23
  427. package/Math/Classes/BoundingBox.d.ts +0 -27
  428. package/Math/Classes/BoundingBox.js +0 -44
  429. package/Math/Classes/MatrixArray.d.ts +0 -66
  430. package/Math/Classes/MatrixArray.js +0 -243
  431. package/Math/Classes/Plane.d.ts +0 -22
  432. package/Math/Classes/Plane.js +0 -53
  433. package/Math/Classes/Scalar.d.ts +0 -5
  434. package/Math/Classes/Scalar.js +0 -9
  435. package/Math/Classes/SimpleBoundingBox.d.ts +0 -40
  436. package/Math/Classes/SimpleBoundingBox.js +0 -157
  437. package/Math/Classes/Vector3.d.ts +0 -54
  438. package/Math/Classes/Vector3.js +0 -236
  439. package/Math/Constants/ConstantMartrix.d.ts +0 -3
  440. package/Math/Constants/ConstantMartrix.js +0 -8
  441. package/Math/Constants/Faces.d.ts +0 -5
  442. package/Math/Constants/Faces.js +0 -28
  443. package/Math/Math.types.d.ts +0 -25
  444. package/Math/Objects/CompassDirection.d.ts +0 -9
  445. package/Math/Objects/CompassDirection.js +0 -19
  446. package/Math/Spaces/VoxelSpace.d.ts +0 -32
  447. package/Math/Spaces/VoxelSpace.js +0 -99
  448. package/Math/Spaces/VoxelSpaces.d.ts +0 -50
  449. package/Math/Spaces/VoxelSpaces.js +0 -117
  450. package/Math/Spaces/VoxelSpaces.types.d.ts +0 -6
  451. package/Math/VoxelMath.d.ts +0 -21
  452. package/Math/VoxelMath.js +0 -47
  453. package/Mesher/Geometry/VoxelGeometry.d.ts +0 -7
  454. package/Mesher/Geometry/VoxelGeometry.js +0 -115
  455. package/Mesher/Mesher.d.ts +0 -16
  456. package/Mesher/Mesher.js +0 -44
  457. package/Mesher/Meshers/MesherInterface.d.ts +0 -5
  458. package/Mesher/Meshers/MesherManager.d.ts +0 -7
  459. package/Mesher/Meshers/MesherManager.js +0 -16
  460. package/Mesher/Meshers/TextureMesher.d.ts +0 -15
  461. package/Mesher/Meshers/TextureMesher.js +0 -191
  462. package/Mesher/Meshers/VoxelMesher.d.ts +0 -15
  463. package/Mesher/Meshers/VoxelMesher.js +0 -47
  464. package/Mesher/Processors/ChunkProcessor.d.ts +0 -13
  465. package/Mesher/Processors/ChunkProcessor.js +0 -117
  466. package/Mesher/Substances/RenderedSubstances.d.ts +0 -5
  467. package/Mesher/Substances/RenderedSubstances.js +0 -7
  468. package/Mesher/Tasks/BuidlerTasks.types.d.ts +0 -7
  469. package/Mesher/Tools/VoxelTemplateDataTool.d.ts +0 -15
  470. package/Mesher/Tools/VoxelTemplateDataTool.js +0 -112
  471. package/Renderer/Classes/ChunkMesh.d.ts +0 -10
  472. package/Renderer/Classes/ChunkMesh.js +0 -13
  473. package/Renderer/Classes/MeshRegisterColumn.d.ts +0 -7
  474. package/Renderer/Classes/MeshRegisterColumn.js +0 -7
  475. package/Renderer/Classes/MushRegisterRegion.d.ts +0 -4
  476. package/Renderer/Classes/MushRegisterRegion.js +0 -3
  477. package/Renderer/DVEChunkMeshInterface.d.ts +0 -3
  478. package/Renderer/DVEChunkMeshInterface.js +0 -1
  479. package/Renderer/DVEChunkMeshes.d.ts +0 -6
  480. package/Renderer/DVEChunkMeshes.js +0 -2
  481. package/Tasks/Analyzer/Analyzer.d.ts +0 -19
  482. package/Tasks/Analyzer/Analyzer.js +0 -156
  483. package/Tasks/Analyzer/AnalyzerUpdater.d.ts +0 -10
  484. package/Tasks/Analyzer/AnalyzerUpdater.js +0 -13
  485. package/Tasks/Analyzer/InitTasks.d.ts +0 -1
  486. package/Tasks/Analyzer/InitTasks.js +0 -16
  487. package/Tasks/DataLoader/Broswer/DataHandler.d.ts +0 -20
  488. package/Tasks/DataLoader/Broswer/DataHandler.js +0 -54
  489. package/Tasks/DataLoader/Broswer/WorldDataBase.d.ts +0 -26
  490. package/Tasks/DataLoader/Broswer/WorldDataBase.js +0 -81
  491. package/Tasks/DataLoader/Broswer/WorldDataBaseManager.d.ts +0 -6
  492. package/Tasks/DataLoader/Broswer/WorldDataBaseManager.js +0 -30
  493. package/Tasks/DataLoader/Broswer/WorldDataTool.d.ts +0 -16
  494. package/Tasks/DataLoader/Broswer/WorldDataTool.js +0 -64
  495. package/Tasks/DataLoader/Broswer/index.d.ts +0 -1
  496. package/Tasks/DataLoader/Broswer/index.js +0 -1
  497. package/Tasks/DataLoader/Constructor/DataLoaderTasks.d.ts +0 -2
  498. package/Tasks/DataLoader/Constructor/DataLoaderTasks.js +0 -14
  499. package/Tasks/DataLoader/Constructor/DivineVoxelEngineDataLoaderConstructor.d.ts +0 -9
  500. package/Tasks/DataLoader/Constructor/DivineVoxelEngineDataLoaderConstructor.js +0 -17
  501. package/Tasks/DataLoader/Constructor/WorldDataSerializer.d.ts +0 -15
  502. package/Tasks/DataLoader/Constructor/WorldDataSerializer.js +0 -54
  503. package/Tasks/DataLoader/Constructor/index.d.ts +0 -1
  504. package/Tasks/DataLoader/Constructor/index.js +0 -1
  505. package/Tasks/DataLoader/Node/DivineVoxelEngineData.d.ts +0 -48
  506. package/Tasks/DataLoader/Node/DivineVoxelEngineData.js +0 -47
  507. package/Tasks/DataLoader/Node/System/RegionSystem.d.ts +0 -28
  508. package/Tasks/DataLoader/Node/System/RegionSystem.js +0 -147
  509. package/Tasks/DataLoader/Node/System/System.d.ts +0 -13
  510. package/Tasks/DataLoader/Node/System/System.js +0 -168
  511. package/Tasks/DataLoader/Node/System/SystemPath.d.ts +0 -12
  512. package/Tasks/DataLoader/Node/System/SystemPath.js +0 -29
  513. package/Tasks/DataLoader/Node/Tools/NodeRegionTool.d.ts +0 -28
  514. package/Tasks/DataLoader/Node/Tools/NodeRegionTool.js +0 -134
  515. package/Tasks/DataLoader/Node/Util/DVED.util.d.ts +0 -17
  516. package/Tasks/DataLoader/Node/Util/DVED.util.js +0 -25
  517. package/Tasks/DataLoader/Node/index.d.ts +0 -3
  518. package/Tasks/DataLoader/Node/index.js +0 -3
  519. package/Tasks/DataLoader/Types/DVED.types.d.ts +0 -13
  520. package/Tasks/DataLoader/Types/DVED.types.js +0 -1
  521. package/Tasks/DataLoader/Types/DVEDataHandler.d.ts +0 -17
  522. package/Tasks/DataLoader/Types/DVEDataHandler.js +0 -14
  523. package/Tasks/DataLoader/World/DataHandlerWrapper.d.ts +0 -21
  524. package/Tasks/DataLoader/World/DataHandlerWrapper.js +0 -152
  525. package/Tasks/DataLoader/World/DataLoaderTasks.d.ts +0 -2
  526. package/Tasks/DataLoader/World/DataLoaderTasks.js +0 -70
  527. package/Tasks/DataLoader/World/DivineVoxelEngineDataLoaderWorld.d.ts +0 -12
  528. package/Tasks/DataLoader/World/DivineVoxelEngineDataLoaderWorld.js +0 -17
  529. package/Tasks/DataLoader/World/Tools/DataLoaderTool.d.ts +0 -24
  530. package/Tasks/DataLoader/World/Tools/DataLoaderTool.js +0 -113
  531. package/Tasks/DataLoader/World/Tools/DataSerializerTool.d.ts +0 -8
  532. package/Tasks/DataLoader/World/Tools/DataSerializerTool.js +0 -27
  533. package/Tasks/DataLoader/World/Tools/LoaderRegister.d.ts +0 -9
  534. package/Tasks/DataLoader/World/Tools/LoaderRegister.js +0 -29
  535. package/Tasks/IWG/Constants/ColumnState.d.ts +0 -6
  536. package/Tasks/IWG/Constants/ColumnState.js +0 -7
  537. package/Tasks/IWG/World/Classes/DebouncedTasks.d.ts +0 -16
  538. package/Tasks/IWG/World/Classes/DebouncedTasks.js +0 -34
  539. package/Tasks/IWG/World/Classes/Generator.d.ts +0 -50
  540. package/Tasks/IWG/World/Classes/Generator.js +0 -482
  541. package/Tasks/IWG/World/Classes/Tasks/IWGBatchTask.d.ts +0 -7
  542. package/Tasks/IWG/World/Classes/Tasks/IWGBatchTask.js +0 -35
  543. package/Tasks/IWG/World/Classes/Tasks/IWGSingleTask.d.ts +0 -6
  544. package/Tasks/IWG/World/Classes/Tasks/IWGSingleTask.js +0 -29
  545. package/Tasks/IWG/World/Classes/Tasks/IWGTaskBase.d.ts +0 -27
  546. package/Tasks/IWG/World/Classes/Tasks/IWGTaskBase.js +0 -34
  547. package/Tasks/IWG/World/Classes/Tasks/IWGTaskRegister.d.ts +0 -6
  548. package/Tasks/IWG/World/Classes/Tasks/IWGTaskRegister.js +0 -14
  549. package/Tasks/IWG/World/IWG.d.ts +0 -22
  550. package/Tasks/IWG/World/IWG.js +0 -83
  551. package/Tasks/IWG/World/Load/InitLoad.d.ts +0 -5
  552. package/Tasks/IWG/World/Load/InitLoad.js +0 -17
  553. package/Tasks/IWG/World/Load/LoaderBase.d.ts +0 -16
  554. package/Tasks/IWG/World/Load/LoaderBase.js +0 -57
  555. package/Tasks/IWG/World/Load/SafeExit.d.ts +0 -5
  556. package/Tasks/IWG/World/Load/SafeExit.js +0 -15
  557. package/Tasks/IWG/World/Load/Teleport.d.ts +0 -9
  558. package/Tasks/IWG/World/Load/Teleport.js +0 -26
  559. package/Tasks/IWG/World/Tasks/RegisterDefaultTasks.d.ts +0 -1
  560. package/Tasks/IWG/World/Tasks/RegisterDefaultTasks.js +0 -12
  561. package/Tasks/IWG/World/Tasks/Rendering/IWGBuildTasks.d.ts +0 -8
  562. package/Tasks/IWG/World/Tasks/Rendering/IWGBuildTasks.js +0 -26
  563. package/Tasks/IWG/World/Tasks/Saving/IWGSaveAndUnloadTasks.d.ts +0 -8
  564. package/Tasks/IWG/World/Tasks/Saving/IWGSaveAndUnloadTasks.js +0 -22
  565. package/Tasks/IWG/World/Tasks/Saving/IWGSaveTasks.d.ts +0 -8
  566. package/Tasks/IWG/World/Tasks/Saving/IWGSaveTasks.js +0 -22
  567. package/Tasks/IWG/World/Tasks/WorldGen/IWGDecorateTasks.d.ts +0 -8
  568. package/Tasks/IWG/World/Tasks/WorldGen/IWGDecorateTasks.js +0 -29
  569. package/Tasks/IWG/World/Tasks/WorldGen/IWGGenerateTasks.d.ts +0 -8
  570. package/Tasks/IWG/World/Tasks/WorldGen/IWGGenerateTasks.js +0 -29
  571. package/Tasks/IWG/World/Tasks/WorldGen/IWGLoadTasks.d.ts +0 -8
  572. package/Tasks/IWG/World/Tasks/WorldGen/IWGLoadTasks.js +0 -58
  573. package/Tasks/IWG/World/Tasks/WorldGen/IWGPropagationTasks.d.ts +0 -8
  574. package/Tasks/IWG/World/Tasks/WorldGen/IWGPropagationTasks.js +0 -27
  575. package/Tasks/IWG/World/Tasks/WorldGen/IWGWorldSunTasks.d.ts +0 -8
  576. package/Tasks/IWG/World/Tasks/WorldGen/IWGWorldSunTasks.js +0 -27
  577. package/Tasks/IWG/World/Types/IWG.types.d.ts +0 -20
  578. package/Tasks/IWG/World/Types/IWG.types.js +0 -7
  579. package/Tasks/IWG/World/index.d.ts +0 -2
  580. package/Tasks/IWG/World/index.js +0 -2
  581. package/Tasks/Mesher/InitTasks.d.ts +0 -2
  582. package/Tasks/Mesher/InitTasks.js +0 -46
  583. package/Tasks/Propagation/Flow/Functions/FlowRemove.js +0 -162
  584. package/Tasks/Propagation/Flow/Functions/FlowUpdate.js +0 -96
  585. package/Tasks/Propagation/Illumanation/Functions/WorldSun.d.ts +0 -2
  586. package/Tasks/Propagation/Illumanation/Functions/WorldSun.js +0 -115
  587. package/Tasks/Propagation/Illumanation/IlluminationManager.d.ts +0 -48
  588. package/Tasks/Propagation/Illumanation/IlluminationManager.js +0 -13
  589. package/Tasks/Propagation/Propagation.d.ts +0 -13
  590. package/Tasks/Propagation/Propagation.js +0 -38
  591. package/Textures/Constructor.types.d.ts +0 -5
  592. package/Textures/Constructor.types.js +0 -1
  593. package/Tools/Anaylzer/AnaylzerTool.d.ts +0 -6
  594. package/Tools/Anaylzer/AnaylzerTool.js +0 -31
  595. package/Tools/Classes/DataToolBase.d.ts +0 -43
  596. package/Tools/Classes/DataToolBase.js +0 -85
  597. package/Tools/Classes/LocationBoundTool.d.ts +0 -20
  598. package/Tools/Classes/LocationBoundTool.js +0 -45
  599. package/Tools/Classes/LocationBoundToolBase.d.ts +0 -24
  600. package/Tools/Classes/LocationBoundToolBase.js +0 -61
  601. package/Tools/Classes/RichDataToolBase.d.ts +0 -10
  602. package/Tools/Classes/RichDataToolBase.js +0 -26
  603. package/Tools/Data/DataTool.d.ts +0 -102
  604. package/Tools/Data/DataTool.js +0 -430
  605. package/Tools/Data/WorldData/ChunkDataTool.d.ts +0 -11
  606. package/Tools/Data/WorldData/ChunkDataTool.js +0 -38
  607. package/Tools/Data/WorldData/ColumnDataTool.d.ts +0 -26
  608. package/Tools/Data/WorldData/ColumnDataTool.js +0 -81
  609. package/Tools/Data/WorldData/HeightMapTool.d.ts +0 -24
  610. package/Tools/Data/WorldData/HeightMapTool.js +0 -117
  611. package/Tools/Data/WorldData/RegionDataTool.d.ts +0 -13
  612. package/Tools/Data/WorldData/RegionDataTool.js +0 -39
  613. package/Tools/Mesher/MesherTool.d.ts +0 -19
  614. package/Tools/Mesher/MesherTool.js +0 -52
  615. package/Util/VoxelIDMatrix.d.ts +0 -15
  616. package/Util/VoxelIDMatrix.js +0 -55
  617. package/Voxels/LightData.d.ts +0 -150
  618. package/Voxels/LightData.js +0 -402
  619. package/Voxels/VoxelSyncData.d.ts +0 -71
  620. package/Voxels/VoxelSyncData.js +0 -1
  621. /package/Contexts/Base/Main/{Generator/DataGenerator.types.js → DataGenerator.types.js} +0 -0
  622. /package/Contexts/Base/Remote/{Sync/DataSync.types.js → DataSync.types.js} +0 -0
  623. /package/Contexts/Base/Remote/{Sync/DataSyncIds.d.ts → DataSyncIds.d.ts} +0 -0
  624. /package/Contexts/Base/Remote/{Sync/DataSyncIds.js → DataSyncIds.js} +0 -0
  625. /package/Contexts/Base/Remote/{Sync/InitDataSync.d.ts → InitDataSync.d.ts} +0 -0
  626. /package/Contexts/Base/Remote/{Sync/InitWorldDataSync.d.ts → InitWorldDataSync.d.ts} +0 -0
  627. /package/Data/Cursor/{Interfaces/DataCursor.interface.js → DataCursor.interface.js} +0 -0
  628. /package/{Archive → Data}/Functions/Palettes.d.ts +0 -0
  629. /package/{Archive → Data}/Functions/Palettes.js +0 -0
  630. /package/Data/Structs/{Builder/StructBuilder.js → StructBuilder.js} +0 -0
  631. /package/Data/{Types → Structs}/StructBuilder.types.d.ts +0 -0
  632. /package/Data/{Types → Structs}/StructBuilder.types.js +0 -0
  633. /package/Math/{Constants/CardinalNeighbors.d.ts → CardinalNeighbors.d.ts} +0 -0
  634. /package/Math/{Constants/CardinalNeighbors.js → CardinalNeighbors.js} +0 -0
  635. /package/Math/{Constants/VoxelFaces.d.ts → VoxelFaces.d.ts} +0 -0
  636. /package/Math/{Constants/VoxelFaces.js → VoxelFaces.js} +0 -0
  637. /package/{Voxels → Mesher}/VoxelShaderData.d.ts +0 -0
  638. /package/{Voxels → Mesher}/VoxelShaderData.js +0 -0
  639. /package/{Archive/Archive.types.js → Renderer/Classes/DVESectionMeshInterface.js} +0 -0
  640. /package/{Contexts/Render/Tasks/RenderTasks.types.js → Renderer/Renderer.types.js} +0 -0
  641. /package/{Data/Cursor/World/WorldSectionCursor.interface.js → Tasks/Propagation/Flow/CommonFunctions.d.ts} +0 -0
  642. /package/{Data/Types/DimensionData.types.js → Tasks/Propagation/Flow/CommonFunctions.js} +0 -0
  643. /package/{Data → Voxels}/Palettes/MaterialPalette.d.ts +0 -0
  644. /package/{Data → Voxels}/Palettes/MaterialPalette.js +0 -0
  645. /package/{Data → Voxels}/Palettes/SubstancePalette.d.ts +0 -0
  646. /package/{Data → Voxels}/Palettes/SubstancePalette.js +0 -0
  647. /package/{Data → Voxels}/Palettes/VoxelPalette.d.ts +0 -0
  648. /package/{Data → Voxels}/Palettes/VoxelPalette.js +0 -0
  649. /package/Voxels/{VoxelMaterial.types.d.ts → Types/VoxelMaterial.types.d.ts} +0 -0
  650. /package/Voxels/{VoxelMaterial.types.js → Types/VoxelMaterial.types.js} +0 -0
  651. /package/{Data/Types/RichWorldData.types.js → Voxels/Types/VoxelModelCompiledData.types.js} +0 -0
  652. /package/Voxels/{VoxelSubstances.types.d.ts → Types/VoxelSubstances.types.d.ts} +0 -0
  653. /package/Voxels/{VoxelSubstances.types.js → Types/VoxelSubstances.types.js} +0 -0
  654. /package/{Math/Math.types.js → World/Archive/Archive.types.js} +0 -0
  655. /package/{Archive → World/Archive}/index.d.ts +0 -0
  656. /package/{Archive → World/Archive}/index.js +0 -0
  657. /package/{Math/Spaces/VoxelSpaces.types.js → World/Cursor/WorldSectionCursor.interface.js} +0 -0
  658. /package/{Mesher/Meshers/MesherInterface.js → World/Storage/WorldStorage.interface.js} +0 -0
  659. /package/{Data/Structs/Constants → World/Structs}/WorldDataStructProperties.d.ts +0 -0
  660. /package/{Data/Structs/Constants → World/Structs}/WorldDataStructProperties.js +0 -0
  661. /package/{Mesher/Tasks/BuidlerTasks.types.js → World/Types/WorldData.types.js} +0 -0
  662. /package/{Data/World → World}/WorldBounds.d.ts +0 -0
@@ -1,482 +0,0 @@
1
- import { IWGTasksTypes, } from "../Types/IWG.types";
2
- import { Vector3Like, Vector2Like } from "@amodx/math";
3
- import { ColumnDataTool } from "../../../../Tools/Data/WorldData/ColumnDataTool.js";
4
- import { $2dMooreNeighborhood } from "../../../../Math/Constants/CardinalNeighbors.js";
5
- import { MesherTool } from "../../../../Tools/Mesher/MesherTool.js";
6
- import { TaskTool } from "../../../../Tools/Tasks/TasksTool.js";
7
- import { WorldSpaces } from "../../../../Data/World/WorldSpaces.js";
8
- import { DataLoaderTool } from "../../../DataLoader/World/Tools/DataLoaderTool.js";
9
- import { AnaylzerTool } from "../../../../Tools/Anaylzer/AnaylzerTool.js";
10
- import { WorldLock } from "../../../../Contexts/World/Lock/WorldLock.js";
11
- import { IWG } from "../IWG.js";
12
- import { LocationBoundTool } from "../../../../Tools/Classes/LocationBoundTool.js";
13
- import { ColumnState } from "../../Constants/ColumnState";
14
- import { WorldRegister } from "../../../../Data/World/WorldRegister";
15
- import { IWGTaskRegister } from "./Tasks/IWGTaskRegister";
16
- import { Square, Circle } from "@amodx/math/Shapes";
17
- /**# Infinite World Generator
18
- *
19
- */
20
- export class Generator extends LocationBoundTool {
21
- data;
22
- _anaylzerDone = true;
23
- anaylzer = new AnaylzerTool();
24
- columnTool = new ColumnDataTool();
25
- nColumnTool = new ColumnDataTool();
26
- builder = new MesherTool();
27
- dataLoader = null;
28
- dveTasks = new TaskTool();
29
- _cachedPosition = [-Infinity, -Infinity, -Infinity];
30
- _cachedVelocity = [-Infinity, -Infinity, -Infinity];
31
- __build = true;
32
- _visitedMap = new Map();
33
- _builtColumns = new Map();
34
- columnSquare = new Square(Vector2Like.Create(0, 0), 0);
35
- genCircle = new Circle(Vector2Like.Create(0, 0), 0);
36
- renderCircle = new Circle(Vector2Like.Create(0, 0), 0);
37
- maxCircle = new Circle(Vector2Like.Create(0.1, 1), 10);
38
- tasks = {
39
- [IWGTasksTypes.WorldGen]: new Map(),
40
- [IWGTasksTypes.Rendering]: new Map(),
41
- [IWGTasksTypes.Saving]: new Map(),
42
- [IWGTasksTypes.Updating]: new Map(),
43
- };
44
- constructor(data) {
45
- super();
46
- this.data = data;
47
- if (!data.maxDistance)
48
- data.maxDistance = data.generateDistance + 16;
49
- if (!data.anaylzerDistance)
50
- data.anaylzerDistance = data.renderDistance;
51
- this._cachedPosition = [
52
- data.positionWatch[0],
53
- data.positionWatch[1],
54
- data.positionWatch[2],
55
- ];
56
- this._cachedVelocity = data.velocityWatch
57
- ? [data.velocityWatch[0], data.velocityWatch[1], data.velocityWatch[2]]
58
- : [0, 0, 0];
59
- if (this.data.saveWorldData !== false) {
60
- this.dataLoader = new DataLoaderTool();
61
- }
62
- for (const [id, taskClass] of IWGTaskRegister.tasks) {
63
- this.tasks[taskClass.Data.type].set(id, new taskClass(this));
64
- }
65
- this.columnSquare.sideLength = WorldSpaces.column._bounds.x;
66
- this.genCircle.radius = this.data.generateDistance;
67
- this.renderCircle.radius = this.data.renderDistance;
68
- this.maxCircle.radius = this.data.maxDistance;
69
- }
70
- setDimension(dimensionId) {
71
- this.updateDimension(dimensionId);
72
- return this;
73
- }
74
- updateDimension(dimension) {
75
- this.dimension = dimension;
76
- this.location[0] = dimension;
77
- this.columnTool.setDimension(dimension);
78
- this.nColumnTool.setDimension(dimension);
79
- this.dveTasks.setFocalPoint([dimension, 0, 0, 0]);
80
- this.anaylzer.setDimension(dimension);
81
- this.builder.setDimension(dimension);
82
- if (this.dataLoader)
83
- this.dataLoader.setDimension(dimension);
84
- return this;
85
- }
86
- clearAll() {
87
- this.builder.clearAll();
88
- this._builtColumns.clear();
89
- }
90
- saveUpdate(max = 5) {
91
- const dimesnionId = this.dimension;
92
- const dimension = WorldRegister.instance.dimensions.get(dimesnionId);
93
- if (!dimension)
94
- return;
95
- dimension.regions.forEach((region) => {
96
- region.columns.forEach((column, index) => {
97
- WorldRegister.instance.columnTool.setColumn(column);
98
- const [x, y, z] = region.getColumnPosition(index);
99
- if (WorldLock.isLocked([dimesnionId, x, y, z]))
100
- return;
101
- if (IWG.inProgressMap.has(x, 0, z))
102
- return;
103
- if (!WorldRegister.instance.columnTool.isStored() ||
104
- WorldRegister.instance.columnTool.isDirty()) {
105
- this.tasks.saving.get("dve_iwg_save").add(x, y, z);
106
- }
107
- });
108
- });
109
- for (const [key, tasks] of this.tasks["saving"]) {
110
- tasks.runTasks(max, this._cachedPosition);
111
- }
112
- }
113
- saveAllColumns() {
114
- if (!this.dataLoader)
115
- return;
116
- this.saveUpdate(Infinity);
117
- }
118
- unLoadAllColumns() {
119
- if (!this.dataLoader)
120
- return;
121
- this.dataLoader.allColumns((tool, [dim, x, y, z]) => {
122
- this.tasks["saving"].get("dve_iwg_save_and_unload").add(x, y, z);
123
- });
124
- }
125
- _logTasks() {
126
- let log = "";
127
- for (const type in this.tasks) {
128
- log += `[[${type}]]\n`;
129
- for (const [key, task] of this.tasks[type]) {
130
- log += `${task.getMeta().name}: queue: ${task.queue.length} waiting: ${task.waitingFor}\n`;
131
- }
132
- }
133
- return log;
134
- }
135
- anaylzerUpdate() {
136
- if (!this._anaylzerDone)
137
- return;
138
- this._anaylzerDone = false;
139
- this.anaylzer.runUpdate(this.data.anaylzerDistance, () => {
140
- this._anaylzerDone = true;
141
- });
142
- }
143
- worldGenUpdate(max = 5) {
144
- for (const [key, tasks] of this.tasks[IWGTasksTypes.WorldGen]) {
145
- tasks.runTasks(max, this._cachedPosition);
146
- }
147
- }
148
- renderTaskUpdate(max = Infinity) {
149
- for (const [key, tasks] of this.tasks[IWGTasksTypes.Rendering]) {
150
- tasks.runTasks(max, this._cachedPosition);
151
- }
152
- }
153
- cancelWorldGenTasks() {
154
- for (const [key, tasks] of this.tasks[IWGTasksTypes.WorldGen]) {
155
- tasks.cancelAll();
156
- }
157
- }
158
- cancelAllRenderTask() {
159
- for (const [key, tasks] of this.tasks[IWGTasksTypes.Rendering]) {
160
- tasks.cancelAll();
161
- }
162
- }
163
- updateSettings(settings) {
164
- if (!settings.maxDistance)
165
- settings.maxDistance = settings.generateDistance + 16;
166
- if (!settings.anaylzerDistance)
167
- settings.anaylzerDistance = settings.renderDistance;
168
- this.data = { ...this.data, ...settings };
169
- }
170
- /* private debounedRemoveMesh = new DebouncedTasks({
171
- run: (location) => {
172
- const columnKey = WorldSpaces.column.getKeyXYZ(
173
- location[1],
174
- 0,
175
- location[3]
176
- );
177
- this.builder.setLocation(location).removeColumn();
178
- this._builtColumns.delete(columnKey);
179
- },
180
- timeOut: 100,
181
- });
182
- */
183
- /* private debounedUnload = new DebouncedTasks({
184
- run: (location) => {
185
- if (!this.dataLoader) return;
186
- this.dataLoader.unLoadColumn(location);
187
- },
188
- timeOut: 5_000,
189
- }); */
190
- cullColumns(position) {
191
- const [x, y, z] = position;
192
- this.renderCircle.center.x = position[0];
193
- this.renderCircle.center.y = position[2];
194
- this.genCircle.center.x = position[0];
195
- this.genCircle.center.y = position[2];
196
- this.maxCircle.center.x = position[0];
197
- this.maxCircle.center.y = position[2];
198
- this.builder
199
- .setXYZ(x, y, z)
200
- .removeColumnsOutsideRadius(this.data.renderDistance);
201
- const dimension = WorldRegister.instance.dimensions.get(this.dimension);
202
- if (!dimension)
203
- return;
204
- dimension.regions.forEach((region) => {
205
- region.columns.forEach((column, index) => {
206
- WorldRegister.instance.columnTool.setColumn(column);
207
- const [x, y, z] = region.getColumnPosition(index);
208
- const location = [this.dimension, x, y, z];
209
- this.columnSquare.center.x = x;
210
- this.columnSquare.center.y = z;
211
- const columnKey = WorldSpaces.column.getKeyXYZ(x, 0, z);
212
- if (this._builtColumns.has(columnKey)) {
213
- if (!Circle.IsSquareInsideOrTouchingCircle(this.columnSquare, this.renderCircle)) {
214
- this._builtColumns.delete(columnKey);
215
- }
216
- }
217
- if (WorldLock.isLocked(location))
218
- return;
219
- if (IWG.inProgressMap.has(location[1], 0, location[3]))
220
- return;
221
- if (this.dataLoader) {
222
- if (!Circle.IsSquareInsideOrTouchingCircle(this.columnSquare, this.maxCircle)) {
223
- this.dataLoader.unLoadColumn(location);
224
- return;
225
- }
226
- }
227
- });
228
- });
229
- }
230
- getColumnState([cx, cy, cz], queue) {
231
- let genAlldone = true;
232
- let allLoaded = true;
233
- let nWorldGenAllDone = true;
234
- let nDecorAllDone = true;
235
- let nSunAllDone = true;
236
- let nPropagtionAllDone = true;
237
- if (!this.nColumnTool.loadInAt(cx, cy, cz)) {
238
- allLoaded = false;
239
- this.tasks["world-gen"].get("dve_iwg_load").add(cx, cy, cz);
240
- return {
241
- nWorldGenAllDone: false,
242
- nDecorAllDone: false,
243
- nSunAllDone: false,
244
- nPropagtionAllDone: false,
245
- genAlldone,
246
- allLoaded,
247
- };
248
- }
249
- if (!this.nColumnTool.getStructValue(ColumnState.GenDone)) {
250
- genAlldone = false;
251
- }
252
- if (!this.nColumnTool.getStructValue(ColumnState.SunDone)) {
253
- nSunAllDone = false;
254
- }
255
- for (const n of $2dMooreNeighborhood) {
256
- const nx = cx + n[0] * WorldSpaces.column._bounds.x;
257
- const nz = cz + n[1] * WorldSpaces.column._bounds.z;
258
- const columnPOS = WorldSpaces.column.getPositionXYZ(nx, cy, nz), key = WorldSpaces.column.getKey();
259
- if (!this._visitedMap.has(key)) {
260
- queue.push([columnPOS.x, cy, columnPOS.z]);
261
- }
262
- if (!this.nColumnTool.loadInAt(columnPOS.x, cy, columnPOS.z)) {
263
- nWorldGenAllDone = false;
264
- nSunAllDone = false;
265
- nDecorAllDone = false;
266
- break;
267
- }
268
- if (!this.nColumnTool.getStructValue(ColumnState.GenDone)) {
269
- nWorldGenAllDone = false;
270
- }
271
- if (!this.nColumnTool.getStructValue(ColumnState.DecorDone)) {
272
- nDecorAllDone = false;
273
- }
274
- if (!this.nColumnTool.getStructValue(ColumnState.SunDone)) {
275
- nSunAllDone = false;
276
- }
277
- if (!this.nColumnTool.getStructValue(ColumnState.PropagationDone)) {
278
- nPropagtionAllDone = false;
279
- }
280
- }
281
- return {
282
- nWorldGenAllDone,
283
- nDecorAllDone,
284
- nSunAllDone,
285
- nPropagtionAllDone,
286
- genAlldone,
287
- allLoaded,
288
- };
289
- }
290
- /*
291
- private getColumnGenState([cx, cy, cz]: Vec3Array, queue: Vec3Array[]) {
292
- let genAlldone = true;
293
- let allLoaded = true;
294
-
295
- const columnPOS = WorldSpaces.column.getPositionXYZ(cx, cy, cz);
296
-
297
- if (!this.nColumnTool.loadInAt(columnPOS.x, cy, columnPOS.z)) {
298
- allLoaded = false;
299
- this.tasks["world-gen"]
300
- .get("dve_iwg_load")!
301
- .add(columnPOS.x, cy, columnPOS.z);
302
- return {
303
- genAlldone,
304
- allLoaded,
305
- };
306
- }
307
- if (!this.nColumnTool.getStructValue(ColumnState.GenDone)) {
308
- genAlldone = false;
309
- }
310
-
311
- for (const n of $2dMooreNeighborhood) {
312
- const nx = cx + n[0] * WorldSpaces.column._bounds.x;
313
- const nz = cz + n[1] * WorldSpaces.column._bounds.z;
314
- const columnPOS = {
315
- x: nx,
316
- y: 0,
317
- z: nz,
318
- },
319
- key = `${nx}-0-${nz}`;
320
- if (!this._visitedMap.has(key)) {
321
- queue.push([columnPOS.x, cy, columnPOS.z]);
322
- }
323
- }
324
- return {
325
- genAlldone,
326
- allLoaded,
327
- };
328
- } */
329
- /* generateUpdate() {
330
- const queue: Vec3Array[] = [];
331
-
332
- const position = this.data.positionWatch;
333
-
334
- const columnPosition = Vector3Like.Clone(
335
- WorldSpaces.column.getPositionXYZ(position[0], 0, position[2])
336
- );
337
-
338
- this._cachedPosition = Vector3Like.ToArray(columnPosition);
339
- queue.push([columnPosition.x, columnPosition.y, columnPosition.z]);
340
-
341
- this.genCircle.center.x = columnPosition.x;
342
- this.genCircle.center.y = columnPosition.z;
343
- while (queue.length) {
344
- const node = queue.shift();
345
-
346
- if (!node) break;
347
- const cx = node[0];
348
- const cy = 0;
349
- const cz = node[2];
350
- const sectionKey = `${cx}-0-${cz}`;
351
- // if (WorldLock.isLocked(this.location)) continue;
352
- if (this._visitedMap.has(sectionKey)) continue;
353
- this._visitedMap.set(sectionKey, true);
354
-
355
- this.columnSquare.center.x = cx;
356
- this.columnSquare.center.y = cz;
357
-
358
- if (
359
- !Circle.IsSquareInsideOrTouchingCircle(
360
- this.columnSquare,
361
- this.genCircle
362
- )
363
- )
364
- continue;
365
-
366
- const { genAlldone, allLoaded } = this.getColumnGenState(
367
- [cx, cy, cz],
368
- queue
369
- );
370
-
371
- if (!genAlldone && allLoaded) {
372
- this.tasks["world-gen"].get("dve_iwg_generate")!.add(cx, cy, cz);
373
- }
374
- }
375
- this._visitedMap.clear();
376
- }
377
- */
378
- generateUpdate() {
379
- const queue = [];
380
- const position = this.data.positionWatch;
381
- const columnPosition = Vector3Like.Clone(WorldSpaces.column.getPositionXYZ(position[0], 0, position[2]));
382
- queue.push([columnPosition.x, columnPosition.y, columnPosition.z]);
383
- this.genCircle.center.x = columnPosition.x;
384
- this.genCircle.center.y = columnPosition.z;
385
- while (queue.length) {
386
- const node = queue.shift();
387
- if (!node)
388
- break;
389
- const cx = node[0];
390
- const cy = 0;
391
- const cz = node[2];
392
- const columnKey = WorldSpaces.column.getKeyXYZ(cx, 0, cz);
393
- this.setXYZ(WorldSpaces.column._position.x, WorldSpaces.column._position.y, WorldSpaces.column._position.z);
394
- if (WorldLock.isLocked(this.location))
395
- continue;
396
- if (this._visitedMap.has(columnKey) || IWG.inProgressMap.has(cx, 0, cz))
397
- continue;
398
- this._visitedMap.set(columnKey, true);
399
- this.columnSquare.center.x = cx;
400
- this.columnSquare.center.y = cz;
401
- if (!Circle.IsSquareInsideOrTouchingCircle(this.columnSquare, this.genCircle))
402
- continue;
403
- const { nWorldGenAllDone, nSunAllDone, nPropagtionAllDone, nDecorAllDone, genAlldone, allLoaded, } = this.getColumnState([cx, 0, cz], queue);
404
- if (!genAlldone && allLoaded) {
405
- this.tasks["world-gen"].get("dve_iwg_generate").add(cx, cy, cz);
406
- continue;
407
- }
408
- if (!this.columnTool.loadInAt(cx, 0, cz)) {
409
- continue;
410
- }
411
- if (nWorldGenAllDone &&
412
- !this.columnTool.getStructValue(ColumnState.DecorDone)) {
413
- this.tasks["world-gen"].get("dve_iwg_decorate").add(cx, cy, cz);
414
- continue;
415
- }
416
- if (nDecorAllDone &&
417
- !this.columnTool.getStructValue(ColumnState.SunDone)) {
418
- this.tasks["world-gen"].get("dve_iwg_world_sun").add(cx, cy, cz);
419
- continue;
420
- }
421
- if (nSunAllDone &&
422
- !this.columnTool.getStructValue(ColumnState.PropagationDone)) {
423
- this.tasks["world-gen"].get("dve_iwg_propagation").add(cx, cy, cz);
424
- continue;
425
- }
426
- }
427
- this._visitedMap.clear();
428
- }
429
- renderUpdate() {
430
- const position = this.data.positionWatch;
431
- const queue = [];
432
- let positionChanged = false;
433
- if (!this.__build)
434
- return;
435
- const columnPosition = Vector3Like.Clone(WorldSpaces.column.getPositionXYZ(position[0], 0, position[2]));
436
- if ((columnPosition.x != this._cachedPosition[0] ||
437
- columnPosition.z != this._cachedPosition[2]) &&
438
- this.__build)
439
- positionChanged = true;
440
- if (positionChanged) {
441
- this.cancelWorldGenTasks();
442
- this.cancelAllRenderTask();
443
- this._cachedPosition[0] = columnPosition.x;
444
- this._cachedPosition[1] = columnPosition.y;
445
- this._cachedPosition[2] = columnPosition.z;
446
- this.cullColumns([columnPosition.x, columnPosition.y, columnPosition.z]);
447
- }
448
- queue.push([columnPosition.x, columnPosition.y, columnPosition.z]);
449
- this.renderCircle.center.x = columnPosition.x;
450
- this.renderCircle.center.y = columnPosition.z;
451
- while (queue.length) {
452
- const node = queue.shift();
453
- if (!node)
454
- break;
455
- const cx = node[0];
456
- const cy = 0;
457
- const cz = node[2];
458
- const columnKey = WorldSpaces.column.getKeyXYZ(cx, 0, cz);
459
- if (this._visitedMap.has(columnKey))
460
- continue;
461
- this._visitedMap.set(columnKey, true);
462
- this.columnSquare.center.x = cx;
463
- this.columnSquare.center.y = cz;
464
- if (!Circle.IsSquareInsideOrTouchingCircle(this.columnSquare, this.renderCircle))
465
- continue;
466
- if (!this.columnTool.loadInAt(cx, cy, cz))
467
- continue;
468
- const { nWorldGenAllDone, nSunAllDone, nPropagtionAllDone } = this.getColumnState([cx, 0, cz], queue);
469
- if (nWorldGenAllDone && nSunAllDone && nPropagtionAllDone) {
470
- /* if (this.debounedRemoveMesh.hasTasks(columnKey)) {
471
- this.debounedRemoveMesh.clearTasks(columnKey);
472
- } */
473
- if (this._builtColumns.has(columnKey))
474
- continue;
475
- this.tasks[IWGTasksTypes.Rendering]
476
- .get("dve_iwg_build")
477
- .add(cx, cy, cz);
478
- }
479
- }
480
- this._visitedMap.clear();
481
- }
482
- }
@@ -1,7 +0,0 @@
1
- import { LocationData } from "../../../../../Math";
2
- import { Vec3Array } from "@amodx/math";
3
- import { IWGTaskBase } from "./IWGTaskBase";
4
- export declare abstract class IWGBatchTask extends IWGTaskBase {
5
- abstract run(entries: LocationData[], onDone: Function): void;
6
- runTasks(max: number | undefined, cachedPosition: Vec3Array): void;
7
- }
@@ -1,35 +0,0 @@
1
- import { Vec3ArrayDistanceSort } from "@amodx/math/Vectors/Functions/DistnaceSort.js";
2
- import { IWG } from "../../IWG.js";
3
- import { IWGTaskBase } from "./IWGTaskBase";
4
- export class IWGBatchTask extends IWGTaskBase {
5
- runTasks(max = 5, cachedPosition) {
6
- if (this.waitingFor < 0)
7
- this.waitingFor = 0;
8
- if (this.waitingFor >= max)
9
- return;
10
- Vec3ArrayDistanceSort(cachedPosition, this.queue);
11
- const batch = [];
12
- while (this.waitingFor < max) {
13
- const node = this.queue.shift();
14
- if (!node)
15
- break;
16
- this.waitingFor++;
17
- const [x, y, z] = node;
18
- if (this.getMeta().propagationBlocking) {
19
- IWG.inProgressMap.add(x, y, z, this.getMeta().id);
20
- }
21
- batch.push([this.gen.dimension, x, y, z]);
22
- }
23
- if (!batch.length)
24
- return;
25
- this.run(batch, () => {
26
- for (const [, x, y, z] of batch) {
27
- this.map.remove(x, y, z);
28
- if (this.getMeta().propagationBlocking) {
29
- IWG.inProgressMap.remove(x, y, z);
30
- }
31
- }
32
- this.waitingFor = 0;
33
- });
34
- }
35
- }
@@ -1,6 +0,0 @@
1
- import { Vec3Array } from "@amodx/math";
2
- import { IWGTaskBase } from "./IWGTaskBase";
3
- export declare abstract class IWGSingleTask extends IWGTaskBase {
4
- abstract run(dimensionId: string, x: number, y: number, z: number, onDone: Function): void;
5
- runTasks(max: number | undefined, cachedPosition: Vec3Array): void;
6
- }
@@ -1,29 +0,0 @@
1
- import { IWG } from "../../IWG.js";
2
- import { IWGTaskBase } from "./IWGTaskBase";
3
- //import { Vec3ArrayDistanceSort } from "@amodx/math/Vectors/Functions/DistnaceSort.js";
4
- export class IWGSingleTask extends IWGTaskBase {
5
- runTasks(max = 5, cachedPosition) {
6
- if (this.waitingFor < 0)
7
- this.waitingFor = 0;
8
- if (this.waitingFor >= max)
9
- return;
10
- // Vec3ArrayDistanceSort(cachedPosition, this.queue);
11
- while (this.waitingFor < max) {
12
- const node = this.queue.shift();
13
- if (!node)
14
- break;
15
- this.waitingFor++;
16
- const [x, y, z] = node;
17
- if (this.getMeta().propagationBlocking) {
18
- IWG.inProgressMap.add(x, y, z, this.getMeta().id);
19
- }
20
- this.run(this.gen.dimension, x, y, z, () => {
21
- this.map.remove(x, y, z);
22
- if (this.getMeta().propagationBlocking) {
23
- IWG.inProgressMap.remove(x, y, z);
24
- }
25
- this.waitingFor--;
26
- });
27
- }
28
- }
29
- }
@@ -1,27 +0,0 @@
1
- import type { IWGTasksTypes } from "../../Types/IWG.types";
2
- import { Generator } from "../Generator.js";
3
- import { VisitedMap } from "../../../../../Util/VisistedMap.js";
4
- import { Vec3Array } from "@amodx/math";
5
- export type IWGTasksData = {
6
- id: string;
7
- name: string;
8
- type: IWGTasksTypes;
9
- propagationBlocking?: boolean;
10
- };
11
- export interface IWGTaskBaseInterface {
12
- Data: IWGTasksData;
13
- new (gen: Generator): IWGTaskBase;
14
- }
15
- export declare abstract class IWGTaskBase {
16
- gen: Generator;
17
- queue: [x: number, y: number, z: number][];
18
- map: VisitedMap;
19
- waitingFor: number;
20
- constructor(gen: Generator);
21
- add(x: number, y: number, z: number): void;
22
- remove(x: number, y: number, z: number): void;
23
- cancelAll(): void;
24
- abstract runTasks(max: number, cachedPosition: Vec3Array): void;
25
- abstract getMeta(): IWGTasksData;
26
- abstract getClass(): IWGTaskBaseInterface;
27
- }
@@ -1,34 +0,0 @@
1
- import { IWG } from "../../IWG.js";
2
- import { VisitedMap } from "../../../../../Util/VisistedMap.js";
3
- export class IWGTaskBase {
4
- gen;
5
- queue = [];
6
- map = new VisitedMap();
7
- waitingFor = 0;
8
- constructor(gen) {
9
- this.gen = gen;
10
- }
11
- add(x, y, z) {
12
- if (this.map.inMap(x, y, z))
13
- return;
14
- if (this.getMeta().propagationBlocking && IWG.inProgressMap.has(x, y, z))
15
- return;
16
- this.queue.push([x, y, z]);
17
- this.map.add(x, y, z);
18
- }
19
- remove(x, y, z) {
20
- this.map.remove(x, y, z);
21
- if (this.getMeta().propagationBlocking) {
22
- IWG.inProgressMap.remove(x, y, z);
23
- }
24
- }
25
- cancelAll() {
26
- if (this.getMeta().type == "world-gen") {
27
- while (this.queue.length) {
28
- const node = this.queue.shift();
29
- }
30
- }
31
- this.queue = [];
32
- this.map.clear();
33
- }
34
- }
@@ -1,6 +0,0 @@
1
- import { IWGTaskBaseInterface } from "./IWGTaskBase";
2
- export declare class IWGTaskRegister {
3
- static tasks: Map<string, IWGTaskBaseInterface>;
4
- static registerTask(...taskClass: IWGTaskBaseInterface[]): void;
5
- static getClass(id: string): IWGTaskBaseInterface;
6
- }
@@ -1,14 +0,0 @@
1
- export class IWGTaskRegister {
2
- static tasks = new Map();
3
- static registerTask(...taskClass) {
4
- taskClass.forEach((_) => {
5
- this.tasks.set(_.Data.id, _);
6
- });
7
- }
8
- static getClass(id) {
9
- const taskClass = this.tasks.get(id);
10
- if (!taskClass)
11
- throw new Error(`Task with id ${id} does not exist`);
12
- return taskClass;
13
- }
14
- }
@@ -1,22 +0,0 @@
1
- import { IWGGeneratorData, IWGSettignsData } from "./Types/IWG.types";
2
- import { Generator } from "./Classes/Generator.js";
3
- import { LocationData } from ".../../Math";
4
- export declare class IWG {
5
- static inProgressMap: {
6
- map: Map<string, string>;
7
- add(x: number, y: number, z: number, tasks: string): void;
8
- has(x: number, y: number, z: number): boolean;
9
- remove(x: number, y: number, z: number): boolean;
10
- };
11
- static getKey(x: number, y: number, z: number): string;
12
- static generators: Map<string, Generator>;
13
- static addGenerator(data: IWGGeneratorData): Generator;
14
- static getGenerator(id: string): false | Generator;
15
- static removeGenerator(id: string): boolean;
16
- static worldGenUpdate(max?: number): void;
17
- static searchUpdate(): void;
18
- static saveUpdate(max?: number): void;
19
- static initalLoad(dimension: string, position: number[] | Float32Array | Float64Array | Int32Array | Int16Array, settings?: IWGSettignsData, onCheck?: (gen: Generator) => void): Promise<void>;
20
- static safeExit(genId: string, onCheck?: (gen: Generator) => void): Promise<false | undefined>;
21
- static teleport(genId: string, location: LocationData, onCheck?: (gen: Generator) => void): Promise<false | undefined>;
22
- }