@wayward/types 2.15.0-beta.dev.20251011.1 → 2.15.0-beta.dev.20251018.2
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.
- package/definitions/game/audio/IAudio.d.ts +70 -66
- package/definitions/game/game/curse/Curse.d.ts +11 -4
- package/definitions/game/game/curse/CurseEvent.d.ts +14 -5
- package/definitions/game/game/curse/ICurse.d.ts +11 -1
- package/definitions/game/game/curse/event/CurseEventCraftingInspiration.d.ts +2 -0
- package/definitions/game/game/curse/event/CurseEventFrigidNight.d.ts +1 -0
- package/definitions/game/game/curse/event/CurseEventHeatWave.d.ts +1 -0
- package/definitions/game/game/curse/event/CurseEventHorde.d.ts +20 -0
- package/definitions/game/game/curse/event/CurseEventLucky.d.ts +1 -0
- package/definitions/game/game/curse/event/CurseEventNewPlants.d.ts +15 -0
- package/definitions/game/game/curse/event/CurseEventPlantDeath.d.ts +15 -0
- package/definitions/game/game/curse/event/CurseEventShadows.d.ts +2 -1
- package/definitions/game/game/curse/event/CurseEventSwarm.d.ts +18 -0
- package/definitions/game/game/curse/event/CurseEventUnlucky.d.ts +1 -0
- package/definitions/game/game/doodad/Doodad.d.ts +3 -7
- package/definitions/game/game/doodad/DoodadUtilities.d.ts +3 -1
- package/definitions/game/game/doodad/Doodads.d.ts +2 -1
- package/definitions/game/game/doodad/IDoodad.d.ts +35 -3
- package/definitions/game/game/entity/CombatStrengthManager.d.ts +1 -1
- package/definitions/game/game/entity/Human.d.ts +3 -4
- package/definitions/game/game/entity/IEntity.d.ts +11 -0
- package/definitions/game/game/entity/IHuman.d.ts +2 -2
- package/definitions/game/game/entity/IStats.d.ts +17 -42
- package/definitions/game/game/entity/Stats.d.ts +1 -0
- package/definitions/game/game/entity/action/Action.d.ts +2 -20
- package/definitions/game/game/entity/action/actions/SetTitle.d.ts +1 -1
- package/definitions/game/game/entity/player/IMessageManager.d.ts +5 -1
- package/definitions/game/game/entity/skill/ISkills.d.ts +1 -0
- package/definitions/game/game/entity/status/IStatus.d.ts +13 -8
- package/definitions/game/game/entity/status/IStatusContext.d.ts +1 -1
- package/definitions/game/game/entity/status/StatusEffectList.d.ts +2 -0
- package/definitions/game/game/inspection/IInspection.d.ts +5 -3
- package/definitions/game/game/inspection/InspectionTypeMap.d.ts +4 -2
- package/definitions/game/game/inspection/infoProviders/MagicalCurseProperties.d.ts +30 -0
- package/definitions/game/game/inspection/infoProviders/MagicalPropertyValue.d.ts +1 -0
- package/definitions/game/game/inspection/infoProviders/item/MagicalSourceTooltip.d.ts +3 -3
- package/definitions/game/game/inspection/infoProviders/item/use/ItemBuildInfo.d.ts +1 -1
- package/definitions/game/game/inspection/inspections/MagicCurseInspection.d.ts +29 -0
- package/definitions/game/game/inspection/inspections/utility/EffectRadiusRegistry.d.ts +24 -0
- package/definitions/game/game/item/IItem.d.ts +24 -2
- package/definitions/game/game/item/Item.d.ts +0 -5
- package/definitions/game/game/item/ItemManager.d.ts +5 -0
- package/definitions/game/game/magic/IMagicalProperty.d.ts +6 -1
- package/definitions/game/game/magic/MagicalPropertyManager.d.ts +39 -5
- package/definitions/game/game/magic/MagicalPropertyType.d.ts +4 -0
- package/definitions/game/game/milestones/MilestoneDefinition.d.ts +2 -2
- package/definitions/game/game/options/IGameOptions.d.ts +7 -0
- package/definitions/game/game/reference/IReferenceManager.d.ts +12 -1
- package/definitions/game/game/tile/ITerrain.d.ts +3 -22
- package/definitions/game/game/tile/Tile.d.ts +4 -2
- package/definitions/game/game/time/TimeManager.d.ts +4 -1
- package/definitions/game/language/DictionaryMap.d.ts +32 -0
- package/definitions/game/language/LanguageManager.d.ts +0 -2
- package/definitions/game/language/Translation.d.ts +1 -0
- package/definitions/game/language/dictionary/Message.d.ts +565 -564
- package/definitions/game/language/dictionary/Misc.d.ts +69 -65
- package/definitions/game/language/dictionary/UiTranslation.d.ts +858 -850
- package/definitions/game/language/english/item/DoodadsExtra.d.ts +2 -2
- package/definitions/game/language/english/item/ItemsExtra.d.ts +2 -2
- package/definitions/game/language/english/item/MagicalPropertyTypes.d.ts +1 -1
- package/definitions/game/renderer/fieldOfView/IFieldOfView.d.ts +4 -1
- package/definitions/game/renderer/overlay/EffectRadiusOverlay.d.ts +36 -0
- package/definitions/game/renderer/world/WorldRenderer.d.ts +4 -0
- package/definitions/game/save/data/ISaveDataGlobal.d.ts +1 -0
- package/definitions/game/save/upgrade/UpgradeVersion.d.ts +4 -0
- package/definitions/game/save/upgrade/versions/beta2.15.0/beta2.15.0-dev20251012.d.ts +12 -0
- package/definitions/game/save/upgrade/versions/beta2.15.0/beta2.15.0-dev20251016.d.ts +12 -0
- package/definitions/game/save/upgrade/versions/beta2.15.0/beta2.15.0-dev20251018.d.ts +12 -0
- package/definitions/game/ui/old/OldUi.d.ts +2 -0
- package/definitions/game/ui/screen/screens/game/component/ItemComponent.d.ts +1 -0
- package/definitions/game/ui/screen/screens/game/static/Stats.d.ts +1 -0
- package/definitions/game/ui/screen/screens/game/static/stats/IStatDisplayDescription.d.ts +16 -4
- package/definitions/game/ui/screen/screens/game/static/stats/TemperatureDisplay.d.ts +13 -0
- package/definitions/game/ui/screen/screens/game/static/stats/component/StatComponent.d.ts +3 -0
- package/definitions/game/ui/screen/screens/menu/menus/options/TabPerformance.d.ts +1 -0
- package/definitions/game/ui/screen/screens/menu/menus/options/TabVideo.d.ts +2 -0
- package/definitions/game/utilities/math/Vector2.d.ts +25 -5
- package/definitions/utilities/math/Range.d.ts +6 -6
- package/package.json +1 -1
|
@@ -16,50 +16,25 @@ export declare enum Stat {
|
|
|
16
16
|
Hunger = 2,
|
|
17
17
|
Thirst = 3,
|
|
18
18
|
Weight = 4,
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
Defense = 6,
|
|
25
|
-
/**
|
|
26
|
-
* A combination of `Stat.Hunger` + `Stat.Thirst`
|
|
27
|
-
* Does not exist on `Player` instances. Used for magical items.
|
|
28
|
-
*/
|
|
29
|
-
Metabolism = 7,
|
|
30
|
-
/**
|
|
31
|
-
* Used to calculate the max weight & max health of the player.
|
|
32
|
-
*/
|
|
33
|
-
Strength = 8,
|
|
34
|
-
/**
|
|
35
|
-
* UI only. Does not exist on `Player` instances.
|
|
36
|
-
*/
|
|
37
|
-
Luck = 9,
|
|
38
|
-
/**
|
|
39
|
-
* How much this human and their inventory is affected by temperature
|
|
40
|
-
*/
|
|
19
|
+
Metabolism = 5,
|
|
20
|
+
Strength = 6,
|
|
21
|
+
Dexterity = 7,
|
|
22
|
+
Attack = 8,
|
|
23
|
+
Defense = 9,
|
|
41
24
|
InsulationHeat = 10,
|
|
42
25
|
InsulationCold = 11,
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
Curse = 18,
|
|
56
|
-
Generic = 19,
|
|
57
|
-
AttackDefenseRow = 20,
|
|
58
|
-
Dexterity = 21,
|
|
59
|
-
/**
|
|
60
|
-
* Used for creatures to stop them despawning until this stat reaches 0.
|
|
61
|
-
*/
|
|
62
|
-
DespawnProtection = 22
|
|
26
|
+
Luck = 12,
|
|
27
|
+
Curse = 13,
|
|
28
|
+
AttackDefenseRow = 14,
|
|
29
|
+
Generic = 15,
|
|
30
|
+
Temperature = 16,
|
|
31
|
+
Produce = 17,
|
|
32
|
+
Happiness = 18,
|
|
33
|
+
Tamed = 19,
|
|
34
|
+
Petting = 20,
|
|
35
|
+
Waste = 21,
|
|
36
|
+
Petted = 22,
|
|
37
|
+
DespawnProtection = 23
|
|
63
38
|
}
|
|
64
39
|
export declare const CORE_STATS: Stat[];
|
|
65
40
|
export type IStats = {
|
|
@@ -71,6 +71,7 @@ export default class Stats<T extends IStatHost> {
|
|
|
71
71
|
* Note: Initializes the stat if it does not exist.
|
|
72
72
|
*/
|
|
73
73
|
setValue(stat: Stat | IStat, amount: number, info?: StatChangeReason | IStatChangeInfo): boolean;
|
|
74
|
+
cacheDynamicValue(stat: Stat | IStat, value: number): boolean;
|
|
74
75
|
/**
|
|
75
76
|
* Reduces the given `Stat` by the given amount. Triggers `statChange`
|
|
76
77
|
* @param stat The `Stat` to reduce.
|
|
@@ -9,18 +9,10 @@
|
|
|
9
9
|
* https://github.com/WaywardGame/types/wiki
|
|
10
10
|
*/
|
|
11
11
|
import type { DeityReal } from "@wayward/game/game/deity/Deity";
|
|
12
|
-
import type Doodad from "@wayward/game/game/doodad/Doodad";
|
|
13
12
|
import type { ActionArguments, ActionArgumentTupleTypes, ActionFlag, ActionType, ActionUsability, IActionApi, IActionConfirmerApi, IActionDescription, IActionExample, IActionExampleApi, IActionHandlerApi, IActionNotUsable, IActionNotUsableHandlerApi, IActionTargetAdjacent, IActionTargetEntityRanged, IActionTargetTileRanged, IActionUsable } from "@wayward/game/game/entity/action/IAction";
|
|
14
|
-
import type Corpse from "@wayward/game/game/entity/creature/corpse/Corpse";
|
|
15
|
-
import type Creature from "@wayward/game/game/entity/creature/Creature";
|
|
16
13
|
import type Entity from "@wayward/game/game/entity/Entity";
|
|
17
|
-
import type
|
|
18
|
-
import type { EntityType } from "@wayward/game/game/entity/IEntity";
|
|
19
|
-
import type NPC from "@wayward/game/game/entity/npc/NPC";
|
|
20
|
-
import type Player from "@wayward/game/game/entity/player/Player";
|
|
21
|
-
import type Item from "@wayward/game/game/item/Item";
|
|
14
|
+
import type { EntityType, EntityTypeMap } from "@wayward/game/game/entity/IEntity";
|
|
22
15
|
import type Tile from "@wayward/game/game/tile/Tile";
|
|
23
|
-
import type TileEvent from "@wayward/game/game/tile/TileEvent";
|
|
24
16
|
import { Direction } from "@wayward/game/utilities/math/Direction";
|
|
25
17
|
import type { IVector3 } from "@wayward/game/utilities/math/IVector";
|
|
26
18
|
export declare class Action<A extends ActionArguments, T extends ActionType = ActionType, E extends Entity = Entity, R = void, CU extends IActionUsable = IActionUsable, AV extends any[] = ActionArgumentTupleTypes<A>> implements IActionDescription<A, E, R, CU, AV> {
|
|
@@ -126,15 +118,5 @@ export declare class Action<A extends ActionArguments, T extends ActionType = Ac
|
|
|
126
118
|
*/
|
|
127
119
|
clone(): Action<A, T, E, R, CU, AV>;
|
|
128
120
|
}
|
|
129
|
-
type
|
|
130
|
-
[EntityType.Corpse]: Corpse;
|
|
131
|
-
[EntityType.Creature]: Creature;
|
|
132
|
-
[EntityType.Doodad]: Doodad;
|
|
133
|
-
[EntityType.Human]: Human;
|
|
134
|
-
[EntityType.Item]: Item;
|
|
135
|
-
[EntityType.NPC]: NPC;
|
|
136
|
-
[EntityType.Player]: Player;
|
|
137
|
-
[EntityType.TileEvent]: TileEvent;
|
|
138
|
-
}[E];
|
|
139
|
-
type EntityTypeTupleType<E extends EntityType[]> = E extends [EntityType] ? EntityTypeMap<E[0]> : E extends [EntityType, EntityType] ? EntityTypeMap<E[0]> | EntityTypeMap<E[1]> : E extends [EntityType, EntityType, EntityType] ? EntityTypeMap<E[0]> | EntityTypeMap<E[1]> | EntityTypeMap<E[2]> : never;
|
|
121
|
+
type EntityTypeTupleType<E extends EntityType[]> = E extends [EntityType] ? EntityTypeMap[E[0]] : E extends [EntityType, EntityType] ? EntityTypeMap[E[0]] | EntityTypeMap[E[1]] : E extends [EntityType, EntityType, EntityType] ? EntityTypeMap[E[0]] | EntityTypeMap[E[1]] | EntityTypeMap[E[2]] : never;
|
|
140
122
|
export {};
|
|
@@ -16,5 +16,5 @@ export declare enum TitleType {
|
|
|
16
16
|
Milestone = 0,
|
|
17
17
|
Skill = 1
|
|
18
18
|
}
|
|
19
|
-
declare const _default: Action<[[ActionArgument.Undefined, import("../argument/ActionArgumentEnum").default<TitleType, "Skill" | "Milestone">], [arg1: ActionArgument.Undefined, import("../argument/ActionArgumentEnum").default<Milestone, "Statistician" | "Runekeeper" | "Cursed" | "
|
|
19
|
+
declare const _default: Action<[[ActionArgument.Undefined, import("../argument/ActionArgumentEnum").default<TitleType, "Skill" | "Milestone">], [arg1: ActionArgument.Undefined, import("../argument/ActionArgumentEnum").default<Milestone, "Statistician" | "Runekeeper" | "Cursed" | "Abnormalizer" | "Chef" | "Exterminator" | "Crafter" | "Gardener" | "Gatherer" | "Hunter" | "Locksmith" | "ReaperOfSouls" | "Survivor" | "Pitcher" | "Trapsetter" | "TreasureHunter" | "Collector" | "Explorer" | "Grandmaster" | "Prepared" | "Doctor" | "Artificer" | "Returned" | "Navigator" | "DragonSlayer" | "Treasurer" | "Pulchritudinous" | "Friendly" | "Malevolent" | "Benevolent" | "Boundless" | "Talented" | "Weathered" | "Seasoned" | "Pacifier" | "Merchant" | "Notekeeper" | "Operator" | "Huntsman" | "Contender" | "Challenger" | "DestroyerOfMagi" | "Helmsman" | "Multitasker" | "Apocryphal" | "Diverse" | "InternalDiscoveredBoats" | "Traitor" | "MasterOfAll" | "Rouseabout" | "Murderer" | "Retailer" | "Masochist" | "Versatile" | "InternalStatDiscovery" | "Dedicated" | "Hounded" | "Serene" | "InternalRuneOrAltarDiscovery" | "Curator" | "Thaumaturgic" | "InternalDeityDiscovery" | "InternalMerchantsDiscovery" | "InternalCurseSystemDiscovery" | "Invoker" | "InternalDeityInvoked" | "InternalInsulationDiscovery" | "Turbulent" | "Afflicted" | "Exsanguinated" | "InternalItemDiscovered" | "Cursebreaker">, import("../argument/ActionArgumentEnum").default<SkillType, "None" | "Taming" | "Mining" | "Swimming" | "Chemistry" | "Anatomy" | "Marksmanship" | "Blacksmithing" | "Botany" | "Camping" | "Cartography" | "Claythrowing" | "Cooking" | "Fishing" | "Fletching" | "Glassblowing" | "Leatherworking" | "Lockpicking" | "Lumberjacking" | "Mycology" | "Parrying" | "Stonecrafting" | "Tactics" | "Tailoring" | "Throwing" | "Tinkering" | "Trapping" | "Woodworking" | "Horticulture" | "Bartering" | "Seafaring" | "Thaumaturgy" | "DualWielding" | "Theurgy">]], ActionType.SetTitle, import("../../player/Player").default, void, import("@wayward/game/game/entity/action/IAction").IActionUsable, [(TitleType | undefined)?, (Milestone | SkillType | undefined)?]>;
|
|
20
20
|
export default _default;
|
|
@@ -34,6 +34,7 @@ export interface IStatusDisplayable {
|
|
|
34
34
|
getBorderColorOverride?(status?: Status): string | undefined;
|
|
35
35
|
getCategoryOverride?(status?: Status): IStatusCategoryOverride | undefined;
|
|
36
36
|
getDescriptionContent?(status: Status): IStatusDescriptionContent | undefined;
|
|
37
|
+
effects?: SupplierOr<StatusEffectList | undefined, [IStatusContext, StatusEffectList]>;
|
|
37
38
|
}
|
|
38
39
|
export interface IStatusCategoryOverride {
|
|
39
40
|
icon: string | IIcon;
|
|
@@ -64,8 +65,8 @@ export interface IStatusDescription extends IStatusDisplayable {
|
|
|
64
65
|
* Currently, "important" statuses have the same bounce animation that "threats" have.
|
|
65
66
|
*/
|
|
66
67
|
important?: true;
|
|
68
|
+
disableNotifier?: true;
|
|
67
69
|
interval?: SupplierOr<number | undefined, [IStatusContext]> | false;
|
|
68
|
-
effects?: SupplierOr<StatusEffectList | undefined, [IStatusContext, StatusEffectList]>;
|
|
69
70
|
particles?: SupplierOr<StatusParticle | undefined, [IStatusContext, StatusParticleEvent?]>;
|
|
70
71
|
/** A list of `StatusRenderer`s that could be returned by a supplier in the `renderer` property */
|
|
71
72
|
renderers?: StatusRenderer[];
|
|
@@ -149,19 +150,23 @@ export declare enum StatusEffectType {
|
|
|
149
150
|
CannotX = 1,
|
|
150
151
|
DealingAroundXDamageY = 2,
|
|
151
152
|
DealingXDamageY = 3,
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
153
|
+
DecreasesXByY = 4,
|
|
154
|
+
IncreasesXByY = 5,
|
|
155
|
+
IncreasesXRate = 6,
|
|
156
|
+
IncreasesXRateByY = 7,
|
|
157
|
+
LosingXEveryY = 8,
|
|
158
|
+
MovementSpeedSlowed = 9,
|
|
159
|
+
PercentChanceToPassEveryX = 10,
|
|
160
|
+
ReducesXByYEveryZ = 11,
|
|
161
|
+
XCannotBeRegained = 12
|
|
159
162
|
}
|
|
160
163
|
export interface StatusEffectTypeArguments {
|
|
161
164
|
[StatusEffectType.AddsAChanceOfXOnY]: [effect: TranslationArg, on?: TranslationArg];
|
|
162
165
|
[StatusEffectType.CannotX]: [x: TranslationArg];
|
|
163
166
|
[StatusEffectType.DealingAroundXDamageY]: [amount?: TranslationArg, eventOrDuration?: TranslationArg];
|
|
164
167
|
[StatusEffectType.DealingXDamageY]: [amount?: TranslationArg, eventOrDuration?: TranslationArg];
|
|
168
|
+
[StatusEffectType.DecreasesXByY]: [decreases: TranslationArg, amount?: TranslationArg];
|
|
169
|
+
[StatusEffectType.IncreasesXByY]: [increases: TranslationArg, amount?: TranslationArg];
|
|
165
170
|
[StatusEffectType.IncreasesXRate]: [increased: TranslationArg];
|
|
166
171
|
[StatusEffectType.IncreasesXRateByY]: [increased: TranslationArg, by: TranslationArg];
|
|
167
172
|
[StatusEffectType.LosingXEveryY]: [lost: TranslationArg, eventOrDuration?: TranslationArg];
|
|
@@ -29,6 +29,6 @@ declare namespace IStatusContext {
|
|
|
29
29
|
function withLevel(status: IStatusContext, level: number): IStatusContext;
|
|
30
30
|
function getInterval(status: IStatusContext): number | false;
|
|
31
31
|
function getOptions(type: StatusType, entity?: EntityWithStats): IGameOptionsStatus;
|
|
32
|
-
function getEffects(status: IStatusContext): StatusEffectList;
|
|
32
|
+
function getEffects(status: IStatusContext, displayIndex?: number): StatusEffectList;
|
|
33
33
|
}
|
|
34
34
|
export default IStatusContext;
|
|
@@ -21,6 +21,7 @@ export declare class StatusEffectList {
|
|
|
21
21
|
private readonly array;
|
|
22
22
|
private skill?;
|
|
23
23
|
private skillThresholds?;
|
|
24
|
+
private sortingDisabled;
|
|
24
25
|
constructor(context: IStatusContext);
|
|
25
26
|
private add;
|
|
26
27
|
setSkillThresholds<THRESHOLDS extends number[]>(skill: SkillType, ...thresholds: THRESHOLDS): THRESHOLDS;
|
|
@@ -30,6 +31,7 @@ export declare class StatusEffectList {
|
|
|
30
31
|
good<TYPE extends StatusEffectType>(type: TYPE | false | undefined, ...args: StatusEffectTypeArguments[TYPE]): this;
|
|
31
32
|
veryGood<TYPE extends StatusEffectType>(type: TYPE | false | undefined, ...args: StatusEffectTypeArguments[TYPE]): this;
|
|
32
33
|
passChance(revealedAt?: number): this;
|
|
34
|
+
disableSorting(): this;
|
|
33
35
|
get(): StatusEffect[];
|
|
34
36
|
getSkillThresholds(): ISkillThresholds | undefined;
|
|
35
37
|
}
|
|
@@ -34,8 +34,9 @@ export declare enum InspectType {
|
|
|
34
34
|
Deity = 22,
|
|
35
35
|
Quality = 23,
|
|
36
36
|
Magic = 24,
|
|
37
|
-
|
|
38
|
-
|
|
37
|
+
MagicCurse = 25,
|
|
38
|
+
Status = 26,
|
|
39
|
+
Damage = 27
|
|
39
40
|
}
|
|
40
41
|
/**
|
|
41
42
|
* A convenience object for the priority of an inspection compared to other inspections. Useful to make an inspection priority
|
|
@@ -48,5 +49,6 @@ export declare enum InfoIcon {
|
|
|
48
49
|
PinSelf = 2,
|
|
49
50
|
PinFriend = 3,
|
|
50
51
|
PinMap = 4,
|
|
51
|
-
PinLighthouse = 5
|
|
52
|
+
PinLighthouse = 5,
|
|
53
|
+
Curse = 6
|
|
52
54
|
}
|
|
@@ -22,6 +22,7 @@ import EquipSlotInspection from "@wayward/game/game/inspection/inspections/Equip
|
|
|
22
22
|
import IslandInspection from "@wayward/game/game/inspection/inspections/IslandInspection";
|
|
23
23
|
import ItemInspection from "@wayward/game/game/inspection/inspections/ItemInspection";
|
|
24
24
|
import ItemsInspection from "@wayward/game/game/inspection/inspections/ItemsInspection";
|
|
25
|
+
import MagicCurseInspection from "@wayward/game/game/inspection/inspections/MagicCurseInspection";
|
|
25
26
|
import MagicInspection from "@wayward/game/game/inspection/inspections/MagicInspection";
|
|
26
27
|
import MilestoneInspection from "@wayward/game/game/inspection/inspections/MilestoneInspection";
|
|
27
28
|
import NPCInspection from "@wayward/game/game/inspection/inspections/NPCInspection";
|
|
@@ -40,7 +41,7 @@ declare const inspectionTypeMap: {
|
|
|
40
41
|
14: typeof CorpseInspection;
|
|
41
42
|
15: typeof CorpsesInspection;
|
|
42
43
|
3: typeof CreatureInspection;
|
|
43
|
-
|
|
44
|
+
27: typeof DamageInspection;
|
|
44
45
|
22: typeof DeityInspection;
|
|
45
46
|
10: typeof ItemInspection;
|
|
46
47
|
4: typeof DoodadInspection;
|
|
@@ -51,6 +52,7 @@ declare const inspectionTypeMap: {
|
|
|
51
52
|
13: typeof ItemsInspection;
|
|
52
53
|
11: typeof ItemInspection;
|
|
53
54
|
24: typeof MagicInspection;
|
|
55
|
+
25: typeof MagicCurseInspection;
|
|
54
56
|
19: typeof MilestoneInspection;
|
|
55
57
|
2: typeof NPCInspection;
|
|
56
58
|
1: typeof PlayerInspection;
|
|
@@ -59,7 +61,7 @@ declare const inspectionTypeMap: {
|
|
|
59
61
|
0: typeof SelfInspection;
|
|
60
62
|
18: typeof SkillInspection;
|
|
61
63
|
20: typeof StatInspection;
|
|
62
|
-
|
|
64
|
+
26: typeof StatusInspection;
|
|
63
65
|
17: typeof TileInspection;
|
|
64
66
|
5: typeof TileEventInspection;
|
|
65
67
|
16: typeof TileEventInspection.Minors;
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* Copyright 2011-2025 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 { InfoProvider } from "@wayward/game/game/inspection/InfoProvider";
|
|
12
|
+
import MagicalPropertyManager from "@wayward/game/game/magic/MagicalPropertyManager";
|
|
13
|
+
import type TranslationImpl from "@wayward/game/language/impl/TranslationImpl";
|
|
14
|
+
import { PathType } from "@wayward/game/resource/IResourceLoader";
|
|
15
|
+
import ImagePath from "@wayward/game/ui/util/ImagePath";
|
|
16
|
+
export default class MagicalCursePropertiesInfoProvider extends InfoProvider {
|
|
17
|
+
private readonly magic;
|
|
18
|
+
static get(magic?: MagicalPropertyManager | {
|
|
19
|
+
magic?: MagicalPropertyManager;
|
|
20
|
+
}): MagicalCursePropertiesInfoProvider | undefined;
|
|
21
|
+
constructor(magic: MagicalPropertyManager);
|
|
22
|
+
getClass(): string[];
|
|
23
|
+
getIcon(): {
|
|
24
|
+
path: ImagePath<PathType.InfoIcon>;
|
|
25
|
+
width: number;
|
|
26
|
+
height: number;
|
|
27
|
+
};
|
|
28
|
+
hasContent(): boolean;
|
|
29
|
+
get(): TranslationImpl;
|
|
30
|
+
}
|
|
@@ -12,7 +12,7 @@ import type { MagicalNormalPropertyTypes, MagicalPropertyIdentity } from "@waywa
|
|
|
12
12
|
import type { MagicalSubPropertyTypes } from "@wayward/game/game/magic/IMagicalProperty";
|
|
13
13
|
import type { MagicalPropertyTypeSubTypeMap } from "@wayward/game/game/magic/MagicalPropertyType";
|
|
14
14
|
import Translation from "@wayward/game/language/Translation";
|
|
15
|
-
declare function MagicalSourceTooltip(type: MagicalNormalPropertyTypes): Translation;
|
|
16
|
-
declare function MagicalSourceTooltip<T extends MagicalSubPropertyTypes>(type: T, subType: MagicalPropertyTypeSubTypeMap[T]): Translation;
|
|
17
|
-
declare function MagicalSourceTooltip(...
|
|
15
|
+
declare function MagicalSourceTooltip(type: MagicalNormalPropertyTypes, curse?: true): Translation;
|
|
16
|
+
declare function MagicalSourceTooltip<T extends MagicalSubPropertyTypes>(type: T, subType: MagicalPropertyTypeSubTypeMap[T], curse?: true): Translation;
|
|
17
|
+
declare function MagicalSourceTooltip(...identityAndIsCurse: MagicalPropertyIdentity<[curse?: true]>): Translation;
|
|
18
18
|
export default MagicalSourceTooltip;
|
|
@@ -18,7 +18,7 @@ import { TempType } from "@wayward/game/game/temperature/ITemperature";
|
|
|
18
18
|
declare const _default: UseInfo<{
|
|
19
19
|
doodadContainer: import("../../../../doodad/IDoodad").IDoodadDescription | undefined;
|
|
20
20
|
civilizationScore: number | undefined;
|
|
21
|
-
scareRadius:
|
|
21
|
+
scareRadius: import("../../../../doodad/IDoodad").IScareRadius | undefined;
|
|
22
22
|
entityType: import("../../../../entity/IEntity").EntityType.Item;
|
|
23
23
|
value?: Item | undefined;
|
|
24
24
|
type: import("../../../../item/IItem").ItemType;
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* Copyright 2011-2025 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 { InspectType } from "@wayward/game/game/inspection/IInspection";
|
|
12
|
+
import type { SimpleInfoProvider } from "@wayward/game/game/inspection/InfoProvider";
|
|
13
|
+
import { InfoProvider } from "@wayward/game/game/inspection/InfoProvider";
|
|
14
|
+
import type { InfoProviderContext } from "@wayward/game/game/inspection/InfoProviderContext";
|
|
15
|
+
import Inspection from "@wayward/game/game/inspection/Inspection";
|
|
16
|
+
import type { MagicalPropertyIdentityHash } from "@wayward/game/game/magic/IMagicalProperty";
|
|
17
|
+
import { MagicalPropertyIdentity } from "@wayward/game/game/magic/IMagicalProperty";
|
|
18
|
+
import Translation from "@wayward/game/language/Translation";
|
|
19
|
+
import type { TranslationGenerator } from "@wayward/game/ui/component/IComponent";
|
|
20
|
+
export default class MagicCurseInspection extends Inspection<MagicalPropertyIdentityHash> {
|
|
21
|
+
static handles: (type: InspectType, value: unknown, context?: InfoProviderContext) => boolean;
|
|
22
|
+
readonly magic: MagicalPropertyIdentity;
|
|
23
|
+
constructor([, magic]: [any, MagicalPropertyIdentityHash], context?: InfoProviderContext);
|
|
24
|
+
getId(): string;
|
|
25
|
+
getBorder(): string;
|
|
26
|
+
protected getTitle(context: InfoProviderContext): Translation | SimpleInfoProvider | undefined;
|
|
27
|
+
protected getSubtitle(context: InfoProviderContext): Translation | SimpleInfoProvider | undefined;
|
|
28
|
+
protected getContent(context: InfoProviderContext): ArrayOr<TranslationGenerator | InfoProvider | undefined>;
|
|
29
|
+
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* Copyright 2011-2025 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 Entity from "@wayward/game/game/entity/Entity";
|
|
12
|
+
import type { EntityType, EntityTypeMap } from "@wayward/game/game/entity/IEntity";
|
|
13
|
+
import type { IEffectRadiusOverlayColor } from "@wayward/game/renderer/overlay/EffectRadiusOverlay";
|
|
14
|
+
import type { DistanceType } from "@wayward/game/utilities/math/Vector2";
|
|
15
|
+
interface IEffectRadius {
|
|
16
|
+
type: DistanceType;
|
|
17
|
+
radius: number;
|
|
18
|
+
overlay?: IEffectRadiusOverlayColor;
|
|
19
|
+
}
|
|
20
|
+
declare namespace EffectRadiusRegistry {
|
|
21
|
+
function registerEntityType<TYPE extends EntityType>(entityType: TYPE, supplier: (entity: EntityTypeMap[TYPE]) => IEffectRadius | undefined): void;
|
|
22
|
+
function get(entity: Entity): IEffectRadius | undefined;
|
|
23
|
+
}
|
|
24
|
+
export default EffectRadiusRegistry;
|
|
@@ -379,6 +379,19 @@ export interface IItemDescription extends IObjectDescription, IModdable, ITemper
|
|
|
379
379
|
* The item type to display instead of the described item type
|
|
380
380
|
*/
|
|
381
381
|
displayItem?: SupplierOr<DisplayableItemType | undefined, [Item]>;
|
|
382
|
+
/**
|
|
383
|
+
* A number of "display variants" for this item.
|
|
384
|
+
*
|
|
385
|
+
* Each variant must be in `ItemTypeExtra`, named `${main item type name}${1-based variant index}`.
|
|
386
|
+
* IE, `ItemType.JackOLantern` having `displayVariants: 3` will look for `ItemTypeExtra.JackOLantern1`, `JackOLantern2`, and `JackOLantern3`.
|
|
387
|
+
*
|
|
388
|
+
* Setting `displayItem` disables the functionality provided by `displayVariants`.
|
|
389
|
+
*
|
|
390
|
+
* `displayVariants` uses `aestheticRandom` to determine which variant to use.
|
|
391
|
+
* `aestheticRandom` is transferred when converting from Item to Doodad and vice versa, so the variant will remain the same,
|
|
392
|
+
* assuming `displayVariants` is set to the same count on both the item description and doodad description.
|
|
393
|
+
*/
|
|
394
|
+
displayVariants?: number;
|
|
382
395
|
onEquip?(item: Item): void;
|
|
383
396
|
onUnequip?(item: Item): void;
|
|
384
397
|
canUnequip?(item: Item): boolean | void;
|
|
@@ -1744,7 +1757,15 @@ export declare enum ItemTypeExtra {
|
|
|
1744
1757
|
WoodenBookcase_100 = 845,
|
|
1745
1758
|
RuneOfEvilSplinters = 846,
|
|
1746
1759
|
RuneOfGoodCharred = 847,
|
|
1747
|
-
TallySticks = 848
|
|
1760
|
+
TallySticks = 848,
|
|
1761
|
+
JackOLantern2 = 849,
|
|
1762
|
+
JackOLantern3 = 850,
|
|
1763
|
+
StrawScarecrow2 = 851,
|
|
1764
|
+
StrawScarecrow3 = 852,
|
|
1765
|
+
CactusScarecrow2 = 853,
|
|
1766
|
+
CactusScarecrow3 = 854,
|
|
1767
|
+
SnowScarecrow2 = 855,
|
|
1768
|
+
SnowScarecrow3 = 856
|
|
1748
1769
|
}
|
|
1749
1770
|
export type DisplayableItemType = ItemType | ItemTypeExtra;
|
|
1750
1771
|
export declare enum ItemTag {
|
|
@@ -1911,7 +1932,8 @@ export declare enum ItemTypeGroup {
|
|
|
1911
1932
|
InternalNoDropOnDoodadBreak = -9852,
|
|
1912
1933
|
Sugar = -9851,
|
|
1913
1934
|
Pan = -9850,
|
|
1914
|
-
|
|
1935
|
+
CurseWard = -9849,
|
|
1936
|
+
All = -9848
|
|
1915
1937
|
}
|
|
1916
1938
|
export type StillContainerBaseItemType = ItemType.Waterskin | ItemType.GlassBottle | ItemType.ClayJug | ItemType.CoconutContainer;
|
|
1917
1939
|
export interface IItemMovementResult {
|
|
@@ -466,11 +466,6 @@ export default class Item extends EntityMovable<IItemDescription, ItemType, Refe
|
|
|
466
466
|
* @returns number of score (or 0 if no civilization score is set).
|
|
467
467
|
*/
|
|
468
468
|
getCivilizationScore(actionType: ActionType.Build | ActionType.SetDown): number;
|
|
469
|
-
/**
|
|
470
|
-
* Gets the scarecrow radius based on doodad's definition and quality.
|
|
471
|
-
* This also exists on doodads.
|
|
472
|
-
*/
|
|
473
|
-
getScareRadius(): number;
|
|
474
469
|
getVehicle(): IItemVehicle | undefined;
|
|
475
470
|
addCreature(creature: Creature, remainTamed?: boolean): void;
|
|
476
471
|
/**
|
|
@@ -38,6 +38,8 @@ import type { ISorter } from "@wayward/utilities/collection/sort/Sorter";
|
|
|
38
38
|
import type { Events, IEventEmitter } from "@wayward/utilities/event/EventEmitter";
|
|
39
39
|
import WorldZ from "@wayward/utilities/game/WorldZ";
|
|
40
40
|
import type { Random } from "@wayward/utilities/random/Random";
|
|
41
|
+
import type { DeityReal } from "@wayward/game/game/deity/Deity";
|
|
42
|
+
import type { IRange } from "@wayward/utilities/math/Range";
|
|
41
43
|
export interface IItemManagerEvents extends Events<EntityManager<Item>> {
|
|
42
44
|
/**
|
|
43
45
|
* Called before moving items to another container
|
|
@@ -109,8 +111,10 @@ export default class ItemManager extends EntityManager<Item, IItemRemoveOptions>
|
|
|
109
111
|
private static readonly cachedWeights;
|
|
110
112
|
private static readonly cachedMostCommonItemColors;
|
|
111
113
|
private static readonly cachedItemsThatCanBeRelic;
|
|
114
|
+
private static readonly cachedRuneChanceRanges;
|
|
112
115
|
static readonly cachedItemSpawns: Map<BiomeType, Map<WorldZ, Map<TerrainType, ItemType[]>>>;
|
|
113
116
|
static getItemTypes(): readonly ItemType[];
|
|
117
|
+
static getRuneChanceRange(deity: DeityReal): IRange;
|
|
114
118
|
static getItemsWithRecipes(): readonly ItemType[];
|
|
115
119
|
static getBestItemForTier(item: ItemType | ItemTypeGroup): ItemType | undefined;
|
|
116
120
|
static getHighestItemActionTierForAction(action: ActionType): number;
|
|
@@ -153,6 +157,7 @@ export default class ItemManager extends EntityManager<Item, IItemRemoveOptions>
|
|
|
153
157
|
private static cacheItemTypes;
|
|
154
158
|
private static cacheItemWeights;
|
|
155
159
|
private static cacheCreatureOfferingsAndResources;
|
|
160
|
+
private static cacheRuneChanceRanges;
|
|
156
161
|
static cacheAsync(): Promise<void>;
|
|
157
162
|
private static cacheRelicItems;
|
|
158
163
|
private static getDisassemblyAndBurnItemTypes;
|
|
@@ -16,28 +16,32 @@ export interface IHasMagic {
|
|
|
16
16
|
}
|
|
17
17
|
export interface IMagicalProperty {
|
|
18
18
|
value: number;
|
|
19
|
+
curse?: true;
|
|
19
20
|
}
|
|
20
21
|
export declare const SYMBOL_MAGIC_SUB_PROPERTY_TYPES: unique symbol;
|
|
21
22
|
export declare const SYMBOL_MAGIC_SUB_PROPERTY_ENTRIES: unique symbol;
|
|
22
23
|
export interface IMagicalSubProperty<T extends number> {
|
|
23
24
|
subPropertyCount: number;
|
|
24
|
-
subProperties: Partial<Record<T,
|
|
25
|
+
subProperties: Partial<Record<T, IMagicalProperty>>;
|
|
25
26
|
[SYMBOL_MAGIC_SUB_PROPERTY_TYPES]: readonly T[];
|
|
26
27
|
[SYMBOL_MAGIC_SUB_PROPERTY_ENTRIES]: ReadonlyArray<{
|
|
27
28
|
type: T;
|
|
28
29
|
value: number;
|
|
30
|
+
curse?: true;
|
|
29
31
|
}>;
|
|
30
32
|
}
|
|
31
33
|
export type MagicalProperty<T extends MagicalPropertyType> = MagicalPropertyTypeSubTypeMap extends Record<T, any> ? IMagicalSubProperty<MagicalPropertyTypeSubTypeMap[T]> : IMagicalProperty;
|
|
32
34
|
export interface MagicalNormalPropertyEntry {
|
|
33
35
|
type: MagicalNormalPropertyTypes;
|
|
34
36
|
value: number;
|
|
37
|
+
curse?: true;
|
|
35
38
|
}
|
|
36
39
|
export type MagicalSubPropertyEntry = {
|
|
37
40
|
[K in MagicalSubPropertyTypes]: {
|
|
38
41
|
type: K;
|
|
39
42
|
subType: MagicalPropertyTypeSubTypeMap[K];
|
|
40
43
|
value: number;
|
|
44
|
+
curse?: true;
|
|
41
45
|
};
|
|
42
46
|
}[MagicalSubPropertyTypes];
|
|
43
47
|
export type MagicalPropertyEntry = MagicalNormalPropertyEntry | MagicalSubPropertyEntry;
|
|
@@ -49,6 +53,7 @@ export interface MagicalPropertyEntryIntersection {
|
|
|
49
53
|
type: MagicalPropertyType;
|
|
50
54
|
subType?: MagicalSubPropertySubTypes;
|
|
51
55
|
value: number;
|
|
56
|
+
curse?: true;
|
|
52
57
|
}
|
|
53
58
|
export type AnyMagicalProperty = Partial<IMagicalProperty> & PartialValues<{
|
|
54
59
|
[K in MagicalSubPropertyTypes]: IMagicalSubProperty<MagicalPropertyTypeSubTypeMap[K]>;
|
|
@@ -26,11 +26,11 @@ export interface IMagicalPropertyManagerEvents extends IEventSubscriberEvents {
|
|
|
26
26
|
/**
|
|
27
27
|
* Emitted when a property was added
|
|
28
28
|
*/
|
|
29
|
-
add(...args: MagicalPropertyIdentity<[value: number]>): any;
|
|
29
|
+
add(...args: MagicalPropertyIdentity<[value: number, curse?: true]>): any;
|
|
30
30
|
/**
|
|
31
31
|
* Emitted when a property was set, and the value it was set to
|
|
32
32
|
*/
|
|
33
|
-
set(...args: MagicalPropertyIdentity<[value: number]>): any;
|
|
33
|
+
set(...args: MagicalPropertyIdentity<[value: number, curse?: true]>): any;
|
|
34
34
|
/**
|
|
35
35
|
* Emitted when a property was set or removed
|
|
36
36
|
*/
|
|
@@ -73,6 +73,22 @@ export default class MagicalPropertyManager extends EventEmitter.Host<IMagicalPr
|
|
|
73
73
|
* @returns if this object has any of the given magical property types
|
|
74
74
|
*/
|
|
75
75
|
hasAny(...types: MagicalPropertyIdentityFlat[]): boolean;
|
|
76
|
+
/**
|
|
77
|
+
* @returns if this object has any uncursed magical properties
|
|
78
|
+
*/
|
|
79
|
+
hasUncursed(): boolean;
|
|
80
|
+
/**
|
|
81
|
+
* @returns if this object has any of the given uncursed magical property types
|
|
82
|
+
*/
|
|
83
|
+
hasUncursed(...types: MagicalPropertyIdentityFlat[]): boolean;
|
|
84
|
+
/**
|
|
85
|
+
* @returns if this object has any cursed magical properties
|
|
86
|
+
*/
|
|
87
|
+
hasCursed(): boolean;
|
|
88
|
+
/**
|
|
89
|
+
* @returns if this object has any of the given cursed magical property types
|
|
90
|
+
*/
|
|
91
|
+
hasCursed(...types: MagicalPropertyIdentityFlat[]): boolean;
|
|
76
92
|
/**
|
|
77
93
|
* @returns whether the given type of magical property is present on this object
|
|
78
94
|
*/
|
|
@@ -100,14 +116,22 @@ export default class MagicalPropertyManager extends EventEmitter.Host<IMagicalPr
|
|
|
100
116
|
*/
|
|
101
117
|
get<T extends MagicalSubPropertyTypes>(type: T, subType: MagicalPropertyTypeSubTypeMap[T]): number | undefined;
|
|
102
118
|
get(...identity: MagicalPropertyIdentity): number | undefined;
|
|
119
|
+
isCurse(...identity: MagicalPropertyIdentity): boolean;
|
|
103
120
|
/**
|
|
104
121
|
* Sets a magical property on this object. Replaces any existing magical property of that type
|
|
105
122
|
*/
|
|
106
|
-
set<T extends MagicalNormalPropertyTypes>(type: T, value: number): this;
|
|
123
|
+
set<T extends MagicalNormalPropertyTypes>(type: T, value: number, curse?: true): this;
|
|
107
124
|
/**
|
|
108
125
|
* Sets a magical sub-property on this object. Replaces any existing magical sub-property of that type
|
|
109
126
|
*/
|
|
110
|
-
set<T extends MagicalSubPropertyTypes>(type: T, subType: MagicalPropertyTypeSubTypeMap[T], value: number): this;
|
|
127
|
+
set<T extends MagicalSubPropertyTypes>(type: T, subType: MagicalPropertyTypeSubTypeMap[T], value: number, curse?: true): this;
|
|
128
|
+
/**
|
|
129
|
+
* Sets a magical property or sub-property on this object. Replaces any existing of that type
|
|
130
|
+
*/
|
|
131
|
+
set(...identityAndValueAndCurse: MagicalPropertyIdentity<[value: number, curse?: true]>): this;
|
|
132
|
+
setCurse<T extends MagicalNormalPropertyTypes>(type: T, curse?: boolean): this;
|
|
133
|
+
setCurse<T extends MagicalSubPropertyTypes>(type: T, subType: MagicalPropertyTypeSubTypeMap[T], curse?: boolean): this;
|
|
134
|
+
setCurse(...identityAndCurse: MagicalPropertyIdentity<[curse?: boolean]>): this;
|
|
111
135
|
/**
|
|
112
136
|
* Removes a magical property on this object, if it exists
|
|
113
137
|
* @returns whether the magical property was removed — ie, if it existed
|
|
@@ -154,6 +178,7 @@ export default class MagicalPropertyManager extends EventEmitter.Host<IMagicalPr
|
|
|
154
178
|
subProperties<T extends MagicalSubPropertyTypes>(type: T): ReadonlyArray<{
|
|
155
179
|
type: MagicalPropertyTypeSubTypeMap[T];
|
|
156
180
|
value: number;
|
|
181
|
+
curse?: true;
|
|
157
182
|
}>;
|
|
158
183
|
/**
|
|
159
184
|
* @returns a list of all the magical properties on this object
|
|
@@ -168,7 +193,7 @@ export default class MagicalPropertyManager extends EventEmitter.Host<IMagicalPr
|
|
|
168
193
|
* @param ender The way to end this list translation, ie and/or
|
|
169
194
|
* @param format A formatting-translation to apply to each magical property
|
|
170
195
|
*/
|
|
171
|
-
translate(ender?: ListEnder | false, format?: Translation | ((...identity: MagicalPropertyIdentity) => Translation)): TranslationImpl;
|
|
196
|
+
translate(ender?: ListEnder | false, format?: Translation | ((...identity: MagicalPropertyIdentity) => Translation), curseFilter?: "cursed" | "uncursed"): TranslationImpl;
|
|
172
197
|
/**
|
|
173
198
|
* @returns a translation for a magical property type
|
|
174
199
|
*/
|
|
@@ -178,6 +203,15 @@ export default class MagicalPropertyManager extends EventEmitter.Host<IMagicalPr
|
|
|
178
203
|
*/
|
|
179
204
|
static translate<T extends MagicalSubPropertyTypes>(type: T, subType: MagicalPropertyTypeSubTypeMap[T]): Translation;
|
|
180
205
|
static translate(...identity: MagicalPropertyIdentity): Translation;
|
|
206
|
+
/**
|
|
207
|
+
* @returns a curse translation for a magical property type
|
|
208
|
+
*/
|
|
209
|
+
static translateCurse(type: MagicalNormalPropertyTypes): Translation;
|
|
210
|
+
/**
|
|
211
|
+
* @returns a curse translation for a magical sub-property type
|
|
212
|
+
*/
|
|
213
|
+
static translateCurse<T extends MagicalSubPropertyTypes>(type: T, subType: MagicalPropertyTypeSubTypeMap[T]): Translation;
|
|
214
|
+
static translateCurse(...identity: MagicalPropertyIdentity): Translation;
|
|
181
215
|
/**
|
|
182
216
|
* @returns a translation for a magical property type
|
|
183
217
|
*/
|
|
@@ -104,6 +104,10 @@ export interface IMagicalPropertyDescription {
|
|
|
104
104
|
* By default, all magical property types can be inscribed. This allows disabling that feature for this magical property type.
|
|
105
105
|
*/
|
|
106
106
|
disableInscription?: true;
|
|
107
|
+
/**
|
|
108
|
+
* If set, this magical property cannot appear as a "curse" (inverted value) magical property.
|
|
109
|
+
*/
|
|
110
|
+
disableCurse?: true;
|
|
107
111
|
subTypeEnum?: Record<string, string | number>;
|
|
108
112
|
isValidEnum?(enumValue: number): boolean;
|
|
109
113
|
translateArgs?(...identity: MagicalPropertyIdentity): TranslationArg[];
|