@dreadwood-types/types 0.1.47 → 0.1.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 (124) hide show
  1. package/dist/adventure.d.ts +6 -6
  2. package/dist/adventure.d.ts.map +1 -1
  3. package/dist/appearance.d.ts +16 -6
  4. package/dist/appearance.d.ts.map +1 -1
  5. package/dist/appearance.js +43 -31
  6. package/dist/appearance.js.map +1 -1
  7. package/dist/areaTransitions.d.ts +1 -1
  8. package/dist/areaTransitions.d.ts.map +1 -1
  9. package/dist/areaTransitions.js +13 -0
  10. package/dist/areaTransitions.js.map +1 -1
  11. package/dist/bank.d.ts.map +1 -1
  12. package/dist/bearFloes.d.ts +83 -0
  13. package/dist/bearFloes.d.ts.map +1 -0
  14. package/dist/bearFloes.js +126 -0
  15. package/dist/bearFloes.js.map +1 -0
  16. package/dist/blacksmithing.d.ts +3 -0
  17. package/dist/blacksmithing.d.ts.map +1 -1
  18. package/dist/blacksmithing.js +81 -1
  19. package/dist/blacksmithing.js.map +1 -1
  20. package/dist/bloodRiver.d.ts +9 -6
  21. package/dist/bloodRiver.d.ts.map +1 -1
  22. package/dist/bloodRiver.js +19 -17
  23. package/dist/bloodRiver.js.map +1 -1
  24. package/dist/brokenRoad.d.ts.map +1 -1
  25. package/dist/capital.d.ts +541 -165
  26. package/dist/capital.d.ts.map +1 -1
  27. package/dist/capital.js +934 -163
  28. package/dist/capital.js.map +1 -1
  29. package/dist/charcoal.d.ts +43 -0
  30. package/dist/charcoal.d.ts.map +1 -0
  31. package/dist/charcoal.js +78 -0
  32. package/dist/charcoal.js.map +1 -0
  33. package/dist/clientConfig.d.ts +7 -2
  34. package/dist/clientConfig.d.ts.map +1 -1
  35. package/dist/clientConfig.js +14 -5
  36. package/dist/clientConfig.js.map +1 -1
  37. package/dist/constants.d.ts +196 -11
  38. package/dist/constants.d.ts.map +1 -1
  39. package/dist/constants.js +372 -21
  40. package/dist/constants.js.map +1 -1
  41. package/dist/cooking.d.ts.map +1 -1
  42. package/dist/cooking.js +2 -0
  43. package/dist/cooking.js.map +1 -1
  44. package/dist/dragonfire.d.ts +75 -0
  45. package/dist/dragonfire.d.ts.map +1 -0
  46. package/dist/dragonfire.js +73 -0
  47. package/dist/dragonfire.js.map +1 -0
  48. package/dist/dungeonCharts.d.ts +18 -0
  49. package/dist/dungeonCharts.d.ts.map +1 -0
  50. package/dist/dungeonCharts.js +67 -0
  51. package/dist/dungeonCharts.js.map +1 -0
  52. package/dist/equipment.d.ts +2 -0
  53. package/dist/equipment.d.ts.map +1 -1
  54. package/dist/equipment.js +37 -1
  55. package/dist/equipment.js.map +1 -1
  56. package/dist/frozenSet.d.ts +36 -0
  57. package/dist/frozenSet.d.ts.map +1 -0
  58. package/dist/frozenSet.js +58 -0
  59. package/dist/frozenSet.js.map +1 -0
  60. package/dist/goblinCave.d.ts +4 -4
  61. package/dist/goblinCave.d.ts.map +1 -1
  62. package/dist/goblinCave.js +1 -1
  63. package/dist/groundItems.d.ts.map +1 -1
  64. package/dist/groundItems.js +27 -0
  65. package/dist/groundItems.js.map +1 -1
  66. package/dist/harbour.d.ts +223 -0
  67. package/dist/harbour.d.ts.map +1 -0
  68. package/dist/harbour.js +264 -0
  69. package/dist/harbour.js.map +1 -0
  70. package/dist/iceDepths.d.ts +150 -0
  71. package/dist/iceDepths.d.ts.map +1 -0
  72. package/dist/iceDepths.js +132 -0
  73. package/dist/iceDepths.js.map +1 -0
  74. package/dist/index.d.ts +9 -0
  75. package/dist/index.d.ts.map +1 -1
  76. package/dist/index.js +9 -0
  77. package/dist/index.js.map +1 -1
  78. package/dist/interiorFurniture.d.ts +57 -0
  79. package/dist/interiorFurniture.d.ts.map +1 -0
  80. package/dist/interiorFurniture.js +159 -0
  81. package/dist/interiorFurniture.js.map +1 -0
  82. package/dist/landmarks.d.ts +83 -59
  83. package/dist/landmarks.d.ts.map +1 -1
  84. package/dist/landmarks.js +194 -134
  85. package/dist/landmarks.js.map +1 -1
  86. package/dist/messages.d.ts +77 -5
  87. package/dist/messages.d.ts.map +1 -1
  88. package/dist/messages.js.map +1 -1
  89. package/dist/mineCave.d.ts +7 -7
  90. package/dist/mineCave.d.ts.map +1 -1
  91. package/dist/mining.d.ts +8 -0
  92. package/dist/mining.d.ts.map +1 -1
  93. package/dist/mining.js +8 -0
  94. package/dist/mining.js.map +1 -1
  95. package/dist/questGuide.d.ts +30 -0
  96. package/dist/questGuide.d.ts.map +1 -0
  97. package/dist/questGuide.js +3 -0
  98. package/dist/questGuide.js.map +1 -0
  99. package/dist/quests.d.ts +29 -0
  100. package/dist/quests.d.ts.map +1 -1
  101. package/dist/quests.js +70 -0
  102. package/dist/quests.js.map +1 -1
  103. package/dist/snow.d.ts +2 -2
  104. package/dist/snow.d.ts.map +1 -1
  105. package/dist/snow.js +8 -5
  106. package/dist/snow.js.map +1 -1
  107. package/dist/spiderCave.d.ts.map +1 -1
  108. package/dist/travel.d.ts +7 -4
  109. package/dist/travel.d.ts.map +1 -1
  110. package/dist/travel.js +20 -4
  111. package/dist/travel.js.map +1 -1
  112. package/dist/woodwork.d.ts +8 -2
  113. package/dist/woodwork.d.ts.map +1 -1
  114. package/dist/woodwork.js +13 -3
  115. package/dist/woodwork.js.map +1 -1
  116. package/dist/xp.d.ts +18 -7
  117. package/dist/xp.d.ts.map +1 -1
  118. package/dist/xp.js +20 -9
  119. package/dist/xp.js.map +1 -1
  120. package/dist/zones.d.ts +5 -0
  121. package/dist/zones.d.ts.map +1 -1
  122. package/dist/zones.js +8 -3
  123. package/dist/zones.js.map +1 -1
  124. package/package.json +1 -1
package/dist/equipment.js CHANGED
@@ -96,6 +96,8 @@ export const EQUIP_INFO = {
96
96
  bronzeshield: { slot: 'offhand', armour: 3, damageMin: 0, damageMax: 0 },
97
97
  bronzehelmet: { slot: 'helmet', armour: 2, damageMin: 0, damageMax: 0 },
98
98
  bronzebody: { slot: 'top', armour: 5, damageMin: 0, damageMax: 0 },
99
+ bronzegauntlets: { slot: 'hands', armour: 1, damageMin: 0, damageMax: 0 },
100
+ bronzeboots: { slot: 'boots', armour: 1, damageMin: 0, damageMax: 0 },
99
101
  bronzelegs: { slot: 'bottom', armour: 3, damageMin: 0, damageMax: 0 },
100
102
  // Iron Gear
101
103
  irondagger: { slot: 'weapon', armour: 0, damageMin: 3, damageMax: 5, masteryRequirement: 10 },
@@ -104,6 +106,8 @@ export const EQUIP_INFO = {
104
106
  ironshield: { slot: 'offhand', armour: 5, damageMin: 0, damageMax: 0 },
105
107
  ironhelmet: { slot: 'helmet', armour: 4, damageMin: 0, damageMax: 0 },
106
108
  ironbody: { slot: 'top', armour: 8, damageMin: 0, damageMax: 0 },
109
+ irongauntlets: { slot: 'hands', armour: 2, damageMin: 0, damageMax: 0 },
110
+ ironboots: { slot: 'boots', armour: 2, damageMin: 0, damageMax: 0 },
107
111
  ironlegs: { slot: 'bottom', armour: 5, damageMin: 0, damageMax: 0 },
108
112
  // Iron opens two new kinds of weapon: the longsword, and daggers made to
109
113
  // be thrown (Strength, four tiles, no ammo: the blade comes back to hand).
@@ -113,6 +117,10 @@ export const EQUIP_INFO = {
113
117
  steeldagger: { slot: 'weapon', armour: 0, damageMin: 4, damageMax: 7, masteryRequirement: 24 },
114
118
  steelsword: { slot: 'weapon', armour: 0, damageMin: 6, damageMax: 9, masteryRequirement: 26 },
115
119
  steellongsword: { slot: 'weapon', armour: 0, damageMin: 7, damageMax: 10, masteryRequirement: 30 },
120
+ // The Frozen Depths' boss weapons (iceDepths.ts): a step past steel, and
121
+ // only the Warden and the Lich ever give them up.
122
+ wardensfrostblade: { slot: 'weapon', armour: 0, damageMin: 9, damageMax: 13, masteryRequirement: 36 },
123
+ lichfroststaff: { slot: 'weapon', armour: 0, damageMin: 8, damageMax: 14, masteryRequirement: 38, twoHanded: true },
116
124
  steelthrowingdagger: { slot: 'weapon', armour: 0, damageMin: 4, damageMax: 6, masteryRequirement: 22, attackInitiationRange: THROWN_ATTACK_INITIATION_RANGE },
117
125
  // Steel alone has the crushing and cleaving kinds: the mace, and the
118
126
  // two-handed battleaxe that leaves no hand for a shield.
@@ -122,7 +130,35 @@ export const EQUIP_INFO = {
122
130
  steeltowershield: { slot: 'offhand', armour: 10, damageMin: 0, damageMax: 0 },
123
131
  steelhelmet: { slot: 'helmet', armour: 6, damageMin: 0, damageMax: 0 },
124
132
  steelbody: { slot: 'top', armour: 11, damageMin: 0, damageMax: 0 },
133
+ steelgauntlets: { slot: 'hands', armour: 3, damageMin: 0, damageMax: 0 },
134
+ steelboots: { slot: 'boots', armour: 3, damageMin: 0, damageMax: 0 },
125
135
  steellegs: { slot: 'bottom', armour: 7, damageMin: 0, damageMax: 0 },
136
+ // The Frozen Dungeon set (frozenSet.ts): a tier past steel, nothing sold,
137
+ // dropped one piece at a time. The armour wants combat 45; the weapons
138
+ // gate on Mastery past the boss blades. The first amulet and ring.
139
+ frozenhelmet: { slot: 'helmet', armour: 8, damageMin: 0, damageMax: 0, combatRequirement: 45 },
140
+ frozenbody: { slot: 'top', armour: 14, damageMin: 0, damageMax: 0, combatRequirement: 45 },
141
+ // Added 2026-09-23 so the set has the sheet's plated legs: steel's 7 plus the
142
+ // set's usual step (helmet 6 to 8, body 11 to 14).
143
+ frozenlegs: { slot: 'bottom', armour: 9, damageMin: 0, damageMax: 0, combatRequirement: 45 },
144
+ // The sheet's Frostmantle Cape, rolled with the rest of the set since its model shipped (2026-09-24).
145
+ frozencape: { slot: 'cape', armour: 2, damageMin: 0, damageMax: 0, combatRequirement: 45 },
146
+ frozengauntlets: { slot: 'hands', armour: 3, damageMin: 0, damageMax: 0, combatRequirement: 45 },
147
+ frozenboots: { slot: 'boots', armour: 3, damageMin: 0, damageMax: 0, combatRequirement: 45 },
148
+ frozenshield: { slot: 'offhand', armour: 12, damageMin: 0, damageMax: 0, combatRequirement: 45 },
149
+ frozennecklace: { slot: 'amulet', armour: 2, damageMin: 0, damageMax: 0, combatRequirement: 45 },
150
+ frozenring: { slot: 'ring', armour: 1, damageMin: 0, damageMax: 0, combatRequirement: 45 },
151
+ frostfangsword: { slot: 'weapon', armour: 0, damageMin: 10, damageMax: 14, masteryRequirement: 42 },
152
+ frozenbow: {
153
+ slot: 'weapon',
154
+ armour: 0,
155
+ damageMin: 8,
156
+ damageMax: 12,
157
+ attackInitiationRange: BOW_ATTACK_INITIATION_RANGES[1],
158
+ masteryRequirement: 44,
159
+ twoHanded: true,
160
+ },
161
+ crystalfroststaff: { slot: 'weapon', armour: 0, damageMin: 10, damageMax: 16, masteryRequirement: 46, twoHanded: true },
126
162
  };
127
163
  export const EQUIP_SLOT_LABELS = {
128
164
  helmet: 'Helmet',
@@ -164,7 +200,7 @@ export function attackInitiationRangeForWeapon(kind) {
164
200
  return Math.max(MELEE_ATTACK_INITIATION_RANGE, Math.floor(configured ?? MELEE_ATTACK_INITIATION_RANGE));
165
201
  }
166
202
  /** Ranged weapons train Archery; everything else trains Strength. */
167
- const RANGED_WEAPON_KINDS = new Set(['pinebow']);
203
+ const RANGED_WEAPON_KINDS = new Set(['pinebow', 'frozenbow']);
168
204
  /**
169
205
  * Thrown weapons: Strength, at a distance, no ammo. The client draws the
170
206
  * blade flying instead of an arrow (combat_hit projectile 'dagger').
@@ -1 +1 @@
1
- {"version":3,"file":"equipment.js","sourceRoot":"","sources":["../src/equipment.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"equipment.js","sourceRoot":"","sources":["../src/equipment.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,oBAAoB,EACpB,iBAAiB,EACjB,oBAAoB,GACrB,MAAM,SAAS,CAAC;AAkBjB,MAAM,CAAC,MAAM,WAAW,GAAgB;IACtC,QAAQ;IACR,MAAM;IACN,QAAQ;IACR,KAAK;IACL,QAAQ;IACR,OAAO;IACP,QAAQ;IACR,SAAS;IACT,OAAO;IACP,MAAM;IACN,MAAM;IACN,QAAQ;CACT,CAAC;AAEF;;;;GAIG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,EAAE,CAAC;AAErC,sFAAsF;AACtF,MAAM,CAAC,MAAM,eAAe,GAA2B;IACrD,YAAY,EAAE,EAAE;IAChB,UAAU,EAAE,GAAG;IACf,WAAW,EAAE,GAAG;CACjB,CAAC;AAEF,MAAM,UAAU,eAAe,CAAC,UAAqC;IACnE,OAAO,CAAC,UAAU,IAAI,eAAe,CAAC,UAAU,CAAC,CAAC,IAAI,kBAAkB,CAAC;AAC3E,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,IAA+B;IAC1D,OAAO,CAAC,CAAC,IAAI,IAAI,IAAI,IAAI,eAAe,CAAC;AAC3C,CAAC;AAmBD,MAAM,CAAC,MAAM,6BAA6B,GAAG,CAAC,CAAC;AAC/C,sDAAsD;AACtD,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAAC,CAAC;AAChD,iEAAiE;AACjE,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAC,CAAC,EAAE,CAAC,CAAU,CAAC;AAE5D,MAAM,CAAC,MAAM,UAAU,GAA8B;IACnD,eAAe,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE;IAC3E,aAAa,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE;IACzE,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE;IACrE,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE;IACpE,eAAe,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE;IAC1E,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE;IACtE,aAAa,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE;IACxE,oBAAoB,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE;IAC/E,aAAa,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE;IACxE,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE;IACrE,0EAA0E;IAC1E,uEAAuE;IACvE,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE;IAClE,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE;IACtE,YAAY,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE;IACvE,4EAA4E;IAC5E,gFAAgF;IAChF,aAAa,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE;IACxE,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,kBAAkB,EAAE,CAAC,EAAE;IAC5F,4EAA4E;IAC5E,2EAA2E;IAC3E,wEAAwE;IACxE,eAAe,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,kBAAkB,EAAE,EAAE,EAAE;IAClG,WAAW,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE;IACrE,UAAU,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE;IACpE,YAAY,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE;IACtE,YAAY,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE;IACvE,UAAU,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE;IAClE,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE;IACrE,4EAA4E;IAC5E,cAAc,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE;IACvE,aAAa,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE;IACtE,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,kBAAkB,EAAE,EAAE,EAAE;IAC9F,UAAU,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE;IACtE,OAAO,EAAE;QACP,IAAI,EAAE,QAAQ;QACd,MAAM,EAAE,CAAC;QACT,SAAS,EAAE,CAAC;QACZ,SAAS,EAAE,CAAC;QACZ,qBAAqB,EAAE,4BAA4B,CAAC,CAAC,CAAC;QACtD,kBAAkB,EAAE,EAAE;QACtB,SAAS,EAAE,IAAI;KAChB;IACD,UAAU,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE;IACnE,WAAW,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE;IACpE,wEAAwE;IACxE,WAAW,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE;IACpE,SAAS,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE;IAClE,UAAU,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE;IACnE,4EAA4E;IAC5E,YAAY,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE;IACvE,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE;IACrE,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE;IACtE,cAAc;IACd,YAAY,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,kBAAkB,EAAE,CAAC,EAAE;IAC9F,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,kBAAkB,EAAE,CAAC,EAAE;IAC7F,YAAY,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE;IACxE,YAAY,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE;IACvE,UAAU,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE;IAClE,eAAe,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE;IACzE,WAAW,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE;IACrE,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE;IACrE,YAAY;IACZ,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,kBAAkB,EAAE,EAAE,EAAE;IAC7F,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE;IACtE,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,kBAAkB,EAAE,EAAE,EAAE;IAC5F,UAAU,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE;IACtE,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE;IACrE,QAAQ,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE;IAChE,aAAa,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE;IACvE,SAAS,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE;IACnE,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE;IACnE,yEAAyE;IACzE,2EAA2E;IAC3E,aAAa,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,kBAAkB,EAAE,EAAE,EAAE;IAChG,kBAAkB,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,kBAAkB,EAAE,EAAE,EAAE,qBAAqB,EAAE,8BAA8B,EAAE;IAC5J,aAAa;IACb,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,kBAAkB,EAAE,EAAE,EAAE;IAC9F,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,kBAAkB,EAAE,EAAE,EAAE;IAC7F,cAAc,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,kBAAkB,EAAE,EAAE,EAAE;IAClG,yEAAyE;IACzE,kDAAkD;IAClD,iBAAiB,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,kBAAkB,EAAE,EAAE,EAAE;IACrG,cAAc,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,kBAAkB,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE;IACnH,mBAAmB,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,kBAAkB,EAAE,EAAE,EAAE,qBAAqB,EAAE,8BAA8B,EAAE;IAC7J,qEAAqE;IACrE,yDAAyD;IACzD,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,kBAAkB,EAAE,EAAE,EAAE;IAC5F,cAAc,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,kBAAkB,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE;IACnH,WAAW,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE;IACvE,gBAAgB,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,EAAE,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE;IAC7E,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE;IACtE,SAAS,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE;IAClE,cAAc,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE;IACxE,UAAU,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE;IACpE,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE;IACpE,0EAA0E;IAC1E,uEAAuE;IACvE,mEAAmE;IACnE,YAAY,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,iBAAiB,EAAE,EAAE,EAAE;IAC9F,UAAU,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,iBAAiB,EAAE,EAAE,EAAE;IAC1F,8EAA8E;IAC9E,mDAAmD;IACnD,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,iBAAiB,EAAE,EAAE,EAAE;IAC5F,sGAAsG;IACtG,UAAU,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,iBAAiB,EAAE,EAAE,EAAE;IAC1F,eAAe,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,iBAAiB,EAAE,EAAE,EAAE;IAChG,WAAW,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,iBAAiB,EAAE,EAAE,EAAE;IAC5F,YAAY,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,EAAE,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,iBAAiB,EAAE,EAAE,EAAE;IAChG,cAAc,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,iBAAiB,EAAE,EAAE,EAAE;IAChG,UAAU,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,iBAAiB,EAAE,EAAE,EAAE;IAC1F,cAAc,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,kBAAkB,EAAE,EAAE,EAAE;IACnG,SAAS,EAAE;QACT,IAAI,EAAE,QAAQ;QACd,MAAM,EAAE,CAAC;QACT,SAAS,EAAE,CAAC;QACZ,SAAS,EAAE,EAAE;QACb,qBAAqB,EAAE,4BAA4B,CAAC,CAAC,CAAC;QACtD,kBAAkB,EAAE,EAAE;QACtB,SAAS,EAAE,IAAI;KAChB;IACD,iBAAiB,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,kBAAkB,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE;CACxH,CAAC;AAEF,MAAM,CAAC,MAAM,iBAAiB,GAA8B;IAC1D,MAAM,EAAE,QAAQ;IAChB,IAAI,EAAE,MAAM;IACZ,MAAM,EAAE,QAAQ;IAChB,GAAG,EAAE,KAAK;IACV,MAAM,EAAE,QAAQ;IAChB,KAAK,EAAE,OAAO;IACd,MAAM,EAAE,QAAQ;IAChB,OAAO,EAAE,UAAU;IACnB,KAAK,EAAE,OAAO;IACd,IAAI,EAAE,MAAM;IACZ,IAAI,EAAE,MAAM;IACZ,MAAM,EAAE,QAAQ;CACjB,CAAC;AAEF,MAAM,gBAAgB,GAA8B;IAClD,IAAI,EAAE,QAAQ;IACd,IAAI,EAAE,OAAO;CACd,CAAC;AAEF,MAAM,UAAU,YAAY,CAAC,IAAY;IACvC,OAAO,UAAU,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC;AAClC,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,IAAY;IAC3C,OAAO,IAAI,IAAI,UAAU,CAAC;AAC5B,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,IAAY;IAC7C,MAAM,IAAI,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;IAChC,OAAO,OAAO,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC;AACvE,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,IAA+B;IACtE,IAAI,CAAC,IAAI;QAAE,OAAO,CAAC,CAAC;IACpB,MAAM,IAAI,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;IAChC,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,kBAAkB,IAAI,CAAC,CAAC,CAAC,CAAC;AAChE,CAAC;AAED,mFAAmF;AACnF,MAAM,UAAU,8BAA8B,CAAC,IAA+B;IAC5E,MAAM,UAAU,GAAG,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,qBAAqB,CAAC,CAAC,CAAC,SAAS,CAAC;IAChF,OAAO,IAAI,CAAC,GAAG,CAAC,6BAA6B,EAAE,IAAI,CAAC,KAAK,CAAC,UAAU,IAAI,6BAA6B,CAAC,CAAC,CAAC;AAC1G,CAAC;AAED,qEAAqE;AACrE,MAAM,mBAAmB,GAAG,IAAI,GAAG,CAAC,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC,CAAC;AAC9D;;;GAGG;AACH,MAAM,mBAAmB,GAAG,IAAI,GAAG,CAAC,CAAC,oBAAoB,EAAE,qBAAqB,CAAC,CAAC,CAAC;AAEnF,MAAM,UAAU,kBAAkB,CAAC,IAA+B;IAChE,OAAO,CAAC,CAAC,IAAI,IAAI,mBAAmB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;AACjD,CAAC;AACD,MAAM,UAAU,GAAG,IAAI,GAAG,CACxB,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC;KACvB,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,MAAM,CAAC;KAC1C,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CACzB,CAAC;AAEF,MAAM,UAAU,kBAAkB,CAAC,IAA+B;IAChE,OAAO,CAAC,CAAC,IAAI,IAAI,mBAAmB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;AACjD,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,IAA+B;IACnE,IAAI,CAAC,IAAI;QAAE,OAAO,KAAK,CAAC;IACxB,OAAO,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,SAAS,CAAC,CAAC;AAChD,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,IAA+B;IACxD,OAAO,CAAC,CAAC,IAAI,IAAI,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;AACxC,CAAC;AAED,iFAAiF;AACjF,MAAM,UAAU,aAAa,CAC3B,KAAqB,EACrB,OAAe;IAEf,OAAO;QACL,GAAG,KAAK;QACR,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;KAC3D,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,GAAY,EAAE,QAAuB;IACjE,IAAI,CAAC,QAAQ,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC;QAAE,OAAO,CAAC,CAAC;IACjD,IAAI,CAAC,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ;QAAE,OAAO,CAAC,CAAC;IAC9C,MAAM,CAAC,GAAI,GAA+B,CAAC,OAAO,CAAC;IACnD,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAChF,OAAO,CAAC,CAAC;AACX,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,eAAe,CAAC,UAAqC;IACnE,OAAO,kBAAkB,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC;AACjE,CAAC;AAED,MAAM,UAAU,cAAc;IAC5B,OAAO;QACL,MAAM,EAAE,IAAI;QACZ,IAAI,EAAE,IAAI;QACV,MAAM,EAAE,IAAI;QACZ,GAAG,EAAE,IAAI;QACT,MAAM,EAAE,IAAI;QACZ,KAAK,EAAE,IAAI;QACX,MAAM,EAAE,IAAI;QACZ,OAAO,EAAE,IAAI;QACb,KAAK,EAAE,IAAI;QACX,IAAI,EAAE,IAAI;QACV,IAAI,EAAE,IAAI;QACV,MAAM,EAAE,IAAI;KACb,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,GAAY;IAC7C,MAAM,KAAK,GAAG,cAAc,EAAE,CAAC;IAC/B,IAAI,CAAC,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAClD,MAAM,MAAM,GAAG,GAA8B,CAAC;IAC9C,MAAM,MAAM,GAAG,CAAC,IAAe,EAAE,IAAa,EAAQ,EAAE;QACtD,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,CAAC;YAAE,OAAO;QACpD,MAAM,IAAI,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;QAChC,IAAI,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI;YAAE,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IACrD,CAAC,CAAC;IACF,KAAK,MAAM,IAAI,IAAI,WAAW;QAAE,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;IAC3D,KAAK,MAAM,CAAC,SAAS,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,gBAAgB,CAAC,EAAE,CAAC;QACjE,MAAM,IAAI,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;QAC/B,IAAI,OAAO,IAAI,KAAK,QAAQ;YAAE,SAAS;QACvC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IACrB,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,UAAU,wBAAwB,CACtC,GAAY,EACZ,UAAyB;IAEzB,IAAI,CAAC,UAAU,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAAC;QAAE,OAAO,IAAI,CAAC;IAChE,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC;QAChE,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;IACtC,CAAC;IACD,OAAO,CAAC,CAAC;AACX,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,KAAqB;IACnD,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,KAAK,MAAM,IAAI,IAAI,WAAW,EAAE,CAAC;QAC/B,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC;QACzB,IAAI,CAAC,IAAI;YAAE,SAAS;QACpB,KAAK,IAAI,YAAY,CAAC,IAAI,CAAC,EAAE,MAAM,IAAI,CAAC,CAAC;IAC3C,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,UAAU,iBAAiB,CAC/B,YAAoB,EACpB,cAAsB,EACtB,UAAyB,EACzB,kBAAiC,IAAI,EACrC,OAAsB,EACtB,WAA0B,IAAI;IAE9B,MAAM,SAAS,GAAG,oBAAoB,CAAC,YAAY,EAAE,cAAc,CAAC,CAAC;IACrE,MAAM,GAAG,GAAG,iBAAiB,CAAC,SAAS,CAAC,CAAC;IACzC,MAAM,IAAI,GAAG,UAAU,CAAC,CAAC,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAC1D,MAAM,QAAQ,GAAG,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;IACrE,MAAM,QAAQ,GAAG,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;IACrE,MAAM,IAAI,GAAG,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACtD,MAAM,OAAO,GAAG,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;IAClE,MAAM,OAAO,GAAG,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;IAClE,MAAM,KAAK,GAAG,oBAAoB,CAAC,eAAe,CAAC,CAAC;IACpD,OAAO;QACL,GAAG,EAAE,CAAC,GAAG,QAAQ,GAAG,KAAK,GAAG,OAAO;QACnC,GAAG,EAAE,GAAG,GAAG,QAAQ,GAAG,KAAK,GAAG,OAAO;KACtC,CAAC;AACJ,CAAC"}
@@ -0,0 +1,36 @@
1
+ import type { IceDepthsBossKind } from './iceDepths.js';
2
+ /**
3
+ * The Frozen Dungeon equipment (James's sheet, 2026-09-22): a set forged in
4
+ * steel and ice, the reward the last twenty levels are for. Nobody sells
5
+ * it. It comes three ways, one piece at a time:
6
+ *
7
+ * - a Frozen Depths boss kill rolls ONE chance at ONE piece
8
+ * (FROZEN_SET_BOSS_DROP_CHANCE, the Behemoth's 5% the best);
9
+ * - the Frozen Chest in the Frozen Shrine, opened with a Frozen Chest Key
10
+ * (a 0.1% drop from anything that lives in the frost dungeon, 2% from a
11
+ * boss), rolls the set at FROZEN_CHEST_ROLL_CHANCE;
12
+ * - the Frozen Key that opens the Hallway (woodwork.ts FROZEN_KEY_KIND,
13
+ * fished up one drop in a thousand) also drops from those same NPCs.
14
+ */
15
+ export declare const FROZEN_SET_ITEMS: readonly ["frozenhelmet", "frozenbody", "frozenlegs", "frozengauntlets", "frozenboots", "frozencape", "frozenshield", "frozennecklace", "frozenring", "frostfangsword", "frozenbow", "crystalfroststaff"];
16
+ export type FrozenSetItem = (typeof FROZEN_SET_ITEMS)[number];
17
+ export declare function isFrozenSetItem(kind: string): kind is FrozenSetItem;
18
+ /** One roll per boss kill; on a hit, one piece of the set, chosen evenly. */
19
+ export declare const FROZEN_SET_BOSS_DROP_CHANCE: Readonly<Record<IceDepthsBossKind, number>>;
20
+ export declare const FROZEN_CHEST_KEY_KIND = "frozenchestkey";
21
+ /** Everything that lives in the frost dungeon (the Ice Prison roster) drops the keys at this rate. */
22
+ export declare const FROZEN_CHEST_KEY_NPC_CHANCE = 0.001;
23
+ export declare const FROZEN_CHEST_KEY_BOSS_CHANCE = 0.02;
24
+ export declare const FROZEN_KEY_NPC_CHANCE = 0.001;
25
+ export declare const FROZEN_KEY_BOSS_CHANCE = 0.01;
26
+ /** The Frozen Chest: one key per opening, this chance of a set piece, coins otherwise. */
27
+ export declare const FROZEN_CHEST_ROLL_CHANCE = 0.03;
28
+ export declare const FROZEN_CHEST_COINS_MIN = 400;
29
+ export declare const FROZEN_CHEST_COINS_MAX = 1200;
30
+ /** Combat level the armour pieces want; the weapons gate on Mastery as ever. */
31
+ export declare const FROZEN_SET_COMBAT_REQUIREMENT = 45;
32
+ /** Where the chest stands: the Frozen Shrine, by the Warden's sealed door. */
33
+ export declare const FROZEN_CHEST_X = 1125;
34
+ export declare const FROZEN_CHEST_Z = 113;
35
+ export declare function pickFrozenSetItem(roll: number): FrozenSetItem;
36
+ //# sourceMappingURL=frozenSet.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"frozenSet.d.ts","sourceRoot":"","sources":["../src/frozenSet.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAExD;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,gBAAgB,2MAanB,CAAC;AACX,MAAM,MAAM,aAAa,GAAG,CAAC,OAAO,gBAAgB,CAAC,CAAC,MAAM,CAAC,CAAC;AAE9D,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,IAAI,aAAa,CAEnE;AAED,6EAA6E;AAC7E,eAAO,MAAM,2BAA2B,EAAE,QAAQ,CAAC,MAAM,CAAC,iBAAiB,EAAE,MAAM,CAAC,CAMnF,CAAC;AAEF,eAAO,MAAM,qBAAqB,mBAAmB,CAAC;AACtD,sGAAsG;AACtG,eAAO,MAAM,2BAA2B,QAAQ,CAAC;AACjD,eAAO,MAAM,4BAA4B,OAAO,CAAC;AACjD,eAAO,MAAM,qBAAqB,QAAQ,CAAC;AAC3C,eAAO,MAAM,sBAAsB,OAAO,CAAC;AAC3C,0FAA0F;AAC1F,eAAO,MAAM,wBAAwB,OAAO,CAAC;AAC7C,eAAO,MAAM,sBAAsB,MAAM,CAAC;AAC1C,eAAO,MAAM,sBAAsB,OAAO,CAAC;AAC3C,gFAAgF;AAChF,eAAO,MAAM,6BAA6B,KAAK,CAAC;AAEhD,8EAA8E;AAC9E,eAAO,MAAM,cAAc,OAAO,CAAC;AACnC,eAAO,MAAM,cAAc,MAAM,CAAC;AAElC,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,aAAa,CAG7D"}
@@ -0,0 +1,58 @@
1
+ /**
2
+ * The Frozen Dungeon equipment (James's sheet, 2026-09-22): a set forged in
3
+ * steel and ice, the reward the last twenty levels are for. Nobody sells
4
+ * it. It comes three ways, one piece at a time:
5
+ *
6
+ * - a Frozen Depths boss kill rolls ONE chance at ONE piece
7
+ * (FROZEN_SET_BOSS_DROP_CHANCE, the Behemoth's 5% the best);
8
+ * - the Frozen Chest in the Frozen Shrine, opened with a Frozen Chest Key
9
+ * (a 0.1% drop from anything that lives in the frost dungeon, 2% from a
10
+ * boss), rolls the set at FROZEN_CHEST_ROLL_CHANCE;
11
+ * - the Frozen Key that opens the Hallway (woodwork.ts FROZEN_KEY_KIND,
12
+ * fished up one drop in a thousand) also drops from those same NPCs.
13
+ */
14
+ export const FROZEN_SET_ITEMS = [
15
+ 'frozenhelmet',
16
+ 'frozenbody',
17
+ 'frozenlegs',
18
+ 'frozengauntlets',
19
+ 'frozenboots',
20
+ 'frozencape',
21
+ 'frozenshield',
22
+ 'frozennecklace',
23
+ 'frozenring',
24
+ 'frostfangsword',
25
+ 'frozenbow',
26
+ 'crystalfroststaff',
27
+ ];
28
+ export function isFrozenSetItem(kind) {
29
+ return FROZEN_SET_ITEMS.includes(kind);
30
+ }
31
+ /** One roll per boss kill; on a hit, one piece of the set, chosen evenly. */
32
+ export const FROZEN_SET_BOSS_DROP_CHANCE = {
33
+ frostalchemist: 0.02,
34
+ frostwarden: 0.025,
35
+ bonechillyeti: 0.03,
36
+ icelich: 0.04,
37
+ glacialbehemoth: 0.05,
38
+ };
39
+ export const FROZEN_CHEST_KEY_KIND = 'frozenchestkey';
40
+ /** Everything that lives in the frost dungeon (the Ice Prison roster) drops the keys at this rate. */
41
+ export const FROZEN_CHEST_KEY_NPC_CHANCE = 0.001;
42
+ export const FROZEN_CHEST_KEY_BOSS_CHANCE = 0.02;
43
+ export const FROZEN_KEY_NPC_CHANCE = 0.001;
44
+ export const FROZEN_KEY_BOSS_CHANCE = 0.01;
45
+ /** The Frozen Chest: one key per opening, this chance of a set piece, coins otherwise. */
46
+ export const FROZEN_CHEST_ROLL_CHANCE = 0.03;
47
+ export const FROZEN_CHEST_COINS_MIN = 400;
48
+ export const FROZEN_CHEST_COINS_MAX = 1200;
49
+ /** Combat level the armour pieces want; the weapons gate on Mastery as ever. */
50
+ export const FROZEN_SET_COMBAT_REQUIREMENT = 45;
51
+ /** Where the chest stands: the Frozen Shrine, by the Warden's sealed door. */
52
+ export const FROZEN_CHEST_X = 1125;
53
+ export const FROZEN_CHEST_Z = 113;
54
+ export function pickFrozenSetItem(roll) {
55
+ const index = Math.min(FROZEN_SET_ITEMS.length - 1, Math.max(0, Math.floor(roll * FROZEN_SET_ITEMS.length)));
56
+ return FROZEN_SET_ITEMS[index];
57
+ }
58
+ //# sourceMappingURL=frozenSet.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"frozenSet.js","sourceRoot":"","sources":["../src/frozenSet.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B,cAAc;IACd,YAAY;IACZ,YAAY;IACZ,iBAAiB;IACjB,aAAa;IACb,YAAY;IACZ,cAAc;IACd,gBAAgB;IAChB,YAAY;IACZ,gBAAgB;IAChB,WAAW;IACX,mBAAmB;CACX,CAAC;AAGX,MAAM,UAAU,eAAe,CAAC,IAAY;IAC1C,OAAQ,gBAAsC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AAChE,CAAC;AAED,6EAA6E;AAC7E,MAAM,CAAC,MAAM,2BAA2B,GAAgD;IACtF,cAAc,EAAE,IAAI;IACpB,WAAW,EAAE,KAAK;IAClB,aAAa,EAAE,IAAI;IACnB,OAAO,EAAE,IAAI;IACb,eAAe,EAAE,IAAI;CACtB,CAAC;AAEF,MAAM,CAAC,MAAM,qBAAqB,GAAG,gBAAgB,CAAC;AACtD,sGAAsG;AACtG,MAAM,CAAC,MAAM,2BAA2B,GAAG,KAAK,CAAC;AACjD,MAAM,CAAC,MAAM,4BAA4B,GAAG,IAAI,CAAC;AACjD,MAAM,CAAC,MAAM,qBAAqB,GAAG,KAAK,CAAC;AAC3C,MAAM,CAAC,MAAM,sBAAsB,GAAG,IAAI,CAAC;AAC3C,0FAA0F;AAC1F,MAAM,CAAC,MAAM,wBAAwB,GAAG,IAAI,CAAC;AAC7C,MAAM,CAAC,MAAM,sBAAsB,GAAG,GAAG,CAAC;AAC1C,MAAM,CAAC,MAAM,sBAAsB,GAAG,IAAI,CAAC;AAC3C,gFAAgF;AAChF,MAAM,CAAC,MAAM,6BAA6B,GAAG,EAAE,CAAC;AAEhD,8EAA8E;AAC9E,MAAM,CAAC,MAAM,cAAc,GAAG,IAAI,CAAC;AACnC,MAAM,CAAC,MAAM,cAAc,GAAG,GAAG,CAAC;AAElC,MAAM,UAAU,iBAAiB,CAAC,IAAY;IAC5C,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IAC7G,OAAO,gBAAgB,CAAC,KAAK,CAAE,CAAC;AAClC,CAAC"}
@@ -12,7 +12,7 @@ export declare const GOBLIN_CAVE_EXIT_STYLE = "goblin-return-north";
12
12
  export declare const GOBLIN_CAVE_EXIT_SCALE = 1.5;
13
13
  export declare const GOBLIN_CAVE_OUTSIDE: {
14
14
  readonly x: 10;
15
- readonly z: 654;
15
+ readonly z: 718;
16
16
  };
17
17
  export declare const GOBLIN_CAVE_ROOMS: readonly [{
18
18
  readonly cx: number;
@@ -61,17 +61,17 @@ export declare const GOBLIN_PRISON_KEY = "goblinprisonkey";
61
61
  export declare const GOBLIN_PRISON_DOORS: readonly [{
62
62
  readonly x: number;
63
63
  readonly z: number;
64
- readonly style: 'goblin-prison-north';
64
+ readonly style: "goblin-prison-north";
65
65
  }, {
66
66
  readonly x: number;
67
67
  readonly z: number;
68
- readonly style: 'goblin-prison-south';
68
+ readonly style: "goblin-prison-south";
69
69
  }];
70
70
  /** Kept for saved-tile regression fixtures that refer to the southern cell. */
71
71
  export declare const GOBLIN_PRISON_CELL_DOOR: {
72
72
  readonly x: number;
73
73
  readonly z: number;
74
- readonly style: 'goblin-prison-south';
74
+ readonly style: "goblin-prison-south";
75
75
  };
76
76
  /** Old rescues already spent Grem's key; never charge those characters again. */
77
77
  export declare function normalizeGoblinPrisonUnlocked(raw: unknown, findRimdel: unknown): boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"goblinCave.d.ts","sourceRoot":"","sources":["../src/goblinCave.ts"],"names":[],"mappings":"AAEA,8EAA8E;AAC9E,eAAO,MAAM,oBAAoB,QAAkB,CAAC;AACpD,eAAO,MAAM,iBAAiB;aAAK,CAAC;aAAmB,CAAC,EAAE,GAAG;CAAW,CAAC;AACzE,eAAO,MAAM,gBAAgB;aAAK,CAAC;aAAwB,CAAC,EAAE,GAAG;CAAW,CAAC;AAC7E,eAAO,MAAM,sBAAsB,wBAAwB,CAAC;AAC5D,eAAO,MAAM,sBAAsB,MAAM,CAAC;AAC1C,eAAO,MAAM,mBAAmB;aAAK,CAAC,EAAE,EAAE;aAAE,CAAC,EAAE,GAAG;CAAW,CAAC;AAC9D,eAAO,MAAM,iBAAiB;aAC1B,EAAE;aAAwB,IAAI,EAAE,GAAG;aAAE,IAAI,EAAE,GAAG;aAAE,KAAK,EAAE,EAAE;;aACzD,EAAE;aAAwB,IAAI,EAAE,GAAG;aAAE,IAAI,EAAE,GAAG;aAAE,KAAK,EAAE,EAAE;;aACzD,EAAE;aAAwB,IAAI,EAAE,GAAG;aAAE,IAAI,EAAE,GAAG;aAAE,KAAK,EAAE,EAAE;;aACzD,EAAE;aAA6B,IAAI,EAAE,GAAG;aAAE,IAAI,EAAE,GAAG;aAAE,KAAK,EAAE,EAAE;;aAC9D,EAAE;aAA6B,IAAI,EAAE,GAAG;aAAE,IAAI,EAAE,GAAG;aAAE,KAAK,EAAE,EAAE;;aAC9D,EAAE;aAA6B,IAAI,EAAE,GAAG;aAAE,IAAI,EAAE,GAAG;aAAE,KAAK,EAAE,EAAE;EACxD,CAAC;AACX,eAAO,MAAM,SAAS;;mBAFmB,GAAG;mBAAQ,GAAG;oBAAS,EAAE;CAErB,CAAC;AAC9C,eAAO,MAAM,UAAU;aAAK,CAAC;aAAgB,CAAC;CAA+B,CAAC;AAC9E,eAAO,MAAM,gBAAgB,MAAM,CAAC;AACpC,eAAO,MAAM,iBAAiB,oBAAoB,CAAC;AACnD,0EAA0E;AAC1E,eAAO,MAAM,mBAAmB;aAC5B,CAAC;aACD,CAAC;aAAiC,KAAK,EAAE,qBAAqB;;aAC9D,CAAC;aACD,CAAC;aAAkC,KAAK,EAAE,qBAAqB;EACzD,CAAC;AACX,+EAA+E;AAC/E,eAAO,MAAM,uBAAuB;;;oBAHU,qBAAqB;CAGN,CAAC;AAE9D,iFAAiF;AACjF,wBAAgB,6BAA6B,CAAC,GAAG,EAAE,OAAO,EAAE,UAAU,EAAE,OAAO,GAAG,OAAO,CAExF;AACD,eAAO,MAAM,gBAAgB;aAAK,CAAC;aAAwB,CAAC,EAAE,GAAG;CAAW,CAAC;AAC7E,eAAO,MAAM,sBAAsB,gBAAgB,CAAC;AACpD,eAAO,MAAM,0BAA0B,KAAK,CAAC;AAC7C,eAAO,MAAM,kBAAkB;;;GAI+B,CAAC;AAE/D,eAAO,MAAM,yBAAyB;;;GAEwB,CAAC;AAE/D,eAAO,MAAM,wBAAwB;;;GAEyB,CAAC;AAE/D,eAAO,MAAM,uBAAuB;;;GAE0B,CAAC;AAE/D,eAAO,MAAM,sBAAsB;;;GAIlC,CAAC;AAEF,eAAO,MAAM,YAAY;aAAK,CAAC;aAA6B,CAAC,EAAE,GAAG;CAAW,CAAC;AAE9E,wBAAgB,YAAY,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,OAAO,CAE1D;AAED,wFAAwF;AACxF,wBAAgB,sBAAsB,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,OAAO,CAGpE;AAED,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,CAG7D"}
1
+ {"version":3,"file":"goblinCave.d.ts","sourceRoot":"","sources":["../src/goblinCave.ts"],"names":[],"mappings":"AAEA,8EAA8E;AAC9E,eAAO,MAAM,oBAAoB,QAAkB,CAAC;AACpD,eAAO,MAAM,iBAAiB;;;CAA0C,CAAC;AACzE,eAAO,MAAM,gBAAgB;;;CAA+C,CAAC;AAC7E,eAAO,MAAM,sBAAsB,wBAAwB,CAAC;AAC5D,eAAO,MAAM,sBAAsB,MAAM,CAAC;AAC1C,eAAO,MAAM,mBAAmB;;;CAA6B,CAAC;AAC9D,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAOpB,CAAC;AACX,eAAO,MAAM,SAAS;;;;;CAAuB,CAAC;AAC9C,eAAO,MAAM,UAAU;;;CAAsD,CAAC;AAC9E,eAAO,MAAM,gBAAgB,MAAM,CAAC;AACpC,eAAO,MAAM,iBAAiB,oBAAoB,CAAC;AACnD,0EAA0E;AAC1E,eAAO,MAAM,mBAAmB;;;;;;;;EAKtB,CAAC;AACX,+EAA+E;AAC/E,eAAO,MAAM,uBAAuB;;;;CAAyB,CAAC;AAE9D,iFAAiF;AACjF,wBAAgB,6BAA6B,CAAC,GAAG,EAAE,OAAO,EAAE,UAAU,EAAE,OAAO,GAAG,OAAO,CAExF;AACD,eAAO,MAAM,gBAAgB;;;CAA+C,CAAC;AAC7E,eAAO,MAAM,sBAAsB,gBAAgB,CAAC;AACpD,eAAO,MAAM,0BAA0B,KAAK,CAAC;AAC7C,eAAO,MAAM,kBAAkB;;;GAI+B,CAAC;AAE/D,eAAO,MAAM,yBAAyB;;;GAEwB,CAAC;AAE/D,eAAO,MAAM,wBAAwB;;;GAEyB,CAAC;AAE/D,eAAO,MAAM,uBAAuB;;;GAE0B,CAAC;AAE/D,eAAO,MAAM,sBAAsB;;;GAIlC,CAAC;AAEF,eAAO,MAAM,YAAY;;;CAAoD,CAAC;AAE9E,wBAAgB,YAAY,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,OAAO,CAE1D;AAED,wFAAwF;AACxF,wBAAgB,sBAAsB,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,OAAO,CAGpE;AAED,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,CAG7D"}
@@ -5,7 +5,7 @@ export const GOBLIN_CAVE_ENTRY = { x: GRID_WIDTH - 20, z: 500 };
5
5
  export const GOBLIN_CAVE_EXIT = { x: GOBLIN_CAVE_CENTER_X, z: 503 };
6
6
  export const GOBLIN_CAVE_EXIT_STYLE = 'goblin-return-north';
7
7
  export const GOBLIN_CAVE_EXIT_SCALE = 1.5;
8
- export const GOBLIN_CAVE_OUTSIDE = { x: 10, z: 654 };
8
+ export const GOBLIN_CAVE_OUTSIDE = { x: 10, z: 718 };
9
9
  export const GOBLIN_CAVE_ROOMS = [
10
10
  { cx: GOBLIN_CAVE_CENTER_X, minZ: 477, maxZ: 503, halfW: 11 },
11
11
  { cx: GOBLIN_CAVE_CENTER_X, minZ: 448, maxZ: 468, halfW: 13 },
@@ -1 +1 @@
1
- {"version":3,"file":"groundItems.d.ts","sourceRoot":"","sources":["../src/groundItems.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,iBAAiB,EAAE,SAAS,MAAM,EAqG9C,CAAC;AAIF;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,EAAE,SAAS,MAAM,EAAO,CAAC;AAI5D,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEtD;AAED,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAE3D;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEzD;AAED,eAAO,MAAM,wBAAwB,QAAQ,CAAC;AAC9C,yEAAyE;AACzE,eAAO,MAAM,sBAAsB,QAAQ,CAAC;AAC5C,8EAA8E;AAC9E,eAAO,MAAM,mBAAmB,QAAQ,CAAC;AAEzC,wBAAgB,mBAAmB,CACjC,WAAW,EAAE,MAAM,EACnB,MAAM,SAAsB,GAC3B,MAAM,CAKR"}
1
+ {"version":3,"file":"groundItems.d.ts","sourceRoot":"","sources":["../src/groundItems.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,iBAAiB,EAAE,SAAS,MAAM,EAgI9C,CAAC;AAIF;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,EAAE,SAAS,MAAM,EAAO,CAAC;AAI5D,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEtD;AAED,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAE3D;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEzD;AAED,eAAO,MAAM,wBAAwB,QAAQ,CAAC;AAC9C,yEAAyE;AACzE,eAAO,MAAM,sBAAsB,QAAQ,CAAC;AAC5C,8EAA8E;AAC9E,eAAO,MAAM,mBAAmB,QAAQ,CAAC;AAEzC,wBAAgB,mBAAmB,CACjC,WAAW,EAAE,MAAM,EACnB,MAAM,SAAsB,GAC3B,MAAM,CAKR"}
@@ -63,6 +63,32 @@ export const GROUND_ITEM_KINDS = [
63
63
  'iceline',
64
64
  'icerig',
65
65
  'frozenkey',
66
+ 'gatesealkey',
67
+ 'prisonchainhook',
68
+ 'frostsigil',
69
+ 'crystalphial',
70
+ 'wardensfrostblade',
71
+ 'lichfroststaff',
72
+ 'bonechillpelt',
73
+ 'icebloodtonic',
74
+ 'glacialore',
75
+ 'frozencore',
76
+ 'behemothcrystalshard',
77
+ 'gem',
78
+ 'frozenhelmet',
79
+ 'frozenbody',
80
+ 'frozenlegs',
81
+ 'frozencape',
82
+ 'frozengauntlets',
83
+ 'frozenboots',
84
+ 'frozenshield',
85
+ 'frozennecklace',
86
+ 'frozenring',
87
+ 'frostfangsword',
88
+ 'frozenbow',
89
+ 'crystalfroststaff',
90
+ 'frozenchestkey',
91
+ 'charcoal',
66
92
  'seaspinner',
67
93
  'rawtrout',
68
94
  'cookedtrout',
@@ -70,6 +96,7 @@ export const GROUND_ITEM_KINDS = [
70
96
  'cookedfrostpike',
71
97
  'rawsmelt',
72
98
  'smeltbait',
99
+ 'crabcage',
73
100
  'icefishingrod',
74
101
  'iceauger',
75
102
  'foldingsaw',
@@ -1 +1 @@
1
- {"version":3,"file":"groundItems.js","sourceRoot":"","sources":["../src/groundItems.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"groundItems.js","sourceRoot":"","sources":["../src/groundItems.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,223 @@
1
+ /**
2
+ * THE KING'S HARBOUR
3
+ *
4
+ * The Capital's port (2026-09-21, James: "the capital city should have a
5
+ * large port coming out of it"). The city's north side is the edge of the
6
+ * world, so the sea is to the east: everything east of HARBOUR_SEA_X is the
7
+ * Sound, open water to the map's edge, with a shore curving back east to
8
+ * the edge south of the harbour. Between the moat and the water sits a
9
+ * walled harbour ward on the city's own axis: the East Gate's bridge lands
10
+ * on the Harbour Road, which runs the Royal Way's rows straight to the
11
+ * quay and on out along the Royal Pier. Warehouses face the quay either
12
+ * side of the road with cranes at their doors, the harbour master's house
13
+ * and the customs house face the road, an inn and a chandler behind them,
14
+ * and a breakwater runs out from the north tower to a lighthouse at the
15
+ * harbour mouth. Ships lie alongside the piers with gangplanks down; the
16
+ * harbour master sells passage on Branson's chart (travel.ts).
17
+ *
18
+ * World tiles, absolute like the capital's. Backend builder:
19
+ * capitalHarbour.ts. Assets: the quay grammar in pierDeck.ts (`quay`
20
+ * base), the lighthouse and harbour tower in capitalMonuments.ts, the
21
+ * crane in capitalFabric.ts (yardprop `crane`).
22
+ */
23
+ /** The ward: the moat's east bank to the quay edge, the wall rows included. */
24
+ export declare const HARBOUR_MIN_X: number;
25
+ /** The quay's edge tile: the last land, the water begins on the next. */
26
+ export declare const HARBOUR_MAX_X = 819;
27
+ export declare const HARBOUR_SEA_X: number;
28
+ export declare const HARBOUR_NORTH_Z = 108;
29
+ export declare const HARBOUR_SOUTH_Z = 212;
30
+ /** Everything the ward and the bay own, for the sweep and the levelling. */
31
+ export declare const HARBOUR_WORKS: {
32
+ readonly minX: number;
33
+ readonly maxX: 927;
34
+ readonly minZ: 64;
35
+ readonly maxZ: 296;
36
+ };
37
+ /** The ward's floor is the city's; the quay stands two heights over the water. */
38
+ export declare const HARBOUR_FLOOR_H = 2;
39
+ export declare const HARBOUR_WATER_H = 0;
40
+ export declare const HARBOUR_SHORE_H = 1;
41
+ /** The Harbour Road: the Way's rows, kerbed, from the bridge foot to the quay. */
42
+ export declare const HARBOUR_ROAD_Z: number;
43
+ export declare const HARBOUR_ROAD_HALF_W = 2;
44
+ export declare const HARBOUR_ROAD_KERB_HALF_W = 3;
45
+ /** The quay strip along the water, six wide, flags. */
46
+ export declare const HARBOUR_QUAY_MIN_X = 814;
47
+ /** Wall towers every this many tiles along the harbour walls. */
48
+ export declare const HARBOUR_BASTION_EVERY = 16;
49
+ /** The drums at the water ends of the walls stand on the quay's corners. */
50
+ export declare const HARBOUR_TOWER_X = 818;
51
+ type Rect = {
52
+ readonly minX: number;
53
+ readonly maxX: number;
54
+ readonly minZ: number;
55
+ readonly maxZ: number;
56
+ };
57
+ /**
58
+ * The piers: stone, terrain at the ward's height with the quay grammar on
59
+ * their edges. The Royal Pier is on the road's rows; the two smaller piers
60
+ * flank it.
61
+ */
62
+ export declare const HARBOUR_ROYAL_PIER: {
63
+ readonly minX: number;
64
+ readonly maxX: 853;
65
+ readonly minZ: number;
66
+ readonly maxZ: number;
67
+ };
68
+ export declare const HARBOUR_NORTH_PIER: {
69
+ readonly minX: number;
70
+ readonly maxX: 845;
71
+ readonly minZ: 128;
72
+ readonly maxZ: 131;
73
+ };
74
+ export declare const HARBOUR_SOUTH_PIER: {
75
+ readonly minX: number;
76
+ readonly maxX: 845;
77
+ readonly minZ: 189;
78
+ readonly maxZ: 192;
79
+ };
80
+ export declare const HARBOUR_PIERS: ReadonlyArray<Rect>;
81
+ /** The breakwater from the north tower, three wide, and its head with the lighthouse on it. */
82
+ export declare const HARBOUR_MOLE: {
83
+ readonly minX: number;
84
+ readonly maxX: 861;
85
+ readonly minZ: 108;
86
+ readonly maxZ: number;
87
+ };
88
+ export declare const HARBOUR_MOLE_HEAD: {
89
+ readonly minX: 862;
90
+ readonly maxX: 866;
91
+ readonly minZ: 106;
92
+ readonly maxZ: 112;
93
+ };
94
+ export declare const HARBOUR_LIGHTHOUSE: {
95
+ readonly x: 864;
96
+ readonly z: 109;
97
+ };
98
+ /**
99
+ * The ships. `style` is the ship kind and its bow's heading (face90 is bow
100
+ * east, face270 bow west, face0 bow south); `hull` is the water the hull
101
+ * lies over, blocked so nothing paths under a keel; `plank` is the pier
102
+ * tile the gangplank leaves from and the side it goes over.
103
+ */
104
+ export declare const HARBOUR_SHIPS: ReadonlyArray<{
105
+ id: string;
106
+ x: number;
107
+ z: number;
108
+ style: string;
109
+ hull: Rect;
110
+ plank: {
111
+ x: number;
112
+ z: number;
113
+ side: 'north' | 'south' | 'east' | 'west';
114
+ };
115
+ }>;
116
+ /**
117
+ * The buildings. Warehouses face the quay (door east), the master's house
118
+ * and the customs house face the road, the inn and the chandler stand
119
+ * behind them on the road too. Styles as the capital's landmarks.
120
+ */
121
+ export declare const HARBOUR_LANDMARKS: ReadonlyArray<{
122
+ id: string;
123
+ kind: 'stonehouse' | 'warehouse';
124
+ style: string;
125
+ x: number;
126
+ z: number;
127
+ board?: string;
128
+ }>;
129
+ /**
130
+ * The two open yards that replaced the blind terraces (the Capital redesign,
131
+ * 2026-09-25: no blind buildings anywhere James can see from the East Gate).
132
+ * Both run from the moat's bank to the warehouses' backs (x 771-797).
133
+ *
134
+ * The Net Yard, inside the north wall: net drying frames, fish racks, rope
135
+ * coils, a boat on trestles, barrels.
136
+ */
137
+ export declare const HARBOUR_NET_YARD: {
138
+ readonly minX: number;
139
+ readonly maxX: number;
140
+ readonly minZ: number;
141
+ readonly maxZ: number;
142
+ };
143
+ /**
144
+ * The Fish Market, inside the south wall: six striped stalls in two rows
145
+ * facing each other across an aisle (the three on the quay stay too), fish
146
+ * racks and ice crates round them. The Fishmonger's tile is the aisle's
147
+ * middle (phase 2).
148
+ */
149
+ export declare const HARBOUR_FISH_MARKET: {
150
+ readonly minX: number;
151
+ readonly maxX: number;
152
+ readonly minZ: number;
153
+ readonly maxZ: number;
154
+ };
155
+ export declare const HARBOUR_FISH_MARKET_KEEPER: {
156
+ readonly x: number;
157
+ readonly z: number;
158
+ };
159
+ /** The six stalls: `marketstall fish-<facing>`, each counter three tiles along x, fronting the aisle. */
160
+ export declare const HARBOUR_FISH_MARKET_STALLS: ReadonlyArray<{
161
+ x: number;
162
+ z: number;
163
+ facing: 'n' | 's';
164
+ style: string;
165
+ }>;
166
+ /** Treadwheel cranes on the quay edge, at the warehouse doors. */
167
+ export declare const HARBOUR_CRANES: ReadonlyArray<{
168
+ x: number;
169
+ z: number;
170
+ }>;
171
+ /** The fish market on the south quay: stalls with their backs to the water. */
172
+ export declare const HARBOUR_FISH_STALLS: ReadonlyArray<{
173
+ x: number;
174
+ z: number;
175
+ }>;
176
+ /** The sailings board at the Royal Pier's root. */
177
+ export declare const HARBOUR_BOARD: {
178
+ readonly x: 817;
179
+ readonly z: 154;
180
+ };
181
+ /**
182
+ * Marlow stands out on the Royal Pier at the crimson ship's gangplank, not
183
+ * back on the quay: the man who sells you a passage is beside the ship that
184
+ * carries it (James, 2026-09-22). The board still meets you at the root.
185
+ */
186
+ export declare const HARBOUR_MASTER: {
187
+ readonly x: 837;
188
+ readonly z: 158;
189
+ readonly faceX: 838;
190
+ readonly faceZ: 154;
191
+ };
192
+ /** Where a sailing puts you ashore: the Royal Pier beside the first gangplank. */
193
+ export declare const HARBOUR_LANDING: {
194
+ readonly x: 836;
195
+ readonly z: number;
196
+ };
197
+ /** The name on the road and the map. */
198
+ export declare const HARBOUR_NAME = "The King's Harbour";
199
+ /** The wall rows and the tiles inward that the wall pieces fill. */
200
+ export declare function onHarbourWall(x: number, z: number): boolean;
201
+ export declare function inHarbourWard(x: number, z: number): boolean;
202
+ /** Inside the walls: where the buildings and yards are. */
203
+ export declare function inHarbourInterior(x: number, z: number): boolean;
204
+ export declare function onHarbourRoad(x: number, z: number): boolean;
205
+ export declare function onHarbourQuay(x: number, z: number): boolean;
206
+ export declare function onHarbourPier(x: number, z: number): boolean;
207
+ export declare function onHarbourMole(x: number, z: number): boolean;
208
+ /** Every stone deck standing over the water: the piers and the breakwater. */
209
+ export declare function onHarbourDeck(x: number, z: number): boolean;
210
+ /**
211
+ * The Sound's shore south of the harbour: the first water column on a row.
212
+ * Straight along the quay and the ward, then bending east below the south
213
+ * tower to reach the map's edge, wandering a tile or two so it is a coast
214
+ * and not a ruler.
215
+ */
216
+ export declare const HARBOUR_SHORE_BEND_Z = 240;
217
+ export declare function harbourShoreX(z: number): number;
218
+ /** The Sound: sea from the shore to the map's edge, the north rows included, the decks excepted. */
219
+ export declare function inHarbourSea(x: number, z: number): boolean;
220
+ /** Laid stone: the ward inside its walls, the piers and the breakwater (see the frontend's LaidPaving). */
221
+ export declare function inHarbourPaving(x: number, z: number): boolean;
222
+ export {};
223
+ //# sourceMappingURL=harbour.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"harbour.d.ts","sourceRoot":"","sources":["../src/harbour.ts"],"names":[],"mappings":"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"}