bc-stubs 106.0.0 → 107.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/FriendList.d.ts +29 -0
- package/bc/{Typedef.d.ts → NativeDeclarations/Typedef.d.ts} +13 -3
- package/bc/Screens/Character/FriendList/FriendList.d.ts +75 -34
- package/bc/Screens/Online/ChatRoom/ChatRoomCharacterView.d.ts +0 -1
- package/bc/Screens/Online/ChatRoom/ChatRoomMapView.d.ts +2 -0
- package/bc/Screens/Room/Private/Private.d.ts +5 -0
- package/bc/Screens/Room/Shop2/Shop2.d.ts +1 -1
- package/bc/Screens/Room/SlaveMarket/SlaveMarket.d.ts +5 -0
- package/bc/Scripts/Asset.d.ts +2 -2
- package/bc/Scripts/Character.d.ts +2 -2
- package/bc/Scripts/Element.d.ts +16 -3
- package/bc/Scripts/Layering.d.ts +9 -0
- package/bc/Scripts/Server.d.ts +6 -3
- package/package.json +1 -1
- /package/bc/{Female3DCG_Types.d.ts → NativeDeclarations/Female3DCG_Types.d.ts} +0 -0
- /package/bc/{Messages.d.ts → NativeDeclarations/Messages.d.ts} +0 -0
- /package/bc/{lzstring.d.ts → NativeDeclarations/lzstring.d.ts} +0 -0
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
type FriendListModes = FriendListMode[];
|
|
2
|
+
type FriendListMode = "OnlineFriends" | "Beeps" | "AllFriends";
|
|
3
|
+
type FriendListSortingMode = 'None' | 'MemberName' | 'MemberNickname' | 'MemberNumber' | 'ChatRoomName' | 'RelationType';
|
|
4
|
+
type FriendListSortingDirection = 'Asc' | 'Desc';
|
|
5
|
+
|
|
6
|
+
type FriendListReturn = { Screen: string, Module: ModuleType, IsInChatRoom?: boolean, hasScrolledChat?: boolean };
|
|
7
|
+
|
|
8
|
+
type FriendRawData = {
|
|
9
|
+
memberNumber?: number; /* undefined for NPCs */
|
|
10
|
+
memberName: string;
|
|
11
|
+
memberNickname?: string;
|
|
12
|
+
chatRoom?: FriendRawRoom;
|
|
13
|
+
beep?: FriendRawBeep;
|
|
14
|
+
relationType?: string;
|
|
15
|
+
canDelete?: boolean;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
type FriendRawRoom = {
|
|
19
|
+
name?: string;
|
|
20
|
+
caption: string;
|
|
21
|
+
canSearchRoom: boolean;
|
|
22
|
+
};
|
|
23
|
+
|
|
24
|
+
type FriendRawBeep = {
|
|
25
|
+
beepIndex?: number;
|
|
26
|
+
caption: string;
|
|
27
|
+
hasMessage?: boolean;
|
|
28
|
+
canBeep?: boolean;
|
|
29
|
+
};
|
|
@@ -298,7 +298,8 @@ interface ExpressionNameMap {
|
|
|
298
298
|
Emoticon: (
|
|
299
299
|
null | "Afk" | "Whisper" | "Sleep" | "Hearts" | "Tear" | "Hearing" | "Confusion" | "Exclamation" |
|
|
300
300
|
"Annoyed" | "Read" | "RaisedHand" | "Spectator" | "ThumbsDown" | "ThumbsUp" | "LoveRope" |
|
|
301
|
-
"LoveGag" | "LoveLock" | "Wardrobe" | "Gaming" | "Coffee" | "Fork" | "Music"
|
|
301
|
+
"LoveGag" | "LoveLock" | "Wardrobe" | "Gaming" | "Coffee" | "Fork" | "Music" | "Car" | "Hanger" |
|
|
302
|
+
"Call" | "Lightbulb" | "Warning" | "BrokenHeart" | "Drawing" | "Coding" | "TV" | "Bathing"
|
|
302
303
|
),
|
|
303
304
|
}
|
|
304
305
|
|
|
@@ -369,6 +370,7 @@ type AssetAttribute =
|
|
|
369
370
|
"Skirt" | "SuitLower" | "UpperLarge" |
|
|
370
371
|
"ShortHair" | "SmallEars" | "NoEars" | "NoseRing" | "HoodieFix" |
|
|
371
372
|
"CanAttachMittens" |
|
|
373
|
+
"IsChestHarness" | "IsHipHarness" |
|
|
372
374
|
"PenisLayer" | "PussyLayer" | "GenitaliaCover" | "Pussy1" | "Pussy2" | "Pussy3" |
|
|
373
375
|
"CagePlastic2" | "CageTechno" | "CageFlat" |
|
|
374
376
|
"FuturisticRecolor" | "FuturisticRecolorDisplay" |
|
|
@@ -380,9 +382,11 @@ type PosePrerequisite = `Can${AssetPoseName}`;
|
|
|
380
382
|
type AssetPrerequisite =
|
|
381
383
|
PosePrerequisite | "AccessBreast" | "AccessBreastSuitZip" | "AccessButt" | "AccessFullPenis" | "AccessMouth" | "AccessTorso" | "AccessVulva" | "AccessCrotch" |
|
|
382
384
|
"BlockedMouth" | "ButtEmpty" | "CanBeCeilingTethered" | "CanCoverVulva" | "CanHaveErection" | "CanBeLimp" | "CanKneel" | "CannotBeSuited" | "CannotHaveWand" |
|
|
385
|
+
"CanAttachMittens" |
|
|
383
386
|
"ClitEmpty" | "Collared" | "CuffedArms" | "CuffedArmsOrEmpty" | "CuffedFeet" | "CuffedFeetOrEmpty" | "CuffedLegs" | "CuffedLegsOrEmpty" |
|
|
384
387
|
"DisplayFrame" | "EyesEmpty" | "GagCorset" | "GagFlat" | "GagUnique" | "GasMask" | "HasBreasts" | "HasFlatChest" | "HasPenis" | "HasVagina" |
|
|
385
|
-
"HoodEmpty" | "NakedFeet" | "NakedHands" | "
|
|
388
|
+
"HoodEmpty" | "NakedFeet" | "NakedHands" | "NeedsChestHarness" | "NeedsHipHarness" | "NeedsNippleRings" |
|
|
389
|
+
"NoChastityCage" | "NoErection" | "NoClothLower" | "NoItemArms" |
|
|
386
390
|
"NoItemFeet" | "NoItemHands" | "NoItemLegs" | "NoMaidTray" | "NoOuterClothes" | "NotChained" | "NotChaste" | "NotKneeling" |
|
|
387
391
|
"NotLifted" | "NotMasked" | "NotMounted" | "NotProtrudingFromMouth" | "NotSuspended" | "OnBed" |
|
|
388
392
|
"RemotesAllowed" | "VulvaEmpty"
|
|
@@ -1481,6 +1485,7 @@ interface Character {
|
|
|
1481
1485
|
IsAssFull: () => boolean;
|
|
1482
1486
|
IsFixedHead: () => boolean;
|
|
1483
1487
|
GetDeafLevel: () => number;
|
|
1488
|
+
CanPickLocks: () => boolean;
|
|
1484
1489
|
IsEdged: () => boolean;
|
|
1485
1490
|
IsPlayer: () => this is PlayerCharacter;
|
|
1486
1491
|
IsBirthday: () => boolean;
|
|
@@ -1574,7 +1579,7 @@ type NPCArchetype =
|
|
|
1574
1579
|
/* Pandora Special */
|
|
1575
1580
|
"Victim"|"Target"|"Chest"|
|
|
1576
1581
|
// Misc
|
|
1577
|
-
"Dominatrix" | "Nurse" | "Submissive" | "Mistress" | "Patient" | "Maid" | "Mistress" | "Maiestas" | "Vincula" | "Amplector" | "Corporis" | "AnimeGirl" | "Bunny"
|
|
1582
|
+
"Dominatrix" | "Nurse" | "Submissive" | "Mistress" | "Patient" | "Maid" | "Mistress" | "Maiestas" | "Vincula" | "Amplector" | "Corporis" | "AnimeGirl" | "Bunny" | "Succubus"
|
|
1578
1583
|
;
|
|
1579
1584
|
|
|
1580
1585
|
/** NPC Character extension */
|
|
@@ -1897,6 +1902,7 @@ interface PlayerOnlineSettings {
|
|
|
1897
1902
|
ShowStatus?: boolean;
|
|
1898
1903
|
EnableAfkTimer: boolean;
|
|
1899
1904
|
ShowRoomCustomization: 0 | 1 | 2 | 3; // 0 - Never, 1 - No by default, 2 - Yes by default, 3 - Always
|
|
1905
|
+
FriendListAutoRefresh: boolean;
|
|
1900
1906
|
}
|
|
1901
1907
|
|
|
1902
1908
|
/** Pandora Player extension */
|
|
@@ -4142,6 +4148,7 @@ type ChatRoomMapObjectType = (
|
|
|
4142
4148
|
| "FloorDecorationThemed"
|
|
4143
4149
|
| "FloorDecorationParty"
|
|
4144
4150
|
| "FloorDecorationCamping"
|
|
4151
|
+
| "FloorDecorationExpanding"
|
|
4145
4152
|
| "FloorItem"
|
|
4146
4153
|
| "FloorObstacle"
|
|
4147
4154
|
| "WallDecoration"
|
|
@@ -4172,6 +4179,8 @@ interface ChatRoomMapObject extends ChatRoomMapDoodad {
|
|
|
4172
4179
|
Left?: number;
|
|
4173
4180
|
Width?: number;
|
|
4174
4181
|
Height?: number;
|
|
4182
|
+
Transparency?: number;
|
|
4183
|
+
TransparencyCutoutHeight?: number;
|
|
4175
4184
|
Exit?: boolean;
|
|
4176
4185
|
Unique?: boolean;
|
|
4177
4186
|
AssetGroup?: AssetGroupItemName;
|
|
@@ -4179,6 +4188,7 @@ interface ChatRoomMapObject extends ChatRoomMapDoodad {
|
|
|
4179
4188
|
BlockVision?: boolean;
|
|
4180
4189
|
BlockHearing?: boolean;
|
|
4181
4190
|
IsVisible?: () => boolean;
|
|
4191
|
+
BuildImageName?: (X: number, Y: number) => string;
|
|
4182
4192
|
}
|
|
4183
4193
|
|
|
4184
4194
|
interface ChatRoomMapMovement {
|
|
@@ -1,14 +1,11 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Loads the online friend list from the server. This function is called dynamically, when the player invokes the friendlist dialog.
|
|
3
|
-
* @returns {void} - Nothing
|
|
4
|
-
*/
|
|
5
1
|
declare function FriendListLoad(): void;
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
declare function
|
|
2
|
+
declare function FriendListResize(load: boolean): void;
|
|
3
|
+
declare function FriendListRun(time: number): void;
|
|
4
|
+
declare function FriendListDraw(): void;
|
|
5
|
+
declare function FriendListClick(event: MouseEvent | TouchEvent): void;
|
|
6
|
+
declare function FriendListKeyDown(event: KeyboardEvent): boolean;
|
|
7
|
+
declare function FriendListUnload(): void;
|
|
8
|
+
declare function FriendListExit(): void;
|
|
12
9
|
/**
|
|
13
10
|
* Creates beep message menu
|
|
14
11
|
* @param {number} MemberNumber Member number of target player
|
|
@@ -28,17 +25,6 @@ declare function FriendListBeepMenuSend(): void;
|
|
|
28
25
|
* @param {number} i index of the beep
|
|
29
26
|
*/
|
|
30
27
|
declare function FriendListShowBeep(i: number): void;
|
|
31
|
-
/**
|
|
32
|
-
* Handles the click events in the friend list. Clicks are propagated to this function from CommonClick()
|
|
33
|
-
* @returns {void} - Nothing
|
|
34
|
-
*/
|
|
35
|
-
declare function FriendListClick(): void;
|
|
36
|
-
/**
|
|
37
|
-
* This function is called, when the user exists the friend list. From here we either get back to the InformationSheet
|
|
38
|
-
* or the ChatRoom search, depending on the value of the global variable 'FriendListReturn'
|
|
39
|
-
* @returns {void} - Nothing
|
|
40
|
-
*/
|
|
41
|
-
declare function FriendListExit(): void;
|
|
42
28
|
/**
|
|
43
29
|
* Exits the friendlist
|
|
44
30
|
* @param {string} room The room to search for
|
|
@@ -54,10 +40,9 @@ declare function FriendListChatSearch(room: string): void;
|
|
|
54
40
|
*
|
|
55
41
|
* `data.ChatRoomName` - The name of the ChatRoom
|
|
56
42
|
*
|
|
57
|
-
* `data.ChatRoomSpace` - The space, where this room was created.
|
|
43
|
+
* `data.ChatRoomSpace` - The space, where this room was created.
|
|
58
44
|
*
|
|
59
45
|
* `data.Type` - The relationship that exists between the player and the friend of the list.
|
|
60
|
-
* Currently, only "submissive" is supported
|
|
61
46
|
* @returns {void} - Nothing
|
|
62
47
|
*/
|
|
63
48
|
declare function FriendListLoadFriendList(data: ServerFriendInfo[]): void;
|
|
@@ -68,21 +53,77 @@ declare function FriendListLoadFriendList(data: ServerFriendInfo[]): void;
|
|
|
68
53
|
* @returns {void} - Nothing
|
|
69
54
|
*/
|
|
70
55
|
declare function FriendListDelete(MemberNumber: number): void;
|
|
56
|
+
/**
|
|
57
|
+
* Handles mode changes for friend list
|
|
58
|
+
* @param {number} modeIndex - mode to change to
|
|
59
|
+
*/
|
|
60
|
+
declare function FriendListChangeMode(modeIndex: number): void;
|
|
61
|
+
/**
|
|
62
|
+
* Sorts the friend list depending on the sorting mode
|
|
63
|
+
* and the sorting direction. If the sorting mode is none nothing is done.
|
|
64
|
+
* @param {FriendListSortingMode} sortingMode
|
|
65
|
+
* @param {FriendListSortingDirection} sortingDirection
|
|
66
|
+
*/
|
|
67
|
+
declare function FriendListSort(sortingMode: FriendListSortingMode, sortingDirection: FriendListSortingDirection): void;
|
|
68
|
+
/**
|
|
69
|
+
* Sorts the friend list by properties based on the search input.
|
|
70
|
+
* Searched properties: Name, Nickname (NYI) and MemberNumber
|
|
71
|
+
* @param {string} text
|
|
72
|
+
*/
|
|
73
|
+
declare function FriendListSearchByProperties(text: string): void;
|
|
74
|
+
/**
|
|
75
|
+
* Highlights the searched text in the innerHTML
|
|
76
|
+
* @param {Element} element
|
|
77
|
+
* @param {string} text
|
|
78
|
+
* @returns {string} - The innerHTML with the searched text highlighted
|
|
79
|
+
*/
|
|
80
|
+
declare function FriendListHighlightProperty(element: Element, text: string): string;
|
|
81
|
+
/**
|
|
82
|
+
* Handles changes of the sorting mode
|
|
83
|
+
* @param {FriendListSortingMode} sortingMode
|
|
84
|
+
*/
|
|
85
|
+
declare function FriendListChangeSortingMode(sortingMode: FriendListSortingMode): void;
|
|
86
|
+
/**
|
|
87
|
+
* @this {HTMLButtonElement}
|
|
88
|
+
*/
|
|
89
|
+
declare function FriendListToggleAutoRefresh(this: HTMLButtonElement): void;
|
|
71
90
|
declare var FriendListBackground: string;
|
|
72
|
-
declare var FriendListContent: string;
|
|
73
91
|
/** @type {number[]} */
|
|
74
92
|
declare var FriendListConfirmDelete: number[];
|
|
75
|
-
/** @type {
|
|
76
|
-
declare var FriendListReturn:
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
IsInChatRoom?: boolean;
|
|
80
|
-
hasScrolledChat?: boolean;
|
|
81
|
-
};
|
|
82
|
-
declare var FriendListMode: string[];
|
|
93
|
+
/** @type {FriendListReturn | null} */
|
|
94
|
+
declare var FriendListReturn: FriendListReturn | null;
|
|
95
|
+
/** @type {FriendListModes} */
|
|
96
|
+
declare var FriendListMode: FriendListModes;
|
|
83
97
|
declare var FriendListModeIndex: number;
|
|
84
98
|
/** @type {IFriendListBeepLogMessage[]} */
|
|
85
99
|
declare var FriendListBeepLog: IFriendListBeepLogMessage[];
|
|
86
|
-
/** @type {number
|
|
87
|
-
declare let FriendListBeepTarget: number
|
|
100
|
+
/** @type {number} MemberNumber of the player to send beep to */
|
|
101
|
+
declare let FriendListBeepTarget: number;
|
|
88
102
|
declare var FriendListBeepShowRoom: boolean;
|
|
103
|
+
/** @type {FriendListSortingMode} */
|
|
104
|
+
declare let FriendListSortingMode: FriendListSortingMode;
|
|
105
|
+
/** @type {FriendListSortingDirection} */
|
|
106
|
+
declare let FriendListSortingDirection: FriendListSortingDirection;
|
|
107
|
+
declare namespace FriendListAutoRefresh {
|
|
108
|
+
let interval: number;
|
|
109
|
+
let nextRefresh: number;
|
|
110
|
+
}
|
|
111
|
+
declare const FriendListIDs: Readonly<{
|
|
112
|
+
root: "friend-list-subscreen";
|
|
113
|
+
navBar: "friend-list-nav-bar";
|
|
114
|
+
header: "friend-list-header";
|
|
115
|
+
friendList: "friend-list";
|
|
116
|
+
friendListTable: "friend-list-table";
|
|
117
|
+
navButtons: "friend-list-buttons";
|
|
118
|
+
modeTitle: "friend-list-mode-title";
|
|
119
|
+
searchInput: "friend-list-search-input";
|
|
120
|
+
btnAutoRefresh: "friend-list-button-auto-refresh";
|
|
121
|
+
btnRefresh: "friend-list-button-refresh";
|
|
122
|
+
btnPrev: "friend-list-button-prev";
|
|
123
|
+
btnNext: "friend-list-button-next";
|
|
124
|
+
btnExit: "friend-list-button-exit";
|
|
125
|
+
btnResetSorting: "friend-list-reset-sorting";
|
|
126
|
+
beepList: "friend-list-beep-dialog";
|
|
127
|
+
beepTextArea: "friend-list-beep-textarea";
|
|
128
|
+
beepFooter: "friend-list-beep-footer";
|
|
129
|
+
}>;
|
|
@@ -45,7 +45,6 @@ declare function ChatRoomCharacterViewShowMapButton(): boolean;
|
|
|
45
45
|
* @param {number} Zoom Room zoom
|
|
46
46
|
* @param {number} ClickX Click X postion relative to character, without zoom
|
|
47
47
|
* @param {number} ClickY Click Y postion relative to character, without zoom
|
|
48
|
-
* @param {number} Pos Index of target character
|
|
49
48
|
*/
|
|
50
49
|
declare function ChatRoomCharacterViewClickCharacter(C: Character, CharX: number, CharY: number, Zoom: number, ClickX: number, ClickY: number): void;
|
|
51
50
|
/**
|
|
@@ -365,6 +365,8 @@ declare var ChatRoomMapViewUpdatePlayerNext: null | number;
|
|
|
365
365
|
declare var ChatRoomMapViewUpdateLastMapDataNext: null | number;
|
|
366
366
|
/** @type {null | Character} */
|
|
367
367
|
declare var ChatRoomMapViewFocusedCharacter: null | Character;
|
|
368
|
+
declare var ChatRoomMapViewFocusedCharacterX: number;
|
|
369
|
+
declare var ChatRoomMapViewFocusedCharacterY: number;
|
|
368
370
|
declare var ChatRoomMapViewSuperPowersActive: boolean;
|
|
369
371
|
declare var ChatRoomMapViewBaseMovementSpeed: number;
|
|
370
372
|
/** @type {null | ChatRoomMapMovement} */
|
|
@@ -413,6 +413,11 @@ declare function PrivateIsAnimeGirl(): boolean;
|
|
|
413
413
|
* @returns {boolean} - TRUE if archetype is Bunny
|
|
414
414
|
*/
|
|
415
415
|
declare function PrivateIsBunny(): boolean;
|
|
416
|
+
/**
|
|
417
|
+
* Returns TRUE if the current character is a succubus
|
|
418
|
+
* @returns {boolean} - TRUE if archetype is succubus
|
|
419
|
+
*/
|
|
420
|
+
declare function PrivateIsSuccubus(): boolean;
|
|
416
421
|
/**
|
|
417
422
|
* Returns a random item that could be bought from the store as a gift that the player could receive by a NPC
|
|
418
423
|
* @param {boolean} Restraint - TRUE if we must return an item that's a restraint
|
|
@@ -155,7 +155,7 @@ declare namespace Shop2 {
|
|
|
155
155
|
function ApplyItemFilters(clearDatalist?: boolean): void;
|
|
156
156
|
function _SetCheckboxFilters(): void;
|
|
157
157
|
function _UpdatePoseButtons(): void;
|
|
158
|
-
function _ClickDropdown(): void;
|
|
158
|
+
function _ClickDropdown(id: string): void;
|
|
159
159
|
let DrawPriceRibbon: (label: string, x: number, y: number, w: number, color?: string) => void;
|
|
160
160
|
function ParseAssets(assets: readonly Asset[]): ShopItem[];
|
|
161
161
|
let Elements: Record<string, ShopScreenFunctions>;
|
|
@@ -18,6 +18,11 @@ declare function SlaveMarketCannotStartAuctionRoom(): boolean;
|
|
|
18
18
|
* @returns {boolean} - Returns TRUE if the player can be auctioned
|
|
19
19
|
*/
|
|
20
20
|
declare function SlaveMarketCanBeAuctioned(): boolean;
|
|
21
|
+
/**
|
|
22
|
+
* Checks if the character has a specific title
|
|
23
|
+
* @returns {boolean} - TRUE if the character has the title in the parameter
|
|
24
|
+
*/
|
|
25
|
+
declare function SlaveMarketSlaveTitleIs(Title: any): boolean;
|
|
21
26
|
/**
|
|
22
27
|
* Loads the Slave Market room, generates the Mistress and slave
|
|
23
28
|
* @returns {void} - Nothing
|
package/bc/Scripts/Asset.d.ts
CHANGED
|
@@ -208,10 +208,10 @@ declare function AssetInventoryIDUnnecessary(): void;
|
|
|
208
208
|
* @param {string} GroupName - The group name to compare
|
|
209
209
|
* @param {string} AssetName - The asset name to compare
|
|
210
210
|
* @param {string} BuyGroup - The buying group to compare
|
|
211
|
-
* @param {number} InventoryID - The inventory ID to compare
|
|
211
|
+
* @param {number | undefined} InventoryID - The inventory ID to compare
|
|
212
212
|
* @returns {void} - Nothing
|
|
213
213
|
*/
|
|
214
|
-
declare function AssetInventoryIDBuyGroup(GroupName: string, AssetName: string, BuyGroup: string, InventoryID: number): void;
|
|
214
|
+
declare function AssetInventoryIDBuyGroup(GroupName: string, AssetName: string, BuyGroup: string, InventoryID: number | undefined): void;
|
|
215
215
|
/**
|
|
216
216
|
* Shows a console warning for all Inventory IDs where the BuyGroup is creating a conflict
|
|
217
217
|
* @returns {void} - Nothing
|
|
@@ -35,11 +35,11 @@ declare function CharacterLoadCSVDialog(C: Character, info?: DialogInfo): void;
|
|
|
35
35
|
/**
|
|
36
36
|
* Sets the clothes based on a character archetype
|
|
37
37
|
* @param {Character} C - Character to set the clothes for
|
|
38
|
-
* @param {"Maid" | "Mistress" | "Employee" | "AnimeGirl" | "Bunny"} Archetype - Archetype to determine the clothes to put on
|
|
38
|
+
* @param {"Maid" | "Mistress" | "Employee" | "AnimeGirl" | "Bunny" | "Succubus"} Archetype - Archetype to determine the clothes to put on
|
|
39
39
|
* @param {string} [ForceColor] - Color to use for the added clothes
|
|
40
40
|
* @returns {void} - Nothing
|
|
41
41
|
*/
|
|
42
|
-
declare function CharacterArchetypeClothes(C: Character, Archetype: "Maid" | "Mistress" | "Employee" | "AnimeGirl" | "Bunny", ForceColor?: string): void;
|
|
42
|
+
declare function CharacterArchetypeClothes(C: Character, Archetype: "Maid" | "Mistress" | "Employee" | "AnimeGirl" | "Bunny" | "Succubus", ForceColor?: string): void;
|
|
43
43
|
/**
|
|
44
44
|
* Loads an NPC into the character array. The appearance is randomized, and a type can be provided to dress them in a given style.
|
|
45
45
|
* @param {string} CharacterID - The unique identifier for the NPC
|
package/bc/Scripts/Element.d.ts
CHANGED
|
@@ -179,6 +179,16 @@ declare function ElementGetScrollPercentage(ID: string): (number | null);
|
|
|
179
179
|
* @returns {boolean} - Returns TRUE if the specified element is scrolled to the very bottom
|
|
180
180
|
*/
|
|
181
181
|
declare function ElementIsScrolledToEnd(ID: string): boolean;
|
|
182
|
+
/**
|
|
183
|
+
* Sets the scroll position of an element to a specified percentage of its scrollable content.
|
|
184
|
+
* Ideally scroll percentage should be gotten with {@link ElementGetScrollPercentage}
|
|
185
|
+
*
|
|
186
|
+
* @param {string} ID
|
|
187
|
+
* @param {number} scrollPercentage
|
|
188
|
+
* @param {ScrollBehavior} scrollBehavior
|
|
189
|
+
* @returns {void}
|
|
190
|
+
*/
|
|
191
|
+
declare function ElementSetScrollPercentage(ID: string, scrollPercentage: number, scrollBehavior?: ScrollBehavior): void;
|
|
182
192
|
/**
|
|
183
193
|
* Gives focus to a specified existing element for non-mobile users.
|
|
184
194
|
* @param {string} ID - The id of the element to give focus to.
|
|
@@ -271,14 +281,17 @@ declare namespace ElementButton {
|
|
|
271
281
|
top: "button-tooltip-top";
|
|
272
282
|
bottom: "button-tooltip-bottom";
|
|
273
283
|
}>;
|
|
274
|
-
let _TouchStart: (this: HTMLButtonElement, event: Event) => Promise<void>;
|
|
275
|
-
let _TouchEnd: (this: HTMLButtonElement, event: Event) => Promise<void>;
|
|
276
|
-
let _MouseDown: (this: HTMLButtonElement, event: MouseEvent) => Promise<void>;
|
|
277
284
|
let _KeyDown: (this: HTMLButtonElement, ev: KeyboardEvent) => Promise<void>;
|
|
278
285
|
let _KeyUp: (this: HTMLButtonElement, ev: KeyboardEvent) => Promise<void>;
|
|
286
|
+
let _Click: (this: HTMLButtonElement, ev: MouseEvent | TouchEvent) => void;
|
|
287
|
+
function _QueryDFS(root: Element, query: string, filter: (el: Element) => boolean): Generator<Element, void>;
|
|
288
|
+
let _ClickRadio: (this: HTMLButtonElement, ev: Event) => void;
|
|
289
|
+
let _ClickCheckbox: (this: HTMLButtonElement, ev: Event) => void;
|
|
279
290
|
function Create(id: null | string, onClick: (this: HTMLButtonElement, ev: MouseEvent | TouchEvent) => any, options?: {
|
|
280
291
|
tooltip?: null | string | Node;
|
|
281
292
|
tooltipPosition?: "left" | "right" | "top" | "bottom";
|
|
293
|
+
role?: "radio" | "checkbox" | "menuitemradio" | "menuitemcheckbox";
|
|
294
|
+
noStyling?: boolean;
|
|
282
295
|
}, htmlOptions?: null | Partial<Record<"button" | "tooltip", Omit<HTMLOptions<any>, "tag">>>): HTMLButtonElement;
|
|
283
296
|
}
|
|
284
297
|
declare namespace ElementMenu {
|
package/bc/Scripts/Layering.d.ts
CHANGED
|
@@ -18,6 +18,8 @@ declare namespace Layering {
|
|
|
18
18
|
buttonGrid: "layering-button-grid";
|
|
19
19
|
resetButton: "layering-reset-button";
|
|
20
20
|
exitButton: "layering-exit-button";
|
|
21
|
+
hideButton: "layering-hide-button";
|
|
22
|
+
hideTooltip: "layering-hide-button-tooltip";
|
|
21
23
|
lockButton: "layering-lock-button";
|
|
22
24
|
assetHeader: "layering-asset-header";
|
|
23
25
|
assetGrid: "layering-asset-grid";
|
|
@@ -64,6 +66,13 @@ declare namespace Layering {
|
|
|
64
66
|
* @private
|
|
65
67
|
*/
|
|
66
68
|
function _ResetClickListener(this: HTMLButtonElement, ev: Event): void;
|
|
69
|
+
/**
|
|
70
|
+
* Event listener for `click` events of the show hidden layers button
|
|
71
|
+
* @this {HTMLButtonElement}
|
|
72
|
+
* @param {Event} ev
|
|
73
|
+
* @private
|
|
74
|
+
*/
|
|
75
|
+
function _ShowLayersClickListener(this: HTMLButtonElement, ev: Event): void;
|
|
67
76
|
/**
|
|
68
77
|
* Update the background colors of the `number`-based input elements, the color change depending on whether one is changing an asset- or layer-specific priority.
|
|
69
78
|
* @private
|
package/bc/Scripts/Server.d.ts
CHANGED
|
@@ -62,10 +62,13 @@ declare function ServerPackItemPermissions(permissionItems: Partial<Record<`${As
|
|
|
62
62
|
/**
|
|
63
63
|
* Unpack the quartet of blocked, limited, favorited and hidden item permissions into a single object
|
|
64
64
|
* @param {Pick<Partial<ServerAccountDataSynced>, "BlockItems" | "LimitedItems" | "FavoriteItems" | "HiddenItems">} data - The item permission data as received from the server
|
|
65
|
-
* @param {
|
|
66
|
-
* @returns {Partial<Record<`${AssetGroupName}/${string}`, ItemPermissions
|
|
65
|
+
* @param {boolean} onExtreme - If the expected difficulty is Extreme
|
|
66
|
+
* @returns {{ permissions: Partial<Record<`${AssetGroupName}/${string}`, ItemPermissions>>; shouldSync: boolean }} - The packed item permission data
|
|
67
67
|
*/
|
|
68
|
-
declare function ServerUnPackItemPermissions(data: Pick<Partial<ServerAccountDataSynced>, "BlockItems" | "LimitedItems" | "FavoriteItems" | "HiddenItems">,
|
|
68
|
+
declare function ServerUnPackItemPermissions(data: Pick<Partial<ServerAccountDataSynced>, "BlockItems" | "LimitedItems" | "FavoriteItems" | "HiddenItems">, onExtreme: boolean): {
|
|
69
|
+
permissions: Partial<Record<`${AssetGroupName}/${string}`, ItemPermissions>>;
|
|
70
|
+
shouldSync: boolean;
|
|
71
|
+
};
|
|
69
72
|
/**
|
|
70
73
|
* Syncs player's favorite, blocked, limited and hidden items to the server
|
|
71
74
|
* @returns {void} - Nothing
|
package/package.json
CHANGED
|
File without changes
|
|
File without changes
|
|
File without changes
|