@wayward/types 2.12.0-beta.dev.20220920.1 → 2.12.0-beta.dev.20220921.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.
@@ -9,7 +9,7 @@
9
9
  * https://github.com/WaywardGame/types/wiki
10
10
  */
11
11
  import EventEmitter from "event/EventEmitter";
12
- import type { DoorOrientation, IDoodadDescription, IDoodadOptions, IHasBuilder } from "game/doodad/IDoodad";
12
+ import type { DoodadTag, DoorOrientation, IDoodadDescription, IDoodadOptions, IHasBuilder } from "game/doodad/IDoodad";
13
13
  import { DoodadType, DoodadTypeGroup, GrowingStage } from "game/doodad/IDoodad";
14
14
  import { ActionType } from "game/entity/action/IAction";
15
15
  import type Creature from "game/entity/creature/Creature";
@@ -104,8 +104,10 @@ export default class Doodad extends EventEmitter.Host<IDoodadEvents> implements
104
104
  hitchedCreature?: number;
105
105
  tradedFrom?: string[];
106
106
  aberrant?: boolean;
107
+ private _tags?;
107
108
  magic: MagicalPropertyManager;
108
109
  private fireStage?;
110
+ get tags(): Set<DoodadTag>;
109
111
  islandId: IslandId;
110
112
  private _description;
111
113
  private _tile;
@@ -353,6 +353,10 @@ export declare enum DoodadType {
353
353
  WaterLilies = 151,
354
354
  Spikerush = 152
355
355
  }
356
+ export declare enum DoodadTag {
357
+ None = 0,
358
+ ProppedOpen = 1
359
+ }
356
360
  /**
357
361
  * All tree types that can be spawned during map gen
358
362
  * !! This must be kept in sync with the tree list in setupTiles !!
@@ -13,7 +13,7 @@ import EventEmitter from "event/EventEmitter";
13
13
  import type Creature from "game/entity/creature/Creature";
14
14
  import type { IDamageInfo } from "game/entity/creature/ICreature";
15
15
  import type Human from "game/entity/Human";
16
- import type { IEntityEvents, IProperties, IStatus, Property, StatusEffectChangeReason } from "game/entity/IEntity";
16
+ import type { EntityTag, IEntityEvents, IProperties, IStatus, Property, StatusEffectChangeReason } from "game/entity/IEntity";
17
17
  import { DamageType, EntityType, MoveType, StatusType } from "game/entity/IEntity";
18
18
  import { Delay, MovingClientSide } from "game/entity/IHuman";
19
19
  import type { IStats } from "game/entity/IStats";
@@ -71,6 +71,8 @@ export default abstract class Entity extends EventEmitter.Host<IEntityEvents> im
71
71
  stats: IStats;
72
72
  status: IStatus;
73
73
  properties: IProperties | undefined;
74
+ private _tags?;
75
+ get tags(): Set<EntityTag>;
74
76
  islandId: IslandId;
75
77
  attackAnimationType: DamageType | undefined;
76
78
  attackAnimationTime: IMovementTime | undefined;
@@ -125,7 +125,7 @@ export default abstract class Human extends Entity implements IHasInsulation {
125
125
  * Returns true if this is the special dedicated server player
126
126
  */
127
127
  isServer(): boolean;
128
- isMultiplayerHost(): boolean;
128
+ isHost(): boolean;
129
129
  protected onMovementCompleted(): void;
130
130
  moveTowardsIsland(direction: Direction.Cardinal | Direction.None, options?: Partial<IMoveToIslandOptions>): Promise<void>;
131
131
  moveToIslandPosition(position: IVector2, options?: Partial<IMoveToIslandOptions>): Promise<void>;
@@ -215,4 +215,7 @@ export interface IAttackSkillBonus {
215
215
  skill: SkillType;
216
216
  value: number;
217
217
  }
218
+ export declare enum EntityTag {
219
+ None = 0
220
+ }
218
221
  export {};
@@ -24,7 +24,7 @@ export declare const actionDescriptionsSlow: {
24
24
  16: import("./Action").Action<[import("game/entity/action/IAction").ActionArgument.ItemInventory], import("../Human").default, void, import("game/entity/action/actions/Cast").ICastCanUse, [import("../../item/Item").default]>;
25
25
  99: import("./Action").Action<[[import("game/entity/action/IAction").ActionArgument.ItemInventory, import("game/entity/action/IAction").ActionArgument.Undefined]], import("../Human").default, void, import("game/entity/action/actions/Gather").IGatherCanUse, [(import("../../item/Item").default | undefined)?]>;
26
26
  71: import("./Action").Action<[[import("game/entity/action/IAction").ActionArgument.Container, import("game/entity/action/IAction").ActionArgument.Undefined], [import("game/entity/action/IAction").ActionArgument.Boolean, import("game/entity/action/IAction").ActionArgument.Undefined]], import("../Human").default, void, import("game/entity/action/actions/ToggleContainer").IToggleContainerCanUse, [(import("../../item/IItem").IContainer | undefined)?, (boolean | undefined)?]>;
27
- 50: import("./Action").Action<[[import("game/entity/action/IAction").ActionArgument.Doodad, import("game/entity/action/IAction").ActionArgument.Undefined]], import("../Human").default, true | undefined, import("game/entity/action/actions/ToggleDoor").IToggleDoorCanUse, [(import("../../doodad/Doodad").default | undefined)?]>;
27
+ 50: import("./Action").Action<[[import("game/entity/action/IAction").ActionArgument.Doodad, import("game/entity/action/IAction").ActionArgument.Undefined], [import("game/entity/action/IAction").ActionArgument.Boolean, import("game/entity/action/IAction").ActionArgument.Undefined]], import("../Human").default, true | undefined, import("game/entity/action/actions/ToggleDoor").IToggleDoorCanUse, [(import("../../doodad/Doodad").default | undefined)?, (boolean | undefined)?]>;
28
28
  26: import("./Action").Action<[import("game/entity/action/IAction").ActionArgument.ItemNearby], import("../Human").default, void, import("game/entity/action/IAction").IActionUsable, [import("../../item/Item").default]>;
29
29
  66: import("./Action").Action<[import("game/entity/action/IAction").ActionArgument.ItemType, [import("game/entity/action/IAction").ActionArgument.ItemArrayNearby, import("game/entity/action/IAction").ActionArgument.Undefined], [import("game/entity/action/IAction").ActionArgument.ItemArrayNearby, import("game/entity/action/IAction").ActionArgument.Undefined], [import("game/entity/action/IAction").ActionArgument.ItemNearby, import("game/entity/action/IAction").ActionArgument.Undefined], [import("game/entity/action/IAction").ActionArgument.Boolean, import("game/entity/action/IAction").ActionArgument.Undefined]], import("../Human").default, void, import("game/entity/action/actions/Craft").ICraftCanUse, [import("../../item/IItem").ItemType, (import("../../item/Item").default[] | undefined)?, (import("../../item/Item").default[] | undefined)?, (import("../../item/Item").default | undefined)?, (boolean | undefined)?]>;
30
30
  114: import("./Action").Action<[import("game/entity/action/IAction").ActionArgument.String, import("game/entity/action/IAction").ActionArgument.Vector3], import("../Human").default, void, import("game/entity/action/IAction").IActionUsable, [string, import("../../../utilities/math/IVector").IVector3]>;
@@ -73,7 +73,7 @@ export declare const actionDescriptionsSlow: {
73
73
  55: import("./Action").Action<[import("game/entity/action/IAction").ActionArgument.ItemInventory], import("../Human").default, void, import("game/entity/action/actions/Offer").IOfferCanUse, [import("../../item/Item").default]>;
74
74
  31: import("./Action").Action<[import("game/entity/action/IAction").ActionArgument.ItemNearby], import("../Human").default, void, import("game/entity/action/IAction").IActionUsable, [import("../../item/Item").default]>;
75
75
  29: import("./Action").Action<[[import("game/entity/action/IAction").ActionArgument.Container, import("game/entity/action/IAction").ActionArgument.Undefined], [import("game/entity/action/IAction").ActionArgument.Boolean, import("game/entity/action/IAction").ActionArgument.Undefined]], import("../Human").default, void, import("game/entity/action/actions/ToggleContainer").IToggleContainerCanUse, [(import("../../item/IItem").IContainer | undefined)?, (boolean | undefined)?]>;
76
- 49: import("./Action").Action<[[import("game/entity/action/IAction").ActionArgument.Doodad, import("game/entity/action/IAction").ActionArgument.Undefined]], import("../Human").default, true | undefined, import("game/entity/action/actions/ToggleDoor").IToggleDoorCanUse, [(import("../../doodad/Doodad").default | undefined)?]>;
76
+ 49: import("./Action").Action<[[import("game/entity/action/IAction").ActionArgument.Doodad, import("game/entity/action/IAction").ActionArgument.Undefined], [import("game/entity/action/IAction").ActionArgument.Boolean, import("game/entity/action/IAction").ActionArgument.Undefined]], import("../Human").default, true | undefined, import("game/entity/action/actions/ToggleDoor").IToggleDoorCanUse, [(import("../../doodad/Doodad").default | undefined)?, (boolean | undefined)?]>;
77
77
  111: import("./Action").Action<[[import("game/entity/action/IAction").ActionArgument.ItemInventory, import("game/entity/action/IAction").ActionArgument.Undefined]], import("../Human").default, void, import("game/entity/action/actions/ToggleTilled").ITillCanUse, [(import("../../item/Item").default | undefined)?]>;
78
78
  43: import("./Action").Action<[], import("../Human").default, void, import("game/entity/action/actions/Pet").IPetCanUse, []>;
79
79
  1: import("./Action").Action<[[import("game/entity/action/IAction").ActionArgument.ItemInventory, import("game/entity/action/IAction").ActionArgument.Undefined]], import("../Human").default, void, import("game/entity/action/actions/PickUp").IPickUpCanUse, [(import("../../item/Item").default | undefined)?]>;
@@ -92,6 +92,7 @@ export declare const actionDescriptionsSlow: {
92
92
  80: import("./Action").Action<[import("game/entity/action/IAction").ActionArgument.ItemNearby, [import("game/entity/action/IAction").ActionArgument.ItemNearby, import("game/entity/action/IAction").ActionArgument.Undefined]], import("../Human").default, void, import("game/entity/action/actions/Refine").IRefineCanUse, [import("../../item/Item").default, (import("../../item/Item").default | undefined)?]>;
93
93
  21: import("./Action").Action<[import("game/entity/action/IAction").ActionArgument.ItemNearby, [import("game/entity/action/IAction").ActionArgument.ItemNearby, import("game/entity/action/IAction").ActionArgument.Undefined]], import("../Human").default, void, import("game/entity/action/actions/Reinforce").IReinforceCanUse, [import("../../item/Item").default, (import("../../item/Item").default | undefined)?]>;
94
94
  45: import("./Action").Action<[], import("../Human").default, void, import("game/entity/action/actions/Release").IReleaseCanUse, []>;
95
+ 115: import("./Action").Action<[import("game/entity/action/IAction").ActionArgument.NPC], import("../Human").default, void, import("game/entity/action/IAction").IActionUsable, [import("../npc/NPC").default]>;
95
96
  68: import("./Action").Action<[[import("game/entity/action/IAction").ActionArgument.ItemNearby, import("game/entity/action/IAction").ActionArgument.Doodad, import("game/entity/action/IAction").ActionArgument.Creature, import("game/entity/action/IAction").ActionArgument.NPC], import("game/entity/action/IAction").ActionArgument.String], import("../Human").default, void, import("game/entity/action/IAction").IActionUsable, [import("../creature/Creature").default | import("../../doodad/Doodad").default | import("../../item/Item").default | import("../npc/NPC").default, string]>;
96
97
  98: import("./Action").Action<[import("game/entity/action/IAction").ActionArgument.Island, import("game/entity/action/IAction").ActionArgument.String], import("../Human").default, void, import("game/entity/action/IAction").IActionUsable, [import("../../island/Island").default, string]>;
97
98
  18: import("./Action").Action<[import("game/entity/action/IAction").ActionArgument.ItemNearby, [import("game/entity/action/IAction").ActionArgument.ItemNearby, import("game/entity/action/IAction").ActionArgument.Doodad, import("game/entity/action/IAction").ActionArgument.Undefined]], import("../Human").default, void, import("game/entity/action/actions/Repair").IRepairCanUse, [import("../../item/Item").default, (import("../../doodad/Doodad").default | import("../../item/Item").default | undefined)?]>;
@@ -123,7 +124,7 @@ export declare const actionDescriptionsSlow: {
123
124
  2: import("./Action").Action<[[import("game/entity/action/IAction").ActionArgument.ItemInventory, import("game/entity/action/IAction").ActionArgument.Undefined], [import("game/entity/action/IAction").ActionArgument.AttackType, import("game/entity/action/IAction").ActionArgument.Undefined], [import("game/entity/action/IAction").ActionArgument.ItemInventory, import("game/entity/action/IAction").ActionArgument.Undefined]], import("../Human").default, void, import("game/entity/action/actions/Attack").IAttackCanUse, [(import("../../item/Item").default | undefined)?, (import("../IEntity").AttackType | undefined)?, (import("../../item/Item").default | undefined)?]>;
124
125
  67: import("./Action").Action<[[import("game/entity/action/IAction").ActionArgument.ItemInventory, import("game/entity/action/IAction").ActionArgument.Undefined]], import("../Human").default, void, import("game/entity/action/actions/ToggleTilled").ITillCanUse, [(import("../../item/Item").default | undefined)?]>;
125
126
  104: import("./Action").Action<[[import("game/entity/action/IAction").ActionArgument.Container, import("game/entity/action/IAction").ActionArgument.Undefined], [import("game/entity/action/IAction").ActionArgument.Boolean, import("game/entity/action/IAction").ActionArgument.Undefined]], import("../Human").default, void, import("game/entity/action/actions/ToggleContainer").IToggleContainerCanUse, [(import("../../item/IItem").IContainer | undefined)?, (boolean | undefined)?]>;
126
- 103: import("./Action").Action<[[import("game/entity/action/IAction").ActionArgument.Doodad, import("game/entity/action/IAction").ActionArgument.Undefined]], import("../Human").default, true | undefined, import("game/entity/action/actions/ToggleDoor").IToggleDoorCanUse, [(import("../../doodad/Doodad").default | undefined)?]>;
127
+ 103: import("./Action").Action<[[import("game/entity/action/IAction").ActionArgument.Doodad, import("game/entity/action/IAction").ActionArgument.Undefined], [import("game/entity/action/IAction").ActionArgument.Boolean, import("game/entity/action/IAction").ActionArgument.Undefined]], import("../Human").default, true | undefined, import("game/entity/action/actions/ToggleDoor").IToggleDoorCanUse, [(import("../../doodad/Doodad").default | undefined)?, (boolean | undefined)?]>;
127
128
  101: import("./Action").Action<[], import("../Human").default, void, import("game/entity/action/actions/ToggleHitch").IToggleHitchCanUse, []>;
128
129
  112: import("./Action").Action<[[import("game/entity/action/IAction").ActionArgument.ItemInventory, import("game/entity/action/IAction").ActionArgument.Undefined]], import("../Human").default, void, import("game/entity/action/actions/ToggleTilled").ITillCanUse, [(import("../../item/Item").default | undefined)?]>;
129
130
  102: import("./Action").Action<[[import("game/entity/action/IAction").ActionArgument.ItemNearby, import("game/entity/action/IAction").ActionArgument.Doodad, import("game/entity/action/IAction").ActionArgument.Undefined]], import("../Human").default, void, import("game/entity/action/actions/ToggleVehicle").ToggleVehicleCanUse, [(import("../../doodad/Doodad").default | import("../../item/Item").default | undefined)?]>;
@@ -140,4 +141,5 @@ export declare const actionDescriptionsSlow: {
140
141
  105: import("./Action").Action<[import("game/entity/action/IAction").ActionArgument.String, import("game/entity/action/IAction").ActionArgument.Object], import("../Human").default, void, import("game/entity/action/IAction").IActionUsable, [string, any?]>;
141
142
  107: import("./Action").Action<[[import("game/entity/action/IAction").ActionArgument.Vector2Array, import("game/entity/action/IAction").ActionArgument.Undefined], [import("game/entity/action/IAction").ActionArgument.Boolean, import("game/entity/action/IAction").ActionArgument.Undefined]], import("../Human").default, void, import("game/entity/action/IAction").IActionUsable, [(import("../../../utilities/math/IVector").IVector2[] | undefined)?, (boolean | undefined)?]>;
142
143
  92: import("./Action").Action<[import("game/entity/action/IAction").ActionArgument.ItemNearby, [import("game/entity/action/IAction").ActionArgument.ItemNearby, import("game/entity/action/IAction").ActionArgument.Undefined]], import("../Human").default, void, import("game/entity/action/actions/Upgrade").IUpgradeCanUse, [import("../../item/Item").default, (import("../../item/Item").default | undefined)?]>;
144
+ 116: import("./Action").Action<[[import("game/entity/action/IAction").ActionArgument.Doodad, import("game/entity/action/IAction").ActionArgument.Undefined], [import("game/entity/action/IAction").ActionArgument.Boolean, import("game/entity/action/IAction").ActionArgument.Undefined]], import("../Human").default, true | undefined, import("game/entity/action/actions/ToggleDoor").IToggleDoorCanUse, [(import("../../doodad/Doodad").default | undefined)?, (boolean | undefined)?]>;
143
145
  };
@@ -149,7 +149,9 @@ export declare enum ActionType {
149
149
  PackGround = 111,
150
150
  ToggleTilled = 112,
151
151
  DismountVehicle = 113,
152
- CreatrControllableNPC = 114
152
+ CreateControllableNPC = 114,
153
+ RemoveControllableNPC = 115,
154
+ PropOpenDoor = 116
153
155
  }
154
156
  export declare enum ActionUsability {
155
157
  Paused = 0,
@@ -8,5 +8,5 @@
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
- declare const _default: import("../Action").Action<[[import("game/entity/action/IAction").ActionArgument.Doodad, import("game/entity/action/IAction").ActionArgument.Undefined]], import("../../Human").default, true | undefined, import("game/entity/action/actions/ToggleDoor").IToggleDoorCanUse, [(import("../../../doodad/Doodad").default | undefined)?]>;
11
+ declare const _default: import("../Action").Action<[[import("game/entity/action/IAction").ActionArgument.Doodad, import("game/entity/action/IAction").ActionArgument.Undefined], [import("game/entity/action/IAction").ActionArgument.Boolean, import("game/entity/action/IAction").ActionArgument.Undefined]], import("../../Human").default, true | undefined, import("game/entity/action/actions/ToggleDoor").IToggleDoorCanUse, [(import("../../../doodad/Doodad").default | undefined)?, (boolean | undefined)?]>;
12
12
  export default _default;
@@ -8,5 +8,5 @@
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
- declare const _default: import("../Action").Action<[[import("game/entity/action/IAction").ActionArgument.Doodad, import("game/entity/action/IAction").ActionArgument.Undefined]], import("../../Human").default, true | undefined, import("game/entity/action/actions/ToggleDoor").IToggleDoorCanUse, [(import("../../../doodad/Doodad").default | undefined)?]>;
11
+ declare const _default: import("../Action").Action<[[import("../IAction").ActionArgument.Doodad, import("../IAction").ActionArgument.Undefined], [import("../IAction").ActionArgument.Boolean, import("../IAction").ActionArgument.Undefined]], import("../../Human").default, true | undefined, import("game/entity/action/actions/ToggleDoor").IToggleDoorCanUse, [(import("../../../doodad/Doodad").default | undefined)?, (boolean | undefined)?]>;
12
12
  export default _default;
@@ -0,0 +1,12 @@
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
+ declare const _default: import("../Action").Action<[[import("game/entity/action/IAction").ActionArgument.Doodad, import("game/entity/action/IAction").ActionArgument.Undefined], [import("game/entity/action/IAction").ActionArgument.Boolean, import("game/entity/action/IAction").ActionArgument.Undefined]], import("../../Human").default, true | undefined, import("game/entity/action/actions/ToggleDoor").IToggleDoorCanUse, [(import("../../../doodad/Doodad").default | undefined)?, (boolean | undefined)?]>;
12
+ export default _default;
@@ -0,0 +1,14 @@
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 { Action } from "game/entity/action/Action";
12
+ import { ActionArgument } from "game/entity/action/IAction";
13
+ declare const _default: Action<[ActionArgument.NPC], import("../../Human").default, void, import("game/entity/action/IAction").IActionUsable, [import("../../npc/NPC").default]>;
14
+ export default _default;
@@ -19,5 +19,5 @@ export interface IToggleDoorCanUse extends IActionUsable {
19
19
  tile: ITile;
20
20
  changeType: DoodadType;
21
21
  }
22
- declare const _default: Action<[[ActionArgument.Doodad, ActionArgument.Undefined]], import("../../Human").default, true | undefined, IToggleDoorCanUse, [(Doodad | undefined)?]>;
22
+ declare const _default: Action<[[ActionArgument.Doodad, ActionArgument.Undefined], [ActionArgument.Boolean, ActionArgument.Undefined]], import("../../Human").default, true | undefined, IToggleDoorCanUse, [(Doodad | undefined)?, (boolean | undefined)?]>;
23
23
  export default _default;
@@ -13,9 +13,10 @@ import type Human from "game/entity/Human";
13
13
  import type Item from "game/item/Item";
14
14
  import type { ITreasure } from "game/mapping/DrawnMap";
15
15
  import type DrawnMap from "game/mapping/DrawnMap";
16
+ import type { IVector3 } from "utilities/math/IVector";
16
17
  export declare enum GatherTreasureResult {
17
18
  NoTreasure = 0,
18
19
  NotYet = 1,
19
20
  Gathered = 2
20
21
  }
21
- export default function (map: DrawnMap, treasure: ITreasure, action: IActionHandlerApi<Human>, tool?: Item): GatherTreasureResult;
22
+ export default function (map: DrawnMap, treasure: ITreasure, actionPoint: IVector3, action: IActionHandlerApi<Human>, tool?: Item): GatherTreasureResult;
@@ -1314,6 +1314,9 @@ export declare enum ItemType {
1314
1314
  SpikerushSheaths = 720,
1315
1315
  SpikerushSeeds = 721
1316
1316
  }
1317
+ export declare enum ItemTag {
1318
+ None = 0
1319
+ }
1317
1320
  export declare enum ItemTypeGroup {
1318
1321
  Invalid = 800,
1319
1322
  Sharpened = 801,
@@ -23,7 +23,7 @@ import { CreationId } from "game/IGame";
23
23
  import type { IObject, IObjectOptions } from "game/IObject";
24
24
  import { Quality } from "game/IObject";
25
25
  import type { IslandId } from "game/island/IIsland";
26
- import type { ContainerReference, IConstructedInfo, IContainable, IContainer, IItemDescription, IItemDisassembleResult, IItemUsed, IMagicalPropertyInfo, IMoveToTileOptions } from "game/item/IItem";
26
+ import type { ContainerReference, IConstructedInfo, IContainable, IContainer, IItemDescription, IItemDisassembleResult, IItemUsed, IMagicalPropertyInfo, IMoveToTileOptions, ItemTag } from "game/item/IItem";
27
27
  import { BookType, ItemType, ItemTypeGroup, ItemWeightChange, SYMBOL_CONTAINER_CACHED_REFERENCE } from "game/item/IItem";
28
28
  import type { IPlaceOnTileOptions } from "game/item/IItemManager";
29
29
  import ItemMapManager from "game/item/ItemMapManager";
@@ -99,8 +99,10 @@ export default class Item extends EventEmitter.Host<IItemEvents> implements IRef
99
99
  vehicleFacingDirection?: Direction.Cardinal;
100
100
  weight: number;
101
101
  weightFraction?: number;
102
+ private _tags?;
102
103
  magic: MagicalPropertyManager;
103
104
  map: ItemMapManager;
105
+ get tags(): Set<ItemTag>;
104
106
  islandId: IslandId;
105
107
  offsetX?: number;
106
108
  offsetY?: number;
@@ -11,7 +11,7 @@
11
11
  import type { Music, SfxType } from "audio/IAudio";
12
12
  import type { Command, CommandCallback } from "command/ICommand";
13
13
  import type { BiomeType, IBiomeDescription } from "game/biome/IBiome";
14
- import type { DoodadType, DoodadTypeGroup, IDoodadDescription, IDoodadGroupDescription } from "game/doodad/IDoodad";
14
+ import type { DoodadTag, DoodadType, DoodadTypeGroup, IDoodadDescription, IDoodadGroupDescription } from "game/doodad/IDoodad";
15
15
  import type { ActionType, IActionDescription } from "game/entity/action/IAction";
16
16
  import type { UsableActionSet, usableActionSets } from "game/entity/action/usable/actions/UsableActionsMain";
17
17
  import type UsableActionRegistrar from "game/entity/action/usable/UsableActionRegistrar";
@@ -19,7 +19,7 @@ import type { UsableActionGenerator } from "game/entity/action/usable/UsableActi
19
19
  import type { UsableActionType } from "game/entity/action/usable/UsableActionType";
20
20
  import type { ICorpseDescription } from "game/entity/creature/corpse/ICorpse";
21
21
  import type { CreatureType, ICreatureDescription } from "game/entity/creature/ICreature";
22
- import type { StatusType } from "game/entity/IEntity";
22
+ import type { EntityTag, StatusType } from "game/entity/IEntity";
23
23
  import type { SkillType } from "game/entity/IHuman";
24
24
  import type { Stat } from "game/entity/IStats";
25
25
  import type { NPCType } from "game/entity/npc/INPCs";
@@ -34,7 +34,7 @@ import type { ISkillDescription } from "game/entity/skill/ISkills";
34
34
  import type { StatusEffectClass } from "game/entity/status/StatusEffect";
35
35
  import type { InspectType } from "game/inspection/IInspection";
36
36
  import type { InspectionClass } from "game/inspection/InspectionTypeMap";
37
- import type { IItemDescription, IItemGroupDescription, ItemType, ItemTypeGroup } from "game/item/IItem";
37
+ import type { IItemDescription, IItemGroupDescription, ItemTag, ItemType, ItemTypeGroup } from "game/item/IItem";
38
38
  import type { IMagicalPropertyDescription, MagicalPropertyType } from "game/magic/MagicalPropertyType";
39
39
  import type { ILoadingDescription } from "game/meta/Loading";
40
40
  import type { Prompt } from "game/meta/prompt/IPrompt";
@@ -117,7 +117,10 @@ export declare enum ModRegistrationType {
117
117
  UsableActions = 44,
118
118
  UsableActionType = 45,
119
119
  UsableActionTypePlaceholder = 46,
120
- WorldLayer = 47
120
+ WorldLayer = 47,
121
+ ItemTag = 48,
122
+ DoodadTag = 49,
123
+ EntityTag = 50
121
124
  }
122
125
  export interface ILanguageRegistration extends IBaseModRegistration {
123
126
  type: ModRegistrationType.Language;
@@ -350,10 +353,22 @@ export interface IMagicalPropertyRegistration extends IBaseModRegistration {
350
353
  name: string;
351
354
  description: IMagicalPropertyDescription;
352
355
  }
356
+ export interface IItemTagRegistration extends IBaseModRegistration {
357
+ type: ModRegistrationType.ItemTag;
358
+ name: string;
359
+ }
360
+ export interface IDoodadTagRegistration extends IBaseModRegistration {
361
+ type: ModRegistrationType.DoodadTag;
362
+ name: string;
363
+ }
364
+ export interface IEntityTagRegistration extends IBaseModRegistration {
365
+ type: ModRegistrationType.EntityTag;
366
+ name: string;
367
+ }
353
368
  export interface IInheritsRegistrationTime {
354
369
  useRegistrationTime: ModRegistrationType;
355
370
  }
356
- export declare type ModRegistration = IActionRegistration | IBindableRegistration | IBiomeRegistration | IBulkRegistration | ICommandRegistration | ICreatureRegistration | IDialogRegistration | IDictionaryRegistration | IDoodadGroupRegistration | IDoodadRegistration | IHelpArticleRegistration | IInspectionTypeRegistration | IInterModRegistration | IInterModRegistryRegistration | IInterruptChoiceRegistration | IInterruptRegistration | IItemGroupRegistration | IItemRegistration | ILanguageExtensionRegistration | ILanguageRegistration | ILoadRegistration | IMagicalPropertyRegistration | IMenuBarButtonRegistration | IMessageRegistration | IMessageSourceRegistration | IMusicTrackRegistration | INoteRegistration | INPCRegistration | IOptionsSectionRegistration | IOverlayRegistration | IPacketRegistration | IPromptRegistration | IQuadrantComponentRegistration | IQuestRegistration | IQuestRequirementRegistration | IRegistryRegistration | ISkillRegistration | ISoundEffectRegistration | IStatRegistration | IStatusEffectRegistration | ITerrainDecorationRegistration | ITerrainRegistration | ITileEventRegistration | ITileLayerTypeRegistration | IUsableActionsRegistration | IUsableActionTypePlaceholderRegistration | IUsableActionTypeRegistration;
371
+ export declare type ModRegistration = IActionRegistration | IBindableRegistration | IBiomeRegistration | IBulkRegistration | ICommandRegistration | ICreatureRegistration | IDialogRegistration | IDictionaryRegistration | IDoodadGroupRegistration | IDoodadRegistration | IHelpArticleRegistration | IInspectionTypeRegistration | IInterModRegistration | IInterModRegistryRegistration | IInterruptChoiceRegistration | IInterruptRegistration | IItemGroupRegistration | IItemRegistration | ILanguageExtensionRegistration | ILanguageRegistration | ILoadRegistration | IMagicalPropertyRegistration | IMenuBarButtonRegistration | IMessageRegistration | IMessageSourceRegistration | IMusicTrackRegistration | INoteRegistration | INPCRegistration | IOptionsSectionRegistration | IOverlayRegistration | IPacketRegistration | IPromptRegistration | IQuadrantComponentRegistration | IQuestRegistration | IQuestRequirementRegistration | IRegistryRegistration | ISkillRegistration | ISoundEffectRegistration | IStatRegistration | IStatusEffectRegistration | ITerrainDecorationRegistration | ITerrainRegistration | ITileEventRegistration | ITileLayerTypeRegistration | IUsableActionsRegistration | IUsableActionTypePlaceholderRegistration | IUsableActionTypeRegistration | IItemTagRegistration | IDoodadTagRegistration | IEntityTagRegistration;
357
372
  export declare const SYMBOL_SUPER_REGISTRY: unique symbol;
358
373
  declare module Register {
359
374
  /**
@@ -627,6 +642,18 @@ declare module Register {
627
642
  * See — [Adding Magical Properties](https://github.com/WaywardGame/types/wiki/Adding-Magical-Properties)
628
643
  */
629
644
  export function magicalProperty(name: string, description: IMagicalPropertyDescription): <K extends string | number | symbol, T extends { [k in K]: MagicalPropertyType; }>(target: T, key: K) => void;
645
+ /**
646
+ * Registers an item tag.
647
+ */
648
+ export function itemTag(name: string): <K extends string | number | symbol, T extends { [k in K]: ItemTag; }>(target: T, key: K) => void;
649
+ /**
650
+ * Registers a doodad tag.
651
+ */
652
+ export function doodadTag(name: string): <K extends string | number | symbol, T extends { [k in K]: DoodadTag; }>(target: T, key: K) => void;
653
+ /**
654
+ * Registers an entity tag.
655
+ */
656
+ export function entityTag(name: string): <K extends string | number | symbol, T extends { [k in K]: EntityTag; }>(target: T, key: K) => void;
630
657
  /**
631
658
  * Registers a "usable" action generator — actions that appear in the UI, and can be slotted in the action bar.
632
659
  * @param set Where to append the usable actions
@@ -11,6 +11,7 @@
11
11
  import type { IActionDescription } from "game/entity/action/IAction";
12
12
  import { ActionArgument, ActionType } from "game/entity/action/IAction";
13
13
  import type Entity from "game/entity/Entity";
14
+ import type Player from "game/entity/player/Player";
14
15
  import type Item from "game/item/Item";
15
16
  import { PacketType } from "multiplayer/packets/IPacket";
16
17
  import ActionPacketBase from "multiplayer/packets/shared/ActionPacketBase";
@@ -20,6 +21,7 @@ export default class ActionPacket extends ActionPacketBase {
20
21
  arguments: any[];
21
22
  items: Item[];
22
23
  argumentTypes: ActionArgument[];
24
+ connectionPlayer: Player | undefined;
23
25
  getType(): PacketType;
24
26
  get action(): IActionDescription;
25
27
  getDebugInfo(): string;
@@ -81,6 +81,7 @@ export default ContextMenu;
81
81
  interface IContextMenuOptionEvents extends Events<Button> {
82
82
  chosen(choice?: ContextMenuOption): any;
83
83
  becomeActive(): any;
84
+ dispose(): any;
84
85
  }
85
86
  export declare class ContextMenuOption extends Button {
86
87
  private readonly optionDescription;
@@ -81,5 +81,8 @@ export declare enum EnumId {
81
81
  Biome = 39,
82
82
  UsableActionType = 40,
83
83
  UsableActionTypePlaceholder = 41,
84
- MagicalProperty = 42
84
+ MagicalProperty = 42,
85
+ ItemTag = 43,
86
+ DoodadTag = 44,
87
+ EntityTag = 45
85
88
  }
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.12.0-beta.dev.20220920.1",
4
+ "version": "2.12.0-beta.dev.20220921.1",
5
5
  "license": "MIT",
6
6
  "repository": {
7
7
  "type": "git",