hytopia 0.6.32 → 0.6.34

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.6.32",
3
+ "version": "0.6.34",
4
4
  "description": "The HYTOPIA SDK makes it easy for developers to create massively multiplayer games using JavaScript or TypeScript.",
5
5
  "type": "module",
6
6
  "main": "./node-server.mjs",
package/server.api.json CHANGED
@@ -28627,7 +28627,7 @@
28627
28627
  {
28628
28628
  "kind": "Class",
28629
28629
  "canonicalReference": "server!ParticleEmitter:class",
28630
- "docComment": "/**\n * Represents a particle emitter in the world. Particle emitters emit 2D particles in a world that always face the camera.\n *\n * <h2>Events</h2>\n *\n * This class is an EventRouter, and instance of it emit events with payloads listed under {@link ParticleEmitterEventPayloads}.\n *\n * @example\n * ```typescript\n * const particleEmitter = new ParticleEmitter({\n * textureUri: 'textures/particles/smoke.png',\n * });\n *\n * particleEmitter.spawn(world);\n * ```\n *\n * @public\n */\n",
28630
+ "docComment": "/**\n * Represents a particle emitter in the world. Emit 2D particles that always face the camera.\n *\n * @remarks\n *\n * Particle emitters are created directly as instances. They support a variety of configuration options through the {@link ParticleEmitterOptions} constructor argument.\n *\n * <h2>Events</h2>\n *\n * This class is an EventRouter, and instance of it emit events with payloads listed under {@link ParticleEmitterEventPayloads}.\n *\n * @example\n * ```typescript\n * const particleEmitter = new ParticleEmitter({\n * textureUri: 'textures/particles/smoke.png',\n * });\n *\n * particleEmitter.spawn(world);\n * ```\n *\n * @public\n */\n",
28631
28631
  "excerptTokens": [
28632
28632
  {
28633
28633
  "kind": "Content",
@@ -28756,6 +28756,36 @@
28756
28756
  "isProtected": false,
28757
28757
  "isAbstract": false
28758
28758
  },
28759
+ {
28760
+ "kind": "Property",
28761
+ "canonicalReference": "server!ParticleEmitter#attachedToEntityNodeName:member",
28762
+ "docComment": "/**\n * The name of the node of the attached entity (if the attached entity is a model entity) to attach the particle emitter to.\n */\n",
28763
+ "excerptTokens": [
28764
+ {
28765
+ "kind": "Content",
28766
+ "text": "get attachedToEntityNodeName(): "
28767
+ },
28768
+ {
28769
+ "kind": "Content",
28770
+ "text": "string | undefined"
28771
+ },
28772
+ {
28773
+ "kind": "Content",
28774
+ "text": ";"
28775
+ }
28776
+ ],
28777
+ "isReadonly": true,
28778
+ "isOptional": false,
28779
+ "releaseTag": "Public",
28780
+ "name": "attachedToEntityNodeName",
28781
+ "propertyTypeTokenRange": {
28782
+ "startIndex": 1,
28783
+ "endIndex": 2
28784
+ },
28785
+ "isStatic": false,
28786
+ "isProtected": false,
28787
+ "isAbstract": false
28788
+ },
28759
28789
  {
28760
28790
  "kind": "Property",
28761
28791
  "canonicalReference": "server!ParticleEmitter#colorEnd:member",
@@ -29555,6 +29585,54 @@
29555
29585
  "isAbstract": false,
29556
29586
  "name": "setAttachedToEntity"
29557
29587
  },
29588
+ {
29589
+ "kind": "Method",
29590
+ "canonicalReference": "server!ParticleEmitter#setAttachedToEntityNodeName:member(1)",
29591
+ "docComment": "/**\n * Sets the name of the node of the attached entity (if the attached entity is a model entity) to attach the particle emitter to.\n *\n * @param attachedToEntityNodeName - The name of the node of the attached entity (if the attached entity is a model entity) to attach the particle emitter to.\n */\n",
29592
+ "excerptTokens": [
29593
+ {
29594
+ "kind": "Content",
29595
+ "text": "setAttachedToEntityNodeName(attachedToEntityNodeName: "
29596
+ },
29597
+ {
29598
+ "kind": "Content",
29599
+ "text": "string"
29600
+ },
29601
+ {
29602
+ "kind": "Content",
29603
+ "text": "): "
29604
+ },
29605
+ {
29606
+ "kind": "Content",
29607
+ "text": "void"
29608
+ },
29609
+ {
29610
+ "kind": "Content",
29611
+ "text": ";"
29612
+ }
29613
+ ],
29614
+ "isStatic": false,
29615
+ "returnTypeTokenRange": {
29616
+ "startIndex": 3,
29617
+ "endIndex": 4
29618
+ },
29619
+ "releaseTag": "Public",
29620
+ "isProtected": false,
29621
+ "overloadIndex": 1,
29622
+ "parameters": [
29623
+ {
29624
+ "parameterName": "attachedToEntityNodeName",
29625
+ "parameterTypeTokenRange": {
29626
+ "startIndex": 1,
29627
+ "endIndex": 2
29628
+ },
29629
+ "isOptional": false
29630
+ }
29631
+ ],
29632
+ "isOptional": false,
29633
+ "isAbstract": false,
29634
+ "name": "setAttachedToEntityNodeName"
29635
+ },
29558
29636
  {
29559
29637
  "kind": "Method",
29560
29638
  "canonicalReference": "server!ParticleEmitter#setColorEnd:member(1)",
@@ -31064,6 +31142,27 @@
31064
31142
  "releaseTag": "Public",
31065
31143
  "name": "SET_ATTACHED_TO_ENTITY"
31066
31144
  },
31145
+ {
31146
+ "kind": "EnumMember",
31147
+ "canonicalReference": "server!ParticleEmitterEvent.SET_ATTACHED_TO_ENTITY_NODE_NAME:member",
31148
+ "docComment": "",
31149
+ "excerptTokens": [
31150
+ {
31151
+ "kind": "Content",
31152
+ "text": "SET_ATTACHED_TO_ENTITY_NODE_NAME = "
31153
+ },
31154
+ {
31155
+ "kind": "Content",
31156
+ "text": "\"PARTICLE_EMITTER.SET_ATTACHED_TO_ENTITY_NODE_NAME\""
31157
+ }
31158
+ ],
31159
+ "initializerTokenRange": {
31160
+ "startIndex": 1,
31161
+ "endIndex": 2
31162
+ },
31163
+ "releaseTag": "Public",
31164
+ "name": "SET_ATTACHED_TO_ENTITY_NODE_NAME"
31165
+ },
31067
31166
  {
31068
31167
  "kind": "EnumMember",
31069
31168
  "canonicalReference": "server!ParticleEmitterEvent.SET_COLOR_END:member",
@@ -31675,6 +31774,51 @@
31675
31774
  "endIndex": 6
31676
31775
  }
31677
31776
  },
31777
+ {
31778
+ "kind": "PropertySignature",
31779
+ "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_ATTACHED_TO_ENTITY_NODE_NAME\":member",
31780
+ "docComment": "/**\n * Emitted when the name of the node of the attached entity the particle emitter is attached to is set.\n */\n",
31781
+ "excerptTokens": [
31782
+ {
31783
+ "kind": "Content",
31784
+ "text": "["
31785
+ },
31786
+ {
31787
+ "kind": "Reference",
31788
+ "text": "ParticleEmitterEvent.SET_ATTACHED_TO_ENTITY_NODE_NAME",
31789
+ "canonicalReference": "server!ParticleEmitterEvent.SET_ATTACHED_TO_ENTITY_NODE_NAME:member"
31790
+ },
31791
+ {
31792
+ "kind": "Content",
31793
+ "text": "]: "
31794
+ },
31795
+ {
31796
+ "kind": "Content",
31797
+ "text": "{\n particleEmitter: "
31798
+ },
31799
+ {
31800
+ "kind": "Reference",
31801
+ "text": "ParticleEmitter",
31802
+ "canonicalReference": "server!ParticleEmitter:class"
31803
+ },
31804
+ {
31805
+ "kind": "Content",
31806
+ "text": ";\n attachedToEntityNodeName: string;\n }"
31807
+ },
31808
+ {
31809
+ "kind": "Content",
31810
+ "text": ";"
31811
+ }
31812
+ ],
31813
+ "isReadonly": false,
31814
+ "isOptional": false,
31815
+ "releaseTag": "Public",
31816
+ "name": "\"PARTICLE_EMITTER.SET_ATTACHED_TO_ENTITY_NODE_NAME\"",
31817
+ "propertyTypeTokenRange": {
31818
+ "startIndex": 3,
31819
+ "endIndex": 6
31820
+ }
31821
+ },
31678
31822
  {
31679
31823
  "kind": "PropertySignature",
31680
31824
  "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_ATTACHED_TO_ENTITY\":member",
@@ -32905,7 +33049,7 @@
32905
33049
  {
32906
33050
  "kind": "Class",
32907
33051
  "canonicalReference": "server!ParticleEmitterManager:class",
32908
- "docComment": "/**\n * @remarks\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 `ParticleEmitterManager` class.\n */\n",
33052
+ "docComment": "/**\n * Manages ParticleEmitter instances in a world.\n *\n * @remarks\n *\n * The ParticleEmitterManager is created internally as a singleton for each {@link World} instance in a game server. It allows retrieval of all loaded ParticleEmitter instances, entity attached ParticleEmitter instances, and more.\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 `ParticleEmitterManager` class.\n *\n * @public\n */\n",
32909
33053
  "excerptTokens": [
32910
33054
  {
32911
33055
  "kind": "Content",
@@ -33112,6 +33256,33 @@
33112
33256
  "endIndex": 2
33113
33257
  }
33114
33258
  },
33259
+ {
33260
+ "kind": "PropertySignature",
33261
+ "canonicalReference": "server!ParticleEmitterOptions#attachedToEntityNodeName:member",
33262
+ "docComment": "/**\n * The name of the node of the attached entity (if the attached entity is a model entity) to attach the particle emitter to.\n */\n",
33263
+ "excerptTokens": [
33264
+ {
33265
+ "kind": "Content",
33266
+ "text": "attachedToEntityNodeName?: "
33267
+ },
33268
+ {
33269
+ "kind": "Content",
33270
+ "text": "string"
33271
+ },
33272
+ {
33273
+ "kind": "Content",
33274
+ "text": ";"
33275
+ }
33276
+ ],
33277
+ "isReadonly": false,
33278
+ "isOptional": true,
33279
+ "releaseTag": "Public",
33280
+ "name": "attachedToEntityNodeName",
33281
+ "propertyTypeTokenRange": {
33282
+ "startIndex": 1,
33283
+ "endIndex": 2
33284
+ }
33285
+ },
33115
33286
  {
33116
33287
  "kind": "PropertySignature",
33117
33288
  "canonicalReference": "server!ParticleEmitterOptions#colorEnd:member",
package/server.d.ts CHANGED
@@ -3593,8 +3593,13 @@ export declare interface NoneColliderOptions extends BaseColliderOptions {
3593
3593
  }
3594
3594
 
3595
3595
  /**
3596
- * Represents a particle emitter in the world. Particle emitters emit 2D
3597
- * particles in a world that always face the camera.
3596
+ * Represents a particle emitter in the world. Emit 2D
3597
+ * particles that always face the camera.
3598
+ *
3599
+ * @remarks
3600
+ * Particle emitters are created directly as instances. They support a
3601
+ * variety of configuration options through the {@link ParticleEmitterOptions}
3602
+ * constructor argument.
3598
3603
  *
3599
3604
  * <h2>Events</h2>
3600
3605
  *
@@ -3639,6 +3644,7 @@ export declare class ParticleEmitter extends EventRouter implements protocol.Ser
3639
3644
 
3640
3645
 
3641
3646
 
3647
+
3642
3648
 
3643
3649
 
3644
3650
  constructor(options: ParticleEmitterOptions);
@@ -3648,6 +3654,8 @@ export declare class ParticleEmitter extends EventRouter implements protocol.Ser
3648
3654
  get alphaTest(): number | undefined;
3649
3655
  /** The entity to which the ParticleEmitter is attached if explicitly set. */
3650
3656
  get attachedToEntity(): Entity | undefined;
3657
+ /** The name of the node of the attached entity (if the attached entity is a model entity) to attach the particle emitter to. */
3658
+ get attachedToEntityNodeName(): string | undefined;
3651
3659
  /** The color of an emitted particle at the end of its lifetime. */
3652
3660
  get colorEnd(): RgbColor | undefined;
3653
3661
  /** The color variance of an emitted particle at the end of its lifetime. */
@@ -3712,6 +3720,12 @@ export declare class ParticleEmitter extends EventRouter implements protocol.Ser
3712
3720
  * @param entity - The entity to attach the ParticleEmitter to.
3713
3721
  */
3714
3722
  setAttachedToEntity(entity: Entity): void;
3723
+ /**
3724
+ * Sets the name of the node of the attached entity (if the attached entity is a model entity) to attach the particle emitter to.
3725
+ *
3726
+ * @param attachedToEntityNodeName - The name of the node of the attached entity (if the attached entity is a model entity) to attach the particle emitter to.
3727
+ */
3728
+ setAttachedToEntityNodeName(attachedToEntityNodeName: string): void;
3715
3729
  /**
3716
3730
  * Sets the color of an emitted particle at the end of its lifetime.
3717
3731
  *
@@ -3878,6 +3892,7 @@ export declare enum ParticleEmitterEvent {
3878
3892
  DESPAWN = "PARTICLE_EMITTER.DESPAWN",
3879
3893
  SET_ALPHA_TEST = "PARTICLE_EMITTER.SET_ALPHA_TEST",
3880
3894
  SET_ATTACHED_TO_ENTITY = "PARTICLE_EMITTER.SET_ATTACHED_TO_ENTITY",
3895
+ SET_ATTACHED_TO_ENTITY_NODE_NAME = "PARTICLE_EMITTER.SET_ATTACHED_TO_ENTITY_NODE_NAME",
3881
3896
  SET_COLOR_END = "PARTICLE_EMITTER.SET_COLOR_END",
3882
3897
  SET_COLOR_END_VARIANCE = "PARTICLE_EMITTER.SET_COLOR_END_VARIANCE",
3883
3898
  SET_COLOR_START = "PARTICLE_EMITTER.SET_COLOR_START",
@@ -3920,6 +3935,11 @@ export declare interface ParticleEmitterEventPayloads {
3920
3935
  particleEmitter: ParticleEmitter;
3921
3936
  entity: Entity;
3922
3937
  };
3938
+ /** Emitted when the name of the node of the attached entity the particle emitter is attached to is set. */
3939
+ [ParticleEmitterEvent.SET_ATTACHED_TO_ENTITY_NODE_NAME]: {
3940
+ particleEmitter: ParticleEmitter;
3941
+ attachedToEntityNodeName: string;
3942
+ };
3923
3943
  /** Emitted when the color of an emitted particle at the end of its lifetime is set. */
3924
3944
  [ParticleEmitterEvent.SET_COLOR_END]: {
3925
3945
  particleEmitter: ParticleEmitter;
@@ -4041,6 +4061,17 @@ export declare interface ParticleEmitterEventPayloads {
4041
4061
  };
4042
4062
  }
4043
4063
 
4064
+ /**
4065
+ * Manages ParticleEmitter instances in a world.
4066
+ *
4067
+ * @remarks
4068
+ * The ParticleEmitterManager is created internally as a singleton
4069
+ * for each {@link World} instance in a game server.
4070
+ * It allows retrieval of all loaded ParticleEmitter instances,
4071
+ * entity attached ParticleEmitter instances, and more.
4072
+ *
4073
+ * @public
4074
+ */
4044
4075
  export declare class ParticleEmitterManager {
4045
4076
 
4046
4077
 
@@ -4073,6 +4104,8 @@ export declare interface ParticleEmitterOptions {
4073
4104
  alphaTest?: number;
4074
4105
  /** If set, the ParticleEmitter will be attached to this entity. */
4075
4106
  attachedToEntity?: Entity;
4107
+ /** The name of the node of the attached entity (if the attached entity is a model entity) to attach the particle emitter to. */
4108
+ attachedToEntityNodeName?: string;
4076
4109
  /** The color of an emitted particle at the end of its lifetime. */
4077
4110
  colorEnd?: RgbColor;
4078
4111
  /** The color variance of an emitted particle at the end of its lifetime. */