@caspertech/node-metaverse 0.7.40 → 0.7.51

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 (459) hide show
  1. package/dist/examples/Camera/Camera.js +3 -14
  2. package/dist/examples/Camera/Camera.js.map +1 -1
  3. package/dist/examples/ExampleBot.js +66 -87
  4. package/dist/examples/ExampleBot.js.map +1 -1
  5. package/dist/examples/Friends/Friends.js +29 -44
  6. package/dist/examples/Friends/Friends.js.map +1 -1
  7. package/dist/examples/Grid/Name2Key.js +25 -36
  8. package/dist/examples/Grid/Name2Key.js.map +1 -1
  9. package/dist/examples/Groups/Group.js +42 -55
  10. package/dist/examples/Groups/Group.js.map +1 -1
  11. package/dist/examples/Groups/GroupChat.js +55 -68
  12. package/dist/examples/Groups/GroupChat.js.map +1 -1
  13. package/dist/examples/InstantMessages/InstantMessages.js +8 -21
  14. package/dist/examples/InstantMessages/InstantMessages.js.map +1 -1
  15. package/dist/examples/Inventory/Inventory.js +80 -97
  16. package/dist/examples/Inventory/Inventory.js.map +1 -1
  17. package/dist/examples/MFA/MFA.js +24 -40
  18. package/dist/examples/MFA/MFA.js.map +1 -1
  19. package/dist/examples/Money/Money.js +28 -41
  20. package/dist/examples/Money/Money.js.map +1 -1
  21. package/dist/examples/Objects/TaskInventory.js +13 -24
  22. package/dist/examples/Objects/TaskInventory.js.map +1 -1
  23. package/dist/examples/Region/Agents.js +6 -17
  24. package/dist/examples/Region/Agents.js.map +1 -1
  25. package/dist/examples/Region/Estate.js +9 -20
  26. package/dist/examples/Region/Estate.js.map +1 -1
  27. package/dist/examples/Region/Parcels.js +12 -23
  28. package/dist/examples/Region/Parcels.js.map +1 -1
  29. package/dist/examples/Region/Region.js +2 -13
  30. package/dist/examples/Region/Region.js.map +1 -1
  31. package/dist/examples/Region/Settings.js +15 -0
  32. package/dist/examples/Region/Settings.js.map +1 -0
  33. package/dist/examples/Teleports/Teleports.js +22 -35
  34. package/dist/examples/Teleports/Teleports.js.map +1 -1
  35. package/dist/lib/Bot.d.ts +14 -14
  36. package/dist/lib/Bot.js +217 -231
  37. package/dist/lib/Bot.js.map +1 -1
  38. package/dist/lib/LoginHandler.d.ts +3 -3
  39. package/dist/lib/LoginHandler.js +106 -116
  40. package/dist/lib/LoginHandler.js.map +1 -1
  41. package/dist/lib/classes/Agent.d.ts +23 -35
  42. package/dist/lib/classes/Agent.js +96 -108
  43. package/dist/lib/classes/Agent.js.map +1 -1
  44. package/dist/lib/classes/AssetMap.d.ts +18 -95
  45. package/dist/lib/classes/AssetMap.js +86 -16
  46. package/dist/lib/classes/AssetMap.js.map +1 -1
  47. package/dist/lib/classes/AssetRegistry.d.ts +31 -0
  48. package/dist/lib/classes/AssetRegistry.js +26 -0
  49. package/dist/lib/classes/AssetRegistry.js.map +1 -0
  50. package/dist/lib/classes/AssetTypeRegistry.d.ts +21 -0
  51. package/dist/lib/classes/AssetTypeRegistry.js +81 -0
  52. package/dist/lib/classes/AssetTypeRegistry.js.map +1 -0
  53. package/dist/lib/classes/BVH.js.map +1 -1
  54. package/dist/lib/classes/BVHJoint.js.map +1 -1
  55. package/dist/lib/classes/BVHJointKeyframe.d.ts +1 -1
  56. package/dist/lib/classes/BatchQueue.d.ts +2 -2
  57. package/dist/lib/classes/BatchQueue.js +66 -80
  58. package/dist/lib/classes/BatchQueue.js.map +1 -1
  59. package/dist/lib/classes/BatchQueue.spec.js +17 -26
  60. package/dist/lib/classes/BatchQueue.spec.js.map +1 -1
  61. package/dist/lib/classes/BinaryReader.d.ts +66 -0
  62. package/dist/lib/classes/BinaryReader.js +304 -0
  63. package/dist/lib/classes/BinaryReader.js.map +1 -0
  64. package/dist/lib/classes/BinaryReader.spec.d.ts +1 -0
  65. package/dist/lib/classes/BinaryReader.spec.js +241 -0
  66. package/dist/lib/classes/BinaryReader.spec.js.map +1 -0
  67. package/dist/lib/classes/BinaryWriter.d.ts +34 -0
  68. package/dist/lib/classes/BinaryWriter.js +192 -0
  69. package/dist/lib/classes/BinaryWriter.js.map +1 -0
  70. package/dist/lib/classes/BinaryWriter.spec.d.ts +1 -0
  71. package/dist/lib/classes/BinaryWriter.spec.js +328 -0
  72. package/dist/lib/classes/BinaryWriter.spec.js.map +1 -0
  73. package/dist/lib/classes/BitPack.d.ts +2 -2
  74. package/dist/lib/classes/BitPack.js +1 -1
  75. package/dist/lib/classes/BitPack.js.map +1 -1
  76. package/dist/lib/classes/BuildMap.d.ts +6 -6
  77. package/dist/lib/classes/BuildMap.js.map +1 -1
  78. package/dist/lib/classes/Caps.d.ts +18 -24
  79. package/dist/lib/classes/Caps.js +278 -297
  80. package/dist/lib/classes/Caps.js.map +1 -1
  81. package/dist/lib/classes/Circuit.d.ts +20 -28
  82. package/dist/lib/classes/Circuit.js +104 -91
  83. package/dist/lib/classes/Circuit.js.map +1 -1
  84. package/dist/lib/classes/ClientCommands.d.ts +3 -3
  85. package/dist/lib/classes/ClientCommands.js.map +1 -1
  86. package/dist/lib/classes/ClientEvents.d.ts +41 -32
  87. package/dist/lib/classes/ClientEvents.js +65 -0
  88. package/dist/lib/classes/ClientEvents.js.map +1 -1
  89. package/dist/lib/classes/CoalescedGameObject.d.ts +2 -2
  90. package/dist/lib/classes/CoalescedGameObject.js +37 -49
  91. package/dist/lib/classes/CoalescedGameObject.js.map +1 -1
  92. package/dist/lib/classes/Color4.d.ts +2 -2
  93. package/dist/lib/classes/Color4.js +42 -42
  94. package/dist/lib/classes/Color4.js.map +1 -1
  95. package/dist/lib/classes/Comms.d.ts +3 -3
  96. package/dist/lib/classes/Comms.js +236 -236
  97. package/dist/lib/classes/Comms.js.map +1 -1
  98. package/dist/lib/classes/ConcurrentQueue.d.ts +3 -3
  99. package/dist/lib/classes/ConcurrentQueue.js +16 -11
  100. package/dist/lib/classes/ConcurrentQueue.js.map +1 -1
  101. package/dist/lib/classes/EventQueueClient.d.ts +6 -6
  102. package/dist/lib/classes/EventQueueClient.js +189 -201
  103. package/dist/lib/classes/EventQueueClient.js.map +1 -1
  104. package/dist/lib/classes/GroupBan.d.ts +3 -3
  105. package/dist/lib/classes/GroupBan.js.map +1 -1
  106. package/dist/lib/classes/GroupMember.d.ts +2 -2
  107. package/dist/lib/classes/GroupRole.d.ts +2 -2
  108. package/dist/lib/classes/IPAddress.d.ts +3 -2
  109. package/dist/lib/classes/IPAddress.js +14 -13
  110. package/dist/lib/classes/IPAddress.js.map +1 -1
  111. package/dist/lib/classes/Inventory.d.ts +7 -15
  112. package/dist/lib/classes/Inventory.js +69 -80
  113. package/dist/lib/classes/Inventory.js.map +1 -1
  114. package/dist/lib/classes/InventoryFolder.d.ts +11 -11
  115. package/dist/lib/classes/InventoryFolder.js +544 -626
  116. package/dist/lib/classes/InventoryFolder.js.map +1 -1
  117. package/dist/lib/classes/InventoryItem.d.ts +15 -11
  118. package/dist/lib/classes/InventoryItem.js +494 -486
  119. package/dist/lib/classes/InventoryItem.js.map +1 -1
  120. package/dist/lib/classes/InventoryTypeRegistry.d.ts +19 -0
  121. package/dist/lib/classes/InventoryTypeRegistry.js +69 -0
  122. package/dist/lib/classes/InventoryTypeRegistry.js.map +1 -0
  123. package/dist/lib/classes/LLGLTFMaterial.d.ts +1 -1
  124. package/dist/lib/classes/LLGLTFMaterial.js +2 -2
  125. package/dist/lib/classes/LLGLTFMaterial.js.map +1 -1
  126. package/dist/lib/classes/LLGLTFMaterial.spec.js +17 -18
  127. package/dist/lib/classes/LLGLTFMaterial.spec.js.map +1 -1
  128. package/dist/lib/classes/LLGLTFMaterialOverride.d.ts +1 -1
  129. package/dist/lib/classes/LLGLTFMaterialOverride.js +119 -118
  130. package/dist/lib/classes/LLGLTFMaterialOverride.js.map +1 -1
  131. package/dist/lib/classes/LLGLTFMaterialOverride.spec.js +70 -71
  132. package/dist/lib/classes/LLGLTFMaterialOverride.spec.js.map +1 -1
  133. package/dist/lib/classes/LLGesture.d.ts +1 -1
  134. package/dist/lib/classes/LLGesture.js +1 -1
  135. package/dist/lib/classes/LLGesture.js.map +1 -1
  136. package/dist/lib/classes/LLGestureAnimationStep.d.ts +1 -1
  137. package/dist/lib/classes/LLGestureAnimationStep.js.map +1 -1
  138. package/dist/lib/classes/LLGestureChatStep.js.map +1 -1
  139. package/dist/lib/classes/LLGestureSoundStep.d.ts +1 -1
  140. package/dist/lib/classes/LLGestureSoundStep.js.map +1 -1
  141. package/dist/lib/classes/LLGestureStep.d.ts +1 -1
  142. package/dist/lib/classes/LLGestureWaitStep.js.map +1 -1
  143. package/dist/lib/classes/LLLindenText.d.ts +2 -4
  144. package/dist/lib/classes/LLLindenText.js +12 -8
  145. package/dist/lib/classes/LLLindenText.js.map +1 -1
  146. package/dist/lib/classes/LLSettings.d.ts +98 -83
  147. package/dist/lib/classes/LLSettings.js +240 -83
  148. package/dist/lib/classes/LLSettings.js.map +1 -1
  149. package/dist/lib/classes/LLSettings.spec.d.ts +1 -0
  150. package/dist/lib/classes/LLSettings.spec.js +27 -0
  151. package/dist/lib/classes/LLSettings.spec.js.map +1 -0
  152. package/dist/lib/classes/LLWearable.d.ts +4 -8
  153. package/dist/lib/classes/LLWearable.js +1 -1
  154. package/dist/lib/classes/LLWearable.js.map +1 -1
  155. package/dist/lib/classes/Logger.d.ts +3 -3
  156. package/dist/lib/classes/Logger.js +1 -1
  157. package/dist/lib/classes/Logger.js.map +1 -1
  158. package/dist/lib/classes/LoginParameters.js.map +1 -1
  159. package/dist/lib/classes/LoginResponse.d.ts +4 -9
  160. package/dist/lib/classes/LoginResponse.js +120 -113
  161. package/dist/lib/classes/LoginResponse.js.map +1 -1
  162. package/dist/lib/classes/MapBlock.d.ts +2 -2
  163. package/dist/lib/classes/MessageBase.d.ts +5 -5
  164. package/dist/lib/classes/MessageClasses.js.map +1 -1
  165. package/dist/lib/classes/ObjectResolver.d.ts +6 -6
  166. package/dist/lib/classes/ObjectResolver.js +127 -152
  167. package/dist/lib/classes/ObjectResolver.js.map +1 -1
  168. package/dist/lib/classes/ObjectStoreFull.d.ts +9 -9
  169. package/dist/lib/classes/ObjectStoreFull.js +176 -192
  170. package/dist/lib/classes/ObjectStoreFull.js.map +1 -1
  171. package/dist/lib/classes/ObjectStoreLite.d.ts +29 -31
  172. package/dist/lib/classes/ObjectStoreLite.js +485 -494
  173. package/dist/lib/classes/ObjectStoreLite.js.map +1 -1
  174. package/dist/lib/classes/Packet.d.ts +2 -2
  175. package/dist/lib/classes/Packet.js +2 -2
  176. package/dist/lib/classes/Packet.js.map +1 -1
  177. package/dist/lib/classes/ParticleSystem.js +1 -1
  178. package/dist/lib/classes/ParticleSystem.js.map +1 -1
  179. package/dist/lib/classes/PrimFacesHelper.d.ts +14 -0
  180. package/dist/lib/classes/PrimFacesHelper.js +75 -0
  181. package/dist/lib/classes/PrimFacesHelper.js.map +1 -0
  182. package/dist/lib/classes/Quaternion.d.ts +31 -6
  183. package/dist/lib/classes/Quaternion.js +236 -48
  184. package/dist/lib/classes/Quaternion.js.map +1 -1
  185. package/dist/lib/classes/Region.d.ts +23 -22
  186. package/dist/lib/classes/Region.js +453 -515
  187. package/dist/lib/classes/Region.js.map +1 -1
  188. package/dist/lib/classes/TarArchive.d.ts +1 -1
  189. package/dist/lib/classes/TarArchive.js.map +1 -1
  190. package/dist/lib/classes/TarFile.js +1 -1
  191. package/dist/lib/classes/TarFile.js.map +1 -1
  192. package/dist/lib/classes/TarReader.d.ts +1 -2
  193. package/dist/lib/classes/TarReader.js +15 -17
  194. package/dist/lib/classes/TarReader.js.map +1 -1
  195. package/dist/lib/classes/TarWriter.d.ts +1 -1
  196. package/dist/lib/classes/TarWriter.js +51 -68
  197. package/dist/lib/classes/TarWriter.js.map +1 -1
  198. package/dist/lib/classes/TextureEntry.d.ts +2 -3
  199. package/dist/lib/classes/TextureEntry.js +12 -12
  200. package/dist/lib/classes/TextureEntry.js.map +1 -1
  201. package/dist/lib/classes/TextureEntryFace.d.ts +4 -4
  202. package/dist/lib/classes/TextureEntryFace.js.map +1 -1
  203. package/dist/lib/classes/UUID.d.ts +2 -2
  204. package/dist/lib/classes/UUID.js +28 -28
  205. package/dist/lib/classes/UUID.js.map +1 -1
  206. package/dist/lib/classes/Utils.d.ts +2 -11
  207. package/dist/lib/classes/Utils.js +72 -328
  208. package/dist/lib/classes/Utils.js.map +1 -1
  209. package/dist/lib/classes/Vector2.d.ts +35 -6
  210. package/dist/lib/classes/Vector2.js +192 -28
  211. package/dist/lib/classes/Vector2.js.map +1 -1
  212. package/dist/lib/classes/Vector3.d.ts +38 -6
  213. package/dist/lib/classes/Vector3.js +229 -48
  214. package/dist/lib/classes/Vector3.js.map +1 -1
  215. package/dist/lib/classes/Vector4.d.ts +36 -6
  216. package/dist/lib/classes/Vector4.js +225 -21
  217. package/dist/lib/classes/Vector4.js.map +1 -1
  218. package/dist/lib/classes/Wearable.d.ts +1 -1
  219. package/dist/lib/classes/Zerocoder.js +2 -2
  220. package/dist/lib/classes/Zerocoder.js.map +1 -1
  221. package/dist/lib/classes/commands/AgentCommands.d.ts +7 -5
  222. package/dist/lib/classes/commands/AgentCommands.js +60 -76
  223. package/dist/lib/classes/commands/AgentCommands.js.map +1 -1
  224. package/dist/lib/classes/commands/AssetCommands.d.ts +5 -10
  225. package/dist/lib/classes/commands/AssetCommands.js +176 -179
  226. package/dist/lib/classes/commands/AssetCommands.js.map +1 -1
  227. package/dist/lib/classes/commands/CommandsBase.d.ts +4 -4
  228. package/dist/lib/classes/commands/CommandsBase.js.map +1 -1
  229. package/dist/lib/classes/commands/CommunicationsCommands.d.ts +3 -3
  230. package/dist/lib/classes/commands/CommunicationsCommands.js +350 -426
  231. package/dist/lib/classes/commands/CommunicationsCommands.js.map +1 -1
  232. package/dist/lib/classes/commands/FriendCommands.d.ts +9 -10
  233. package/dist/lib/classes/commands/FriendCommands.js +238 -236
  234. package/dist/lib/classes/commands/FriendCommands.js.map +1 -1
  235. package/dist/lib/classes/commands/GridCommands.d.ts +3 -3
  236. package/dist/lib/classes/commands/GridCommands.js +299 -336
  237. package/dist/lib/classes/commands/GridCommands.js.map +1 -1
  238. package/dist/lib/classes/commands/GroupCommands.d.ts +2 -2
  239. package/dist/lib/classes/commands/GroupCommands.js +293 -336
  240. package/dist/lib/classes/commands/GroupCommands.js.map +1 -1
  241. package/dist/lib/classes/commands/InventoryCommands.d.ts +4 -4
  242. package/dist/lib/classes/commands/InventoryCommands.js +54 -69
  243. package/dist/lib/classes/commands/InventoryCommands.js.map +1 -1
  244. package/dist/lib/classes/commands/MovementCommands.d.ts +2 -2
  245. package/dist/lib/classes/commands/MovementCommands.js +23 -38
  246. package/dist/lib/classes/commands/MovementCommands.js.map +1 -1
  247. package/dist/lib/classes/commands/NetworkCommands.js +35 -46
  248. package/dist/lib/classes/commands/NetworkCommands.js.map +1 -1
  249. package/dist/lib/classes/commands/ParcelCommands.d.ts +4 -4
  250. package/dist/lib/classes/commands/ParcelCommands.js +64 -77
  251. package/dist/lib/classes/commands/ParcelCommands.js.map +1 -1
  252. package/dist/lib/classes/commands/RegionCommands.d.ts +11 -10
  253. package/dist/lib/classes/commands/RegionCommands.js +1126 -1211
  254. package/dist/lib/classes/commands/RegionCommands.js.map +1 -1
  255. package/dist/lib/classes/commands/TeleportCommands.d.ts +8 -8
  256. package/dist/lib/classes/commands/TeleportCommands.js +58 -58
  257. package/dist/lib/classes/commands/TeleportCommands.js.map +1 -1
  258. package/dist/lib/classes/interfaces/IGameObjectData.d.ts +18 -20
  259. package/dist/lib/classes/interfaces/ILandBlock.d.ts +2 -2
  260. package/dist/lib/classes/interfaces/IObjectStore.d.ts +12 -12
  261. package/dist/lib/classes/interfaces/IResolveJob.d.ts +2 -2
  262. package/dist/lib/classes/interfaces/ITreeBoundingBox.d.ts +2 -2
  263. package/dist/lib/classes/llsd/LLSD.d.ts +12 -0
  264. package/dist/lib/classes/llsd/LLSD.js +128 -0
  265. package/dist/lib/classes/llsd/LLSD.js.map +1 -0
  266. package/dist/lib/classes/llsd/LLSD.spec.d.ts +1 -0
  267. package/dist/lib/classes/llsd/LLSD.spec.js +249 -0
  268. package/dist/lib/classes/llsd/LLSD.spec.js.map +1 -0
  269. package/dist/lib/classes/llsd/LLSDArray.d.ts +26 -3
  270. package/dist/lib/classes/llsd/LLSDArray.js +182 -6
  271. package/dist/lib/classes/llsd/LLSDArray.js.map +1 -1
  272. package/dist/lib/classes/llsd/LLSDBinary.d.ts +7 -0
  273. package/dist/lib/classes/llsd/LLSDBinary.js +114 -0
  274. package/dist/lib/classes/llsd/LLSDBinary.js.map +1 -0
  275. package/dist/lib/classes/llsd/LLSDInteger.d.ts +9 -0
  276. package/dist/lib/classes/llsd/LLSDInteger.js +25 -0
  277. package/dist/lib/classes/llsd/LLSDInteger.js.map +1 -0
  278. package/dist/lib/classes/llsd/LLSDMap.d.ts +16 -5
  279. package/dist/lib/classes/llsd/LLSDMap.js +197 -16
  280. package/dist/lib/classes/llsd/LLSDMap.js.map +1 -1
  281. package/dist/lib/classes/llsd/LLSDNotation.d.ts +11 -0
  282. package/dist/lib/classes/llsd/LLSDNotation.js +271 -0
  283. package/dist/lib/classes/llsd/LLSDNotation.js.map +1 -0
  284. package/dist/lib/classes/llsd/LLSDReal.d.ts +10 -0
  285. package/dist/lib/classes/llsd/LLSDReal.js +71 -0
  286. package/dist/lib/classes/llsd/LLSDReal.js.map +1 -0
  287. package/dist/lib/classes/llsd/LLSDToken.d.ts +1 -1
  288. package/dist/lib/classes/llsd/LLSDTokenContainer.d.ts +2 -2
  289. package/dist/lib/classes/llsd/LLSDTokenGenerator.d.ts +1 -1
  290. package/dist/lib/classes/llsd/LLSDTokenSpec.d.ts +1 -1
  291. package/dist/lib/classes/llsd/LLSDTokenType.d.ts +18 -18
  292. package/dist/lib/classes/llsd/LLSDTokenType.js +18 -18
  293. package/dist/lib/classes/llsd/LLSDTokenType.js.map +1 -1
  294. package/dist/lib/classes/llsd/LLSDType.d.ts +6 -3
  295. package/dist/lib/classes/llsd/LLSDURI.d.ts +7 -0
  296. package/dist/lib/classes/llsd/LLSDURI.js +19 -0
  297. package/dist/lib/classes/llsd/LLSDURI.js.map +1 -0
  298. package/dist/lib/classes/llsd/LLSDXML.d.ts +5 -0
  299. package/dist/lib/classes/llsd/LLSDXML.js +245 -0
  300. package/dist/lib/classes/llsd/LLSDXML.js.map +1 -0
  301. package/dist/lib/classes/messages/ObjectUpdate.d.ts +4 -5
  302. package/dist/lib/classes/messages/ObjectUpdate.js +115 -115
  303. package/dist/lib/classes/messages/ObjectUpdate.js.map +1 -1
  304. package/dist/lib/classes/messages/SimStats.d.ts +3 -2
  305. package/dist/lib/classes/messages/SimStats.js +17 -17
  306. package/dist/lib/classes/messages/SimStats.js.map +1 -1
  307. package/dist/lib/classes/public/Avatar.d.ts +4 -4
  308. package/dist/lib/classes/public/Avatar.js +39 -33
  309. package/dist/lib/classes/public/Avatar.js.map +1 -1
  310. package/dist/lib/classes/public/AvatarQueryResult.d.ts +4 -4
  311. package/dist/lib/classes/public/AvatarQueryResult.js.map +1 -1
  312. package/dist/lib/classes/public/ExtendedMeshData.d.ts +1 -1
  313. package/dist/lib/classes/public/ExtendedMeshData.js.map +1 -1
  314. package/dist/lib/classes/public/ExtraParams.d.ts +6 -6
  315. package/dist/lib/classes/public/ExtraParams.js +36 -39
  316. package/dist/lib/classes/public/ExtraParams.js.map +1 -1
  317. package/dist/lib/classes/public/ExtraParams.spec.js +2 -11
  318. package/dist/lib/classes/public/ExtraParams.spec.js.map +1 -1
  319. package/dist/lib/classes/public/FlexibleData.js.map +1 -1
  320. package/dist/lib/classes/public/Friend.js.map +1 -1
  321. package/dist/lib/classes/public/GameObject.d.ts +23 -21
  322. package/dist/lib/classes/public/GameObject.js +1294 -1306
  323. package/dist/lib/classes/public/GameObject.js.map +1 -1
  324. package/dist/lib/classes/public/GameObject.spec.js +8 -18
  325. package/dist/lib/classes/public/GameObject.spec.js.map +1 -1
  326. package/dist/lib/classes/public/LLMesh.d.ts +5 -7
  327. package/dist/lib/classes/public/LLMesh.js +194 -216
  328. package/dist/lib/classes/public/LLMesh.js.map +1 -1
  329. package/dist/lib/classes/public/LightData.js.map +1 -1
  330. package/dist/lib/classes/public/LightImageData.js.map +1 -1
  331. package/dist/lib/classes/public/Material.js +45 -56
  332. package/dist/lib/classes/public/Material.js.map +1 -1
  333. package/dist/lib/classes/public/MeshData.js.map +1 -1
  334. package/dist/lib/classes/public/Parcel.d.ts +4 -4
  335. package/dist/lib/classes/public/Parcel.js +1 -2
  336. package/dist/lib/classes/public/Parcel.js.map +1 -1
  337. package/dist/lib/classes/public/ReflectionProbeData.d.ts +1 -1
  338. package/dist/lib/classes/public/ReflectionProbeData.js.map +1 -1
  339. package/dist/lib/classes/public/RegionEnvironment.d.ts +14 -13
  340. package/dist/lib/classes/public/RegionEnvironment.js +94 -53
  341. package/dist/lib/classes/public/RegionEnvironment.js.map +1 -1
  342. package/dist/lib/classes/public/RegionEnvironmentSky.d.ts +2 -0
  343. package/dist/lib/classes/public/RegionEnvironmentSky.js +7 -0
  344. package/dist/lib/classes/public/RegionEnvironmentSky.js.map +1 -0
  345. package/dist/lib/classes/public/RegionEnvironmentWater.d.ts +2 -0
  346. package/dist/lib/classes/public/RegionEnvironmentWater.js +7 -0
  347. package/dist/lib/classes/public/RegionEnvironmentWater.js.map +1 -0
  348. package/dist/lib/classes/public/RenderMaterialData.js.map +1 -1
  349. package/dist/lib/classes/public/RenderMaterialParam.d.ts +1 -1
  350. package/dist/lib/classes/public/SculptData.js.map +1 -1
  351. package/dist/lib/classes/public/TextureAnim.js +2 -1
  352. package/dist/lib/classes/public/TextureAnim.js.map +1 -1
  353. package/dist/lib/classes/public/interfaces/GlobalPosition.d.ts +1 -1
  354. package/dist/lib/classes/public/interfaces/LLPhysicsConvex.d.ts +1 -1
  355. package/dist/lib/classes/public/interfaces/LLSkin.d.ts +1 -1
  356. package/dist/lib/classes/public/interfaces/LLSubMesh.d.ts +3 -5
  357. package/dist/lib/classes/public/interfaces/MapLocation.d.ts +3 -3
  358. package/dist/lib/classes/public/interfaces/RegionEnvironmentSkyLLSD.d.ts +26 -0
  359. package/dist/lib/classes/public/interfaces/RegionEnvironmentSkyLLSD.js +3 -0
  360. package/dist/lib/classes/public/interfaces/RegionEnvironmentSkyLLSD.js.map +1 -0
  361. package/dist/lib/classes/public/interfaces/RegionEnvironmentWaterLLSD.d.ts +15 -0
  362. package/dist/lib/classes/public/interfaces/RegionEnvironmentWaterLLSD.js +3 -0
  363. package/dist/lib/classes/public/interfaces/RegionEnvironmentWaterLLSD.js.map +1 -0
  364. package/dist/lib/classes/public/interfaces/SkyPreset.d.ts +3 -3
  365. package/dist/lib/classes/public/interfaces/WaterPreset.d.ts +4 -4
  366. package/dist/lib/deviceToken.json +1 -0
  367. package/dist/lib/enums/AssetType.d.ts +6 -4
  368. package/dist/lib/enums/AssetType.js +5 -3
  369. package/dist/lib/enums/AssetType.js.map +1 -1
  370. package/dist/lib/enums/AttachmentPoint.d.ts +0 -1
  371. package/dist/lib/enums/AttachmentPoint.js +0 -1
  372. package/dist/lib/enums/AttachmentPoint.js.map +1 -1
  373. package/dist/lib/enums/InventoryType.d.ts +3 -5
  374. package/dist/lib/enums/InventoryType.js +2 -4
  375. package/dist/lib/enums/InventoryType.js.map +1 -1
  376. package/dist/lib/enums/LayerType.d.ts +1 -1
  377. package/dist/lib/enums/LayerType.js +1 -1
  378. package/dist/lib/events/AvatarPropertiesReplyEvent.d.ts +1 -1
  379. package/dist/lib/events/BalanceUpdatedEvent.d.ts +2 -2
  380. package/dist/lib/events/BulkUpdateInventoryEvent.d.ts +2 -2
  381. package/dist/lib/events/BulkUpdateInventoryEvent.js.map +1 -1
  382. package/dist/lib/events/ChatEvent.d.ts +5 -5
  383. package/dist/lib/events/FriendOnlineEvent.d.ts +1 -1
  384. package/dist/lib/events/FriendRemovedEvent.d.ts +1 -1
  385. package/dist/lib/events/FriendRequestEvent.d.ts +1 -1
  386. package/dist/lib/events/FriendResponseEvent.d.ts +1 -1
  387. package/dist/lib/events/FriendRightsEvent.d.ts +2 -2
  388. package/dist/lib/events/GroupChatClosedEvent.d.ts +1 -1
  389. package/dist/lib/events/GroupChatEvent.d.ts +1 -1
  390. package/dist/lib/events/GroupChatSessionAgentListEvent.d.ts +1 -1
  391. package/dist/lib/events/GroupChatSessionJoinEvent.d.ts +1 -1
  392. package/dist/lib/events/GroupInviteEvent.d.ts +1 -1
  393. package/dist/lib/events/GroupNoticeEvent.d.ts +1 -1
  394. package/dist/lib/events/GroupProfileReplyEvent.d.ts +2 -2
  395. package/dist/lib/events/InstantMessageEvent.d.ts +3 -3
  396. package/dist/lib/events/InventoryOfferedEvent.d.ts +3 -3
  397. package/dist/lib/events/InventoryResponseEvent.d.ts +1 -1
  398. package/dist/lib/events/LandStatsEvent.d.ts +4 -4
  399. package/dist/lib/events/LandStatsEvent.js.map +1 -1
  400. package/dist/lib/events/LureEvent.d.ts +2 -2
  401. package/dist/lib/events/MapInfoRangeReplyEvent.d.ts +1 -1
  402. package/dist/lib/events/MapInfoReplyEvent.d.ts +2 -2
  403. package/dist/lib/events/NewObjectEvent.d.ts +2 -2
  404. package/dist/lib/events/ObjectKilledEvent.d.ts +2 -2
  405. package/dist/lib/events/ObjectPhysicsDataEvent.d.ts +1 -1
  406. package/dist/lib/events/ObjectResolvedEvent.d.ts +1 -1
  407. package/dist/lib/events/ObjectUpdatedEvent.d.ts +2 -2
  408. package/dist/lib/events/ParcelInfoReplyEvent.d.ts +3 -3
  409. package/dist/lib/events/ParcelPropertiesEvent.d.ts +3 -3
  410. package/dist/lib/events/RegionInfoReplyEvent.d.ts +2 -2
  411. package/dist/lib/events/ScriptDialogEvent.d.ts +1 -1
  412. package/dist/lib/events/SelectedObjectEvent.d.ts +1 -1
  413. package/dist/lib/events/TeleportEvent.d.ts +1 -1
  414. package/dist/lib/index.d.ts +6 -8
  415. package/dist/lib/index.js +4 -7
  416. package/dist/lib/index.js.map +1 -1
  417. package/dist/lib/tsm/common.d.ts +1 -1
  418. package/dist/lib/tsm/common.js +3 -1
  419. package/dist/lib/tsm/common.js.map +1 -1
  420. package/dist/lib/tsm/mat2.d.ts +8 -8
  421. package/dist/lib/tsm/mat2.js +8 -7
  422. package/dist/lib/tsm/mat2.js.map +1 -1
  423. package/dist/lib/tsm/mat3.d.ts +7 -7
  424. package/dist/lib/tsm/mat3.js +8 -7
  425. package/dist/lib/tsm/mat3.js.map +1 -1
  426. package/dist/lib/tsm/mat4.d.ts +9 -9
  427. package/dist/lib/tsm/mat4.js +8 -7
  428. package/dist/lib/tsm/mat4.js.map +1 -1
  429. package/dist/lib/tsm/quat.d.ts +19 -19
  430. package/dist/lib/tsm/quat.js +69 -68
  431. package/dist/lib/tsm/quat.js.map +1 -1
  432. package/dist/lib/tsm/vec2.d.ts +13 -13
  433. package/dist/lib/tsm/vec2.js +30 -29
  434. package/dist/lib/tsm/vec2.js.map +1 -1
  435. package/dist/lib/tsm/vec3.d.ts +16 -16
  436. package/dist/lib/tsm/vec3.js +48 -47
  437. package/dist/lib/tsm/vec3.js.map +1 -1
  438. package/dist/lib/tsm/vec4.d.ts +22 -22
  439. package/dist/lib/tsm/vec4.js +94 -93
  440. package/dist/lib/tsm/vec4.js.map +1 -1
  441. package/eslint.config.mjs +104 -0
  442. package/examples/Inventory/Inventory.ts +4 -2
  443. package/examples/Money/Money.ts +6 -6
  444. package/examples/Objects/TaskInventory.ts +4 -3
  445. package/examples/Region/Settings.ts +19 -0
  446. package/package.json +10 -9
  447. package/.eslintrc +0 -224
  448. package/dist/lib/classes/llsd/LLSDNotationParser.d.ts +0 -9
  449. package/dist/lib/classes/llsd/LLSDNotationParser.js +0 -177
  450. package/dist/lib/classes/llsd/LLSDNotationParser.js.map +0 -1
  451. package/dist/lib/classes/llsd/LLSDNotationParser.spec.js +0 -167
  452. package/dist/lib/classes/llsd/LLSDNotationParser.spec.js.map +0 -1
  453. package/dist/lib/enums/AssetTypeLL.d.ts +0 -27
  454. package/dist/lib/enums/AssetTypeLL.js +0 -32
  455. package/dist/lib/enums/AssetTypeLL.js.map +0 -1
  456. package/dist/lib/enums/HTTPAssets.d.ts +0 -24
  457. package/dist/lib/enums/HTTPAssets.js +0 -29
  458. package/dist/lib/enums/HTTPAssets.js.map +0 -1
  459. /package/dist/{lib/classes/llsd/LLSDNotationParser.spec.d.ts → examples/Region/Settings.d.ts} +0 -0
@@ -1,10 +1,41 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.Vector2 = void 0;
4
- const vec2_1 = require("../tsm/vec2");
5
- class Vector2 extends vec2_1.TSMVec2 {
6
- static getZero() {
7
- return new Vector2();
4
+ class Vector2 {
5
+ constructor(buf, pos, double) {
6
+ if (typeof buf === 'number' && typeof pos === 'number') {
7
+ this.x = buf;
8
+ this.y = pos;
9
+ }
10
+ else if (buf instanceof Vector2) {
11
+ this.x = buf.x;
12
+ this.y = buf.y;
13
+ }
14
+ else {
15
+ if (double === undefined) {
16
+ double = false;
17
+ }
18
+ if (buf !== undefined && pos !== undefined && buf instanceof Buffer) {
19
+ if (double === false) {
20
+ this.x = buf.readFloatLE(pos);
21
+ this.y = buf.readFloatLE(pos + 4);
22
+ }
23
+ else {
24
+ this.x = buf.readDoubleLE(pos);
25
+ this.y = buf.readDoubleLE(pos + 8);
26
+ }
27
+ }
28
+ else if (buf !== undefined && Array.isArray(buf) && buf.length >= 2) {
29
+ if (typeof buf[0] !== 'number' || typeof buf[1] !== 'number') {
30
+ throw new Error('Array contains non-numbers');
31
+ }
32
+ [this.x, this.y] = buf;
33
+ }
34
+ else {
35
+ this.x = 0;
36
+ this.y = 0;
37
+ }
38
+ }
8
39
  }
9
40
  static getXML(doc, v) {
10
41
  if (v === undefined) {
@@ -13,30 +44,10 @@ class Vector2 extends vec2_1.TSMVec2 {
13
44
  doc.ele('X', v.x);
14
45
  doc.ele('Y', v.y);
15
46
  }
16
- constructor(buf, pos, double) {
17
- if (double === undefined) {
18
- double = false;
19
- }
20
- if (buf !== undefined && pos !== undefined && buf instanceof Buffer) {
21
- if (!double) {
22
- const x = buf.readFloatLE(pos);
23
- const y = buf.readFloatLE(pos + 4);
24
- super([x, y]);
25
- }
26
- else {
27
- const x = buf.readDoubleLE(pos);
28
- const y = buf.readDoubleLE(pos + 8);
29
- super([x, y]);
30
- }
31
- }
32
- else if (buf !== undefined && Array.isArray(buf)) {
33
- super(buf);
34
- }
35
- else {
36
- super();
37
- }
47
+ static getZero() {
48
+ return new Vector2(0, 0);
38
49
  }
39
- writeToBuffer(buf, pos, double) {
50
+ writeToBuffer(buf, pos, double = false) {
40
51
  if (double) {
41
52
  buf.writeDoubleLE(this.x, pos);
42
53
  buf.writeDoubleLE(this.y, pos + 8);
@@ -47,11 +58,164 @@ class Vector2 extends vec2_1.TSMVec2 {
47
58
  }
48
59
  }
49
60
  toString() {
50
- return '<' + this.x + ', ' + this.y + '>';
61
+ return `<${this.x}, ${this.y}>`;
62
+ }
63
+ getBuffer(double = false) {
64
+ const buf = Buffer.allocUnsafe(double ? 16 : 8);
65
+ this.writeToBuffer(buf, 0, double);
66
+ return buf;
67
+ }
68
+ compareApprox(vec) {
69
+ return this.equals(vec, 0.00001);
51
70
  }
52
71
  toArray() {
53
72
  return [this.x, this.y];
54
73
  }
74
+ equals(vec, epsilon = Number.EPSILON) {
75
+ return (Math.abs(this.x - vec.x) < epsilon &&
76
+ Math.abs(this.y - vec.y) < epsilon);
77
+ }
78
+ dot(vec) {
79
+ return this.x * vec.x + this.y * vec.y;
80
+ }
81
+ cross(vec) {
82
+ return this.x * vec.y - this.y * vec.x;
83
+ }
84
+ distance(vec) {
85
+ return Math.sqrt(this.squaredDistance(vec));
86
+ }
87
+ squaredDistance(vec) {
88
+ const dx = this.x - vec.x;
89
+ const dy = this.y - vec.y;
90
+ return dx * dx + dy * dy;
91
+ }
92
+ direction(vec) {
93
+ const diff = vec.subtract(this).normalize();
94
+ if (diff.x === 0.0 && diff.y === 0.0) {
95
+ diff.x = NaN;
96
+ diff.y = NaN;
97
+ }
98
+ return diff;
99
+ }
100
+ mix(vec, t) {
101
+ return new Vector2([
102
+ this.x + t * (vec.x - this.x),
103
+ this.y + t * (vec.y - this.y),
104
+ ]);
105
+ }
106
+ sum(vec) {
107
+ return new Vector2([
108
+ this.x + vec.x,
109
+ this.y + vec.y,
110
+ ]);
111
+ }
112
+ difference(vec) {
113
+ return new Vector2([
114
+ this.x - vec.x,
115
+ this.y - vec.y,
116
+ ]);
117
+ }
118
+ product(vec) {
119
+ return new Vector2([
120
+ this.x * vec.x,
121
+ this.y * vec.y,
122
+ ]);
123
+ }
124
+ quotient(vec) {
125
+ return new Vector2([
126
+ this.x / vec.x,
127
+ this.y / vec.y,
128
+ ]);
129
+ }
130
+ reset() {
131
+ this.x = 0;
132
+ this.y = 0;
133
+ }
134
+ copy() {
135
+ return new Vector2(this);
136
+ }
137
+ negate() {
138
+ return new Vector2([
139
+ -this.x,
140
+ -this.y,
141
+ ]);
142
+ }
143
+ length() {
144
+ return Math.sqrt(this.squaredLength());
145
+ }
146
+ squaredLength() {
147
+ return this.x * this.x + this.y * this.y;
148
+ }
149
+ add(vec) {
150
+ return new Vector2([
151
+ this.x + vec.x,
152
+ this.y + vec.y,
153
+ ]);
154
+ }
155
+ subtract(vec) {
156
+ return new Vector2([
157
+ this.x - vec.x,
158
+ this.y - vec.y,
159
+ ]);
160
+ }
161
+ multiply(value) {
162
+ if (typeof value === 'number') {
163
+ return new Vector2([
164
+ this.x * value,
165
+ this.y * value,
166
+ ]);
167
+ }
168
+ else {
169
+ return new Vector2([
170
+ this.x * value.x,
171
+ this.y * value.y,
172
+ ]);
173
+ }
174
+ }
175
+ divide(value) {
176
+ if (typeof value === 'number') {
177
+ return new Vector2([
178
+ this.x / value,
179
+ this.y / value,
180
+ ]);
181
+ }
182
+ else {
183
+ return new Vector2([
184
+ this.x / value.x,
185
+ this.y / value.y,
186
+ ]);
187
+ }
188
+ }
189
+ scale(scalar) {
190
+ return this.multiply(scalar);
191
+ }
192
+ normalize() {
193
+ const len = this.length();
194
+ if (len > 0) {
195
+ return this.scale(1 / len);
196
+ }
197
+ else {
198
+ return this.copy();
199
+ }
200
+ }
201
+ angle() {
202
+ return Math.atan2(this.y, this.x);
203
+ }
204
+ rotate(angle) {
205
+ const cos = Math.cos(angle);
206
+ const sin = Math.sin(angle);
207
+ return new Vector2([
208
+ this.x * cos - this.y * sin,
209
+ this.x * sin + this.y * cos,
210
+ ]);
211
+ }
212
+ perpendicular() {
213
+ return new Vector2([-this.y, this.x]);
214
+ }
215
+ projectOnto(vec) {
216
+ const scalar = this.dot(vec) / vec.squaredLength();
217
+ return vec.scale(scalar);
218
+ }
55
219
  }
56
220
  exports.Vector2 = Vector2;
57
221
  //# sourceMappingURL=Vector2.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Vector2.js","sourceRoot":"","sources":["../../../lib/classes/Vector2.ts"],"names":[],"mappings":";;;AAAA,sCAAsC;AAGtC,MAAa,OAAQ,SAAQ,cAAO;IAEhC,MAAM,CAAC,OAAO;QAEV,OAAO,IAAI,OAAO,EAAE,CAAC;IACzB,CAAC;IAED,MAAM,CAAC,MAAM,CAAC,GAAY,EAAE,CAAW;QAEnC,IAAI,CAAC,KAAK,SAAS,EACnB,CAAC;YACG,CAAC,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;QAC1B,CAAC;QACD,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QAClB,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IACtB,CAAC;IAED,YAAY,GAAuB,EAAE,GAAY,EAAE,MAAgB;QAE/D,IAAI,MAAM,KAAK,SAAS,EACxB,CAAC;YACG,MAAM,GAAG,KAAK,CAAC;QACnB,CAAC;QACD,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,YAAY,MAAM,EACnE,CAAC;YACG,IAAI,CAAC,MAAM,EACX,CAAC;gBACG,MAAM,CAAC,GAAG,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;gBAC/B,MAAM,CAAC,GAAG,GAAG,CAAC,WAAW,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;gBACnC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;iBAED,CAAC;gBACG,MAAM,CAAC,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;gBAChC,MAAM,CAAC,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;gBACpC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;QACL,CAAC;aACI,IAAI,GAAG,KAAK,SAAS,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAChD,CAAC;YACG,KAAK,CAAC,GAAG,CAAC,CAAC;QACf,CAAC;aAED,CAAC;YACG,KAAK,EAAE,CAAC;QACZ,CAAC;IACL,CAAC;IAED,aAAa,CAAC,GAAW,EAAE,GAAW,EAAE,MAAe;QAEnD,IAAI,MAAM,EACV,CAAC;YACG,GAAG,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;YAC/B,GAAG,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC;QACvC,CAAC;aAED,CAAC;YACG,GAAG,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;YAC9B,GAAG,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC;QACtC,CAAC;IACL,CAAC;IACD,QAAQ;QAEJ,OAAO,GAAG,GAAG,IAAI,CAAC,CAAC,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC;IAC9C,CAAC;IAED,OAAO;QAEH,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;IAC5B,CAAC;CACJ;AAtED,0BAsEC"}
1
+ {"version":3,"file":"Vector2.js","sourceRoot":"","sources":["../../../lib/classes/Vector2.ts"],"names":[],"mappings":"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"}
@@ -1,13 +1,45 @@
1
- import { XMLNode } from 'xmlbuilder';
2
- import { TSMVec3 } from '../tsm/vec3';
3
- export declare class Vector3 extends TSMVec3 {
4
- static getZero(): Vector3;
1
+ import { Quaternion } from "./Quaternion";
2
+ import type { XMLNode } from 'xmlbuilder';
3
+ export declare class Vector3 {
4
+ static zero: Vector3;
5
+ static up: Vector3;
6
+ static right: Vector3;
7
+ static forward: Vector3;
8
+ x: number;
9
+ y: number;
10
+ z: number;
11
+ constructor(buf?: Buffer | number[] | Vector3 | number, pos?: number, doubleOrX?: boolean | number);
5
12
  static getXML(doc: XMLNode, v?: Vector3): void;
6
13
  static fromXMLJS(obj: any, param: string): Vector3 | false;
7
- constructor(buf?: Buffer | number[] | Vector3 | TSMVec3, pos?: number, double?: boolean);
8
- writeToBuffer(buf: Buffer, pos: number, double: boolean): void;
14
+ static getZero(): Vector3;
15
+ writeToBuffer(buf: Buffer, pos: number, double?: boolean): void;
9
16
  toString(): string;
10
17
  getBuffer(double?: boolean): Buffer;
11
18
  compareApprox(vec: Vector3): boolean;
12
19
  toArray(): number[];
20
+ equals(vec: Vector3, epsilon?: number): boolean;
21
+ cross(vec: Vector3): Vector3;
22
+ dot(vec: Vector3): number;
23
+ distance(vec: Vector3): number;
24
+ squaredDistance(vec: Vector3): number;
25
+ direction(vec: Vector3): Vector3;
26
+ toJSON(): object;
27
+ mix(vec: Vector3, t: number): Vector3;
28
+ sum(vec: Vector3): Vector3;
29
+ difference(vec: Vector3): Vector3;
30
+ product(vec: Vector3): Vector3;
31
+ quotient(vec: Vector3): Vector3;
32
+ reset(): void;
33
+ copy(): Vector3;
34
+ negate(): Vector3;
35
+ length(): number;
36
+ squaredLength(): number;
37
+ add(vec: Vector3): Vector3;
38
+ subtract(vec: Vector3): Vector3;
39
+ multiply(value: number | Vector3): Vector3;
40
+ divide(value: number | Vector3): Vector3;
41
+ scale(scalar: number): Vector3;
42
+ normalize(): Vector3;
43
+ multiplyQuaternion(quat: Quaternion): Vector3;
44
+ toQuaternion(): Quaternion;
13
45
  }
@@ -1,10 +1,59 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.Vector3 = void 0;
4
- const vec3_1 = require("../tsm/vec3");
5
- class Vector3 extends vec3_1.TSMVec3 {
6
- static getZero() {
7
- return new Vector3();
4
+ const Quaternion_1 = require("./Quaternion");
5
+ class Vector3 {
6
+ constructor(buf, pos, doubleOrX) {
7
+ if (typeof buf === 'number' && typeof pos === 'number' && typeof doubleOrX === 'number') {
8
+ this.x = buf;
9
+ this.y = pos;
10
+ this.z = doubleOrX;
11
+ }
12
+ else if (buf instanceof Vector3) {
13
+ this.x = buf.x;
14
+ this.y = buf.y;
15
+ this.z = buf.z;
16
+ }
17
+ else {
18
+ if (doubleOrX === undefined) {
19
+ doubleOrX = false;
20
+ }
21
+ if (buf instanceof Buffer) {
22
+ if (pos === undefined) {
23
+ pos = 0;
24
+ }
25
+ if (doubleOrX === false) {
26
+ this.x = buf.readFloatLE(pos);
27
+ this.y = buf.readFloatLE(pos + 4);
28
+ this.z = buf.readFloatLE(pos + 8);
29
+ }
30
+ else {
31
+ this.x = buf.readDoubleLE(pos);
32
+ this.y = buf.readDoubleLE(pos + 8);
33
+ this.z = buf.readDoubleLE(pos + 16);
34
+ }
35
+ }
36
+ else if (buf !== undefined && Array.isArray(buf) && buf.length > 2) {
37
+ if (typeof buf[0] !== 'number' || typeof buf[1] !== 'number' || typeof buf[2] !== 'number') {
38
+ throw new Error('Array contains non-numbers');
39
+ }
40
+ [this.x, this.y, this.z] = buf;
41
+ }
42
+ else {
43
+ this.x = 0.0;
44
+ this.y = 0.0;
45
+ this.z = 0.0;
46
+ }
47
+ }
48
+ if (isNaN(this.x)) {
49
+ throw new Error('X component is NaN');
50
+ }
51
+ if (isNaN(this.y)) {
52
+ throw new Error('Y component is NaN');
53
+ }
54
+ if (isNaN(this.z)) {
55
+ throw new Error('Z component is NaN');
56
+ }
8
57
  }
9
58
  static getXML(doc, v) {
10
59
  if (v === undefined) {
@@ -23,10 +72,10 @@ class Vector3 extends vec3_1.TSMVec3 {
23
72
  value = value[0];
24
73
  }
25
74
  if (typeof value === 'object') {
26
- if (value['X'] !== undefined && value['Y'] !== undefined && value['Z'] !== undefined) {
27
- let x = value['X'];
28
- let y = value['Y'];
29
- let z = value['Z'];
75
+ if (value.X !== undefined && value.Y !== undefined && value.Z !== undefined) {
76
+ let x = value.X;
77
+ let y = value.Y;
78
+ let z = value.Z;
30
79
  if (Array.isArray(x) && x.length > 0) {
31
80
  x = x[0];
32
81
  }
@@ -42,46 +91,10 @@ class Vector3 extends vec3_1.TSMVec3 {
42
91
  }
43
92
  return false;
44
93
  }
45
- constructor(buf, pos, double) {
46
- if (buf instanceof Vector3) {
47
- super();
48
- this.x = buf.x;
49
- this.y = buf.y;
50
- this.z = buf.z;
51
- }
52
- else if (buf instanceof vec3_1.TSMVec3) {
53
- super();
54
- this.x = buf.x;
55
- this.y = buf.y;
56
- this.z = buf.z;
57
- }
58
- else {
59
- if (double === undefined) {
60
- double = false;
61
- }
62
- if (buf !== undefined && pos !== undefined && buf instanceof Buffer) {
63
- if (!double) {
64
- const x = buf.readFloatLE(pos);
65
- const y = buf.readFloatLE(pos + 4);
66
- const z = buf.readFloatLE(pos + 8);
67
- super([x, y, z]);
68
- }
69
- else {
70
- const x = buf.readDoubleLE(pos);
71
- const y = buf.readDoubleLE(pos + 8);
72
- const z = buf.readDoubleLE(pos + 16);
73
- super([x, y, z]);
74
- }
75
- }
76
- else if (buf !== undefined && Array.isArray(buf)) {
77
- super(buf);
78
- }
79
- else {
80
- super();
81
- }
82
- }
94
+ static getZero() {
95
+ return new Vector3();
83
96
  }
84
- writeToBuffer(buf, pos, double) {
97
+ writeToBuffer(buf, pos, double = false) {
85
98
  if (double) {
86
99
  buf.writeDoubleLE(this.x, pos);
87
100
  buf.writeDoubleLE(this.y, pos + 8);
@@ -97,7 +110,7 @@ class Vector3 extends vec3_1.TSMVec3 {
97
110
  return '<' + this.x + ', ' + this.y + ', ' + this.z + '>';
98
111
  }
99
112
  getBuffer(double = false) {
100
- const buf = Buffer.allocUnsafe((double) ? 24 : 12);
113
+ const buf = Buffer.allocUnsafe(double ? 24 : 12);
101
114
  this.writeToBuffer(buf, 0, double);
102
115
  return buf;
103
116
  }
@@ -107,6 +120,174 @@ class Vector3 extends vec3_1.TSMVec3 {
107
120
  toArray() {
108
121
  return [this.x, this.y, this.z];
109
122
  }
123
+ equals(vec, epsilon = Number.EPSILON) {
124
+ return (Math.abs(this.x - vec.x) < epsilon &&
125
+ Math.abs(this.y - vec.y) < epsilon &&
126
+ Math.abs(this.z - vec.z) < epsilon);
127
+ }
128
+ cross(vec) {
129
+ return new Vector3([
130
+ this.y * vec.z - this.z * vec.y,
131
+ this.z * vec.x - this.x * vec.z,
132
+ this.x * vec.y - this.y * vec.x,
133
+ ]);
134
+ }
135
+ dot(vec) {
136
+ return this.x * vec.x + this.y * vec.y + this.z * vec.z;
137
+ }
138
+ distance(vec) {
139
+ return Math.sqrt(this.squaredDistance(vec));
140
+ }
141
+ squaredDistance(vec) {
142
+ const dx = this.x - vec.x;
143
+ const dy = this.y - vec.y;
144
+ const dz = this.z - vec.z;
145
+ return dx * dx + dy * dy + dz * dz;
146
+ }
147
+ direction(vec) {
148
+ const diff = vec.difference(this).normalize();
149
+ if (diff.x == 0.0 && diff.y == 0.0 && diff.z == 0.0) {
150
+ diff.x = NaN;
151
+ diff.y = NaN;
152
+ diff.z = NaN;
153
+ }
154
+ return diff;
155
+ }
156
+ toJSON() {
157
+ return {
158
+ values: {
159
+ '0': this.x,
160
+ '1': this.y,
161
+ '2': this.z
162
+ }
163
+ };
164
+ }
165
+ mix(vec, t) {
166
+ return new Vector3([
167
+ this.x + t * (vec.x - this.x),
168
+ this.y + t * (vec.y - this.y),
169
+ this.z + t * (vec.z - this.z),
170
+ ]);
171
+ }
172
+ sum(vec) {
173
+ return new Vector3([
174
+ this.x + vec.x,
175
+ this.y + vec.y,
176
+ this.z + vec.z,
177
+ ]);
178
+ }
179
+ difference(vec) {
180
+ return new Vector3([
181
+ this.x - vec.x,
182
+ this.y - vec.y,
183
+ this.z - vec.z,
184
+ ]);
185
+ }
186
+ product(vec) {
187
+ return new Vector3([
188
+ this.x * vec.x,
189
+ this.y * vec.y,
190
+ this.z * vec.z,
191
+ ]);
192
+ }
193
+ quotient(vec) {
194
+ return new Vector3([
195
+ this.x / vec.x,
196
+ this.y / vec.y,
197
+ this.z / vec.z,
198
+ ]);
199
+ }
200
+ reset() {
201
+ this.x = 0;
202
+ this.y = 0;
203
+ this.z = 0;
204
+ }
205
+ copy() {
206
+ return new Vector3(this);
207
+ }
208
+ negate() {
209
+ return new Vector3([
210
+ -this.x,
211
+ -this.y,
212
+ -this.z,
213
+ ]);
214
+ }
215
+ length() {
216
+ return Math.sqrt(this.squaredLength());
217
+ }
218
+ squaredLength() {
219
+ return this.x * this.x + this.y * this.y + this.z * this.z;
220
+ }
221
+ add(vec) {
222
+ return new Vector3([
223
+ this.x + vec.x,
224
+ this.y + vec.y,
225
+ this.z + vec.z,
226
+ ]);
227
+ }
228
+ subtract(vec) {
229
+ return new Vector3([
230
+ this.x - vec.x,
231
+ this.y - vec.y,
232
+ this.z - vec.z,
233
+ ]);
234
+ }
235
+ multiply(value) {
236
+ if (typeof value === 'number') {
237
+ return new Vector3([
238
+ this.x * value,
239
+ this.y * value,
240
+ this.z * value,
241
+ ]);
242
+ }
243
+ else {
244
+ return new Vector3([
245
+ this.x * value.x,
246
+ this.y * value.y,
247
+ this.z * value.z,
248
+ ]);
249
+ }
250
+ }
251
+ divide(value) {
252
+ if (typeof value === 'number') {
253
+ return new Vector3([
254
+ this.x / value,
255
+ this.y / value,
256
+ this.z / value,
257
+ ]);
258
+ }
259
+ else {
260
+ return new Vector3([
261
+ this.x / value.x,
262
+ this.y / value.y,
263
+ this.z / value.z,
264
+ ]);
265
+ }
266
+ }
267
+ scale(scalar) {
268
+ return this.multiply(scalar);
269
+ }
270
+ normalize() {
271
+ const len = this.length();
272
+ if (len > 0) {
273
+ return this.scale(1 / len);
274
+ }
275
+ else {
276
+ return this.copy();
277
+ }
278
+ }
279
+ multiplyQuaternion(quat) {
280
+ const qVec = new Quaternion_1.Quaternion([this.x, this.y, this.z, 0]);
281
+ const result = quat.multiply(qVec).multiply(quat.conjugate());
282
+ return new Vector3([result.x, result.y, result.z]);
283
+ }
284
+ toQuaternion() {
285
+ return new Quaternion_1.Quaternion([this.x, this.y, this.z, 0]);
286
+ }
110
287
  }
111
288
  exports.Vector3 = Vector3;
289
+ Vector3.zero = new Vector3(0, 0, 0);
290
+ Vector3.up = new Vector3(0, 1, 0);
291
+ Vector3.right = new Vector3(1, 0, 0);
292
+ Vector3.forward = new Vector3(0, 0, 1);
112
293
  //# sourceMappingURL=Vector3.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Vector3.js","sourceRoot":"","sources":["../../../lib/classes/Vector3.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Vector3.js","sourceRoot":"","sources":["../../../lib/classes/Vector3.ts"],"names":[],"mappings":"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"}