diff --git a/lib/classes/ObjectResolver.ts b/lib/classes/ObjectResolver.ts index fab6c34..add189e 100644 --- a/lib/classes/ObjectResolver.ts +++ b/lib/classes/ObjectResolver.ts @@ -29,7 +29,7 @@ export class ObjectResolver const failed: GameObject[] = []; for (const obj of objects) { - if (!options.includeTempObjects && ((obj.Flags ?? 0) & PrimFlags.TemporaryOnRez)) + if (!obj.IsAttachment && !options.includeTempObjects && ((obj.Flags ?? 0) & PrimFlags.TemporaryOnRez) === PrimFlags.TemporaryOnRez) { continue; } @@ -46,7 +46,7 @@ export class ObjectResolver return failed; } - return this.resolveQueue.add(Array.from(objs.values())); + return await this.resolveQueue.add(Array.from(objs.values())); } public async getInventory(object: GameObject): Promise @@ -183,7 +183,7 @@ export class ObjectResolver obj.landImpact = Math.round(obj.linkResourceImpact); } obj.calculatedLandImpact = obj.landImpact; - if (obj.Flags !== undefined && obj.Flags & PrimFlags.TemporaryOnRez && obj.limitingType === 'legacy') + if (obj.Flags !== undefined && ((obj.Flags & PrimFlags.TemporaryOnRez) === PrimFlags.TemporaryOnRez) && obj.limitingType === 'legacy') { obj.calculatedLandImpact = 0; } diff --git a/lib/classes/ObjectStoreLite.ts b/lib/classes/ObjectStoreLite.ts index 984c124..500a0f3 100644 --- a/lib/classes/ObjectStoreLite.ts +++ b/lib/classes/ObjectStoreLite.ts @@ -437,7 +437,7 @@ export class ObjectStoreLite implements IObjectStore { // tslint:disable-next-line:no-bitwise // noinspection JSBitwiseOperatorUsage - if (o.Flags & PrimFlags.CreateSelected) + if ((o.Flags & PrimFlags.CreateSelected) === PrimFlags.CreateSelected) { const evt = new SelectedObjectEvent(); evt.object = o; @@ -770,7 +770,7 @@ export class ObjectStoreLite implements IObjectStore newObj.localID = obj.ID; newObj.objectID = obj.FullID; newObj.object = obj; - newObj.createSelected = obj.Flags !== undefined && (obj.Flags & PrimFlags.CreateSelected) !== 0; + newObj.createSelected = obj.Flags !== undefined && (obj.Flags & PrimFlags.CreateSelected) === PrimFlags.CreateSelected; obj.createdSelected = newObj.createSelected; // tslint:disable-next-line:no-bitwise // noinspection JSBitwiseOperatorUsage diff --git a/lib/classes/public/GameObject.ts b/lib/classes/public/GameObject.ts index 11f4327..fbe96e0 100644 --- a/lib/classes/public/GameObject.ts +++ b/lib/classes/public/GameObject.ts @@ -1520,7 +1520,7 @@ export class GameObject implements IGameObjectData root = xml.ele(rootNode); } const sceneObjectPart = root.ele('SceneObjectPart').att('xmlns:xsi', 'http://www.w3.org/2001/XMLSchema-instance').att('xmlns:xsd', 'http://www.w3.org/2001/XMLSchema'); - sceneObjectPart.ele('AllowedDrop', (this.Flags !== undefined && (this.Flags & PrimFlags.AllowInventoryDrop) !== 0) ? 'true' : 'false'); + sceneObjectPart.ele('AllowedDrop', (this.Flags !== undefined && (this.Flags & PrimFlags.AllowInventoryDrop) === PrimFlags.AllowInventoryDrop) ? 'true' : 'false'); UUID.getXML(sceneObjectPart.ele('CreatorID'), this.creatorID); UUID.getXML(sceneObjectPart.ele('FolderID'), this.folderID); sceneObjectPart.ele('InventorySerial', this.inventorySerial); diff --git a/package-lock.json b/package-lock.json index 0b1a5c0..537633b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@caspertech/node-metaverse", - "version": "0.7.2", + "version": "0.7.3", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@caspertech/node-metaverse", - "version": "0.7.2", + "version": "0.7.3", "license": "MIT", "dependencies": { "@caspertech/llsd": "^1.0.5", diff --git a/package.json b/package.json index 4255623..c5e3bca 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@caspertech/node-metaverse", - "version": "0.7.2", + "version": "0.7.3", "description": "A node.js interface for Second Life.", "main": "dist/lib/index.js", "types": "dist/lib/index.d.ts",