bc-stubs 105.0.3 → 106.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.
@@ -108,8 +108,14 @@ declare function LoginLoadInventoryObject(InventoryObject: object): {};
108
108
  /**
109
109
  * Handles server response, when login has been queued
110
110
  * @param {number} Pos - The position in queue
111
+ * @returns {void} Nothing
111
112
  */
112
113
  declare function LoginQueue(Pos: number): void;
114
+ /**
115
+ * Fixes the Owner property on the player object if it's wrongly set
116
+ * @returns {void} Nothing
117
+ */
118
+ declare function LoginFixOwner(): void;
113
119
  /**
114
120
  * Handles player login response data
115
121
  * @param {ServerLoginResponse} C - The Login response data - this will either be the player's character data if the
@@ -47,7 +47,7 @@ declare function ChatRoomCharacterViewShowMapButton(): boolean;
47
47
  * @param {number} ClickY Click Y postion relative to character, without zoom
48
48
  * @param {number} Pos Index of target character
49
49
  */
50
- declare function ChatRoomCharacterViewClickCharacter(C: Character, CharX: number, CharY: number, Zoom: number, ClickX: number, ClickY: number, Pos: number): void;
50
+ declare function ChatRoomCharacterViewClickCharacter(C: Character, CharX: number, CharY: number, Zoom: number, ClickX: number, ClickY: number): void;
51
51
  /**
52
52
  * Draws the chatroom characters.
53
53
  * @returns {void} - Nothing.
@@ -223,6 +223,21 @@ declare function KidnapLeagueRandomClubCardStart(): void;
223
223
  * @returns {void} - Nothing
224
224
  */
225
225
  declare function KidnapLeagueRandomClubCardEnd(): void;
226
+ /**
227
+ * Returns TRUE if the player can get the anime girl costume
228
+ * @returns {boolean} - TRUE if it's possible
229
+ */
230
+ declare function KidnapLeagueCanGetAnimeGirl(): boolean;
231
+ /**
232
+ * Gives the anime girl costume to the player and wear it
233
+ * @returns {void} - Nothing
234
+ */
235
+ declare function KidnapLeagueWearAnimeGirl(): void;
236
+ /**
237
+ * Returns TRUE if the player is wearing the anime girl costume
238
+ * @returns {boolean} - TRUE if wearing
239
+ */
240
+ declare function KidnapLeaguePlayerIsAnimeGirl(): boolean;
226
241
  declare var KidnapLeagueBackground: string;
227
242
  /** @type {null | NPCCharacter} */
228
243
  declare var KidnapLeagueTrainer: null | NPCCharacter;
@@ -230,8 +245,8 @@ declare var KidnapLeagueTrainer: null | NPCCharacter;
230
245
  declare var KidnapLeagueRandomKidnapper: null | NPCCharacter;
231
246
  declare var KidnapLeagueRandomKidnapperScenario: string;
232
247
  declare var KidnapLeagueRandomKidnapperDifficulty: number;
233
- /** @type {null | "" | "Maid" | "Mistress"} */
234
- declare var KidnapLeagueArchetype: null | "" | "Maid" | "Mistress";
248
+ /** @type {null | "" | "Maid" | "Mistress" | "AnimeGirl"} */
249
+ declare var KidnapLeagueArchetype: null | "" | "Maid" | "Mistress" | "AnimeGirl";
235
250
  declare var KidnapLeagueWillPayForFreedom: boolean;
236
251
  declare var KidnapLeagueRandomActivityList: string[];
237
252
  declare var KidnapLeagueRandomActivity: string;
@@ -209,6 +209,16 @@ declare function ManagementCannotBreakUpLoverNPC(L: number): boolean;
209
209
  * @returns {boolean} - TRUE if the player is a club slave.
210
210
  */
211
211
  declare function ManagementIsClubSlave(): boolean;
212
+ /**
213
+ * Checks if the player can start a regular chat with a club slave.
214
+ * @returns {boolean} - TRUE if the player can start a regular
215
+ */
216
+ declare function ManagementCanStartClubSlaveTalk(): boolean;
217
+ /**
218
+ * Checks if the player can start a chat with a bunny club slave.
219
+ * @returns {boolean} - TRUE if the player can start a regular
220
+ */
221
+ declare function ManagementCanStartBunnyTalk(): boolean;
212
222
  /**
213
223
  * Checks if the player is wearing a slave collar.
214
224
  * @returns {boolean} - TRUE if the player is wearing a slave collar.
@@ -52,7 +52,7 @@ declare function PrisonSubClothBack(): void;
52
52
  declare function PrisonBecomeBadGirl(): void;
53
53
  declare function PrisonLeaveBadGirl(): void;
54
54
  declare function PrisonWearPoliceEquipment(C: any): void;
55
- declare function PrisonWantedPlayer(): 1 | 4 | 7 | 9;
55
+ declare function PrisonWantedPlayer(): 1 | 3 | 5 | 7;
56
56
  declare function PrisonMeetPoliceIntro(RoomBackground: any): void;
57
57
  declare function PrisonPutHandsInTheAir(): void;
58
58
  declare function PrisonRaiseHandsHigher(): void;
@@ -403,6 +403,22 @@ declare function PrivateCanTryforAction(): boolean;
403
403
  * @returns {boolean} - True if Player can not ask and the friend can not interact
404
404
  */
405
405
  declare function PrivateCannotTryforAction(): boolean;
406
+ /**
407
+ * Returns TRUE if the current character is an anime girl / superheroine
408
+ * @returns {boolean} - TRUE if archetype is AnimeGirl
409
+ */
410
+ declare function PrivateIsAnimeGirl(): boolean;
411
+ /**
412
+ * Returns TRUE if the current character is a rope bunny
413
+ * @returns {boolean} - TRUE if archetype is Bunny
414
+ */
415
+ declare function PrivateIsBunny(): boolean;
416
+ /**
417
+ * Returns a random item that could be bought from the store as a gift that the player could receive by a NPC
418
+ * @param {boolean} Restraint - TRUE if we must return an item that's a restraint
419
+ * @returns {Asset} - The item asset that can be given
420
+ */
421
+ declare function PrivateGetPossibleGift(Restraint: boolean): Asset;
406
422
  /**
407
423
  * Loads the private room screen and the vendor NPC.
408
424
  * @returns {void} - Nothing.
@@ -698,7 +714,7 @@ declare function PrivateGetBed(Type: "White" | "Black" | "Pink"): void;
698
714
  * When the player exits the private room
699
715
  * @returns {void} - Nothing.
700
716
  */
701
- declare function PrivateExit(Type: any): void;
717
+ declare function PrivateExit(): void;
702
718
  /**
703
719
  * When the player joins the NPC in bed
704
720
  * @returns {void} - Nothing.
@@ -777,6 +793,72 @@ declare function PrivateClubCardKinkyConsequence(Eyes: ExpressionName, Strip: st
777
793
  * Checks if the player owns a private room, there's a spot left and they're not locked out of it.
778
794
  */
779
795
  declare function PrivateHasEmptySlot(): boolean;
796
+ /**
797
+ * Resets the possible gifts given by NPCs
798
+ */
799
+ declare function PrivateGiftReset(): void;
800
+ /**
801
+ * Gives the NPC gift to the player, a new gift will come between 1 and 6 days
802
+ * @param {string} GiftType - Regular or Restraint
803
+ * @returns {void} - Nothing.
804
+ */
805
+ declare function PrivateGiftGet(GiftType: string): void;
806
+ /**
807
+ * Uses the NPC gift on the player
808
+ * @param {string} GiftType - Regular or Restraint
809
+ * @returns {void} - Nothing.
810
+ */
811
+ declare function PrivateGiftUse(GiftType: string): void;
812
+ /**
813
+ * When the player meets her owner randomly in the main hall
814
+ * @returns {void} - Nothing.
815
+ */
816
+ declare function PrivateOwnerInMainHall(): void;
817
+ /**
818
+ * The owner can ungag the player and it can affect the love factor
819
+ * @param {number} LoveFactor - Amount of love to gain or lose.
820
+ * @returns {void} - Nothing.
821
+ */
822
+ declare function PrivatePlayerUngag(LoveFactor: number): void;
823
+ /**
824
+ * The owner can do some activities with the player from the main hall
825
+ * @returns {void} - Nothing.
826
+ */
827
+ declare function PrivateStartOwnerHallActivity(): void;
828
+ /**
829
+ * Owner in Main Hall - When the player returns to her private room with her owner
830
+ * @returns {void} - Nothing.
831
+ */
832
+ declare function PrivateOwnerHallReturnToPrivate(): void;
833
+ /**
834
+ * Owner in Main Hall - Restrains the player with a factor
835
+ * @param {"FEW"|"LOT"|"ALL"} BondageType - The type of bondage to apply
836
+ * @returns {void} - Nothing.
837
+ */
838
+ declare function PrivateOwnerHallBondage(BondageType: "FEW" | "LOT" | "ALL"): void;
839
+ /**
840
+ * Owner in Main Hall - Strips the player
841
+ * @returns {void} - Nothing.
842
+ */
843
+ declare function PrivateOwnerHallNaked(): void;
844
+ /**
845
+ * Owner in Main Hall - Change collar and leash the player
846
+ * @returns {void} - Nothing.
847
+ */
848
+ declare function PrivateOwnerHallLeash(): void;
849
+ /**
850
+ * Owner in Main Hall - Changes the background and can bind/gag the player
851
+ * @param {string} Background - The new background to setup
852
+ * @param {string} Action - The action to perform
853
+ * @returns {void} - Nothing.
854
+ */
855
+ declare function PrivateOwnerHallBackground(Background: string, Action: string): void;
856
+ /**
857
+ * Owner in Main Hall - Ends the parade and can do an extra action
858
+ * @param {string} Action - The action to perform
859
+ * @returns {void} - Nothing.
860
+ */
861
+ declare function PrivateOwnerHallParadeEnd(Action: string): void;
780
862
  declare var PrivateBackground: string;
781
863
  /** @type {null | NPCCharacter} */
782
864
  declare var PrivateVendor: null | NPCCharacter;
@@ -804,3 +886,6 @@ declare var PrivateBeltList: string[];
804
886
  declare var PrivateEntryEvent: boolean;
805
887
  declare var PrivateClubCardVictoryMode: boolean;
806
888
  declare var PrivateClubCardDefeatConsequence: string[];
889
+ declare var PrivateGiftRegular: any;
890
+ declare var PrivateGiftRestraint: any;
891
+ declare var PrivateBaseDecay: number;
@@ -57,7 +57,7 @@ declare function PrivateBedClick(): void | boolean;
57
57
  * When the player exits the private bedroom. The next sex scene will wait from 5 to 20 depending on luck and the frigid/honry trait.
58
58
  * @returns {void} - Nothing.
59
59
  */
60
- declare function PrivateBedExit(Type: any): void;
60
+ declare function PrivateBedExit(): void;
61
61
  /**
62
62
  * When a character gets an orgasm
63
63
  * @param {Character} C - The character getting the orgasm.
@@ -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"} Archetype - Archetype to determine the clothes to put on
38
+ * @param {"Maid" | "Mistress" | "Employee" | "AnimeGirl" | "Bunny"} 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", ForceColor?: string): void;
42
+ declare function CharacterArchetypeClothes(C: Character, Archetype: "Maid" | "Mistress" | "Employee" | "AnimeGirl" | "Bunny", 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
@@ -170,9 +170,10 @@ declare function CharacterIsInUnderwear(C: Character): boolean;
170
170
  /**
171
171
  * Removes all appearance items from the character
172
172
  * @param {Character} C - Character to undress
173
+ * @param {boolean} refresh - Whether to refresh the character afterwards and push changes to the server database
173
174
  * @returns {void} - Nothing
174
175
  */
175
- declare function CharacterNaked(C: Character): void;
176
+ declare function CharacterNaked(C: Character, refresh?: boolean): void;
176
177
  /**
177
178
  * Dresses the given character in random underwear
178
179
  * @param {Character} C - Character to randomly dress
@@ -216,9 +217,10 @@ declare function CharacterReleaseNoLock(C: Character): void;
216
217
  /**
217
218
  * Removes all items except for clothing and slave collars from the character
218
219
  * @param {Character} C - Character to release
220
+ * @param {boolean} refresh - Whether to refresh the character afterwards and push changes to the server database
219
221
  * @returns {void} - Nothing
220
222
  */
221
- declare function CharacterReleaseTotal(C: Character): void;
223
+ declare function CharacterReleaseTotal(C: Character, refresh?: boolean): void;
222
224
  /**
223
225
  * Gets the bonus amount of a given type for a given character (Kidnap league)
224
226
  * @param {Character} C - Character for which we want to get the bonus amount
@@ -1010,7 +1010,7 @@ declare namespace DialogLeaveFocusItemHandlers {
1010
1010
  declare namespace DialogEffectIcons {
1011
1011
  let Table: Partial<Record<InventoryIcon, readonly EffectName[]>>;
1012
1012
  function GetIcons(item: Item): InventoryIcon[];
1013
- let GetEffectIcons: (effects: EffectName[], prop?: CraftingPropertyType) => null | InventoryIcon[];
1013
+ let GetEffectIcons: (effects: Iterable<EffectName>, prop?: CraftingPropertyType) => null | InventoryIcon[];
1014
1014
  function _GetGagIcon(effect: EffectName, prop?: CraftingPropertyType): null | InventoryIcon;
1015
1015
  function _GetBlindIcon(effect: EffectName, prop?: CraftingPropertyType): null | InventoryIcon;
1016
1016
  function _GetDeafIcon(effect: EffectName): undefined | InventoryIcon;
@@ -14,10 +14,10 @@ declare function ElementValue(ID: string, Value?: string): string;
14
14
  declare function ElementContent(ID: string, Content?: string): string;
15
15
  /**
16
16
  * @template {keyof HTMLElementScalarTagNameMap} T
17
- * @param {null | HTMLOptions<T>} options - Options for customizing the element
17
+ * @param {HTMLOptions<T>} options - Options for customizing the element
18
18
  * @returns {HTMLElementTagNameMap[T]} - The created element
19
19
  */
20
- declare function ElementCreate<T extends keyof HTMLElementScalarTagNameMap>(options: null | HTMLOptions<T>): HTMLElementTagNameMap[T];
20
+ declare function ElementCreate<T extends keyof HTMLElementScalarTagNameMap>(options: HTMLOptions<T>): HTMLElementTagNameMap[T];
21
21
  /**
22
22
  * Creates a new from element in the main document.
23
23
  *
@@ -186,7 +186,7 @@ declare function ElementIsScrolledToEnd(ID: string): boolean;
186
186
  */
187
187
  declare function ElementFocus(ID: string): void;
188
188
  /**
189
- * Toggles HTML elements that were created by a given screen. When toggled off, they are hidden (not removed)
189
+ * Toggles (non-nested) HTML elements that were created by a given screen. When toggled off, they are hidden (not removed)
190
190
  * @param {string} Screen - Screen for which to hide the elements generated
191
191
  * @param {boolean} ShouldDisplay - TRUE if we are toggling on the elements, FALSE if we are hiding them.
192
192
  */
@@ -86,7 +86,7 @@ declare function NPCLongEventDelay(C: NPCCharacter): number;
86
86
  */
87
87
  declare function NPCLongLoverEventDelay(C: NPCCharacter): number;
88
88
  /**
89
- * Changes the love factor for a specified NPC, will stay within the -100 to 100 range
89
+ * Changes the love factor for a specified NPC, will stay within the -100 to 100 range, 60 is max out of a relationship
90
90
  * @param {NPCCharacter} C - NPC to change the love factor of
91
91
  * @param {number} LoveFactor - Amount to add to the current love factor (can be negative).
92
92
  * @returns {void} - Nothing
package/bc/Typedef.d.ts CHANGED
@@ -102,9 +102,9 @@ type HTMLOptions<T extends keyof HTMLElementTagNameMap> = {
102
102
  /** The elements parent (if any) to which it will be attached (see {@link HTMLElement.parentElement}). */
103
103
  parent?: Node;
104
104
  /** A list of CSS classes to-be assigned to the element (see {@link HTMLElement.classList}). */
105
- classList?: readonly string[];
105
+ classList?: readonly (null | undefined | string)[];
106
106
  /** Any to-be added child elements. */
107
- children?: (string | Node | HTMLOptions<keyof HTMLElementTagNameMap>)[];
107
+ children?: (null | undefined | string | Node | HTMLOptions<keyof HTMLElementTagNameMap>)[];
108
108
  /** The {@link HTMLElement.innerHTML} of the element; will be assigned before appending children */
109
109
  innerHTML?: string;
110
110
  };
@@ -453,7 +453,7 @@ type BackgroundTag =
453
453
  // NOTE: `NPCArchetype` is for NPC's only
454
454
  type TitleName =
455
455
  NPCArchetype | "None" | "Mistress" | "Master" | "Mistree" | "ClubSlave" | "Maid" | "HeadMaid" | "BondageMaid" | "Kidnapper" |
456
- "MasterKidnapper" | "Patient" | "PermanentPatient" | "EscapedPatient" | "Nurse" | "Doctor" |
456
+ "MasterKidnapper" | "Patient" | "PermanentPatient" | "EscapedPatient" | "Nurse" | "Doctor" | "AnimeBoy" |
457
457
  "LadyLuck" | "LordFortune" | "Patron" | "CollegeStudent" |"Nawashi" | "Houdini" | "PonyAlicorn" |
458
458
  "PonyPegasus" | "PonyUnicorn" | "PonyWild" | "PonyHot" | "PonyWarm" | "PonyCold" | "PonyFarm" |
459
459
  "PonyFoal" | "InfilrationMole" | "InfilrationInfiltrator" | "InfilrationAgent" |
@@ -1574,7 +1574,7 @@ type NPCArchetype =
1574
1574
  /* Pandora Special */
1575
1575
  "Victim"|"Target"|"Chest"|
1576
1576
  // Misc
1577
- "Dominatrix" | "Nurse" | "Submissive" | "Mistress" | "Patient" | "Maid" | "Mistress" | "Maiestas" | "Vincula" | "Amplector" | "Corporis"
1577
+ "Dominatrix" | "Nurse" | "Submissive" | "Mistress" | "Patient" | "Maid" | "Mistress" | "Maiestas" | "Vincula" | "Amplector" | "Corporis" | "AnimeGirl" | "Bunny"
1578
1578
  ;
1579
1579
 
1580
1580
  /** NPC Character extension */
@@ -3620,6 +3620,11 @@ interface CraftingItem {
3620
3620
  * @see {@link ItemProperties.TypeRecord}
3621
3621
  */
3622
3622
  TypeRecord?: null | TypeRecord;
3623
+ /**
3624
+ * Whether the crafting item is elligble for use.
3625
+ * Only relevant if the player is the craft's owner but do they not own the underlying item (_e.g._ due to an inventory wipe).
3626
+ */
3627
+ Disabled?: boolean;
3623
3628
  }
3624
3629
 
3625
3630
  /**
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "bc-stubs",
3
- "version": "105.0.3",
3
+ "version": "106.0.0",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "git+ssh://git@github.com/bananarama92/BC-stubs.git"