@sagl/server 0.0.0-stage → 0.1.0-next.51
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +61 -2
- package/dist/actions.d.ts +46 -0
- package/dist/actions.js +80 -0
- package/dist/actions.js.map +1 -0
- package/dist/animations.d.ts +32 -0
- package/dist/animations.js +95 -0
- package/dist/animations.js.map +1 -0
- package/dist/audio.d.ts +180 -0
- package/dist/audio.js +353 -0
- package/dist/audio.js.map +1 -0
- package/dist/audio_effects.d.ts +219 -0
- package/dist/audio_effects.js +84 -0
- package/dist/audio_effects.js.map +1 -0
- package/dist/camera.d.ts +188 -0
- package/dist/camera.js +247 -0
- package/dist/camera.js.map +1 -0
- package/dist/claims.d.ts +27 -0
- package/dist/claims.js +48 -0
- package/dist/claims.js.map +1 -0
- package/dist/commands.d.ts +135 -0
- package/dist/commands.js +373 -0
- package/dist/commands.js.map +1 -0
- package/dist/console.d.ts +21 -0
- package/dist/console.js +100 -0
- package/dist/console.js.map +1 -0
- package/dist/constants.d.ts +654 -0
- package/dist/constants.js +657 -0
- package/dist/constants.js.map +1 -0
- package/dist/cutscene.d.ts +47 -0
- package/dist/cutscene.js +190 -0
- package/dist/cutscene.js.map +1 -0
- package/dist/draw.d.ts +106 -0
- package/dist/draw.js +132 -0
- package/dist/draw.js.map +1 -0
- package/dist/effects.d.ts +91 -0
- package/dist/effects.js +116 -0
- package/dist/effects.js.map +1 -0
- package/dist/gangzones.d.ts +47 -0
- package/dist/gangzones.js +122 -0
- package/dist/gangzones.js.map +1 -0
- package/dist/geo.d.ts +11 -0
- package/dist/geo.js +25 -0
- package/dist/geo.js.map +1 -0
- package/dist/hud.d.ts +159 -0
- package/dist/hud.js +247 -0
- package/dist/hud.js.map +1 -0
- package/dist/index.d.ts +40 -0
- package/dist/index.js +43 -0
- package/dist/index.js.map +1 -0
- package/dist/interaction.d.ts +81 -0
- package/dist/interaction.js +143 -0
- package/dist/interaction.js.map +1 -0
- package/dist/junctions.d.ts +1 -0
- package/dist/junctions.js +330 -0
- package/dist/junctions.js.map +1 -0
- package/dist/map.d.ts +55 -0
- package/dist/map.js +71 -0
- package/dist/map.js.map +1 -0
- package/dist/menu.d.ts +96 -0
- package/dist/menu.js +129 -0
- package/dist/menu.js.map +1 -0
- package/dist/mission.d.ts +482 -0
- package/dist/mission.js +1258 -0
- package/dist/mission.js.map +1 -0
- package/dist/models.d.ts +56 -0
- package/dist/models.js +71 -0
- package/dist/models.js.map +1 -0
- package/dist/modshop.d.ts +229 -0
- package/dist/modshop.js +904 -0
- package/dist/modshop.js.map +1 -0
- package/dist/modshop_data.d.ts +44 -0
- package/dist/modshop_data.js +287 -0
- package/dist/modshop_data.js.map +1 -0
- package/dist/native.d.ts +809 -0
- package/dist/native.js +27 -0
- package/dist/native.js.map +1 -0
- package/dist/objects.d.ts +249 -0
- package/dist/objects.js +455 -0
- package/dist/objects.js.map +1 -0
- package/dist/paint.d.ts +124 -0
- package/dist/paint.js +84 -0
- package/dist/paint.js.map +1 -0
- package/dist/paynspray.d.ts +44 -0
- package/dist/paynspray.js +177 -0
- package/dist/paynspray.js.map +1 -0
- package/dist/ped.d.ts +335 -0
- package/dist/ped.js +536 -0
- package/dist/ped.js.map +1 -0
- package/dist/player.d.ts +685 -0
- package/dist/player.js +1163 -0
- package/dist/player.js.map +1 -0
- package/dist/screeneffects.d.ts +99 -0
- package/dist/screeneffects.js +257 -0
- package/dist/screeneffects.js.map +1 -0
- package/dist/scripts.d.ts +69 -0
- package/dist/scripts.js +125 -0
- package/dist/scripts.js.map +1 -0
- package/dist/server.d.ts +713 -0
- package/dist/server.js +1080 -0
- package/dist/server.js.map +1 -0
- package/dist/shopblips.d.ts +9 -0
- package/dist/shopblips.js +30 -0
- package/dist/shopblips.js.map +1 -0
- package/dist/special.d.ts +33 -0
- package/dist/special.js +26 -0
- package/dist/special.js.map +1 -0
- package/dist/splash.d.ts +42 -0
- package/dist/splash.js +55 -0
- package/dist/splash.js.map +1 -0
- package/dist/text.d.ts +19 -0
- package/dist/text.js +25 -0
- package/dist/text.js.map +1 -0
- package/dist/ui.d.ts +141 -0
- package/dist/ui.js +243 -0
- package/dist/ui.js.map +1 -0
- package/dist/vehicle.d.ts +306 -0
- package/dist/vehicle.js +612 -0
- package/dist/vehicle.js.map +1 -0
- package/dist/vehiclecolors.d.ts +26 -0
- package/dist/vehiclecolors.js +49 -0
- package/dist/vehiclecolors.js.map +1 -0
- package/dist/world.d.ts +222 -0
- package/dist/world.js +227 -0
- package/dist/world.js.map +1 -0
- package/dist/zone.d.ts +89 -0
- package/dist/zone.js +140 -0
- package/dist/zone.js.map +1 -0
- package/package.json +33 -4
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { Vector3 } from "./player.js";
|
|
2
|
+
import type { Server } from "./server.js";
|
|
3
|
+
/** @internal */
|
|
4
|
+
export declare class ShopBlips {
|
|
5
|
+
#private;
|
|
6
|
+
constructor(server: Server, sprite: number, spots: () => Vector3[]);
|
|
7
|
+
/** The shops changed: everyone's again. */
|
|
8
|
+
refresh(): void;
|
|
9
|
+
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
// The game's short-range blips for its shops and garages (a spray can over
|
|
2
|
+
// each Pay 'n' Spray, ...), on every player's radar: given them as they
|
|
3
|
+
// join, and again when the shops change (turned on or off, some closed).
|
|
4
|
+
/** @internal */
|
|
5
|
+
export class ShopBlips {
|
|
6
|
+
#sprite;
|
|
7
|
+
#spots;
|
|
8
|
+
#blips = new Map();
|
|
9
|
+
#server;
|
|
10
|
+
constructor(server, sprite, spots) {
|
|
11
|
+
this.#server = server;
|
|
12
|
+
this.#sprite = sprite;
|
|
13
|
+
this.#spots = spots;
|
|
14
|
+
server.on("playerJoin", (p) => this.#give(p));
|
|
15
|
+
server.on("playerQuit", (p) => {
|
|
16
|
+
this.#blips.delete(p);
|
|
17
|
+
});
|
|
18
|
+
}
|
|
19
|
+
/** The shops changed: everyone's again. */
|
|
20
|
+
refresh() {
|
|
21
|
+
for (const p of this.#server.players)
|
|
22
|
+
this.#give(p);
|
|
23
|
+
}
|
|
24
|
+
#give(player) {
|
|
25
|
+
for (const b of this.#blips.get(player) ?? [])
|
|
26
|
+
b.remove();
|
|
27
|
+
this.#blips.set(player, this.#spots().map((at) => player.hud.blip(at, { sprite: this.#sprite, display: "blip", shortRange: true })));
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
//# sourceMappingURL=shopblips.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"shopblips.js","sourceRoot":"","sources":["../src/shopblips.ts"],"names":[],"mappings":"AAAA,2EAA2E;AAC3E,wEAAwE;AACxE,yEAAyE;AAMzE,gBAAgB;AAChB,MAAM,OAAO,SAAS;IACpB,OAAO,CAAS;IAChB,MAAM,CAAkB;IACxB,MAAM,GAAG,IAAI,GAAG,EAAkB,CAAC;IACnC,OAAO,CAAS;IAEhB,YAAY,MAAc,EAAE,MAAc,EAAE,KAAsB;QAChE,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACtB,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACtB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpB,MAAM,CAAC,EAAE,CAAC,YAAY,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QAC9C,MAAM,CAAC,EAAE,CAAC,YAAY,EAAE,CAAC,CAAC,EAAE,EAAE;YAC5B,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QACxB,CAAC,CAAC,CAAC;IACL,CAAC;IAED,2CAA2C;IAC3C,OAAO;QACL,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO;YAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACtD,CAAC;IAED,KAAK,CAAC,MAAc;QAClB,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE;YAAE,CAAC,CAAC,MAAM,EAAE,CAAC;QAC1D,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAC/C,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IACvF,CAAC;CACF"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import type { Vector3 } from "./player.js";
|
|
2
|
+
/** What `player.specialAction` takes. */
|
|
3
|
+
export type SpecialAction = "drinkBeer" | "drinkWine" | "drinkSprunk" | "smoke" | "phone" | "handsUp" | "dance1" | "dance2" | "dance3" | "dance4" | "piss" | "carry" | "jetpack";
|
|
4
|
+
/** @internal */
|
|
5
|
+
export interface SpecialPreset {
|
|
6
|
+
/** Kept on them: a looping (or held) animation, and/or a jetpack. */
|
|
7
|
+
loop?: {
|
|
8
|
+
block: string;
|
|
9
|
+
name: string;
|
|
10
|
+
upperBody?: boolean;
|
|
11
|
+
hold?: boolean;
|
|
12
|
+
};
|
|
13
|
+
jetpack?: boolean;
|
|
14
|
+
/** Held: on a bone (`Bone`), offset and turned from it. */
|
|
15
|
+
prop?: {
|
|
16
|
+
model: number;
|
|
17
|
+
bone: number;
|
|
18
|
+
offset: Vector3;
|
|
19
|
+
rotation: Vector3;
|
|
20
|
+
};
|
|
21
|
+
/** Fire plays this (upper body), and raises their drunk level this much. */
|
|
22
|
+
use?: {
|
|
23
|
+
block: string;
|
|
24
|
+
name: string;
|
|
25
|
+
drunk?: number;
|
|
26
|
+
};
|
|
27
|
+
/** Enter/exit drops it (the action ends). */
|
|
28
|
+
drop?: boolean;
|
|
29
|
+
}
|
|
30
|
+
/** @internal */
|
|
31
|
+
export declare const specialPresets: Record<SpecialAction, SpecialPreset>;
|
|
32
|
+
/** @internal The attachment slot a special action's prop takes (past scripts' 0-9). */
|
|
33
|
+
export declare const kSpecialSlot = 10;
|
package/dist/special.js
ADDED
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
// Special actions (SA-MP's SetPlayerSpecialAction): a pose, a prop in the
|
|
2
|
+
// hand and what their keys do meanwhile, as presets over SAGL's own
|
|
3
|
+
// animations, kept loops (PlayerLoop) and attachments.
|
|
4
|
+
const kLeftHand = 5, kRightHand = 6;
|
|
5
|
+
const hand = (model, bone, offset, rotation) => ({ model, bone, offset, rotation });
|
|
6
|
+
// In the left hand, as the vending machines' can (their drinking animation's hand).
|
|
7
|
+
const bottle = (model) => hand(model, kLeftHand, { x: 0.062, y: 0.09, z: 0 }, { x: 0, y: 0, z: 0 });
|
|
8
|
+
/** @internal */
|
|
9
|
+
export const specialPresets = {
|
|
10
|
+
drinkBeer: { prop: bottle(1486), use: { block: "VENDING", name: "VEND_Drink2_P", drunk: 250 }, drop: true },
|
|
11
|
+
drinkWine: { prop: bottle(1487), use: { block: "VENDING", name: "VEND_Drink2_P", drunk: 500 }, drop: true },
|
|
12
|
+
drinkSprunk: { prop: bottle(2601), use: { block: "VENDING", name: "VEND_Drink2_P" }, drop: true },
|
|
13
|
+
smoke: { prop: hand(1485, kRightHand, { x: 0, y: 0, z: 0 }, { x: 0, y: 0, z: 0 }), use: { block: "GANGS", name: "smkcig_prtl" }, drop: true },
|
|
14
|
+
phone: { prop: hand(330, kRightHand, { x: 0, y: 0, z: 0 }, { x: 0, y: 0, z: 0 }), loop: { block: "PED", name: "phone_talk", upperBody: true } },
|
|
15
|
+
handsUp: { loop: { block: "ROB_BANK", name: "SHP_HandsUp_Scr", hold: true } },
|
|
16
|
+
dance1: { loop: { block: "DANCING", name: "dnce_M_a" } },
|
|
17
|
+
dance2: { loop: { block: "DANCING", name: "dnce_M_b" } },
|
|
18
|
+
dance3: { loop: { block: "DANCING", name: "dnce_M_c" } },
|
|
19
|
+
dance4: { loop: { block: "DANCING", name: "dnce_M_d" } },
|
|
20
|
+
piss: { loop: { block: "PAULNMAC", name: "Piss_loop" } },
|
|
21
|
+
carry: { loop: { block: "CARRY", name: "crry_prtial", upperBody: true } },
|
|
22
|
+
jetpack: { jetpack: true },
|
|
23
|
+
};
|
|
24
|
+
/** @internal The attachment slot a special action's prop takes (past scripts' 0-9). */
|
|
25
|
+
export const kSpecialSlot = 10;
|
|
26
|
+
//# sourceMappingURL=special.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"special.js","sourceRoot":"","sources":["../src/special.ts"],"names":[],"mappings":"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"}
|
package/dist/splash.d.ts
ADDED
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import type { NativeServer } from "./native.js";
|
|
2
|
+
/**
|
|
3
|
+
* A player's splash screen (`player.splash`): their loading screen (the
|
|
4
|
+
* server's branding: background, logo, name), kept up or shown again while
|
|
5
|
+
* you set the scene behind it. Their game's sound is muted while it shows;
|
|
6
|
+
* hiding it fades the screen out and the sound back in together.
|
|
7
|
+
*
|
|
8
|
+
* With the server option `splash`, it stays up from joining until you hide
|
|
9
|
+
* it: put them where they belong, set the camera, then reveal it.
|
|
10
|
+
*
|
|
11
|
+
* ```ts
|
|
12
|
+
* server.on("playerSpawn", (player) => {
|
|
13
|
+
* player.world = 100 + player.id;
|
|
14
|
+
* player.setPosition(LOGIN_SPOT);
|
|
15
|
+
* void player.camera.set(LOGIN_SHOT);
|
|
16
|
+
* player.splash.hide(); // fades out over a second
|
|
17
|
+
* });
|
|
18
|
+
*
|
|
19
|
+
* // Later: covering a move across the map.
|
|
20
|
+
* player.splash.show({ text: "Taking you to your house..." });
|
|
21
|
+
* player.setPosition(house.entrance);
|
|
22
|
+
* setTimeout(() => player.splash.hide(), 1500);
|
|
23
|
+
* ```
|
|
24
|
+
*/
|
|
25
|
+
export declare class PlayerSplash {
|
|
26
|
+
#private;
|
|
27
|
+
/** @internal */
|
|
28
|
+
constructor(native: NativeServer, player: number, visible: boolean);
|
|
29
|
+
/** @internal Whether it's been hidden since they joined. */
|
|
30
|
+
get everHidden(): boolean;
|
|
31
|
+
/** Whether it's up (or fading in). */
|
|
32
|
+
get visible(): boolean;
|
|
33
|
+
/** Shows it, fading in over `fadeMs` (default 300), with `text` under the name. */
|
|
34
|
+
show(options?: {
|
|
35
|
+
text?: string;
|
|
36
|
+
fadeMs?: number;
|
|
37
|
+
}): void;
|
|
38
|
+
/** Fades it out over `fadeMs` (default 1000), the sound back in with it. */
|
|
39
|
+
hide(options?: {
|
|
40
|
+
fadeMs?: number;
|
|
41
|
+
}): void;
|
|
42
|
+
}
|
package/dist/splash.js
ADDED
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A player's splash screen (`player.splash`): their loading screen (the
|
|
3
|
+
* server's branding: background, logo, name), kept up or shown again while
|
|
4
|
+
* you set the scene behind it. Their game's sound is muted while it shows;
|
|
5
|
+
* hiding it fades the screen out and the sound back in together.
|
|
6
|
+
*
|
|
7
|
+
* With the server option `splash`, it stays up from joining until you hide
|
|
8
|
+
* it: put them where they belong, set the camera, then reveal it.
|
|
9
|
+
*
|
|
10
|
+
* ```ts
|
|
11
|
+
* server.on("playerSpawn", (player) => {
|
|
12
|
+
* player.world = 100 + player.id;
|
|
13
|
+
* player.setPosition(LOGIN_SPOT);
|
|
14
|
+
* void player.camera.set(LOGIN_SHOT);
|
|
15
|
+
* player.splash.hide(); // fades out over a second
|
|
16
|
+
* });
|
|
17
|
+
*
|
|
18
|
+
* // Later: covering a move across the map.
|
|
19
|
+
* player.splash.show({ text: "Taking you to your house..." });
|
|
20
|
+
* player.setPosition(house.entrance);
|
|
21
|
+
* setTimeout(() => player.splash.hide(), 1500);
|
|
22
|
+
* ```
|
|
23
|
+
*/
|
|
24
|
+
export class PlayerSplash {
|
|
25
|
+
#native;
|
|
26
|
+
#player;
|
|
27
|
+
#visible;
|
|
28
|
+
#hidden = false;
|
|
29
|
+
/** @internal */
|
|
30
|
+
constructor(native, player, visible) {
|
|
31
|
+
this.#native = native;
|
|
32
|
+
this.#player = player;
|
|
33
|
+
this.#visible = visible;
|
|
34
|
+
}
|
|
35
|
+
/** @internal Whether it's been hidden since they joined. */
|
|
36
|
+
get everHidden() {
|
|
37
|
+
return this.#hidden;
|
|
38
|
+
}
|
|
39
|
+
/** Whether it's up (or fading in). */
|
|
40
|
+
get visible() {
|
|
41
|
+
return this.#visible;
|
|
42
|
+
}
|
|
43
|
+
/** Shows it, fading in over `fadeMs` (default 300), with `text` under the name. */
|
|
44
|
+
show(options = {}) {
|
|
45
|
+
this.#visible = true;
|
|
46
|
+
this.#native.splash(this.#player, true, Math.max(0, Math.trunc(options.fadeMs ?? 300)), (options.text ?? "").slice(0, 128));
|
|
47
|
+
}
|
|
48
|
+
/** Fades it out over `fadeMs` (default 1000), the sound back in with it. */
|
|
49
|
+
hide(options = {}) {
|
|
50
|
+
this.#visible = false;
|
|
51
|
+
this.#hidden = true;
|
|
52
|
+
this.#native.splash(this.#player, false, Math.max(0, Math.trunc(options.fadeMs ?? 1000)), "");
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
//# sourceMappingURL=splash.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"splash.js","sourceRoot":"","sources":["../src/splash.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,MAAM,OAAO,YAAY;IACvB,OAAO,CAAe;IACtB,OAAO,CAAS;IAChB,QAAQ,CAAU;IAClB,OAAO,GAAG,KAAK,CAAC;IAEhB,gBAAgB;IAChB,YAAY,MAAoB,EAAE,MAAc,EAAE,OAAgB;QAChE,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACtB,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACtB,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;IAC1B,CAAC;IAED,4DAA4D;IAC5D,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED,sCAAsC;IACtC,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAED,mFAAmF;IACnF,IAAI,CAAC,UAA8C,EAAE;QACnD,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QACrB,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,IAAI,GAAG,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;IAC9H,CAAC;IAED,4EAA4E;IAC5E,IAAI,CAAC,UAA+B,EAAE;QACpC,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;QACtB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACpB,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,IAAI,IAAI,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAChG,CAAC;CACF"}
|
package/dist/text.d.ts
ADDED
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The game's own text, by its GXT key, in each player's copy of the game
|
|
3
|
+
* (their language, too): use it anywhere text goes to the screen
|
|
4
|
+
* (objectives, big text, subtitles, `say`, draws, result screens), alone or
|
|
5
|
+
* inside other text.
|
|
6
|
+
*
|
|
7
|
+
* Mission text lives in a mission table (`table`, e.g. "RYDER2"), loaded
|
|
8
|
+
* when needed; the main table's keys need none. `numbers` fill the text's
|
|
9
|
+
* ~1~ placeholders in order. `~k~~ACTION~` codes become the player's keys.
|
|
10
|
+
*
|
|
11
|
+
* ```ts
|
|
12
|
+
* m.objective(gxt("RYD2_01", { table: "RYDER2" }));
|
|
13
|
+
* player.hud.bigText(gxt("M_PASS"));
|
|
14
|
+
* ```
|
|
15
|
+
*/
|
|
16
|
+
export declare function gxt(key: string, options?: {
|
|
17
|
+
table?: string;
|
|
18
|
+
numbers?: number[];
|
|
19
|
+
}): string;
|
package/dist/text.js
ADDED
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The game's own text, by its GXT key, in each player's copy of the game
|
|
3
|
+
* (their language, too): use it anywhere text goes to the screen
|
|
4
|
+
* (objectives, big text, subtitles, `say`, draws, result screens), alone or
|
|
5
|
+
* inside other text.
|
|
6
|
+
*
|
|
7
|
+
* Mission text lives in a mission table (`table`, e.g. "RYDER2"), loaded
|
|
8
|
+
* when needed; the main table's keys need none. `numbers` fill the text's
|
|
9
|
+
* ~1~ placeholders in order. `~k~~ACTION~` codes become the player's keys.
|
|
10
|
+
*
|
|
11
|
+
* ```ts
|
|
12
|
+
* m.objective(gxt("RYD2_01", { table: "RYDER2" }));
|
|
13
|
+
* player.hud.bigText(gxt("M_PASS"));
|
|
14
|
+
* ```
|
|
15
|
+
*/
|
|
16
|
+
export function gxt(key, options = {}) {
|
|
17
|
+
const name = /^[A-Za-z0-9_]{1,7}$/;
|
|
18
|
+
if (!name.test(key))
|
|
19
|
+
throw new RangeError(`not a GXT key: "${key}"`);
|
|
20
|
+
if (options.table !== undefined && !name.test(options.table))
|
|
21
|
+
throw new RangeError(`not a GXT table: "${options.table}"`);
|
|
22
|
+
const numbers = (options.numbers ?? []).slice(0, 6).map((n) => `,${Math.trunc(n)}`).join("");
|
|
23
|
+
return `\x01${options.table ? `${options.table}:` : ""}${key}${numbers}\x02`;
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=text.js.map
|
package/dist/text.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"text.js","sourceRoot":"","sources":["../src/text.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,GAAG,CAAC,GAAW,EAAE,UAAkD,EAAE;IACnF,MAAM,IAAI,GAAG,qBAAqB,CAAC;IACnC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;QAAE,MAAM,IAAI,UAAU,CAAC,mBAAmB,GAAG,GAAG,CAAC,CAAC;IACrE,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,MAAM,IAAI,UAAU,CAAC,qBAAqB,OAAO,CAAC,KAAK,GAAG,CAAC,CAAC;IAC1H,MAAM,OAAO,GAAG,CAAC,OAAO,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC7F,OAAO,OAAO,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,GAAG,GAAG,OAAO,MAAM,CAAC;AAC/E,CAAC"}
|
package/dist/ui.d.ts
ADDED
|
@@ -0,0 +1,141 @@
|
|
|
1
|
+
import type { NativeServer, NativeUiEvent } from "./native.js";
|
|
2
|
+
import type { Player } from "./player.js";
|
|
3
|
+
/** What a server-opened document hears back from the player's game. */
|
|
4
|
+
export type UiEventType = "click" | "change" | "submit" | "keydown" | "focus" | "blur" | "mouseover" | "mouseout" | "close";
|
|
5
|
+
export interface UiOpenOptions {
|
|
6
|
+
/** Takes the player's input while shown. Default `true`; `false` for HUDs. */
|
|
7
|
+
input?: boolean;
|
|
8
|
+
/** Shows the mouse cursor. Default: `input`. */
|
|
9
|
+
cursor?: boolean;
|
|
10
|
+
/** Keys go to the document. Default: `input`. */
|
|
11
|
+
keyboard?: boolean;
|
|
12
|
+
/** The gamepad moves focus. Default: `input`. */
|
|
13
|
+
gamepad?: boolean;
|
|
14
|
+
/** Leaves the player's movement to the game. Default `false`. */
|
|
15
|
+
movement?: boolean;
|
|
16
|
+
/** Esc (or gamepad B) closes it. Default `true`. */
|
|
17
|
+
escapeCloses?: boolean;
|
|
18
|
+
}
|
|
19
|
+
export interface UiEvent {
|
|
20
|
+
type: UiEventType;
|
|
21
|
+
/** The document it came from. */
|
|
22
|
+
document: UiDocument;
|
|
23
|
+
player: Player;
|
|
24
|
+
/** The nearest element with an id ("" for none). */
|
|
25
|
+
id: string;
|
|
26
|
+
/** A form control's value (change, submit, click on a control). */
|
|
27
|
+
value: string;
|
|
28
|
+
/** Checkboxes and radio buttons. */
|
|
29
|
+
checked: boolean;
|
|
30
|
+
/** change from a text input: Enter was pressed in it. */
|
|
31
|
+
enter: boolean;
|
|
32
|
+
/** keydown: RmlUi's key identifier. */
|
|
33
|
+
key: number;
|
|
34
|
+
/** submit: the form's controls by name (unchecked boxes left out). */
|
|
35
|
+
fields: Record<string, string>;
|
|
36
|
+
}
|
|
37
|
+
type Handler = (e: UiEvent) => void;
|
|
38
|
+
/**
|
|
39
|
+
* A UI document the server opened on one player: an RML client file the
|
|
40
|
+
* server fills in by element id and hears clicks, changes and submits from.
|
|
41
|
+
* For anything that has to react without a round trip to the server
|
|
42
|
+
* (animation, per-frame updates, client-side logic), use a client script's
|
|
43
|
+
* `sagl.ui` instead.
|
|
44
|
+
*/
|
|
45
|
+
export declare class UiDocument {
|
|
46
|
+
#private;
|
|
47
|
+
readonly id: number;
|
|
48
|
+
/** The client file it was opened from. */
|
|
49
|
+
readonly file: string;
|
|
50
|
+
readonly player: Player;
|
|
51
|
+
/** @internal */
|
|
52
|
+
constructor(ui: PlayerUi, player: Player, id: number, file: string);
|
|
53
|
+
/** False once it's closed (by `close()`, the player, or them leaving). */
|
|
54
|
+
get open(): boolean;
|
|
55
|
+
/** Sets an element's text (shown as text: no markup). */
|
|
56
|
+
setText(id: string, text: unknown): this;
|
|
57
|
+
/** Replaces an element's contents with RML (up to 5 KB). */
|
|
58
|
+
setHtml(id: string, rml: string): this;
|
|
59
|
+
/** A form control's value (`<input>`, `<select>`, `<textarea>`). */
|
|
60
|
+
setValue(id: string, value: unknown): this;
|
|
61
|
+
/** Checks or unchecks a checkbox or radio button. */
|
|
62
|
+
setChecked(id: string, checked?: boolean): this;
|
|
63
|
+
/** Adds (`on`, the default) or removes a class. */
|
|
64
|
+
setClass(id: string, name: string, on?: boolean): this;
|
|
65
|
+
/** Sets an attribute, or removes it with `null`. Not `id`. */
|
|
66
|
+
setAttribute(id: string, name: string, value: string | null): this;
|
|
67
|
+
/** Gives an element keyboard and gamepad focus. */
|
|
68
|
+
focus(id: string): this;
|
|
69
|
+
/** Shows it again (and takes input again, if it does). */
|
|
70
|
+
show(): this;
|
|
71
|
+
/** Hides it (and gives input back) without closing it. */
|
|
72
|
+
hide(): this;
|
|
73
|
+
/** Closes it for good. Its `close` handlers don't run: you closed it. */
|
|
74
|
+
close(): void;
|
|
75
|
+
/**
|
|
76
|
+
* Handles events from the whole document, or from one element (and what's
|
|
77
|
+
* inside it). Only the types something listens for are sent by the game.
|
|
78
|
+
* `close`: the player closed it (Esc).
|
|
79
|
+
*/
|
|
80
|
+
on(type: UiEventType, handler: Handler): this;
|
|
81
|
+
on(type: UiEventType, id: string, handler: Handler): this;
|
|
82
|
+
/** Removes a handler, or every handler of that type. */
|
|
83
|
+
off(type: UiEventType, handler?: Handler): this;
|
|
84
|
+
/** Calls `fn` when the player closes it. */
|
|
85
|
+
onClose(fn: (e: UiEvent) => void): this;
|
|
86
|
+
/** @internal */
|
|
87
|
+
dispatch(raw: NativeUiEvent): void;
|
|
88
|
+
}
|
|
89
|
+
export interface ShowDocumentOptions {
|
|
90
|
+
/** Across the top. */
|
|
91
|
+
title?: string;
|
|
92
|
+
/** Left to right; the last is the main one (Enter). Default: just Close. */
|
|
93
|
+
buttons?: string[];
|
|
94
|
+
/** The last button works only once they've scrolled to the end (or it all fits). */
|
|
95
|
+
requireEnd?: boolean;
|
|
96
|
+
/** Esc (gamepad B) closes it, resolving -1. Default true. */
|
|
97
|
+
closable?: boolean;
|
|
98
|
+
}
|
|
99
|
+
/** UI documents the server opens on one player (`player.ui`). */
|
|
100
|
+
export declare class PlayerUi {
|
|
101
|
+
#private;
|
|
102
|
+
/** @internal */
|
|
103
|
+
constructor(nativeServer: NativeServer, player: Player);
|
|
104
|
+
/**
|
|
105
|
+
* Opens an RML client file on their screen. Its relative links (images,
|
|
106
|
+
* stylesheets) resolve beside it. At most 16 at once per player.
|
|
107
|
+
*/
|
|
108
|
+
open(file: string, options?: UiOpenOptions): UiDocument;
|
|
109
|
+
/**
|
|
110
|
+
* Shows a markdown client file in the document viewer: a title, the
|
|
111
|
+
* document scrolling, a row of buttons. For help pages, rules, terms of
|
|
112
|
+
* service. Resolves with the index of the button pressed, or -1 if they
|
|
113
|
+
* closed it (or left). `{key:ID}` in it shows an action's key. One at a
|
|
114
|
+
* time on their screen; more wait their turn.
|
|
115
|
+
*
|
|
116
|
+
* ```ts
|
|
117
|
+
* const choice = await player.ui.showDocument("docs/rules.md", {
|
|
118
|
+
* title: "Server rules", buttons: ["Decline", "Accept"], requireEnd: true, closable: false,
|
|
119
|
+
* });
|
|
120
|
+
* if (choice !== 1) player.kick("You must accept the rules to play.");
|
|
121
|
+
* ```
|
|
122
|
+
*/
|
|
123
|
+
showDocument(file: string, options?: ShowDocumentOptions): Promise<number>;
|
|
124
|
+
/** Takes down every document viewer they have showing or waiting (each resolves -1). */
|
|
125
|
+
closeDocuments(): void;
|
|
126
|
+
/** @internal Their answer from the viewer. */
|
|
127
|
+
documentAnswered(id: number, button: number): void;
|
|
128
|
+
/** @internal They left: every document resolves -1. */
|
|
129
|
+
disconnected(): void;
|
|
130
|
+
/** The documents open now. */
|
|
131
|
+
get documents(): UiDocument[];
|
|
132
|
+
/** Closes every document. */
|
|
133
|
+
closeAll(): void;
|
|
134
|
+
/** @internal */
|
|
135
|
+
send(spec: Parameters<NativeServer["ui"]>[1]): void;
|
|
136
|
+
/** @internal */
|
|
137
|
+
forget(id: number): void;
|
|
138
|
+
/** @internal */
|
|
139
|
+
dispatch(e: NativeUiEvent): void;
|
|
140
|
+
}
|
|
141
|
+
export {};
|