@maka/maka-cli 5.17.0 → 5.17.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundle/typescript/package.json +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/commands/call.d.ts +10 -4
- package/bundle/typescript/src/commands/game/sideQuest/commands/call.js +68 -40
- package/bundle/typescript/src/commands/game/sideQuest/commands/call.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/commands/end-call.js +9 -0
- package/bundle/typescript/src/commands/game/sideQuest/commands/end-call.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/commands/players.js +2 -2
- package/bundle/typescript/src/commands/game/sideQuest/commands/players.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/commands/say.js +37 -2
- package/bundle/typescript/src/commands/game/sideQuest/commands/say.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/game.d.ts +38 -0
- package/bundle/typescript/src/commands/game/sideQuest/game.js +36 -0
- package/bundle/typescript/src/commands/game/sideQuest/game.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/models/player.d.ts +4 -0
- package/bundle/typescript/src/commands/game/sideQuest/models/player.js +12 -2
- package/bundle/typescript/src/commands/game/sideQuest/models/player.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/utilities/fuzzy-match.d.ts +11 -0
- package/bundle/typescript/src/commands/game/sideQuest/utilities/fuzzy-match.js +9 -4
- package/bundle/typescript/src/commands/game/sideQuest/utilities/fuzzy-match.js.map +1 -1
- package/bundle/typescript/src/commands/game/sideQuest/utilities/shared-run.d.ts +11 -0
- package/bundle/typescript/src/commands/game/sideQuest/utilities/shared-run.js +81 -3
- package/bundle/typescript/src/commands/game/sideQuest/utilities/shared-run.js.map +1 -1
- package/bundle/typescript/src/generator.js +15 -0
- package/bundle/typescript/src/generator.js.map +1 -1
- package/bundle/typescript/src/tools/log/log.class.js +22 -14
- package/bundle/typescript/src/tools/log/log.class.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@maka/maka-cli",
|
|
3
|
-
"version": "5.17.
|
|
3
|
+
"version": "5.17.2",
|
|
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.",
|
|
@@ -16,10 +16,16 @@ export declare class CallCommand extends Command implements ICommand {
|
|
|
16
16
|
roomType?: string;
|
|
17
17
|
} | undefined): boolean;
|
|
18
18
|
private hasEquippedCommlink;
|
|
19
|
-
/** M4.5, the crew channel:
|
|
20
|
-
*
|
|
21
|
-
*
|
|
22
|
-
|
|
19
|
+
/** M4.5.1, the crew channel: resolve `call <words...>` against the
|
|
20
|
+
* REAL players on the street. Resolution only -- opening the line is
|
|
21
|
+
* openCrewChannel's job. Null when the street is unreachable
|
|
22
|
+
* (offline/logged out/classic mode) or nobody matches. */
|
|
23
|
+
private tryResolveStreetPlayer;
|
|
24
|
+
/** Open the crew channel to a street player -- the SAME mechanic as
|
|
25
|
+
* calling an NPC contact: the call connects, then plain "say" talks
|
|
26
|
+
* and "end-call" hangs up (user ruling). The hail (or the trailing
|
|
27
|
+
* words, if any) goes out as the first page. */
|
|
28
|
+
private openCrewChannel;
|
|
23
29
|
private hasCommlink;
|
|
24
30
|
/**
|
|
25
31
|
* Multi-word names ("Mr. Johnson") shouldn't require the player to quote
|
|
@@ -4,7 +4,7 @@ import { Category } from '../types/shared/item-enum.js';
|
|
|
4
4
|
import { parseArgsWithQuotes } from './talk.js';
|
|
5
5
|
import { CALL_ICON, CALL_COLOR } from '../utilities/comm-style.js';
|
|
6
6
|
import { FIXER_NAME, isFixerName } from '../factories/scene-seed-generator.js';
|
|
7
|
-
import {
|
|
7
|
+
import { fuzzyPickNameDetailed } from '../utilities/fuzzy-match.js';
|
|
8
8
|
import { isOutdoorsPlace } from '../utilities/outdoors.js';
|
|
9
9
|
export class CallCommand extends Command {
|
|
10
10
|
static verb = 'call';
|
|
@@ -143,16 +143,19 @@ export class CallCommand extends Command {
|
|
|
143
143
|
}
|
|
144
144
|
return `The dispatcher's bored voice: "No fare on the books for you, chummer." (No job arranged -- "call ${FIXER_NAME}" first.)`;
|
|
145
145
|
}
|
|
146
|
-
const { target, remainingWords } = this.resolveTargetAndMessage(rawWords);
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
146
|
+
const { target, remainingWords, tier } = this.resolveTargetAndMessage(rawWords);
|
|
147
|
+
// THE CREW CHANNEL (M4.5.1): a REAL player on the street can be the
|
|
148
|
+
// callee -- and a confident player match OUTRANKS a typo-tier NPC
|
|
149
|
+
// match (real session: "call Maka" rang the hub NPC "Mama Wu",
|
|
150
|
+
// maka->mama is one edit). Exact/substring NPC matches keep
|
|
151
|
+
// precedence without paying the street fetch; ties go to the NPC.
|
|
152
|
+
if (!target || tier === 3) {
|
|
153
|
+
const street = await this.tryResolveStreetPlayer(rawWords);
|
|
154
|
+
if (street && (!target || street.tier < (tier ?? 4))) {
|
|
155
|
+
return await this.openCrewChannel(street);
|
|
155
156
|
}
|
|
157
|
+
}
|
|
158
|
+
if (!target) {
|
|
156
159
|
return `You don't know anyone by the name "${rawWords[0]}" to call.`;
|
|
157
160
|
}
|
|
158
161
|
if (target === this.actor) {
|
|
@@ -178,6 +181,7 @@ export class CallCommand extends Command {
|
|
|
178
181
|
// but the details and the number itself belong to the meet.
|
|
179
182
|
const pending = this.game.pendingRun;
|
|
180
183
|
if (pending) {
|
|
184
|
+
this.actor.crewChannel = undefined; // one line at a time
|
|
181
185
|
this.actor.activeCallPartner = target;
|
|
182
186
|
target.activeCallPartner = this.actor;
|
|
183
187
|
// Already shook on it (see commands/job-offer.ts): no re-pitch,
|
|
@@ -224,6 +228,7 @@ export class CallCommand extends Command {
|
|
|
224
228
|
// Symmetric: either side can now reach the other with an ordinary
|
|
225
229
|
// "say", not just this initial hail -- see say.ts. Stays connected
|
|
226
230
|
// until "end-call" (or a new call replaces it, per above).
|
|
231
|
+
this.actor.crewChannel = undefined; // one line at a time
|
|
227
232
|
this.actor.activeCallPartner = target;
|
|
228
233
|
target.activeCallPartner = this.actor;
|
|
229
234
|
// If the caller is holding this run's win-condition macguffin and
|
|
@@ -313,18 +318,17 @@ export class CallCommand extends Command {
|
|
|
313
318
|
hasEquippedCommlink(actor) {
|
|
314
319
|
return actor.equipment.head?.commlink != null;
|
|
315
320
|
}
|
|
316
|
-
/** M4.5, the crew channel:
|
|
317
|
-
*
|
|
318
|
-
*
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
321
|
+
/** M4.5.1, the crew channel: resolve `call <words...>` against the
|
|
322
|
+
* REAL players on the street. Resolution only -- opening the line is
|
|
323
|
+
* openCrewChannel's job. Null when the street is unreachable
|
|
324
|
+
* (offline/logged out/classic mode) or nobody matches. */
|
|
325
|
+
async tryResolveStreetPlayer(rawWords) {
|
|
326
|
+
const transport = await this.game?.streetTransport();
|
|
327
|
+
if (!transport)
|
|
322
328
|
return null;
|
|
323
|
-
const
|
|
324
|
-
|
|
325
|
-
if (!players || players.length === 0)
|
|
329
|
+
const players = await transport.list(this.actor.name).catch(() => []);
|
|
330
|
+
if (players.length === 0)
|
|
326
331
|
return null;
|
|
327
|
-
const { fuzzyPickName } = await import('../utilities/fuzzy-match.js');
|
|
328
332
|
// Longest name first: "call chrome marie meet me" must not lose a
|
|
329
333
|
// two-word name's second word to the message.
|
|
330
334
|
const wordCount = (s) => s.trim().split(/\s+/).length;
|
|
@@ -337,30 +341,54 @@ export class CallCommand extends Command {
|
|
|
337
341
|
const namePool = players.filter(p => wordCount(p.playerName) >= n);
|
|
338
342
|
const handlePool = players.filter(p => wordCount(p.handle) >= n);
|
|
339
343
|
const byHandle = players.find(p => p.handle.toLowerCase() === q.toLowerCase());
|
|
340
|
-
const
|
|
341
|
-
const
|
|
344
|
+
const nameHit = fuzzyPickNameDetailed(q, namePool.map(p => p.playerName));
|
|
345
|
+
const handleHit = fuzzyPickNameDetailed(q, handlePool.map(p => p.handle));
|
|
342
346
|
const picked = byHandle
|
|
343
|
-
|
|
344
|
-
|
|
347
|
+
? { player: byHandle, tier: 1 }
|
|
348
|
+
: nameHit
|
|
349
|
+
? { player: namePool.find(p => p.playerName === nameHit.name), tier: nameHit.tier }
|
|
350
|
+
: handleHit
|
|
351
|
+
? { player: handlePool.find(p => p.handle === handleHit.name), tier: handleHit.tier }
|
|
352
|
+
: undefined;
|
|
345
353
|
if (!picked)
|
|
346
354
|
continue;
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
const res = await sr.HubLink.call('sideQuest.page', { handle: picked.handle, text: message });
|
|
354
|
-
this.actor.performAction('pages', `${res.toRunner}: "${message}"`);
|
|
355
|
-
return `${CALL_ICON} Over the crew channel to ${res.toRunner}: "${message}"${res.online ? '' : ` (they're off the street -- it'll be waiting when they surface)`}`;
|
|
356
|
-
}
|
|
357
|
-
catch (err) {
|
|
358
|
-
const e = err;
|
|
359
|
-
return `The crew channel chokes (${e.reason ?? e.message ?? 'dead air'}) -- try again.`;
|
|
360
|
-
}
|
|
355
|
+
return {
|
|
356
|
+
playerName: picked.player.playerName,
|
|
357
|
+
handle: picked.player.handle,
|
|
358
|
+
tier: picked.tier,
|
|
359
|
+
messageWords: rawWords.slice(n),
|
|
360
|
+
};
|
|
361
361
|
}
|
|
362
362
|
return null;
|
|
363
363
|
}
|
|
364
|
+
/** Open the crew channel to a street player -- the SAME mechanic as
|
|
365
|
+
* calling an NPC contact: the call connects, then plain "say" talks
|
|
366
|
+
* and "end-call" hangs up (user ruling). The hail (or the trailing
|
|
367
|
+
* words, if any) goes out as the first page. */
|
|
368
|
+
async openCrewChannel(street) {
|
|
369
|
+
const transport = await this.game?.streetTransport();
|
|
370
|
+
if (!transport)
|
|
371
|
+
return `The crew channel is dead air -- you're off the grid.`;
|
|
372
|
+
const greeting = street.messageWords.join(' ') || `(calling) You there, ${street.playerName}?`;
|
|
373
|
+
// One line at a time: connecting here drops any in-scene call, the
|
|
374
|
+
// same cleanup the NPC path runs (and vice versa).
|
|
375
|
+
if (this.actor.activeCallPartner) {
|
|
376
|
+
this.actor.activeCallPartner.activeCallPartner = undefined;
|
|
377
|
+
this.actor.activeCallPartner = undefined;
|
|
378
|
+
}
|
|
379
|
+
this.actor.crewChannel = { playerName: street.playerName, handle: street.handle };
|
|
380
|
+
this.actor.performAction('calls', street.playerName);
|
|
381
|
+
try {
|
|
382
|
+
const res = await transport.send({ from: this.actor.name, handle: street.handle, text: greeting });
|
|
383
|
+
const offlineNote = res.online ? '' : `\nThey're off the street right now -- your words wait on their link.`;
|
|
384
|
+
return `{${CALL_COLOR}-fg}${CALL_ICON} You call ${res.toRunner} on the crew channel: "${greeting}"{/${CALL_COLOR}-fg}${offlineNote}${hint(`\n("say <message>" talks, "end-call" hangs up.)`)}`;
|
|
385
|
+
}
|
|
386
|
+
catch (err) {
|
|
387
|
+
this.actor.crewChannel = undefined;
|
|
388
|
+
const e = err;
|
|
389
|
+
return `The crew channel chokes (${e.reason ?? e.message ?? 'dead air'}) -- try again.`;
|
|
390
|
+
}
|
|
391
|
+
}
|
|
364
392
|
hasCommlink(actor) {
|
|
365
393
|
const inInventory = actor.inventory.getAllItems().some(item => item.category === Category.Commlink);
|
|
366
394
|
return inInventory || this.hasEquippedCommlink(actor);
|
|
@@ -390,9 +418,9 @@ export class CallCommand extends Command {
|
|
|
390
418
|
const candidates = [...inScene, ...remote];
|
|
391
419
|
const names = candidates.map(a => a.name);
|
|
392
420
|
for (let i = words.length; i >= 1; i--) {
|
|
393
|
-
const picked =
|
|
421
|
+
const picked = fuzzyPickNameDetailed(words.slice(0, i).join(' '), names);
|
|
394
422
|
if (picked) {
|
|
395
|
-
return { target: candidates.find(a => a.name === picked), remainingWords: words.slice(i) };
|
|
423
|
+
return { target: candidates.find(a => a.name === picked.name), remainingWords: words.slice(i), tier: picked.tier };
|
|
396
424
|
}
|
|
397
425
|
}
|
|
398
426
|
return { target: undefined, remainingWords: [] };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"call.js","sourceRoot":"","sources":["../../../../../../../src/commands/game/sideQuest/commands/call.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"call.js","sourceRoot":"","sources":["../../../../../../../src/commands/game/sideQuest/commands/call.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,6 +7,15 @@ export class EndCallCommand extends Command {
|
|
|
7
7
|
async execute() {
|
|
8
8
|
const partner = this.actor.activeCallPartner;
|
|
9
9
|
if (!partner) {
|
|
10
|
+
// The CREW CHANNEL (M4.5.1) hangs up the same way -- the remote
|
|
11
|
+
// player just stops receiving pages; no far-side actor to unlink.
|
|
12
|
+
const channel = this.actor.crewChannel;
|
|
13
|
+
if (channel) {
|
|
14
|
+
this.actor.crewChannel = undefined;
|
|
15
|
+
this.actor.performAction('ends call', channel.playerName);
|
|
16
|
+
this.scene.updateStatus();
|
|
17
|
+
return `{${CALL_COLOR}-fg}${CALL_ICON} You close the crew channel to ${channel.playerName}.{/${CALL_COLOR}-fg}`;
|
|
18
|
+
}
|
|
10
19
|
return `You're not on a call.`;
|
|
11
20
|
}
|
|
12
21
|
this.actor.activeCallPartner = undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"end-call.js","sourceRoot":"","sources":["../../../../../../../src/commands/game/sideQuest/commands/end-call.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAY,MAAM,cAAc,CAAC;AACjD,OAAO,EAAE,GAAG,EAAE,MAAM,kBAAkB,CAAC;AACvC,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAEnE,MAAM,OAAO,cAAe,SAAQ,OAAO;IAC/B,MAAM,CAAC,IAAI,GAAG,UAAU,CAAC;IACzB,MAAM,CAAC,WAAW,GAAG,qCAAqC,CAAC;IAErE,KAAK,CAAC,OAAO;QACX,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC;QAC7C,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,uBAAuB,CAAC;QACjC,CAAC;QAED,IAAI,CAAC,KAAK,CAAC,iBAAiB,GAAG,SAAS,CAAC;QACzC,OAAO,CAAC,iBAAiB,GAAG,SAAS,CAAC;QAEtC,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,WAAW,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;QACpD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,uBAAuB,OAAO,CAAC,IAAI,GAAG,CAAC,CAAC;QAE5E,oEAAoE;QACpE,wEAAwE;QACxE,sEAAsE;QACtE,mEAAmE;QACnE,gEAAgE;QAChE,IAAI,IAAI,CAAC,KAAK,YAAY,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,OAAO,CAAC,EAAE,CAAC;YACvE,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,GAAG,SAAS,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,iBAAiB,EAAE,UAAU,CAAC,CAAC;QACzF,CAAC;QAED,oEAAoE;QACpE,oEAAoE;QACpE,iEAAiE;QACjE,4BAA4B;QAC5B,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC;QAE1B,OAAO,IAAI,UAAU,OAAO,SAAS,0BAA0B,OAAO,CAAC,IAAI,MAAM,UAAU,MAAM,CAAC;IACpG,CAAC"}
|
|
1
|
+
{"version":3,"file":"end-call.js","sourceRoot":"","sources":["../../../../../../../src/commands/game/sideQuest/commands/end-call.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAY,MAAM,cAAc,CAAC;AACjD,OAAO,EAAE,GAAG,EAAE,MAAM,kBAAkB,CAAC;AACvC,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAEnE,MAAM,OAAO,cAAe,SAAQ,OAAO;IAC/B,MAAM,CAAC,IAAI,GAAG,UAAU,CAAC;IACzB,MAAM,CAAC,WAAW,GAAG,qCAAqC,CAAC;IAErE,KAAK,CAAC,OAAO;QACX,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC;QAC7C,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,gEAAgE;YAChE,kEAAkE;YAClE,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC;YACvC,IAAI,OAAO,EAAE,CAAC;gBACZ,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,SAAS,CAAC;gBACnC,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,WAAW,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC;gBAC1D,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC;gBAC1B,OAAO,IAAI,UAAU,OAAO,SAAS,kCAAkC,OAAO,CAAC,UAAU,MAAM,UAAU,MAAM,CAAC;YAClH,CAAC;YACD,OAAO,uBAAuB,CAAC;QACjC,CAAC;QAED,IAAI,CAAC,KAAK,CAAC,iBAAiB,GAAG,SAAS,CAAC;QACzC,OAAO,CAAC,iBAAiB,GAAG,SAAS,CAAC;QAEtC,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,WAAW,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;QACpD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,uBAAuB,OAAO,CAAC,IAAI,GAAG,CAAC,CAAC;QAE5E,oEAAoE;QACpE,wEAAwE;QACxE,sEAAsE;QACtE,mEAAmE;QACnE,gEAAgE;QAChE,IAAI,IAAI,CAAC,KAAK,YAAY,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,OAAO,CAAC,EAAE,CAAC;YACvE,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,GAAG,SAAS,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,iBAAiB,EAAE,UAAU,CAAC,CAAC;QACzF,CAAC;QAED,oEAAoE;QACpE,oEAAoE;QACpE,iEAAiE;QACjE,4BAA4B;QAC5B,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC;QAE1B,OAAO,IAAI,UAAU,OAAO,SAAS,0BAA0B,OAAO,CAAC,IAAI,MAAM,UAAU,MAAM,CAAC;IACpG,CAAC"}
|
|
@@ -12,7 +12,7 @@ import { authToken } from '../utilities/cloud-saves.js';
|
|
|
12
12
|
*/
|
|
13
13
|
export class PlayersCommand extends Command {
|
|
14
14
|
static verb = 'players';
|
|
15
|
-
static description = 'Real runners on the street (via maka-cli.com), by street name. Online means their commlink is live -- unequip it or run silent and you vanish. "crew invite <runner>" offers a seat; "call <runner>
|
|
15
|
+
static description = 'Real runners on the street (via maka-cli.com), by street name. Online means their commlink is live -- unequip it or run silent and you vanish. "crew invite <runner>" offers a seat; "call <runner>" rings them on the crew channel (then "say" talks).';
|
|
16
16
|
async execute(_args = []) {
|
|
17
17
|
const game = this.game;
|
|
18
18
|
if (!game?.hasHub) {
|
|
@@ -48,7 +48,7 @@ export class PlayersCommand extends Command {
|
|
|
48
48
|
lines.push(` ${p.playerName.padEnd(18)} ${(p.archetypeName ?? '?').padEnd(16)} ${String(p.karma).padStart(5)} ${status}`);
|
|
49
49
|
}
|
|
50
50
|
}
|
|
51
|
-
const footer = hint(`"crew invite <runner>" offers a FRIEND a seat at your table (they accept from their own terminal); "hire <runner>" signs a hireable one as an AI-driven GHOST; "call <runner>
|
|
51
|
+
const footer = hint(`"crew invite <runner>" offers a FRIEND a seat at your table (they accept from their own terminal); "hire <runner>" signs a hireable one as an AI-driven GHOST; "call <runner>" rings them on the crew channel -- then "say" talks, "end-call" hangs up.`);
|
|
52
52
|
if (footer)
|
|
53
53
|
lines.push('', footer);
|
|
54
54
|
return lines.join('\n');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"players.js","sourceRoot":"","sources":["../../../../../../../src/commands/game/sideQuest/commands/players.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAY,MAAM,cAAc,CAAC;AACjD,OAAO,EAAE,IAAI,EAAE,MAAM,uBAAuB,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AAExD;;;;;;;GAOG;AACH,MAAM,OAAO,cAAe,SAAQ,OAAO;IAC/B,MAAM,CAAC,IAAI,GAAG,SAAS,CAAC;IACxB,MAAM,CAAC,WAAW,GAAG,
|
|
1
|
+
{"version":3,"file":"players.js","sourceRoot":"","sources":["../../../../../../../src/commands/game/sideQuest/commands/players.ts"],"names":[],"mappings":"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"}
|
|
@@ -27,9 +27,9 @@ export class SayCommand extends Command {
|
|
|
27
27
|
// this.actor is *not* an instance of NPC. While on a call, tag this
|
|
28
28
|
// the same way as call.ts's own confirmation, so a conversation over
|
|
29
29
|
// comms visually reads as a different "space" than in-person speech.
|
|
30
|
-
const inCall = !!currentPlayer.activeCallPartner;
|
|
30
|
+
const inCall = !!currentPlayer.activeCallPartner || !!currentPlayer.crewChannel;
|
|
31
31
|
const prefix = inCall ? `${CALL_ICON} ` : '';
|
|
32
|
-
this.logger.logWithColor(`${prefix}${message}`, inCall ? CALL_COLOR : 'yellow');
|
|
32
|
+
this.logger.logWithColor(`${prefix}${message}`, inCall ? CALL_COLOR : 'yellow', { actor: currentPlayer.name });
|
|
33
33
|
}
|
|
34
34
|
// "say" and "call" are deliberately similar -- once a call connects
|
|
35
35
|
// (see call.ts), the two ends keep talking with the same "say" command
|
|
@@ -72,6 +72,41 @@ export class SayCommand extends Command {
|
|
|
72
72
|
this.logger.logWithColor(sealed, 'green');
|
|
73
73
|
}
|
|
74
74
|
}
|
|
75
|
+
else if (currentPlayer.crewChannel) {
|
|
76
|
+
// ON THE CREW CHANNEL (M4.5.1): the partner is a REAL player who
|
|
77
|
+
// isn't in this scene -- the words go out as a page over the
|
|
78
|
+
// street transport instead of an in-scene hear. Fire-and-forget
|
|
79
|
+
// like partner delivery: the send is a network round trip and the
|
|
80
|
+
// local echo already printed above.
|
|
81
|
+
const channel = currentPlayer.crewChannel;
|
|
82
|
+
void this.game?.streetTransport().then(async (transport) => {
|
|
83
|
+
if (!transport) {
|
|
84
|
+
this.logger.logWithColor(`The crew channel is dead air -- your words go nowhere.`, 'yellow', { actor: currentPlayer.name });
|
|
85
|
+
return;
|
|
86
|
+
}
|
|
87
|
+
try {
|
|
88
|
+
const res = await transport.send({ from: currentPlayer.name, handle: channel.handle, text: message });
|
|
89
|
+
if (!res.online) {
|
|
90
|
+
this.logger.logWithColor(`(${res.toRunner} is off the street -- it'll be waiting on their link.)`, 'yellow', { actor: currentPlayer.name });
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
catch (err) {
|
|
94
|
+
const e = err;
|
|
95
|
+
this.logger.logWithColor(`The crew channel chokes (${e.reason ?? e.message ?? 'dead air'}).`, 'yellow', { actor: currentPlayer.name });
|
|
96
|
+
}
|
|
97
|
+
this.game?.screenRender?.();
|
|
98
|
+
}).catch(() => undefined);
|
|
99
|
+
// Bystanders overhear one side of the call, same as an in-scene
|
|
100
|
+
// call (see the partner branch above).
|
|
101
|
+
const overheard = `${message} [System note: ${currentPlayer.name} is speaking into their commlink -- you're overhearing ONE SIDE of someone else's call, not being addressed. It's not your conversation: stay silent unless what you overheard genuinely concerns you.]`;
|
|
102
|
+
for (const bystander of currentPlayer.currentLocation.getActors()) {
|
|
103
|
+
if (bystander === currentPlayer)
|
|
104
|
+
continue;
|
|
105
|
+
void Promise.resolve(bystander.hear(currentPlayer, overheard, { broadcast: true })).catch(err => {
|
|
106
|
+
this.logger.error(`${bystander.name} failed to overhear the call: ${err}`);
|
|
107
|
+
});
|
|
108
|
+
}
|
|
109
|
+
}
|
|
75
110
|
else {
|
|
76
111
|
// Not on a call: ordinary room speech, addressed to the room.
|
|
77
112
|
currentPlayer.currentLocation.say(currentPlayer, message);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"say.js","sourceRoot":"","sources":["../../../../../../../src/commands/game/sideQuest/commands/say.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAuB,MAAM,cAAc,CAAC;AAC5D,OAAO,EAAE,GAAG,EAAE,MAAM,kBAAkB,CAAC;AACvC,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAE,WAAW,EAAE,MAAM,sCAAsC,CAAC;AAEnE,MAAM,OAAO,UAAW,SAAQ,OAAO;IAC3B,MAAM,CAAC,IAAI,GAAG,KAAK,CAAC;IACpB,MAAM,CAAC,WAAW,GAAG,sDAAsD,CAAC;IAC5E,OAAO,CAAsB;IAEvC,YAAY,OAA4B;QACtC,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,IAAc;QAC1B,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC/B,OAAO,0BAA0B,CAAC;QACpC,CAAC;QAED,MAAM,OAAO,GAAG,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;QAChC,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC;QACjC,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC;QAEjC,iDAAiD;QACjD,aAAa,CAAC,QAAQ,GAAG,KAAK,CAAC;QAE/B,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC;YAClD,OAAO,oBAAoB,CAAC;QAC9B,CAAC;QAED,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,YAAY,GAAG,CAAC,EAAE,CAAC;YACjC,oEAAoE;YACpE,qEAAqE;YACrE,qEAAqE;YACrE,MAAM,MAAM,GAAG,CAAC,CAAC,aAAa,CAAC,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"say.js","sourceRoot":"","sources":["../../../../../../../src/commands/game/sideQuest/commands/say.ts"],"names":[],"mappings":"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"}
|
|
@@ -375,6 +375,44 @@ export default class Game {
|
|
|
375
375
|
remoteSession?: {
|
|
376
376
|
command(input: string): Promise<string | null>;
|
|
377
377
|
};
|
|
378
|
+
/**
|
|
379
|
+
* THE STREET TRANSPORT (M4.5.1): how this engine reaches real players
|
|
380
|
+
* OUTSIDE the scene -- the crew-channel page rails behind call.ts and
|
|
381
|
+
* say.ts. Unset on the CLI (streetTransport() lazily wires the
|
|
382
|
+
* HubLink/REST default -- those modules must never enter the server's
|
|
383
|
+
* import graph); the server session-manager sets both hooks to talk
|
|
384
|
+
* to GameSocialPresence/GamePlayerPages directly, so paging works
|
|
385
|
+
* from inside a shared run too. `from` names the SENDING actor --
|
|
386
|
+
* multi-human server scenes resolve it to the right account.
|
|
387
|
+
*/
|
|
388
|
+
listStreetPlayers?: (from: string) => Promise<{
|
|
389
|
+
playerName: string;
|
|
390
|
+
handle: string;
|
|
391
|
+
}[]>;
|
|
392
|
+
sendPage?: (opts: {
|
|
393
|
+
from: string;
|
|
394
|
+
handle: string;
|
|
395
|
+
text: string;
|
|
396
|
+
}) => Promise<{
|
|
397
|
+
online: boolean;
|
|
398
|
+
toRunner: string;
|
|
399
|
+
}>;
|
|
400
|
+
/** The transport, hooks-first, CLI default second; undefined =
|
|
401
|
+
* offline/logged out/classic mode (callers degrade quietly). */
|
|
402
|
+
streetTransport(): Promise<{
|
|
403
|
+
list: (from: string) => Promise<{
|
|
404
|
+
playerName: string;
|
|
405
|
+
handle: string;
|
|
406
|
+
}[]>;
|
|
407
|
+
send: (opts: {
|
|
408
|
+
from: string;
|
|
409
|
+
handle: string;
|
|
410
|
+
text: string;
|
|
411
|
+
}) => Promise<{
|
|
412
|
+
online: boolean;
|
|
413
|
+
toRunner: string;
|
|
414
|
+
}>;
|
|
415
|
+
} | undefined>;
|
|
378
416
|
/** Trash the offer wholesale ("decline", and any future fixer snub). */
|
|
379
417
|
clearPendingRun(): void;
|
|
380
418
|
get pendingRun(): ISceneSeedJson | undefined;
|
|
@@ -1190,6 +1190,39 @@ export default class Game {
|
|
|
1190
1190
|
* utilities/shared-run.ts.
|
|
1191
1191
|
*/
|
|
1192
1192
|
remoteSession;
|
|
1193
|
+
/**
|
|
1194
|
+
* THE STREET TRANSPORT (M4.5.1): how this engine reaches real players
|
|
1195
|
+
* OUTSIDE the scene -- the crew-channel page rails behind call.ts and
|
|
1196
|
+
* say.ts. Unset on the CLI (streetTransport() lazily wires the
|
|
1197
|
+
* HubLink/REST default -- those modules must never enter the server's
|
|
1198
|
+
* import graph); the server session-manager sets both hooks to talk
|
|
1199
|
+
* to GameSocialPresence/GamePlayerPages directly, so paging works
|
|
1200
|
+
* from inside a shared run too. `from` names the SENDING actor --
|
|
1201
|
+
* multi-human server scenes resolve it to the right account.
|
|
1202
|
+
*/
|
|
1203
|
+
listStreetPlayers;
|
|
1204
|
+
sendPage;
|
|
1205
|
+
/** The transport, hooks-first, CLI default second; undefined =
|
|
1206
|
+
* offline/logged out/classic mode (callers degrade quietly). */
|
|
1207
|
+
async streetTransport() {
|
|
1208
|
+
if (this.listStreetPlayers && this.sendPage) {
|
|
1209
|
+
return { list: this.listStreetPlayers, send: this.sendPage };
|
|
1210
|
+
}
|
|
1211
|
+
if (!this.hasHub)
|
|
1212
|
+
return undefined; // classic mode: no street
|
|
1213
|
+
const { authToken } = await import('./utilities/cloud-saves.js');
|
|
1214
|
+
if (!authToken())
|
|
1215
|
+
return undefined;
|
|
1216
|
+
const { fetchPlayers } = await import('./utilities/social.js');
|
|
1217
|
+
const sr = await import('./utilities/shared-run.js');
|
|
1218
|
+
return {
|
|
1219
|
+
list: async () => {
|
|
1220
|
+
const players = await fetchPlayers().catch(() => undefined);
|
|
1221
|
+
return (players ?? []).map(p => ({ playerName: p.playerName, handle: p.handle }));
|
|
1222
|
+
},
|
|
1223
|
+
send: ({ handle, text }) => sr.HubLink.call('sideQuest.page', { handle, text }),
|
|
1224
|
+
};
|
|
1225
|
+
}
|
|
1193
1226
|
/** Trash the offer wholesale ("decline", and any future fixer snub). */
|
|
1194
1227
|
clearPendingRun() {
|
|
1195
1228
|
if (this.pendingSharedRun) {
|
|
@@ -2826,6 +2859,9 @@ ${client.name} won't be remembering anything. Dead Johnsons pay nothing -- and t
|
|
|
2826
2859
|
if (player.activeCallPartner) {
|
|
2827
2860
|
lines.push(`{${CALL_COLOR}-fg}${CALL_ICON} On a call with ${player.activeCallPartner.name}{/${CALL_COLOR}-fg}`);
|
|
2828
2861
|
}
|
|
2862
|
+
if (player.crewChannel) {
|
|
2863
|
+
lines.push(`{${CALL_COLOR}-fg}${CALL_ICON} Crew channel open to ${player.crewChannel.playerName}${hint(' -- "say" talks, "end-call" hangs up')}{/${CALL_COLOR}-fg}`);
|
|
2864
|
+
}
|
|
2829
2865
|
// The party: one line per live companion shell, with the tracks that
|
|
2830
2866
|
// matter for its kind. A spirit shows its BODY too (it's a full
|
|
2831
2867
|
// Force-statted combatant and hits land on it -- player request:
|