@wayward/types 2.11.4-beta.dev.20220211.1 → 2.11.4-beta.dev.20220218.1

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.
@@ -142,9 +142,9 @@ export interface IItemDescription extends IObjectDescription, IModdable, ITemper
142
142
  recipes?: Array<(recipe: Recipe) => Recipe>;
143
143
  disassemble?: boolean;
144
144
  /**
145
- * Can be set to true if you don't want the player to actually disassemble the item, but still have disassembly data via the disassemble property.
145
+ * Set items that are part of the item's disassembly that are converted into another item when disassembled.
146
146
  */
147
- blockDisassembly?: boolean;
147
+ disassemblyTransform?: OptionalDescriptions<ItemType, ItemType>;
148
148
  requiredForDisassembly?: Array<ItemType | ItemTypeGroup>;
149
149
  decaysInto?: ItemType[];
150
150
  decayTemperatureRange?: IDecayTemperatureRange;
@@ -272,7 +272,7 @@ export interface IItemReturn {
272
272
  */
273
273
  damaged?: boolean;
274
274
  /**
275
- * If true, it will check the disassembly data for the item and return the first instance of the ItemType set in type.
275
+ * If true, disassembly data will be checked for the item and return the first instance of the ItemType set in type and will filter out any other types from its disassembly data.
276
276
  */
277
277
  returnFromDisassembly?: boolean;
278
278
  /**
@@ -11,6 +11,8 @@
11
11
  import type BaseRendererContext from "renderer/context/BaseRendererContext";
12
12
  import type { IRendererOrigin } from "renderer/context/RendererOrigin";
13
13
  import type Renderer from "renderer/Renderer";
14
+ import SpriteBatch1 from "renderer/spriteBatch/SpriteBatch1";
15
+ import SpriteBatch2 from "renderer/spriteBatch/SpriteBatch2";
14
16
  import type WebGlContext from "renderer/WebGlContext";
15
17
  export default class RendererContext {
16
18
  readonly renderer: Renderer;
@@ -19,4 +21,5 @@ export default class RendererContext {
19
21
  readonly webGlContext: WebGlContext;
20
22
  constructor(renderer: Renderer, baseRendererContext: BaseRendererContext);
21
23
  get origin(): IRendererOrigin;
24
+ createSpriteBatch(capacity: number, depthOffset?: number, yOffset?: number): SpriteBatch2 | SpriteBatch1;
22
25
  }
@@ -9,5 +9,10 @@
9
9
  * https://github.com/WaywardGame/types/wiki
10
10
  */
11
11
  export default interface ISpriteBatch {
12
+ readonly capacity: number;
13
+ delete(): void;
14
+ begin(): void;
12
15
  add(tileX: number, tileY: number, spriteSize: number, sourceX: number, sourceY: number, sourceSize: number, offsetX?: number, offsetY?: number, red?: number, green?: number, blue?: number, alpha?: number): void;
16
+ end(): number;
17
+ render(x: number, y: number, tileScale: number, viewportWidth: number, viewportHeight: number): void;
13
18
  }
@@ -8,33 +8,6 @@
8
8
  * Wayward is a copyrighted and licensed work. Modification and/or distribution of any source files is prohibited. If you wish to modify the game in any way, please refer to the modding guide:
9
9
  * https://github.com/WaywardGame/types/wiki
10
10
  */
11
- import type ISpriteBatch from "renderer/spriteBatch/ISpriteBatch";
12
- import type Vector2 from "utilities/math/Vector2";
13
- import type WebGlContext from "renderer/WebGlContext";
14
11
  import type RendererContext from "renderer/context/RendererContext";
15
- export default class SpriteBatch implements ISpriteBatch {
16
- private readonly context;
17
- readonly capacity: number;
18
- private readonly depthOffset;
19
- private readonly yOffset;
20
- private readonly shaderProgram;
21
- texSprites: WebGLTexture | undefined;
22
- inverseSpriteTextureSize: Vector2 | undefined;
23
- private count;
24
- private readonly buffer;
25
- private readonly colorBuffer;
26
- private array;
27
- private colorArray;
28
- private begun;
29
- private readonly vertexArray;
30
- private _setup;
31
- static initializePrograms(webGlContext: WebGlContext): Promise<void>;
32
- constructor(context: RendererContext, capacity: number, depthOffset?: number, yOffset?: number);
33
- setup(): void;
34
- delete(): void;
35
- clear(): void;
36
- begin(): void;
37
- add(tileX: number, tileY: number, spriteSize: number, sourceX: number, sourceY: number, sourceSize: number, offsetX?: number, offsetY?: number, red?: number, green?: number, blue?: number, alpha?: number): void;
38
- end(): number;
39
- render(x: number, y: number, tileScale: number, viewportWidth: number, viewportHeight: number): void;
40
- }
12
+ import type ISpriteBatch from "renderer/spriteBatch/ISpriteBatch";
13
+ export declare function createSpriteBatch(context: RendererContext, capacity: number, depthOffset?: number, yOffset?: number): ISpriteBatch;
@@ -0,0 +1,42 @@
1
+ /*!
2
+ * Copyright 2011-2021 Unlok
3
+ * https://www.unlok.ca
4
+ *
5
+ * Credits & Thanks:
6
+ * https://www.unlok.ca/credits-thanks/
7
+ *
8
+ * Wayward is a copyrighted and licensed work. Modification and/or distribution of any source files is prohibited. If you wish to modify the game in any way, please refer to the modding guide:
9
+ * https://github.com/WaywardGame/types/wiki
10
+ */
11
+ import type ISpriteBatch from "renderer/spriteBatch/ISpriteBatch";
12
+ import type Vector2 from "utilities/math/Vector2";
13
+ import type WebGlContext from "renderer/WebGlContext";
14
+ import type RendererContext from "renderer/context/RendererContext";
15
+ /**
16
+ * SpriteBatch for WebGl 1
17
+ */
18
+ export default class SpriteBatch1 implements ISpriteBatch {
19
+ private readonly context;
20
+ readonly capacity: number;
21
+ private readonly depthOffset;
22
+ private readonly yOffset;
23
+ private readonly shaderProgram;
24
+ texSprites: WebGLTexture | undefined;
25
+ inverseSpriteTextureSize: Vector2 | undefined;
26
+ private count;
27
+ private readonly buffer;
28
+ private readonly colorBuffer;
29
+ private array;
30
+ private colorArray;
31
+ private begun;
32
+ private _setup;
33
+ static initializePrograms(webGlContext: WebGlContext): Promise<void>;
34
+ constructor(context: RendererContext, capacity: number, depthOffset?: number, yOffset?: number);
35
+ setup(): void;
36
+ delete(): void;
37
+ clear(): void;
38
+ begin(): void;
39
+ add(tileX: number, tileY: number, spriteSize: number, sourceX: number, sourceY: number, sourceSize: number, offsetX?: number, offsetY?: number, red?: number, green?: number, blue?: number, alpha?: number): void;
40
+ end(): number;
41
+ render(x: number, y: number, tileScale: number, viewportWidth: number, viewportHeight: number): void;
42
+ }
@@ -0,0 +1,49 @@
1
+ /*!
2
+ * Copyright 2011-2021 Unlok
3
+ * https://www.unlok.ca
4
+ *
5
+ * Credits & Thanks:
6
+ * https://www.unlok.ca/credits-thanks/
7
+ *
8
+ * Wayward is a copyrighted and licensed work. Modification and/or distribution of any source files is prohibited. If you wish to modify the game in any way, please refer to the modding guide:
9
+ * https://github.com/WaywardGame/types/wiki
10
+ */
11
+ import type ISpriteBatch from "renderer/spriteBatch/ISpriteBatch";
12
+ import type Vector2 from "utilities/math/Vector2";
13
+ import type WebGlContext from "renderer/WebGlContext";
14
+ import type RendererContext from "renderer/context/RendererContext";
15
+ /**
16
+ * SpriteBatch for WebGl 2
17
+ */
18
+ export default class SpriteBatch2 implements ISpriteBatch {
19
+ private readonly context;
20
+ readonly capacity: number;
21
+ private readonly depthOffset;
22
+ private readonly yOffset;
23
+ private readonly shaderProgram;
24
+ texSprites: WebGLTexture | undefined;
25
+ inverseSpriteTextureSize: Vector2 | undefined;
26
+ private spriteCount;
27
+ private readonly texCordBuffer;
28
+ private texCordArray;
29
+ private readonly dataBuffer;
30
+ private dataArray;
31
+ private readonly colorBuffer;
32
+ private colorArray;
33
+ private begun;
34
+ private readonly vertexArray;
35
+ private _setup;
36
+ static initializePrograms(webGlContext: WebGlContext): Promise<void>;
37
+ constructor(context: RendererContext, capacity: number, depthOffset?: number, yOffset?: number);
38
+ setup(): void;
39
+ delete(): void;
40
+ clear(): void;
41
+ begin(): void;
42
+ add(tileX: number, tileY: number, spriteSize: number, sourceX: number, sourceY: number, sourceSize: number, offsetX?: number, offsetY?: number, red?: number, green?: number, blue?: number, alpha?: number): void;
43
+ /**
44
+ * Binds sprites to be included in the next render
45
+ * @returns number of sprites being rendered
46
+ */
47
+ end(): number;
48
+ render(x: number, y: number, tileScale: number, viewportWidth: number, viewportHeight: number): void;
49
+ }
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@wayward/types",
3
3
  "description": "TypeScript declarations for Wayward, used for modding.",
4
- "version": "2.11.4-beta.dev.20220211.1",
4
+ "version": "2.11.4-beta.dev.20220218.1",
5
5
  "license": "MIT",
6
6
  "repository": {
7
7
  "type": "git",