bc-stubs 96.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.
Files changed (312) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +2 -0
  3. package/bc/Assets/Female3DCG/Female3DCG.d.ts +41 -0
  4. package/bc/Assets/Female3DCG/Female3DCGExtended.d.ts +29 -0
  5. package/bc/Backgrounds/Backgrounds.d.ts +37 -0
  6. package/bc/Female3DCG_Types.d.ts +875 -0
  7. package/bc/Screens/Character/Appearance/Appearance.d.ts +392 -0
  8. package/bc/Screens/Character/BackgroundSelection/BackgroundSelection.d.ts +98 -0
  9. package/bc/Screens/Character/Cheat/Cheat.d.ts +54 -0
  10. package/bc/Screens/Character/Creation/Creation.d.ts +40 -0
  11. package/bc/Screens/Character/Disclaimer/Disclaimer.d.ts +21 -0
  12. package/bc/Screens/Character/FriendList/FriendList.d.ts +102 -0
  13. package/bc/Screens/Character/InformationSheet/InformationSheet.d.ts +46 -0
  14. package/bc/Screens/Character/ItemColor/ItemColor.d.ts +232 -0
  15. package/bc/Screens/Character/Login/Login.d.ts +194 -0
  16. package/bc/Screens/Character/OnlineProfile/OnlineProfile.d.ts +27 -0
  17. package/bc/Screens/Character/PasswordReset/PasswordReset.d.ts +28 -0
  18. package/bc/Screens/Character/Preference/Preference.d.ts +658 -0
  19. package/bc/Screens/Character/Relog/Relog.d.ts +36 -0
  20. package/bc/Screens/Character/Title/Title.d.ts +68 -0
  21. package/bc/Screens/Character/Wardrobe/Wardrobe.d.ts +93 -0
  22. package/bc/Screens/Cutscene/NPCCollaring/NPCCollaring.d.ts +26 -0
  23. package/bc/Screens/Cutscene/NPCSlaveAuction/NPCSlaveAuction.d.ts +27 -0
  24. package/bc/Screens/Cutscene/NPCWedding/NPCWedding.d.ts +35 -0
  25. package/bc/Screens/Cutscene/PlayerCollaring/PlayerCollaring.d.ts +26 -0
  26. package/bc/Screens/Cutscene/PlayerMistress/PlayerMistress.d.ts +24 -0
  27. package/bc/Screens/Cutscene/SarahIntro/SarahIntro.d.ts +22 -0
  28. package/bc/Screens/Inventory/Cloth/CheerleaderTop/CheerleaderTop.d.ts +33 -0
  29. package/bc/Screens/Inventory/Cloth/FrilledShirt/FrilledShirt.d.ts +10 -0
  30. package/bc/Screens/Inventory/ClothAccessory/Bib/Bib.d.ts +2 -0
  31. package/bc/Screens/Inventory/EyeShadow/EyeShadow.d.ts +60 -0
  32. package/bc/Screens/Inventory/Futuristic/Futuristic.d.ts +60 -0
  33. package/bc/Screens/Inventory/ItemArms/FullLatexSuit/FullLatexSuit.d.ts +6 -0
  34. package/bc/Screens/Inventory/ItemArms/HempRope/HempRope.d.ts +2 -0
  35. package/bc/Screens/Inventory/ItemArms/NylonRope/NylonRope.d.ts +2 -0
  36. package/bc/Screens/Inventory/ItemArms/PrisonLockdownSuit/PrisonLockdownSuit.d.ts +4 -0
  37. package/bc/Screens/Inventory/ItemArms/TransportJacket/TransportJacket.d.ts +10 -0
  38. package/bc/Screens/Inventory/ItemBreast/ForbiddenChastityBra/ForbiddenChastityBra.d.ts +32 -0
  39. package/bc/Screens/Inventory/ItemBreast/FuturisticBra/FuturisticBra.d.ts +24 -0
  40. package/bc/Screens/Inventory/ItemButt/AnalBeads2/AnalBeads2.d.ts +2 -0
  41. package/bc/Screens/Inventory/ItemButt/InflVibeButtPlug/InflVibeButtPlug.d.ts +2 -0
  42. package/bc/Screens/Inventory/ItemDevices/DollBox/DollBox.d.ts +2 -0
  43. package/bc/Screens/Inventory/ItemDevices/FuckMachine/FuckMachine.d.ts +16 -0
  44. package/bc/Screens/Inventory/ItemDevices/FuturisticCrate/FuturisticCrate.d.ts +8 -0
  45. package/bc/Screens/Inventory/ItemDevices/KabeshiriWall/KabeshiriWall.d.ts +13 -0
  46. package/bc/Screens/Inventory/ItemDevices/Kennel/Kennel.d.ts +18 -0
  47. package/bc/Screens/Inventory/ItemDevices/LuckyWheel/LuckyWheel.d.ts +48 -0
  48. package/bc/Screens/Inventory/ItemDevices/PetBowl/PetBowl.d.ts +6 -0
  49. package/bc/Screens/Inventory/ItemDevices/VacBedDeluxe/VacBedDeluxe.d.ts +2 -0
  50. package/bc/Screens/Inventory/ItemDevices/WheelFortune/WheelFortune.d.ts +10 -0
  51. package/bc/Screens/Inventory/ItemDevices/WoodenBox/WoodenBox.d.ts +13 -0
  52. package/bc/Screens/Inventory/ItemFeet/HempRope/HempRope.d.ts +2 -0
  53. package/bc/Screens/Inventory/ItemFeet/NylonRope/NylonRope.d.ts +2 -0
  54. package/bc/Screens/Inventory/ItemHandhelds/PortalTablet/PortalTablet.d.ts +10 -0
  55. package/bc/Screens/Inventory/ItemHead/DroneMask/DroneMask.d.ts +2 -0
  56. package/bc/Screens/Inventory/ItemHood/CanvasHood/CanvasHood.d.ts +6 -0
  57. package/bc/Screens/Inventory/ItemMisc/CombinationPadlock/CombinationPadlock.d.ts +16 -0
  58. package/bc/Screens/Inventory/ItemMisc/ExclusivePadlock/ExclusivePadlock.d.ts +6 -0
  59. package/bc/Screens/Inventory/ItemMisc/FamilyPadlock/FamilyPadlock.d.ts +6 -0
  60. package/bc/Screens/Inventory/ItemMisc/HighSecurityPadlock/HighSecurityPadlock.d.ts +15 -0
  61. package/bc/Screens/Inventory/ItemMisc/IntricatePadlock/IntricatePadlock.d.ts +6 -0
  62. package/bc/Screens/Inventory/ItemMisc/LoversPadlock/LoversPadlock.d.ts +6 -0
  63. package/bc/Screens/Inventory/ItemMisc/LoversTimerPadlock/LoversTimerPadlock.d.ts +17 -0
  64. package/bc/Screens/Inventory/ItemMisc/MetalPadlock/MetalPadlock.d.ts +6 -0
  65. package/bc/Screens/Inventory/ItemMisc/MistressPadlock/MistressPadlock.d.ts +6 -0
  66. package/bc/Screens/Inventory/ItemMisc/MistressTimerPadlock/MistressTimerPadlock.d.ts +13 -0
  67. package/bc/Screens/Inventory/ItemMisc/OwnerPadlock/OwnerPadlock.d.ts +6 -0
  68. package/bc/Screens/Inventory/ItemMisc/OwnerTimerPadlock/OwnerTimerPadlock.d.ts +22 -0
  69. package/bc/Screens/Inventory/ItemMisc/PandoraPadlock/PandoraPadlock.d.ts +6 -0
  70. package/bc/Screens/Inventory/ItemMisc/PasswordPadlock/PasswordPadlock.d.ts +17 -0
  71. package/bc/Screens/Inventory/ItemMisc/PortalLinkPadlock/PortalLinkPadlock.d.ts +6 -0
  72. package/bc/Screens/Inventory/ItemMisc/SafewordPadlock/SafewordPadlock.d.ts +12 -0
  73. package/bc/Screens/Inventory/ItemMisc/TimerPadlock/TimerPadlock.d.ts +13 -0
  74. package/bc/Screens/Inventory/ItemMisc/TimerPasswordPadlock/TimerPasswordPadlock.d.ts +13 -0
  75. package/bc/Screens/Inventory/ItemMisc/WoodenSign/WoodenSign.d.ts +2 -0
  76. package/bc/Screens/Inventory/ItemMouth/FuturisticPanelGag/FuturisticPanelGag.d.ts +49 -0
  77. package/bc/Screens/Inventory/ItemNeck/AutoShockCollar/AutoShockCollar.d.ts +4 -0
  78. package/bc/Screens/Inventory/ItemNeck/FuturisticCollar/FuturisticCollar.d.ts +59 -0
  79. package/bc/Screens/Inventory/ItemNeck/PetSuitShockCollar/PetSuitShockCollar.d.ts +4 -0
  80. package/bc/Screens/Inventory/ItemNeck/ShockCollar/ShockCollar.d.ts +4 -0
  81. package/bc/Screens/Inventory/ItemNeck/SlaveCollar/SlaveCollar.d.ts +25 -0
  82. package/bc/Screens/Inventory/ItemNeckAccessories/CollarAutoShockUnit/CollarAutoShockUnit.d.ts +15 -0
  83. package/bc/Screens/Inventory/ItemNeckAccessories/CollarNameTag/CollarNameTag.d.ts +8 -0
  84. package/bc/Screens/Inventory/ItemNeckAccessories/CollarShockUnit/CollarShockUnit.d.ts +17 -0
  85. package/bc/Screens/Inventory/ItemNeckAccessories/CustomCollarTag/CustomCollarTag.d.ts +2 -0
  86. package/bc/Screens/Inventory/ItemNeckAccessories/ElectronicTag/ElectronicTag.d.ts +2 -0
  87. package/bc/Screens/Inventory/ItemNeckRestraints/CollarLeash/CollarLeash.d.ts +4 -0
  88. package/bc/Screens/Inventory/ItemNeckRestraints/PetPost/PetPost.d.ts +2 -0
  89. package/bc/Screens/Inventory/ItemNipples/LactationPump/LactationPump.d.ts +2 -0
  90. package/bc/Screens/Inventory/ItemPelvis/ForbiddenChastityBelt/ForbiddenChastityBelt.d.ts +32 -0
  91. package/bc/Screens/Inventory/ItemPelvis/FuturisticChastityBelt/FuturisticChastityBelt.d.ts +28 -0
  92. package/bc/Screens/Inventory/ItemPelvis/FuturisticTrainingBelt/FuturisticTrainingBelt.d.ts +103 -0
  93. package/bc/Screens/Inventory/ItemPelvis/LoveChastityBelt/LoveChastityBelt.d.ts +8 -0
  94. package/bc/Screens/Inventory/ItemPelvis/ObedienceBelt/ObedienceBelt.d.ts +29 -0
  95. package/bc/Screens/Inventory/ItemPelvis/PortalPanties/PortalPanties.d.ts +10 -0
  96. package/bc/Screens/Inventory/ItemPelvis/SciFiPleasurePanties/SciFiPleasurePanties.d.ts +6 -0
  97. package/bc/Screens/Inventory/ItemTorso/FuturisticHarness/FuturisticHarness.d.ts +8 -0
  98. package/bc/Screens/Inventory/ItemVulva/ClitAndDildoVibratorbelt/ClitAndDildoVibratorbelt.d.ts +4 -0
  99. package/bc/Screens/Inventory/ItemVulva/FuturisticVibrator/FuturisticVibrator.d.ts +65 -0
  100. package/bc/Screens/Inventory/ItemVulva/LoversVibrator/LoversVibrator.d.ts +2 -0
  101. package/bc/Screens/Inventory/Wings/SteampunkWings/SteampunkWings.d.ts +16 -0
  102. package/bc/Screens/MiniGame/Chess/BondageChess.d.ts +30 -0
  103. package/bc/Screens/MiniGame/Chess/chess.d.ts +7 -0
  104. package/bc/Screens/MiniGame/ChestLockpick/ChestLockpick.d.ts +27 -0
  105. package/bc/Screens/MiniGame/ClubCard/ClubCard.d.ts +373 -0
  106. package/bc/Screens/MiniGame/ClubCardBuilder/ClubCardBuilder.d.ts +66 -0
  107. package/bc/Screens/MiniGame/DojoStruggle/DojoStruggle.d.ts +25 -0
  108. package/bc/Screens/MiniGame/GetUp/GetUp.d.ts +31 -0
  109. package/bc/Screens/MiniGame/HorseWalk/HorseWalk.d.ts +85 -0
  110. package/bc/Screens/MiniGame/Kidnap/Kidnap.d.ts +165 -0
  111. package/bc/Screens/MiniGame/KinkyDungeon/KDAutoStruggle.d.ts +99 -0
  112. package/bc/Screens/MiniGame/KinkyDungeon/KDClasses.d.ts +11 -0
  113. package/bc/Screens/MiniGame/KinkyDungeon/KDDelayedActions.d.ts +17 -0
  114. package/bc/Screens/MiniGame/KinkyDungeon/KDFixForBC.d.ts +11 -0
  115. package/bc/Screens/MiniGame/KinkyDungeon/KDModUtils.d.ts +93 -0
  116. package/bc/Screens/MiniGame/KinkyDungeon/KDParticles.d.ts +37 -0
  117. package/bc/Screens/MiniGame/KinkyDungeon/KDTypeDefs.d.ts +2161 -0
  118. package/bc/Screens/MiniGame/KinkyDungeon/KDWardrobe.d.ts +84 -0
  119. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeon.d.ts +653 -0
  120. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonAlt.d.ts +481 -0
  121. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonBones.d.ts +16 -0
  122. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonBoss.d.ts +119 -0
  123. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonBuffs.d.ts +33 -0
  124. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonBuffsList.d.ts +865 -0
  125. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonConsumables.d.ts +36 -0
  126. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonConsumablesList.d.ts +66 -0
  127. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonCurse.d.ts +44 -0
  128. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonDialogue.d.ts +171 -0
  129. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonDialogueList.d.ts +45 -0
  130. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonDialogueTriggers.d.ts +48 -0
  131. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonDraw.d.ts +738 -0
  132. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonDress.d.ts +62 -0
  133. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonDressList.d.ts +33 -0
  134. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonEditor.d.ts +1124 -0
  135. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonEditorGen.d.ts +113 -0
  136. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonEditorTiles.d.ts +4 -0
  137. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonEffectTiles.d.ts +6 -0
  138. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonEnemies.d.ts +544 -0
  139. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonEnemiesList.d.ts +22 -0
  140. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonEnemyEventList.d.ts +18 -0
  141. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonErrors.d.ts +59 -0
  142. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonEvents.d.ts +151 -0
  143. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonFactions.d.ts +53 -0
  144. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonFactionsList.d.ts +650 -0
  145. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonFight.d.ts +453 -0
  146. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonFurniture.d.ts +28 -0
  147. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonGame.d.ts +429 -0
  148. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonHUD.d.ts +134 -0
  149. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonInput.d.ts +23 -0
  150. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonInventory.d.ts +178 -0
  151. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonItem.d.ts +33 -0
  152. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonJail.d.ts +142 -0
  153. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonJailList.d.ts +105 -0
  154. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonLoot.d.ts +66 -0
  155. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonLootList.d.ts +866 -0
  156. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonLore.d.ts +37 -0
  157. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonMagic.d.ts +113 -0
  158. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonMagicCode.d.ts +23 -0
  159. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonMagicList.d.ts +62 -0
  160. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonMapMods.d.ts +5 -0
  161. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonMistress.d.ts +10 -0
  162. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonMultiplayer.d.ts +26 -0
  163. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonMusic.d.ts +28 -0
  164. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonObject.d.ts +42 -0
  165. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonParams.d.ts +4 -0
  166. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonPathfinding.d.ts +36 -0
  167. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonPerks.d.ts +147 -0
  168. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonPersonality.d.ts +83 -0
  169. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonPlayerEffects.d.ts +35 -0
  170. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonQuest.d.ts +10 -0
  171. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonReputation.d.ts +229 -0
  172. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonRestraints.d.ts +766 -0
  173. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonRestraintsList.d.ts +55 -0
  174. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonSetpiece.d.ts +91 -0
  175. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonShrine.d.ts +89 -0
  176. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonSpawns.d.ts +49 -0
  177. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonStats.d.ts +282 -0
  178. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonTests.d.ts +5 -0
  179. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonTiles.d.ts +160 -0
  180. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonTilesList.d.ts +72 -0
  181. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonTraps.d.ts +34 -0
  182. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonVibe.d.ts +98 -0
  183. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonVision.d.ts +24 -0
  184. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonWeaponList.d.ts +5 -0
  185. package/bc/Screens/MiniGame/MagicBattle/MagicBattle.d.ts +73 -0
  186. package/bc/Screens/MiniGame/MagicPuzzle/MagicPuzzle.d.ts +75 -0
  187. package/bc/Screens/MiniGame/MaidCleaning/MaidCleaning.d.ts +51 -0
  188. package/bc/Screens/MiniGame/MaidDrinks/MaidDrinks.d.ts +82 -0
  189. package/bc/Screens/MiniGame/PlayerAuction/PlayerAuction.d.ts +36 -0
  190. package/bc/Screens/MiniGame/PuppyWalker/PuppyWalker.d.ts +39 -0
  191. package/bc/Screens/MiniGame/RhythmGame/RhythmGame.d.ts +76 -0
  192. package/bc/Screens/MiniGame/SlaveAuction/SlaveAuction.d.ts +39 -0
  193. package/bc/Screens/MiniGame/Tennis/Tennis.d.ts +52 -0
  194. package/bc/Screens/MiniGame/Therapy/Therapy.d.ts +39 -0
  195. package/bc/Screens/MiniGame/WheelFortune/WheelFortune.d.ts +105 -0
  196. package/bc/Screens/Online/AdvancedRule/AdvancedRule.d.ts +32 -0
  197. package/bc/Screens/Online/ChatAdmin/ChatAdmin.d.ts +59 -0
  198. package/bc/Screens/Online/ChatBlockItem/ChatBlockItem.d.ts +30 -0
  199. package/bc/Screens/Online/ChatCreate/ChatCreate.d.ts +66 -0
  200. package/bc/Screens/Online/ChatRoom/ChatRoom.d.ts +1342 -0
  201. package/bc/Screens/Online/ChatRoom/Commands.d.ts +66 -0
  202. package/bc/Screens/Online/ChatSearch/ChatSearch.d.ts +241 -0
  203. package/bc/Screens/Online/ChatSelect/ChatSelect.d.ts +33 -0
  204. package/bc/Screens/Online/ForbiddenWords/ForbiddenWords.d.ts +33 -0
  205. package/bc/Screens/Online/Game/OnlineGame.d.ts +69 -0
  206. package/bc/Screens/Online/GameClubCard/GameClubCard.d.ts +131 -0
  207. package/bc/Screens/Online/GameLARP/GameLARP.d.ts +279 -0
  208. package/bc/Screens/Online/GameMagicBattle/GameMagicBattle.d.ts +159 -0
  209. package/bc/Screens/Online/WheelFortuneCustomize/WheelFortuneCustomize.d.ts +24 -0
  210. package/bc/Screens/Room/Arcade/Arcade.d.ts +94 -0
  211. package/bc/Screens/Room/AsylumBedroom/AsylumBedroom.d.ts +16 -0
  212. package/bc/Screens/Room/AsylumEntrance/AsylumEntrance.d.ts +265 -0
  213. package/bc/Screens/Room/AsylumGGTS/AsylumGGTS.d.ts +330 -0
  214. package/bc/Screens/Room/AsylumMeeting/AsylumMeeting.d.ts +110 -0
  215. package/bc/Screens/Room/AsylumTherapy/AsylumTherapy.d.ts +117 -0
  216. package/bc/Screens/Room/Cafe/Cafe.d.ts +144 -0
  217. package/bc/Screens/Room/Cell/Cell.d.ts +32 -0
  218. package/bc/Screens/Room/ClubCardLounge/ClubCardLounge.d.ts +28 -0
  219. package/bc/Screens/Room/CollegeCafeteria/CollegeCafeteria.d.ts +57 -0
  220. package/bc/Screens/Room/CollegeChess/CollegeChess.d.ts +75 -0
  221. package/bc/Screens/Room/CollegeDetention/CollegeDetention.d.ts +98 -0
  222. package/bc/Screens/Room/CollegeEntrance/CollegeEntrance.d.ts +54 -0
  223. package/bc/Screens/Room/CollegeTeacher/CollegeTeacher.d.ts +71 -0
  224. package/bc/Screens/Room/CollegeTennis/CollegeTennis.d.ts +47 -0
  225. package/bc/Screens/Room/CollegeTheater/CollegeTheater.d.ts +100 -0
  226. package/bc/Screens/Room/Crafting/Crafting.d.ts +213 -0
  227. package/bc/Screens/Room/DailyJob/DailyJob.d.ts +111 -0
  228. package/bc/Screens/Room/Empty/Empty.d.ts +84 -0
  229. package/bc/Screens/Room/Gambling/Gambling.d.ts +269 -0
  230. package/bc/Screens/Room/Infiltration/Infiltration.d.ts +223 -0
  231. package/bc/Screens/Room/InfiltrationPerks/InfiltrationPerks.d.ts +42 -0
  232. package/bc/Screens/Room/Introduction/Introduction.d.ts +195 -0
  233. package/bc/Screens/Room/KidnapLeague/KidnapLeague.d.ts +253 -0
  234. package/bc/Screens/Room/LARP/LARP.d.ts +39 -0
  235. package/bc/Screens/Room/Magic/Magic.d.ts +199 -0
  236. package/bc/Screens/Room/MagicSchoolEscape/MagicSchoolEscape.d.ts +36 -0
  237. package/bc/Screens/Room/MagicSchoolLaboratory/MagicSchoolLaboratory.d.ts +170 -0
  238. package/bc/Screens/Room/MaidQuarters/MaidQuarters.d.ts +305 -0
  239. package/bc/Screens/Room/MainHall/MainHall.d.ts +255 -0
  240. package/bc/Screens/Room/Management/Management.d.ts +544 -0
  241. package/bc/Screens/Room/MovieStudio/MovieStudio.d.ts +178 -0
  242. package/bc/Screens/Room/Nursery/Nursery.d.ts +85 -0
  243. package/bc/Screens/Room/Pandora/Pandora.d.ts +348 -0
  244. package/bc/Screens/Room/PandoraPrison/PandoraPrison.d.ts +180 -0
  245. package/bc/Screens/Room/Photographic/Photographic.d.ts +53 -0
  246. package/bc/Screens/Room/Platform/Platform.d.ts +1730 -0
  247. package/bc/Screens/Room/PlatformDialog/PlatformDialog.d.ts +3966 -0
  248. package/bc/Screens/Room/PlatformIntro/PlatformIntro.d.ts +21 -0
  249. package/bc/Screens/Room/PlatformProfile/PlatformProfile.d.ts +62 -0
  250. package/bc/Screens/Room/Poker/Poker.d.ts +141 -0
  251. package/bc/Screens/Room/Poker/PokerHandValue.d.ts +65 -0
  252. package/bc/Screens/Room/Prison/Prison.d.ts +118 -0
  253. package/bc/Screens/Room/Private/Private.d.ts +781 -0
  254. package/bc/Screens/Room/PrivateBed/PrivateBed.d.ts +78 -0
  255. package/bc/Screens/Room/PrivateRansom/PrivateRansom.d.ts +28 -0
  256. package/bc/Screens/Room/Sarah/Sarah.d.ts +162 -0
  257. package/bc/Screens/Room/Shibari/Shibari.d.ts +162 -0
  258. package/bc/Screens/Room/Shop/Shop.d.ts +162 -0
  259. package/bc/Screens/Room/SlaveMarket/SlaveMarket.d.ts +90 -0
  260. package/bc/Screens/Room/Stable/Stable.d.ts +236 -0
  261. package/bc/Scripts/Activity.d.ts +270 -0
  262. package/bc/Scripts/AfkTimer.d.ts +43 -0
  263. package/bc/Scripts/Animation.d.ts +81 -0
  264. package/bc/Scripts/Asset.d.ts +216 -0
  265. package/bc/Scripts/Audio.d.ts +105 -0
  266. package/bc/Scripts/Character.d.ts +495 -0
  267. package/bc/Scripts/CharacterName.d.ts +1 -0
  268. package/bc/Scripts/ColorPicker.d.ts +155 -0
  269. package/bc/Scripts/Common.d.ts +499 -0
  270. package/bc/Scripts/CommonDraw.d.ts +34 -0
  271. package/bc/Scripts/ControllerSupport.d.ts +107 -0
  272. package/bc/Scripts/Dialog.d.ts +970 -0
  273. package/bc/Scripts/DictionaryBuilder.d.ts +210 -0
  274. package/bc/Scripts/Drawing.d.ts +581 -0
  275. package/bc/Scripts/Drawing3D.d.ts +21 -0
  276. package/bc/Scripts/DynamicDraw.d.ts +310 -0
  277. package/bc/Scripts/Element.d.ts +154 -0
  278. package/bc/Scripts/ExtendedItem.d.ts +339 -0
  279. package/bc/Scripts/GLDraw.d.ts +223 -0
  280. package/bc/Scripts/Game.d.ts +61 -0
  281. package/bc/Scripts/GameLog.d.ts +87 -0
  282. package/bc/Scripts/Graph.d.ts +46 -0
  283. package/bc/Scripts/Import.d.ts +7 -0
  284. package/bc/Scripts/Inventory.d.ts +509 -0
  285. package/bc/Scripts/MiniGame.d.ts +30 -0
  286. package/bc/Scripts/ModularItem.d.ts +286 -0
  287. package/bc/Scripts/Mouse.d.ts +34 -0
  288. package/bc/Scripts/NPC.d.ts +105 -0
  289. package/bc/Scripts/Notification.d.ts +120 -0
  290. package/bc/Scripts/PortalLink.d.ts +159 -0
  291. package/bc/Scripts/Property.d.ts +98 -0
  292. package/bc/Scripts/Reputation.d.ts +36 -0
  293. package/bc/Scripts/Server.d.ts +239 -0
  294. package/bc/Scripts/Skill.d.ts +107 -0
  295. package/bc/Scripts/Speech.d.ts +145 -0
  296. package/bc/Scripts/Struggle.d.ts +357 -0
  297. package/bc/Scripts/Testing.d.ts +30 -0
  298. package/bc/Scripts/Text.d.ts +92 -0
  299. package/bc/Scripts/TextItem.d.ts +65 -0
  300. package/bc/Scripts/TightenLoosenItem.d.ts +31 -0
  301. package/bc/Scripts/Timer.d.ts +62 -0
  302. package/bc/Scripts/Translation.d.ts +101 -0
  303. package/bc/Scripts/TypedItem.d.ts +242 -0
  304. package/bc/Scripts/Validation.d.ts +324 -0
  305. package/bc/Scripts/VariableHeight.d.ts +108 -0
  306. package/bc/Scripts/VibratorMode.d.ts +209 -0
  307. package/bc/Scripts/lib/LZString.d.ts +12 -0
  308. package/bc/Scripts/lib/three/FBXLoader.d.ts +0 -0
  309. package/bc/Scripts/lib/three/GLTFLoader.d.ts +0 -0
  310. package/bc/Scripts/lib/webgl/resources/m4.d.ts +0 -0
  311. package/bc/Typedef.d.ts +3933 -0
  312. package/package.json +19 -0
@@ -0,0 +1,159 @@
1
+ /** @type {ExtendedItemCallbacks.Init} */
2
+ declare function PortalLinkRecieverInit(C: Character, Item: Item, Refresh: boolean): boolean;
3
+ /** @type {ExtendedItemCallbacks.Load} */
4
+ declare function PortalLinkRecieverLoad(): void;
5
+ /** @type {ExtendedItemCallbacks.Draw} */
6
+ declare function PortalLinkRecieverDraw(): void;
7
+ /** @type {ExtendedItemCallbacks.Click} */
8
+ declare function PortalLinkRecieverClick(): void;
9
+ declare function PortalLinkRecieverExit(): void;
10
+ /** @type {ExtendedItemCallbacks.Init} */
11
+ declare function PortalLinkTransmitterInit(C: Character, Item: Item, Refresh: boolean): boolean;
12
+ /** @type {ExtendedItemCallbacks.Load} */
13
+ declare function PortalLinkTransmitterLoad(): void;
14
+ /** @type {ExtendedItemCallbacks.Draw} */
15
+ declare function PortalLinkTransmitterDraw(): void;
16
+ /** @type {ExtendedItemCallbacks.Click} */
17
+ declare function PortalLinkTransmitterClick(): void;
18
+ /** @type {ExtendedItemCallbacks.Exit} */
19
+ declare function PortalLinkTransmitterExit(): void;
20
+ /**
21
+ * Draw the sync code UI depending on the mode.
22
+ * Reciever has Random and Copy to clipboard buttons, transmitter has
23
+ * Copy from clipboard and link status label.
24
+ *
25
+ * @param {boolean} reciever - Whether it's in reciever or transmitter mode
26
+ */
27
+ declare function PortalLinkSyncCodeInputDraw(reciever: boolean): void;
28
+ declare function PortalLinkSyncCodeInputClick(reciever: any): void;
29
+ /**
30
+ * Input listener for changes to the sync code field
31
+ * @param {Character} C - The character wearing the item
32
+ * @param {Item} Item - The item being changed
33
+ * @param {boolean} reciever - Whether the called is a reciever or not
34
+ */
35
+ declare function PortalLinkCodeChanged(C: Character, Item: Item, reciever: boolean): void;
36
+ /**
37
+ * Get the transmitter sync code from a character
38
+ * @param {Character} C
39
+ */
40
+ declare function PortalLinkGetTransmitterCode(C: Character): string;
41
+ /**
42
+ * Get the list of all items that match a given sync code in the chatroom.
43
+ * @param {string} linkCode
44
+ * @returns {[Character, Item][]}
45
+ */
46
+ declare function PortalLinkGetItemsWithCode(linkCode: string): [Character, Item][];
47
+ /**
48
+ * Checks the transmitter's link status with its reciever.
49
+ * @param {Character} C - The character wearing the transmitter
50
+ * @param {boolean} newLink - Whether it's a new link being setup
51
+ */
52
+ declare function PortalLinkTransmitterCheckLinkStatus(C: Character, newLink?: boolean): void;
53
+ /**
54
+ * Gathers the list of available functions for a given asset.
55
+ * @param {Item} item
56
+ */
57
+ declare function PortalLinkGetFunctions(item: Item): PortalLinkFunction[];
58
+ /**
59
+ * Broadcast an hidden ProcessLink message to the chatroom
60
+ * @param {Character} target
61
+ * @param {Item} item
62
+ * @param {PortalLinkFunction} func
63
+ */
64
+ declare function PortalLinkPublishMessage(target: Character, item: Item, func: PortalLinkFunction): void;
65
+ /**
66
+ *
67
+ * @param {Character} sender
68
+ * @param {Item} item
69
+ */
70
+ declare function PortalLinkCycleChastityModule(sender: Character, item: Item): void;
71
+ /**
72
+ * The handler for processing the hidden PortalLink messages
73
+ * @param {Character} sender
74
+ * @param {IChatRoomMessage} data
75
+ */
76
+ declare function PortalLinkProcessMessage(sender: Character, data: IChatRoomMessage): void;
77
+ /**
78
+ * This file contains everything needed to add remote-style functions
79
+ * (a.k.a PortalLink compatibility) to an asset, both as a transmitter
80
+ * or a reciever item.
81
+ * For transmitters, you'll need to call the following {@link ExtendedItemCallbacks}
82
+ * callbacks:
83
+ * - {@link PortalLinkTransmitterInit}
84
+ * - {@link PortalLinkTransmitterLoad}
85
+ * - {@link PortalLinkTransmitterDraw}
86
+ * - {@link PortalLinkTransmitterExit}
87
+ *
88
+ * Recievers have their own set of matching functions:
89
+ * - {@link PortalLinkRecieverInit}
90
+ * - {@link PortalLinkRecieverLoad}
91
+ * - {@link PortalLinkRecieverDraw}
92
+ * - {@link PortalLinkRecieverExit}
93
+ *
94
+ * That should be enough to give your asset the basic "sync code" UI handling,
95
+ * a reciever will only be detected if it supports at least one function (see below).
96
+ *
97
+ * ## PortalLink functions
98
+ *
99
+ * They are handled by a set of attributes, which the reciever needs to add to its
100
+ * {@link AssetDefinition.Attribute} to declare it supports it. The transmitter will
101
+ * detect those (via {@link PortalLinkGetFunctions}) and use them in its UI.
102
+ *
103
+ * Currently supported PortalLink functions (and their required attributes) are:
104
+ *
105
+ * - `PortalLinkFunctionLock` and `PortalLinkFunctionUnlock`:
106
+ * Those two functions are supported when the `PortalLinkLockable` attribute exists
107
+ * on the reciever, and enable remote-locking.
108
+ *
109
+ * - `PortalLinkFunctionCycleChastity`:
110
+ * Enabled when the `PortalLinkChastity${string}` attribute exists the reciever, and
111
+ * allows the reciever's chastity state to be cycled;
112
+ *
113
+ * @note Right now only modular items are supported, and `${string}` in the attribute
114
+ * is used to look up the module name ({@link ModularItemModuleConfig.Name}) to cycle
115
+ * on the reciever.
116
+ *
117
+ * - `PortalLinkFunctionActivity${ActivityName}`;
118
+ * Enabled when the `PortalLinkActivity${ActivityName}` attribute exists on the reciever,
119
+ * and allows the transmitter to perform the activity named `${ActivityName}` through
120
+ * the transmitter. By default activities will happen on the group the reciever is in,
121
+ * but you can use the `PortalLinkTarget${AssetGroupItemName}` to change the target.
122
+ *
123
+ * Since attributes are customizable at both the asset and option/module-level, you can
124
+ * get pretty involved combinations working. See the PortalPanties and how cycling the
125
+ * chastity changes the activity target for a good example.
126
+ *
127
+ * ## Low-level details
128
+ *
129
+ * The low-level protocol "exchange" itself is done in the following way:
130
+ * function discovery is made with {@link PortalLinkGetFunctions}, {@link PortalLinkPublishMessage} is
131
+ * called when a button is clicked from the transmitter UI on the senders' side, and its counterpart
132
+ * {@link PortalLinkProcessMessage} is called when a PortalLink message is recieved on the target's side.
133
+ * If you want to add more functions, those are the main three you should look at.
134
+ */
135
+ /** Max length of sync codes */
136
+ declare const PortalLinkCodeLength: 8;
137
+ /** Regex string for what consitutes a valid sync code */
138
+ declare const PortalLinkCodeText: string;
139
+ /** Same thing but in regex form for quick .test and .match */
140
+ declare const PortalLinkCodeRegex: RegExp;
141
+ /** The DOM ID for the sync code field */
142
+ declare const PortalLinkCodeInputID: "PortalLinkCode";
143
+ /**
144
+ * Parameters for the button grid
145
+ * @type {CommonGenerateGridParameters}
146
+ */
147
+ declare const PortalLinkFunctionGrid: CommonGenerateGridParameters;
148
+ /** @type {PortalLinkStatus} */
149
+ declare let PortalLinkTransmitterStatus: PortalLinkStatus;
150
+ /** @type {number | null} */
151
+ declare let PortalLinkTransmitterLastLinkCheck: number | null;
152
+ /** @type {RectTuple} */
153
+ declare const PortalLinkRandomCodeButton: RectTuple;
154
+ /** @type {RectTuple} */
155
+ declare const PortalLinkCopyCodeButton: RectTuple;
156
+ /** @type {RectTuple} */
157
+ declare const PortalLinkPasteCodeButton: RectTuple;
158
+ /** @type {Record<PortalLinkStatus, string>} */
159
+ declare const PortalLinkStatusColors: Record<PortalLinkStatus, string>;
@@ -0,0 +1,98 @@
1
+ /**
2
+ * Construct an item-specific ID for a properties input element (_e.g._ an opacity slider).
3
+ * @param {string} Name - The name of the input element
4
+ * @param {Item} Item - The item for whom the ID should be constructed; defaults to {@link DialogFocusItem}
5
+ * @returns {string} - The ID of the property
6
+ */
7
+ declare function PropertyGetID(Name: string, Item?: Item): string;
8
+ /**
9
+ * Load function for items with opacity sliders. Constructs the opacity slider.
10
+ * @param {null | ExtendedItemData<any>} Data - The items extended item data
11
+ * @param {null | (() => void)} OriginalFunction - The function that is normally called when an archetypical item reaches this point (if any).
12
+ * @param {ThumbIcon} thumbIcon The icon to use for the range input's "thumb" (handle).
13
+ * @returns {HTMLInputElement} - The new or pre-existing range input element of the opacity slider
14
+ */
15
+ declare function PropertyOpacityLoad(Data?: null | ExtendedItemData<any>, OriginalFunction?: null | (() => void), thumbIcon?: ThumbIcon): HTMLInputElement;
16
+ /**
17
+ * Draw function for items with opacity sliders. Draws the opacity slider and further opacity-related information.
18
+ * @param {null | ExtendedItemData<any>} Data - The items extended item data
19
+ * @param {null | (() => void)} OriginalFunction - The function that is normally called when an archetypical item reaches this point (if any).
20
+ * @param {number} XOffset - An offset for all text and slider X coordinates
21
+ * @param {number} YOffset - An offset for all text and slider Y coordinates
22
+ * @param {string} LabelKeyword - The keyword of the opacity label
23
+ * @returns {void} Nothing
24
+ */
25
+ declare function PropertyOpacityDraw(Data?: null | ExtendedItemData<any>, OriginalFunction?: null | (() => void), XOffset?: number, YOffset?: number, LabelKeyword?: string): void;
26
+ /**
27
+ * Exit function for items with opacity sliders. Updates the items opacity, deletes the slider and (optionally) refreshes the character and item.
28
+ * @param {null | ExtendedItemData<any>} Data - The items extended item data
29
+ * @param {null | (() => void)} OriginalFunction - The function that is normally called when an archetypical item reaches this point (if any).
30
+ * @param {boolean} Refresh - Whether character parameters and the respective item should be refreshed or not
31
+ * @returns {boolean} Whether the opacity was updated or not
32
+ */
33
+ declare function PropertyOpacityExit(Data?: null | ExtendedItemData<any>, OriginalFunction?: null | (() => void), Refresh?: boolean): boolean;
34
+ /**
35
+ * Validation function for items with opacity sliders.
36
+ * @type {ExtendedItemScriptHookCallbacks.Validate<ExtendedItemData<any>, any>}
37
+ */
38
+ declare function PropertyOpacityValidate(Data: ExtendedItemData<any>, OriginalFunction: (C: Character, item: Item, newOption: any, previousOption: any, permitExisting?: boolean) => string, C: Character, Item: Item, Option: any, CurrentOption: any): string;
39
+ /**
40
+ * Helper fuction for publishing shock-related actions.
41
+ * @param {Character} C - The shocked character; defaults to the {@link CharacterGetCurrent} output
42
+ * @param {Item} Item - The shocking item; defaults to {@link DialogFocusItem}
43
+ * @param {boolean} Automatic - Whether the shock was triggered automatically or otherwise manually
44
+ */
45
+ declare function PropertyShockPublishAction(C?: Character, Item?: Item, Automatic?: boolean): void;
46
+ /**
47
+ * Check if a given message warants automatic punishment given the provided sensitivety level
48
+ * @param {0 | 1 | 2 | 3} Sensitivity - The auto-punishment sensitivety
49
+ * @param {string} msg - The to-be checked message
50
+ * @returns {boolean} Whether the passed message should trigger automatic speech-based punishment
51
+ */
52
+ declare function PropertyAutoPunishParseMessage(Sensitivity: 0 | 1 | 2 | 3, msg: string): boolean;
53
+ /**
54
+ * Check whether the last uttered message should trigger automatic punishment from the provided item
55
+ * @param {Item} Item - The item in question
56
+ * @param {number | null} LastMessageLen - The length of {@link ChatRoomLastMessage} prior to the last message (if applicable)
57
+ * @returns {boolean} Whether the last message should trigger automatic speech-based punishment
58
+ */
59
+ declare function PropertyAutoPunishDetectSpeech(Item: Item, LastMessageLen?: number | null): boolean;
60
+ /**
61
+ * Merge all passed item properties into the passed output, merging (and shallow copying) arrays if necessary.
62
+ * @param {ItemProperties} output - The to be updated properties
63
+ * @param {readonly ItemProperties[]} args - The additional item properties to be merged into the output
64
+ * @returns {ItemProperties} - The passed output modified inplace
65
+ */
66
+ declare function PropertyUnion(output: ItemProperties, ...args: readonly ItemProperties[]): ItemProperties;
67
+ /**
68
+ * Remove all passed item properties from the passed output, removing (and shallow copying) array entries if necessary.
69
+ * @param {ItemProperties} output - The to-be updated properties
70
+ * @param {readonly ItemProperties[]} args - The additional item properties to be removed from the output
71
+ * @returns {ItemProperties} - The passed output modified inplace
72
+ */
73
+ declare function PropertyDifference(output: ItemProperties, ...args: readonly ItemProperties[]): ItemProperties;
74
+ /**
75
+ * Property.js
76
+ * -----------
77
+ * A module with common helper functions for the handling of specific {@link ItemProperties} properties.
78
+ * Note that more generic extended item functions should be confined to `ExtendedItem.js`.
79
+ */
80
+ /**
81
+ * A Map that maps input element IDs to their original value is defined in, _.e.g_, {@link PropertyOpacityLoad}.
82
+ * Used as fallback in case an invalid opacity value is encountered when exiting.
83
+ * @type {Map<string, any>}
84
+ */
85
+ declare const PropertyOriginalValue: Map<string, any>;
86
+ declare function PropertyOpacityChange(C: any, Item: any, Opacity: any): void;
87
+ /**
88
+ * A set of group names whose auto-punishment has successfully been handled by {@link PropertyAutoPunishDetectSpeech}.
89
+ * If a group name is absent from the set then it's eligible for action-based punishment triggers.
90
+ * The initial set is populated by {@link AssetLoadAll} after all asset groups are defined.
91
+ * @type {Set<AssetGroupName>}
92
+ */
93
+ declare let PropertyAutoPunishHandled: Set<AssetGroupName>;
94
+ /**
95
+ * A list of keywords that can trigger automatic punishment when included in `/me`- or `*`-based messages
96
+ * @type {readonly string[]}
97
+ */
98
+ declare const PropertyAutoPunishKeywords: readonly string[];
@@ -0,0 +1,36 @@
1
+ /**
2
+ * Alters a given reputation value for the player
3
+ * @param {ReputationType} RepType - The name/type of the reputation to alter
4
+ * @param {number} RepValue - Reputation to add/subtract to the current reputation value.
5
+ * @param {boolean} [Push=true] - Pushes the reputation to the server if TRUE
6
+ * @returns {void} - Nothing
7
+ */
8
+ declare function ReputationChange(RepType: ReputationType, RepValue: number, Push?: boolean): void;
9
+ /**
10
+ * Loads the reputation data from the server
11
+ * @param {readonly Reputation[]} NewRep - The array of reputation-value pairs to load for the current player
12
+ * @returns {void} - Nothing
13
+ */
14
+ declare function ReputationLoad(NewRep: readonly Reputation[]): void;
15
+ /**
16
+ * Returns a specific reputation value for the player
17
+ * @param {ReputationType} RepType - Type/name of the reputation to get the value of.
18
+ * @returns {number} - Returns the value of the reputation. It can range from 100 to -100, and it defaults to 0 if the player never earned this type of reputation before.
19
+ */
20
+ declare function ReputationGet(RepType: ReputationType): number;
21
+ /**
22
+ * Returns a specific reputation value for a given character
23
+ * @param {Character} C - Character to get the reputation for.
24
+ * @param {ReputationType} RepType - Type/name of the reputation to get the value of.
25
+ * @returns {number} - Returns the value of the reputation. It can range from 100 to -100, and it defaults to 0 if the given character never earned this type of reputation before.
26
+ */
27
+ declare function ReputationCharacterGet(C: Character, RepType: ReputationType): number;
28
+ /**
29
+ * Alter the reputation progress by a factor. The higher the rep, the slower it gets, a reputation is easier to break than to build. Takes the cheater version factor into account.
30
+ * @param {ReputationType} RepType - Type/name of the reputation
31
+ * @param {number|string} Value - Value of the reputation change before the factor is applied
32
+ * @return {void} - Nothing
33
+ */
34
+ declare function ReputationProgress(RepType: ReputationType, Value: number | string): void;
35
+ /** @type {ReputationType[]} */
36
+ declare var ReputationValidReputations: ReputationType[];
@@ -0,0 +1,239 @@
1
+ /** Loads the server by attaching the socket events and their respective callbacks */
2
+ declare function ServerInit(): void;
3
+ /**
4
+ * Sets the connection status of the server and updates the login page message
5
+ * @param {boolean} connected - whether or not the websocket connection to the server has been established successfully
6
+ * @param {string} [errorMessage] - the error message to display if not connected
7
+ */
8
+ declare function ServerSetConnected(connected: boolean, errorMessage?: string): void;
9
+ /**
10
+ * Callback when receiving a "connect" event on the socket - this will be called on initial connection and on
11
+ * successful reconnects.
12
+ */
13
+ declare function ServerConnect(): void;
14
+ /**
15
+ * Callback when receiving a "reconnecting" event on the socket - this is called when socket.io initiates a retry after
16
+ * a failed connection attempt.
17
+ */
18
+ declare function ServerReconnecting(): void;
19
+ /**
20
+ * Callback used to parse received information related to the server
21
+ * @param {{OnlinePlayers: number, Time: number}} data - Data object containing the server information
22
+ * @returns {void} - Nothing
23
+ */
24
+ declare function ServerInfo(data: {
25
+ OnlinePlayers: number;
26
+ Time: number;
27
+ }): void;
28
+ /**
29
+ * Callback used when we are disconnected from the server, try to enter the reconnection mode (relog screen) if the
30
+ * user was logged in
31
+ * @param {*} data - Error to log
32
+ * @param {boolean} [close=false] - close the transport
33
+ * @returns {void} - Nothing
34
+ */
35
+ declare function ServerDisconnect(data: any, close?: boolean): void;
36
+ /**
37
+ * Returns whether the player is currently in a chatroom or viewing a subscreen while in a chatroom
38
+ * @returns {boolean} - True if in a chatroom
39
+ */
40
+ declare function ServerPlayerIsInChatRoom(): boolean;
41
+ /** Sends a message with the given data to the server via socket.emit */
42
+ declare function ServerSend(Message: any, Data: any): void;
43
+ /**
44
+ * Syncs Money, owner name and lover name with the server
45
+ * @returns {void} - Nothing
46
+ */
47
+ declare function ServerPlayerSync(): void;
48
+ /**
49
+ * Syncs the full player inventory to the server.
50
+ * @returns {void} - Nothing
51
+ */
52
+ declare function ServerPlayerInventorySync(): void;
53
+ /**
54
+ * Syncs player's favorite, blocked, limited and hidden items to the server
55
+ * @returns {void} - Nothing
56
+ */
57
+ declare function ServerPlayerBlockItemsSync(): void;
58
+ /**
59
+ * Syncs the full player log array to the server.
60
+ * @returns {void} - Nothing
61
+ */
62
+ declare function ServerPlayerLogSync(): void;
63
+ /**
64
+ * Syncs the full player reputation array to the server.
65
+ * @returns {void} - Nothing
66
+ */
67
+ declare function ServerPlayerReputationSync(): void;
68
+ /**
69
+ * Syncs the full player skill array to the server.
70
+ * @returns {void} - Nothing
71
+ */
72
+ declare function ServerPlayerSkillSync(): void;
73
+ /**
74
+ * Syncs player's relations and related info to the server.
75
+ * @returns {void} - Nothing
76
+ */
77
+ declare function ServerPlayerRelationsSync(): void;
78
+ /**
79
+ * Prepares an appearance bundle so we can push it to the server. It minimizes it by keeping only the necessary
80
+ * information. (Asset name, group name, color, properties and difficulty)
81
+ * @param {readonly Item[]} Appearance - The appearance array to bundle
82
+ * @returns {AppearanceBundle} - The appearance bundle created from the given appearance array
83
+ */
84
+ declare function ServerAppearanceBundle(Appearance: readonly Item[]): AppearanceBundle;
85
+ /**
86
+ * Loads the appearance assets from a server bundle that only contains the main info (no asset) and validates their
87
+ * properties to prevent griefing and respecting permissions in multiplayer
88
+ * @param {Character} C - Character for which to load the appearance
89
+ * @param {IAssetFamily} AssetFamily - Family of assets used for the appearance array
90
+ * @param {AppearanceBundle} Bundle - Bundled appearance
91
+ * @param {number} [SourceMemberNumber] - Member number of the user who triggered the change
92
+ * @param {boolean} [AppearanceFull=false] - Whether or not the appearance should be assigned to an NPC's AppearanceFull
93
+ * property
94
+ * @returns {boolean} - Whether or not the appearance bundle update contained invalid items
95
+ */
96
+ declare function ServerAppearanceLoadFromBundle(C: Character, AssetFamily: IAssetFamily, Bundle: AppearanceBundle, SourceMemberNumber?: number, AppearanceFull?: boolean): boolean;
97
+ /**
98
+ * Builds a diff map for comparing changes to a character's appearance, keyed by asset group name
99
+ * @param {IAssetFamily} assetFamily - The asset family of the appearance
100
+ * @param {readonly Item[]} appearance - The current appearance to compare against
101
+ * @param {AppearanceBundle} bundle - The new appearance bundle
102
+ * @returns {AppearanceDiffMap} - An appearance diff map representing the changes that have been made to the character's
103
+ * appearance
104
+ */
105
+ declare function ServerBuildAppearanceDiff(assetFamily: IAssetFamily, appearance: readonly Item[], bundle: AppearanceBundle): AppearanceDiffMap;
106
+ /**
107
+ * Maps a bundled appearance item, as stored on the server and used for appearance update messages, into a full
108
+ * appearance item, as used by the game client
109
+ * @param {IAssetFamily} assetFamily - The asset family of the appearance item
110
+ * @param {ItemBundle} item - The bundled appearance item
111
+ * @returns {Item} - A full appearance item representation of the provided bundled appearance item
112
+ */
113
+ declare function ServerBundledItemToAppearanceItem(assetFamily: IAssetFamily, item: ItemBundle): Item;
114
+ /**
115
+ * Parses an item color, based on the allowed colorable layers on an asset, and the asset's color schema
116
+ * @param {Asset} asset - The asset on which the color is set
117
+ * @param {string | readonly string[]} color - The color value to parse
118
+ * @param {readonly string[]} schema - The color schema to validate against
119
+ * @returns {string|string[]} - A parsed valid item color
120
+ */
121
+ declare function ServerParseColor(asset: Asset, color: string | readonly string[], schema: readonly string[]): string | string[];
122
+ /**
123
+ * Populates an appearance diff map with any required items, to ensure that all asset groups are present that need to
124
+ * be.
125
+ * @param {IAssetFamily} assetFamily - The asset family for the appearance
126
+ * @param {AppearanceDiffMap} diffMap - The appearance diff map to populate
127
+ * @returns {void} - Nothing
128
+ */
129
+ declare function ServerAddRequiredAppearance(assetFamily: IAssetFamily, diffMap: AppearanceDiffMap): void;
130
+ /**
131
+ * Validates and returns a color against a color schema
132
+ * @param {string} Color - The color to validate
133
+ * @param {readonly string[]} Schema - The color schema to validate against (a list of accepted Color values)
134
+ * @returns {string} - The color if it is a valid hex color string or part of the color schema, or the default color
135
+ * from the color schema otherwise
136
+ */
137
+ declare function ServerValidateColorAgainstSchema(Color: string, Schema: readonly string[]): string;
138
+ /**
139
+ * Syncs the player appearance with the server
140
+ * @returns {void} - Nothing
141
+ */
142
+ declare function ServerPlayerAppearanceSync(): void;
143
+ /**
144
+ * Syncs all the private room characters with the server
145
+ * @returns {void} - Nothing
146
+ */
147
+ declare function ServerPrivateCharacterSync(): void;
148
+ /**
149
+ * Callback used to parse received information related to a query made by the player such as viewing their online
150
+ * friends or current email status
151
+ * @param {object} data - Data object containing the query data
152
+ * @returns {void} - Nothing
153
+ */
154
+ declare function ServerAccountQueryResult(data: object): void;
155
+ /**
156
+ * Callback used to parse received information related to a beep from another account
157
+ * @param {object} data - Data object containing the beep object which contain at the very least a name and a member
158
+ * number
159
+ * @returns {void} - Nothing
160
+ */
161
+ declare function ServerAccountBeep(data: object): void;
162
+ /** Draws the last beep sent by the server if the timer is still valid, used during the drawing process */
163
+ declare function ServerDrawBeep(): void;
164
+ /** Handles a click on the beep rectangle if mail is included */
165
+ declare function ServerClickBeep(): void;
166
+ /** Opens the friendlist from any screen */
167
+ declare function ServerOpenFriendList(): void;
168
+ /**
169
+ * Callback used to parse received information related to the player ownership data
170
+ * @param {object} data - Data object containing the Owner name and Ownership object
171
+ * @returns {void} - Nothing
172
+ */
173
+ declare function ServerAccountOwnership(data: object): void;
174
+ /**
175
+ * Callback used to parse received information related to the player lovership data
176
+ * @param {object} data - Data object containing the Lovership array
177
+ * @returns {void} - Nothing
178
+ */
179
+ declare function ServerAccountLovership(data: object): void;
180
+ /**
181
+ * Compares the source account and target account to check if we allow using an item
182
+ *
183
+ * **This function MUST match server's identical function!**
184
+ * @param {Character} Source
185
+ * @param {Character} Target
186
+ * @returns {boolean}
187
+ */
188
+ declare function ServerChatRoomGetAllowItem(Source: Character, Target: Character): boolean;
189
+ /** @type {SocketIO.Socket} */
190
+ declare var ServerSocket: SocketIO.Socket;
191
+ declare var ServerURL: string;
192
+ /** @type { { Message: string; Timer: number; ChatRoomName?: string | null; IsMail?: boolean; } } */
193
+ declare var ServerBeep: {
194
+ Message: string;
195
+ Timer: number;
196
+ ChatRoomName?: string | null;
197
+ IsMail?: boolean;
198
+ };
199
+ declare var ServerIsConnected: boolean;
200
+ declare var ServerReconnectCount: number;
201
+ declare var ServerAccountEmailRegex: RegExp;
202
+ declare var ServerAccountNameRegex: RegExp;
203
+ declare var ServerAccountPasswordRegex: RegExp;
204
+ declare var ServerAccountResetNumberRegex: RegExp;
205
+ declare var ServerCharacterNameRegex: RegExp;
206
+ declare var ServerCharacterNicknameRegex: RegExp;
207
+ declare const ServerScriptMessage: string;
208
+ declare const ServerScriptWarningStyle: string;
209
+ /** @readonly */
210
+ declare var ServerAccountUpdate: {
211
+ /**
212
+ * @private
213
+ * @type {Map<string, object>}
214
+ */
215
+ Queue: Map<string, object>;
216
+ /**
217
+ * @private
218
+ * @type {null | ReturnType<typeof setTimeout>}
219
+ */
220
+ Timeout: null | ReturnType<typeof setTimeout>;
221
+ /**
222
+ * @private
223
+ * @type {number}
224
+ */
225
+ Start: number;
226
+ /** Clears queue and sync with server */
227
+ SyncToServer(): void;
228
+ /**
229
+ * Queues a data to be synced at a later time
230
+ * @param {object} Data
231
+ * @param {true} [Force] - force immediate sync to server
232
+ */
233
+ QueueData(Data: object, Force?: true): void;
234
+ };
235
+ /**
236
+ * A map containing appearance item diffs, keyed according to the item group. Used to compare and validate before/after
237
+ * for appearance items.
238
+ */
239
+ type AppearanceDiffMap = Partial<Record<AssetGroupName, Item[]>>;
@@ -0,0 +1,107 @@
1
+ /**
2
+ * Returns the data for a given skill from a character
3
+ *
4
+ * @param {Character} C - The character to get skills from.
5
+ * @param {SkillType} skillType The skill to get
6
+ * @returns {Skill | undefined}
7
+ */
8
+ declare function SkillGet(C: Character, skillType: SkillType): Skill | undefined;
9
+ /**
10
+ * When the player progresses in a skill. Also validates the values to make sure they are within the proper ranges once changed. (level 0-10, progress 0-100)
11
+ * @param {Character} C - The character to get skills from.
12
+ * @param {SkillType} SkillType - Name of the skill to set the value for
13
+ * @param {number} SkillLevel - Level to set for the given skill
14
+ * @param {number} Progress - Progress to set for the given skill
15
+ * @param {boolean} [Push=true] - Pushes the skills to the server if TRUE
16
+ * @returns {void} - Nothing
17
+ */
18
+ declare function SkillChange(C: Character, SkillType: SkillType, SkillLevel: number, Progress: number, Push?: boolean): void;
19
+ /**
20
+ * Loads the skill data from the server on login
21
+ * @param {readonly Skill[]} NewSkill - The player skills array sent by the server
22
+ * @returns {void} - Nothing
23
+ */
24
+ declare function SkillLoad(NewSkill: readonly Skill[]): void;
25
+ /**
26
+ * Get a specific skill modifier from a character
27
+ * @param {Character} C
28
+ * @param {SkillType} SkillType
29
+ */
30
+ declare function SkillGetModifier(C: Character, SkillType: SkillType): number;
31
+ /**
32
+ * Get the timeout value on a skill modifier
33
+ *
34
+ * @param {Character} C - The character to get skills from
35
+ * @param {SkillType} SkillType
36
+ * @returns At which (absolute) time will the modifier expire
37
+ */
38
+ declare function SkillGetModifierDuration(C: Character, SkillType: SkillType): number;
39
+ /**
40
+ * Set a specific skill modifier to apply for a given duration on the target character.
41
+ * @param {Character} C - The character to change the modifier on
42
+ * @param {SkillType} SkillType - The skill the modifier applies to
43
+ * @param {number} Value - The new value of the modifier
44
+ * @param {number} Duration - The length of the modifier effect, in ms
45
+ * @param {boolean} [Push=true] - Pushes the skills to the server if TRUE
46
+ * @returns {boolean} true if the new value was valid, false if it got capped.
47
+ */
48
+ declare function SkillSetModifier(C: Character, SkillType: SkillType, Value: number, Duration: number, Push?: boolean): boolean;
49
+ /**
50
+ * Get a specific skill level from a character WITH the current modifier applied
51
+ * @param {Character} C - Character for which we want to query a skill
52
+ * @param {SkillType} SkillType - Name of the skill to get the value of
53
+ * @returns {number} - Current level for the given skill.
54
+ */
55
+ declare function SkillGetLevel(C: Character, SkillType: SkillType): number;
56
+ /**
57
+ * Get a specific skill level from a character WITHOUT the modifier applied
58
+ * @param {Character} C - Character for which we want to query a skill
59
+ * @param {SkillType} SkillType - Name of the skill to get the value of
60
+ * @returns {number} - Current real level for the given skill.
61
+ */
62
+ declare function SkillGetLevelReal(C: Character, SkillType: SkillType): number;
63
+ /**
64
+ * Get a specific skill progress from a character
65
+ * @param {Character} C - Character for which we want to query a skill
66
+ * @param {SkillType} SkillType - Name of the skill to get the progress of
67
+ * @returns {number} - Current progress for the given skill.
68
+ */
69
+ declare function SkillGetProgress(C: Character, SkillType: SkillType): number;
70
+ /**
71
+ * Add progress to a skill, the skill progresses slower for each level, takes into account cheaters version.
72
+ * @param {Character} C - The character to get skills from
73
+ * @param {SkillType} SkillType - Name of the skill to add progress to
74
+ * @param {number} Progress - Progress to be made before the ratios are applied
75
+ * @returns {void} - Nothing
76
+ */
77
+ declare function SkillProgress(C: Character, SkillType: SkillType, Progress: number): void;
78
+ /**
79
+ * Sets the ratio % of a skill that's going to be used by the player
80
+ * @param {Character} C - The character to get the skill from
81
+ * @param {SkillType} SkillType - Name of the skill to get the value of
82
+ * @param {number} Ratio - The ratio to set for a given skill (0 to 1)
83
+ * @param {boolean} [Push=true] - Pushes the skills to the server if TRUE
84
+ */
85
+ declare function SkillSetRatio(C: Character, SkillType: SkillType, Ratio: number, Push?: boolean): void;
86
+ /**
87
+ * Gets the ratio % of effectiveness of a skill for a character
88
+ * @param {Character} C - The character to get the skill from
89
+ * @param {SkillType} SkillType - Name of the skill to get the value of
90
+ * @returns {number} - The current active ratio for the given skill
91
+ */
92
+ declare function SkillGetRatio(C: Character, SkillType: SkillType): number;
93
+ /**
94
+ * Gets a skill level with the current ratio applied to it, if the current skill has a % modifier.
95
+ * @param {Character} C - The character to get the skill from
96
+ * @param {SkillType} SkillType - Name of the skill to get the value of
97
+ * @returns {number} - The skill level with the ratio % applied
98
+ */
99
+ declare function SkillGetWithRatio(C: Character, SkillType: SkillType): number;
100
+ declare var SkillModifier: number;
101
+ declare var SkillModifierMax: number;
102
+ declare var SkillModifierMin: number;
103
+ declare var SkillLevelMaximum: number;
104
+ declare var SkillLevelMinimum: number;
105
+ declare var SkillProgressMax: number;
106
+ /** @type {SkillType[]} */
107
+ declare var SkillValidSkills: SkillType[];