bc-stubs 124.0.0 → 125.0.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/bc/NativeDeclarations/ChatRoomMapView.d.ts +39 -0
- package/bc/NativeDeclarations/Female3DCG_Types.d.ts +3 -2
- package/bc/NativeDeclarations/Messages.d.ts +1 -0
- package/bc/NativeDeclarations/Typedef.d.ts +62 -13
- package/bc/Screens/Character/Appearance/Appearance.d.ts +46 -27
- package/bc/Screens/Online/ChatAdmin/ChatAdmin.d.ts +20 -4
- package/bc/Screens/Online/ChatAdminRoomCustomization/ChatAdminRoomCustomization.d.ts +4 -4
- package/bc/Screens/Online/ChatSearch/ChatSearch.d.ts +19 -21
- package/bc/Screens/Online/ForbiddenWords/ForbiddenWords.d.ts +1 -1
- package/bc/Screens/Online/Game/OnlineGame.d.ts +2 -2
- package/bc/Screens/Room/AsylumGGTS/AsylumGGTS.d.ts +12 -4
- package/bc/Screens/Room/Crafting/Crafting.d.ts +36 -7
- package/bc/Screens/Room/Gambling/Gambling.d.ts +45 -38
- package/bc/Screens/Room/MaidQuarters/MaidQuarters.d.ts +4 -2
- package/bc/Screens/Room/Prison/Prison.d.ts +118 -10
- package/bc/Scripts/BitString.d.ts +548 -0
- package/bc/Scripts/Character.d.ts +5 -3
- package/bc/Scripts/Common.d.ts +35 -30
- package/bc/Scripts/CommonDraw.d.ts +2 -2
- package/bc/Scripts/Dialog.d.ts +3 -3
- package/bc/Scripts/Drawing.d.ts +8 -9
- package/bc/Scripts/Element.d.ts +45 -38
- package/bc/Scripts/Inventory.d.ts +82 -81
- package/bc/Scripts/KeybindingManager.d.ts +199 -2
- package/bc/Scripts/Layering.d.ts +1 -1
- package/bc/Scripts/Property.d.ts +8 -1
- package/bc/Scripts/Text.d.ts +8 -4
- package/bc/Scripts/Translation.d.ts +2 -1
- package/bc/Scripts/VariableHeight.d.ts +10 -2
- package/package.json +1 -1
- package/bc/Screens/Online/ChatRoom/ChatRoomMapView.d.ts +0 -419
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
declare namespace ChatRoomMapManager {
|
|
2
|
+
interface EffectsCodec {
|
|
3
|
+
write(effectsFlat: ChatRoomMapEffect[][], writer: BitStringWriter): boolean;
|
|
4
|
+
read(
|
|
5
|
+
reader: BitStringReader,
|
|
6
|
+
requiredTilesCount: number | undefined,
|
|
7
|
+
): ChatRoomMapEffect[][] | undefined;
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
interface MapCodec<T> {
|
|
11
|
+
write(map: T, writer: BitStringWriter): boolean;
|
|
12
|
+
read(
|
|
13
|
+
reader: BitStringReader,
|
|
14
|
+
requiredTilesCount: number | undefined,
|
|
15
|
+
): T | undefined;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
namespace MapEffectsCodecs_v0 {
|
|
19
|
+
interface ConstSettings {
|
|
20
|
+
rleBitsEmpty: number;
|
|
21
|
+
rleMaxEmpty: number;
|
|
22
|
+
rleBitsFilled: number;
|
|
23
|
+
rleMaxFilled: number;
|
|
24
|
+
bitLenBits: number;
|
|
25
|
+
arrayLenInBytesBits: number;
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
interface DynamicSettings {
|
|
29
|
+
baseIdBits: number;
|
|
30
|
+
shiftedIdBits: number;
|
|
31
|
+
remappedIdBits: number;
|
|
32
|
+
effectIdMin: number;
|
|
33
|
+
effectsLength: number;
|
|
34
|
+
effectIdsShifted: number[];
|
|
35
|
+
effectIdShiftedToRemapId: Map<number, number>;
|
|
36
|
+
remapIdToEffectIdShifted: Map<number, number>;
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
}
|
|
@@ -703,8 +703,8 @@ interface AssetDefinitionBase extends AssetCommonPropertiesGroupAsset, AssetComm
|
|
|
703
703
|
DynamicScriptDraw?: boolean;
|
|
704
704
|
AllowLockType?: AssetLockType[];
|
|
705
705
|
|
|
706
|
-
/**
|
|
707
|
-
AllowColorizeAll?:
|
|
706
|
+
/** @deprecated Removed without replacement: items _must_ support a "color all layers" button (to the extent that the item is colorable in the first place) */
|
|
707
|
+
AllowColorizeAll?: never;
|
|
708
708
|
|
|
709
709
|
/** A list of online spaces (eg. Asylum) where the asset is automatically available */
|
|
710
710
|
AvailableLocations?: string[];
|
|
@@ -816,6 +816,7 @@ interface AttributionDefinition {
|
|
|
816
816
|
Author?: string;
|
|
817
817
|
Email?: string;
|
|
818
818
|
License?: string;
|
|
819
|
+
OriginalName?: string;
|
|
819
820
|
}
|
|
820
821
|
|
|
821
822
|
interface AssetLayerDefinition extends AssetCommonPropertiesGroupAssetLayer, AssetCommonPropertiesAssetLayer {
|
|
@@ -110,7 +110,7 @@ type HTMLOptions<T extends keyof HTMLElementTagNameMap> = {
|
|
|
110
110
|
*
|
|
111
111
|
* Note that booleans are interpreted as [boolean attributes](https://developer.mozilla.org/en-US/docs/Glossary/Boolean/HTML).
|
|
112
112
|
*/
|
|
113
|
-
attributes?: Partial<Record<string, number | boolean | string
|
|
113
|
+
attributes?: Partial<Record<string, null | number | boolean | string>>
|
|
114
114
|
/**
|
|
115
115
|
* Data attributes that will be set on the HTML element (see {@link HTMLElement.dataset}).
|
|
116
116
|
*
|
|
@@ -142,6 +142,11 @@ interface HTMLElementTagNameMap {
|
|
|
142
142
|
"bc-tint-input": HTMLColorTintElement;
|
|
143
143
|
}
|
|
144
144
|
|
|
145
|
+
interface HTMLColorTintElement {
|
|
146
|
+
addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLColorTintElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
|
|
147
|
+
addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
|
|
148
|
+
}
|
|
149
|
+
|
|
145
150
|
declare namespace ElementButton {
|
|
146
151
|
/** An input type for representing one or more text nodes and/or **non-interactive** DOM elements (_e.g._ `<i>` or `<code>`) */
|
|
147
152
|
type StaticNode = null | string | Node | HTMLOptions<any> | readonly (null | undefined | string | Node | HTMLOptions<any>)[];
|
|
@@ -829,7 +834,13 @@ interface RelogDataBase<T extends ModuleType> {
|
|
|
829
834
|
type _RelogDataMap<T> = T extends ModuleType ? RelogDataBase<T> : never;
|
|
830
835
|
type RelogData = _RelogDataMap<ModuleType>;
|
|
831
836
|
|
|
832
|
-
|
|
837
|
+
/** Further options to-be passed along to {@link CommonSetScreen} */
|
|
838
|
+
interface ScreenSpecifierOptions {
|
|
839
|
+
/** Whether this concerns a recursive {@link CommonSetScreen} call */
|
|
840
|
+
recursive?: boolean;
|
|
841
|
+
}
|
|
842
|
+
|
|
843
|
+
type _ScreenSpecifier<T extends ModuleType> = [module: T, screen: ModuleScreens[T], options?: null | ScreenSpecifierOptions];
|
|
833
844
|
type ScreenSpecifier = _ScreenSpecifier<"Character"> | _ScreenSpecifier<"Cutscene"> | _ScreenSpecifier<"MiniGame"> | _ScreenSpecifier<"Online"> | _ScreenSpecifier<"Room">;
|
|
834
845
|
|
|
835
846
|
type AssetCategory = "Medical" | "Extreme" | "Pony" | "SciFi" | "ABDL" | "Fantasy" | "Smoking";
|
|
@@ -858,7 +869,13 @@ type ChatRoomOwnershipEvent =
|
|
|
858
869
|
| "CanEndTrial";
|
|
859
870
|
|
|
860
871
|
type ChatRoom = ServerChatRoomData;
|
|
861
|
-
|
|
872
|
+
// TODO: Review the partial nature of the `Custom` and `Space` fields
|
|
873
|
+
type ChatRoomSettings = Prettify<
|
|
874
|
+
Omit<ServerChatRoomData, "Character" | "Custom" | "Space">
|
|
875
|
+
& Partial<Pick<ServerChatRoomData, "Custom" | "Space">>
|
|
876
|
+
>;
|
|
877
|
+
/** Parsed chat room settings as used by the `ChatAdmin` screen */
|
|
878
|
+
type ChatRoomAdminSettings = Prettify<ChatRoomSettings & Required<Pick<ChatRoomSettings, "MapData">>>;
|
|
862
879
|
|
|
863
880
|
/** ChatRoom results once received by the client */
|
|
864
881
|
type ChatRoomSearchResult = (ServerChatRoomSearchData & { DisplayName: string, Order: number });
|
|
@@ -1388,7 +1405,8 @@ interface Asset {
|
|
|
1388
1405
|
readonly CreateLayerTypes: readonly string[];
|
|
1389
1406
|
/** A record that maps {@link ExtendedItemData.name} to a set with all option indices that support locks */
|
|
1390
1407
|
readonly AllowLockType: null | Record<string, Set<number>>;
|
|
1391
|
-
|
|
1408
|
+
/** @deprecated Removed without replacement: items _must_ support a "color all layers" button (to the extent that the item is colorable in the first place) */
|
|
1409
|
+
readonly AllowColorizeAll?: never;
|
|
1392
1410
|
readonly AvailableLocations: readonly string[];
|
|
1393
1411
|
readonly OverrideHeight?: Readonly<AssetOverrideHeight>;
|
|
1394
1412
|
readonly DrawLocks: boolean;
|
|
@@ -1433,7 +1451,7 @@ interface ClipboardItemBundle {
|
|
|
1433
1451
|
/** The item's asset name */
|
|
1434
1452
|
A: string;
|
|
1435
1453
|
/** The item's color */
|
|
1436
|
-
C?:
|
|
1454
|
+
C?: ItemColor;
|
|
1437
1455
|
}
|
|
1438
1456
|
|
|
1439
1457
|
type ClipboardAppearanceBundle = ClipboardItemBundle[];
|
|
@@ -1903,7 +1921,7 @@ interface Character {
|
|
|
1903
1921
|
ExpressionQueue?: ExpressionQueueItem[];
|
|
1904
1922
|
CanTalk: () => boolean;
|
|
1905
1923
|
CanWalk: () => boolean;
|
|
1906
|
-
CanKneel: () => boolean;
|
|
1924
|
+
CanKneel: (minimumStatus?: PoseChangeStatus) => boolean;
|
|
1907
1925
|
CanInteract: () => boolean;
|
|
1908
1926
|
|
|
1909
1927
|
/**
|
|
@@ -2013,7 +2031,7 @@ interface Character {
|
|
|
2013
2031
|
HasTints: () => boolean;
|
|
2014
2032
|
GetTints: () => RGBAColor[];
|
|
2015
2033
|
HasAttribute: (attribute: AssetAttribute) => boolean;
|
|
2016
|
-
DrawAppearance
|
|
2034
|
+
DrawAppearance: Item[];
|
|
2017
2035
|
AppearanceLayers?: Mutable<AssetLayer>[];
|
|
2018
2036
|
AppearanceMasks?: AssetLayer[];
|
|
2019
2037
|
Hooks: Map<CharacterHook, Map<string, () => void>> | null;
|
|
@@ -3213,9 +3231,9 @@ type TypeRecord = Record<string, number>;
|
|
|
3213
3231
|
*/
|
|
3214
3232
|
|
|
3215
3233
|
interface ExpressionQueueItem {
|
|
3216
|
-
Time
|
|
3217
|
-
Group
|
|
3218
|
-
Expression
|
|
3234
|
+
Time: number;
|
|
3235
|
+
Group: ExpressionGroupName;
|
|
3236
|
+
Expression: ExpressionName;
|
|
3219
3237
|
}
|
|
3220
3238
|
|
|
3221
3239
|
/**
|
|
@@ -4265,8 +4283,13 @@ interface CraftingItem {
|
|
|
4265
4283
|
MemberNumber?: number;
|
|
4266
4284
|
/** The custom item description. */
|
|
4267
4285
|
Description: string;
|
|
4268
|
-
/** The crafted item
|
|
4269
|
-
|
|
4286
|
+
/** The crafted item effects mapped to their effect strength. */
|
|
4287
|
+
Effects: Partial<Record<CraftingPropertyType, number>>;
|
|
4288
|
+
/**
|
|
4289
|
+
* The crafted item effect.
|
|
4290
|
+
* @deprecated superseded by {@link CraftingItem.Effects}
|
|
4291
|
+
*/
|
|
4292
|
+
Property?: CraftingPropertyType;
|
|
4270
4293
|
/** The comma-separated color(s) of the item. */
|
|
4271
4294
|
Color: string;
|
|
4272
4295
|
/** The name of the lock or, if absent, an empty string. */
|
|
@@ -4335,8 +4358,13 @@ interface CraftingItemSelected {
|
|
|
4335
4358
|
* The asset is guaranteed to satisfy `Asset.Group.Name === Asset.DynamicGroupName` _if_ any of the list members satisfy this condition.
|
|
4336
4359
|
*/
|
|
4337
4360
|
get Asset(): Asset | undefined;
|
|
4338
|
-
/**
|
|
4361
|
+
/**
|
|
4362
|
+
* The crafted item propertty.
|
|
4363
|
+
* @deprecated superseded by {@link CraftingItemSelected .Effects}
|
|
4364
|
+
*/
|
|
4339
4365
|
Property: CraftingPropertyType;
|
|
4366
|
+
/** The crafted item properties mapped to their property strength. */
|
|
4367
|
+
Effects: Partial<Record<CraftingPropertyType, number>>;
|
|
4340
4368
|
/** The lock as equipped on the item or, if absent, `null`. */
|
|
4341
4369
|
Lock: Asset | null;
|
|
4342
4370
|
/** Whether the crafted item should be private or not. */
|
|
@@ -5115,6 +5143,21 @@ interface ChatRoomMapObject extends ChatRoomMapDoodad {
|
|
|
5115
5143
|
BuildImageName?: (X: number, Y: number) => string;
|
|
5116
5144
|
}
|
|
5117
5145
|
|
|
5146
|
+
interface ChatRoomMapEffectStaticLighting {
|
|
5147
|
+
Type: "StaticLighting";
|
|
5148
|
+
TypeId: 1,
|
|
5149
|
+
ID: number,
|
|
5150
|
+
/**
|
|
5151
|
+
* R [0; 255], G [0; 255], B [0; 255], A [0.0; 1.0]
|
|
5152
|
+
*/
|
|
5153
|
+
Color: [number, number, number, number];
|
|
5154
|
+
}
|
|
5155
|
+
|
|
5156
|
+
/**
|
|
5157
|
+
* A union of all effect types.
|
|
5158
|
+
*/
|
|
5159
|
+
type ChatRoomMapEffect = ChatRoomMapEffectStaticLighting;
|
|
5160
|
+
|
|
5118
5161
|
interface ChatRoomMapMovement {
|
|
5119
5162
|
X: number;
|
|
5120
5163
|
Y: number;
|
|
@@ -5159,6 +5202,12 @@ interface ShopItem {
|
|
|
5159
5202
|
|
|
5160
5203
|
// #endregion
|
|
5161
5204
|
|
|
5205
|
+
// #region MaidQuarters
|
|
5206
|
+
|
|
5207
|
+
type MaidQuartersMissionType = "ShibariDojo" | "IntroductionClass" | "Shop" | "Gambling" | "Prison";
|
|
5208
|
+
|
|
5209
|
+
// #endregion
|
|
5210
|
+
|
|
5162
5211
|
// #region layering
|
|
5163
5212
|
|
|
5164
5213
|
interface LayeringExitOptions {
|
|
@@ -52,10 +52,10 @@ declare function CharacterAppearanceStripLayer(C: Character): void;
|
|
|
52
52
|
/**
|
|
53
53
|
* Check whether a layer must be visible given a provided type record.
|
|
54
54
|
* @param {AllowTypes.Data} allowTypes - The layer's allowed types
|
|
55
|
-
* @param {TypeRecord} typeRecord - The type record in question.
|
|
55
|
+
* @param {TypeRecord|null|undefined} typeRecord - The type record in question.
|
|
56
56
|
* @returns {boolean} - Whether the layer should be visible
|
|
57
57
|
*/
|
|
58
|
-
declare function CharacterAppearanceAllowForTypes(allowTypes: AllowTypes.Data, typeRecord: TypeRecord): boolean;
|
|
58
|
+
declare function CharacterAppearanceAllowForTypes(allowTypes: AllowTypes.Data, typeRecord: TypeRecord | null | undefined): boolean;
|
|
59
59
|
/**
|
|
60
60
|
* Determines whether an asset layer should be rendered, assuming the asset itself is visible.
|
|
61
61
|
* @param {Character} C - The character wearing the item
|
|
@@ -83,13 +83,13 @@ declare function CharacterAppearanceBuildMasks(C: Character): AssetLayer[];
|
|
|
83
83
|
/**
|
|
84
84
|
* Determines whether an item or a whole item group is visible or not
|
|
85
85
|
* @param {Character} C - The character whose assets are checked
|
|
86
|
-
* @param {string} AssetName - The name of the asset to check
|
|
86
|
+
* @param {string | undefined} AssetName - The name of the asset to check
|
|
87
87
|
* @param {AssetGroupName} GroupName - The name of the item group to check
|
|
88
88
|
* @param {boolean} Recursive - If TRUE, then other items which are themselves hidden will not hide this item. Parameterising this prevents
|
|
89
89
|
* infinite loops.
|
|
90
90
|
* @returns {boolean} - Returns TRUE if we can show the item or the item group
|
|
91
91
|
*/
|
|
92
|
-
declare function CharacterAppearanceVisible(C: Character, AssetName: string, GroupName: AssetGroupName, Recursive?: boolean): boolean;
|
|
92
|
+
declare function CharacterAppearanceVisible(C: Character, AssetName: string | undefined, GroupName: AssetGroupName, Recursive?: boolean): boolean;
|
|
93
93
|
/**
|
|
94
94
|
* Determines whether the player has set this item to not appear on screen
|
|
95
95
|
* @param {string} AssetName - The name of the asset to check
|
|
@@ -182,22 +182,22 @@ declare function AppearancePreviewBuild(C: Character, buildCanvases: boolean): v
|
|
|
182
182
|
declare function AppearancePreviewCleanup(): void;
|
|
183
183
|
/**
|
|
184
184
|
* Returns whether the the 3x3 grid "Cloth" appearance mode should include the character in the preview images
|
|
185
|
-
* @param {AssetGroup} assetGroup - The group to check
|
|
185
|
+
* @param {AssetGroup | null} assetGroup - The group to check
|
|
186
186
|
* @returns {boolean} - If TRUE the previews will be drawn with the character
|
|
187
187
|
*/
|
|
188
|
-
declare function AppearancePreviewUseCharacter(assetGroup: AssetGroup): boolean;
|
|
188
|
+
declare function AppearancePreviewUseCharacter(assetGroup: AssetGroup | null): boolean;
|
|
189
189
|
/**
|
|
190
190
|
* Sets an item in the character appearance
|
|
191
191
|
* @param {Character} C - The character whose appearance should be changed
|
|
192
192
|
* @param {AssetGroupName} Group - The name of the corresponding groupr for the item
|
|
193
|
-
* @param {Asset|
|
|
193
|
+
* @param {Asset|null} ItemAsset - The asset collection of the item to be changed
|
|
194
194
|
* @param {string|string[]} [NewColor] - The new color (as "#xxyyzz" hex value) for that item
|
|
195
195
|
* @param {number} [DifficultyFactor=0] - The difficulty, on top of the base asset difficulty, that should be assigned
|
|
196
196
|
* to the item
|
|
197
197
|
* @param {number} [ItemMemberNumber=-1] - The member number of the player adding the item - defaults to -1
|
|
198
198
|
* @returns {Item | null} - Thew newly created item or `undefined` if the asset does not exist
|
|
199
199
|
*/
|
|
200
|
-
declare function CharacterAppearanceSetItem(C: Character, Group: AssetGroupName, ItemAsset: Asset |
|
|
200
|
+
declare function CharacterAppearanceSetItem(C: Character, Group: AssetGroupName, ItemAsset: Asset | null, NewColor?: string | string[], DifficultyFactor?: number, ItemMemberNumber?: number): Item | null;
|
|
201
201
|
/**
|
|
202
202
|
* Cycle in the appearance assets to find the next item in a group
|
|
203
203
|
* @param {Character} C - The character whose assets are used
|
|
@@ -233,9 +233,9 @@ declare function CharacterAppearanceSetColorForGroup(C: Character, Color: string
|
|
|
233
233
|
* value. The reordering mode cycles through the values:
|
|
234
234
|
* "None" -> "Select" -> "Place"
|
|
235
235
|
*
|
|
236
|
-
* @param {WardrobeReorderType} newmode - The mode to set. If null, advance to next mode.
|
|
236
|
+
* @param {WardrobeReorderType|null} newmode - The mode to set. If null, advance to next mode.
|
|
237
237
|
*/
|
|
238
|
-
declare function AppearanceWardrobeReorderModeSet(newmode?: WardrobeReorderType): void;
|
|
238
|
+
declare function AppearanceWardrobeReorderModeSet(newmode?: WardrobeReorderType | null): void;
|
|
239
239
|
/**
|
|
240
240
|
* Handle the clicks in the character appearance selection screen. The function name is created dynamically.
|
|
241
241
|
* @returns {void} - Nothing
|
|
@@ -307,9 +307,9 @@ declare function AppearanceItemStringify(Item: readonly Item[] | Item | any): st
|
|
|
307
307
|
declare function CharacterAppearanceRestore(C: Character, backup: string | null): void;
|
|
308
308
|
/**
|
|
309
309
|
* @param {string} stringified
|
|
310
|
-
* @returns {
|
|
310
|
+
* @returns {Item[]}
|
|
311
311
|
*/
|
|
312
|
-
declare function AppearanceItemParse(stringified: string):
|
|
312
|
+
declare function AppearanceItemParse(stringified: string): Item[];
|
|
313
313
|
/**
|
|
314
314
|
* Opens the color picker for a selected item
|
|
315
315
|
* @param {Character} C - The character the appearance is being changed for
|
|
@@ -329,12 +329,12 @@ declare function AppearanceItemColor(C: Character, Item: Item, AssetGroup: Asset
|
|
|
329
329
|
declare function CharacterAppearanceResolveAppearance(BaseAppearance: readonly Item[], PrevAppearance: Item[], NewAppearance: readonly Item[]): Item[];
|
|
330
330
|
/**
|
|
331
331
|
* Select from two potential changes to an item, preferring the newer if different to the original item
|
|
332
|
-
* @param {Item} BaseItem - The item before any changes were made
|
|
333
|
-
* @param {Item} PrevItem - The first item change
|
|
334
|
-
* @param {Item} NewItem - The second item change
|
|
335
|
-
* @return {Item} - The item to keep
|
|
332
|
+
* @param {Item | undefined} BaseItem - The item before any changes were made
|
|
333
|
+
* @param {Item | undefined} PrevItem - The first item change
|
|
334
|
+
* @param {Item | undefined} NewItem - The second item change
|
|
335
|
+
* @return {Item | null} - The item to keep
|
|
336
336
|
*/
|
|
337
|
-
declare function CharacterAppearanceResolveItem(BaseItem: Item, PrevItem: Item, NewItem: Item): Item;
|
|
337
|
+
declare function CharacterAppearanceResolveItem(BaseItem: Item | undefined, PrevItem: Item | undefined, NewItem: Item | undefined): Item | null;
|
|
338
338
|
/**
|
|
339
339
|
* Merge the incoming appearance changes from the online sync to the currently selected appearance
|
|
340
340
|
* @param {Character} C - The character with changes to merge
|
|
@@ -376,10 +376,18 @@ declare var CharacterAppearanceNumClothPerPage: number;
|
|
|
376
376
|
declare var CharacterAppearanceWardrobeNumPerPage: number;
|
|
377
377
|
declare var CharacterAppearanceHeaderText: string;
|
|
378
378
|
declare var CharacterAppearanceHeaderTextTime: number;
|
|
379
|
-
/**
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
379
|
+
/**
|
|
380
|
+
* The appearance the character we're editing had when entering the screen.
|
|
381
|
+
*
|
|
382
|
+
* Must stay valid for as long as the screen is up.
|
|
383
|
+
*
|
|
384
|
+
* @type {string} */
|
|
385
|
+
declare var CharacterAppearanceBackup: string;
|
|
386
|
+
/**
|
|
387
|
+
* Backup of the current appearance; used when canceling out of loading a wardrobe outfit.
|
|
388
|
+
*
|
|
389
|
+
* @type {undefined | string} */
|
|
390
|
+
declare var CharacterAppearanceInProgressBackup: undefined | string;
|
|
383
391
|
/**
|
|
384
392
|
* The list of all customizable groups
|
|
385
393
|
* @type {AssetGroup[]}
|
|
@@ -395,10 +403,21 @@ declare var CharacterAppearanceAssets: Asset[];
|
|
|
395
403
|
declare var CharacterAppearanceColorPickerGroupName: AssetGroupName;
|
|
396
404
|
declare var CharacterAppearanceColorPickerBackup: string;
|
|
397
405
|
declare var CharacterAppearanceColorPickerRefreshTimer: any;
|
|
398
|
-
/**
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
|
|
406
|
+
/**
|
|
407
|
+
* The character we're editing the appearance of.
|
|
408
|
+
*
|
|
409
|
+
* Must stay valid for as long as the screen is up.
|
|
410
|
+
*
|
|
411
|
+
* @type {Character}
|
|
412
|
+
*/
|
|
413
|
+
declare var CharacterAppearanceSelection: Character;
|
|
414
|
+
/**
|
|
415
|
+
* The callback to perform when closing the appearance screen.
|
|
416
|
+
* Must stay valid for as long as the screen is up.
|
|
417
|
+
*
|
|
418
|
+
* @type {((accept: boolean) => void)}
|
|
419
|
+
*/
|
|
420
|
+
declare var CharacterAppearanceResultCallback: ((accept: boolean) => void);
|
|
402
421
|
/** @type {ScreenSpecifier} */
|
|
403
422
|
declare var CharacterAppearanceReturnScreen: ScreenSpecifier;
|
|
404
423
|
declare var CharacterAppearanceWardrobeOffset: number;
|
|
@@ -420,9 +439,9 @@ declare var AppearancePreviews: Character[];
|
|
|
420
439
|
declare var AppearanceUseCharacterInPreviewsSetting: boolean;
|
|
421
440
|
/**
|
|
422
441
|
* List of item indices collected for swapping.
|
|
423
|
-
*
|
|
442
|
+
* @type {number[]}
|
|
424
443
|
*/
|
|
425
|
-
declare let AppearanceWardrobeReorderList:
|
|
444
|
+
declare let AppearanceWardrobeReorderList: number[];
|
|
426
445
|
/** @type {WardrobeReorderType} */
|
|
427
446
|
declare let AppearanceWardrobeReorderMode: WardrobeReorderType;
|
|
428
447
|
declare const CanvasUpperOverflow: 700;
|
|
@@ -13,9 +13,9 @@ declare function ChatAdminShowEdit(roomData: ChatRoom): void;
|
|
|
13
13
|
* This should not be called directly; use {@link ChatAdminShowCreate} or {@link ChatAdminShowEdit}
|
|
14
14
|
*
|
|
15
15
|
* @param {"create" | "update"} mode
|
|
16
|
-
* @param {ChatRoomSettings |
|
|
16
|
+
* @param {ChatRoomSettings | null} roomData
|
|
17
17
|
*/
|
|
18
|
-
declare function ChatAdminStart(mode: "create" | "update", roomData?: ChatRoomSettings |
|
|
18
|
+
declare function ChatAdminStart(mode: "create" | "update", roomData?: ChatRoomSettings | null): void;
|
|
19
19
|
/**
|
|
20
20
|
* Return whether the editor can actually modify the data
|
|
21
21
|
* @returns {boolean}
|
|
@@ -38,6 +38,22 @@ declare function ChatAdminClick(): void;
|
|
|
38
38
|
declare function ChatAdminCommit(): void;
|
|
39
39
|
declare function ChatAdminKeyDown(event: KeyboardEvent): boolean;
|
|
40
40
|
declare function ChatAdminExit(): void;
|
|
41
|
+
/**
|
|
42
|
+
* Validates whether the given settings is in the correct format for a ChatRoomAdminSettings object
|
|
43
|
+
* @param {unknown} settings - The settings to validate
|
|
44
|
+
* @returns {settings is ChatRoomAdminSettings} - True if the settings are valid, false otherwise
|
|
45
|
+
*/
|
|
46
|
+
declare function ChatEditorValidateAdminSettings(settings: unknown): settings is ChatRoomAdminSettings;
|
|
47
|
+
/**
|
|
48
|
+
* Imports the given ChatRoomAdminSettings into the editor inputs
|
|
49
|
+
* @param {ChatRoomAdminSettings} settings - The chat room settings to import
|
|
50
|
+
*/
|
|
51
|
+
declare function ChatEditorAdminSettingsImport(settings: ChatRoomAdminSettings): void;
|
|
52
|
+
/**
|
|
53
|
+
* Gathers the data from the editor inputs and returns it as a ChatRoomAdminSettings object
|
|
54
|
+
* @returns {ChatRoomAdminSettings | undefined} - The chat room settings based on the current editor inputs, or undefined if ChatAdminData is not set
|
|
55
|
+
*/
|
|
56
|
+
declare function ChatEditorGetAdminSettings(): ChatRoomAdminSettings | undefined;
|
|
41
57
|
/**
|
|
42
58
|
* Sends the chat room data packet to the server. The response will be handled by ChatAdminResponse once it is received
|
|
43
59
|
* @returns {void} - Nothing
|
|
@@ -81,7 +97,7 @@ declare var ChatAdminVisibilityModeIndex: number;
|
|
|
81
97
|
declare var ChatAdminAccessModeLabels: ChatRoomAccessModeLabel[];
|
|
82
98
|
declare var ChatAdminAccessModeValues: ServerChatRoomRole[][];
|
|
83
99
|
declare var ChatAdminAccessModeIndex: number;
|
|
84
|
-
/** @type {
|
|
85
|
-
declare var ChatAdminData:
|
|
100
|
+
/** @type {ChatRoomAdminSettings | null} */
|
|
101
|
+
declare var ChatAdminData: ChatRoomAdminSettings | null;
|
|
86
102
|
/** @type {"create" | "update" | null} */
|
|
87
103
|
declare var ChatAdminMode: "create" | "update" | null;
|
|
@@ -20,12 +20,12 @@ declare function ChatAdminRoomCustomizationUnload(): void;
|
|
|
20
20
|
declare function ChatAdminRoomCustomizationPlayMusic(Music: string): void;
|
|
21
21
|
/**
|
|
22
22
|
* Runs the customization on the current screen, can be called from elsewhere
|
|
23
|
-
* @param {ServerChatRoomCustomData} Custom - The customization to apply
|
|
23
|
+
* @param {ServerChatRoomCustomData | null} Custom - The customization to apply
|
|
24
24
|
* @param {Rect | null} DrawBGToRect - If non-null draw the background to these coordinates. Online chat rooms will use the tracked values elsewhere
|
|
25
25
|
* @param {boolean} DrawBGEffects - If true and drawing a background then apply blur/dark/tint
|
|
26
26
|
* @returns {void} - Nothing
|
|
27
27
|
*/
|
|
28
|
-
declare function ChatAdminRoomCustomizationProcess(Custom: ServerChatRoomCustomData, DrawBGToRect: Rect | null, DrawBGEffects: boolean): void;
|
|
28
|
+
declare function ChatAdminRoomCustomizationProcess(Custom: ServerChatRoomCustomData | null, DrawBGToRect: Rect | null, DrawBGEffects: boolean): void;
|
|
29
29
|
/**
|
|
30
30
|
* When the chat Admin Custom screen runs, draws the screen
|
|
31
31
|
* @returns {void} - Nothing
|
|
@@ -38,8 +38,8 @@ declare function ChatAdminRoomCustomizationRun(): void;
|
|
|
38
38
|
declare function ChatAdminRoomCustomizationClick(): void;
|
|
39
39
|
declare function ChatAdminRoomCustomizationExit(): void;
|
|
40
40
|
declare var ChatAdminRoomCustomizationBackground: string;
|
|
41
|
-
/** @type {ServerChatRoomCustomData} */
|
|
42
|
-
declare var ChatAdminRoomCustomizationCurrent: ServerChatRoomCustomData;
|
|
41
|
+
/** @type {null | ServerChatRoomCustomData} */
|
|
42
|
+
declare var ChatAdminRoomCustomizationCurrent: null | ServerChatRoomCustomData;
|
|
43
43
|
/** @type {null | HTMLAudioElement} */
|
|
44
44
|
declare var ChatAdminRoomCustomizationMusic: null | HTMLAudioElement;
|
|
45
45
|
/** @type {null | "MusicLibrary"} */
|
|
@@ -245,9 +245,9 @@ declare function ChatSearchCalculateIgnoredRoomsOffset(shownRooms: number): numb
|
|
|
245
245
|
/**
|
|
246
246
|
* Return the space we're currently in.
|
|
247
247
|
* Note that it will look at both the current room's, and if we're not in one, the current lobby
|
|
248
|
-
* @returns {ServerChatRoomSpace
|
|
248
|
+
* @returns {ServerChatRoomSpace}
|
|
249
249
|
*/
|
|
250
|
-
declare function ChatSearchGetSpace(): ServerChatRoomSpace
|
|
250
|
+
declare function ChatSearchGetSpace(): ServerChatRoomSpace;
|
|
251
251
|
/**
|
|
252
252
|
* @file This file handles the chat lobby search & filter screen
|
|
253
253
|
*/
|
|
@@ -272,13 +272,13 @@ declare var ChatSearchResultOffset: number;
|
|
|
272
272
|
declare var ChatSearchPageX: number;
|
|
273
273
|
/** The room grid's top offset */
|
|
274
274
|
declare var ChatSearchPageY: number;
|
|
275
|
+
declare var ChatSearchRoomsPerRow: number;
|
|
276
|
+
declare var ChatSearchRoomsPerColumn: number;
|
|
275
277
|
/**
|
|
276
278
|
* Layout parameters for the room grid
|
|
277
279
|
* @type {CommonGenerateGridParameters}
|
|
278
280
|
*/
|
|
279
281
|
declare var ChatSearchListParams: CommonGenerateGridParameters;
|
|
280
|
-
declare var ChatSearchRoomsPerRow: number;
|
|
281
|
-
declare var ChatSearchRoomsPerColumn: number;
|
|
282
282
|
/** Pre-calculated. Must be updated if you change the grid parameters */
|
|
283
283
|
declare var ChatSearchRoomsPerPage: number;
|
|
284
284
|
/** @type {ScreenSpecifier} */
|
|
@@ -319,25 +319,23 @@ declare var ChatSearchGame: ServerChatRoomGame;
|
|
|
319
319
|
/** @type {ServerChatRoomSpace | null} */
|
|
320
320
|
declare var ChatSearchSpace: ServerChatRoomSpace | null;
|
|
321
321
|
declare var ChatSearchFilterTermsTemp: string;
|
|
322
|
-
/** @type {ChatRoomSpaceLabel[]} */
|
|
323
|
-
declare var ChatSearchRoomSpaces: ChatRoomSpaceLabel[];
|
|
324
322
|
declare var ChatSearchCurrentRoomSpaceIndex: number;
|
|
325
|
-
/** @type {HTMLDivElement} */
|
|
326
|
-
declare var ChatSearchRoomHeader: HTMLDivElement;
|
|
327
|
-
/** @type {HTMLDivElement} */
|
|
328
|
-
declare var ChatSearchRoomGrid: HTMLDivElement;
|
|
329
|
-
/** @type {HTMLFieldSetElement} */
|
|
330
|
-
declare var ChatSearchSearchMenu: HTMLFieldSetElement;
|
|
331
|
-
/** @type {HTMLDivElement} */
|
|
332
|
-
declare var ChatSearchPageCountElement: HTMLDivElement;
|
|
323
|
+
/** @type {HTMLDivElement | null} */
|
|
324
|
+
declare var ChatSearchRoomHeader: HTMLDivElement | null;
|
|
325
|
+
/** @type {HTMLDivElement | null} */
|
|
326
|
+
declare var ChatSearchRoomGrid: HTMLDivElement | null;
|
|
327
|
+
/** @type {HTMLFieldSetElement | null} */
|
|
328
|
+
declare var ChatSearchSearchMenu: HTMLFieldSetElement | null;
|
|
329
|
+
/** @type {HTMLDivElement | null} */
|
|
330
|
+
declare var ChatSearchPageCountElement: HTMLDivElement | null;
|
|
333
331
|
/** @type {HTMLDialogElement | null} */
|
|
334
332
|
declare var ChatSearchDialogElement: HTMLDialogElement | null;
|
|
335
|
-
/** @type {HTMLButtonElement} */
|
|
336
|
-
declare var ChatSearchSearchMenuButton: HTMLButtonElement;
|
|
337
|
-
/** @type {HTMLDivElement} */
|
|
338
|
-
declare var ChatSearchSearchBodyElement: HTMLDivElement;
|
|
333
|
+
/** @type {HTMLButtonElement | null} */
|
|
334
|
+
declare var ChatSearchSearchMenuButton: HTMLButtonElement | null;
|
|
335
|
+
/** @type {HTMLDivElement | null} */
|
|
336
|
+
declare var ChatSearchSearchBodyElement: HTMLDivElement | null;
|
|
339
337
|
/** @type {HTMLDialogElement | null} */
|
|
340
338
|
declare var ChatSearchFilterUnhideConfirmElement: HTMLDialogElement | null;
|
|
341
|
-
/** @type {HTMLDialogElement} */
|
|
342
|
-
declare var ChatSearchFilterHelpScreenElement: HTMLDialogElement;
|
|
343
|
-
declare
|
|
339
|
+
/** @type {HTMLDialogElement | null} */
|
|
340
|
+
declare var ChatSearchFilterHelpScreenElement: HTMLDialogElement | null;
|
|
341
|
+
declare const ChatSearchUpdateSearchSettings: () => void;
|
|
@@ -4,7 +4,7 @@ declare function ForbiddenWordsUnload(): void;
|
|
|
4
4
|
* Starts the forbidden words screen and loads it
|
|
5
5
|
* @returns {void} - Nothing
|
|
6
6
|
*/
|
|
7
|
-
declare function ForbiddenWordsOpen(
|
|
7
|
+
declare function ForbiddenWordsOpen(): void;
|
|
8
8
|
/**
|
|
9
9
|
* Draws the forbidden words text and check boxes
|
|
10
10
|
* @returns {void} - Nothing
|
|
@@ -71,5 +71,5 @@ declare function OnlineGameDrawCharacter(C: Character, X: number, Y: number, Zoo
|
|
|
71
71
|
declare function OnlineGameHasOptions(): boolean;
|
|
72
72
|
/** @type {null | string[][]} */
|
|
73
73
|
declare let OnlineGameDictionary: null | string[][];
|
|
74
|
-
/** @type {
|
|
75
|
-
declare let OnlineGameTranslateResolve: () => void | undefined;
|
|
74
|
+
/** @type {((gameDict: string[][]) => void) | undefined} */
|
|
75
|
+
declare let OnlineGameTranslateResolve: ((gameDict: string[][]) => void) | undefined;
|
|
@@ -45,6 +45,15 @@ declare function AsylumGGTSGetRules(C: Character): string[];
|
|
|
45
45
|
* @returns {void} - Nothing
|
|
46
46
|
*/
|
|
47
47
|
declare function AsylumGGTSComputerImage(Level: number): void;
|
|
48
|
+
/**
|
|
49
|
+
* Ensure the GGTS messages are loaded
|
|
50
|
+
*/
|
|
51
|
+
declare function AsylumGGTSLoadMessages(): Promise<void>;
|
|
52
|
+
/**
|
|
53
|
+
* Return a localized GGTS message
|
|
54
|
+
* @param {string} key
|
|
55
|
+
*/
|
|
56
|
+
declare function AsylumGGTSGetMessage(key: string): string;
|
|
48
57
|
declare function AsylumGGTSLoad(): Promise<void>;
|
|
49
58
|
/**
|
|
50
59
|
* Runs the room
|
|
@@ -82,7 +91,7 @@ declare function AsylumGGTSBuildPrivate(): void;
|
|
|
82
91
|
* @param {Character} C - The character to rename
|
|
83
92
|
* @returns {string} - The new name for that character
|
|
84
93
|
*/
|
|
85
|
-
declare function AsylumGGTSCharacterName(C: Character
|
|
94
|
+
declare function AsylumGGTSCharacterName(C: Character): string;
|
|
86
95
|
/**
|
|
87
96
|
* Sends a chat message from the GGTS. GGTS slowly replaces the player name by the player number as level rises.
|
|
88
97
|
* @param {string} Msg - The message to publish
|
|
@@ -98,11 +107,10 @@ declare function AsylumGGTSSetTimer(): void;
|
|
|
98
107
|
/**
|
|
99
108
|
* Returns TRUE if the query was answered by character number M
|
|
100
109
|
* @param {number} Level - The player GGTS level, at level 4 or more, capital letters and punctuation matters
|
|
101
|
-
* @param {string}
|
|
102
|
-
* @param {string} TextHard - The text to evaluate
|
|
110
|
+
* @param {string} Text - The text to evaluate
|
|
103
111
|
* @returns {boolean} - TRUE if the is done
|
|
104
112
|
*/
|
|
105
|
-
declare function AsylumGGTSQueryDone(Level: number,
|
|
113
|
+
declare function AsylumGGTSQueryDone(Level: number, Text: string): boolean;
|
|
106
114
|
/**
|
|
107
115
|
* Returns TRUE if the task T is currently done by character C
|
|
108
116
|
* @param {Character} C - The character to evaluate
|