bloxd.io.d.ts 1.2.0 → 2.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 (199) hide show
  1. package/dist/api-type-def/clientOption/clientOptions/canChange.d.ts +75 -0
  2. package/dist/api-type-def/clientOption/clientOptions/crouchingSpeed.d.ts +46 -0
  3. package/dist/api-type-def/clientOption/clientOptions/index.d.ts +34 -0
  4. package/{api-type-def → dist/api-type-def}/clientOption/clientOptions/runningSpeed.d.ts +28 -37
  5. package/dist/api-type-def/clientOption/clientOptions/speedMultiplier.d.ts +53 -0
  6. package/{api-type-def → dist/api-type-def}/clientOption/clientOptions/walkingSpeed.d.ts +28 -37
  7. package/dist/api-type-def/clientOption/index.d.ts +16 -0
  8. package/dist/api-type-def/entitySetting/entitySettings/example.d.ts +63 -0
  9. package/dist/api-type-def/entitySetting/entitySettings/index.d.ts +32 -0
  10. package/dist/api-type-def/entitySetting/entitySettings/opacity.d.ts +69 -0
  11. package/dist/api-type-def/entitySetting/entitySettings/overlayColour.d.ts +65 -0
  12. package/dist/api-type-def/entitySetting/entitySettings/zIndex.d.ts +64 -0
  13. package/{api-type-def → dist/api-type-def}/entitySetting/index.d.ts +14 -54
  14. package/dist/api-type-def/index.d.ts +10 -0
  15. package/dist/api-type-def/mobSetting/index.d.ts +35 -0
  16. package/dist/api-type-def/mobSetting/mobSettings/index.d.ts +6 -0
  17. package/dist/api-type-def/mobSetting/mobSettings/variation.d.ts +118 -0
  18. package/dist/api-type-def/normal/forceRespawn.d.ts +1 -0
  19. package/dist/api-type-def/normal/getUnitCoordinatesLifeformWithin.d.ts +12 -0
  20. package/dist/api-type-def/normal/health/applyHealthChange.d.ts +12 -0
  21. package/dist/api-type-def/normal/health/applyMeleeHit.d.ts +20 -0
  22. package/dist/api-type-def/normal/health/attemptApplyDamage.d.ts +31 -0
  23. package/dist/api-type-def/normal/health/getHealth.d.ts +15 -0
  24. package/{api-type-def → dist/api-type-def}/normal/health/index.d.ts +1 -8
  25. package/dist/api-type-def/normal/health/isAlive.d.ts +11 -0
  26. package/dist/api-type-def/normal/health/killLifeform.d.ts +12 -0
  27. package/dist/api-type-def/normal/health/setHealth.d.ts +17 -0
  28. package/dist/api-type-def/normal/index.d.ts +13 -0
  29. package/dist/api-type-def/normal/killstreak/clearKillstreak.d.ts +11 -0
  30. package/dist/api-type-def/normal/killstreak/getCurrentKillstreak.d.ts +11 -0
  31. package/{api-type-def → dist/api-type-def}/normal/killstreak/index.d.ts +1 -3
  32. package/dist/api-type-def/normal/message/broadcastMessage.d.ts +16 -0
  33. package/{api-type-def → dist/api-type-def}/normal/message/index.d.ts +1 -3
  34. package/dist/api-type-def/normal/message/sendFlyingMiddleMessage.d.ts +15 -0
  35. package/dist/api-type-def/normal/message/sendMessage.d.ts +25 -0
  36. package/dist/api-type-def/normal/player/getNumPlayers.d.ts +10 -0
  37. package/dist/api-type-def/normal/player/getPlayerIds.d.ts +10 -0
  38. package/dist/api-type-def/normal/player/getPlayerPartyWhenJoined.d.ts +12 -0
  39. package/{api-type-def → dist/api-type-def}/normal/player/index.d.ts +1 -5
  40. package/dist/api-type-def/normal/player/playerIsInGame.d.ts +11 -0
  41. package/dist/api-type-def/normal/player/playerIsLoggedIn.d.ts +9 -0
  42. package/dist/api-type-def/normal/positions/getPosition.d.ts +11 -0
  43. package/{api-type-def → dist/api-type-def}/normal/positions/index.d.ts +0 -1
  44. package/dist/api-type-def/normal/positions/setPosition.d.ts +22 -0
  45. package/dist/api-type-def/normal/shields/getShieldAmount.d.ts +13 -0
  46. package/{api-type-def → dist/api-type-def}/normal/shields/index.d.ts +1 -3
  47. package/dist/api-type-def/normal/shields/setShieldAmount.d.ts +12 -0
  48. package/dist/api-type-def/normal/shops/configureShopCategory.d.ts +12 -0
  49. package/dist/api-type-def/normal/shops/createShopItem.d.ts +16 -0
  50. package/dist/api-type-def/normal/shops/deleteShopItem.d.ts +14 -0
  51. package/{api-type-def → dist/api-type-def}/normal/shops/index.d.ts +1 -5
  52. package/dist/api-type-def/normal/shops/showShopTutorial.d.ts +11 -0
  53. package/dist/api-type-def/normal/shops/updateShopItem.d.ts +15 -0
  54. package/dist/api-type-def/normal/standingOns/getBlockCoordinatesPlayerStandingOn.d.ts +14 -0
  55. package/dist/api-type-def/normal/standingOns/getBlockTypesPlayerStandingOn.d.ts +12 -0
  56. package/{api-type-def → dist/api-type-def}/normal/standingOns/index.d.ts +1 -4
  57. package/dist/index.d.ts +9 -0
  58. package/dist/type/ApplyMeleeHitOverrides.d.ts +7 -0
  59. package/dist/type/LifeFormBodyPart.d.ts +1 -0
  60. package/dist/type/Party.d.ts +5 -0
  61. package/dist/type/PlayerAttemptDamageOtherPlayerOpts.d.ts +19 -0
  62. package/dist/type/WhoDidDamage.d.ts +5 -0
  63. package/dist/type/WhoKilled.d.ts +2 -0
  64. package/dist/type/block/AllBlockId.d.ts +1 -0
  65. package/dist/type/block/AllBlockName.d.ts +1 -0
  66. package/{type → dist/type}/block/Block.d.ts +0 -1
  67. package/dist/type/block/BlockId.d.ts +6 -0
  68. package/{type → dist/type}/block/BlockName.d.ts +2 -3
  69. package/dist/type/color/StringColor.d.ts +7 -0
  70. package/dist/type/dbId/PlayerDbId.d.ts +5 -0
  71. package/dist/type/id/EntityId.d.ts +6 -0
  72. package/dist/type/id/Id.d.ts +5 -0
  73. package/{type → dist/type}/id/LifeFormId.d.ts +0 -1
  74. package/dist/type/id/MobId.d.ts +6 -0
  75. package/dist/type/id/PlayerId.d.ts +6 -0
  76. package/{type → dist/type}/index.d.ts +9 -9
  77. package/dist/type/item/AllItemName.d.ts +1 -0
  78. package/{type → dist/type}/item/Item.d.ts +0 -1
  79. package/dist/type/item/ItemId.d.ts +6 -0
  80. package/dist/type/item/ItemName.d.ts +6 -0
  81. package/dist/type/message/CustomTextStyling.d.ts +2 -0
  82. package/dist/type/message/EntityName.d.ts +8 -0
  83. package/dist/type/message/StyledIcon.d.ts +10 -0
  84. package/dist/type/message/StyledText.d.ts +6 -0
  85. package/dist/type/message/TextStyle.d.ts +8 -0
  86. package/dist/type/message/TranslatedText.d.ts +5 -0
  87. package/dist/type/mob/MobType.d.ts +1 -0
  88. package/{type → dist/type}/particle/ParticlePresetOpts.d.ts +3 -3
  89. package/dist/type/particle/ParticleSystemBlendMode.d.ts +21 -0
  90. package/dist/type/particle/PresetId.d.ts +1 -0
  91. package/dist/type/particle/TempParticleSystemOpts.d.ts +31 -0
  92. package/dist/type/particle/Texture.d.ts +1 -0
  93. package/dist/type/shop/ShopCategoryConfig.d.ts +9 -0
  94. package/dist/type/shop/ShopItem.d.ts +25 -0
  95. package/dist/type/shop/ShopItemUserInput.d.ts +25 -0
  96. package/dist/type/sound/SoundName.d.ts +6 -0
  97. package/{type → dist/type}/utilType.d.ts +1 -1
  98. package/package.json +12 -11
  99. package/api-type-def/clientOption/clientOptions/canChange.d.ts +0 -79
  100. package/api-type-def/clientOption/clientOptions/crouchingSpeed.d.ts +0 -55
  101. package/api-type-def/clientOption/clientOptions/index.d.ts +0 -68
  102. package/api-type-def/clientOption/clientOptions/speedMultiplier.d.ts +0 -61
  103. package/api-type-def/clientOption/index.d.ts +0 -43
  104. package/api-type-def/entitySetting/entitySettings/example.d.ts +0 -90
  105. package/api-type-def/entitySetting/entitySettings/index.d.ts +0 -83
  106. package/api-type-def/entitySetting/entitySettings/opacity.d.ts +0 -96
  107. package/api-type-def/entitySetting/entitySettings/overlayColour.d.ts +0 -92
  108. package/api-type-def/entitySetting/entitySettings/zIndex.d.ts +0 -91
  109. package/api-type-def/index.d.ts +0 -14
  110. package/api-type-def/mobSetting/index.d.ts +0 -71
  111. package/api-type-def/mobSetting/mobSettings/index.d.ts +0 -4
  112. package/api-type-def/mobSetting/mobSettings/variation.d.ts +0 -155
  113. package/api-type-def/normal/forceRespawn.d.ts +0 -12
  114. package/api-type-def/normal/getUnitCoordinatesLifeformWithin.d.ts +0 -14
  115. package/api-type-def/normal/health/applyHealthChange.d.ts +0 -19
  116. package/api-type-def/normal/health/applyMeleeHit.d.ts +0 -33
  117. package/api-type-def/normal/health/attemptApplyDamage.d.ts +0 -35
  118. package/api-type-def/normal/health/getHealth.d.ts +0 -17
  119. package/api-type-def/normal/health/isAlive.d.ts +0 -13
  120. package/api-type-def/normal/health/killLifeform.d.ts +0 -14
  121. package/api-type-def/normal/health/setHealth.d.ts +0 -23
  122. package/api-type-def/normal/index.d.ts +0 -22
  123. package/api-type-def/normal/killstreak/clearKillstreak.d.ts +0 -13
  124. package/api-type-def/normal/killstreak/getCurrentKillstreak.d.ts +0 -13
  125. package/api-type-def/normal/message/broadcastMessage.d.ts +0 -18
  126. package/api-type-def/normal/message/sendFlyingMiddleMessage.d.ts +0 -22
  127. package/api-type-def/normal/message/sendMessage.d.ts +0 -28
  128. package/api-type-def/normal/player/getNumPlayers.d.ts +0 -11
  129. package/api-type-def/normal/player/getPlayerIds.d.ts +0 -12
  130. package/api-type-def/normal/player/getPlayerPartyWhenJoined.d.ts +0 -14
  131. package/api-type-def/normal/player/playerIsInGame.d.ts +0 -12
  132. package/api-type-def/normal/player/playerIsLoggedIn.d.ts +0 -11
  133. package/api-type-def/normal/positions/getPosition.d.ts +0 -12
  134. package/api-type-def/normal/positions/setPosition.d.ts +0 -24
  135. package/api-type-def/normal/shields/getShieldAmount.d.ts +0 -15
  136. package/api-type-def/normal/shields/setShieldAmount.d.ts +0 -14
  137. package/api-type-def/normal/shops/configureShopCategory.d.ts +0 -17
  138. package/api-type-def/normal/shops/createShopItem.d.ts +0 -22
  139. package/api-type-def/normal/shops/deleteShopItem.d.ts +0 -16
  140. package/api-type-def/normal/shops/showShopTutorial.d.ts +0 -13
  141. package/api-type-def/normal/shops/updateShopItem.d.ts +0 -21
  142. package/api-type-def/normal/standingOns/getBlockCoordinatesPlayerStandingOn.d.ts +0 -16
  143. package/api-type-def/normal/standingOns/getBlockTypesPlayerStandingOn.d.ts +0 -14
  144. package/bloxd-api.d.ts +0 -12
  145. package/type/ApplyMeleeHitOverrides.d.ts +0 -8
  146. package/type/LifeFormBodyPart.d.ts +0 -7
  147. package/type/Party.d.ts +0 -2
  148. package/type/PlayerAttemptDamageOtherPlayerOpts.d.ts +0 -20
  149. package/type/WhoDidDamage.d.ts +0 -5
  150. package/type/WhoKilled.d.ts +0 -3
  151. package/type/block/AllBlockId.d.ts +0 -1
  152. package/type/block/AllBlockName.d.ts +0 -1
  153. package/type/block/BlockId.d.ts +0 -4
  154. package/type/color/StringColor.d.ts +0 -179
  155. package/type/dbId/PlayerDbId.d.ts +0 -2
  156. package/type/id/EntityId.d.ts +0 -4
  157. package/type/id/Id.d.ts +0 -2
  158. package/type/id/MobId.d.ts +0 -4
  159. package/type/id/PlayerId.d.ts +0 -4
  160. package/type/item/AllItemName.d.ts +0 -974
  161. package/type/item/ItemId.d.ts +0 -4
  162. package/type/item/ItemName.d.ts +0 -4
  163. package/type/message/CustomTextStyling.d.ts +0 -9
  164. package/type/message/EntityName.d.ts +0 -9
  165. package/type/message/StyledIcon.d.ts +0 -11
  166. package/type/message/StyledText.d.ts +0 -7
  167. package/type/message/TextStyle.d.ts +0 -9
  168. package/type/message/TranslatedText.d.ts +0 -6
  169. package/type/mob/MobType.d.ts +0 -29
  170. package/type/particle/ParticleSystemBlendMode.d.ts +0 -21
  171. package/type/particle/PresetId.d.ts +0 -116
  172. package/type/particle/TempParticleSystemOpts.d.ts +0 -33
  173. package/type/particle/Texture.d.ts +0 -12
  174. package/type/shop/ShopCategoryConfig.d.ts +0 -10
  175. package/type/shop/ShopItem.d.ts +0 -23
  176. package/type/shop/ShopItemUserInput.d.ts +0 -18
  177. package/type/sound/SoundName.d.ts +0 -3
  178. /package/{api-type-def → dist/api-type-def}/mobSetting/mobSettings/maxHealth.d.ts +0 -0
  179. /package/{type → dist/type}/Coordinate.d.ts +0 -0
  180. /package/{type → dist/type}/Direction.d.ts +0 -0
  181. /package/{type → dist/type}/Health.d.ts +0 -0
  182. /package/{type → dist/type}/ShieldAmount.d.ts +0 -0
  183. /package/{type → dist/type}/block/index.d.ts +0 -0
  184. /package/{type → dist/type}/color/Array255Color.d.ts +0 -0
  185. /package/{type → dist/type}/color/Array255ColorWithA.d.ts +0 -0
  186. /package/{type → dist/type}/color/index.d.ts +0 -0
  187. /package/{type → dist/type}/dbId/index.d.ts +0 -0
  188. /package/{type → dist/type}/id/index.d.ts +0 -0
  189. /package/{type → dist/type}/item/AllItemId.d.ts +0 -0
  190. /package/{type → dist/type}/item/index.d.ts +0 -0
  191. /package/{type → dist/type}/message/index.d.ts +0 -0
  192. /package/{type → dist/type}/mob/index.d.ts +0 -0
  193. /package/{type → dist/type}/particle/index.d.ts +0 -0
  194. /package/{type → dist/type}/shop/ShopCategoryKey.d.ts +0 -0
  195. /package/{type → dist/type}/shop/ShopItemBadgeType.d.ts +0 -0
  196. /package/{type → dist/type}/shop/ShopItemKey.d.ts +0 -0
  197. /package/{type → dist/type}/shop/index.d.ts +0 -0
  198. /package/{type → dist/type}/sound/AllSoundName.d.ts +0 -0
  199. /package/{type → dist/type}/sound/index.d.ts +0 -0
@@ -0,0 +1,75 @@
1
+ import { PlayerId } from "../../../type/index";
2
+ /**
3
+ * Whether the player can change blocks
4
+ * @type {boolean}
5
+ * @default true
6
+ */
7
+ type ValueType = boolean;
8
+ interface SetClientOption {
9
+ /**
10
+ * set status player who can changing block
11
+ *
12
+ * option docment:
13
+ * Whether the player can change blocks
14
+ *
15
+ * @overload
16
+ *
17
+ * @param {PlayerId} playerId
18
+ * @param {"canchange"} option
19
+ * @param {true} value
20
+ */
21
+ setClientOption(playerId: PlayerId, option: "canChange", value: true): void;
22
+ /**
23
+ * set status player who can not changing block
24
+ *
25
+ * option docment:
26
+ * Whether the player can change blocks
27
+ *
28
+ * @overload
29
+ *
30
+ * @param {PlayerId} playerId
31
+ * @param {"canchange"} option
32
+ * @param {false} value
33
+ * @returns {void}
34
+ */
35
+ setClientOption(playerId: PlayerId, option: "canChange", value: false): void;
36
+ }
37
+ interface GetClientOption {
38
+ /**
39
+ * get player can change block
40
+ *
41
+ * option docment:
42
+ * Whether the player can change blocks
43
+ *
44
+ * @overload
45
+ *
46
+ * @param {PlayerId} playerId
47
+ * @param {"canChange"} option
48
+ * @returns {boolean}
49
+ */
50
+ getClientOption(playerId: PlayerId, option: "canChange"): boolean;
51
+ }
52
+ interface SetClientOptionToDefault {
53
+ /**
54
+ * set canChange option to default
55
+ * canChange default is `true`
56
+ *
57
+ * option docment:
58
+ * Whether the player can change blocks
59
+ *
60
+ * @overload
61
+ *
62
+ * @param {PlayerId} playerId
63
+ * @param {"canChange"} option
64
+ * @returns {void}
65
+ */
66
+ setClientOptionToDefault(playerId: PlayerId, option: "canChange"): void;
67
+ }
68
+ type ExportTypes = {
69
+ SetClientOption: SetClientOption;
70
+ SetClientOptionToDefault: SetClientOptionToDefault;
71
+ GetClientOption: GetClientOption;
72
+ name: "canChange";
73
+ ValueType: ValueType;
74
+ };
75
+ export default ExportTypes;
@@ -0,0 +1,46 @@
1
+ import { PlayerId } from "../../../type/index";
2
+ /**
3
+ * Speed multiplier for the player when crouching.
4
+ * Players are used to the default bloxd movement behaviour and speed,
5
+ * and may be put off from your game if different muscle memory is required.
6
+ * We suggest applying speed or slowness effects instead, using api.applyEffect.
7
+ * @type {number}
8
+ * @default 2
9
+ */
10
+ type ValueType = number;
11
+ interface SetClientOption {
12
+ /**
13
+ *
14
+ * @param {PlayerId} playerId
15
+ * @param {"crouchingSpeed"} option
16
+ * @param {number} value
17
+ * @returns {void}
18
+ */
19
+ setClientOption(playerId: PlayerId, option: "crouchingSpeed", value: number): void;
20
+ }
21
+ interface GetClientOption {
22
+ /**
23
+ *
24
+ * @param {PlayerId} playerId
25
+ * @param {"crouchingSpeed"} option
26
+ * @returns {number}
27
+ */
28
+ getClientOption(playerId: PlayerId, option: "crouchingSpeed"): number;
29
+ }
30
+ interface SetClientOptionToDefault {
31
+ /**
32
+ *
33
+ * @param {PlayerId} playerId
34
+ * @param {"crouchingSpeed"} option
35
+ * @returns {void}
36
+ */
37
+ setClientOptionToDefault(playerId: PlayerId, option: "crouchingSpeed"): void;
38
+ }
39
+ type ExportTypes = {
40
+ SetClientOption: SetClientOption;
41
+ SetClientOptionToDefault: SetClientOptionToDefault;
42
+ GetClientOption: GetClientOption;
43
+ name: "crouchingSpeed";
44
+ ValueType: ValueType;
45
+ };
46
+ export default ExportTypes;
@@ -0,0 +1,34 @@
1
+ import { MargeObject } from "../../../type/index";
2
+ import canChange from "./canChange";
3
+ import crouchingSpeed from "./crouchingSpeed";
4
+ import walkingSpeed from "./walkingSpeed";
5
+ import runningSpeed from "./runningSpeed";
6
+ import speedMultiplier from "./speedMultiplier";
7
+ type ClientOptionExportFormat = {
8
+ name: string;
9
+ ValueType: any;
10
+ SetClientOption: {
11
+ setClientOption: (playerId: never, option: never, value: never) => void;
12
+ };
13
+ SetClientOptionToDefault: {
14
+ setClientOptionToDefault: (playerId: never, option: never) => void;
15
+ };
16
+ GetClientOption: {
17
+ getClientOption: (playerId: never, option: never) => any;
18
+ };
19
+ };
20
+ type AllClientOptionUnion = canChange | crouchingSpeed | walkingSpeed | runningSpeed | speedMultiplier;
21
+ type GenerateClientOptions<U extends ClientOptionExportFormat> = {
22
+ [K in U as K["name"]]: K["ValueType"];
23
+ };
24
+ export type ClientOptions = GenerateClientOptions<AllClientOptionUnion>;
25
+ type UnionToIntersection<U> = (U extends any ? (k: U) => void : never) extends (k: infer I) => void ? I : never;
26
+ type GenerateClientOptionInterface<U extends ClientOptionExportFormat, K extends keyof any> = MargeObject<UnionToIntersection<U extends any ? (K extends keyof U ? U[K] : never) : never>>;
27
+ export type SetClientOption = GenerateClientOptionInterface<AllClientOptionUnion, "SetClientOption">;
28
+ export type GetClientOption = GenerateClientOptionInterface<AllClientOptionUnion, "GetClientOption">;
29
+ export type SetClientOptionToDefault = GenerateClientOptionInterface<AllClientOptionUnion, "SetClientOptionToDefault">;
30
+ export * from "./canChange";
31
+ export * from "./speedMultiplier";
32
+ export * from "./crouchingSpeed";
33
+ export * from "./walkingSpeed";
34
+ export * from "./runningSpeed";
@@ -1,5 +1,4 @@
1
- import { PlayerId } from "../../../type";
2
-
1
+ import { PlayerId } from "../../../type/index";
3
2
  /**
4
3
  * Running speed for the player.
5
4
  * STRONGLY recommend using `speedMultiplier` unless you have a specific use case for this, runningSpeed doesn't make UX sense on mobile.
@@ -14,47 +13,39 @@ import { PlayerId } from "../../../type";
14
13
  * @default 7
15
14
  */
16
15
  type ValueType = number;
17
-
18
16
  interface SetClientOption {
19
- /**
20
- *
21
- * @param {PlayerId} playerId
22
- * @param {"runningSpeed"} option
23
- * @param {number} value
24
- * @returns {void}
25
- */
26
- setClientOption(
27
- playerId: PlayerId,
28
- option: "runningSpeed",
29
- value: number,
30
- ): void;
17
+ /**
18
+ *
19
+ * @param {PlayerId} playerId
20
+ * @param {"runningSpeed"} option
21
+ * @param {number} value
22
+ * @returns {void}
23
+ */
24
+ setClientOption(playerId: PlayerId, option: "runningSpeed", value: number): void;
31
25
  }
32
-
33
26
  interface GetClientOption {
34
- /**
35
- *
36
- * @param {PlayerId} playerId
37
- * @param {"runningSpeed"} option
38
- * @returns {number}
39
- */
40
- getClientOption(playerId: PlayerId, option: "runningSpeed"): number;
27
+ /**
28
+ *
29
+ * @param {PlayerId} playerId
30
+ * @param {"runningSpeed"} option
31
+ * @returns {number}
32
+ */
33
+ getClientOption(playerId: PlayerId, option: "runningSpeed"): number;
41
34
  }
42
-
43
35
  interface SetClientOptionToDefault {
44
- /**
45
- *
46
- * @param {PlayerId} playerId
47
- * @param {"runningSpeed"} option
48
- * @returns {void}
49
- */
50
- setClientOptionToDefault(playerId: PlayerId, option: "runningSpeed"): void;
36
+ /**
37
+ *
38
+ * @param {PlayerId} playerId
39
+ * @param {"runningSpeed"} option
40
+ * @returns {void}
41
+ */
42
+ setClientOptionToDefault(playerId: PlayerId, option: "runningSpeed"): void;
51
43
  }
52
-
53
44
  type ExportTypes = {
54
- SetClientOption: SetClientOption;
55
- SetClientOptionToDefault: SetClientOptionToDefault;
56
- GetClientOption: GetClientOption;
57
- name: "runningSpeed";
58
- ValueType: ValueType;
45
+ SetClientOption: SetClientOption;
46
+ SetClientOptionToDefault: SetClientOptionToDefault;
47
+ GetClientOption: GetClientOption;
48
+ name: "runningSpeed";
49
+ ValueType: ValueType;
59
50
  };
60
51
  export default ExportTypes;
@@ -0,0 +1,53 @@
1
+ import { PlayerId } from "../../../type/index";
2
+ /**
3
+ * Speed multiplier for the player.
4
+ * Players are used to the default bloxd movement behaviour and speed,
5
+ * and may be put off from your game if different muscle memory is required.
6
+ * We suggest applying speed or slowness effects instead, using api.applyEffect.
7
+ *
8
+ * @type {number}
9
+ * @default 1
10
+ */
11
+ type ValueType = number;
12
+ interface SetClientOption {
13
+ /**
14
+ *
15
+ * @overload
16
+ *
17
+ * @param {PlayerId} playerId
18
+ * @param {"speedMultiplier"} option
19
+ * @param {number} value
20
+ * @returns {void}
21
+ */
22
+ setClientOption(playerId: PlayerId, option: "speedMultiplier", value: number): void;
23
+ }
24
+ interface GetClientOption {
25
+ /**
26
+ *
27
+ * @overload
28
+ *
29
+ * @param {PlayerId} playerId
30
+ * @param {"speedMultiplier"} option
31
+ * @returns {number}
32
+ */
33
+ getClientOption(playerId: PlayerId, option: "speedMultiplier"): number;
34
+ }
35
+ interface SetClientOptionToDefault {
36
+ /**
37
+ *
38
+ * @overload
39
+ *
40
+ * @param {PlayerId} playerId
41
+ * @param {"speedMultiplier"} option
42
+ * @returns {void}
43
+ */
44
+ setClientOptionToDefault(playerId: PlayerId, option: "speedMultiplier"): void;
45
+ }
46
+ type ExportTypes = {
47
+ SetClientOption: SetClientOption;
48
+ SetClientOptionToDefault: SetClientOptionToDefault;
49
+ GetClientOption: GetClientOption;
50
+ name: "speedMultiplier";
51
+ ValueType: ValueType;
52
+ };
53
+ export default ExportTypes;
@@ -1,5 +1,4 @@
1
- import { PlayerId } from "../../../type";
2
-
1
+ import { PlayerId } from "../../../type/index";
3
2
  /**
4
3
  * Walking speed for the player.
5
4
  * STRONGLY recommend using `speedMultiplier` unless you have a specific use case for this, walkingSpeed doesn't make UX sense on mobile.
@@ -14,47 +13,39 @@ import { PlayerId } from "../../../type";
14
13
  * @default 4
15
14
  */
16
15
  type ValueType = number;
17
-
18
16
  interface SetClientOption {
19
- /**
20
- *
21
- * @param {PlayerId} playerId
22
- * @param {"walkingSpeed"} option
23
- * @param {number} value
24
- * @returns {void}
25
- */
26
- setClientOption(
27
- playerId: PlayerId,
28
- option: "walkingSpeed",
29
- value: number,
30
- ): void;
17
+ /**
18
+ *
19
+ * @param {PlayerId} playerId
20
+ * @param {"walkingSpeed"} option
21
+ * @param {number} value
22
+ * @returns {void}
23
+ */
24
+ setClientOption(playerId: PlayerId, option: "walkingSpeed", value: number): void;
31
25
  }
32
-
33
26
  interface GetClientOption {
34
- /**
35
- *
36
- * @param {PlayerId} playerId
37
- * @param {"walkingSpeed"} option
38
- * @returns {number}
39
- */
40
- getClientOption(playerId: PlayerId, option: "walkingSpeed"): number;
27
+ /**
28
+ *
29
+ * @param {PlayerId} playerId
30
+ * @param {"walkingSpeed"} option
31
+ * @returns {number}
32
+ */
33
+ getClientOption(playerId: PlayerId, option: "walkingSpeed"): number;
41
34
  }
42
-
43
35
  interface SetClientOptionToDefault {
44
- /**
45
- *
46
- * @param {PlayerId} playerId
47
- * @param {"walkingSpeed"} option
48
- * @returns {void}
49
- */
50
- setClientOptionToDefault(playerId: PlayerId, option: "walkingSpeed"): void;
36
+ /**
37
+ *
38
+ * @param {PlayerId} playerId
39
+ * @param {"walkingSpeed"} option
40
+ * @returns {void}
41
+ */
42
+ setClientOptionToDefault(playerId: PlayerId, option: "walkingSpeed"): void;
51
43
  }
52
-
53
44
  type ExportTypes = {
54
- SetClientOption: SetClientOption;
55
- SetClientOptionToDefault: SetClientOptionToDefault;
56
- GetClientOption: GetClientOption;
57
- name: "walkingSpeed";
58
- ValueType: ValueType;
45
+ SetClientOption: SetClientOption;
46
+ SetClientOptionToDefault: SetClientOptionToDefault;
47
+ GetClientOption: GetClientOption;
48
+ name: "walkingSpeed";
49
+ ValueType: ValueType;
59
50
  };
60
51
  export default ExportTypes;
@@ -0,0 +1,16 @@
1
+ import { PlayerId, MargeObject } from "../../type/index";
2
+ import { ClientOptions, SetClientOption, GetClientOption, SetClientOptionToDefault } from "./clientOptions/index";
3
+ export * from "./clientOptions/index";
4
+ interface RootSetClientOption {
5
+ setClientOption<TOption extends keyof ClientOptions>(playerId: PlayerId, option: TOption, value: ClientOptions[TOption]): void;
6
+ }
7
+ interface SetClientOptions {
8
+ setClientOptions(playerId: PlayerId, options: Partial<ClientOptions>): void;
9
+ }
10
+ interface RootGetClientOption {
11
+ getClientOption<TOption extends keyof ClientOptions>(playerId: PlayerId, option: TOption): ClientOptions[TOption];
12
+ }
13
+ interface RootSetClientOptionToDefault {
14
+ setClientOptionToDefault<TOption extends keyof ClientOptions>(playerId: PlayerId, option: TOption): void;
15
+ }
16
+ export type ClientOptionApi = MargeObject<SetClientOption & RootSetClientOption & GetClientOption & RootGetClientOption & SetClientOptions & SetClientOptionToDefault & RootSetClientOptionToDefault>;
@@ -0,0 +1,63 @@
1
+ import { EntityId, PlayerId } from "../../../type/index";
2
+ /**
3
+ *
4
+ */
5
+ type ValueType = never;
6
+ declare const name: "example";
7
+ interface SetTargetedPlayerSettingForEveryone {
8
+ /**
9
+ *
10
+ * @param {PlayerId} targetedPlayerId
11
+ * @param {"example"} settingName
12
+ * @param {!!--never--!!} settingValue
13
+ * @param {boolean} includeNewJoiners
14
+ */
15
+ setTargetedPlayerSettingForEveryone(targetedPlayerId: PlayerId, settingName: typeof name, settingValue: ValueType, includeNewJoiners?: boolean): void;
16
+ }
17
+ interface SetEveryoneSettingForPlayer {
18
+ /**
19
+ *
20
+ * @overload
21
+ *
22
+ * @param {PlayerId} playerId
23
+ * @param {"example"} settingName
24
+ * @param {!!--never--!!} settingValue
25
+ * @param {boolean} [includeNewJoiners]
26
+ * @returns {void}
27
+ */
28
+ setEveryoneSettingForPlayer(playerId: PlayerId, settingName: typeof name, settingValue: ValueType, includeNewJoiners?: boolean): void;
29
+ }
30
+ interface SetOtherEntitySetting {
31
+ /**
32
+ *
33
+ * @overload
34
+ *
35
+ * @param {PlayerId}
36
+ * @param {"example"} settingName
37
+ * @param {!!--never--!!} settingValue
38
+ * @param {boolean} [includeNewJoiners]
39
+ * @returns {void}
40
+ */
41
+ setOtherEntitySetting(relevantPlayerId: PlayerId, targetedEntityId: EntityId, settingName: typeof name, settingValue: ValueType): void;
42
+ }
43
+ interface GetOtherEntitySetting {
44
+ /**
45
+ *
46
+ * @overload
47
+ *
48
+ * @param {PlayerId} relevantPlayerId
49
+ * @param {EntityId} targetedEntityId
50
+ * @param {"example"} settingName
51
+ * @returns {!!--never--!!}
52
+ */
53
+ getOtherEntitySetting(relevantPlayerId: PlayerId, targetedEntityId: EntityId, settingName: typeof name): ValueType;
54
+ }
55
+ type ExportTypes = {
56
+ name: typeof name;
57
+ ValueType: ValueType;
58
+ SetTargetedPlayerSettingForEveryone: SetTargetedPlayerSettingForEveryone;
59
+ SetEveryoneSettingForPlayer: SetEveryoneSettingForPlayer;
60
+ SetOtherEntitySetting: SetOtherEntitySetting;
61
+ GetOtherEntitySetting: GetOtherEntitySetting;
62
+ };
63
+ export default ExportTypes;
@@ -0,0 +1,32 @@
1
+ import { EntityId, MargeObject, PlayerId } from "../../../type/index";
2
+ import Opacity from "./opacity";
3
+ import ZIndex from "./zIndex";
4
+ import OverlayColour from "./overlayColour";
5
+ type EntitySettingExportFormat = {
6
+ name: string;
7
+ ValueType: any;
8
+ SetTargetedPlayerSettingForEveryone: {
9
+ setTargetedPlayerSettingForEveryone: (targetedPlayerId: PlayerId, settingName: never, settingValue: never, includeNewJoiners?: boolean) => void;
10
+ };
11
+ SetEveryoneSettingForPlayer: {
12
+ setEveryoneSettingForPlayer: (playerId: PlayerId, settingName: never, settingValue: never, includeNewJoiners?: boolean) => void;
13
+ };
14
+ SetOtherEntitySetting: {
15
+ setOtherEntitySetting: (relevantPlayerId: PlayerId, targetedEntityId: EntityId, settingName: never, settingValue: never) => void;
16
+ };
17
+ GetOtherEntitySetting: {
18
+ getOtherEntitySetting: (relevantPlayerId: PlayerId, targetedEntityId: EntityId, settingName: never) => any;
19
+ };
20
+ };
21
+ type AllEntitySettingUnion = Opacity | ZIndex | OverlayColour;
22
+ type GenerateClientOptions<U extends EntitySettingExportFormat> = {
23
+ [K in U as K["name"]]: K["ValueType"];
24
+ };
25
+ export type EntitySettings = GenerateClientOptions<AllEntitySettingUnion>;
26
+ type UnionToIntersection<U> = (U extends any ? (k: U) => void : never) extends (k: infer I) => void ? I : never;
27
+ type GenerateEntitySettingInterface<U extends EntitySettingExportFormat, K extends keyof any> = MargeObject<UnionToIntersection<U extends any ? (K extends keyof U ? U[K] : never) : never>>;
28
+ export type SetTargetedPlayerSettingForEveryone = GenerateEntitySettingInterface<AllEntitySettingUnion, "SetTargetedPlayerSettingForEveryone">;
29
+ export type SetEveryoneSettingForPlayer = GenerateEntitySettingInterface<AllEntitySettingUnion, "SetEveryoneSettingForPlayer">;
30
+ export type SetOtherEntitySetting = GenerateEntitySettingInterface<AllEntitySettingUnion, "SetOtherEntitySetting">;
31
+ export type GetOtherEntitySetting = GenerateEntitySettingInterface<AllEntitySettingUnion, "GetOtherEntitySetting">;
32
+ export {};
@@ -0,0 +1,69 @@
1
+ import { EntityId, PlayerId } from "../../../type/index";
2
+ /**
3
+ * Opacity of the entity
4
+ * Fractional values will use dithering
5
+ * 0 opacity will hide the entity but not its name tag
6
+ * @type {number}
7
+ * @default 1
8
+ */
9
+ type ValueType = number;
10
+ interface SetTargetedPlayerSettingForEveryone {
11
+ /**
12
+ *
13
+ * @overload
14
+ *
15
+ * @param {PlayerId} targetedPlayerId
16
+ * @param {"opacity"} settingName
17
+ * @param {Opacity} settingValue
18
+ * @param {boolean} [includeNewJoiners]
19
+ * @returns {void}
20
+ */
21
+ setTargetedPlayerSettingForEveryone(targetedPlayerId: PlayerId, settingName: "opacity", settingValue: ValueType, includeNewJoiners?: boolean): void;
22
+ }
23
+ interface SetEveryoneSettingForPlayer {
24
+ /**
25
+ *
26
+ * @overload
27
+ *
28
+ * @param {PlayerId} playerId
29
+ * @param {"opacity"} settingName
30
+ * @param {Opacity} settingValue
31
+ * @param {boolean} [includeNewJoiners]
32
+ * @returns {void}
33
+ */
34
+ setEveryoneSettingForPlayer(playerId: PlayerId, settingName: "opacity", settingValue: ValueType, includeNewJoiners?: boolean): void;
35
+ }
36
+ interface SetOtherEntitySetting {
37
+ /**
38
+ *
39
+ * @overload
40
+ *
41
+ * @param {PlayerId}
42
+ * @param {"opacity"} settingName
43
+ * @param {Opacity} settingValue
44
+ * @param {boolean} [includeNewJoiners]
45
+ * @returns {void}
46
+ */
47
+ setOtherEntitySetting(relevantPlayerId: PlayerId, targetedEntityId: EntityId, settingName: "opacity", settingValue: ValueType): void;
48
+ }
49
+ interface GetOtherEntitySetting {
50
+ /**
51
+ *
52
+ * @overload
53
+ *
54
+ * @param {PlayerId} relevantPlayerId
55
+ * @param {EntityId} targetedEntityId
56
+ * @param {"opacity"} settingName
57
+ * @returns {void}
58
+ */
59
+ getOtherEntitySetting(relevantPlayerId: PlayerId, targetedEntityId: EntityId, settingName: "opacity"): ValueType;
60
+ }
61
+ type ExportTypes = {
62
+ name: "opacity";
63
+ ValueType: ValueType;
64
+ SetTargetedPlayerSettingForEveryone: SetTargetedPlayerSettingForEveryone;
65
+ SetEveryoneSettingForPlayer: SetEveryoneSettingForPlayer;
66
+ SetOtherEntitySetting: SetOtherEntitySetting;
67
+ GetOtherEntitySetting: GetOtherEntitySetting;
68
+ };
69
+ export default ExportTypes;
@@ -0,0 +1,65 @@
1
+ import { EntityId, PlayerId } from "../../../type/index";
2
+ /**
3
+ * Applies a colour tint to the entity when set, like the red tint when an entity gets hurt.
4
+ * @type {string | null}
5
+ * @default null
6
+ */
7
+ type ValueType = string | null;
8
+ declare const name: "overlayColour";
9
+ interface SetTargetedPlayerSettingForEveryone {
10
+ /**
11
+ *
12
+ * @param {PlayerId} targetedPlayerId
13
+ * @param {"overlayColour"} settingName
14
+ * @param {string | null} settingValue
15
+ * @param {boolean} includeNewJoiners
16
+ */
17
+ setTargetedPlayerSettingForEveryone(targetedPlayerId: PlayerId, settingName: typeof name, settingValue: ValueType, includeNewJoiners?: boolean): void;
18
+ }
19
+ interface SetEveryoneSettingForPlayer {
20
+ /**
21
+ *
22
+ * @overload
23
+ *
24
+ * @param {PlayerId} playerId
25
+ * @param {"overlayColour"} settingName
26
+ * @param {string | null} settingValue
27
+ * @param {boolean} [includeNewJoiners]
28
+ * @returns {void}
29
+ */
30
+ setEveryoneSettingForPlayer(playerId: PlayerId, settingName: typeof name, settingValue: ValueType, includeNewJoiners?: boolean): void;
31
+ }
32
+ interface SetOtherEntitySetting {
33
+ /**
34
+ *
35
+ * @overload
36
+ *
37
+ * @param {PlayerId}
38
+ * @param {"overlayColour"} settingName
39
+ * @param {string | null} settingValue
40
+ * @param {boolean} [includeNewJoiners]
41
+ * @returns {void}
42
+ */
43
+ setOtherEntitySetting(relevantPlayerId: PlayerId, targetedEntityId: EntityId, settingName: typeof name, settingValue: ValueType): void;
44
+ }
45
+ interface GetOtherEntitySetting {
46
+ /**
47
+ *
48
+ * @overload
49
+ *
50
+ * @param {PlayerId} relevantPlayerId
51
+ * @param {EntityId} targetedEntityId
52
+ * @param {"overlayColour"} settingName
53
+ * @returns {string | null}
54
+ */
55
+ getOtherEntitySetting(relevantPlayerId: PlayerId, targetedEntityId: EntityId, settingName: typeof name): ValueType;
56
+ }
57
+ type ExportTypes = {
58
+ name: typeof name;
59
+ ValueType: ValueType;
60
+ SetTargetedPlayerSettingForEveryone: SetTargetedPlayerSettingForEveryone;
61
+ SetEveryoneSettingForPlayer: SetEveryoneSettingForPlayer;
62
+ SetOtherEntitySetting: SetOtherEntitySetting;
63
+ GetOtherEntitySetting: GetOtherEntitySetting;
64
+ };
65
+ export default ExportTypes;