bc-stubs 111.0.0 → 112.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/Backgrounds/Backgrounds.d.ts +1 -0
- package/bc/NativeDeclarations/Female3DCG_Types.d.ts +35 -18
- package/bc/NativeDeclarations/Typedef.d.ts +15 -2
- package/bc/Screens/Character/BackgroundSelection/BackgroundSelection.d.ts +1 -0
- package/bc/Screens/Inventory/FaceMarkings/FaceWritings/FaceWritings.d.ts +1 -0
- package/bc/Screens/Inventory/ItemNeck/PetSuitShockCollar/PetSuitShockCollar.d.ts +2 -1
- package/bc/Screens/Inventory/ItemPelvis/FuturisticTrainingBelt/FuturisticTrainingBelt.d.ts +2 -1
- package/bc/Screens/Inventory/ItemPelvis/ModularChastityBelt/ModularChastityBelt.d.ts +4 -1
- package/bc/Screens/Online/ChatAdmin/ChatAdmin.d.ts +1 -0
- package/bc/Screens/Online/ChatAdminRoomCustomization/ChatAdminRoomCustomization.d.ts +1 -0
- package/bc/Screens/Online/ChatCreate/ChatCreate.d.ts +0 -4
- package/bc/Screens/Online/ChatRoom/ChatRoom.d.ts +5 -2
- package/bc/Screens/Online/ChatSearch/ChatSearch.d.ts +19 -10
- package/bc/Screens/Online/ChatSelect/ChatSelect.d.ts +6 -0
- package/bc/Screens/Room/Infiltration/Infiltration.d.ts +16 -2
- package/bc/Screens/Room/Pandora/Pandora.d.ts +55 -4
- package/bc/Scripts/Common.d.ts +8 -0
- package/bc/Scripts/Dialog.d.ts +1 -0
- package/bc/Scripts/Element.d.ts +2 -2
- package/package.json +1 -1
|
@@ -21,6 +21,7 @@ declare const BackgroundsTagClub: "Club & College";
|
|
|
21
21
|
declare const BackgroundsTagHouse: "Regular house";
|
|
22
22
|
declare const BackgroundsTagDungeon: "Dungeon";
|
|
23
23
|
declare const BackgroundsTagAsylum: "Asylum";
|
|
24
|
+
declare const BackgroundsTagPandora: "Pandora";
|
|
24
25
|
/**
|
|
25
26
|
* List of all tags to create online chat rooms
|
|
26
27
|
* @constant
|
|
@@ -564,7 +564,7 @@ interface AssetDefinitionBase extends AssetCommonPropertiesGroupAsset, AssetComm
|
|
|
564
564
|
* A value of -1 makes the asset unavailable, a value of 0 makes it always available.
|
|
565
565
|
*/
|
|
566
566
|
Value?: number;
|
|
567
|
-
|
|
567
|
+
|
|
568
568
|
/**
|
|
569
569
|
* Whether an item should never be able to be sold.
|
|
570
570
|
*
|
|
@@ -572,40 +572,52 @@ interface AssetDefinitionBase extends AssetCommonPropertiesGroupAsset, AssetComm
|
|
|
572
572
|
*/
|
|
573
573
|
NeverSell?: boolean;
|
|
574
574
|
|
|
575
|
-
/** A measure of how hard it is to remove the
|
|
575
|
+
/** A measure of how hard it is to remove the restraint. Defaults to 0. */
|
|
576
576
|
Difficulty?: number;
|
|
577
577
|
|
|
578
|
+
/** The required self bondage skill level for equipping a restraint on oneself. */
|
|
578
579
|
SelfBondage?: number;
|
|
580
|
+
/** Whether the player can remove any applied locks to the item */
|
|
579
581
|
SelfUnlock?: boolean;
|
|
582
|
+
/** Whether only a specific set of characters can unlock the applied lock */
|
|
580
583
|
ExclusiveUnlock?: boolean;
|
|
581
584
|
|
|
582
585
|
/** Whether the asset gets removed automatically when the character log in. Defaults to false. */
|
|
583
586
|
RemoveAtLogin?: boolean;
|
|
584
587
|
|
|
588
|
+
/** The base time required for equipping an item. */
|
|
585
589
|
Time?: number;
|
|
586
590
|
/** Enables advanced layer visibility on the asset. See {@link AssetLayerDefinition.Visibility} for more information. */
|
|
587
591
|
LayerVisibility?: boolean;
|
|
592
|
+
/** The base time required for removing a restraint. */
|
|
588
593
|
RemoveTime?: number;
|
|
594
|
+
/** The default time for a timer lock */
|
|
589
595
|
RemoveTimer?: number;
|
|
596
|
+
/** The maximum allowed time for a timer lock */
|
|
590
597
|
MaxTimer?: number;
|
|
591
598
|
|
|
592
599
|
Height?: number;
|
|
593
600
|
Zoom?: number;
|
|
594
601
|
Prerequisite?: AssetPrerequisite | AssetPrerequisite[];
|
|
595
602
|
Extended?: boolean;
|
|
603
|
+
/** Whether the restraint's extended item menu can always be accessed, even if it would be otherwise blocked */
|
|
596
604
|
AlwaysExtend?: boolean;
|
|
605
|
+
/** Whether the restraint's extended item menu can always be accessed, even if the player's hands are otherwise restrained */
|
|
597
606
|
AlwaysInteract?: boolean;
|
|
607
|
+
/** Whether the restraint can be locked */
|
|
598
608
|
AllowLock?: boolean;
|
|
609
|
+
/** Whether the restraint is a lock (see {@link AssetLockType}) */
|
|
599
610
|
IsLock?: boolean;
|
|
611
|
+
/** The lock picking difficulty for those locks that can be picked */
|
|
600
612
|
PickDifficulty?: number | null;
|
|
601
613
|
|
|
602
|
-
/** Whether the
|
|
614
|
+
/** Whether the restraint is only available to owners. */
|
|
603
615
|
OwnerOnly?: boolean;
|
|
604
616
|
|
|
605
|
-
/** Whether the
|
|
617
|
+
/** Whether the restraint is only available to lovers. */
|
|
606
618
|
LoverOnly?: boolean;
|
|
607
619
|
|
|
608
|
-
/** Whether the
|
|
620
|
+
/** Whether the restraint is only available to the family. */
|
|
609
621
|
FamilyOnly?: boolean;
|
|
610
622
|
|
|
611
623
|
/** A list of facial expression using the asset causes to the character */
|
|
@@ -731,25 +743,30 @@ declare namespace AssetDefinition {
|
|
|
731
743
|
/** An {@link AssetDefinition} subtype for assets whose group is of the `Appearance` category. */
|
|
732
744
|
interface Appearance extends AssetDefinitionBase {
|
|
733
745
|
AllowLock?: false;
|
|
734
|
-
IsLock?: false;
|
|
735
|
-
PickDifficulty?: never;
|
|
736
|
-
OwnerOnly?: false;
|
|
737
|
-
LoverOnly?: false;
|
|
738
|
-
FamilyOnly?: false;
|
|
739
|
-
AllowTighten?: false;
|
|
740
|
-
DrawLocks?: false;
|
|
741
|
-
CustomBlindBackground?: never;
|
|
742
|
-
CraftGroup?: never;
|
|
743
746
|
AllowLockType?: never;
|
|
744
|
-
CharacterRestricted?: false;
|
|
745
747
|
AllowRemoveExclusive?: false;
|
|
748
|
+
AllowTighten?: false;
|
|
749
|
+
AlwaysExtend?: false;
|
|
750
|
+
AlwaysInteract?: false;
|
|
746
751
|
ArousalZone?: never;
|
|
752
|
+
CharacterRestricted?: false;
|
|
753
|
+
CraftGroup?: never;
|
|
754
|
+
CustomBlindBackground?: never;
|
|
747
755
|
Difficulty?: never;
|
|
756
|
+
DrawLocks?: false;
|
|
757
|
+
ExclusiveUnlock?: false;
|
|
758
|
+
FamilyOnly?: false;
|
|
759
|
+
IsLock?: false;
|
|
760
|
+
IsRestraint?: false;
|
|
761
|
+
LoverOnly?: false;
|
|
762
|
+
MaxTimer?: never;
|
|
763
|
+
OwnerOnly?: false;
|
|
764
|
+
PickDifficulty?: never;
|
|
765
|
+
RemoveTime?: never;
|
|
766
|
+
RemoveTimer?: never;
|
|
748
767
|
SelfBondage?: never;
|
|
749
768
|
SelfUnlock?: false;
|
|
750
|
-
|
|
751
|
-
AlwaysInteract?: false;
|
|
752
|
-
IsRestraint?: false;
|
|
769
|
+
Time?: never;
|
|
753
770
|
}
|
|
754
771
|
/** An {@link AssetDefinition} subtype for assets whose group is of the `Script` category. */
|
|
755
772
|
interface Script extends AssetDefinitionBase {
|
|
@@ -128,6 +128,13 @@ declare namespace ElementButton {
|
|
|
128
128
|
tooltip?: null | string | Node | HTMLOptions<any> | readonly (null | string | Node | HTMLOptions<any>)[]
|
|
129
129
|
/** The position of the tooltip w.r.t. the button */
|
|
130
130
|
tooltipPosition?: "left" | "right" | "top" | "bottom";
|
|
131
|
+
/**
|
|
132
|
+
* The aria accessibility role of the the tooltip; defaults to `description` if a {@link ElementButton.Options.label} is present and `label` otherwise:
|
|
133
|
+
* * `label` ([`aria-labelledby`](https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Attributes/aria-labelledby)): A compact, 1-line summary of the button
|
|
134
|
+
* * `description` ([`aria-describedby`](https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Attributes/aria-describedby)): A longer, potentially multi-line, button description
|
|
135
|
+
* * `none`: Nothing
|
|
136
|
+
*/
|
|
137
|
+
tooltipRole?: "label" | "description" | "none";
|
|
131
138
|
/** A button label */
|
|
132
139
|
label?: string;
|
|
133
140
|
/** The position of the button label */
|
|
@@ -190,6 +197,8 @@ interface CommonGenerateGridParameters {
|
|
|
190
197
|
* @default "horizontal"
|
|
191
198
|
*/
|
|
192
199
|
direction?: "horizontal" | "vertical";
|
|
200
|
+
minMarginX?: number;
|
|
201
|
+
minMarginY?: number;
|
|
193
202
|
}
|
|
194
203
|
|
|
195
204
|
type CommonGenerateGridCallback<T> = (item: T, x: number, y: number, width: number, height: number) => boolean;
|
|
@@ -392,7 +401,7 @@ type AssetGroupBodyName =
|
|
|
392
401
|
'HairFront' | 'HandAccessoryLeft' | 'HandAccessoryRight' | 'FacialHair' | 'Hat' | 'Head' | 'Height' | 'Jewelry' | 'Mask' |
|
|
393
402
|
'Necklace' | 'Nipples' | 'Panties' | 'Pronouns' |
|
|
394
403
|
'Shoes' | 'Socks' | 'SocksLeft' | 'SocksRight' | 'Suit' | 'SuitLower' | 'TailStraps' | 'Wings' |
|
|
395
|
-
'HandsLeft' | 'HandsRight'
|
|
404
|
+
'HandsLeft' | 'HandsRight' | 'FaceMarkings'
|
|
396
405
|
;
|
|
397
406
|
|
|
398
407
|
type AssetGroupName = AssetGroupBodyName | AssetGroupItemName | AssetGroupScriptName;
|
|
@@ -537,7 +546,7 @@ type FetishName =
|
|
|
537
546
|
|
|
538
547
|
type BackgroundTag =
|
|
539
548
|
"Filter by tag" | "Indoor" | "Outdoor" | "Aquatic" | "Special Events" | "SciFi & Fantasy" |
|
|
540
|
-
"Club & College" | "Regular house" | "Dungeon" | "Asylum"
|
|
549
|
+
"Club & College" | "Regular house" | "Dungeon" | "Asylum" | "Pandora"
|
|
541
550
|
;
|
|
542
551
|
|
|
543
552
|
// NOTE: `NPCArchetype` is for NPC's only
|
|
@@ -577,6 +586,9 @@ type ChatRoomOwnershipOption = "" | "CanOfferEndTrial" | "CanOfferTrial" | "CanE
|
|
|
577
586
|
type ChatRoom = ServerChatRoomData;
|
|
578
587
|
type ChatRoomSettings = ServerChatRoomSettings;
|
|
579
588
|
|
|
589
|
+
/** ChatRoom results once received by the client */
|
|
590
|
+
type ChatRoomSearchResult = (ServerChatRoomSearchData & { DisplayName: string, Order: number });
|
|
591
|
+
|
|
580
592
|
type StimulationAction = "Kneel" | "Walk" | "Struggle" | "StruggleFail" | "Talk";
|
|
581
593
|
|
|
582
594
|
interface StimulationEvent {
|
|
@@ -3427,6 +3439,7 @@ interface GameClubCardParameters {
|
|
|
3427
3439
|
|
|
3428
3440
|
interface GamePrisonParameters {
|
|
3429
3441
|
Timer?: number;
|
|
3442
|
+
Role?: string;
|
|
3430
3443
|
}
|
|
3431
3444
|
|
|
3432
3445
|
//#endregion
|
|
@@ -25,6 +25,7 @@ declare function BackgroundSelectionSort(a: {
|
|
|
25
25
|
* @returns {void} - Nothing
|
|
26
26
|
*/
|
|
27
27
|
declare function BackgroundSelectionLoad(): void;
|
|
28
|
+
declare function BackgroundSelectionUnload(): void;
|
|
28
29
|
/**
|
|
29
30
|
* Handles input in the text box in the topmost row of the selection screen
|
|
30
31
|
* and changes the offset of the background selection appropriately
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
declare function AssetsFaceMarkingsFaceWritingsAfterDrawHook(data: TextItemData, originalFunction: (drawData: DynamicDrawingData<Record<string, unknown>>) => void, drawData: DynamicDrawingData<Record<string, unknown>>): void;
|
|
@@ -4,8 +4,9 @@ declare function InventoryItemNeckPetSuitShockCollarResetCount(): void;
|
|
|
4
4
|
declare function AssetsItemNeckPetSuitShockCollarBeforeDraw(drawData: DynamicDrawingData<PetSuitShockCollarPersistentData>): DynamicBeforeDrawOverrides;
|
|
5
5
|
/**
|
|
6
6
|
* @param {Item} Item
|
|
7
|
+
* @param {Character} C
|
|
7
8
|
*/
|
|
8
|
-
declare function InventoryPetSuitShockCollarCheckPunish(Item: Item): "" | "Struggle" | "Activity" | "StandUp";
|
|
9
|
+
declare function InventoryPetSuitShockCollarCheckPunish(Item: Item, C: Character): "" | "Struggle" | "Activity" | "StandUp";
|
|
9
10
|
/**
|
|
10
11
|
* @param {DynamicScriptCallbackData<FuturisticChastityBeltPersistentData>} data
|
|
11
12
|
* @param {number} LastTime
|
|
@@ -65,7 +65,8 @@ declare var FuturisticTrainingBeltModes: string[];
|
|
|
65
65
|
declare var FuturisticTrainingBeltStates: string[];
|
|
66
66
|
/** @type {ItemPropertiesCustom["PublicModeCurrent"]} */
|
|
67
67
|
declare var FuturisticTrainingBeltSetMode: ItemPropertiesCustom["PublicModeCurrent"];
|
|
68
|
-
|
|
68
|
+
/** @deprecated */
|
|
69
|
+
declare var FuturisticTrainingBeltStandUpFlag: never;
|
|
69
70
|
declare var FuturisticTrainingBeltSpeechCharacterLimit: number;
|
|
70
71
|
declare var FuturisticTrainingBeltRandomEdgeCycle: number;
|
|
71
72
|
declare var FuturisticTrainingBeltRandomTeaseDurationMin: number;
|
|
@@ -66,7 +66,10 @@ declare function InventoryItemPelvisModularChastityBeltCheckPunish(Item: Item, C
|
|
|
66
66
|
* @returns {boolean}
|
|
67
67
|
*/
|
|
68
68
|
declare function InventoryItemPelvisModularChastityBeltCheckStanding(PunishStandup: boolean, C: Character, isPlayerInChatRoom: boolean, ShockCooldown: number): boolean;
|
|
69
|
-
|
|
69
|
+
/**
|
|
70
|
+
* @param {Character} C
|
|
71
|
+
*/
|
|
72
|
+
declare function InventoryItemPelvisModularChastityBeltForceKneel(C: Character): void;
|
|
70
73
|
declare var InventoryItemPelvisModularChastityBeltVoiceTriggers: string[];
|
|
71
74
|
/** @type {string[]} */
|
|
72
75
|
declare var InventoryItemPelvisModularChastityBeltVoiceTriggerValues: string[];
|
|
@@ -10,6 +10,7 @@ declare function ChatAdminRoomCustomizationCommand(Property: "Image" | "Filter"
|
|
|
10
10
|
* @returns {void} - Nothing
|
|
11
11
|
*/
|
|
12
12
|
declare function ChatAdminRoomCustomizationLoad(): void;
|
|
13
|
+
declare function ChatAdminRoomCustomizationUnload(): void;
|
|
13
14
|
/**
|
|
14
15
|
* Plays or stop the background music
|
|
15
16
|
* @param {string} Music - The URL of the music to play
|
|
@@ -20,10 +20,6 @@ declare function ChatCreateRoom(): void;
|
|
|
20
20
|
* @returns {void} - Nothing
|
|
21
21
|
*/
|
|
22
22
|
declare function ChatCreateBlockItems(): void;
|
|
23
|
-
/**
|
|
24
|
-
* Removes all chatroom creation inputs
|
|
25
|
-
*/
|
|
26
|
-
declare function ChatRoomCreateRemoveInput(): void;
|
|
27
23
|
declare var ChatCreateBackground: string;
|
|
28
24
|
declare var ChatCreateResult: any[];
|
|
29
25
|
declare var ChatCreateMessage: string;
|
|
@@ -866,8 +866,11 @@ declare function ChatRoomAddCharacterToChatRoom(newCharacter: Character, newRawC
|
|
|
866
866
|
*/
|
|
867
867
|
declare function ChatRoomValidateProperties(obj: unknown): obj is ChatRoom;
|
|
868
868
|
/**
|
|
869
|
-
* Handles the reception of the
|
|
870
|
-
*
|
|
869
|
+
* Handles the reception of the data for a room we've just entered.
|
|
870
|
+
*
|
|
871
|
+
* This only happens once per ChatRoom "lifetime".
|
|
872
|
+
*
|
|
873
|
+
* @param {ServerChatRoomSyncMessage} data - Room object containing the new chatroom data.
|
|
871
874
|
* @returns {void} - Nothing.
|
|
872
875
|
*/
|
|
873
876
|
declare function ChatRoomSync(data: ServerChatRoomSyncMessage): void;
|
|
@@ -114,10 +114,10 @@ declare function ChatSearchClickPermission(): void;
|
|
|
114
114
|
* Shows a confirmation screen first, unless the only reason is "TempHidden".
|
|
115
115
|
* This is called when clicking a room in the list and also, if a confirmation is shown, called again when the confirm button is clicked.
|
|
116
116
|
*
|
|
117
|
-
* @param {number} C - Index of the room within ChatSearchHiddenResult
|
|
117
|
+
* @param {ChatRoomSearchResult | number} C - Index of the room within ChatSearchHiddenResult
|
|
118
118
|
* @param {boolean} Confirmed - False when clicking on room list, true when clicking Confirm button
|
|
119
119
|
*/
|
|
120
|
-
declare function ChatSearchClickUnhideRoom(C: number, Confirmed: boolean):
|
|
120
|
+
declare function ChatSearchClickUnhideRoom(C: ChatRoomSearchResult | number, Confirmed: boolean): boolean;
|
|
121
121
|
/**
|
|
122
122
|
* Handles the reception of the server response when joining a room or when getting banned/kicked
|
|
123
123
|
* @param {ServerChatRoomSearchResponse} data - Response from the server
|
|
@@ -195,14 +195,15 @@ declare function ChatSearchMatchesTerms(Room: {
|
|
|
195
195
|
* @returns {number} - Starting offset for ingored rooms
|
|
196
196
|
*/
|
|
197
197
|
declare function ChatSearchCalculateIgnoredRoomsOffset(shownRooms: number): number;
|
|
198
|
+
/**
|
|
199
|
+
* @file This file handles the chat lobby search & filter screen
|
|
200
|
+
*/
|
|
201
|
+
/** Background image */
|
|
198
202
|
declare var ChatSearchBackground: string;
|
|
199
|
-
/** @type {
|
|
200
|
-
declare var ChatSearchResult:
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
})[];
|
|
204
|
-
/** @type {typeof ChatSearchResult} */
|
|
205
|
-
declare var ChatSearchHiddenResult: typeof ChatSearchResult;
|
|
203
|
+
/** @type {ChatRoomSearchResult[]} */
|
|
204
|
+
declare var ChatSearchResult: ChatRoomSearchResult[];
|
|
205
|
+
/** @type {ChatRoomSearchResult[]} */
|
|
206
|
+
declare var ChatSearchHiddenResult: ChatRoomSearchResult[];
|
|
206
207
|
/** @type {null | { Query: string, Language: "" | ServerChatRoomLanguage, Space: ServerChatRoomSpace, Game: ServerChatRoomGame, FullRooms: boolean }} */
|
|
207
208
|
declare var ChatSearchLastSearchDataJSON: null | {
|
|
208
209
|
Query: string;
|
|
@@ -215,9 +216,17 @@ declare var ChatSearchLastQuerySearchTime: number;
|
|
|
215
216
|
declare var ChatSearchLastQueryJoin: string;
|
|
216
217
|
declare var ChatSearchLastQueryJoinTime: number;
|
|
217
218
|
declare var ChatSearchResultOffset: number;
|
|
218
|
-
|
|
219
|
+
/** The room grid's left offset */
|
|
219
220
|
declare var ChatSearchPageX: number;
|
|
221
|
+
/** The room grid's top offset */
|
|
220
222
|
declare var ChatSearchPageY: number;
|
|
223
|
+
/**
|
|
224
|
+
* Layout parameters for the room grid
|
|
225
|
+
* @type {CommonGenerateGridParameters}
|
|
226
|
+
*/
|
|
227
|
+
declare var ChatSearchListParams: CommonGenerateGridParameters;
|
|
228
|
+
/** Pre-calculated. Must be updated if you change the grid parameters */
|
|
229
|
+
declare var ChatSearchRoomsPerPage: number;
|
|
221
230
|
declare var ChatSearchMessage: string;
|
|
222
231
|
declare var ChatSearchLeaveRoom: string;
|
|
223
232
|
/** @type {ModuleType} */
|
|
@@ -26,6 +26,12 @@ declare function ChatSelectExit(): void;
|
|
|
26
26
|
* @returns {boolean} - Whether the genders are allowed
|
|
27
27
|
*/
|
|
28
28
|
declare function ChatSelectGendersAllowed(space: ServerChatRoomSpace, genders: AssetGender[]): boolean;
|
|
29
|
+
/**
|
|
30
|
+
* @file This file handles the chat lobby space pre-selection screen
|
|
31
|
+
*/
|
|
32
|
+
/**
|
|
33
|
+
* Background image
|
|
34
|
+
*/
|
|
29
35
|
declare var ChatSelectBackground: string;
|
|
30
36
|
/** @type {boolean} */
|
|
31
37
|
declare var ChatSelectAllowedInFemaleOnly: boolean;
|
|
@@ -207,18 +207,31 @@ declare function InfiltrationClubCardStart(): void;
|
|
|
207
207
|
* @returns {void} - Nothing
|
|
208
208
|
*/
|
|
209
209
|
declare function InfiltrationClubCardEnd(): void;
|
|
210
|
+
/**
|
|
211
|
+
* Checks if the role in parameter is the current player role
|
|
212
|
+
* @param {string} Role - The role to evaluate (I for Inmate, G for Guard)
|
|
213
|
+
* @returns {boolean} - TRUE if the role matches the parameter
|
|
214
|
+
*/
|
|
215
|
+
declare function InfiltrationPenitentiaryRoleIs(Role: string): boolean;
|
|
210
216
|
/**
|
|
211
217
|
* Starts the Pandora's padlock special mission, cannot be given randomly
|
|
212
218
|
* @param {string} Minutes - The number of minutes to lock the player
|
|
213
219
|
* @param {string} Amount - The money amount and infiltration skill gained
|
|
220
|
+
* @param {string} Role - The role to take (I for Inmate or G for Guard)
|
|
214
221
|
* @returns {void} - Nothing
|
|
215
222
|
*/
|
|
216
|
-
declare function InfiltrationPreparePenitentiary(Minutes: string, Amount: string): void;
|
|
223
|
+
declare function InfiltrationPreparePenitentiary(Minutes: string, Amount: string, Role: string): void;
|
|
217
224
|
/**
|
|
218
225
|
* Starts the Pandora's padlock special mission, cannot be given randomly
|
|
226
|
+
* @param {string} Param - An optional NEW param to create a new room
|
|
227
|
+
* @returns {void} - Nothing
|
|
228
|
+
*/
|
|
229
|
+
declare function InfiltrationStartPenitentiary(Param: string): void;
|
|
230
|
+
/**
|
|
231
|
+
* When the player asks to be costumed as a guard
|
|
219
232
|
* @returns {void} - Nothing
|
|
220
233
|
*/
|
|
221
|
-
declare function
|
|
234
|
+
declare function InfiltrationGuardDressUp(): void;
|
|
222
235
|
declare var InfiltrationBackground: string;
|
|
223
236
|
/** @type {NPCCharacter} */
|
|
224
237
|
declare var InfiltrationSupervisor: NPCCharacter;
|
|
@@ -240,3 +253,4 @@ declare var InfiltrationPandoraPrisoner: NPCCharacter;
|
|
|
240
253
|
declare var InfiltrationPartyPrisoner: NPCCharacter;
|
|
241
254
|
declare var InfiltrationPenitentiaryMinutes: number;
|
|
242
255
|
declare var InfiltrationPenitentiaryAmount: number;
|
|
256
|
+
declare var InfiltrationPenitentiaryRole: string;
|
|
@@ -278,15 +278,22 @@ declare function PandoraPenitentiaryPrepare(): void;
|
|
|
278
278
|
/**
|
|
279
279
|
* Starts the multi-player punishment
|
|
280
280
|
* @param {number} Minutes - The number of minutes for the sentence
|
|
281
|
+
* @param {string} Role - The role to take (I for Inmate, G for guard)
|
|
281
282
|
* @returns {void} - Nothing
|
|
282
283
|
*/
|
|
283
|
-
declare function PandoraPenitentiaryStart(Minutes: number): void;
|
|
284
|
+
declare function PandoraPenitentiaryStart(Minutes: number, Role: string): void;
|
|
284
285
|
/**
|
|
285
|
-
* Checks if the current character is currently
|
|
286
|
+
* Checks if the current character is currently a Pandora Penitentiary inmate (I)
|
|
286
287
|
* @param {Character} C - The character to evaluate
|
|
287
|
-
* @returns {boolean} - TRUE if sentence is active
|
|
288
|
+
* @returns {boolean} - TRUE if sentence is active and role is inmate
|
|
288
289
|
*/
|
|
289
|
-
declare function
|
|
290
|
+
declare function PandoraPenitentiaryIsInmate(C: Character): boolean;
|
|
291
|
+
/**
|
|
292
|
+
* Checks if the current character is currently a Pandora Penitentiary guard (G)
|
|
293
|
+
* @param {Character} C - The character to evaluate
|
|
294
|
+
* @returns {boolean} - TRUE if shift is active and role is guard
|
|
295
|
+
*/
|
|
296
|
+
declare function PandoraPenitentiaryIsGuard(C: Character): boolean;
|
|
290
297
|
/**
|
|
291
298
|
* Called from MainHall and ChatSearch - Checks if we must create the Pandora prison and creates it
|
|
292
299
|
* @returns {void} - Nothing
|
|
@@ -298,11 +305,52 @@ declare function PandoraPenitentiaryCreate(): void;
|
|
|
298
305
|
* @returns {void} - Nothing
|
|
299
306
|
*/
|
|
300
307
|
declare function PandoraPenitentiaryResult(Result: object): void;
|
|
308
|
+
/**
|
|
309
|
+
* Returns TRUE if the group is available for an Onlin Pandora Prison activity
|
|
310
|
+
* @param {Character} C - The character to evaluate
|
|
311
|
+
* @param {AssetGroupItemName} Group - The item group name
|
|
312
|
+
* @param {boolean} SkipBlock - If we should skip the GroupIsBlocked validation
|
|
313
|
+
* @returns {boolean} - TRUE if the group is available
|
|
314
|
+
*/
|
|
315
|
+
declare function PandoraGroupAvailable(C: Character, Group: AssetGroupItemName, SkipBlock?: boolean): boolean;
|
|
316
|
+
/**
|
|
317
|
+
* Sets a proper minimal difficulty for the new item set in Online Pandora Prison
|
|
318
|
+
* @param {Character} C - The character to evaluate
|
|
319
|
+
* @param {AssetGroupItemName} Group - The item group name
|
|
320
|
+
* @param {number} Level - The infiltration level, the higher it gets the harder the difficulty will be
|
|
321
|
+
* @returns {void} - Nothing
|
|
322
|
+
*/
|
|
323
|
+
declare function PandoraPenitentiaryItemDifficulty(C: Character, Group: AssetGroupItemName, Level: number): void;
|
|
324
|
+
/**
|
|
325
|
+
* Builds a list of all valid Pandora activities for the player
|
|
326
|
+
* @param {Character} C - The character to build a list for
|
|
327
|
+
* @returns {Array} - An array of all valid activities for the player
|
|
328
|
+
*/
|
|
329
|
+
declare function PandoraPenitentiaryBuildActivityList(C: Character): any[];
|
|
330
|
+
/**
|
|
331
|
+
* Runs the selected activity inmate activity for the player
|
|
332
|
+
* @param {string} Activity - The activity to run
|
|
333
|
+
* @returns {void} - Nothing
|
|
334
|
+
*/
|
|
335
|
+
declare function PandoraPenitentiaryActivityRun(Activity: string): void;
|
|
301
336
|
/**
|
|
302
337
|
* Runs the pandora prison events
|
|
303
338
|
* @returns {void} - Nothing
|
|
304
339
|
*/
|
|
305
340
|
declare function PandoraPenitentiaryRun(): void;
|
|
341
|
+
/**
|
|
342
|
+
* Runs the pandora command from the online chat box
|
|
343
|
+
* @param {string} Activity - The activity to validate
|
|
344
|
+
* @returns {void} - Nothing
|
|
345
|
+
*/
|
|
346
|
+
declare function PandoraPenitentiaryDoActivity(Activity: string): void;
|
|
347
|
+
/**
|
|
348
|
+
* Called from chat room, processes hidden Pandora Prison messages
|
|
349
|
+
* @param {Character} SenderCharacter - The character sending the message
|
|
350
|
+
* @param {String} Interaction - The message sent
|
|
351
|
+
* @returns {Object} - Nothing to be used
|
|
352
|
+
*/
|
|
353
|
+
declare function PandoraPenitentiaryHiddenMessage(SenderCharacter: Character, Interaction: string): any;
|
|
306
354
|
/**
|
|
307
355
|
* When an NPC pays the player for a service
|
|
308
356
|
* @param {string} Amount - The paid amount
|
|
@@ -381,5 +429,8 @@ declare var PandoraPaint: boolean;
|
|
|
381
429
|
declare var PandoraReverseMaidDone: number;
|
|
382
430
|
declare var PandoraReverseMaidTotal: number;
|
|
383
431
|
declare var PandoraPenitentiaryCreateTimer: number;
|
|
432
|
+
declare var PandoraPenitentiaryActivityList: string[];
|
|
384
433
|
declare var PandoraPenitentiaryActivityTimer: number;
|
|
385
434
|
declare var PandoraPenitentiarySafewordRooms: any[];
|
|
435
|
+
declare var PandoraPenitentiaryCageList: string[];
|
|
436
|
+
declare var PandoraPenitentiaryStartNewRoom: boolean;
|
package/bc/Scripts/Common.d.ts
CHANGED
|
@@ -661,4 +661,12 @@ declare namespace CommonKey {
|
|
|
661
661
|
* @returns {number} - The bitmask of keyboard modifiers
|
|
662
662
|
*/
|
|
663
663
|
function GetModifiers(event: KeyboardEvent): number;
|
|
664
|
+
/**
|
|
665
|
+
* A {@link ScreenFunctions.keydown} helper function for implementing the navigation key handling of scrollable elements.
|
|
666
|
+
* @param {HTMLElement} scrollableElem - The scrollable element
|
|
667
|
+
* @param {KeyboardEvent} event - The keydown event
|
|
668
|
+
* @param {(scrollableElem: HTMLElement) => number} getArrowScrollDistance - A callback for computing the (absolute) scroll distance for up/down arrow key presses
|
|
669
|
+
* @returns {boolean} - Whether a navigation key was (successfuly pressed)
|
|
670
|
+
*/
|
|
671
|
+
function NavigationKeyDown(scrollableElem: HTMLElement, event: KeyboardEvent, getArrowScrollDistance: (scrollableElem: HTMLElement) => number): boolean;
|
|
664
672
|
}
|
package/bc/Scripts/Dialog.d.ts
CHANGED
|
@@ -1045,6 +1045,7 @@ declare class DialogMenu<ModeType extends string = string, ClickedObj extends Di
|
|
|
1045
1045
|
_ClickDisabledButton(this: HTMLButtonElement, ev: MouseEvent): null | string;
|
|
1046
1046
|
_ClickPaginatePrev(this: HTMLButtonElement, ev: MouseEvent): void;
|
|
1047
1047
|
_ClickPaginateNext(this: HTMLButtonElement, ev: MouseEvent): void;
|
|
1048
|
+
_WheelGrid(this: HTMLDivElement, event: WheelEvent): void;
|
|
1048
1049
|
};
|
|
1049
1050
|
/**
|
|
1050
1051
|
* The name of the mode associated with this instance (see {@link DialogMenuMode}).
|
package/bc/Scripts/Element.d.ts
CHANGED
|
@@ -336,7 +336,7 @@ declare namespace ElementButton {
|
|
|
336
336
|
* Parse the passed icon list, returning its corresponding `<img>` grid and tooltip if non-empty
|
|
337
337
|
* @param {string} id - The ID of the parent element
|
|
338
338
|
* @param {readonly (InventoryIcon | { name: string, iconSrc: string, tooltipText: string | Node })[]} [icons] - The (optional) list of icons
|
|
339
|
-
* @returns {null | { iconGrid: HTMLDivElement, tooltip:
|
|
339
|
+
* @returns {null | { iconGrid: HTMLDivElement, tooltip: [string, HTMLElement, HTMLElement] }} - `null` if the provided icon list is empty and otherwise an object containing the icon grid and a icon-specific tooltip
|
|
340
340
|
*/
|
|
341
341
|
function _ParseIcons(id: string, icons?: readonly (InventoryIcon | {
|
|
342
342
|
name: string;
|
|
@@ -344,7 +344,7 @@ declare namespace ElementButton {
|
|
|
344
344
|
tooltipText: string | Node;
|
|
345
345
|
})[]): null | {
|
|
346
346
|
iconGrid: HTMLDivElement;
|
|
347
|
-
tooltip:
|
|
347
|
+
tooltip: [string, HTMLElement, HTMLElement];
|
|
348
348
|
};
|
|
349
349
|
/**
|
|
350
350
|
* @private
|