hytopia 0.1.48 → 0.1.49

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "hytopia",
3
- "version": "0.1.48",
3
+ "version": "0.1.49",
4
4
  "description": "The HYTOPIA SDK makes it easy for developers to create massively multiplayer games using JavaScript or TypeScript.",
5
5
  "main": "server.js",
6
6
  "bin": {
package/server.api.json CHANGED
@@ -13473,7 +13473,7 @@
13473
13473
  {
13474
13474
  "kind": "Reference",
13475
13475
  "text": "PlayerUI",
13476
- "canonicalReference": "server!~PlayerUI:class"
13476
+ "canonicalReference": "server!PlayerUI:class"
13477
13477
  },
13478
13478
  {
13479
13479
  "kind": "Content",
@@ -16750,6 +16750,411 @@
16750
16750
  "endIndex": 2
16751
16751
  }
16752
16752
  },
16753
+ {
16754
+ "kind": "Class",
16755
+ "canonicalReference": "server!PlayerUI:class",
16756
+ "docComment": "/**\n * The UI for a player.\n *\n * @remarks\n *\n * UI allows control of all in-game overlays a player sees. UI is controlled by HTML, CSS and JavaScript files you provide in your `assets` folder.\n *\n * The constructor for this class is marked as internal. Third-party code should not call the constructor directly or create subclasses that extend the `PlayerUI` class.\n *\n * @public\n */\n",
16757
+ "excerptTokens": [
16758
+ {
16759
+ "kind": "Content",
16760
+ "text": "export default class PlayerUI "
16761
+ }
16762
+ ],
16763
+ "fileUrlPath": "src/networking/players/PlayerUI.ts",
16764
+ "releaseTag": "Public",
16765
+ "isAbstract": false,
16766
+ "name": "PlayerUI",
16767
+ "preserveMemberOrder": false,
16768
+ "members": [
16769
+ {
16770
+ "kind": "Method",
16771
+ "canonicalReference": "server!PlayerUI#load:member(1)",
16772
+ "docComment": "/**\n * Loads client UI for the player.\n *\n * @param htmlUri - The ui html uri to load.\n */\n",
16773
+ "excerptTokens": [
16774
+ {
16775
+ "kind": "Content",
16776
+ "text": "load(htmlUri: "
16777
+ },
16778
+ {
16779
+ "kind": "Content",
16780
+ "text": "string"
16781
+ },
16782
+ {
16783
+ "kind": "Content",
16784
+ "text": "): "
16785
+ },
16786
+ {
16787
+ "kind": "Content",
16788
+ "text": "void"
16789
+ },
16790
+ {
16791
+ "kind": "Content",
16792
+ "text": ";"
16793
+ }
16794
+ ],
16795
+ "isStatic": false,
16796
+ "returnTypeTokenRange": {
16797
+ "startIndex": 3,
16798
+ "endIndex": 4
16799
+ },
16800
+ "releaseTag": "Public",
16801
+ "isProtected": false,
16802
+ "overloadIndex": 1,
16803
+ "parameters": [
16804
+ {
16805
+ "parameterName": "htmlUri",
16806
+ "parameterTypeTokenRange": {
16807
+ "startIndex": 1,
16808
+ "endIndex": 2
16809
+ },
16810
+ "isOptional": false
16811
+ }
16812
+ ],
16813
+ "isOptional": false,
16814
+ "isAbstract": false,
16815
+ "name": "load"
16816
+ },
16817
+ {
16818
+ "kind": "Property",
16819
+ "canonicalReference": "server!PlayerUI#onData:member",
16820
+ "docComment": "/**\n * A function that is called when the player's client UI sends data to the server.\n *\n * @remarks\n *\n * Data sent is an object of any shape defined by you and controlled with invocations of `hytopia.ui.sendData()` from your loaded client UI files.\n *\n * @param playerUI - The PlayerUI instance that the data is from.\n *\n * @param data - The data sent from the client UI.\n */\n",
16821
+ "excerptTokens": [
16822
+ {
16823
+ "kind": "Content",
16824
+ "text": "onData?: "
16825
+ },
16826
+ {
16827
+ "kind": "Content",
16828
+ "text": "(playerUI: "
16829
+ },
16830
+ {
16831
+ "kind": "Reference",
16832
+ "text": "PlayerUI",
16833
+ "canonicalReference": "server!PlayerUI:class"
16834
+ },
16835
+ {
16836
+ "kind": "Content",
16837
+ "text": ", data: object) => void"
16838
+ },
16839
+ {
16840
+ "kind": "Content",
16841
+ "text": ";"
16842
+ }
16843
+ ],
16844
+ "isReadonly": false,
16845
+ "isOptional": true,
16846
+ "releaseTag": "Public",
16847
+ "name": "onData",
16848
+ "propertyTypeTokenRange": {
16849
+ "startIndex": 1,
16850
+ "endIndex": 4
16851
+ },
16852
+ "isStatic": false,
16853
+ "isProtected": false,
16854
+ "isAbstract": false
16855
+ },
16856
+ {
16857
+ "kind": "Property",
16858
+ "canonicalReference": "server!PlayerUI#player:member",
16859
+ "docComment": "/**\n * The player that the UI belongs to.\n *\n * @readonly\n */\n",
16860
+ "excerptTokens": [
16861
+ {
16862
+ "kind": "Content",
16863
+ "text": "readonly player: "
16864
+ },
16865
+ {
16866
+ "kind": "Reference",
16867
+ "text": "Player",
16868
+ "canonicalReference": "server!Player:class"
16869
+ },
16870
+ {
16871
+ "kind": "Content",
16872
+ "text": ";"
16873
+ }
16874
+ ],
16875
+ "isReadonly": true,
16876
+ "isOptional": false,
16877
+ "releaseTag": "Public",
16878
+ "name": "player",
16879
+ "propertyTypeTokenRange": {
16880
+ "startIndex": 1,
16881
+ "endIndex": 2
16882
+ },
16883
+ "isStatic": false,
16884
+ "isProtected": false,
16885
+ "isAbstract": false
16886
+ },
16887
+ {
16888
+ "kind": "Method",
16889
+ "canonicalReference": "server!PlayerUI#sendData:member(1)",
16890
+ "docComment": "/**\n * Sends data to the player's client UI.\n *\n * @param data - The data to send to the client UI.\n */\n",
16891
+ "excerptTokens": [
16892
+ {
16893
+ "kind": "Content",
16894
+ "text": "sendData(data: "
16895
+ },
16896
+ {
16897
+ "kind": "Content",
16898
+ "text": "object"
16899
+ },
16900
+ {
16901
+ "kind": "Content",
16902
+ "text": "): "
16903
+ },
16904
+ {
16905
+ "kind": "Content",
16906
+ "text": "void"
16907
+ },
16908
+ {
16909
+ "kind": "Content",
16910
+ "text": ";"
16911
+ }
16912
+ ],
16913
+ "isStatic": false,
16914
+ "returnTypeTokenRange": {
16915
+ "startIndex": 3,
16916
+ "endIndex": 4
16917
+ },
16918
+ "releaseTag": "Public",
16919
+ "isProtected": false,
16920
+ "overloadIndex": 1,
16921
+ "parameters": [
16922
+ {
16923
+ "parameterName": "data",
16924
+ "parameterTypeTokenRange": {
16925
+ "startIndex": 1,
16926
+ "endIndex": 2
16927
+ },
16928
+ "isOptional": false
16929
+ }
16930
+ ],
16931
+ "isOptional": false,
16932
+ "isAbstract": false,
16933
+ "name": "sendData"
16934
+ }
16935
+ ],
16936
+ "implementsTokenRanges": []
16937
+ },
16938
+ {
16939
+ "kind": "Namespace",
16940
+ "canonicalReference": "server!PlayerUIEventPayload:namespace",
16941
+ "docComment": "/**\n * Payloads for events a PlayerUI instance can emit.\n *\n * @public\n */\n",
16942
+ "excerptTokens": [
16943
+ {
16944
+ "kind": "Content",
16945
+ "text": "export declare namespace PlayerUIEventPayload "
16946
+ }
16947
+ ],
16948
+ "fileUrlPath": "src/networking/players/PlayerUI.ts",
16949
+ "releaseTag": "Public",
16950
+ "name": "PlayerUIEventPayload",
16951
+ "preserveMemberOrder": false,
16952
+ "members": [
16953
+ {
16954
+ "kind": "Interface",
16955
+ "canonicalReference": "server!PlayerUIEventPayload.Load:interface",
16956
+ "docComment": "",
16957
+ "excerptTokens": [
16958
+ {
16959
+ "kind": "Content",
16960
+ "text": "interface Load "
16961
+ }
16962
+ ],
16963
+ "releaseTag": "Public",
16964
+ "name": "Load",
16965
+ "preserveMemberOrder": false,
16966
+ "members": [
16967
+ {
16968
+ "kind": "PropertySignature",
16969
+ "canonicalReference": "server!PlayerUIEventPayload.Load#htmlUri:member",
16970
+ "docComment": "",
16971
+ "excerptTokens": [
16972
+ {
16973
+ "kind": "Content",
16974
+ "text": "htmlUri: "
16975
+ },
16976
+ {
16977
+ "kind": "Content",
16978
+ "text": "string"
16979
+ },
16980
+ {
16981
+ "kind": "Content",
16982
+ "text": ";"
16983
+ }
16984
+ ],
16985
+ "isReadonly": false,
16986
+ "isOptional": false,
16987
+ "releaseTag": "Public",
16988
+ "name": "htmlUri",
16989
+ "propertyTypeTokenRange": {
16990
+ "startIndex": 1,
16991
+ "endIndex": 2
16992
+ }
16993
+ },
16994
+ {
16995
+ "kind": "PropertySignature",
16996
+ "canonicalReference": "server!PlayerUIEventPayload.Load#playerUI:member",
16997
+ "docComment": "",
16998
+ "excerptTokens": [
16999
+ {
17000
+ "kind": "Content",
17001
+ "text": "playerUI: "
17002
+ },
17003
+ {
17004
+ "kind": "Reference",
17005
+ "text": "PlayerUI",
17006
+ "canonicalReference": "server!PlayerUI:class"
17007
+ },
17008
+ {
17009
+ "kind": "Content",
17010
+ "text": ";"
17011
+ }
17012
+ ],
17013
+ "isReadonly": false,
17014
+ "isOptional": false,
17015
+ "releaseTag": "Public",
17016
+ "name": "playerUI",
17017
+ "propertyTypeTokenRange": {
17018
+ "startIndex": 1,
17019
+ "endIndex": 2
17020
+ }
17021
+ }
17022
+ ],
17023
+ "extendsTokenRanges": []
17024
+ },
17025
+ {
17026
+ "kind": "Interface",
17027
+ "canonicalReference": "server!PlayerUIEventPayload.SendData:interface",
17028
+ "docComment": "",
17029
+ "excerptTokens": [
17030
+ {
17031
+ "kind": "Content",
17032
+ "text": "interface SendData "
17033
+ }
17034
+ ],
17035
+ "releaseTag": "Public",
17036
+ "name": "SendData",
17037
+ "preserveMemberOrder": false,
17038
+ "members": [
17039
+ {
17040
+ "kind": "PropertySignature",
17041
+ "canonicalReference": "server!PlayerUIEventPayload.SendData#data:member",
17042
+ "docComment": "",
17043
+ "excerptTokens": [
17044
+ {
17045
+ "kind": "Content",
17046
+ "text": "data: "
17047
+ },
17048
+ {
17049
+ "kind": "Content",
17050
+ "text": "object"
17051
+ },
17052
+ {
17053
+ "kind": "Content",
17054
+ "text": ";"
17055
+ }
17056
+ ],
17057
+ "isReadonly": false,
17058
+ "isOptional": false,
17059
+ "releaseTag": "Public",
17060
+ "name": "data",
17061
+ "propertyTypeTokenRange": {
17062
+ "startIndex": 1,
17063
+ "endIndex": 2
17064
+ }
17065
+ },
17066
+ {
17067
+ "kind": "PropertySignature",
17068
+ "canonicalReference": "server!PlayerUIEventPayload.SendData#playerUI:member",
17069
+ "docComment": "",
17070
+ "excerptTokens": [
17071
+ {
17072
+ "kind": "Content",
17073
+ "text": "playerUI: "
17074
+ },
17075
+ {
17076
+ "kind": "Reference",
17077
+ "text": "PlayerUI",
17078
+ "canonicalReference": "server!PlayerUI:class"
17079
+ },
17080
+ {
17081
+ "kind": "Content",
17082
+ "text": ";"
17083
+ }
17084
+ ],
17085
+ "isReadonly": false,
17086
+ "isOptional": false,
17087
+ "releaseTag": "Public",
17088
+ "name": "playerUI",
17089
+ "propertyTypeTokenRange": {
17090
+ "startIndex": 1,
17091
+ "endIndex": 2
17092
+ }
17093
+ }
17094
+ ],
17095
+ "extendsTokenRanges": []
17096
+ }
17097
+ ]
17098
+ },
17099
+ {
17100
+ "kind": "Enum",
17101
+ "canonicalReference": "server!PlayerUIEventType:enum",
17102
+ "docComment": "/**\n * Event types a\n */\n",
17103
+ "excerptTokens": [
17104
+ {
17105
+ "kind": "Content",
17106
+ "text": "export declare enum PlayerUIEventType "
17107
+ }
17108
+ ],
17109
+ "fileUrlPath": "src/networking/players/PlayerUI.ts",
17110
+ "releaseTag": "Public",
17111
+ "name": "PlayerUIEventType",
17112
+ "preserveMemberOrder": false,
17113
+ "members": [
17114
+ {
17115
+ "kind": "EnumMember",
17116
+ "canonicalReference": "server!PlayerUIEventType.LOAD:member",
17117
+ "docComment": "",
17118
+ "excerptTokens": [
17119
+ {
17120
+ "kind": "Content",
17121
+ "text": "LOAD = "
17122
+ },
17123
+ {
17124
+ "kind": "Content",
17125
+ "text": "\"PLAYER_UI.LOAD\""
17126
+ }
17127
+ ],
17128
+ "initializerTokenRange": {
17129
+ "startIndex": 1,
17130
+ "endIndex": 2
17131
+ },
17132
+ "releaseTag": "Public",
17133
+ "name": "LOAD"
17134
+ },
17135
+ {
17136
+ "kind": "EnumMember",
17137
+ "canonicalReference": "server!PlayerUIEventType.SEND_DATA:member",
17138
+ "docComment": "",
17139
+ "excerptTokens": [
17140
+ {
17141
+ "kind": "Content",
17142
+ "text": "SEND_DATA = "
17143
+ },
17144
+ {
17145
+ "kind": "Content",
17146
+ "text": "\"PLAYER_UI.SEND_DATA\""
17147
+ }
17148
+ ],
17149
+ "initializerTokenRange": {
17150
+ "startIndex": 1,
17151
+ "endIndex": 2
17152
+ },
17153
+ "releaseTag": "Public",
17154
+ "name": "SEND_DATA"
17155
+ }
17156
+ ]
17157
+ },
16753
17158
  {
16754
17159
  "kind": "Variable",
16755
17160
  "canonicalReference": "server!PORT:var",
@@ -22393,58 +22798,10 @@
22393
22798
  "isAbstract": false,
22394
22799
  "name": "castRay"
22395
22800
  },
22396
- {
22397
- "kind": "Method",
22398
- "canonicalReference": "server!Simulation#enableDebugRaycasting:member(1)",
22399
- "docComment": "/**\n * Enables or disables debug raycasting for the simulation. This will render lines for the raycast that disappear after a few seconds.\n *\n * @param enabled - Whether to enable debug raycasting.\n */\n",
22400
- "excerptTokens": [
22401
- {
22402
- "kind": "Content",
22403
- "text": "enableDebugRaycasting(enabled: "
22404
- },
22405
- {
22406
- "kind": "Content",
22407
- "text": "boolean"
22408
- },
22409
- {
22410
- "kind": "Content",
22411
- "text": "): "
22412
- },
22413
- {
22414
- "kind": "Content",
22415
- "text": "void"
22416
- },
22417
- {
22418
- "kind": "Content",
22419
- "text": ";"
22420
- }
22421
- ],
22422
- "isStatic": false,
22423
- "returnTypeTokenRange": {
22424
- "startIndex": 3,
22425
- "endIndex": 4
22426
- },
22427
- "releaseTag": "Public",
22428
- "isProtected": false,
22429
- "overloadIndex": 1,
22430
- "parameters": [
22431
- {
22432
- "parameterName": "enabled",
22433
- "parameterTypeTokenRange": {
22434
- "startIndex": 1,
22435
- "endIndex": 2
22436
- },
22437
- "isOptional": false
22438
- }
22439
- ],
22440
- "isOptional": false,
22441
- "isAbstract": false,
22442
- "name": "enableDebugRaycasting"
22443
- },
22444
22801
  {
22445
22802
  "kind": "Method",
22446
22803
  "canonicalReference": "server!Simulation#enableDebugRendering:member(1)",
22447
- "docComment": "/**\n * Enables or disables debug rendering for the simulation. When enabled, all colliders and rigid body outlines will be rendered in the world. Do not enable this in production. In large worlds enabling this can cause noticable lag and RTT spikes.\n *\n * @param enabled - Whether to enable debug rendering.\n */\n",
22804
+ "docComment": "/**\n * Enables or disables debug rendering for the simulation. When enabled, all colliders, rigid body and raycast outlines will be rendered in the world. Do not enable this in production. In large worlds enabling this can cause noticable lag and RTT spikes.\n *\n * @param enabled - Whether to enable debug rendering.\n */\n",
22448
22805
  "excerptTokens": [
22449
22806
  {
22450
22807
  "kind": "Content",
@@ -22591,36 +22948,6 @@
22591
22948
  "isProtected": false,
22592
22949
  "isAbstract": false
22593
22950
  },
22594
- {
22595
- "kind": "Property",
22596
- "canonicalReference": "server!Simulation#isDebugRaycastingEnabled:member",
22597
- "docComment": "/**\n * Whether the simulation has debug raycasting enabled\n */\n",
22598
- "excerptTokens": [
22599
- {
22600
- "kind": "Content",
22601
- "text": "get isDebugRaycastingEnabled(): "
22602
- },
22603
- {
22604
- "kind": "Content",
22605
- "text": "boolean"
22606
- },
22607
- {
22608
- "kind": "Content",
22609
- "text": ";"
22610
- }
22611
- ],
22612
- "isReadonly": true,
22613
- "isOptional": false,
22614
- "releaseTag": "Public",
22615
- "name": "isDebugRaycastingEnabled",
22616
- "propertyTypeTokenRange": {
22617
- "startIndex": 1,
22618
- "endIndex": 2
22619
- },
22620
- "isStatic": false,
22621
- "isProtected": false,
22622
- "isAbstract": false
22623
- },
22624
22951
  {
22625
22952
  "kind": "Property",
22626
22953
  "canonicalReference": "server!Simulation#isDebugRenderingEnabled:member",
package/server.d.ts CHANGED
@@ -2196,7 +2196,7 @@ export declare type PlayerOrientationState = {
2196
2196
  *
2197
2197
  * @public
2198
2198
  */
2199
- declare class PlayerUI {
2199
+ export declare class PlayerUI {
2200
2200
  /** The player that the UI belongs to. @readonly */
2201
2201
  readonly player: Player;
2202
2202
  /**
@@ -2225,6 +2225,24 @@ declare class PlayerUI {
2225
2225
  sendData(data: object): void;
2226
2226
  }
2227
2227
 
2228
+ /** Payloads for events a PlayerUI instance can emit. @public */
2229
+ export declare namespace PlayerUIEventPayload {
2230
+ export interface Load {
2231
+ playerUI: PlayerUI;
2232
+ htmlUri: string;
2233
+ }
2234
+ export interface SendData {
2235
+ playerUI: PlayerUI;
2236
+ data: object;
2237
+ }
2238
+ }
2239
+
2240
+ /** Event types a */
2241
+ export declare enum PlayerUIEventType {
2242
+ LOAD = "PLAYER_UI.LOAD",
2243
+ SEND_DATA = "PLAYER_UI.SEND_DATA"
2244
+ }
2245
+
2228
2246
  /**
2229
2247
  * The port the server will run on. You can override
2230
2248
  * this in your .env by setting PORT. When deployed in
@@ -2971,9 +2989,6 @@ export declare class Simulation {
2971
2989
 
2972
2990
 
2973
2991
 
2974
-
2975
- /** Whether the simulation has debug raycasting enabled */
2976
- get isDebugRaycastingEnabled(): boolean;
2977
2992
  /** Whether the simulation has debug rendering enabled. */
2978
2993
  get isDebugRenderingEnabled(): boolean;
2979
2994
  /** The gravity vector for the simulation. */
@@ -2993,16 +3008,9 @@ export declare class Simulation {
2993
3008
  castRay(origin: RAPIER.Vector3, direction: RAPIER.Vector3, length: number, options?: RayCastOptions): Block | Entity | null;
2994
3009
 
2995
3010
 
2996
- /**
2997
- * Enables or disables debug raycasting for the simulation.
2998
- * This will render lines for the raycast that disappear
2999
- * after a few seconds.
3000
- * @param enabled - Whether to enable debug raycasting.
3001
- */
3002
- enableDebugRaycasting(enabled: boolean): void;
3003
3011
  /**
3004
3012
  * Enables or disables debug rendering for the simulation.
3005
- * When enabled, all colliders and rigid body outlines
3013
+ * When enabled, all colliders, rigid body and raycast outlines
3006
3014
  * will be rendered in the world. Do not enable this in production.
3007
3015
  * In large worlds enabling this can cause noticable lag and RTT spikes.
3008
3016
  * @param enabled - Whether to enable debug rendering.