@rpgm-tools/neo-angband-core 0.10.0
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/LICENSE.md +43 -0
- package/README.md +80 -0
- package/dist/agent/act.d.ts +22 -0
- package/dist/agent/act.d.ts.map +1 -0
- package/dist/agent/act.js +88 -0
- package/dist/agent/act.js.map +1 -0
- package/dist/agent/controller.d.ts +34 -0
- package/dist/agent/controller.d.ts.map +1 -0
- package/dist/agent/controller.js +90 -0
- package/dist/agent/controller.js.map +1 -0
- package/dist/agent/events.d.ts +27 -0
- package/dist/agent/events.d.ts.map +1 -0
- package/dist/agent/events.js +31 -0
- package/dist/agent/events.js.map +1 -0
- package/dist/agent/index.d.ts +17 -0
- package/dist/agent/index.d.ts.map +1 -0
- package/dist/agent/index.js +15 -0
- package/dist/agent/index.js.map +1 -0
- package/dist/agent/perceive.d.ts +21 -0
- package/dist/agent/perceive.d.ts.map +1 -0
- package/dist/agent/perceive.js +386 -0
- package/dist/agent/perceive.js.map +1 -0
- package/dist/agent/types.d.ts +436 -0
- package/dist/agent/types.d.ts.map +1 -0
- package/dist/agent/types.js +63 -0
- package/dist/agent/types.js.map +1 -0
- package/dist/bitflag.d.ts +199 -0
- package/dist/bitflag.d.ts.map +1 -0
- package/dist/bitflag.js +478 -0
- package/dist/bitflag.js.map +1 -0
- package/dist/cmd.d.ts +164 -0
- package/dist/cmd.d.ts.map +1 -0
- package/dist/cmd.js +350 -0
- package/dist/cmd.js.map +1 -0
- package/dist/color.d.ts +104 -0
- package/dist/color.d.ts.map +1 -0
- package/dist/color.js +240 -0
- package/dist/color.js.map +1 -0
- package/dist/combat/brand-slay.d.ts +119 -0
- package/dist/combat/brand-slay.d.ts.map +1 -0
- package/dist/combat/brand-slay.js +264 -0
- package/dist/combat/brand-slay.js.map +1 -0
- package/dist/combat/hit.d.ts +198 -0
- package/dist/combat/hit.d.ts.map +1 -0
- package/dist/combat/hit.js +310 -0
- package/dist/combat/hit.js.map +1 -0
- package/dist/combat/index.d.ts +15 -0
- package/dist/combat/index.d.ts.map +1 -0
- package/dist/combat/index.js +15 -0
- package/dist/combat/index.js.map +1 -0
- package/dist/combat/melee.d.ts +261 -0
- package/dist/combat/melee.d.ts.map +1 -0
- package/dist/combat/melee.js +402 -0
- package/dist/combat/melee.js.map +1 -0
- package/dist/combat/mon-melee.d.ts +233 -0
- package/dist/combat/mon-melee.d.ts.map +1 -0
- package/dist/combat/mon-melee.js +883 -0
- package/dist/combat/mon-melee.js.map +1 -0
- package/dist/combat/ranged.d.ts +89 -0
- package/dist/combat/ranged.d.ts.map +1 -0
- package/dist/combat/ranged.js +253 -0
- package/dist/combat/ranged.js.map +1 -0
- package/dist/constants.d.ts +134 -0
- package/dist/constants.d.ts.map +1 -0
- package/dist/constants.js +171 -0
- package/dist/constants.js.map +1 -0
- package/dist/dice.d.ts +91 -0
- package/dist/dice.d.ts.map +1 -0
- package/dist/dice.js +424 -0
- package/dist/dice.js.map +1 -0
- package/dist/effects/effect-choice.d.ts +15 -0
- package/dist/effects/effect-choice.d.ts.map +1 -0
- package/dist/effects/effect-choice.js +18 -0
- package/dist/effects/effect-choice.js.map +1 -0
- package/dist/effects/effect-info.d.ts +124 -0
- package/dist/effects/effect-info.d.ts.map +1 -0
- package/dist/effects/effect-info.js +706 -0
- package/dist/effects/effect-info.js.map +1 -0
- package/dist/effects/effect.d.ts +165 -0
- package/dist/effects/effect.d.ts.map +1 -0
- package/dist/effects/effect.js +452 -0
- package/dist/effects/effect.js.map +1 -0
- package/dist/effects/handlers.d.ts +70 -0
- package/dist/effects/handlers.d.ts.map +1 -0
- package/dist/effects/handlers.js +394 -0
- package/dist/effects/handlers.js.map +1 -0
- package/dist/effects/interpreter.d.ts +291 -0
- package/dist/effects/interpreter.d.ts.map +1 -0
- package/dist/effects/interpreter.js +325 -0
- package/dist/effects/interpreter.js.map +1 -0
- package/dist/events.d.ts +188 -0
- package/dist/events.d.ts.map +1 -0
- package/dist/events.js +138 -0
- package/dist/events.js.map +1 -0
- package/dist/expression.d.ts +83 -0
- package/dist/expression.d.ts.map +1 -0
- package/dist/expression.js +333 -0
- package/dist/expression.js.map +1 -0
- package/dist/game/cave-cmd.d.ts +195 -0
- package/dist/game/cave-cmd.d.ts.map +1 -0
- package/dist/game/cave-cmd.js +968 -0
- package/dist/game/cave-cmd.js.map +1 -0
- package/dist/game/char-sheet.d.ts +189 -0
- package/dist/game/char-sheet.d.ts.map +1 -0
- package/dist/game/char-sheet.js +381 -0
- package/dist/game/char-sheet.js.map +1 -0
- package/dist/game/chest.d.ts +94 -0
- package/dist/game/chest.d.ts.map +1 -0
- package/dist/game/chest.js +267 -0
- package/dist/game/chest.js.map +1 -0
- package/dist/game/context.d.ts +970 -0
- package/dist/game/context.d.ts.map +1 -0
- package/dist/game/context.js +353 -0
- package/dist/game/context.js.map +1 -0
- package/dist/game/curse-tick.d.ts +35 -0
- package/dist/game/curse-tick.d.ts.map +1 -0
- package/dist/game/curse-tick.js +100 -0
- package/dist/game/curse-tick.js.map +1 -0
- package/dist/game/describe.d.ts +20 -0
- package/dist/game/describe.d.ts.map +1 -0
- package/dist/game/describe.js +45 -0
- package/dist/game/describe.js.map +1 -0
- package/dist/game/display.d.ts +196 -0
- package/dist/game/display.d.ts.map +1 -0
- package/dist/game/display.js +684 -0
- package/dist/game/display.js.map +1 -0
- package/dist/game/dump-level.d.ts +37 -0
- package/dist/game/dump-level.d.ts.map +1 -0
- package/dist/game/dump-level.js +110 -0
- package/dist/game/dump-level.js.map +1 -0
- package/dist/game/effect-attack.d.ts +36 -0
- package/dist/game/effect-attack.d.ts.map +1 -0
- package/dist/game/effect-attack.js +694 -0
- package/dist/game/effect-attack.js.map +1 -0
- package/dist/game/effect-detect.d.ts +34 -0
- package/dist/game/effect-detect.d.ts.map +1 -0
- package/dist/game/effect-detect.js +456 -0
- package/dist/game/effect-detect.js.map +1 -0
- package/dist/game/effect-env.d.ts +77 -0
- package/dist/game/effect-env.d.ts.map +1 -0
- package/dist/game/effect-env.js +166 -0
- package/dist/game/effect-env.js.map +1 -0
- package/dist/game/effect-game-env.d.ts +76 -0
- package/dist/game/effect-game-env.d.ts.map +1 -0
- package/dist/game/effect-game-env.js +23 -0
- package/dist/game/effect-game-env.js.map +1 -0
- package/dist/game/effect-general.d.ts +98 -0
- package/dist/game/effect-general.d.ts.map +1 -0
- package/dist/game/effect-general.js +914 -0
- package/dist/game/effect-general.js.map +1 -0
- package/dist/game/effect-item.d.ts +124 -0
- package/dist/game/effect-item.d.ts.map +1 -0
- package/dist/game/effect-item.js +789 -0
- package/dist/game/effect-item.js.map +1 -0
- package/dist/game/effect-melee.d.ts +43 -0
- package/dist/game/effect-melee.d.ts.map +1 -0
- package/dist/game/effect-melee.js +477 -0
- package/dist/game/effect-melee.js.map +1 -0
- package/dist/game/effect-mon-origin.d.ts +67 -0
- package/dist/game/effect-mon-origin.d.ts.map +1 -0
- package/dist/game/effect-mon-origin.js +164 -0
- package/dist/game/effect-mon-origin.js.map +1 -0
- package/dist/game/effect-monster.d.ts +29 -0
- package/dist/game/effect-monster.d.ts.map +1 -0
- package/dist/game/effect-monster.js +281 -0
- package/dist/game/effect-monster.js.map +1 -0
- package/dist/game/effect-summon.d.ts +37 -0
- package/dist/game/effect-summon.d.ts.map +1 -0
- package/dist/game/effect-summon.js +113 -0
- package/dist/game/effect-summon.js.map +1 -0
- package/dist/game/effect-teleport.d.ts +130 -0
- package/dist/game/effect-teleport.d.ts.map +1 -0
- package/dist/game/effect-teleport.js +529 -0
- package/dist/game/effect-teleport.js.map +1 -0
- package/dist/game/effect-terrain.d.ts +91 -0
- package/dist/game/effect-terrain.d.ts.map +1 -0
- package/dist/game/effect-terrain.js +812 -0
- package/dist/game/effect-terrain.js.map +1 -0
- package/dist/game/energy.d.ts +45 -0
- package/dist/game/energy.d.ts.map +1 -0
- package/dist/game/energy.js +51 -0
- package/dist/game/energy.js.map +1 -0
- package/dist/game/equip-cmp.d.ts +138 -0
- package/dist/game/equip-cmp.d.ts.map +1 -0
- package/dist/game/equip-cmp.js +363 -0
- package/dist/game/equip-cmp.js.map +1 -0
- package/dist/game/floor.d.ts +182 -0
- package/dist/game/floor.d.ts.map +1 -0
- package/dist/game/floor.js +435 -0
- package/dist/game/floor.js.map +1 -0
- package/dist/game/gear.d.ts +408 -0
- package/dist/game/gear.d.ts.map +1 -0
- package/dist/game/gear.js +1037 -0
- package/dist/game/gear.js.map +1 -0
- package/dist/game/harness.d.ts +61 -0
- package/dist/game/harness.d.ts.map +1 -0
- package/dist/game/harness.js +198 -0
- package/dist/game/harness.js.map +1 -0
- package/dist/game/history.d.ts +49 -0
- package/dist/game/history.d.ts.map +1 -0
- package/dist/game/history.js +55 -0
- package/dist/game/history.js.map +1 -0
- package/dist/game/ignore-cmd.d.ts +42 -0
- package/dist/game/ignore-cmd.d.ts.map +1 -0
- package/dist/game/ignore-cmd.js +59 -0
- package/dist/game/ignore-cmd.js.map +1 -0
- package/dist/game/inscription-confirm.d.ts +80 -0
- package/dist/game/inscription-confirm.d.ts.map +1 -0
- package/dist/game/inscription-confirm.js +95 -0
- package/dist/game/inscription-confirm.js.map +1 -0
- package/dist/game/known.d.ts +297 -0
- package/dist/game/known.d.ts.map +1 -0
- package/dist/game/known.js +849 -0
- package/dist/game/known.js.map +1 -0
- package/dist/game/loop.d.ts +139 -0
- package/dist/game/loop.d.ts.map +1 -0
- package/dist/game/loop.js +631 -0
- package/dist/game/loop.js.map +1 -0
- package/dist/game/lore-color.d.ts +25 -0
- package/dist/game/lore-color.d.ts.map +1 -0
- package/dist/game/lore-color.js +95 -0
- package/dist/game/lore-color.js.map +1 -0
- package/dist/game/mon-cast.d.ts +150 -0
- package/dist/game/mon-cast.d.ts.map +1 -0
- package/dist/game/mon-cast.js +301 -0
- package/dist/game/mon-cast.js.map +1 -0
- package/dist/game/mon-cmd.d.ts +51 -0
- package/dist/game/mon-cmd.d.ts.map +1 -0
- package/dist/game/mon-cmd.js +670 -0
- package/dist/game/mon-cmd.js.map +1 -0
- package/dist/game/mon-death.d.ts +143 -0
- package/dist/game/mon-death.d.ts.map +1 -0
- package/dist/game/mon-death.js +328 -0
- package/dist/game/mon-death.js.map +1 -0
- package/dist/game/mon-group.d.ts +81 -0
- package/dist/game/mon-group.d.ts.map +1 -0
- package/dist/game/mon-group.js +323 -0
- package/dist/game/mon-group.js.map +1 -0
- package/dist/game/mon-list.d.ts +85 -0
- package/dist/game/mon-list.d.ts.map +1 -0
- package/dist/game/mon-list.js +154 -0
- package/dist/game/mon-list.js.map +1 -0
- package/dist/game/mon-message.d.ts +100 -0
- package/dist/game/mon-message.d.ts.map +1 -0
- package/dist/game/mon-message.js +336 -0
- package/dist/game/mon-message.js.map +1 -0
- package/dist/game/mon-place.d.ts +226 -0
- package/dist/game/mon-place.d.ts.map +1 -0
- package/dist/game/mon-place.js +642 -0
- package/dist/game/mon-place.js.map +1 -0
- package/dist/game/mon-ranged.d.ts +87 -0
- package/dist/game/mon-ranged.d.ts.map +1 -0
- package/dist/game/mon-ranged.js +353 -0
- package/dist/game/mon-ranged.js.map +1 -0
- package/dist/game/mon-shape.d.ts +43 -0
- package/dist/game/mon-shape.d.ts.map +1 -0
- package/dist/game/mon-shape.js +115 -0
- package/dist/game/mon-shape.js.map +1 -0
- package/dist/game/mon-side.d.ts +63 -0
- package/dist/game/mon-side.d.ts.map +1 -0
- package/dist/game/mon-side.js +403 -0
- package/dist/game/mon-side.js.map +1 -0
- package/dist/game/monster-turn.d.ts +195 -0
- package/dist/game/monster-turn.d.ts.map +1 -0
- package/dist/game/monster-turn.js +1560 -0
- package/dist/game/monster-turn.js.map +1 -0
- package/dist/game/obj-cmd.d.ts +453 -0
- package/dist/game/obj-cmd.d.ts.map +1 -0
- package/dist/game/obj-cmd.js +1530 -0
- package/dist/game/obj-cmd.js.map +1 -0
- package/dist/game/obj-list.d.ts +92 -0
- package/dist/game/obj-list.d.ts.map +1 -0
- package/dist/game/obj-list.js +251 -0
- package/dist/game/obj-list.js.map +1 -0
- package/dist/game/object-inspect.d.ts +37 -0
- package/dist/game/object-inspect.d.ts.map +1 -0
- package/dist/game/object-inspect.js +106 -0
- package/dist/game/object-inspect.js.map +1 -0
- package/dist/game/pickup.d.ts +126 -0
- package/dist/game/pickup.d.ts.map +1 -0
- package/dist/game/pickup.js +367 -0
- package/dist/game/pickup.js.map +1 -0
- package/dist/game/player-path.d.ts +133 -0
- package/dist/game/player-path.d.ts.map +1 -0
- package/dist/game/player-path.js +1268 -0
- package/dist/game/player-path.js.map +1 -0
- package/dist/game/player-side.d.ts +59 -0
- package/dist/game/player-side.d.ts.map +1 -0
- package/dist/game/player-side.js +506 -0
- package/dist/game/player-side.js.map +1 -0
- package/dist/game/player-turn.d.ts +161 -0
- package/dist/game/player-turn.d.ts.map +1 -0
- package/dist/game/player-turn.js +739 -0
- package/dist/game/player-turn.js.map +1 -0
- package/dist/game/project-cast.d.ts +268 -0
- package/dist/game/project-cast.d.ts.map +1 -0
- package/dist/game/project-cast.js +496 -0
- package/dist/game/project-cast.js.map +1 -0
- package/dist/game/project-feat.d.ts +47 -0
- package/dist/game/project-feat.d.ts.map +1 -0
- package/dist/game/project-feat.js +350 -0
- package/dist/game/project-feat.js.map +1 -0
- package/dist/game/project-monster.d.ts +106 -0
- package/dist/game/project-monster.d.ts.map +1 -0
- package/dist/game/project-monster.js +272 -0
- package/dist/game/project-monster.js.map +1 -0
- package/dist/game/project-obj.d.ts +60 -0
- package/dist/game/project-obj.d.ts.map +1 -0
- package/dist/game/project-obj.js +245 -0
- package/dist/game/project-obj.js.map +1 -0
- package/dist/game/project-player.d.ts +120 -0
- package/dist/game/project-player.d.ts.map +1 -0
- package/dist/game/project-player.js +108 -0
- package/dist/game/project-player.js.map +1 -0
- package/dist/game/quest.d.ts +101 -0
- package/dist/game/quest.d.ts.map +1 -0
- package/dist/game/quest.js +192 -0
- package/dist/game/quest.js.map +1 -0
- package/dist/game/ranged-cmd.d.ts +32 -0
- package/dist/game/ranged-cmd.d.ts.map +1 -0
- package/dist/game/ranged-cmd.js +372 -0
- package/dist/game/ranged-cmd.js.map +1 -0
- package/dist/game/scheduler.d.ts +47 -0
- package/dist/game/scheduler.d.ts.map +1 -0
- package/dist/game/scheduler.js +141 -0
- package/dist/game/scheduler.js.map +1 -0
- package/dist/game/spell-cmd.d.ts +104 -0
- package/dist/game/spell-cmd.d.ts.map +1 -0
- package/dist/game/spell-cmd.js +320 -0
- package/dist/game/spell-cmd.js.map +1 -0
- package/dist/game/spoil.d.ts +28 -0
- package/dist/game/spoil.d.ts.map +1 -0
- package/dist/game/spoil.js +435 -0
- package/dist/game/spoil.js.map +1 -0
- package/dist/game/steal.d.ts +35 -0
- package/dist/game/steal.d.ts.map +1 -0
- package/dist/game/steal.js +145 -0
- package/dist/game/steal.js.map +1 -0
- package/dist/game/take-hit-hooks.d.ts +52 -0
- package/dist/game/take-hit-hooks.d.ts.map +1 -0
- package/dist/game/take-hit-hooks.js +127 -0
- package/dist/game/take-hit-hooks.js.map +1 -0
- package/dist/game/target-loop.d.ts +119 -0
- package/dist/game/target-loop.d.ts.map +1 -0
- package/dist/game/target-loop.js +408 -0
- package/dist/game/target-loop.js.map +1 -0
- package/dist/game/target.d.ts +133 -0
- package/dist/game/target.d.ts.map +1 -0
- package/dist/game/target.js +353 -0
- package/dist/game/target.js.map +1 -0
- package/dist/game/thrust.d.ts +37 -0
- package/dist/game/thrust.d.ts.map +1 -0
- package/dist/game/thrust.js +155 -0
- package/dist/game/thrust.js.map +1 -0
- package/dist/game/trap.d.ts +218 -0
- package/dist/game/trap.d.ts.map +1 -0
- package/dist/game/trap.js +618 -0
- package/dist/game/trap.js.map +1 -0
- package/dist/game/ui-entry.d.ts +282 -0
- package/dist/game/ui-entry.d.ts.map +1 -0
- package/dist/game/ui-entry.js +1838 -0
- package/dist/game/ui-entry.js.map +1 -0
- package/dist/game/wizard.d.ts +654 -0
- package/dist/game/wizard.d.ts.map +1 -0
- package/dist/game/wizard.js +1323 -0
- package/dist/game/wizard.js.map +1 -0
- package/dist/game/world.d.ts +183 -0
- package/dist/game/world.d.ts.map +1 -0
- package/dist/game/world.js +685 -0
- package/dist/game/world.js.map +1 -0
- package/dist/gen/cave.d.ts +247 -0
- package/dist/gen/cave.d.ts.map +1 -0
- package/dist/gen/cave.js +2406 -0
- package/dist/gen/cave.js.map +1 -0
- package/dist/gen/gen-monster.d.ts +151 -0
- package/dist/gen/gen-monster.d.ts.map +1 -0
- package/dist/gen/gen-monster.js +473 -0
- package/dist/gen/gen-monster.js.map +1 -0
- package/dist/gen/generate.d.ts +240 -0
- package/dist/gen/generate.d.ts.map +1 -0
- package/dist/gen/generate.js +358 -0
- package/dist/gen/generate.js.map +1 -0
- package/dist/gen/room.d.ts +160 -0
- package/dist/gen/room.d.ts.map +1 -0
- package/dist/gen/room.js +1910 -0
- package/dist/gen/room.js.map +1 -0
- package/dist/gen/util.d.ts +466 -0
- package/dist/gen/util.d.ts.map +1 -0
- package/dist/gen/util.js +1553 -0
- package/dist/gen/util.js.map +1 -0
- package/dist/generated/dun-profiles.d.ts +44 -0
- package/dist/generated/dun-profiles.d.ts.map +1 -0
- package/dist/generated/dun-profiles.js +28 -0
- package/dist/generated/dun-profiles.js.map +1 -0
- package/dist/generated/effects.d.ts +1021 -0
- package/dist/generated/effects.d.ts.map +1 -0
- package/dist/generated/effects.js +239 -0
- package/dist/generated/effects.js.map +1 -0
- package/dist/generated/elements.d.ts +83 -0
- package/dist/generated/elements.d.ts.map +1 -0
- package/dist/generated/elements.js +60 -0
- package/dist/generated/elements.js.map +1 -0
- package/dist/generated/equip-slots.d.ts +104 -0
- package/dist/generated/equip-slots.d.ts.map +1 -0
- package/dist/generated/equip-slots.js +34 -0
- package/dist/generated/equip-slots.js.map +1 -0
- package/dist/generated/history-types.d.ts +52 -0
- package/dist/generated/history-types.d.ts.map +1 -0
- package/dist/generated/history-types.js +32 -0
- package/dist/generated/history-types.js.map +1 -0
- package/dist/generated/ignore-types.d.ts +116 -0
- package/dist/generated/ignore-types.d.ts.map +1 -0
- package/dist/generated/ignore-types.js +64 -0
- package/dist/generated/ignore-types.js.map +1 -0
- package/dist/generated/index.d.ts +32 -0
- package/dist/generated/index.d.ts.map +1 -0
- package/dist/generated/index.js +33 -0
- package/dist/generated/index.js.map +1 -0
- package/dist/generated/kind-flags.d.ts +72 -0
- package/dist/generated/kind-flags.d.ts.map +1 -0
- package/dist/generated/kind-flags.js +42 -0
- package/dist/generated/kind-flags.js.map +1 -0
- package/dist/generated/message.d.ts +624 -0
- package/dist/generated/message.d.ts.map +1 -0
- package/dist/generated/message.js +318 -0
- package/dist/generated/message.js.map +1 -0
- package/dist/generated/mon-message.d.ts +386 -0
- package/dist/generated/mon-message.d.ts.map +1 -0
- package/dist/generated/mon-message.js +136 -0
- package/dist/generated/mon-message.js.map +1 -0
- package/dist/generated/mon-race-flags.d.ts +433 -0
- package/dist/generated/mon-race-flags.d.ts.map +1 -0
- package/dist/generated/mon-race-flags.js +180 -0
- package/dist/generated/mon-race-flags.js.map +1 -0
- package/dist/generated/mon-spells.d.ts +380 -0
- package/dist/generated/mon-spells.d.ts.map +1 -0
- package/dist/generated/mon-spells.js +196 -0
- package/dist/generated/mon-spells.js.map +1 -0
- package/dist/generated/mon-temp-flags.d.ts +52 -0
- package/dist/generated/mon-temp-flags.d.ts.map +1 -0
- package/dist/generated/mon-temp-flags.js +32 -0
- package/dist/generated/mon-temp-flags.js.map +1 -0
- package/dist/generated/mon-timed.d.ts +118 -0
- package/dist/generated/mon-timed.d.ts.map +1 -0
- package/dist/generated/mon-timed.js +32 -0
- package/dist/generated/mon-timed.js.map +1 -0
- package/dist/generated/object-flags.d.ts +169 -0
- package/dist/generated/object-flags.d.ts.map +1 -0
- package/dist/generated/object-flags.js +93 -0
- package/dist/generated/object-flags.js.map +1 -0
- package/dist/generated/object-modifiers.d.ts +50 -0
- package/dist/generated/object-modifiers.d.ts.map +1 -0
- package/dist/generated/object-modifiers.js +41 -0
- package/dist/generated/object-modifiers.js.map +1 -0
- package/dist/generated/options.d.ts +284 -0
- package/dist/generated/options.d.ts.map +1 -0
- package/dist/generated/options.js +102 -0
- package/dist/generated/options.js.map +1 -0
- package/dist/generated/origins.d.ts +138 -0
- package/dist/generated/origins.d.ts.map +1 -0
- package/dist/generated/origins.js +62 -0
- package/dist/generated/origins.js.map +1 -0
- package/dist/generated/parser-errors.d.ts +264 -0
- package/dist/generated/parser-errors.d.ts.map +1 -0
- package/dist/generated/parser-errors.js +138 -0
- package/dist/generated/parser-errors.js.map +1 -0
- package/dist/generated/player-flags.d.ts +62 -0
- package/dist/generated/player-flags.d.ts.map +1 -0
- package/dist/generated/player-flags.js +46 -0
- package/dist/generated/player-flags.js.map +1 -0
- package/dist/generated/player-timed.d.ts +273 -0
- package/dist/generated/player-timed.d.ts.map +1 -0
- package/dist/generated/player-timed.js +116 -0
- package/dist/generated/player-timed.js.map +1 -0
- package/dist/generated/projections.d.ts +130 -0
- package/dist/generated/projections.d.ts.map +1 -0
- package/dist/generated/projections.js +101 -0
- package/dist/generated/projections.js.map +1 -0
- package/dist/generated/randart-properties.d.ts +388 -0
- package/dist/generated/randart-properties.d.ts.map +1 -0
- package/dist/generated/randart-properties.js +200 -0
- package/dist/generated/randart-properties.js.map +1 -0
- package/dist/generated/room-flags.d.ts +21 -0
- package/dist/generated/room-flags.d.ts.map +1 -0
- package/dist/generated/room-flags.js +19 -0
- package/dist/generated/room-flags.js.map +1 -0
- package/dist/generated/rooms.d.ts +122 -0
- package/dist/generated/rooms.d.ts.map +1 -0
- package/dist/generated/rooms.js +48 -0
- package/dist/generated/rooms.js.map +1 -0
- package/dist/generated/square-flags.d.ts +96 -0
- package/dist/generated/square-flags.d.ts.map +1 -0
- package/dist/generated/square-flags.js +54 -0
- package/dist/generated/square-flags.js.map +1 -0
- package/dist/generated/stats.d.ts +23 -0
- package/dist/generated/stats.d.ts.map +1 -0
- package/dist/generated/stats.js +20 -0
- package/dist/generated/stats.js.map +1 -0
- package/dist/generated/terrain-flags.d.ts +136 -0
- package/dist/generated/terrain-flags.d.ts.map +1 -0
- package/dist/generated/terrain-flags.js +74 -0
- package/dist/generated/terrain-flags.js.map +1 -0
- package/dist/generated/terrain.d.ts +83 -0
- package/dist/generated/terrain.d.ts.map +1 -0
- package/dist/generated/terrain.js +60 -0
- package/dist/generated/terrain.js.map +1 -0
- package/dist/generated/trap-flags.d.ts +68 -0
- package/dist/generated/trap-flags.d.ts.map +1 -0
- package/dist/generated/trap-flags.js +40 -0
- package/dist/generated/trap-flags.js.map +1 -0
- package/dist/generated/tvals.d.ts +152 -0
- package/dist/generated/tvals.d.ts.map +1 -0
- package/dist/generated/tvals.js +82 -0
- package/dist/generated/tvals.js.map +1 -0
- package/dist/generated/ui-entry-renderers.d.ts +62 -0
- package/dist/generated/ui-entry-renderers.d.ts.map +1 -0
- package/dist/generated/ui-entry-renderers.js +22 -0
- package/dist/generated/ui-entry-renderers.js.map +1 -0
- package/dist/guard.d.ts +43 -0
- package/dist/guard.d.ts.map +1 -0
- package/dist/guard.js +65 -0
- package/dist/guard.js.map +1 -0
- package/dist/host/args.d.ts +129 -0
- package/dist/host/args.d.ts.map +1 -0
- package/dist/host/args.js +251 -0
- package/dist/host/args.js.map +1 -0
- package/dist/host/bridge.d.ts +61 -0
- package/dist/host/bridge.d.ts.map +1 -0
- package/dist/host/bridge.js +176 -0
- package/dist/host/bridge.js.map +1 -0
- package/dist/host/index.d.ts +18 -0
- package/dist/host/index.d.ts.map +1 -0
- package/dist/host/index.js +18 -0
- package/dist/host/index.js.map +1 -0
- package/dist/host/io.d.ts +169 -0
- package/dist/host/io.d.ts.map +1 -0
- package/dist/host/io.js +137 -0
- package/dist/host/io.js.map +1 -0
- package/dist/host/memory.d.ts +56 -0
- package/dist/host/memory.d.ts.map +1 -0
- package/dist/host/memory.js +105 -0
- package/dist/host/memory.js.map +1 -0
- package/dist/host/raw.d.ts +114 -0
- package/dist/host/raw.d.ts.map +1 -0
- package/dist/host/raw.js +107 -0
- package/dist/host/raw.js.map +1 -0
- package/dist/index.d.ts +180 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +222 -0
- package/dist/index.js.map +1 -0
- package/dist/loc.d.ts +63 -0
- package/dist/loc.d.ts.map +1 -0
- package/dist/loc.js +128 -0
- package/dist/loc.js.map +1 -0
- package/dist/mod/hooks.d.ts +204 -0
- package/dist/mod/hooks.d.ts.map +1 -0
- package/dist/mod/hooks.js +161 -0
- package/dist/mod/hooks.js.map +1 -0
- package/dist/mod/ids.d.ts +160 -0
- package/dist/mod/ids.d.ts.map +1 -0
- package/dist/mod/ids.js +343 -0
- package/dist/mod/ids.js.map +1 -0
- package/dist/mod/registry-host.d.ts +156 -0
- package/dist/mod/registry-host.d.ts.map +1 -0
- package/dist/mod/registry-host.js +142 -0
- package/dist/mod/registry-host.js.map +1 -0
- package/dist/mod/save-blocks.d.ts +201 -0
- package/dist/mod/save-blocks.d.ts.map +1 -0
- package/dist/mod/save-blocks.js +640 -0
- package/dist/mod/save-blocks.js.map +1 -0
- package/dist/mod/vocabulary.d.ts +104 -0
- package/dist/mod/vocabulary.d.ts.map +1 -0
- package/dist/mod/vocabulary.js +0 -0
- package/dist/mod/vocabulary.js.map +1 -0
- package/dist/mon/bind.d.ts +266 -0
- package/dist/mon/bind.d.ts.map +1 -0
- package/dist/mon/bind.js +610 -0
- package/dist/mon/bind.js.map +1 -0
- package/dist/mon/desc.d.ts +72 -0
- package/dist/mon/desc.d.ts.map +1 -0
- package/dist/mon/desc.js +237 -0
- package/dist/mon/desc.js.map +1 -0
- package/dist/mon/knowledge-groups.d.ts +61 -0
- package/dist/mon/knowledge-groups.d.ts.map +1 -0
- package/dist/mon/knowledge-groups.js +121 -0
- package/dist/mon/knowledge-groups.js.map +1 -0
- package/dist/mon/lore-describe.d.ts +216 -0
- package/dist/mon/lore-describe.d.ts.map +1 -0
- package/dist/mon/lore-describe.js +1105 -0
- package/dist/mon/lore-describe.js.map +1 -0
- package/dist/mon/lore.d.ts +117 -0
- package/dist/mon/lore.d.ts.map +1 -0
- package/dist/mon/lore.js +221 -0
- package/dist/mon/lore.js.map +1 -0
- package/dist/mon/make.d.ts +147 -0
- package/dist/mon/make.d.ts.map +1 -0
- package/dist/mon/make.js +353 -0
- package/dist/mon/make.js.map +1 -0
- package/dist/mon/monster.d.ts +94 -0
- package/dist/mon/monster.d.ts.map +1 -0
- package/dist/mon/monster.js +90 -0
- package/dist/mon/monster.js.map +1 -0
- package/dist/mon/predicate.d.ts +87 -0
- package/dist/mon/predicate.d.ts.map +1 -0
- package/dist/mon/predicate.js +190 -0
- package/dist/mon/predicate.js.map +1 -0
- package/dist/mon/project-mon.d.ts +129 -0
- package/dist/mon/project-mon.d.ts.map +1 -0
- package/dist/mon/project-mon.js +652 -0
- package/dist/mon/project-mon.js.map +1 -0
- package/dist/mon/spell.d.ts +155 -0
- package/dist/mon/spell.d.ts.map +1 -0
- package/dist/mon/spell.js +355 -0
- package/dist/mon/spell.js.map +1 -0
- package/dist/mon/steal.d.ts +112 -0
- package/dist/mon/steal.d.ts.map +1 -0
- package/dist/mon/steal.js +163 -0
- package/dist/mon/steal.js.map +1 -0
- package/dist/mon/summon.d.ts +62 -0
- package/dist/mon/summon.d.ts.map +1 -0
- package/dist/mon/summon.js +111 -0
- package/dist/mon/summon.js.map +1 -0
- package/dist/mon/take-hit.d.ts +75 -0
- package/dist/mon/take-hit.d.ts.map +1 -0
- package/dist/mon/take-hit.js +122 -0
- package/dist/mon/take-hit.js.map +1 -0
- package/dist/mon/timed.d.ts +74 -0
- package/dist/mon/timed.d.ts.map +1 -0
- package/dist/mon/timed.js +219 -0
- package/dist/mon/timed.js.map +1 -0
- package/dist/mon/types.d.ts +252 -0
- package/dist/mon/types.d.ts.map +1 -0
- package/dist/mon/types.js +46 -0
- package/dist/mon/types.js.map +1 -0
- package/dist/msg.d.ts +71 -0
- package/dist/msg.d.ts.map +1 -0
- package/dist/msg.js +126 -0
- package/dist/msg.js.map +1 -0
- package/dist/obj/artifact-fake.d.ts +39 -0
- package/dist/obj/artifact-fake.d.ts.map +1 -0
- package/dist/obj/artifact-fake.js +52 -0
- package/dist/obj/artifact-fake.js.map +1 -0
- package/dist/obj/artifact-known.d.ts +50 -0
- package/dist/obj/artifact-known.d.ts.map +1 -0
- package/dist/obj/artifact-known.js +55 -0
- package/dist/obj/artifact-known.js.map +1 -0
- package/dist/obj/bind.d.ts +219 -0
- package/dist/obj/bind.d.ts.map +1 -0
- package/dist/obj/bind.js +1239 -0
- package/dist/obj/bind.js.map +1 -0
- package/dist/obj/chest.d.ts +91 -0
- package/dist/obj/chest.d.ts.map +1 -0
- package/dist/obj/chest.js +220 -0
- package/dist/obj/chest.js.map +1 -0
- package/dist/obj/desc.d.ts +79 -0
- package/dist/obj/desc.d.ts.map +1 -0
- package/dist/obj/desc.js +602 -0
- package/dist/obj/desc.js.map +1 -0
- package/dist/obj/effects-info.d.ts +78 -0
- package/dist/obj/effects-info.d.ts.map +1 -0
- package/dist/obj/effects-info.js +240 -0
- package/dist/obj/effects-info.js.map +1 -0
- package/dist/obj/flavor.d.ts +68 -0
- package/dist/obj/flavor.d.ts.map +1 -0
- package/dist/obj/flavor.js +201 -0
- package/dist/obj/flavor.js.map +1 -0
- package/dist/obj/ignore.d.ts +143 -0
- package/dist/obj/ignore.d.ts.map +1 -0
- package/dist/obj/ignore.js +345 -0
- package/dist/obj/ignore.js.map +1 -0
- package/dist/obj/knowledge.d.ts +520 -0
- package/dist/obj/knowledge.d.ts.map +1 -0
- package/dist/obj/knowledge.js +1364 -0
- package/dist/obj/knowledge.js.map +1 -0
- package/dist/obj/known-object.d.ts +293 -0
- package/dist/obj/known-object.d.ts.map +1 -0
- package/dist/obj/known-object.js +532 -0
- package/dist/obj/known-object.js.map +1 -0
- package/dist/obj/make.d.ts +292 -0
- package/dist/obj/make.d.ts.map +1 -0
- package/dist/obj/make.js +1055 -0
- package/dist/obj/make.js.map +1 -0
- package/dist/obj/object-info.d.ts +188 -0
- package/dist/obj/object-info.d.ts.map +1 -0
- package/dist/obj/object-info.js +1407 -0
- package/dist/obj/object-info.js.map +1 -0
- package/dist/obj/object.d.ts +335 -0
- package/dist/obj/object.d.ts.map +1 -0
- package/dist/obj/object.js +1051 -0
- package/dist/obj/object.js.map +1 -0
- package/dist/obj/power.d.ts +65 -0
- package/dist/obj/power.d.ts.map +1 -0
- package/dist/obj/power.js +580 -0
- package/dist/obj/power.js.map +1 -0
- package/dist/obj/randart-build.d.ts +223 -0
- package/dist/obj/randart-build.d.ts.map +1 -0
- package/dist/obj/randart-build.js +1444 -0
- package/dist/obj/randart-build.js.map +1 -0
- package/dist/obj/randart-data.d.ts +179 -0
- package/dist/obj/randart-data.d.ts.map +1 -0
- package/dist/obj/randart-data.js +1153 -0
- package/dist/obj/randart-data.js.map +1 -0
- package/dist/obj/randart.d.ts +128 -0
- package/dist/obj/randart.d.ts.map +1 -0
- package/dist/obj/randart.js +458 -0
- package/dist/obj/randart.js.map +1 -0
- package/dist/obj/randname.d.ts +33 -0
- package/dist/obj/randname.d.ts.map +1 -0
- package/dist/obj/randname.js +116 -0
- package/dist/obj/randname.js.map +1 -0
- package/dist/obj/recharge.d.ts +28 -0
- package/dist/obj/recharge.d.ts.map +1 -0
- package/dist/obj/recharge.js +52 -0
- package/dist/obj/recharge.js.map +1 -0
- package/dist/obj/types.d.ts +584 -0
- package/dist/obj/types.d.ts.map +1 -0
- package/dist/obj/types.js +104 -0
- package/dist/obj/types.js.map +1 -0
- package/dist/obj/value.d.ts +64 -0
- package/dist/obj/value.d.ts.map +1 -0
- package/dist/obj/value.js +176 -0
- package/dist/obj/value.js.map +1 -0
- package/dist/player/abilities.d.ts +57 -0
- package/dist/player/abilities.d.ts.map +1 -0
- package/dist/player/abilities.js +118 -0
- package/dist/player/abilities.js.map +1 -0
- package/dist/player/best-digger.d.ts +42 -0
- package/dist/player/best-digger.d.ts.map +1 -0
- package/dist/player/best-digger.js +89 -0
- package/dist/player/best-digger.js.map +1 -0
- package/dist/player/bind.d.ts +270 -0
- package/dist/player/bind.d.ts.map +1 -0
- package/dist/player/bind.js +698 -0
- package/dist/player/bind.js.map +1 -0
- package/dist/player/birth.d.ts +258 -0
- package/dist/player/birth.d.ts.map +1 -0
- package/dist/player/birth.js +639 -0
- package/dist/player/birth.js.map +1 -0
- package/dist/player/calcs.d.ts +403 -0
- package/dist/player/calcs.d.ts.map +1 -0
- package/dist/player/calcs.js +1189 -0
- package/dist/player/calcs.js.map +1 -0
- package/dist/player/combat-regen.d.ts +14 -0
- package/dist/player/combat-regen.d.ts.map +1 -0
- package/dist/player/combat-regen.js +29 -0
- package/dist/player/combat-regen.js.map +1 -0
- package/dist/player/exp.d.ts +96 -0
- package/dist/player/exp.d.ts.map +1 -0
- package/dist/player/exp.js +229 -0
- package/dist/player/exp.js.map +1 -0
- package/dist/player/history.d.ts +91 -0
- package/dist/player/history.d.ts.map +1 -0
- package/dist/player/history.js +145 -0
- package/dist/player/history.js.map +1 -0
- package/dist/player/options.d.ts +123 -0
- package/dist/player/options.d.ts.map +1 -0
- package/dist/player/options.js +199 -0
- package/dist/player/options.js.map +1 -0
- package/dist/player/player.d.ts +242 -0
- package/dist/player/player.d.ts.map +1 -0
- package/dist/player/player.js +119 -0
- package/dist/player/player.js.map +1 -0
- package/dist/player/shape-lore.d.ts +56 -0
- package/dist/player/shape-lore.d.ts.map +1 -0
- package/dist/player/shape-lore.js +221 -0
- package/dist/player/shape-lore.js.map +1 -0
- package/dist/player/spell.d.ts +146 -0
- package/dist/player/spell.d.ts.map +1 -0
- package/dist/player/spell.js +519 -0
- package/dist/player/spell.js.map +1 -0
- package/dist/player/take-hit.d.ts +87 -0
- package/dist/player/take-hit.d.ts.map +1 -0
- package/dist/player/take-hit.js +99 -0
- package/dist/player/take-hit.js.map +1 -0
- package/dist/player/timed.d.ts +205 -0
- package/dist/player/timed.d.ts.map +1 -0
- package/dist/player/timed.js +310 -0
- package/dist/player/timed.js.map +1 -0
- package/dist/player/types.d.ts +390 -0
- package/dist/player/types.d.ts.map +1 -0
- package/dist/player/types.js +51 -0
- package/dist/player/types.js.map +1 -0
- package/dist/rational.d.ts +99 -0
- package/dist/rational.d.ts.map +1 -0
- package/dist/rational.js +345 -0
- package/dist/rational.js.map +1 -0
- package/dist/rng.d.ts +168 -0
- package/dist/rng.d.ts.map +1 -0
- package/dist/rng.js +404 -0
- package/dist/rng.js.map +1 -0
- package/dist/save/buffer.d.ts +120 -0
- package/dist/save/buffer.d.ts.map +1 -0
- package/dist/save/buffer.js +238 -0
- package/dist/save/buffer.js.map +1 -0
- package/dist/save/compress.d.ts +79 -0
- package/dist/save/compress.d.ts.map +1 -0
- package/dist/save/compress.js +97 -0
- package/dist/save/compress.js.map +1 -0
- package/dist/save/description.d.ts +61 -0
- package/dist/save/description.d.ts.map +1 -0
- package/dist/save/description.js +51 -0
- package/dist/save/description.js.map +1 -0
- package/dist/save/integrity.d.ts +59 -0
- package/dist/save/integrity.d.ts.map +1 -0
- package/dist/save/integrity.js +103 -0
- package/dist/save/integrity.js.map +1 -0
- package/dist/score/display.d.ts +40 -0
- package/dist/score/display.d.ts.map +1 -0
- package/dist/score/display.js +86 -0
- package/dist/score/display.js.map +1 -0
- package/dist/score/score.d.ts +166 -0
- package/dist/score/score.d.ts.map +1 -0
- package/dist/score/score.js +244 -0
- package/dist/score/score.js.map +1 -0
- package/dist/score/types.d.ts +98 -0
- package/dist/score/types.d.ts.map +1 -0
- package/dist/score/types.js +27 -0
- package/dist/score/types.js.map +1 -0
- package/dist/session/boot.d.ts +207 -0
- package/dist/session/boot.d.ts.map +1 -0
- package/dist/session/boot.js +151 -0
- package/dist/session/boot.js.map +1 -0
- package/dist/session/game.d.ts +257 -0
- package/dist/session/game.d.ts.map +1 -0
- package/dist/session/game.js +2880 -0
- package/dist/session/game.js.map +1 -0
- package/dist/session/save.d.ts +847 -0
- package/dist/session/save.d.ts.map +1 -0
- package/dist/session/save.js +1306 -0
- package/dist/session/save.js.map +1 -0
- package/dist/sound/engine.d.ts +146 -0
- package/dist/sound/engine.d.ts.map +1 -0
- package/dist/sound/engine.js +332 -0
- package/dist/sound/engine.js.map +1 -0
- package/dist/sound/index.d.ts +13 -0
- package/dist/sound/index.d.ts.map +1 -0
- package/dist/sound/index.js +13 -0
- package/dist/sound/index.js.map +1 -0
- package/dist/sound/sound-prefs-data.d.ts +10 -0
- package/dist/sound/sound-prefs-data.d.ts.map +1 -0
- package/dist/sound/sound-prefs-data.js +165 -0
- package/dist/sound/sound-prefs-data.js.map +1 -0
- package/dist/sound/types.d.ts +64 -0
- package/dist/sound/types.d.ts.map +1 -0
- package/dist/sound/types.js +23 -0
- package/dist/sound/types.js.map +1 -0
- package/dist/store/bind.d.ts +43 -0
- package/dist/store/bind.d.ts.map +1 -0
- package/dist/store/bind.js +130 -0
- package/dist/store/bind.js.map +1 -0
- package/dist/store/price.d.ts +27 -0
- package/dist/store/price.d.ts.map +1 -0
- package/dist/store/price.js +81 -0
- package/dist/store/price.js.map +1 -0
- package/dist/store/store-cmd.d.ts +51 -0
- package/dist/store/store-cmd.d.ts.map +1 -0
- package/dist/store/store-cmd.js +73 -0
- package/dist/store/store-cmd.js.map +1 -0
- package/dist/store/store.d.ts +156 -0
- package/dist/store/store.d.ts.map +1 -0
- package/dist/store/store.js +616 -0
- package/dist/store/store.js.map +1 -0
- package/dist/store/transact.d.ts +198 -0
- package/dist/store/transact.d.ts.map +1 -0
- package/dist/store/transact.js +383 -0
- package/dist/store/transact.js.map +1 -0
- package/dist/store/types.d.ts +101 -0
- package/dist/store/types.d.ts.map +1 -0
- package/dist/store/types.js +14 -0
- package/dist/store/types.js.map +1 -0
- package/dist/version.d.ts +25 -0
- package/dist/version.d.ts.map +1 -0
- package/dist/version.js +25 -0
- package/dist/version.js.map +1 -0
- package/dist/visuals/engine.d.ts +223 -0
- package/dist/visuals/engine.d.ts.map +1 -0
- package/dist/visuals/engine.js +357 -0
- package/dist/visuals/engine.js.map +1 -0
- package/dist/visuals/glyph-table.d.ts +112 -0
- package/dist/visuals/glyph-table.d.ts.map +1 -0
- package/dist/visuals/glyph-table.js +156 -0
- package/dist/visuals/glyph-table.js.map +1 -0
- package/dist/visuals/grafmode-data.d.ts +4 -0
- package/dist/visuals/grafmode-data.d.ts.map +1 -0
- package/dist/visuals/grafmode-data.js +88 -0
- package/dist/visuals/grafmode-data.js.map +1 -0
- package/dist/visuals/grafmode.d.ts +83 -0
- package/dist/visuals/grafmode.d.ts.map +1 -0
- package/dist/visuals/grafmode.js +82 -0
- package/dist/visuals/grafmode.js.map +1 -0
- package/dist/visuals/index.d.ts +19 -0
- package/dist/visuals/index.d.ts.map +1 -0
- package/dist/visuals/index.js +19 -0
- package/dist/visuals/index.js.map +1 -0
- package/dist/visuals/map-text.d.ts +79 -0
- package/dist/visuals/map-text.d.ts.map +1 -0
- package/dist/visuals/map-text.js +122 -0
- package/dist/visuals/map-text.js.map +1 -0
- package/dist/visuals/pref-expr.d.ts +56 -0
- package/dist/visuals/pref-expr.d.ts.map +1 -0
- package/dist/visuals/pref-expr.js +173 -0
- package/dist/visuals/pref-expr.js.map +1 -0
- package/dist/visuals/prefs.d.ts +280 -0
- package/dist/visuals/prefs.d.ts.map +1 -0
- package/dist/visuals/prefs.js +835 -0
- package/dist/visuals/prefs.js.map +1 -0
- package/dist/visuals/tile-prefs.d.ts +132 -0
- package/dist/visuals/tile-prefs.d.ts.map +1 -0
- package/dist/visuals/tile-prefs.js +105 -0
- package/dist/visuals/tile-prefs.js.map +1 -0
- package/dist/world/chunk.d.ts +195 -0
- package/dist/world/chunk.d.ts.map +1 -0
- package/dist/world/chunk.js +422 -0
- package/dist/world/chunk.js.map +1 -0
- package/dist/world/feature.d.ts +86 -0
- package/dist/world/feature.d.ts.map +1 -0
- package/dist/world/feature.js +153 -0
- package/dist/world/feature.js.map +1 -0
- package/dist/world/flow.d.ts +33 -0
- package/dist/world/flow.d.ts.map +1 -0
- package/dist/world/flow.js +115 -0
- package/dist/world/flow.js.map +1 -0
- package/dist/world/project.d.ts +176 -0
- package/dist/world/project.d.ts.map +1 -0
- package/dist/world/project.js +543 -0
- package/dist/world/project.js.map +1 -0
- package/dist/world/projection.d.ts +100 -0
- package/dist/world/projection.d.ts.map +1 -0
- package/dist/world/projection.js +152 -0
- package/dist/world/projection.js.map +1 -0
- package/dist/world/scatter.d.ts +25 -0
- package/dist/world/scatter.d.ts.map +1 -0
- package/dist/world/scatter.js +54 -0
- package/dist/world/scatter.js.map +1 -0
- package/dist/world/trap.d.ts +84 -0
- package/dist/world/trap.d.ts.map +1 -0
- package/dist/world/trap.js +106 -0
- package/dist/world/trap.js.map +1 -0
- package/dist/world/view.d.ts +60 -0
- package/dist/world/view.d.ts.map +1 -0
- package/dist/world/view.js +436 -0
- package/dist/world/view.js.map +1 -0
- package/dist/z-queue.d.ts +133 -0
- package/dist/z-queue.d.ts.map +1 -0
- package/dist/z-queue.js +283 -0
- package/dist/z-queue.js.map +1 -0
- package/package.json +75 -0
- package/src/agent/act.ts +114 -0
- package/src/agent/controller.ts +109 -0
- package/src/agent/events.ts +47 -0
- package/src/agent/index.ts +36 -0
- package/src/agent/perceive.ts +440 -0
- package/src/agent/types.ts +464 -0
- package/src/bitflag.ts +536 -0
- package/src/cmd.ts +547 -0
- package/src/color.ts +267 -0
- package/src/combat/brand-slay.ts +360 -0
- package/src/combat/hit.ts +471 -0
- package/src/combat/index.ts +15 -0
- package/src/combat/melee.ts +728 -0
- package/src/combat/mon-melee.ts +1153 -0
- package/src/combat/ranged.ts +397 -0
- package/src/constants.ts +324 -0
- package/src/dice.ts +467 -0
- package/src/effects/effect-choice.ts +32 -0
- package/src/effects/effect-info.ts +859 -0
- package/src/effects/effect.ts +560 -0
- package/src/effects/handlers.ts +452 -0
- package/src/effects/interpreter.ts +603 -0
- package/src/events.ts +317 -0
- package/src/expression.ts +360 -0
- package/src/game/cave-cmd.ts +1147 -0
- package/src/game/char-sheet.ts +557 -0
- package/src/game/chest.ts +348 -0
- package/src/game/context.ts +1218 -0
- package/src/game/curse-tick.ts +130 -0
- package/src/game/describe.ts +62 -0
- package/src/game/display.ts +838 -0
- package/src/game/dump-level.ts +114 -0
- package/src/game/effect-attack.ts +746 -0
- package/src/game/effect-detect.ts +542 -0
- package/src/game/effect-env.ts +252 -0
- package/src/game/effect-game-env.ts +86 -0
- package/src/game/effect-general.ts +1122 -0
- package/src/game/effect-item.ts +999 -0
- package/src/game/effect-melee.ts +557 -0
- package/src/game/effect-mon-origin.ts +196 -0
- package/src/game/effect-monster.ts +310 -0
- package/src/game/effect-summon.ts +161 -0
- package/src/game/effect-teleport.ts +645 -0
- package/src/game/effect-terrain.ts +881 -0
- package/src/game/energy.ts +61 -0
- package/src/game/equip-cmp.ts +476 -0
- package/src/game/floor.ts +524 -0
- package/src/game/gear.ts +1352 -0
- package/src/game/harness.ts +270 -0
- package/src/game/history.ts +78 -0
- package/src/game/ignore-cmd.ts +68 -0
- package/src/game/inscription-confirm.ts +115 -0
- package/src/game/known.ts +960 -0
- package/src/game/loop.ts +671 -0
- package/src/game/lore-color.ts +108 -0
- package/src/game/mon-cast.ts +409 -0
- package/src/game/mon-cmd.ts +767 -0
- package/src/game/mon-death.ts +459 -0
- package/src/game/mon-group.ts +368 -0
- package/src/game/mon-list.ts +213 -0
- package/src/game/mon-message.ts +359 -0
- package/src/game/mon-place.ts +1012 -0
- package/src/game/mon-ranged.ts +405 -0
- package/src/game/mon-shape.ts +161 -0
- package/src/game/mon-side.ts +511 -0
- package/src/game/monster-turn.ts +1750 -0
- package/src/game/obj-cmd.ts +1970 -0
- package/src/game/obj-list.ts +302 -0
- package/src/game/object-inspect.ts +162 -0
- package/src/game/pickup.ts +483 -0
- package/src/game/player-path.ts +1434 -0
- package/src/game/player-side.ts +555 -0
- package/src/game/player-turn.ts +852 -0
- package/src/game/project-cast.ts +766 -0
- package/src/game/project-feat.ts +386 -0
- package/src/game/project-monster.ts +407 -0
- package/src/game/project-obj.ts +298 -0
- package/src/game/project-player.ts +236 -0
- package/src/game/quest.ts +248 -0
- package/src/game/ranged-cmd.ts +417 -0
- package/src/game/scheduler.ts +150 -0
- package/src/game/spell-cmd.ts +404 -0
- package/src/game/spoil.ts +562 -0
- package/src/game/steal.ts +169 -0
- package/src/game/take-hit-hooks.ts +152 -0
- package/src/game/target-loop.ts +501 -0
- package/src/game/target.ts +424 -0
- package/src/game/thrust.ts +174 -0
- package/src/game/trap.ts +791 -0
- package/src/game/ui-entry.ts +2075 -0
- package/src/game/wizard.ts +1760 -0
- package/src/game/world.ts +786 -0
- package/src/gen/cave.ts +2858 -0
- package/src/gen/gen-monster.ts +592 -0
- package/src/gen/generate.ts +523 -0
- package/src/gen/room.ts +2213 -0
- package/src/gen/util.ts +1958 -0
- package/src/generated/dun-profiles.ts +30 -0
- package/src/generated/effects.ts +241 -0
- package/src/generated/elements.ts +62 -0
- package/src/generated/equip-slots.ts +36 -0
- package/src/generated/history-types.ts +34 -0
- package/src/generated/ignore-types.ts +66 -0
- package/src/generated/index.ts +33 -0
- package/src/generated/kind-flags.ts +44 -0
- package/src/generated/message.ts +320 -0
- package/src/generated/mon-message.ts +138 -0
- package/src/generated/mon-race-flags.ts +182 -0
- package/src/generated/mon-spells.ts +198 -0
- package/src/generated/mon-temp-flags.ts +34 -0
- package/src/generated/mon-timed.ts +34 -0
- package/src/generated/object-flags.ts +95 -0
- package/src/generated/object-modifiers.ts +43 -0
- package/src/generated/options.ts +104 -0
- package/src/generated/origins.ts +64 -0
- package/src/generated/parser-errors.ts +140 -0
- package/src/generated/player-flags.ts +48 -0
- package/src/generated/player-timed.ts +118 -0
- package/src/generated/projections.ts +103 -0
- package/src/generated/randart-properties.ts +202 -0
- package/src/generated/room-flags.ts +21 -0
- package/src/generated/rooms.ts +50 -0
- package/src/generated/square-flags.ts +56 -0
- package/src/generated/stats.ts +22 -0
- package/src/generated/terrain-flags.ts +76 -0
- package/src/generated/terrain.ts +62 -0
- package/src/generated/trap-flags.ts +42 -0
- package/src/generated/tvals.ts +84 -0
- package/src/generated/ui-entry-renderers.ts +24 -0
- package/src/guard.ts +70 -0
- package/src/host/args.ts +334 -0
- package/src/host/bridge.ts +193 -0
- package/src/host/index.ts +18 -0
- package/src/host/io.ts +239 -0
- package/src/host/memory.ts +134 -0
- package/src/host/raw.ts +190 -0
- package/src/index.ts +250 -0
- package/src/loc.ts +157 -0
- package/src/mod/hooks.ts +278 -0
- package/src/mod/ids.ts +390 -0
- package/src/mod/registry-host.ts +258 -0
- package/src/mod/save-blocks.ts +787 -0
- package/src/mod/vocabulary.ts +0 -0
- package/src/mon/bind.ts +899 -0
- package/src/mon/desc.ts +212 -0
- package/src/mon/knowledge-groups.ts +164 -0
- package/src/mon/lore-describe.ts +1414 -0
- package/src/mon/lore.ts +306 -0
- package/src/mon/make.ts +422 -0
- package/src/mon/monster.ts +161 -0
- package/src/mon/predicate.ts +220 -0
- package/src/mon/project-mon.ts +855 -0
- package/src/mon/spell.ts +418 -0
- package/src/mon/steal.ts +246 -0
- package/src/mon/summon.ts +145 -0
- package/src/mon/take-hit.ts +195 -0
- package/src/mon/timed.ts +300 -0
- package/src/mon/types.ts +286 -0
- package/src/msg.ts +146 -0
- package/src/obj/artifact-fake.ts +63 -0
- package/src/obj/artifact-known.ts +69 -0
- package/src/obj/bind.ts +1345 -0
- package/src/obj/chest.ts +249 -0
- package/src/obj/desc.ts +699 -0
- package/src/obj/effects-info.ts +349 -0
- package/src/obj/flavor.ts +256 -0
- package/src/obj/ignore.ts +387 -0
- package/src/obj/knowledge.ts +1577 -0
- package/src/obj/known-object.ts +718 -0
- package/src/obj/make.ts +1367 -0
- package/src/obj/object-info.ts +1737 -0
- package/src/obj/object.ts +1296 -0
- package/src/obj/power.ts +674 -0
- package/src/obj/randart-build.ts +1705 -0
- package/src/obj/randart-data.ts +1344 -0
- package/src/obj/randart.ts +552 -0
- package/src/obj/randname.ts +128 -0
- package/src/obj/recharge.ts +62 -0
- package/src/obj/types.ts +559 -0
- package/src/obj/value.ts +215 -0
- package/src/player/abilities.ts +142 -0
- package/src/player/best-digger.ts +118 -0
- package/src/player/bind.ts +1021 -0
- package/src/player/birth.ts +794 -0
- package/src/player/calcs.ts +1522 -0
- package/src/player/combat-regen.ts +33 -0
- package/src/player/exp.ts +275 -0
- package/src/player/history.ts +211 -0
- package/src/player/options.ts +244 -0
- package/src/player/player.ts +356 -0
- package/src/player/shape-lore.ts +250 -0
- package/src/player/spell.ts +627 -0
- package/src/player/take-hit.ts +173 -0
- package/src/player/timed.ts +482 -0
- package/src/player/types.ts +415 -0
- package/src/rational.ts +388 -0
- package/src/rng.ts +476 -0
- package/src/save/buffer.ts +287 -0
- package/src/save/compress.ts +132 -0
- package/src/save/description.ts +70 -0
- package/src/save/integrity.ts +133 -0
- package/src/score/display.ts +125 -0
- package/src/score/score.ts +341 -0
- package/src/score/types.ts +104 -0
- package/src/session/boot.ts +338 -0
- package/src/session/game.ts +3712 -0
- package/src/session/save.ts +2074 -0
- package/src/sound/engine.ts +375 -0
- package/src/sound/index.ts +13 -0
- package/src/sound/sound-prefs-data.ts +173 -0
- package/src/sound/types.ts +68 -0
- package/src/store/bind.ts +145 -0
- package/src/store/price.ts +97 -0
- package/src/store/store-cmd.ts +73 -0
- package/src/store/store.ts +723 -0
- package/src/store/transact.ts +644 -0
- package/src/store/types.ts +110 -0
- package/src/version.ts +26 -0
- package/src/visuals/engine.ts +444 -0
- package/src/visuals/glyph-table.ts +191 -0
- package/src/visuals/grafmode-data.ts +90 -0
- package/src/visuals/grafmode.ts +123 -0
- package/src/visuals/index.ts +19 -0
- package/src/visuals/map-text.ts +152 -0
- package/src/visuals/pref-expr.ts +182 -0
- package/src/visuals/prefs.ts +981 -0
- package/src/visuals/tile-prefs.ts +183 -0
- package/src/world/chunk.ts +531 -0
- package/src/world/feature.ts +215 -0
- package/src/world/flow.ts +128 -0
- package/src/world/project.ts +687 -0
- package/src/world/projection.ts +228 -0
- package/src/world/scatter.ts +72 -0
- package/src/world/trap.ts +155 -0
- package/src/world/view.ts +513 -0
- package/src/z-queue.ts +300 -0
|
@@ -0,0 +1,191 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The runtime attr/char override tables, ported from reference/src/ui-prefs.c
|
|
3
|
+
* (Angband 4.2.6): the `monster_x_attr` / `monster_x_char` /
|
|
4
|
+
* `kind_x_attr` / `kind_x_char` / `feat_x_attr[LIGHTING_MAX]` /
|
|
5
|
+
* `feat_x_char[LIGHTING_MAX]` / `trap_x_attr[LIGHTING_MAX]` /
|
|
6
|
+
* `trap_x_char[LIGHTING_MAX]` / `flavor_x_attr` / `flavor_x_char` globals
|
|
7
|
+
* (ui-prefs.c L46-56), their allocation (textui_prefs_init, L1427-1452) and
|
|
8
|
+
* their (re)initialisation from gamedata (reset_visuals, L1352-1421).
|
|
9
|
+
*
|
|
10
|
+
* WHY THIS IS A SEPARATE LAYER FROM THE GAMEDATA. Upstream never draws a
|
|
11
|
+
* monster with `race->d_attr`: every draw goes through the x_attr/x_char
|
|
12
|
+
* table, which merely STARTS at the gamedata default. Three things write to it
|
|
13
|
+
* after that - a pref file (`process_pref_file`'s parse_prefs_monster and
|
|
14
|
+
* friends, L602-928), the knowledge browser's glyph picker (`glyph_command`,
|
|
15
|
+
* ui-knowledge.c L597-752), and the graphics pref of the active tile mode -
|
|
16
|
+
* and four things read it back out (the map, the knowledge screens, the
|
|
17
|
+
* monster-list sidebar, and the `dump_*` pref writers). A port that reads
|
|
18
|
+
* `race.dAttr` at the draw site cannot express any of that, which is why the
|
|
19
|
+
* glyph picker and the four "Save ... attr/chars" rows were both absent.
|
|
20
|
+
*
|
|
21
|
+
* RELATIONSHIP TO TileMap (tile-prefs.ts). Upstream keeps ONE set of arrays
|
|
22
|
+
* and lets a graf-*.prf write high-bit values into them, so in graphics mode
|
|
23
|
+
* the very same slot holds an atlas (row, col) instead of an (attr, glyph).
|
|
24
|
+
* This port splits the two: TileMap holds the graphics mapping, this table
|
|
25
|
+
* holds the ASCII one. That is behaviourally equivalent because upstream only
|
|
26
|
+
* ever has one of the two interpretations live at a time (`use_graphics`
|
|
27
|
+
* gates it, and display_knowledge picks the tile picker or the glyph picker on
|
|
28
|
+
* the same flag, ui-knowledge.c L1052-1070) - but it means the glyph picker
|
|
29
|
+
* edits this table and the tile picker edits the TileMap, rather than both
|
|
30
|
+
* editing one array.
|
|
31
|
+
*
|
|
32
|
+
* ATTR NORMALISATION. Upstream's `d_attr` is already a uint8_t COLOUR_* code
|
|
33
|
+
* for every entity type. The port's compiled gamedata keeps the source text's
|
|
34
|
+
* spelling instead: a colour CHAR for features / kinds / traps (`"w"`), a
|
|
35
|
+
* colour NAME for flavours (`"Light Green"`), and an already-numeric attr for
|
|
36
|
+
* monster races. resetVisuals normalises all four to the numeric attr, so from
|
|
37
|
+
* here on the table is uniform exactly as the C's arrays are.
|
|
38
|
+
*
|
|
39
|
+
* Determinism: no RNG anywhere in this module.
|
|
40
|
+
*/
|
|
41
|
+
|
|
42
|
+
import { colorCharToAttr, colorTextToAttr } from "../color.js";
|
|
43
|
+
import type { Flavor, ObjectKind } from "../obj/types.js";
|
|
44
|
+
import type { MonsterRace } from "../mon/types.js";
|
|
45
|
+
import type { Feature } from "../world/feature.js";
|
|
46
|
+
import type { TrapKind } from "../world/trap.js";
|
|
47
|
+
import { LIGHTING } from "./tile-prefs.js";
|
|
48
|
+
|
|
49
|
+
/** One (attr, char) pair - upstream's parallel uint8_t/wchar_t slot pair. */
|
|
50
|
+
export interface GlyphPair {
|
|
51
|
+
attr: number;
|
|
52
|
+
char: string;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
/** The gamedata reset_visuals reads its defaults out of. */
|
|
56
|
+
export interface GlyphTableDeps {
|
|
57
|
+
/** f_info, indexed by fidx (FEAT_MAX slots upstream). */
|
|
58
|
+
features: readonly Feature[];
|
|
59
|
+
/** k_info in kidx order. */
|
|
60
|
+
kinds: readonly ObjectKind[];
|
|
61
|
+
/** r_info in ridx order. */
|
|
62
|
+
races: readonly MonsterRace[];
|
|
63
|
+
/** trap_info in tidx order; null when the pack binds no traps. */
|
|
64
|
+
traps: readonly TrapKind[] | null;
|
|
65
|
+
/** The flavor list (upstream walks the `flavors` linked list by fidx). */
|
|
66
|
+
flavors: readonly Flavor[];
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
/**
|
|
70
|
+
* The x_attr/x_char arrays as one object. Sparse-safe: a read for an index the
|
|
71
|
+
* gamedata never bound falls back to the caller's default rather than
|
|
72
|
+
* throwing, because upstream's arrays are FEAT_MAX / r_max / k_max long and
|
|
73
|
+
* simply hold the zeroed slot for an unbound entry.
|
|
74
|
+
*/
|
|
75
|
+
export class GlyphTable {
|
|
76
|
+
/** monster_x_attr / monster_x_char[ridx]. */
|
|
77
|
+
private readonly monster: GlyphPair[] = [];
|
|
78
|
+
/** kind_x_attr / kind_x_char[kidx]. */
|
|
79
|
+
private readonly kind: GlyphPair[] = [];
|
|
80
|
+
/** feat_x_attr / feat_x_char[lighting][fidx]. */
|
|
81
|
+
private readonly feat: GlyphPair[][] = [[], [], [], []];
|
|
82
|
+
/** trap_x_attr / trap_x_char[lighting][tidx]. */
|
|
83
|
+
private readonly trap: GlyphPair[][] = [[], [], [], []];
|
|
84
|
+
/** flavor_x_attr / flavor_x_char[fidx]. */
|
|
85
|
+
private readonly flavor: GlyphPair[] = [];
|
|
86
|
+
|
|
87
|
+
constructor(private readonly deps: GlyphTableDeps) {
|
|
88
|
+
this.reset();
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
/**
|
|
92
|
+
* reset_visuals(false) (ui-prefs.c L1352): re-extract every default
|
|
93
|
+
* attr/char from the gamedata, discarding any pref-file or picker override.
|
|
94
|
+
* The `load_prefs` half of the C's signature is the caller's job here (the
|
|
95
|
+
* front end re-runs its own pref load, exactly as reset_visuals(true) then
|
|
96
|
+
* calls process_pref_file("font.prf") or the tile mode's graphics pref).
|
|
97
|
+
*
|
|
98
|
+
* WART KEPT: upstream resets flavours from the CURRENT flavor list, which is
|
|
99
|
+
* the shuffled per-game one, not a canonical order - so a reset restores the
|
|
100
|
+
* glyphs this savefile was born with, not the file order.
|
|
101
|
+
*/
|
|
102
|
+
reset(): void {
|
|
103
|
+
for (const f of this.deps.features) {
|
|
104
|
+
const pair = { attr: colorCharToAttr(f.dAttr), char: f.dChar };
|
|
105
|
+
for (let j = 0; j < LIGHTING.MAX; j++) {
|
|
106
|
+
this.feat[j]![f.fidx] = { ...pair };
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
for (const k of this.deps.kinds) {
|
|
110
|
+
this.kind[k.kidx] = { attr: colorCharToAttr(k.dAttr), char: k.dChar };
|
|
111
|
+
}
|
|
112
|
+
for (const r of this.deps.races) {
|
|
113
|
+
this.monster[r.ridx] = { attr: r.dAttr, char: r.dChar };
|
|
114
|
+
}
|
|
115
|
+
for (const t of this.deps.traps ?? []) {
|
|
116
|
+
const pair = { attr: colorCharToAttr(t.color), char: t.glyph };
|
|
117
|
+
for (let j = 0; j < LIGHTING.MAX; j++) {
|
|
118
|
+
this.trap[j]![t.tidx] = { ...pair };
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
for (const f of this.deps.flavors) {
|
|
122
|
+
this.flavor[f.fidx] = { attr: colorTextToAttr(f.dAttr), char: f.dChar };
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
|
|
126
|
+
/* ----- reads (the draw sites and the dump writers) ----- */
|
|
127
|
+
|
|
128
|
+
monsterGlyph(ridx: number): GlyphPair | undefined {
|
|
129
|
+
return this.monster[ridx];
|
|
130
|
+
}
|
|
131
|
+
|
|
132
|
+
kindGlyph(kidx: number): GlyphPair | undefined {
|
|
133
|
+
return this.kind[kidx];
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
featGlyph(lighting: number, fidx: number): GlyphPair | undefined {
|
|
137
|
+
return this.feat[lighting]?.[fidx];
|
|
138
|
+
}
|
|
139
|
+
|
|
140
|
+
trapGlyph(lighting: number, tidx: number): GlyphPair | undefined {
|
|
141
|
+
return this.trap[lighting]?.[tidx];
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
flavorGlyph(fidx: number): GlyphPair | undefined {
|
|
145
|
+
return this.flavor[fidx];
|
|
146
|
+
}
|
|
147
|
+
|
|
148
|
+
/* ----- writes (the pref parser and the glyph picker) ----- */
|
|
149
|
+
|
|
150
|
+
setMonsterGlyph(ridx: number, pair: GlyphPair): void {
|
|
151
|
+
this.monster[ridx] = { ...pair };
|
|
152
|
+
}
|
|
153
|
+
|
|
154
|
+
setKindGlyph(kidx: number, pair: GlyphPair): void {
|
|
155
|
+
this.kind[kidx] = { ...pair };
|
|
156
|
+
}
|
|
157
|
+
|
|
158
|
+
/**
|
|
159
|
+
* parse_prefs_feat (ui-prefs.c L798-849): a `*` lighting field writes every
|
|
160
|
+
* variant, which is why this takes LIGHTING.MAX as "all".
|
|
161
|
+
*/
|
|
162
|
+
setFeatGlyph(lighting: number, fidx: number, pair: GlyphPair): void {
|
|
163
|
+
if (lighting === LIGHTING.MAX) {
|
|
164
|
+
for (let j = 0; j < LIGHTING.MAX; j++) this.feat[j]![fidx] = { ...pair };
|
|
165
|
+
return;
|
|
166
|
+
}
|
|
167
|
+
const row = this.feat[lighting];
|
|
168
|
+
if (row) row[fidx] = { ...pair };
|
|
169
|
+
}
|
|
170
|
+
|
|
171
|
+
/** set_trap_graphic (ui-prefs.c L733-743), with the same `*` convention. */
|
|
172
|
+
setTrapGlyph(lighting: number, tidx: number, pair: GlyphPair): void {
|
|
173
|
+
if (lighting === LIGHTING.MAX) {
|
|
174
|
+
for (let j = 0; j < LIGHTING.MAX; j++) this.trap[j]![tidx] = { ...pair };
|
|
175
|
+
return;
|
|
176
|
+
}
|
|
177
|
+
const row = this.trap[lighting];
|
|
178
|
+
if (row) row[tidx] = { ...pair };
|
|
179
|
+
}
|
|
180
|
+
|
|
181
|
+
setFlavorGlyph(fidx: number, pair: GlyphPair): void {
|
|
182
|
+
this.flavor[fidx] = { ...pair };
|
|
183
|
+
}
|
|
184
|
+
|
|
185
|
+
/* ----- enumeration (the dump_* writers walk the whole table) ----- */
|
|
186
|
+
|
|
187
|
+
/** The gamedata this table was built from, for the dump writers' names. */
|
|
188
|
+
get gamedata(): GlyphTableDeps {
|
|
189
|
+
return this.deps;
|
|
190
|
+
}
|
|
191
|
+
}
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
// Generated from reference/lib/tiles/list.txt by
|
|
2
|
+
// scripts/gen-grafmode.mjs. Do not edit.
|
|
3
|
+
//
|
|
4
|
+
// The graphics-mode catalog METADATA (functional data) from Angband's tile
|
|
5
|
+
// list. Faithful to grafmode.c's parse of name/directory/size/pref/extra.
|
|
6
|
+
//
|
|
7
|
+
// This file is METADATA ONLY - no tile images. The art for all five packs ships
|
|
8
|
+
// with the web build at packages/web/public/tiles/, and each pack's terms differ
|
|
9
|
+
// (see that directory's CREDITS.md). A front end builds file paths from
|
|
10
|
+
// `directory`/`file`, and can be pointed at a pack of the player's own with
|
|
11
|
+
// `?tiles=<base-url>`. ASCII is the default and the game runs fully with no tile
|
|
12
|
+
// pack present.
|
|
13
|
+
|
|
14
|
+
import type { GraphicsMode } from "./grafmode.js";
|
|
15
|
+
|
|
16
|
+
/** Every parsed graphics mode from list.txt, in file order (grafID 1..N). */
|
|
17
|
+
export const GRAPHICS_MODE_CATALOG: readonly GraphicsMode[] = [
|
|
18
|
+
{
|
|
19
|
+
grafID: 1,
|
|
20
|
+
menuname: "Original Tiles",
|
|
21
|
+
directory: "old",
|
|
22
|
+
cellWidth: 8,
|
|
23
|
+
cellHeight: 8,
|
|
24
|
+
file: "8x8.png",
|
|
25
|
+
pref: "graf-xxx.prf",
|
|
26
|
+
alphablend: 0,
|
|
27
|
+
overdrawRow: 0,
|
|
28
|
+
overdrawMax: 0,
|
|
29
|
+
},
|
|
30
|
+
{
|
|
31
|
+
grafID: 2,
|
|
32
|
+
menuname: "Adam Bolt's tiles",
|
|
33
|
+
directory: "adam-bolt",
|
|
34
|
+
cellWidth: 16,
|
|
35
|
+
cellHeight: 16,
|
|
36
|
+
file: "16x16.png",
|
|
37
|
+
pref: "graf-new.prf",
|
|
38
|
+
alphablend: 0,
|
|
39
|
+
overdrawRow: 0,
|
|
40
|
+
overdrawMax: 0,
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
grafID: 3,
|
|
44
|
+
menuname: "David Gervais' tiles",
|
|
45
|
+
directory: "gervais",
|
|
46
|
+
cellWidth: 32,
|
|
47
|
+
cellHeight: 32,
|
|
48
|
+
file: "32x32.png",
|
|
49
|
+
pref: "graf-dvg.prf",
|
|
50
|
+
alphablend: 0,
|
|
51
|
+
overdrawRow: 0,
|
|
52
|
+
overdrawMax: 0,
|
|
53
|
+
},
|
|
54
|
+
{
|
|
55
|
+
grafID: 4,
|
|
56
|
+
menuname: "Nomad's tiles",
|
|
57
|
+
directory: "nomad",
|
|
58
|
+
cellWidth: 16,
|
|
59
|
+
cellHeight: 16,
|
|
60
|
+
file: "8x16.png",
|
|
61
|
+
pref: "graf-nmd.prf",
|
|
62
|
+
alphablend: 0,
|
|
63
|
+
overdrawRow: 0,
|
|
64
|
+
overdrawMax: 0,
|
|
65
|
+
},
|
|
66
|
+
{
|
|
67
|
+
grafID: 5,
|
|
68
|
+
menuname: "Shockbolt Dark",
|
|
69
|
+
directory: "shockbolt",
|
|
70
|
+
cellWidth: 64,
|
|
71
|
+
cellHeight: 64,
|
|
72
|
+
file: "64x64.png",
|
|
73
|
+
pref: "graf-shb-dark.prf",
|
|
74
|
+
alphablend: 1,
|
|
75
|
+
overdrawRow: 27,
|
|
76
|
+
overdrawMax: 31,
|
|
77
|
+
},
|
|
78
|
+
{
|
|
79
|
+
grafID: 6,
|
|
80
|
+
menuname: "Shockbolt Light",
|
|
81
|
+
directory: "shockbolt",
|
|
82
|
+
cellWidth: 64,
|
|
83
|
+
cellHeight: 64,
|
|
84
|
+
file: "64x64.png",
|
|
85
|
+
pref: "graf-shb-light.prf",
|
|
86
|
+
alphablend: 1,
|
|
87
|
+
overdrawRow: 27,
|
|
88
|
+
overdrawMax: 31,
|
|
89
|
+
},
|
|
90
|
+
];
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Graphics-mode catalog + lookup, ported from reference/src/grafmode.c
|
|
3
|
+
* (Angband 4.2.6).
|
|
4
|
+
*
|
|
5
|
+
* The catalog is metadata only (mode id, menu name, tile dimensions,
|
|
6
|
+
* directory + image/pref filenames, double-height rows) parsed from
|
|
7
|
+
* lib/tiles/list.txt. NO tile IMAGE assets are bundled - the art packs carry
|
|
8
|
+
* their own (partly non-commercial) licenses, so a user supplies a tile pack
|
|
9
|
+
* at runtime and the web renderer builds URLs from this metadata. ASCII stays
|
|
10
|
+
* the default and the game runs fully with no tile pack present.
|
|
11
|
+
*
|
|
12
|
+
* Ported here:
|
|
13
|
+
* - struct graphics_mode -> GraphicsMode.
|
|
14
|
+
* - GRAPHICS_NONE (grafmode.h) + the hardcoded "None" fallback entry the C
|
|
15
|
+
* appends in finish_parse_grafmode (L137-146).
|
|
16
|
+
* - get_graphics_mode (L223): find a mode by grafID.
|
|
17
|
+
* - graphics_mode_high_id (L148): the highest catalog grafID.
|
|
18
|
+
* - is_dh_tile (L241): double-height tile test.
|
|
19
|
+
*
|
|
20
|
+
* The list.txt parse itself is done ahead of time by
|
|
21
|
+
* scripts/gen-grafmode.mjs, which emits grafmode-data.ts.
|
|
22
|
+
*/
|
|
23
|
+
|
|
24
|
+
import { GRAPHICS_MODE_CATALOG } from "./grafmode-data.js";
|
|
25
|
+
|
|
26
|
+
export { GRAPHICS_MODE_CATALOG } from "./grafmode-data.js";
|
|
27
|
+
|
|
28
|
+
/** grafmode.h GRAPHICS_NONE: the ASCII (no-tiles) mode id. */
|
|
29
|
+
export const GRAPHICS_NONE = 0;
|
|
30
|
+
|
|
31
|
+
/**
|
|
32
|
+
* struct graphics_mode (grafmode.h). The C stores a fully-built absolute
|
|
33
|
+
* `path` under ANGBAND_DIR_TILES; here we keep the raw `directory` name and
|
|
34
|
+
* leave path/URL construction to the platform (no bundled assets).
|
|
35
|
+
*/
|
|
36
|
+
export interface GraphicsMode {
|
|
37
|
+
/** grafID: the serial number / mode id (uint on the `name` line). */
|
|
38
|
+
grafID: number;
|
|
39
|
+
/** menuname: the display name (the `name` line's str field). */
|
|
40
|
+
menuname: string;
|
|
41
|
+
/** The tile directory name (the `directory` line), e.g. "old". */
|
|
42
|
+
directory: string;
|
|
43
|
+
/** cell_width: tile width in pixels (the `size` line). */
|
|
44
|
+
cellWidth: number;
|
|
45
|
+
/** cell_height: tile height in pixels (the `size` line). */
|
|
46
|
+
cellHeight: number;
|
|
47
|
+
/** file: the tileset image filename (the `size` line's str field). */
|
|
48
|
+
file: string;
|
|
49
|
+
/** pref: the pref file name (the `pref` line), or "none". */
|
|
50
|
+
pref: string;
|
|
51
|
+
/** alphablend: whether the tileset needs alpha blending (the `extra` line). */
|
|
52
|
+
alphablend: number;
|
|
53
|
+
/** overdrawRow: first double-height tile row (the `extra` line). */
|
|
54
|
+
overdrawRow: number;
|
|
55
|
+
/** overdrawMax: last double-height tile row (the `extra` line). */
|
|
56
|
+
overdrawMax: number;
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
/**
|
|
60
|
+
* The hardcoded no-graphics fallback (grafmode.c L137-146). Appended after the
|
|
61
|
+
* parsed catalog and used as the initial current_graphics_mode.
|
|
62
|
+
*/
|
|
63
|
+
export const GRAPHICS_MODE_NONE: GraphicsMode = {
|
|
64
|
+
grafID: GRAPHICS_NONE,
|
|
65
|
+
menuname: "None",
|
|
66
|
+
directory: "",
|
|
67
|
+
cellWidth: 0,
|
|
68
|
+
cellHeight: 0,
|
|
69
|
+
file: "",
|
|
70
|
+
pref: "none",
|
|
71
|
+
alphablend: 0,
|
|
72
|
+
overdrawRow: 0,
|
|
73
|
+
overdrawMax: 0,
|
|
74
|
+
};
|
|
75
|
+
|
|
76
|
+
/**
|
|
77
|
+
* The full graphics-mode list: the parsed catalog plus the "None" entry at the
|
|
78
|
+
* end, exactly as finish_parse_grafmode builds graphics_modes[] (parsed modes
|
|
79
|
+
* followed by the hardcoded None fallback).
|
|
80
|
+
*/
|
|
81
|
+
export const GRAPHICS_MODES: readonly GraphicsMode[] = [
|
|
82
|
+
...GRAPHICS_MODE_CATALOG,
|
|
83
|
+
GRAPHICS_MODE_NONE,
|
|
84
|
+
];
|
|
85
|
+
|
|
86
|
+
/**
|
|
87
|
+
* graphics_mode_high_id (grafmode.c L148): the highest grafID among the
|
|
88
|
+
* parsed modes (the None entry is excluded, matching the C's `max` scan which
|
|
89
|
+
* runs before None is appended).
|
|
90
|
+
*/
|
|
91
|
+
export const GRAPHICS_MODE_HIGH_ID: number = GRAPHICS_MODE_CATALOG.reduce(
|
|
92
|
+
(max, m) => (m.grafID > max ? m.grafID : max),
|
|
93
|
+
0,
|
|
94
|
+
);
|
|
95
|
+
|
|
96
|
+
/**
|
|
97
|
+
* get_graphics_mode (grafmode.c L223): the mode with the given id, or
|
|
98
|
+
* undefined (the C returns NULL) if none matches. GRAPHICS_NONE resolves to
|
|
99
|
+
* the None fallback entry.
|
|
100
|
+
*/
|
|
101
|
+
export function getGraphicsMode(id: number): GraphicsMode | undefined {
|
|
102
|
+
for (const mode of GRAPHICS_MODES) {
|
|
103
|
+
if (mode.grafID === id) return mode;
|
|
104
|
+
}
|
|
105
|
+
return undefined;
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
/**
|
|
109
|
+
* is_dh_tile (grafmode.c L241): whether an attr/char pair is a double-height
|
|
110
|
+
* tile under the given mode. True only for a tile attr (high bit set) whose
|
|
111
|
+
* tileset row falls in the mode's double-height band. `current` may be
|
|
112
|
+
* undefined (no mode selected), matching the C's !current_graphics_mode guard.
|
|
113
|
+
*/
|
|
114
|
+
export function isDoubleHeightTile(
|
|
115
|
+
current: GraphicsMode | undefined,
|
|
116
|
+
attr: number,
|
|
117
|
+
): boolean {
|
|
118
|
+
if ((attr & 0x80) === 0 || !current || !current.overdrawRow) return false;
|
|
119
|
+
const tilesetRow = attr & 0x7f;
|
|
120
|
+
return (
|
|
121
|
+
tilesetRow >= current.overdrawRow && tilesetRow <= current.overdrawMax
|
|
122
|
+
);
|
|
123
|
+
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The visuals subsystem: a platform-agnostic color-cycle + legacy flicker
|
|
3
|
+
* animation engine (engine.ts) and the graphics-mode catalog (grafmode.ts),
|
|
4
|
+
* ported from reference/src/ui-visuals.c and reference/src/grafmode.c
|
|
5
|
+
* (Angband 4.2.6).
|
|
6
|
+
*
|
|
7
|
+
* A front end owns the frame timer and the glyph/tile draw; the core returns
|
|
8
|
+
* the COLOUR_* attr to draw for a given animation frame. The tile IMAGE assets
|
|
9
|
+
* for all six graphics modes ship with the web build (packages/web/public/tiles);
|
|
10
|
+
* ASCII stays the default.
|
|
11
|
+
*/
|
|
12
|
+
|
|
13
|
+
export * from "./engine.js";
|
|
14
|
+
export * from "./glyph-table.js";
|
|
15
|
+
export * from "./grafmode.js";
|
|
16
|
+
export * from "./map-text.js";
|
|
17
|
+
export * from "./pref-expr.js";
|
|
18
|
+
export * from "./prefs.js";
|
|
19
|
+
export * from "./tile-prefs.js";
|
|
@@ -0,0 +1,152 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The monster and player arms of grid_data_as_text, ported from
|
|
3
|
+
* reference/src/ui-map.c L232-331 (Angband 4.2.6).
|
|
4
|
+
*
|
|
5
|
+
* SCOPE. Upstream resolves a whole map cell in one function: terrain from
|
|
6
|
+
* feat_x_attr, then trap, then object, then monster-or-player, all layered onto
|
|
7
|
+
* one (attr, char) pair. The port's web shell layers those four in its own
|
|
8
|
+
* render loop (main.ts render(), one index map per layer), so what needs to
|
|
9
|
+
* live in core is the part that is not simple "last writer wins": the monster
|
|
10
|
+
* branch, whose seven arms READ the glyph already under the monster, and the
|
|
11
|
+
* player branch, which takes its colour from the x_attr table's race-0 slot.
|
|
12
|
+
* Everything here is pure, so both are directly testable.
|
|
13
|
+
*
|
|
14
|
+
* What upstream does that the port's layered loop still cannot express is
|
|
15
|
+
* recorded in parity/CENSUS_PUNCHLIST.md (block O: map_info has no port, so
|
|
16
|
+
* hallucination glyphs, the multi-object pile kind and the unknown-item/gold
|
|
17
|
+
* kinds are absent) - it is measured there rather than excused here.
|
|
18
|
+
*
|
|
19
|
+
* Determinism: no RNG. ATTR_RAND's per-monster colour is rolled once at birth
|
|
20
|
+
* (mon-make.c place_new_monster_one), and the flicker/multi frame colour is the
|
|
21
|
+
* caller's animator; this module only selects between values it is handed.
|
|
22
|
+
*/
|
|
23
|
+
|
|
24
|
+
import { COLOUR_L_RED, COLOUR_ORANGE, COLOUR_RED, COLOUR_VIOLET, COLOUR_WHITE, COLOUR_YELLOW } from "../color.js";
|
|
25
|
+
import type { GlyphPair } from "./glyph-table.js";
|
|
26
|
+
|
|
27
|
+
/**
|
|
28
|
+
* The high bit upstream reserves for "this slot holds a graphics tile code,
|
|
29
|
+
* not a colour attr" (ui-map.c L246 `da & 0x80`, L275 `a & 0x80`). The port
|
|
30
|
+
* keeps tile codes in a separate TileMap (see glyph-table.ts), so in practice
|
|
31
|
+
* this is only set when a pref file wrote a high-bit attr into the ASCII
|
|
32
|
+
* table; the branches are ported anyway so that case behaves as upstream.
|
|
33
|
+
*/
|
|
34
|
+
const ATTR_TILE_BIT = 0x80;
|
|
35
|
+
|
|
36
|
+
/** The inputs grid_data_as_text's monster branch reads. */
|
|
37
|
+
export interface MonsterGlyphInput {
|
|
38
|
+
/** The (attr, char) already resolved for this grid: terrain, then trap/object. */
|
|
39
|
+
under: GlyphPair;
|
|
40
|
+
/** monster_x_attr[race->ridx] / monster_x_char[race->ridx]. */
|
|
41
|
+
desired: GlyphPair;
|
|
42
|
+
/**
|
|
43
|
+
* mon->attr: the animated colour do_animation last wrote for an
|
|
44
|
+
* ATTR_MULTI/ATTR_FLICKER monster, or the colour ATTR_RAND rolled at birth.
|
|
45
|
+
* 0 means "none set", which upstream falls back from to `da` (L259).
|
|
46
|
+
*/
|
|
47
|
+
monAttr: number;
|
|
48
|
+
attrMulti: boolean;
|
|
49
|
+
attrFlicker: boolean;
|
|
50
|
+
attrRand: boolean;
|
|
51
|
+
attrClear: boolean;
|
|
52
|
+
charClear: boolean;
|
|
53
|
+
/** OPT(player, purple_uniques). */
|
|
54
|
+
purpleUniques: boolean;
|
|
55
|
+
/** monster_is_shape_unique(mon) (mon-predicate.c L100). */
|
|
56
|
+
shapeUnique: boolean;
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
/**
|
|
60
|
+
* grid_data_as_text's `g->m_idx > 0` branch (ui-map.c L232-289), in upstream's
|
|
61
|
+
* exact arm order. The returned attr is also what upstream stores back into
|
|
62
|
+
* `mon->attr` (L288), which the monster-list sidebar then reads.
|
|
63
|
+
*
|
|
64
|
+
* The arms, in order:
|
|
65
|
+
* 1. `da & 0x80` - a special (tile) code in the slot wins outright.
|
|
66
|
+
* 2. purple_uniques on a currently-unique monster: violet, monster's char.
|
|
67
|
+
* 3. ATTR_MULTI / ATTR_FLICKER / ATTR_RAND: `mon->attr` if set, else `da`.
|
|
68
|
+
* 4. Neither ATTR_CLEAR nor CHAR_CLEAR: an ordinary monster, both overridden.
|
|
69
|
+
* 5. `a & 0x80` - a bizarre (tile) grid under the monster: both overridden.
|
|
70
|
+
* 6. not CHAR_CLEAR: keep the grid's attr, take the monster's char.
|
|
71
|
+
* 7. not ATTR_CLEAR: take the monster's attr, keep the grid's char.
|
|
72
|
+
*
|
|
73
|
+
* Arms 6 and 7 are why an ATTR_CLEAR monster shows in the colour of whatever
|
|
74
|
+
* it is standing on, and a CHAR_CLEAR monster is invisible except for its
|
|
75
|
+
* colour tinting the terrain glyph.
|
|
76
|
+
*/
|
|
77
|
+
export function monsterGlyph(input: MonsterGlyphInput): GlyphPair {
|
|
78
|
+
const { under, desired } = input;
|
|
79
|
+
|
|
80
|
+
if (desired.attr & ATTR_TILE_BIT) {
|
|
81
|
+
return { attr: desired.attr, char: desired.char };
|
|
82
|
+
}
|
|
83
|
+
if (input.purpleUniques && input.shapeUnique) {
|
|
84
|
+
return { attr: COLOUR_VIOLET, char: desired.char };
|
|
85
|
+
}
|
|
86
|
+
if (input.attrMulti || input.attrFlicker || input.attrRand) {
|
|
87
|
+
return { attr: input.monAttr ? input.monAttr : desired.attr, char: desired.char };
|
|
88
|
+
}
|
|
89
|
+
if (!input.attrClear && !input.charClear) {
|
|
90
|
+
return { attr: desired.attr, char: desired.char };
|
|
91
|
+
}
|
|
92
|
+
if (under.attr & ATTR_TILE_BIT) {
|
|
93
|
+
return { attr: desired.attr, char: desired.char };
|
|
94
|
+
}
|
|
95
|
+
if (!input.charClear) {
|
|
96
|
+
return { attr: under.attr, char: desired.char };
|
|
97
|
+
}
|
|
98
|
+
if (!input.attrClear) {
|
|
99
|
+
return { attr: desired.attr, char: under.char };
|
|
100
|
+
}
|
|
101
|
+
/* Both flags set: upstream falls out of the if-chain leaving the grid's own
|
|
102
|
+
* attr and char untouched - a monster you cannot see at all. */
|
|
103
|
+
return { attr: under.attr, char: under.char };
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
/**
|
|
107
|
+
* grid_data_as_text's `g->is_player` branch (ui-map.c L289-331). The player's
|
|
108
|
+
* glyph is r_info[0] ("<player>" in monster.txt) read through the SAME x_attr
|
|
109
|
+
* table as every monster, so a pref file or the glyph picker can re-map the
|
|
110
|
+
* '@'. hp_changes_color recolours by HP decile, but only when the slot does
|
|
111
|
+
* not hold a tile code (L292 `!(a & 0x80)`).
|
|
112
|
+
*/
|
|
113
|
+
export function playerGlyph(
|
|
114
|
+
/** monster_x_attr[0] / monster_x_char[0]. */
|
|
115
|
+
desired: GlyphPair,
|
|
116
|
+
opts: { hpChangesColor: boolean; chp: number; mhp: number },
|
|
117
|
+
): GlyphPair {
|
|
118
|
+
let attr = desired.attr;
|
|
119
|
+
if (opts.hpChangesColor && !(attr & ATTR_TILE_BIT)) {
|
|
120
|
+
/* Upstream's `player->chp * 10 / player->mhp` is integer division on
|
|
121
|
+
* possibly-negative chp; Math.trunc reproduces C's truncation. mhp is
|
|
122
|
+
* never 0 in a live game, but a 0 guard keeps this total for tests. */
|
|
123
|
+
const decile = opts.mhp > 0 ? Math.trunc((opts.chp * 10) / opts.mhp) : 10;
|
|
124
|
+
switch (decile) {
|
|
125
|
+
case 10:
|
|
126
|
+
case 9:
|
|
127
|
+
attr = COLOUR_WHITE;
|
|
128
|
+
break;
|
|
129
|
+
case 8:
|
|
130
|
+
case 7:
|
|
131
|
+
attr = COLOUR_YELLOW;
|
|
132
|
+
break;
|
|
133
|
+
case 6:
|
|
134
|
+
case 5:
|
|
135
|
+
attr = COLOUR_ORANGE;
|
|
136
|
+
break;
|
|
137
|
+
case 4:
|
|
138
|
+
case 3:
|
|
139
|
+
attr = COLOUR_L_RED;
|
|
140
|
+
break;
|
|
141
|
+
case 2:
|
|
142
|
+
case 1:
|
|
143
|
+
case 0:
|
|
144
|
+
attr = COLOUR_RED;
|
|
145
|
+
break;
|
|
146
|
+
default:
|
|
147
|
+
attr = COLOUR_WHITE;
|
|
148
|
+
break;
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
return { attr, char: desired.char };
|
|
152
|
+
}
|