@maka/maka-cli 5.82.1 → 5.84.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/bundle/typescript/package.json +2 -2
- package/bundle/typescript/src/commands/game/sideQuest/commands/cast.js +7 -0
- package/bundle/typescript/src/commands/game/sideQuest/commands/cast.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/commands/enter-host.d.ts +53 -0
- package/bundle/typescript/src/commands/game/sideQuest/commands/enter-host.js +135 -0
- package/bundle/typescript/src/commands/game/sideQuest/commands/enter-host.js.map +1 -0
- package/bundle/typescript/src/commands/game/sideQuest/commands/go.d.ts +18 -9
- package/bundle/typescript/src/commands/game/sideQuest/commands/go.js +55 -21
- package/bundle/typescript/src/commands/game/sideQuest/commands/go.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/commands/hack.js +39 -9
- package/bundle/typescript/src/commands/game/sideQuest/commands/hack.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/commands/heal.d.ts +53 -0
- package/bundle/typescript/src/commands/game/sideQuest/commands/heal.js +158 -0
- package/bundle/typescript/src/commands/game/sideQuest/commands/heal.js.map +1 -0
- package/bundle/typescript/src/commands/game/sideQuest/commands/look.d.ts +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/commands/look.js +26 -11
- package/bundle/typescript/src/commands/game/sideQuest/commands/look.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/commands/map.d.ts +4 -5
- package/bundle/typescript/src/commands/game/sideQuest/commands/map.js +14 -11
- package/bundle/typescript/src/commands/game/sideQuest/commands/map.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/commands/mark.js +5 -3
- package/bundle/typescript/src/commands/game/sideQuest/commands/mark.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/commands/search.js +28 -13
- package/bundle/typescript/src/commands/game/sideQuest/commands/search.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/commands/sustain.d.ts +12 -0
- package/bundle/typescript/src/commands/game/sideQuest/commands/sustain.js +52 -2
- package/bundle/typescript/src/commands/game/sideQuest/commands/sustain.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/commands/take.js +85 -18
- package/bundle/typescript/src/commands/game/sideQuest/commands/take.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/commands/tap.d.ts +8 -5
- package/bundle/typescript/src/commands/game/sideQuest/commands/tap.js +8 -8
- package/bundle/typescript/src/commands/game/sideQuest/commands/tap.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/commands/thread.js +69 -16
- package/bundle/typescript/src/commands/game/sideQuest/commands/thread.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/commands/use.d.ts +17 -11
- package/bundle/typescript/src/commands/game/sideQuest/commands/use.js +45 -32
- package/bundle/typescript/src/commands/game/sideQuest/commands/use.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/engine-version.d.ts +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/engine-version.js +23 -1
- package/bundle/typescript/src/commands/game/sideQuest/engine-version.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/factories/scene-chunks.d.ts +34 -1
- package/bundle/typescript/src/commands/game/sideQuest/factories/scene-chunks.js +96 -14
- package/bundle/typescript/src/commands/game/sideQuest/factories/scene-chunks.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/factories/scene-factory.d.ts +25 -1
- package/bundle/typescript/src/commands/game/sideQuest/factories/scene-factory.js +51 -4
- package/bundle/typescript/src/commands/game/sideQuest/factories/scene-factory.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/factories/scene-seed-generator.d.ts +9 -2
- package/bundle/typescript/src/commands/game/sideQuest/factories/scene-seed-generator.js +12 -5
- package/bundle/typescript/src/commands/game/sideQuest/factories/scene-seed-generator.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/game.d.ts +26 -0
- package/bundle/typescript/src/commands/game/sideQuest/game.js +182 -9
- package/bundle/typescript/src/commands/game/sideQuest/game.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/models/player.d.ts +38 -0
- package/bundle/typescript/src/commands/game/sideQuest/models/player.js +85 -3
- package/bundle/typescript/src/commands/game/sideQuest/models/player.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/models/room.d.ts +32 -1
- package/bundle/typescript/src/commands/game/sideQuest/models/room.js +48 -3
- package/bundle/typescript/src/commands/game/sideQuest/models/room.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/types/save-file.d.ts +8 -0
- package/bundle/typescript/src/commands/game/sideQuest/utilities/ar.d.ts +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/utilities/ar.js +8 -5
- package/bundle/typescript/src/commands/game/sideQuest/utilities/ar.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/utilities/backlog-vocab.js +6 -0
- package/bundle/typescript/src/commands/game/sideQuest/utilities/backlog-vocab.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/utilities/first-aid.d.ts +124 -0
- package/bundle/typescript/src/commands/game/sideQuest/utilities/first-aid.js +209 -0
- package/bundle/typescript/src/commands/game/sideQuest/utilities/first-aid.js.map +1 -0
- package/bundle/typescript/src/commands/game/sideQuest/utilities/grid-view.d.ts +3 -2
- package/bundle/typescript/src/commands/game/sideQuest/utilities/grid-view.js +112 -15
- package/bundle/typescript/src/commands/game/sideQuest/utilities/grid-view.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/utilities/ic.d.ts +8 -3
- package/bundle/typescript/src/commands/game/sideQuest/utilities/ic.js +70 -8
- package/bundle/typescript/src/commands/game/sideQuest/utilities/ic.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/utilities/limits.d.ts +50 -0
- package/bundle/typescript/src/commands/game/sideQuest/utilities/limits.js +44 -0
- package/bundle/typescript/src/commands/game/sideQuest/utilities/limits.js.map +1 -0
- package/bundle/typescript/src/commands/game/sideQuest/utilities/persistence.js +9 -0
- package/bundle/typescript/src/commands/game/sideQuest/utilities/persistence.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/utilities/planes.d.ts +133 -8
- package/bundle/typescript/src/commands/game/sideQuest/utilities/planes.js +208 -30
- package/bundle/typescript/src/commands/game/sideQuest/utilities/planes.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/utilities/presence-gate.d.ts +21 -0
- package/bundle/typescript/src/commands/game/sideQuest/utilities/presence-gate.js +28 -0
- package/bundle/typescript/src/commands/game/sideQuest/utilities/presence-gate.js.map +1 -0
- package/bundle/typescript/src/commands/game/sideQuest/utilities/shared-run.d.ts +5 -0
- package/bundle/typescript/src/commands/game/sideQuest/utilities/shared-run.js +33 -0
- package/bundle/typescript/src/commands/game/sideQuest/utilities/shared-run.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/utilities/web-character-generator.js +9 -1
- package/bundle/typescript/src/commands/game/sideQuest/utilities/web-character-generator.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest.sub.cmd.js +3 -1
- package/bundle/typescript/src/commands/game/sideQuest.sub.cmd.js.map +1 -1
- package/package.json +2 -2
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@maka/maka-cli",
|
|
3
|
-
"version": "5.
|
|
3
|
+
"version": "5.84.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"summary": "A command line tool for scaffolding Meteor 2.x applications using either React.",
|
|
6
6
|
"description": "A command line tool for scaffolding Meteor 2.x applications using React.",
|
|
@@ -44,7 +44,7 @@
|
|
|
44
44
|
"@aws-sdk/client-route-53-domains": "^3.1111.0",
|
|
45
45
|
"@dotenvx/dotenvx": "^2.21.0",
|
|
46
46
|
"@inquirer/prompts": "^8.5.2",
|
|
47
|
-
"@maka/meteor-sdk": "^0.2.
|
|
47
|
+
"@maka/meteor-sdk": "^0.2.13",
|
|
48
48
|
"@maka/tar": "^6.2.2",
|
|
49
49
|
"blessed": "^0.1.81",
|
|
50
50
|
"chalk": "^4.1.2",
|
|
@@ -789,6 +789,13 @@ export class CastCommand extends BypassCommand {
|
|
|
789
789
|
const roll = rollPool(this.actor.getMagicPool());
|
|
790
790
|
const healed = target.healDamage(Math.min(roll.hits, force));
|
|
791
791
|
const capped = roll.hits > force;
|
|
792
|
+
// p.205: "First Aid may not be applied if the character has been
|
|
793
|
+
// magically healed." Mana closes a wound differently than pressure
|
|
794
|
+
// and sealant do, and the two do not stack on one set of wounds. Only
|
|
795
|
+
// a spell that ACTUALLY knit something locks it out -- a heal that
|
|
796
|
+
// rolled nothing has nothing to protect.
|
|
797
|
+
if (healed > 0)
|
|
798
|
+
target.magicallyHealed = true;
|
|
792
799
|
const spell = SPELLS.heal;
|
|
793
800
|
this.actor.performAction('casts heal', self ? '' : `on ${target.name}`);
|
|
794
801
|
this.scene.addWorldEvent(`${this.actor.name} cast a healing spell${self ? '' : ` on ${target.name}`} in ${this.actor.currentLocation.name}.`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cast.js","sourceRoot":"","sources":["../../../../../../../src/commands/game/sideQuest/commands/cast.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"cast.js","sourceRoot":"","sources":["../../../../../../../src/commands/game/sideQuest/commands/cast.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { Command, ICommand } from './command.js';
|
|
2
|
+
/**
|
|
3
|
+
* ENTER/EXIT HOST (SR5 p.239, Complex Action).
|
|
4
|
+
*
|
|
5
|
+
* "Enter/Exit Host: Marks required 1. You enter or exit a host. A host
|
|
6
|
+
* allows anyone to enter if they've got a mark, and anyone inside can
|
|
7
|
+
* exit. There is no test involved. When you leave a host, you return to
|
|
8
|
+
* the grid you entered from."
|
|
9
|
+
*
|
|
10
|
+
* WHY THIS FILE EXISTS AT ALL. Until now this engine had NO
|
|
11
|
+
* inside-vs-outside-host state. A persona standing on a room's patch of
|
|
12
|
+
* grid WAS in its host as far as every surface was concerned: `look`
|
|
13
|
+
* listed the host's sealed files as icons "right there on the grid",
|
|
14
|
+
* `hack` cracked a host you had never entered, and IC hunted personas
|
|
15
|
+
* who had crossed no threshold. One play-tester filed that same absence
|
|
16
|
+
* three times from three sides -- once as "IC do not operate out on the
|
|
17
|
+
* Grid", once as icons visible where they should not be, once as an
|
|
18
|
+
* air-gapped host that cannot exist -- because from outside the code
|
|
19
|
+
* there was no single wrong rule to point at, only a missing one.
|
|
20
|
+
*
|
|
21
|
+
* The boundary the book draws (p.246): "The virtual space inside a host
|
|
22
|
+
* is separate from the outside grid. When you're outside of a host, you
|
|
23
|
+
* can't interact directly with icons inside it... Once you're inside,
|
|
24
|
+
* you can see and interact with icons inside the host, but not outside."
|
|
25
|
+
*
|
|
26
|
+
* LINK-LOCK BLOCKS THIS DOOR IN BOTH DIRECTIONS (p.229): "If you are
|
|
27
|
+
* link-locked, you cannot use the Enter/Exit Host action." That is not a
|
|
28
|
+
* flourish -- it is the whole point of the lock IC already in this
|
|
29
|
+
* engine (utilities/ic.ts applyLinkLock). Jack Out remains the escape,
|
|
30
|
+
* and it costs dumpshock.
|
|
31
|
+
*/
|
|
32
|
+
export declare class EnterHostCommand extends Command implements ICommand {
|
|
33
|
+
protected static verb: string;
|
|
34
|
+
protected static description: string;
|
|
35
|
+
execute(args?: string[]): Promise<string>;
|
|
36
|
+
/**
|
|
37
|
+
* The host this verb means. Bare `enter` takes the one under your feet
|
|
38
|
+
* -- the overwhelmingly common case, and the one a player types.
|
|
39
|
+
* Naming a room enters that room's host instead, which matters because
|
|
40
|
+
* a jacked-in persona jumps by name and may be standing anywhere.
|
|
41
|
+
*/
|
|
42
|
+
private resolveHost;
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* The other half of p.239. "Anyone inside can exit" -- no mark check, no
|
|
46
|
+
* test, because you are already past the door. The only thing that holds
|
|
47
|
+
* a persona inside is a link-lock (p.229).
|
|
48
|
+
*/
|
|
49
|
+
export declare class ExitHostCommand extends Command implements ICommand {
|
|
50
|
+
protected static verb: string;
|
|
51
|
+
protected static description: string;
|
|
52
|
+
execute(_args?: string[]): Promise<string>;
|
|
53
|
+
}
|
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
import { Command } from './command.js';
|
|
2
|
+
import { hint } from '../utilities/hints.js';
|
|
3
|
+
import { hostLabel } from '../utilities/grid-names.js';
|
|
4
|
+
/**
|
|
5
|
+
* ENTER/EXIT HOST (SR5 p.239, Complex Action).
|
|
6
|
+
*
|
|
7
|
+
* "Enter/Exit Host: Marks required 1. You enter or exit a host. A host
|
|
8
|
+
* allows anyone to enter if they've got a mark, and anyone inside can
|
|
9
|
+
* exit. There is no test involved. When you leave a host, you return to
|
|
10
|
+
* the grid you entered from."
|
|
11
|
+
*
|
|
12
|
+
* WHY THIS FILE EXISTS AT ALL. Until now this engine had NO
|
|
13
|
+
* inside-vs-outside-host state. A persona standing on a room's patch of
|
|
14
|
+
* grid WAS in its host as far as every surface was concerned: `look`
|
|
15
|
+
* listed the host's sealed files as icons "right there on the grid",
|
|
16
|
+
* `hack` cracked a host you had never entered, and IC hunted personas
|
|
17
|
+
* who had crossed no threshold. One play-tester filed that same absence
|
|
18
|
+
* three times from three sides -- once as "IC do not operate out on the
|
|
19
|
+
* Grid", once as icons visible where they should not be, once as an
|
|
20
|
+
* air-gapped host that cannot exist -- because from outside the code
|
|
21
|
+
* there was no single wrong rule to point at, only a missing one.
|
|
22
|
+
*
|
|
23
|
+
* The boundary the book draws (p.246): "The virtual space inside a host
|
|
24
|
+
* is separate from the outside grid. When you're outside of a host, you
|
|
25
|
+
* can't interact directly with icons inside it... Once you're inside,
|
|
26
|
+
* you can see and interact with icons inside the host, but not outside."
|
|
27
|
+
*
|
|
28
|
+
* LINK-LOCK BLOCKS THIS DOOR IN BOTH DIRECTIONS (p.229): "If you are
|
|
29
|
+
* link-locked, you cannot use the Enter/Exit Host action." That is not a
|
|
30
|
+
* flourish -- it is the whole point of the lock IC already in this
|
|
31
|
+
* engine (utilities/ic.ts applyLinkLock). Jack Out remains the escape,
|
|
32
|
+
* and it costs dumpshock.
|
|
33
|
+
*/
|
|
34
|
+
export class EnterHostCommand extends Command {
|
|
35
|
+
static verb = 'enter';
|
|
36
|
+
static description = 'Enter a host you hold a mark on (Complex Action, no test -- a host opens to anyone marked). Inside, you see the host\'s own icons and nothing on the outside grid; outside, the host is a single sealed icon. "exit" returns you to the grid you came from.';
|
|
37
|
+
async execute(args = []) {
|
|
38
|
+
const actor = this.actor;
|
|
39
|
+
if (actor.plane !== 'matrix') {
|
|
40
|
+
return `Entering a host is something a PERSONA does. You're standing here in the flesh. ${hint(`"jack in" first.`)}`;
|
|
41
|
+
}
|
|
42
|
+
if (actor.insideHost) {
|
|
43
|
+
return `You're already inside ${hostLabel(actor.insideHost, { capital: false })}. ${hint(`"exit" drops you back to the grid.`)}`;
|
|
44
|
+
}
|
|
45
|
+
// p.229: link-locked personas cannot use Enter/Exit Host at all.
|
|
46
|
+
// Named, not silently refused -- the lock is a thing the player can
|
|
47
|
+
// act on, and the action that beats it has a price worth stating.
|
|
48
|
+
if (actor.linkLockedBy.size > 0) {
|
|
49
|
+
const by = [...actor.linkLockedBy].join(', ');
|
|
50
|
+
return `{red-fg}LINK-LOCKED by ${by} -- the connection is nailed open and Enter/Exit Host is closed to you (p.229). Kill what's holding you, or "jack out" and eat the dumpshock.{/red-fg}`;
|
|
51
|
+
}
|
|
52
|
+
const here = actor.currentLocation;
|
|
53
|
+
const target = this.resolveHost(args, here);
|
|
54
|
+
if (typeof target === 'string')
|
|
55
|
+
return target;
|
|
56
|
+
// THE MARK IS THE WHOLE GATE (p.239) -- one mark, no test. This is
|
|
57
|
+
// deliberately NOT a second hack: a player who has already spent the
|
|
58
|
+
// actions to get a mark has bought the door, and charging them a
|
|
59
|
+
// test here would be inventing a rule the book explicitly denies
|
|
60
|
+
// ("There is no test involved").
|
|
61
|
+
const marks = target.hostMarksBy.get(actor.name) ?? 0;
|
|
62
|
+
if (marks < 1 && !target.hostCracked && !target.hostSanctioned) {
|
|
63
|
+
return [
|
|
64
|
+
`{cyan-fg}${hostLabel(target, { capital: true })} doesn't know you. Its architecture has no door shaped like your icon.{/cyan-fg}`,
|
|
65
|
+
hint(`A host opens to anyone holding a MARK on it (p.239) -- "mark ${target.name}" softens it, or "hack" takes one by force.`),
|
|
66
|
+
].join('\n');
|
|
67
|
+
}
|
|
68
|
+
actor.insideHost = target;
|
|
69
|
+
actor.performAction('enters a host', `icon crossing into ${target.name}'s architecture`);
|
|
70
|
+
this.logger.write(`${actor.name} entered the host at ${target.name}.`);
|
|
71
|
+
this.scene.updateStatus();
|
|
72
|
+
return [
|
|
73
|
+
`{cyan-fg}You cross into ${hostLabel(target, { capital: false })}.{/cyan-fg}`,
|
|
74
|
+
`{cyan-fg}The outside grid folds shut behind you -- the street's icons, the PANs, the personas out on the patch: all of it gone, not hidden. In here there is only what the host keeps.{/cyan-fg}`,
|
|
75
|
+
hint(`"look" reads the space you're standing in now. "exit" puts you back on the grid you came from.`),
|
|
76
|
+
].join('\n');
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* The host this verb means. Bare `enter` takes the one under your feet
|
|
80
|
+
* -- the overwhelmingly common case, and the one a player types.
|
|
81
|
+
* Naming a room enters that room's host instead, which matters because
|
|
82
|
+
* a jacked-in persona jumps by name and may be standing anywhere.
|
|
83
|
+
*/
|
|
84
|
+
resolveHost(args, here) {
|
|
85
|
+
const named = args.join(' ').trim();
|
|
86
|
+
if (!named) {
|
|
87
|
+
if (!here.hasNode) {
|
|
88
|
+
return `{cyan-fg}Thin grid here -- no host stands over ${here.name}.{/cyan-fg} ${hint(`"map" lights the ones that do.`)}`;
|
|
89
|
+
}
|
|
90
|
+
return here;
|
|
91
|
+
}
|
|
92
|
+
const room = Object.values(this.scene.getRooms()).find(r => r.name.toLowerCase() === named.toLowerCase());
|
|
93
|
+
if (!room)
|
|
94
|
+
return `No room called "${named}" on this grid.`;
|
|
95
|
+
if (!room.hasNode)
|
|
96
|
+
return `{cyan-fg}${room.name} has no host over it -- nothing to enter.{/cyan-fg}`;
|
|
97
|
+
// Your persona has to be ON that patch of grid to cross into its
|
|
98
|
+
// host. `go` is free out here (no distance on the grid), so this is
|
|
99
|
+
// one move, not a wall -- but it keeps the boundary honest: you
|
|
100
|
+
// enter a host from the grid it sits on.
|
|
101
|
+
if (room !== here) {
|
|
102
|
+
return `{cyan-fg}${hostLabel(room, { capital: true })} stands over ${room.name}, and you're on ${here.name}'s patch.{/cyan-fg} ${hint(`"go ${room.name}" first -- the grid has no distance.`)}`;
|
|
103
|
+
}
|
|
104
|
+
return room;
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
/**
|
|
108
|
+
* The other half of p.239. "Anyone inside can exit" -- no mark check, no
|
|
109
|
+
* test, because you are already past the door. The only thing that holds
|
|
110
|
+
* a persona inside is a link-lock (p.229).
|
|
111
|
+
*/
|
|
112
|
+
export class ExitHostCommand extends Command {
|
|
113
|
+
static verb = 'exit';
|
|
114
|
+
static description = 'Leave the host you\'re inside and return to the grid you entered from (Complex Action, no test -- anyone inside can exit). Link-locked personas cannot: "jack out" is the only way through that, and it hurts.';
|
|
115
|
+
async execute(_args = []) {
|
|
116
|
+
const actor = this.actor;
|
|
117
|
+
if (actor.plane !== 'matrix' || !actor.insideHost) {
|
|
118
|
+
return `You're not inside a host. ${hint(`"enter" crosses into one you hold a mark on.`)}`;
|
|
119
|
+
}
|
|
120
|
+
if (actor.linkLockedBy.size > 0) {
|
|
121
|
+
const by = [...actor.linkLockedBy].join(', ');
|
|
122
|
+
return `{red-fg}You reach for the door and it isn't there. LINK-LOCKED by ${by}: the connection is held open and Enter/Exit Host is closed to you (p.229). "jack out" still works -- it just costs you dumpshock.{/red-fg}`;
|
|
123
|
+
}
|
|
124
|
+
const host = actor.insideHost;
|
|
125
|
+
actor.insideHost = undefined;
|
|
126
|
+
actor.performAction('exits a host', `icon surfacing out of ${host.name}'s architecture`);
|
|
127
|
+
this.logger.write(`${actor.name} exited the host at ${host.name}.`);
|
|
128
|
+
this.scene.updateStatus();
|
|
129
|
+
return [
|
|
130
|
+
`{cyan-fg}You step back out of ${hostLabel(host, { capital: false })} and onto ${actor.currentLocation.name}'s patch of grid.{/cyan-fg}`,
|
|
131
|
+
`{cyan-fg}The host seals behind you: one icon again, whatever you saw in there now on the other side of its wall.{/cyan-fg}`,
|
|
132
|
+
].join('\n');
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
//# sourceMappingURL=enter-host.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"enter-host.js","sourceRoot":"","sources":["../../../../../../../src/commands/game/sideQuest/commands/enter-host.ts"],"names":[],"mappings":"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"}
|
|
@@ -43,6 +43,9 @@ export declare class GoCommand extends Command implements ICommand {
|
|
|
43
43
|
* output for the walked path.
|
|
44
44
|
*/
|
|
45
45
|
private finishMove;
|
|
46
|
+
/** The arrival narration itself -- unchanged; see finishMove for why
|
|
47
|
+
* it is wrapped rather than edited at each return. */
|
|
48
|
+
private describeArrival;
|
|
46
49
|
/**
|
|
47
50
|
* The revisit short form: the room's name and who's about -- NOTHING
|
|
48
51
|
* else (player request: the auto "Exits: ..." line was two rows of
|
|
@@ -57,16 +60,22 @@ export declare class GoCommand extends Command implements ICommand {
|
|
|
57
60
|
* initiate slips through like weather. */
|
|
58
61
|
private checkWard;
|
|
59
62
|
/**
|
|
60
|
-
*
|
|
61
|
-
*
|
|
62
|
-
*
|
|
63
|
-
*
|
|
64
|
-
*
|
|
65
|
-
*
|
|
66
|
-
*
|
|
67
|
-
*
|
|
63
|
+
* THE ONE WALL LEFT ON THE GRID: you cannot walk out of a host.
|
|
64
|
+
*
|
|
65
|
+
* This used to be checkAirGap, and it stopped a persona at the
|
|
66
|
+
* threshold of an "air-gapped" host's room -- dark ground with no
|
|
67
|
+
* wireless spillover to ride in on. That model is gone
|
|
68
|
+
* (hhSWvKKMxRC7DGXhh: a host is Matrix architecture by definition, so
|
|
69
|
+
* one that cannot be reached from the Matrix is not a host). Every
|
|
70
|
+
* room's grid patch is now reachable.
|
|
71
|
+
*
|
|
72
|
+
* What replaces it is the boundary that IS in the book (p.246): the
|
|
73
|
+
* space inside a host is separate from the outside grid. A persona
|
|
74
|
+
* standing in a host's architecture is not on the street grid and
|
|
75
|
+
* cannot jump along it -- the exit is a door, not a direction. Same
|
|
76
|
+
* shape of wall, moved to where canon actually puts one.
|
|
68
77
|
*/
|
|
69
|
-
private
|
|
78
|
+
private checkHostBoundary;
|
|
70
79
|
/**
|
|
71
80
|
* The persona's real movement (RAW: "you think about going... and
|
|
72
81
|
* boom, you go"): resolve the words as ANY room in the scene and be
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { Door } from '../models/door.js';
|
|
2
2
|
import { hostConcealedFrom } from '../utilities/jackpoint.js';
|
|
3
|
+
import { planeChangeHint, astralMovesLeft, astralCordWarning, astralCordParts } from '../utilities/planes.js';
|
|
3
4
|
import { CombatExchange } from '../utilities/combat-exchange.js';
|
|
4
5
|
import { rollPool, formatRoll } from '../utilities/dice.js';
|
|
5
6
|
import { entrySpotFor, arrivalAt, ensureAtExit, spotsActive, highlightSpots, highlightActors, doorwayBlocker, doorwayFurniture, yieldDoorway, lockedRouteHint } from '../utilities/spots.js';
|
|
@@ -46,7 +47,7 @@ export class GoCommand extends Command {
|
|
|
46
47
|
ally: () => false,
|
|
47
48
|
};
|
|
48
49
|
static verb = 'go';
|
|
49
|
-
static description = 'Move in the specified direction ("go back" retraces your last move). Fleeing someone you just fought hands them one free parting shot. Jacked in, the grid sees no distance: "go <any room>" jumps your persona straight there ("map" lights the icons
|
|
50
|
+
static description = 'Move in the specified direction ("go back" retraces your last move). Fleeing someone you just fought hands them one free parting shot. Jacked in, the grid sees no distance: "go <any room>" jumps your persona straight there ("map" lights the icons). Inside a host there is no distance to cross at all -- "exit" first.';
|
|
50
51
|
async execute(args) {
|
|
51
52
|
if (!args)
|
|
52
53
|
return '';
|
|
@@ -229,6 +230,15 @@ export class GoCommand extends Command {
|
|
|
229
230
|
return this.gridJump(args.join(' '));
|
|
230
231
|
}
|
|
231
232
|
if (!this.isValidDirection(direction)) {
|
|
233
|
+
// A PLANE IS SOMEWHERE YOU GO, in the sense a player means it, so
|
|
234
|
+
// name the verb that takes you there rather than refusing the word
|
|
235
|
+
// as nonsense (LFmjA76izZ62NDjAv -- "go astral" answering "That is
|
|
236
|
+
// not a way to go" is the move-ish response that report is about).
|
|
237
|
+
const plane = planeChangeHint(direction, this.actor.plane);
|
|
238
|
+
if (plane) {
|
|
239
|
+
this.logger.write(`${this.actor.name} typed "go ${direction}" -- pointed at the plane verb.`);
|
|
240
|
+
return plane;
|
|
241
|
+
}
|
|
232
242
|
this.logger.write(`${this.actor.name} attempted to go ${direction} which is not valid.`);
|
|
233
243
|
return 'That is not a way to go';
|
|
234
244
|
}
|
|
@@ -329,7 +339,7 @@ export class GoCommand extends Command {
|
|
|
329
339
|
const wardBlock = this.checkWard(targetRoom);
|
|
330
340
|
if (wardBlock)
|
|
331
341
|
return wardBlock;
|
|
332
|
-
const gapBlock = this.
|
|
342
|
+
const gapBlock = this.checkHostBoundary(targetRoom);
|
|
333
343
|
if (gapBlock)
|
|
334
344
|
return gapBlock;
|
|
335
345
|
this.actor.performAction('exits', `${this.actor.currentLocation.name} to ${targetRoom.name}`);
|
|
@@ -366,7 +376,7 @@ export class GoCommand extends Command {
|
|
|
366
376
|
const wardBlock = this.checkWard(nextRoom);
|
|
367
377
|
if (wardBlock)
|
|
368
378
|
return wardBlock;
|
|
369
|
-
const gapBlock = this.
|
|
379
|
+
const gapBlock = this.checkHostBoundary(nextRoom);
|
|
370
380
|
if (gapBlock)
|
|
371
381
|
return gapBlock;
|
|
372
382
|
this.actor.cameFrom = { room: this.actor.currentLocation.name, back: GoCommand.opposite(direction) };
|
|
@@ -396,10 +406,29 @@ export class GoCommand extends Command {
|
|
|
396
406
|
* output for the walked path.
|
|
397
407
|
*/
|
|
398
408
|
finishMove(crossNote, origin) {
|
|
399
|
-
//
|
|
400
|
-
|
|
401
|
-
|
|
409
|
+
// ASTRAL MOVEMENT SPENDS THE CORD (SR5 p.314 -- see planes.ts
|
|
410
|
+
// astralMoveBudget for why a room-move stands for an hour, and for
|
|
411
|
+
// the toll this replaced). Warnings escalate the whole way down so
|
|
412
|
+
// the death is never a surprise; past the budget the cord parts and
|
|
413
|
+
// the body dies, which is the canon consequence rather than a house
|
|
414
|
+
// one.
|
|
415
|
+
//
|
|
416
|
+
// A WRAPPER, because the arrival narration has half a dozen exits
|
|
417
|
+
// and the cord note has to ride every one of them. Appending at each
|
|
418
|
+
// return is how one of them silently stops warning.
|
|
419
|
+
if (this.actor.plane !== 'astral')
|
|
420
|
+
return this.describeArrival(crossNote, origin);
|
|
421
|
+
this.actor.astralTicks += 1;
|
|
422
|
+
if (astralMovesLeft(this.actor) <= 0) {
|
|
423
|
+
return astralCordParts(this.scene, this.actor).join('\n');
|
|
402
424
|
}
|
|
425
|
+
const arrival = this.describeArrival(crossNote, origin);
|
|
426
|
+
const warn = astralCordWarning(this.actor);
|
|
427
|
+
return warn ? `${arrival}\n${warn}` : arrival;
|
|
428
|
+
}
|
|
429
|
+
/** The arrival narration itself -- unchanged; see finishMove for why
|
|
430
|
+
* it is wrapped rather than edited at each return. */
|
|
431
|
+
describeArrival(crossNote, origin) {
|
|
403
432
|
// COMPANIONS FOLLOW (see Game.companions): when the PLAYER moves,
|
|
404
433
|
// every shell whose plane can keep up moves with them -- spirits
|
|
405
434
|
// cross meat and astral, drones stay meat, agents ride the grid
|
|
@@ -539,24 +568,29 @@ export class GoCommand extends Command {
|
|
|
539
568
|
return null;
|
|
540
569
|
}
|
|
541
570
|
/**
|
|
542
|
-
*
|
|
543
|
-
*
|
|
544
|
-
*
|
|
545
|
-
*
|
|
546
|
-
*
|
|
547
|
-
*
|
|
548
|
-
*
|
|
549
|
-
*
|
|
571
|
+
* THE ONE WALL LEFT ON THE GRID: you cannot walk out of a host.
|
|
572
|
+
*
|
|
573
|
+
* This used to be checkAirGap, and it stopped a persona at the
|
|
574
|
+
* threshold of an "air-gapped" host's room -- dark ground with no
|
|
575
|
+
* wireless spillover to ride in on. That model is gone
|
|
576
|
+
* (hhSWvKKMxRC7DGXhh: a host is Matrix architecture by definition, so
|
|
577
|
+
* one that cannot be reached from the Matrix is not a host). Every
|
|
578
|
+
* room's grid patch is now reachable.
|
|
579
|
+
*
|
|
580
|
+
* What replaces it is the boundary that IS in the book (p.246): the
|
|
581
|
+
* space inside a host is separate from the outside grid. A persona
|
|
582
|
+
* standing in a host's architecture is not on the street grid and
|
|
583
|
+
* cannot jump along it -- the exit is a door, not a direction. Same
|
|
584
|
+
* shape of wall, moved to where canon actually puts one.
|
|
550
585
|
*/
|
|
551
|
-
|
|
586
|
+
checkHostBoundary(target) {
|
|
552
587
|
if (this.actor.plane !== 'matrix')
|
|
553
588
|
return null;
|
|
554
|
-
|
|
555
|
-
|
|
556
|
-
if (this.actor.bodyRoom === target)
|
|
589
|
+
const host = this.actor.insideHost;
|
|
590
|
+
if (!host || host === target)
|
|
557
591
|
return null;
|
|
558
|
-
this.actor.performAction('is stopped by
|
|
559
|
-
return `
|
|
592
|
+
this.actor.performAction('is stopped by host architecture', host.name);
|
|
593
|
+
return `You're INSIDE ${host.name}'s host -- its architecture is all there is from in here, and the outside grid is a wall away (p.246). "exit" puts you back on the grid, then go where you like.`;
|
|
560
594
|
}
|
|
561
595
|
/**
|
|
562
596
|
* The persona's real movement (RAW: "you think about going... and
|
|
@@ -595,7 +629,7 @@ export class GoCommand extends Command {
|
|
|
595
629
|
// looking THROUGH anything at a room, you are standing on it.
|
|
596
630
|
return `Your persona is already there -- ${target.name} is the patch of grid you're standing on.`;
|
|
597
631
|
}
|
|
598
|
-
const gapBlock = this.
|
|
632
|
+
const gapBlock = this.checkHostBoundary(target);
|
|
599
633
|
if (gapBlock)
|
|
600
634
|
return gapBlock;
|
|
601
635
|
this.actor.performAction('rides the grid', `from ${current.name} to ${target.name} -- no distance, just intent`);
|