hytopia 0.1.27 → 0.1.29
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/docs/server.basecharactercontroller.md +5 -5
- package/docs/server.basecharactercontroller.ontick.md +13 -0
- package/docs/server.basecharactercontroller.tick.md +53 -0
- package/docs/server.defaultcharactercontroller.md +0 -14
- package/docs/server.facecallback.md +15 -0
- package/docs/server.facecompletecallback.md +15 -0
- package/docs/server.faceoptions.md +18 -0
- package/docs/server.hytopia.basecharactercontroller.md +5 -5
- package/docs/server.hytopia.basecharactercontroller.ontick.md +13 -0
- package/docs/server.hytopia.basecharactercontroller.tick.md +53 -0
- package/docs/server.hytopia.defaultcharactercontroller.md +0 -14
- package/docs/server.hytopia.facecallback.md +15 -0
- package/docs/server.hytopia.facecompletecallback.md +15 -0
- package/docs/server.hytopia.faceoptions.md +18 -0
- package/docs/server.hytopia.md +77 -0
- package/docs/server.hytopia.movecallback.md +15 -0
- package/docs/server.hytopia.movecompletecallback.md +15 -0
- package/docs/server.hytopia.moveoptions.md +18 -0
- package/docs/server.hytopia.simplecharactercontroller.face.md +89 -0
- package/docs/server.hytopia.simplecharactercontroller.md +88 -0
- package/docs/server.hytopia.simplecharactercontroller.move.md +89 -0
- package/docs/server.md +77 -0
- package/docs/server.movecallback.md +15 -0
- package/docs/server.movecompletecallback.md +15 -0
- package/docs/server.moveoptions.md +18 -0
- package/docs/server.simplecharactercontroller.face.md +89 -0
- package/docs/server.simplecharactercontroller.md +88 -0
- package/docs/server.simplecharactercontroller.move.md +89 -0
- package/package.json +1 -1
- package/server.api.json +965 -263
- package/server.d.ts +141 -19
- package/server.js +57 -57
- package/docs/server.basecharactercontroller.ontickpathfindingmovement.md +0 -13
- package/docs/server.basecharactercontroller.tickpathfindingmovement.md +0 -69
- package/docs/server.defaultcharactercontroller.tickpathfindingmovement.md +0 -69
- package/docs/server.hytopia.basecharactercontroller.ontickpathfindingmovement.md +0 -13
- package/docs/server.hytopia.basecharactercontroller.tickpathfindingmovement.md +0 -69
- package/docs/server.hytopia.defaultcharactercontroller.tickpathfindingmovement.md +0 -69
    
        package/server.api.json
    CHANGED
    
    | @@ -2755,25 +2755,16 @@ | |
| 2755 2755 | 
             
                        },
         | 
| 2756 2756 | 
             
                        {
         | 
| 2757 2757 | 
             
                          "kind": "Property",
         | 
| 2758 | 
            -
                          "canonicalReference": "server!BaseCharacterController# | 
| 2759 | 
            -
                          "docComment": "/**\n * A callback function for when the controller ticks | 
| 2758 | 
            +
                          "canonicalReference": "server!BaseCharacterController#onTick:member",
         | 
| 2759 | 
            +
                          "docComment": "/**\n * A callback function for when the controller ticks.\n *\n * @param deltaTimeMs - The delta time in milliseconds since the last tick.\n */\n",
         | 
| 2760 2760 | 
             
                          "excerptTokens": [
         | 
| 2761 2761 | 
             
                            {
         | 
| 2762 2762 | 
             
                              "kind": "Content",
         | 
| 2763 | 
            -
                              "text": " | 
| 2763 | 
            +
                              "text": "onTick?: "
         | 
| 2764 2764 | 
             
                            },
         | 
| 2765 2765 | 
             
                            {
         | 
| 2766 2766 | 
             
                              "kind": "Content",
         | 
| 2767 | 
            -
                              "text": "( | 
| 2768 | 
            -
                            },
         | 
| 2769 | 
            -
                            {
         | 
| 2770 | 
            -
                              "kind": "Reference",
         | 
| 2771 | 
            -
                              "text": "Vector3",
         | 
| 2772 | 
            -
                              "canonicalReference": "server!Vector3:interface"
         | 
| 2773 | 
            -
                            },
         | 
| 2774 | 
            -
                            {
         | 
| 2775 | 
            -
                              "kind": "Content",
         | 
| 2776 | 
            -
                              "text": ", deltaTimeMs: number) => void"
         | 
| 2767 | 
            +
                              "text": "(deltaTimeMs: number) => void"
         | 
| 2777 2768 | 
             
                            },
         | 
| 2778 2769 | 
             
                            {
         | 
| 2779 2770 | 
             
                              "kind": "Content",
         | 
| @@ -2783,10 +2774,10 @@ | |
| 2783 2774 | 
             
                          "isReadonly": false,
         | 
| 2784 2775 | 
             
                          "isOptional": true,
         | 
| 2785 2776 | 
             
                          "releaseTag": "Public",
         | 
| 2786 | 
            -
                          "name": " | 
| 2777 | 
            +
                          "name": "onTick",
         | 
| 2787 2778 | 
             
                          "propertyTypeTokenRange": {
         | 
| 2788 2779 | 
             
                            "startIndex": 1,
         | 
| 2789 | 
            -
                            "endIndex":  | 
| 2780 | 
            +
                            "endIndex": 2
         | 
| 2790 2781 | 
             
                          },
         | 
| 2791 2782 | 
             
                          "isStatic": false,
         | 
| 2792 2783 | 
             
                          "isProtected": false,
         | 
| @@ -2842,21 +2833,12 @@ | |
| 2842 2833 | 
             
                        },
         | 
| 2843 2834 | 
             
                        {
         | 
| 2844 2835 | 
             
                          "kind": "Method",
         | 
| 2845 | 
            -
                          "canonicalReference": "server!BaseCharacterController# | 
| 2846 | 
            -
                          "docComment": "/**\n * Override this method to  | 
| 2836 | 
            +
                          "canonicalReference": "server!BaseCharacterController#tick:member(1)",
         | 
| 2837 | 
            +
                          "docComment": "/**\n * Override this method to handle entity movements based on your character controller.\n *\n * @param deltaTimeMs - The delta time in milliseconds since the last tick.\n */\n",
         | 
| 2847 2838 | 
             
                          "excerptTokens": [
         | 
| 2848 2839 | 
             
                            {
         | 
| 2849 2840 | 
             
                              "kind": "Content",
         | 
| 2850 | 
            -
                              "text": " | 
| 2851 | 
            -
                            },
         | 
| 2852 | 
            -
                            {
         | 
| 2853 | 
            -
                              "kind": "Reference",
         | 
| 2854 | 
            -
                              "text": "Vector3",
         | 
| 2855 | 
            -
                              "canonicalReference": "server!Vector3:interface"
         | 
| 2856 | 
            -
                            },
         | 
| 2857 | 
            -
                            {
         | 
| 2858 | 
            -
                              "kind": "Content",
         | 
| 2859 | 
            -
                              "text": ", deltaTimeMs: "
         | 
| 2841 | 
            +
                              "text": "tick(deltaTimeMs: "
         | 
| 2860 2842 | 
             
                            },
         | 
| 2861 2843 | 
             
                            {
         | 
| 2862 2844 | 
             
                              "kind": "Content",
         | 
| @@ -2877,33 +2859,25 @@ | |
| 2877 2859 | 
             
                          ],
         | 
| 2878 2860 | 
             
                          "isStatic": false,
         | 
| 2879 2861 | 
             
                          "returnTypeTokenRange": {
         | 
| 2880 | 
            -
                            "startIndex":  | 
| 2881 | 
            -
                            "endIndex":  | 
| 2862 | 
            +
                            "startIndex": 3,
         | 
| 2863 | 
            +
                            "endIndex": 4
         | 
| 2882 2864 | 
             
                          },
         | 
| 2883 2865 | 
             
                          "releaseTag": "Public",
         | 
| 2884 2866 | 
             
                          "isProtected": false,
         | 
| 2885 2867 | 
             
                          "overloadIndex": 1,
         | 
| 2886 2868 | 
             
                          "parameters": [
         | 
| 2887 2869 | 
             
                            {
         | 
| 2888 | 
            -
                              "parameterName": " | 
| 2870 | 
            +
                              "parameterName": "deltaTimeMs",
         | 
| 2889 2871 | 
             
                              "parameterTypeTokenRange": {
         | 
| 2890 2872 | 
             
                                "startIndex": 1,
         | 
| 2891 2873 | 
             
                                "endIndex": 2
         | 
| 2892 2874 | 
             
                              },
         | 
| 2893 2875 | 
             
                              "isOptional": false
         | 
| 2894 | 
            -
                            },
         | 
| 2895 | 
            -
                            {
         | 
| 2896 | 
            -
                              "parameterName": "deltaTimeMs",
         | 
| 2897 | 
            -
                              "parameterTypeTokenRange": {
         | 
| 2898 | 
            -
                                "startIndex": 3,
         | 
| 2899 | 
            -
                                "endIndex": 4
         | 
| 2900 | 
            -
                              },
         | 
| 2901 | 
            -
                              "isOptional": false
         | 
| 2902 2876 | 
             
                            }
         | 
| 2903 2877 | 
             
                          ],
         | 
| 2904 2878 | 
             
                          "isOptional": false,
         | 
| 2905 2879 | 
             
                          "isAbstract": false,
         | 
| 2906 | 
            -
                          "name": " | 
| 2880 | 
            +
                          "name": "tick"
         | 
| 2907 2881 | 
             
                        },
         | 
| 2908 2882 | 
             
                        {
         | 
| 2909 2883 | 
             
                          "kind": "Method",
         | 
| @@ -8250,71 +8224,6 @@ | |
| 8250 8224 | 
             
                          "isProtected": false,
         | 
| 8251 8225 | 
             
                          "isAbstract": false
         | 
| 8252 8226 | 
             
                        },
         | 
| 8253 | 
            -
                        {
         | 
| 8254 | 
            -
                          "kind": "Method",
         | 
| 8255 | 
            -
                          "canonicalReference": "server!DefaultCharacterController#tickPathfindingMovement:member(1)",
         | 
| 8256 | 
            -
                          "docComment": "/**\n * Ticks the pathfinding movement for the character controller, overriding the default implementation.\n *\n * @param destination - The destination to move to.\n *\n * @param deltaTimeMs - The delta time in milliseconds since the last tick.\n */\n",
         | 
| 8257 | 
            -
                          "excerptTokens": [
         | 
| 8258 | 
            -
                            {
         | 
| 8259 | 
            -
                              "kind": "Content",
         | 
| 8260 | 
            -
                              "text": "tickPathfindingMovement(destination: "
         | 
| 8261 | 
            -
                            },
         | 
| 8262 | 
            -
                            {
         | 
| 8263 | 
            -
                              "kind": "Reference",
         | 
| 8264 | 
            -
                              "text": "Vector3",
         | 
| 8265 | 
            -
                              "canonicalReference": "server!Vector3:interface"
         | 
| 8266 | 
            -
                            },
         | 
| 8267 | 
            -
                            {
         | 
| 8268 | 
            -
                              "kind": "Content",
         | 
| 8269 | 
            -
                              "text": ", deltaTimeMs: "
         | 
| 8270 | 
            -
                            },
         | 
| 8271 | 
            -
                            {
         | 
| 8272 | 
            -
                              "kind": "Content",
         | 
| 8273 | 
            -
                              "text": "number"
         | 
| 8274 | 
            -
                            },
         | 
| 8275 | 
            -
                            {
         | 
| 8276 | 
            -
                              "kind": "Content",
         | 
| 8277 | 
            -
                              "text": "): "
         | 
| 8278 | 
            -
                            },
         | 
| 8279 | 
            -
                            {
         | 
| 8280 | 
            -
                              "kind": "Content",
         | 
| 8281 | 
            -
                              "text": "void"
         | 
| 8282 | 
            -
                            },
         | 
| 8283 | 
            -
                            {
         | 
| 8284 | 
            -
                              "kind": "Content",
         | 
| 8285 | 
            -
                              "text": ";"
         | 
| 8286 | 
            -
                            }
         | 
| 8287 | 
            -
                          ],
         | 
| 8288 | 
            -
                          "isStatic": false,
         | 
| 8289 | 
            -
                          "returnTypeTokenRange": {
         | 
| 8290 | 
            -
                            "startIndex": 5,
         | 
| 8291 | 
            -
                            "endIndex": 6
         | 
| 8292 | 
            -
                          },
         | 
| 8293 | 
            -
                          "releaseTag": "Public",
         | 
| 8294 | 
            -
                          "isProtected": false,
         | 
| 8295 | 
            -
                          "overloadIndex": 1,
         | 
| 8296 | 
            -
                          "parameters": [
         | 
| 8297 | 
            -
                            {
         | 
| 8298 | 
            -
                              "parameterName": "destination",
         | 
| 8299 | 
            -
                              "parameterTypeTokenRange": {
         | 
| 8300 | 
            -
                                "startIndex": 1,
         | 
| 8301 | 
            -
                                "endIndex": 2
         | 
| 8302 | 
            -
                              },
         | 
| 8303 | 
            -
                              "isOptional": false
         | 
| 8304 | 
            -
                            },
         | 
| 8305 | 
            -
                            {
         | 
| 8306 | 
            -
                              "parameterName": "deltaTimeMs",
         | 
| 8307 | 
            -
                              "parameterTypeTokenRange": {
         | 
| 8308 | 
            -
                                "startIndex": 3,
         | 
| 8309 | 
            -
                                "endIndex": 4
         | 
| 8310 | 
            -
                              },
         | 
| 8311 | 
            -
                              "isOptional": false
         | 
| 8312 | 
            -
                            }
         | 
| 8313 | 
            -
                          ],
         | 
| 8314 | 
            -
                          "isOptional": false,
         | 
| 8315 | 
            -
                          "isAbstract": false,
         | 
| 8316 | 
            -
                          "name": "tickPathfindingMovement"
         | 
| 8317 | 
            -
                        },
         | 
| 8318 8227 | 
             
                        {
         | 
| 8319 8228 | 
             
                          "kind": "Method",
         | 
| 8320 8229 | 
             
                          "canonicalReference": "server!DefaultCharacterController#tickPlayerMovement:member(1)",
         | 
| @@ -11206,6 +11115,129 @@ | |
| 11206 11115 | 
             
                      ],
         | 
| 11207 11116 | 
             
                      "implementsTokenRanges": []
         | 
| 11208 11117 | 
             
                    },
         | 
| 11118 | 
            +
                    {
         | 
| 11119 | 
            +
                      "kind": "TypeAlias",
         | 
| 11120 | 
            +
                      "canonicalReference": "server!FaceCallback:type",
         | 
| 11121 | 
            +
                      "docComment": "/**\n * A callback function called when the entity associated with the SimpleCharacterController updates its rotation as it is attempting to face a target coordinate.\n *\n * @param currentRotation - The current rotation of the entity.\n *\n * @param targetRotation - The target rotation of the entity.\n *\n * @public\n */\n",
         | 
| 11122 | 
            +
                      "excerptTokens": [
         | 
| 11123 | 
            +
                        {
         | 
| 11124 | 
            +
                          "kind": "Content",
         | 
| 11125 | 
            +
                          "text": "export type FaceCallback = "
         | 
| 11126 | 
            +
                        },
         | 
| 11127 | 
            +
                        {
         | 
| 11128 | 
            +
                          "kind": "Content",
         | 
| 11129 | 
            +
                          "text": "(currentRotation: "
         | 
| 11130 | 
            +
                        },
         | 
| 11131 | 
            +
                        {
         | 
| 11132 | 
            +
                          "kind": "Reference",
         | 
| 11133 | 
            +
                          "text": "Rotation",
         | 
| 11134 | 
            +
                          "canonicalReference": "server!Rotation:interface"
         | 
| 11135 | 
            +
                        },
         | 
| 11136 | 
            +
                        {
         | 
| 11137 | 
            +
                          "kind": "Content",
         | 
| 11138 | 
            +
                          "text": ", targetRotation: "
         | 
| 11139 | 
            +
                        },
         | 
| 11140 | 
            +
                        {
         | 
| 11141 | 
            +
                          "kind": "Reference",
         | 
| 11142 | 
            +
                          "text": "Rotation",
         | 
| 11143 | 
            +
                          "canonicalReference": "server!Rotation:interface"
         | 
| 11144 | 
            +
                        },
         | 
| 11145 | 
            +
                        {
         | 
| 11146 | 
            +
                          "kind": "Content",
         | 
| 11147 | 
            +
                          "text": ") => void"
         | 
| 11148 | 
            +
                        },
         | 
| 11149 | 
            +
                        {
         | 
| 11150 | 
            +
                          "kind": "Content",
         | 
| 11151 | 
            +
                          "text": ";"
         | 
| 11152 | 
            +
                        }
         | 
| 11153 | 
            +
                      ],
         | 
| 11154 | 
            +
                      "fileUrlPath": "src/world/entities/controllers/SimpleCharacterController.ts",
         | 
| 11155 | 
            +
                      "releaseTag": "Public",
         | 
| 11156 | 
            +
                      "name": "FaceCallback",
         | 
| 11157 | 
            +
                      "typeTokenRange": {
         | 
| 11158 | 
            +
                        "startIndex": 1,
         | 
| 11159 | 
            +
                        "endIndex": 6
         | 
| 11160 | 
            +
                      }
         | 
| 11161 | 
            +
                    },
         | 
| 11162 | 
            +
                    {
         | 
| 11163 | 
            +
                      "kind": "TypeAlias",
         | 
| 11164 | 
            +
                      "canonicalReference": "server!FaceCompleteCallback:type",
         | 
| 11165 | 
            +
                      "docComment": "/**\n * A callback function called when the entity associated with the SimpleCharacterController finishes rotating and is now facing a target coordinate.\n *\n * @param endRotation - The rotation of the entity after it has finished rotating.\n *\n * @public\n */\n",
         | 
| 11166 | 
            +
                      "excerptTokens": [
         | 
| 11167 | 
            +
                        {
         | 
| 11168 | 
            +
                          "kind": "Content",
         | 
| 11169 | 
            +
                          "text": "export type FaceCompleteCallback = "
         | 
| 11170 | 
            +
                        },
         | 
| 11171 | 
            +
                        {
         | 
| 11172 | 
            +
                          "kind": "Content",
         | 
| 11173 | 
            +
                          "text": "(endRotation: "
         | 
| 11174 | 
            +
                        },
         | 
| 11175 | 
            +
                        {
         | 
| 11176 | 
            +
                          "kind": "Reference",
         | 
| 11177 | 
            +
                          "text": "Rotation",
         | 
| 11178 | 
            +
                          "canonicalReference": "server!Rotation:interface"
         | 
| 11179 | 
            +
                        },
         | 
| 11180 | 
            +
                        {
         | 
| 11181 | 
            +
                          "kind": "Content",
         | 
| 11182 | 
            +
                          "text": ") => void"
         | 
| 11183 | 
            +
                        },
         | 
| 11184 | 
            +
                        {
         | 
| 11185 | 
            +
                          "kind": "Content",
         | 
| 11186 | 
            +
                          "text": ";"
         | 
| 11187 | 
            +
                        }
         | 
| 11188 | 
            +
                      ],
         | 
| 11189 | 
            +
                      "fileUrlPath": "src/world/entities/controllers/SimpleCharacterController.ts",
         | 
| 11190 | 
            +
                      "releaseTag": "Public",
         | 
| 11191 | 
            +
                      "name": "FaceCompleteCallback",
         | 
| 11192 | 
            +
                      "typeTokenRange": {
         | 
| 11193 | 
            +
                        "startIndex": 1,
         | 
| 11194 | 
            +
                        "endIndex": 4
         | 
| 11195 | 
            +
                      }
         | 
| 11196 | 
            +
                    },
         | 
| 11197 | 
            +
                    {
         | 
| 11198 | 
            +
                      "kind": "TypeAlias",
         | 
| 11199 | 
            +
                      "canonicalReference": "server!FaceOptions:type",
         | 
| 11200 | 
            +
                      "docComment": "/**\n * Options for the {@link SimpleCharacterController.face} method.\n *\n * @public\n */\n",
         | 
| 11201 | 
            +
                      "excerptTokens": [
         | 
| 11202 | 
            +
                        {
         | 
| 11203 | 
            +
                          "kind": "Content",
         | 
| 11204 | 
            +
                          "text": "export type FaceOptions = "
         | 
| 11205 | 
            +
                        },
         | 
| 11206 | 
            +
                        {
         | 
| 11207 | 
            +
                          "kind": "Content",
         | 
| 11208 | 
            +
                          "text": "{\n    faceCallback?: "
         | 
| 11209 | 
            +
                        },
         | 
| 11210 | 
            +
                        {
         | 
| 11211 | 
            +
                          "kind": "Reference",
         | 
| 11212 | 
            +
                          "text": "FaceCallback",
         | 
| 11213 | 
            +
                          "canonicalReference": "server!FaceCallback:type"
         | 
| 11214 | 
            +
                        },
         | 
| 11215 | 
            +
                        {
         | 
| 11216 | 
            +
                          "kind": "Content",
         | 
| 11217 | 
            +
                          "text": ";\n    faceCompleteCallback?: "
         | 
| 11218 | 
            +
                        },
         | 
| 11219 | 
            +
                        {
         | 
| 11220 | 
            +
                          "kind": "Reference",
         | 
| 11221 | 
            +
                          "text": "FaceCompleteCallback",
         | 
| 11222 | 
            +
                          "canonicalReference": "server!FaceCompleteCallback:type"
         | 
| 11223 | 
            +
                        },
         | 
| 11224 | 
            +
                        {
         | 
| 11225 | 
            +
                          "kind": "Content",
         | 
| 11226 | 
            +
                          "text": ";\n}"
         | 
| 11227 | 
            +
                        },
         | 
| 11228 | 
            +
                        {
         | 
| 11229 | 
            +
                          "kind": "Content",
         | 
| 11230 | 
            +
                          "text": ";"
         | 
| 11231 | 
            +
                        }
         | 
| 11232 | 
            +
                      ],
         | 
| 11233 | 
            +
                      "fileUrlPath": "src/world/entities/controllers/SimpleCharacterController.ts",
         | 
| 11234 | 
            +
                      "releaseTag": "Public",
         | 
| 11235 | 
            +
                      "name": "FaceOptions",
         | 
| 11236 | 
            +
                      "typeTokenRange": {
         | 
| 11237 | 
            +
                        "startIndex": 1,
         | 
| 11238 | 
            +
                        "endIndex": 6
         | 
| 11239 | 
            +
                      }
         | 
| 11240 | 
            +
                    },
         | 
| 11209 11241 | 
             
                    {
         | 
| 11210 11242 | 
             
                      "kind": "Class",
         | 
| 11211 11243 | 
             
                      "canonicalReference": "server!GameServer:class",
         | 
| @@ -14113,25 +14145,16 @@ | |
| 14113 14145 | 
             
                            },
         | 
| 14114 14146 | 
             
                            {
         | 
| 14115 14147 | 
             
                              "kind": "Property",
         | 
| 14116 | 
            -
                              "canonicalReference": "server!HYTOPIA.BaseCharacterController# | 
| 14117 | 
            -
                              "docComment": "/**\n * A callback function for when the controller ticks | 
| 14148 | 
            +
                              "canonicalReference": "server!HYTOPIA.BaseCharacterController#onTick:member",
         | 
| 14149 | 
            +
                              "docComment": "/**\n * A callback function for when the controller ticks.\n *\n * @param deltaTimeMs - The delta time in milliseconds since the last tick.\n */\n",
         | 
| 14118 14150 | 
             
                              "excerptTokens": [
         | 
| 14119 14151 | 
             
                                {
         | 
| 14120 14152 | 
             
                                  "kind": "Content",
         | 
| 14121 | 
            -
                                  "text": " | 
| 14122 | 
            -
                                },
         | 
| 14123 | 
            -
                                {
         | 
| 14124 | 
            -
                                  "kind": "Content",
         | 
| 14125 | 
            -
                                  "text": "(destination: "
         | 
| 14126 | 
            -
                                },
         | 
| 14127 | 
            -
                                {
         | 
| 14128 | 
            -
                                  "kind": "Reference",
         | 
| 14129 | 
            -
                                  "text": "Vector3",
         | 
| 14130 | 
            -
                                  "canonicalReference": "server!Vector3:interface"
         | 
| 14153 | 
            +
                                  "text": "onTick?: "
         | 
| 14131 14154 | 
             
                                },
         | 
| 14132 14155 | 
             
                                {
         | 
| 14133 14156 | 
             
                                  "kind": "Content",
         | 
| 14134 | 
            -
                                  "text": " | 
| 14157 | 
            +
                                  "text": "(deltaTimeMs: number) => void"
         | 
| 14135 14158 | 
             
                                },
         | 
| 14136 14159 | 
             
                                {
         | 
| 14137 14160 | 
             
                                  "kind": "Content",
         | 
| @@ -14141,10 +14164,10 @@ | |
| 14141 14164 | 
             
                              "isReadonly": false,
         | 
| 14142 14165 | 
             
                              "isOptional": true,
         | 
| 14143 14166 | 
             
                              "releaseTag": "Public",
         | 
| 14144 | 
            -
                              "name": " | 
| 14167 | 
            +
                              "name": "onTick",
         | 
| 14145 14168 | 
             
                              "propertyTypeTokenRange": {
         | 
| 14146 14169 | 
             
                                "startIndex": 1,
         | 
| 14147 | 
            -
                                "endIndex":  | 
| 14170 | 
            +
                                "endIndex": 2
         | 
| 14148 14171 | 
             
                              },
         | 
| 14149 14172 | 
             
                              "isStatic": false,
         | 
| 14150 14173 | 
             
                              "isProtected": false,
         | 
| @@ -14200,91 +14223,74 @@ | |
| 14200 14223 | 
             
                            },
         | 
| 14201 14224 | 
             
                            {
         | 
| 14202 14225 | 
             
                              "kind": "Method",
         | 
| 14203 | 
            -
                              "canonicalReference": "server!HYTOPIA.BaseCharacterController# | 
| 14204 | 
            -
                              "docComment": "/**\n * Override this method to  | 
| 14226 | 
            +
                              "canonicalReference": "server!HYTOPIA.BaseCharacterController#tick:member(1)",
         | 
| 14227 | 
            +
                              "docComment": "/**\n * Override this method to handle entity movements based on your character controller.\n *\n * @param deltaTimeMs - The delta time in milliseconds since the last tick.\n */\n",
         | 
| 14228 | 
            +
                              "excerptTokens": [
         | 
| 14229 | 
            +
                                {
         | 
| 14230 | 
            +
                                  "kind": "Content",
         | 
| 14231 | 
            +
                                  "text": "tick(deltaTimeMs: "
         | 
| 14232 | 
            +
                                },
         | 
| 14233 | 
            +
                                {
         | 
| 14234 | 
            +
                                  "kind": "Content",
         | 
| 14235 | 
            +
                                  "text": "number"
         | 
| 14236 | 
            +
                                },
         | 
| 14237 | 
            +
                                {
         | 
| 14238 | 
            +
                                  "kind": "Content",
         | 
| 14239 | 
            +
                                  "text": "): "
         | 
| 14240 | 
            +
                                },
         | 
| 14241 | 
            +
                                {
         | 
| 14242 | 
            +
                                  "kind": "Content",
         | 
| 14243 | 
            +
                                  "text": "void"
         | 
| 14244 | 
            +
                                },
         | 
| 14245 | 
            +
                                {
         | 
| 14246 | 
            +
                                  "kind": "Content",
         | 
| 14247 | 
            +
                                  "text": ";"
         | 
| 14248 | 
            +
                                }
         | 
| 14249 | 
            +
                              ],
         | 
| 14250 | 
            +
                              "isStatic": false,
         | 
| 14251 | 
            +
                              "returnTypeTokenRange": {
         | 
| 14252 | 
            +
                                "startIndex": 3,
         | 
| 14253 | 
            +
                                "endIndex": 4
         | 
| 14254 | 
            +
                              },
         | 
| 14255 | 
            +
                              "releaseTag": "Public",
         | 
| 14256 | 
            +
                              "isProtected": false,
         | 
| 14257 | 
            +
                              "overloadIndex": 1,
         | 
| 14258 | 
            +
                              "parameters": [
         | 
| 14259 | 
            +
                                {
         | 
| 14260 | 
            +
                                  "parameterName": "deltaTimeMs",
         | 
| 14261 | 
            +
                                  "parameterTypeTokenRange": {
         | 
| 14262 | 
            +
                                    "startIndex": 1,
         | 
| 14263 | 
            +
                                    "endIndex": 2
         | 
| 14264 | 
            +
                                  },
         | 
| 14265 | 
            +
                                  "isOptional": false
         | 
| 14266 | 
            +
                                }
         | 
| 14267 | 
            +
                              ],
         | 
| 14268 | 
            +
                              "isOptional": false,
         | 
| 14269 | 
            +
                              "isAbstract": false,
         | 
| 14270 | 
            +
                              "name": "tick"
         | 
| 14271 | 
            +
                            },
         | 
| 14272 | 
            +
                            {
         | 
| 14273 | 
            +
                              "kind": "Method",
         | 
| 14274 | 
            +
                              "canonicalReference": "server!HYTOPIA.BaseCharacterController#tickPlayerMovement:member(1)",
         | 
| 14275 | 
            +
                              "docComment": "/**\n * Override this method to handle entity movements based on player input for your character controller.\n *\n * @param inputState - The current input state of the player.\n *\n * @param orientationState - The current orientation state of the player.\n *\n * @param deltaTimeMs - The delta time in milliseconds since the last tick.\n */\n",
         | 
| 14205 14276 | 
             
                              "excerptTokens": [
         | 
| 14206 14277 | 
             
                                {
         | 
| 14207 14278 | 
             
                                  "kind": "Content",
         | 
| 14208 | 
            -
                                  "text": " | 
| 14279 | 
            +
                                  "text": "tickPlayerMovement(inputState: "
         | 
| 14209 14280 | 
             
                                },
         | 
| 14210 14281 | 
             
                                {
         | 
| 14211 14282 | 
             
                                  "kind": "Reference",
         | 
| 14212 | 
            -
                                  "text": " | 
| 14213 | 
            -
                                  "canonicalReference": "server! | 
| 14214 | 
            -
                                },
         | 
| 14215 | 
            -
                                {
         | 
| 14216 | 
            -
                                  "kind": "Content",
         | 
| 14217 | 
            -
                                  "text": ",  | 
| 14218 | 
            -
                                },
         | 
| 14219 | 
            -
                                {
         | 
| 14220 | 
            -
                                  "kind": " | 
| 14221 | 
            -
                                  "text": " | 
| 14222 | 
            -
             | 
| 14223 | 
            -
                                {
         | 
| 14224 | 
            -
                                  "kind": "Content",
         | 
| 14225 | 
            -
                                  "text": "): "
         | 
| 14226 | 
            -
                                },
         | 
| 14227 | 
            -
                                {
         | 
| 14228 | 
            -
                                  "kind": "Content",
         | 
| 14229 | 
            -
                                  "text": "void"
         | 
| 14230 | 
            -
                                },
         | 
| 14231 | 
            -
                                {
         | 
| 14232 | 
            -
                                  "kind": "Content",
         | 
| 14233 | 
            -
                                  "text": ";"
         | 
| 14234 | 
            -
                                }
         | 
| 14235 | 
            -
                              ],
         | 
| 14236 | 
            -
                              "isStatic": false,
         | 
| 14237 | 
            -
                              "returnTypeTokenRange": {
         | 
| 14238 | 
            -
                                "startIndex": 5,
         | 
| 14239 | 
            -
                                "endIndex": 6
         | 
| 14240 | 
            -
                              },
         | 
| 14241 | 
            -
                              "releaseTag": "Public",
         | 
| 14242 | 
            -
                              "isProtected": false,
         | 
| 14243 | 
            -
                              "overloadIndex": 1,
         | 
| 14244 | 
            -
                              "parameters": [
         | 
| 14245 | 
            -
                                {
         | 
| 14246 | 
            -
                                  "parameterName": "destination",
         | 
| 14247 | 
            -
                                  "parameterTypeTokenRange": {
         | 
| 14248 | 
            -
                                    "startIndex": 1,
         | 
| 14249 | 
            -
                                    "endIndex": 2
         | 
| 14250 | 
            -
                                  },
         | 
| 14251 | 
            -
                                  "isOptional": false
         | 
| 14252 | 
            -
                                },
         | 
| 14253 | 
            -
                                {
         | 
| 14254 | 
            -
                                  "parameterName": "deltaTimeMs",
         | 
| 14255 | 
            -
                                  "parameterTypeTokenRange": {
         | 
| 14256 | 
            -
                                    "startIndex": 3,
         | 
| 14257 | 
            -
                                    "endIndex": 4
         | 
| 14258 | 
            -
                                  },
         | 
| 14259 | 
            -
                                  "isOptional": false
         | 
| 14260 | 
            -
                                }
         | 
| 14261 | 
            -
                              ],
         | 
| 14262 | 
            -
                              "isOptional": false,
         | 
| 14263 | 
            -
                              "isAbstract": false,
         | 
| 14264 | 
            -
                              "name": "tickPathfindingMovement"
         | 
| 14265 | 
            -
                            },
         | 
| 14266 | 
            -
                            {
         | 
| 14267 | 
            -
                              "kind": "Method",
         | 
| 14268 | 
            -
                              "canonicalReference": "server!HYTOPIA.BaseCharacterController#tickPlayerMovement:member(1)",
         | 
| 14269 | 
            -
                              "docComment": "/**\n * Override this method to handle entity movements based on player input for your character controller.\n *\n * @param inputState - The current input state of the player.\n *\n * @param orientationState - The current orientation state of the player.\n *\n * @param deltaTimeMs - The delta time in milliseconds since the last tick.\n */\n",
         | 
| 14270 | 
            -
                              "excerptTokens": [
         | 
| 14271 | 
            -
                                {
         | 
| 14272 | 
            -
                                  "kind": "Content",
         | 
| 14273 | 
            -
                                  "text": "tickPlayerMovement(inputState: "
         | 
| 14274 | 
            -
                                },
         | 
| 14275 | 
            -
                                {
         | 
| 14276 | 
            -
                                  "kind": "Reference",
         | 
| 14277 | 
            -
                                  "text": "PlayerInputState",
         | 
| 14278 | 
            -
                                  "canonicalReference": "server!PlayerInputState:type"
         | 
| 14279 | 
            -
                                },
         | 
| 14280 | 
            -
                                {
         | 
| 14281 | 
            -
                                  "kind": "Content",
         | 
| 14282 | 
            -
                                  "text": ", orientationState: "
         | 
| 14283 | 
            -
                                },
         | 
| 14284 | 
            -
                                {
         | 
| 14285 | 
            -
                                  "kind": "Reference",
         | 
| 14286 | 
            -
                                  "text": "PlayerOrientationState",
         | 
| 14287 | 
            -
                                  "canonicalReference": "server!PlayerOrientationState:type"
         | 
| 14283 | 
            +
                                  "text": "PlayerInputState",
         | 
| 14284 | 
            +
                                  "canonicalReference": "server!PlayerInputState:type"
         | 
| 14285 | 
            +
                                },
         | 
| 14286 | 
            +
                                {
         | 
| 14287 | 
            +
                                  "kind": "Content",
         | 
| 14288 | 
            +
                                  "text": ", orientationState: "
         | 
| 14289 | 
            +
                                },
         | 
| 14290 | 
            +
                                {
         | 
| 14291 | 
            +
                                  "kind": "Reference",
         | 
| 14292 | 
            +
                                  "text": "PlayerOrientationState",
         | 
| 14293 | 
            +
                                  "canonicalReference": "server!PlayerOrientationState:type"
         | 
| 14288 14294 | 
             
                                },
         | 
| 14289 14295 | 
             
                                {
         | 
| 14290 14296 | 
             
                                  "kind": "Content",
         | 
| @@ -19608,71 +19614,6 @@ | |
| 19608 19614 | 
             
                              "isProtected": false,
         | 
| 19609 19615 | 
             
                              "isAbstract": false
         | 
| 19610 19616 | 
             
                            },
         | 
| 19611 | 
            -
                            {
         | 
| 19612 | 
            -
                              "kind": "Method",
         | 
| 19613 | 
            -
                              "canonicalReference": "server!HYTOPIA.DefaultCharacterController#tickPathfindingMovement:member(1)",
         | 
| 19614 | 
            -
                              "docComment": "/**\n * Ticks the pathfinding movement for the character controller, overriding the default implementation.\n *\n * @param destination - The destination to move to.\n *\n * @param deltaTimeMs - The delta time in milliseconds since the last tick.\n */\n",
         | 
| 19615 | 
            -
                              "excerptTokens": [
         | 
| 19616 | 
            -
                                {
         | 
| 19617 | 
            -
                                  "kind": "Content",
         | 
| 19618 | 
            -
                                  "text": "tickPathfindingMovement(destination: "
         | 
| 19619 | 
            -
                                },
         | 
| 19620 | 
            -
                                {
         | 
| 19621 | 
            -
                                  "kind": "Reference",
         | 
| 19622 | 
            -
                                  "text": "Vector3",
         | 
| 19623 | 
            -
                                  "canonicalReference": "server!Vector3:interface"
         | 
| 19624 | 
            -
                                },
         | 
| 19625 | 
            -
                                {
         | 
| 19626 | 
            -
                                  "kind": "Content",
         | 
| 19627 | 
            -
                                  "text": ", deltaTimeMs: "
         | 
| 19628 | 
            -
                                },
         | 
| 19629 | 
            -
                                {
         | 
| 19630 | 
            -
                                  "kind": "Content",
         | 
| 19631 | 
            -
                                  "text": "number"
         | 
| 19632 | 
            -
                                },
         | 
| 19633 | 
            -
                                {
         | 
| 19634 | 
            -
                                  "kind": "Content",
         | 
| 19635 | 
            -
                                  "text": "): "
         | 
| 19636 | 
            -
                                },
         | 
| 19637 | 
            -
                                {
         | 
| 19638 | 
            -
                                  "kind": "Content",
         | 
| 19639 | 
            -
                                  "text": "void"
         | 
| 19640 | 
            -
                                },
         | 
| 19641 | 
            -
                                {
         | 
| 19642 | 
            -
                                  "kind": "Content",
         | 
| 19643 | 
            -
                                  "text": ";"
         | 
| 19644 | 
            -
                                }
         | 
| 19645 | 
            -
                              ],
         | 
| 19646 | 
            -
                              "isStatic": false,
         | 
| 19647 | 
            -
                              "returnTypeTokenRange": {
         | 
| 19648 | 
            -
                                "startIndex": 5,
         | 
| 19649 | 
            -
                                "endIndex": 6
         | 
| 19650 | 
            -
                              },
         | 
| 19651 | 
            -
                              "releaseTag": "Public",
         | 
| 19652 | 
            -
                              "isProtected": false,
         | 
| 19653 | 
            -
                              "overloadIndex": 1,
         | 
| 19654 | 
            -
                              "parameters": [
         | 
| 19655 | 
            -
                                {
         | 
| 19656 | 
            -
                                  "parameterName": "destination",
         | 
| 19657 | 
            -
                                  "parameterTypeTokenRange": {
         | 
| 19658 | 
            -
                                    "startIndex": 1,
         | 
| 19659 | 
            -
                                    "endIndex": 2
         | 
| 19660 | 
            -
                                  },
         | 
| 19661 | 
            -
                                  "isOptional": false
         | 
| 19662 | 
            -
                                },
         | 
| 19663 | 
            -
                                {
         | 
| 19664 | 
            -
                                  "parameterName": "deltaTimeMs",
         | 
| 19665 | 
            -
                                  "parameterTypeTokenRange": {
         | 
| 19666 | 
            -
                                    "startIndex": 3,
         | 
| 19667 | 
            -
                                    "endIndex": 4
         | 
| 19668 | 
            -
                                  },
         | 
| 19669 | 
            -
                                  "isOptional": false
         | 
| 19670 | 
            -
                                }
         | 
| 19671 | 
            -
                              ],
         | 
| 19672 | 
            -
                              "isOptional": false,
         | 
| 19673 | 
            -
                              "isAbstract": false,
         | 
| 19674 | 
            -
                              "name": "tickPathfindingMovement"
         | 
| 19675 | 
            -
                            },
         | 
| 19676 19617 | 
             
                            {
         | 
| 19677 19618 | 
             
                              "kind": "Method",
         | 
| 19678 19619 | 
             
                              "canonicalReference": "server!HYTOPIA.DefaultCharacterController#tickPlayerMovement:member(1)",
         | 
| @@ -22564,6 +22505,129 @@ | |
| 22564 22505 | 
             
                          ],
         | 
| 22565 22506 | 
             
                          "implementsTokenRanges": []
         | 
| 22566 22507 | 
             
                        },
         | 
| 22508 | 
            +
                        {
         | 
| 22509 | 
            +
                          "kind": "TypeAlias",
         | 
| 22510 | 
            +
                          "canonicalReference": "server!HYTOPIA.FaceCallback:type",
         | 
| 22511 | 
            +
                          "docComment": "/**\n * A callback function called when the entity associated with the SimpleCharacterController updates its rotation as it is attempting to face a target coordinate.\n *\n * @param currentRotation - The current rotation of the entity.\n *\n * @param targetRotation - The target rotation of the entity.\n *\n * @public\n */\n",
         | 
| 22512 | 
            +
                          "excerptTokens": [
         | 
| 22513 | 
            +
                            {
         | 
| 22514 | 
            +
                              "kind": "Content",
         | 
| 22515 | 
            +
                              "text": "export type FaceCallback = "
         | 
| 22516 | 
            +
                            },
         | 
| 22517 | 
            +
                            {
         | 
| 22518 | 
            +
                              "kind": "Content",
         | 
| 22519 | 
            +
                              "text": "(currentRotation: "
         | 
| 22520 | 
            +
                            },
         | 
| 22521 | 
            +
                            {
         | 
| 22522 | 
            +
                              "kind": "Reference",
         | 
| 22523 | 
            +
                              "text": "Rotation",
         | 
| 22524 | 
            +
                              "canonicalReference": "server!Rotation:interface"
         | 
| 22525 | 
            +
                            },
         | 
| 22526 | 
            +
                            {
         | 
| 22527 | 
            +
                              "kind": "Content",
         | 
| 22528 | 
            +
                              "text": ", targetRotation: "
         | 
| 22529 | 
            +
                            },
         | 
| 22530 | 
            +
                            {
         | 
| 22531 | 
            +
                              "kind": "Reference",
         | 
| 22532 | 
            +
                              "text": "Rotation",
         | 
| 22533 | 
            +
                              "canonicalReference": "server!Rotation:interface"
         | 
| 22534 | 
            +
                            },
         | 
| 22535 | 
            +
                            {
         | 
| 22536 | 
            +
                              "kind": "Content",
         | 
| 22537 | 
            +
                              "text": ") => void"
         | 
| 22538 | 
            +
                            },
         | 
| 22539 | 
            +
                            {
         | 
| 22540 | 
            +
                              "kind": "Content",
         | 
| 22541 | 
            +
                              "text": ";"
         | 
| 22542 | 
            +
                            }
         | 
| 22543 | 
            +
                          ],
         | 
| 22544 | 
            +
                          "fileUrlPath": "src/world/entities/controllers/SimpleCharacterController.ts",
         | 
| 22545 | 
            +
                          "releaseTag": "Public",
         | 
| 22546 | 
            +
                          "name": "FaceCallback",
         | 
| 22547 | 
            +
                          "typeTokenRange": {
         | 
| 22548 | 
            +
                            "startIndex": 1,
         | 
| 22549 | 
            +
                            "endIndex": 6
         | 
| 22550 | 
            +
                          }
         | 
| 22551 | 
            +
                        },
         | 
| 22552 | 
            +
                        {
         | 
| 22553 | 
            +
                          "kind": "TypeAlias",
         | 
| 22554 | 
            +
                          "canonicalReference": "server!HYTOPIA.FaceCompleteCallback:type",
         | 
| 22555 | 
            +
                          "docComment": "/**\n * A callback function called when the entity associated with the SimpleCharacterController finishes rotating and is now facing a target coordinate.\n *\n * @param endRotation - The rotation of the entity after it has finished rotating.\n *\n * @public\n */\n",
         | 
| 22556 | 
            +
                          "excerptTokens": [
         | 
| 22557 | 
            +
                            {
         | 
| 22558 | 
            +
                              "kind": "Content",
         | 
| 22559 | 
            +
                              "text": "export type FaceCompleteCallback = "
         | 
| 22560 | 
            +
                            },
         | 
| 22561 | 
            +
                            {
         | 
| 22562 | 
            +
                              "kind": "Content",
         | 
| 22563 | 
            +
                              "text": "(endRotation: "
         | 
| 22564 | 
            +
                            },
         | 
| 22565 | 
            +
                            {
         | 
| 22566 | 
            +
                              "kind": "Reference",
         | 
| 22567 | 
            +
                              "text": "Rotation",
         | 
| 22568 | 
            +
                              "canonicalReference": "server!Rotation:interface"
         | 
| 22569 | 
            +
                            },
         | 
| 22570 | 
            +
                            {
         | 
| 22571 | 
            +
                              "kind": "Content",
         | 
| 22572 | 
            +
                              "text": ") => void"
         | 
| 22573 | 
            +
                            },
         | 
| 22574 | 
            +
                            {
         | 
| 22575 | 
            +
                              "kind": "Content",
         | 
| 22576 | 
            +
                              "text": ";"
         | 
| 22577 | 
            +
                            }
         | 
| 22578 | 
            +
                          ],
         | 
| 22579 | 
            +
                          "fileUrlPath": "src/world/entities/controllers/SimpleCharacterController.ts",
         | 
| 22580 | 
            +
                          "releaseTag": "Public",
         | 
| 22581 | 
            +
                          "name": "FaceCompleteCallback",
         | 
| 22582 | 
            +
                          "typeTokenRange": {
         | 
| 22583 | 
            +
                            "startIndex": 1,
         | 
| 22584 | 
            +
                            "endIndex": 4
         | 
| 22585 | 
            +
                          }
         | 
| 22586 | 
            +
                        },
         | 
| 22587 | 
            +
                        {
         | 
| 22588 | 
            +
                          "kind": "TypeAlias",
         | 
| 22589 | 
            +
                          "canonicalReference": "server!HYTOPIA.FaceOptions:type",
         | 
| 22590 | 
            +
                          "docComment": "/**\n * Options for the {@link SimpleCharacterController.face} method.\n *\n * @public\n */\n",
         | 
| 22591 | 
            +
                          "excerptTokens": [
         | 
| 22592 | 
            +
                            {
         | 
| 22593 | 
            +
                              "kind": "Content",
         | 
| 22594 | 
            +
                              "text": "export type FaceOptions = "
         | 
| 22595 | 
            +
                            },
         | 
| 22596 | 
            +
                            {
         | 
| 22597 | 
            +
                              "kind": "Content",
         | 
| 22598 | 
            +
                              "text": "{\n    faceCallback?: "
         | 
| 22599 | 
            +
                            },
         | 
| 22600 | 
            +
                            {
         | 
| 22601 | 
            +
                              "kind": "Reference",
         | 
| 22602 | 
            +
                              "text": "FaceCallback",
         | 
| 22603 | 
            +
                              "canonicalReference": "server!FaceCallback:type"
         | 
| 22604 | 
            +
                            },
         | 
| 22605 | 
            +
                            {
         | 
| 22606 | 
            +
                              "kind": "Content",
         | 
| 22607 | 
            +
                              "text": ";\n    faceCompleteCallback?: "
         | 
| 22608 | 
            +
                            },
         | 
| 22609 | 
            +
                            {
         | 
| 22610 | 
            +
                              "kind": "Reference",
         | 
| 22611 | 
            +
                              "text": "FaceCompleteCallback",
         | 
| 22612 | 
            +
                              "canonicalReference": "server!FaceCompleteCallback:type"
         | 
| 22613 | 
            +
                            },
         | 
| 22614 | 
            +
                            {
         | 
| 22615 | 
            +
                              "kind": "Content",
         | 
| 22616 | 
            +
                              "text": ";\n}"
         | 
| 22617 | 
            +
                            },
         | 
| 22618 | 
            +
                            {
         | 
| 22619 | 
            +
                              "kind": "Content",
         | 
| 22620 | 
            +
                              "text": ";"
         | 
| 22621 | 
            +
                            }
         | 
| 22622 | 
            +
                          ],
         | 
| 22623 | 
            +
                          "fileUrlPath": "src/world/entities/controllers/SimpleCharacterController.ts",
         | 
| 22624 | 
            +
                          "releaseTag": "Public",
         | 
| 22625 | 
            +
                          "name": "FaceOptions",
         | 
| 22626 | 
            +
                          "typeTokenRange": {
         | 
| 22627 | 
            +
                            "startIndex": 1,
         | 
| 22628 | 
            +
                            "endIndex": 6
         | 
| 22629 | 
            +
                          }
         | 
| 22630 | 
            +
                        },
         | 
| 22567 22631 | 
             
                        {
         | 
| 22568 22632 | 
             
                          "kind": "Class",
         | 
| 22569 22633 | 
             
                          "canonicalReference": "server!HYTOPIA.GameServer:class",
         | 
| @@ -22879,6 +22943,129 @@ | |
| 22879 22943 | 
             
                            }
         | 
| 22880 22944 | 
             
                          ]
         | 
| 22881 22945 | 
             
                        },
         | 
| 22946 | 
            +
                        {
         | 
| 22947 | 
            +
                          "kind": "TypeAlias",
         | 
| 22948 | 
            +
                          "canonicalReference": "server!HYTOPIA.MoveCallback:type",
         | 
| 22949 | 
            +
                          "docComment": "/**\n * A callback function called when the entity associated with the SimpleCharacterController updates its translation as it is attempting to move to a target coordinate.\n *\n * @param currentTranslation - The current translation of the entity.\n *\n * @param targetTranslation - The target translation of the entity.\n *\n * @public\n */\n",
         | 
| 22950 | 
            +
                          "excerptTokens": [
         | 
| 22951 | 
            +
                            {
         | 
| 22952 | 
            +
                              "kind": "Content",
         | 
| 22953 | 
            +
                              "text": "export type MoveCallback = "
         | 
| 22954 | 
            +
                            },
         | 
| 22955 | 
            +
                            {
         | 
| 22956 | 
            +
                              "kind": "Content",
         | 
| 22957 | 
            +
                              "text": "(currentTranslation: "
         | 
| 22958 | 
            +
                            },
         | 
| 22959 | 
            +
                            {
         | 
| 22960 | 
            +
                              "kind": "Reference",
         | 
| 22961 | 
            +
                              "text": "Vector3",
         | 
| 22962 | 
            +
                              "canonicalReference": "server!Vector3:interface"
         | 
| 22963 | 
            +
                            },
         | 
| 22964 | 
            +
                            {
         | 
| 22965 | 
            +
                              "kind": "Content",
         | 
| 22966 | 
            +
                              "text": ", targetTranslation: "
         | 
| 22967 | 
            +
                            },
         | 
| 22968 | 
            +
                            {
         | 
| 22969 | 
            +
                              "kind": "Reference",
         | 
| 22970 | 
            +
                              "text": "Vector3",
         | 
| 22971 | 
            +
                              "canonicalReference": "server!Vector3:interface"
         | 
| 22972 | 
            +
                            },
         | 
| 22973 | 
            +
                            {
         | 
| 22974 | 
            +
                              "kind": "Content",
         | 
| 22975 | 
            +
                              "text": ") => void"
         | 
| 22976 | 
            +
                            },
         | 
| 22977 | 
            +
                            {
         | 
| 22978 | 
            +
                              "kind": "Content",
         | 
| 22979 | 
            +
                              "text": ";"
         | 
| 22980 | 
            +
                            }
         | 
| 22981 | 
            +
                          ],
         | 
| 22982 | 
            +
                          "fileUrlPath": "src/world/entities/controllers/SimpleCharacterController.ts",
         | 
| 22983 | 
            +
                          "releaseTag": "Public",
         | 
| 22984 | 
            +
                          "name": "MoveCallback",
         | 
| 22985 | 
            +
                          "typeTokenRange": {
         | 
| 22986 | 
            +
                            "startIndex": 1,
         | 
| 22987 | 
            +
                            "endIndex": 6
         | 
| 22988 | 
            +
                          }
         | 
| 22989 | 
            +
                        },
         | 
| 22990 | 
            +
                        {
         | 
| 22991 | 
            +
                          "kind": "TypeAlias",
         | 
| 22992 | 
            +
                          "canonicalReference": "server!HYTOPIA.MoveCompleteCallback:type",
         | 
| 22993 | 
            +
                          "docComment": "/**\n * A callback function called when the entity associated with the SimpleCharacterController reaches the target coordinate. An entity must reach the x,y,z coordinate for the callback to be called.\n *\n * @param endTranslation - The translation of the entity after it has finished moving.\n *\n * @public\n */\n",
         | 
| 22994 | 
            +
                          "excerptTokens": [
         | 
| 22995 | 
            +
                            {
         | 
| 22996 | 
            +
                              "kind": "Content",
         | 
| 22997 | 
            +
                              "text": "export type MoveCompleteCallback = "
         | 
| 22998 | 
            +
                            },
         | 
| 22999 | 
            +
                            {
         | 
| 23000 | 
            +
                              "kind": "Content",
         | 
| 23001 | 
            +
                              "text": "(endTranslation: "
         | 
| 23002 | 
            +
                            },
         | 
| 23003 | 
            +
                            {
         | 
| 23004 | 
            +
                              "kind": "Reference",
         | 
| 23005 | 
            +
                              "text": "Vector3",
         | 
| 23006 | 
            +
                              "canonicalReference": "server!Vector3:interface"
         | 
| 23007 | 
            +
                            },
         | 
| 23008 | 
            +
                            {
         | 
| 23009 | 
            +
                              "kind": "Content",
         | 
| 23010 | 
            +
                              "text": ") => void"
         | 
| 23011 | 
            +
                            },
         | 
| 23012 | 
            +
                            {
         | 
| 23013 | 
            +
                              "kind": "Content",
         | 
| 23014 | 
            +
                              "text": ";"
         | 
| 23015 | 
            +
                            }
         | 
| 23016 | 
            +
                          ],
         | 
| 23017 | 
            +
                          "fileUrlPath": "src/world/entities/controllers/SimpleCharacterController.ts",
         | 
| 23018 | 
            +
                          "releaseTag": "Public",
         | 
| 23019 | 
            +
                          "name": "MoveCompleteCallback",
         | 
| 23020 | 
            +
                          "typeTokenRange": {
         | 
| 23021 | 
            +
                            "startIndex": 1,
         | 
| 23022 | 
            +
                            "endIndex": 4
         | 
| 23023 | 
            +
                          }
         | 
| 23024 | 
            +
                        },
         | 
| 23025 | 
            +
                        {
         | 
| 23026 | 
            +
                          "kind": "TypeAlias",
         | 
| 23027 | 
            +
                          "canonicalReference": "server!HYTOPIA.MoveOptions:type",
         | 
| 23028 | 
            +
                          "docComment": "/**\n * Options for the {@link SimpleCharacterController.move} method.\n *\n * @public\n */\n",
         | 
| 23029 | 
            +
                          "excerptTokens": [
         | 
| 23030 | 
            +
                            {
         | 
| 23031 | 
            +
                              "kind": "Content",
         | 
| 23032 | 
            +
                              "text": "export type MoveOptions = "
         | 
| 23033 | 
            +
                            },
         | 
| 23034 | 
            +
                            {
         | 
| 23035 | 
            +
                              "kind": "Content",
         | 
| 23036 | 
            +
                              "text": "{\n    moveCallback?: "
         | 
| 23037 | 
            +
                            },
         | 
| 23038 | 
            +
                            {
         | 
| 23039 | 
            +
                              "kind": "Reference",
         | 
| 23040 | 
            +
                              "text": "MoveCallback",
         | 
| 23041 | 
            +
                              "canonicalReference": "server!MoveCallback:type"
         | 
| 23042 | 
            +
                            },
         | 
| 23043 | 
            +
                            {
         | 
| 23044 | 
            +
                              "kind": "Content",
         | 
| 23045 | 
            +
                              "text": ";\n    moveCompleteCallback?: "
         | 
| 23046 | 
            +
                            },
         | 
| 23047 | 
            +
                            {
         | 
| 23048 | 
            +
                              "kind": "Reference",
         | 
| 23049 | 
            +
                              "text": "MoveCompleteCallback",
         | 
| 23050 | 
            +
                              "canonicalReference": "server!MoveCompleteCallback:type"
         | 
| 23051 | 
            +
                            },
         | 
| 23052 | 
            +
                            {
         | 
| 23053 | 
            +
                              "kind": "Content",
         | 
| 23054 | 
            +
                              "text": ";\n}"
         | 
| 23055 | 
            +
                            },
         | 
| 23056 | 
            +
                            {
         | 
| 23057 | 
            +
                              "kind": "Content",
         | 
| 23058 | 
            +
                              "text": ";"
         | 
| 23059 | 
            +
                            }
         | 
| 23060 | 
            +
                          ],
         | 
| 23061 | 
            +
                          "fileUrlPath": "src/world/entities/controllers/SimpleCharacterController.ts",
         | 
| 23062 | 
            +
                          "releaseTag": "Public",
         | 
| 23063 | 
            +
                          "name": "MoveOptions",
         | 
| 23064 | 
            +
                          "typeTokenRange": {
         | 
| 23065 | 
            +
                            "startIndex": 1,
         | 
| 23066 | 
            +
                            "endIndex": 6
         | 
| 23067 | 
            +
                          }
         | 
| 23068 | 
            +
                        },
         | 
| 22882 23069 | 
             
                        {
         | 
| 22883 23070 | 
             
                          "kind": "Class",
         | 
| 22884 23071 | 
             
                          "canonicalReference": "server!HYTOPIA.Player:class",
         | 
| @@ -28070,6 +28257,202 @@ | |
| 28070 28257 | 
             
                          ],
         | 
| 28071 28258 | 
             
                          "extendsTokenRanges": []
         | 
| 28072 28259 | 
             
                        },
         | 
| 28260 | 
            +
                        {
         | 
| 28261 | 
            +
                          "kind": "Class",
         | 
| 28262 | 
            +
                          "canonicalReference": "server!HYTOPIA.SimpleCharacterController:class",
         | 
| 28263 | 
            +
                          "docComment": "/**\n * A simple character controller with basic movement functions.\n *\n * @remarks\n *\n * This class implements simple movement methods that serve as a way to add realistic movement and rotational facing functionality to an entity. This is also a great base to extend for your own more complex character controller that implements things like pathfinding.\n *\n * @example\n * ```typescript\n * // Create a custom character controller for myEntity, prior to spawning it.\n * myEntity.createCustomCharacterController = () => {\n *   return new SimpleCharacterController(myEntity);\n * };\n *\n * // Spawn the entity in the world.\n * myEntity.spawn(world, { x: 53, y: 10, z: 23 });\n *\n * // Move the entity at a speed of 4 blocks\n * // per second to the coordinate (10, 1, 10).\n * // console.log when we reach the target.\n * myEntity.characterController.move({ x: 10, y: 1, z: 10 }, 4, {\n *   moveCompleteCallback: endPosition => {\n *     console.log('Finished moving to', endPosition);\n *   },\n * });\n * ```\n *\n * @public\n */\n",
         | 
| 28264 | 
            +
                          "excerptTokens": [
         | 
| 28265 | 
            +
                            {
         | 
| 28266 | 
            +
                              "kind": "Content",
         | 
| 28267 | 
            +
                              "text": "export default class SimpleCharacterController extends "
         | 
| 28268 | 
            +
                            },
         | 
| 28269 | 
            +
                            {
         | 
| 28270 | 
            +
                              "kind": "Reference",
         | 
| 28271 | 
            +
                              "text": "BaseCharacterController",
         | 
| 28272 | 
            +
                              "canonicalReference": "server!BaseCharacterController:class"
         | 
| 28273 | 
            +
                            },
         | 
| 28274 | 
            +
                            {
         | 
| 28275 | 
            +
                              "kind": "Content",
         | 
| 28276 | 
            +
                              "text": " "
         | 
| 28277 | 
            +
                            }
         | 
| 28278 | 
            +
                          ],
         | 
| 28279 | 
            +
                          "fileUrlPath": "src/world/entities/controllers/SimpleCharacterController.ts",
         | 
| 28280 | 
            +
                          "releaseTag": "Public",
         | 
| 28281 | 
            +
                          "isAbstract": false,
         | 
| 28282 | 
            +
                          "name": "SimpleCharacterController",
         | 
| 28283 | 
            +
                          "preserveMemberOrder": false,
         | 
| 28284 | 
            +
                          "members": [
         | 
| 28285 | 
            +
                            {
         | 
| 28286 | 
            +
                              "kind": "Method",
         | 
| 28287 | 
            +
                              "canonicalReference": "server!HYTOPIA.SimpleCharacterController#face:member(1)",
         | 
| 28288 | 
            +
                              "docComment": "/**\n * Rotates the entity at a given speed to face a target coordinate.\n *\n * @remarks\n *\n * If this method is called while the entity is already attempting to face another target, the previous target will be ignored and the entity will start attempting to face the new target.\n *\n * @param target - The target coordinate to face.\n *\n * @param speed - The speed at which to rotate to the target coordinate.\n *\n * @param options - Additional options for the face operation, such as callbacks.\n */\n",
         | 
| 28289 | 
            +
                              "excerptTokens": [
         | 
| 28290 | 
            +
                                {
         | 
| 28291 | 
            +
                                  "kind": "Content",
         | 
| 28292 | 
            +
                                  "text": "face(target: "
         | 
| 28293 | 
            +
                                },
         | 
| 28294 | 
            +
                                {
         | 
| 28295 | 
            +
                                  "kind": "Reference",
         | 
| 28296 | 
            +
                                  "text": "Vector3",
         | 
| 28297 | 
            +
                                  "canonicalReference": "server!Vector3:interface"
         | 
| 28298 | 
            +
                                },
         | 
| 28299 | 
            +
                                {
         | 
| 28300 | 
            +
                                  "kind": "Content",
         | 
| 28301 | 
            +
                                  "text": ", speed: "
         | 
| 28302 | 
            +
                                },
         | 
| 28303 | 
            +
                                {
         | 
| 28304 | 
            +
                                  "kind": "Content",
         | 
| 28305 | 
            +
                                  "text": "number"
         | 
| 28306 | 
            +
                                },
         | 
| 28307 | 
            +
                                {
         | 
| 28308 | 
            +
                                  "kind": "Content",
         | 
| 28309 | 
            +
                                  "text": ", options?: "
         | 
| 28310 | 
            +
                                },
         | 
| 28311 | 
            +
                                {
         | 
| 28312 | 
            +
                                  "kind": "Reference",
         | 
| 28313 | 
            +
                                  "text": "FaceOptions",
         | 
| 28314 | 
            +
                                  "canonicalReference": "server!FaceOptions:type"
         | 
| 28315 | 
            +
                                },
         | 
| 28316 | 
            +
                                {
         | 
| 28317 | 
            +
                                  "kind": "Content",
         | 
| 28318 | 
            +
                                  "text": "): "
         | 
| 28319 | 
            +
                                },
         | 
| 28320 | 
            +
                                {
         | 
| 28321 | 
            +
                                  "kind": "Content",
         | 
| 28322 | 
            +
                                  "text": "void"
         | 
| 28323 | 
            +
                                },
         | 
| 28324 | 
            +
                                {
         | 
| 28325 | 
            +
                                  "kind": "Content",
         | 
| 28326 | 
            +
                                  "text": ";"
         | 
| 28327 | 
            +
                                }
         | 
| 28328 | 
            +
                              ],
         | 
| 28329 | 
            +
                              "isStatic": false,
         | 
| 28330 | 
            +
                              "returnTypeTokenRange": {
         | 
| 28331 | 
            +
                                "startIndex": 7,
         | 
| 28332 | 
            +
                                "endIndex": 8
         | 
| 28333 | 
            +
                              },
         | 
| 28334 | 
            +
                              "releaseTag": "Public",
         | 
| 28335 | 
            +
                              "isProtected": false,
         | 
| 28336 | 
            +
                              "overloadIndex": 1,
         | 
| 28337 | 
            +
                              "parameters": [
         | 
| 28338 | 
            +
                                {
         | 
| 28339 | 
            +
                                  "parameterName": "target",
         | 
| 28340 | 
            +
                                  "parameterTypeTokenRange": {
         | 
| 28341 | 
            +
                                    "startIndex": 1,
         | 
| 28342 | 
            +
                                    "endIndex": 2
         | 
| 28343 | 
            +
                                  },
         | 
| 28344 | 
            +
                                  "isOptional": false
         | 
| 28345 | 
            +
                                },
         | 
| 28346 | 
            +
                                {
         | 
| 28347 | 
            +
                                  "parameterName": "speed",
         | 
| 28348 | 
            +
                                  "parameterTypeTokenRange": {
         | 
| 28349 | 
            +
                                    "startIndex": 3,
         | 
| 28350 | 
            +
                                    "endIndex": 4
         | 
| 28351 | 
            +
                                  },
         | 
| 28352 | 
            +
                                  "isOptional": false
         | 
| 28353 | 
            +
                                },
         | 
| 28354 | 
            +
                                {
         | 
| 28355 | 
            +
                                  "parameterName": "options",
         | 
| 28356 | 
            +
                                  "parameterTypeTokenRange": {
         | 
| 28357 | 
            +
                                    "startIndex": 5,
         | 
| 28358 | 
            +
                                    "endIndex": 6
         | 
| 28359 | 
            +
                                  },
         | 
| 28360 | 
            +
                                  "isOptional": true
         | 
| 28361 | 
            +
                                }
         | 
| 28362 | 
            +
                              ],
         | 
| 28363 | 
            +
                              "isOptional": false,
         | 
| 28364 | 
            +
                              "isAbstract": false,
         | 
| 28365 | 
            +
                              "name": "face"
         | 
| 28366 | 
            +
                            },
         | 
| 28367 | 
            +
                            {
         | 
| 28368 | 
            +
                              "kind": "Method",
         | 
| 28369 | 
            +
                              "canonicalReference": "server!HYTOPIA.SimpleCharacterController#move:member(1)",
         | 
| 28370 | 
            +
                              "docComment": "/**\n * Moves the entity at a given speed in a straight line to a target coordinate.\n *\n * @remarks\n *\n * If this method is called while the entity is already attempting to move to another target, the previous target will be ignored and the entity will start attempting to move to the new target.\n *\n * @param target - The target coordinate to move to.\n *\n * @param speed - The speed at which to move to the target coordinate.\n *\n * @param options - Additional options for the move operation, such as callbacks.\n */\n",
         | 
| 28371 | 
            +
                              "excerptTokens": [
         | 
| 28372 | 
            +
                                {
         | 
| 28373 | 
            +
                                  "kind": "Content",
         | 
| 28374 | 
            +
                                  "text": "move(target: "
         | 
| 28375 | 
            +
                                },
         | 
| 28376 | 
            +
                                {
         | 
| 28377 | 
            +
                                  "kind": "Reference",
         | 
| 28378 | 
            +
                                  "text": "Vector3",
         | 
| 28379 | 
            +
                                  "canonicalReference": "server!Vector3:interface"
         | 
| 28380 | 
            +
                                },
         | 
| 28381 | 
            +
                                {
         | 
| 28382 | 
            +
                                  "kind": "Content",
         | 
| 28383 | 
            +
                                  "text": ", speed: "
         | 
| 28384 | 
            +
                                },
         | 
| 28385 | 
            +
                                {
         | 
| 28386 | 
            +
                                  "kind": "Content",
         | 
| 28387 | 
            +
                                  "text": "number"
         | 
| 28388 | 
            +
                                },
         | 
| 28389 | 
            +
                                {
         | 
| 28390 | 
            +
                                  "kind": "Content",
         | 
| 28391 | 
            +
                                  "text": ", options?: "
         | 
| 28392 | 
            +
                                },
         | 
| 28393 | 
            +
                                {
         | 
| 28394 | 
            +
                                  "kind": "Reference",
         | 
| 28395 | 
            +
                                  "text": "MoveOptions",
         | 
| 28396 | 
            +
                                  "canonicalReference": "server!MoveOptions:type"
         | 
| 28397 | 
            +
                                },
         | 
| 28398 | 
            +
                                {
         | 
| 28399 | 
            +
                                  "kind": "Content",
         | 
| 28400 | 
            +
                                  "text": "): "
         | 
| 28401 | 
            +
                                },
         | 
| 28402 | 
            +
                                {
         | 
| 28403 | 
            +
                                  "kind": "Content",
         | 
| 28404 | 
            +
                                  "text": "void"
         | 
| 28405 | 
            +
                                },
         | 
| 28406 | 
            +
                                {
         | 
| 28407 | 
            +
                                  "kind": "Content",
         | 
| 28408 | 
            +
                                  "text": ";"
         | 
| 28409 | 
            +
                                }
         | 
| 28410 | 
            +
                              ],
         | 
| 28411 | 
            +
                              "isStatic": false,
         | 
| 28412 | 
            +
                              "returnTypeTokenRange": {
         | 
| 28413 | 
            +
                                "startIndex": 7,
         | 
| 28414 | 
            +
                                "endIndex": 8
         | 
| 28415 | 
            +
                              },
         | 
| 28416 | 
            +
                              "releaseTag": "Public",
         | 
| 28417 | 
            +
                              "isProtected": false,
         | 
| 28418 | 
            +
                              "overloadIndex": 1,
         | 
| 28419 | 
            +
                              "parameters": [
         | 
| 28420 | 
            +
                                {
         | 
| 28421 | 
            +
                                  "parameterName": "target",
         | 
| 28422 | 
            +
                                  "parameterTypeTokenRange": {
         | 
| 28423 | 
            +
                                    "startIndex": 1,
         | 
| 28424 | 
            +
                                    "endIndex": 2
         | 
| 28425 | 
            +
                                  },
         | 
| 28426 | 
            +
                                  "isOptional": false
         | 
| 28427 | 
            +
                                },
         | 
| 28428 | 
            +
                                {
         | 
| 28429 | 
            +
                                  "parameterName": "speed",
         | 
| 28430 | 
            +
                                  "parameterTypeTokenRange": {
         | 
| 28431 | 
            +
                                    "startIndex": 3,
         | 
| 28432 | 
            +
                                    "endIndex": 4
         | 
| 28433 | 
            +
                                  },
         | 
| 28434 | 
            +
                                  "isOptional": false
         | 
| 28435 | 
            +
                                },
         | 
| 28436 | 
            +
                                {
         | 
| 28437 | 
            +
                                  "parameterName": "options",
         | 
| 28438 | 
            +
                                  "parameterTypeTokenRange": {
         | 
| 28439 | 
            +
                                    "startIndex": 5,
         | 
| 28440 | 
            +
                                    "endIndex": 6
         | 
| 28441 | 
            +
                                  },
         | 
| 28442 | 
            +
                                  "isOptional": true
         | 
| 28443 | 
            +
                                }
         | 
| 28444 | 
            +
                              ],
         | 
| 28445 | 
            +
                              "isOptional": false,
         | 
| 28446 | 
            +
                              "isAbstract": false,
         | 
| 28447 | 
            +
                              "name": "move"
         | 
| 28448 | 
            +
                            }
         | 
| 28449 | 
            +
                          ],
         | 
| 28450 | 
            +
                          "extendsTokenRange": {
         | 
| 28451 | 
            +
                            "startIndex": 1,
         | 
| 28452 | 
            +
                            "endIndex": 2
         | 
| 28453 | 
            +
                          },
         | 
| 28454 | 
            +
                          "implementsTokenRanges": []
         | 
| 28455 | 
            +
                        },
         | 
| 28073 28456 | 
             
                        {
         | 
| 28074 28457 | 
             
                          "kind": "Class",
         | 
| 28075 28458 | 
             
                          "canonicalReference": "server!HYTOPIA.Simulation:class",
         | 
| @@ -30117,6 +30500,129 @@ | |
| 30117 30500 | 
             
                        }
         | 
| 30118 30501 | 
             
                      ]
         | 
| 30119 30502 | 
             
                    },
         | 
| 30503 | 
            +
                    {
         | 
| 30504 | 
            +
                      "kind": "TypeAlias",
         | 
| 30505 | 
            +
                      "canonicalReference": "server!MoveCallback:type",
         | 
| 30506 | 
            +
                      "docComment": "/**\n * A callback function called when the entity associated with the SimpleCharacterController updates its translation as it is attempting to move to a target coordinate.\n *\n * @param currentTranslation - The current translation of the entity.\n *\n * @param targetTranslation - The target translation of the entity.\n *\n * @public\n */\n",
         | 
| 30507 | 
            +
                      "excerptTokens": [
         | 
| 30508 | 
            +
                        {
         | 
| 30509 | 
            +
                          "kind": "Content",
         | 
| 30510 | 
            +
                          "text": "export type MoveCallback = "
         | 
| 30511 | 
            +
                        },
         | 
| 30512 | 
            +
                        {
         | 
| 30513 | 
            +
                          "kind": "Content",
         | 
| 30514 | 
            +
                          "text": "(currentTranslation: "
         | 
| 30515 | 
            +
                        },
         | 
| 30516 | 
            +
                        {
         | 
| 30517 | 
            +
                          "kind": "Reference",
         | 
| 30518 | 
            +
                          "text": "Vector3",
         | 
| 30519 | 
            +
                          "canonicalReference": "server!Vector3:interface"
         | 
| 30520 | 
            +
                        },
         | 
| 30521 | 
            +
                        {
         | 
| 30522 | 
            +
                          "kind": "Content",
         | 
| 30523 | 
            +
                          "text": ", targetTranslation: "
         | 
| 30524 | 
            +
                        },
         | 
| 30525 | 
            +
                        {
         | 
| 30526 | 
            +
                          "kind": "Reference",
         | 
| 30527 | 
            +
                          "text": "Vector3",
         | 
| 30528 | 
            +
                          "canonicalReference": "server!Vector3:interface"
         | 
| 30529 | 
            +
                        },
         | 
| 30530 | 
            +
                        {
         | 
| 30531 | 
            +
                          "kind": "Content",
         | 
| 30532 | 
            +
                          "text": ") => void"
         | 
| 30533 | 
            +
                        },
         | 
| 30534 | 
            +
                        {
         | 
| 30535 | 
            +
                          "kind": "Content",
         | 
| 30536 | 
            +
                          "text": ";"
         | 
| 30537 | 
            +
                        }
         | 
| 30538 | 
            +
                      ],
         | 
| 30539 | 
            +
                      "fileUrlPath": "src/world/entities/controllers/SimpleCharacterController.ts",
         | 
| 30540 | 
            +
                      "releaseTag": "Public",
         | 
| 30541 | 
            +
                      "name": "MoveCallback",
         | 
| 30542 | 
            +
                      "typeTokenRange": {
         | 
| 30543 | 
            +
                        "startIndex": 1,
         | 
| 30544 | 
            +
                        "endIndex": 6
         | 
| 30545 | 
            +
                      }
         | 
| 30546 | 
            +
                    },
         | 
| 30547 | 
            +
                    {
         | 
| 30548 | 
            +
                      "kind": "TypeAlias",
         | 
| 30549 | 
            +
                      "canonicalReference": "server!MoveCompleteCallback:type",
         | 
| 30550 | 
            +
                      "docComment": "/**\n * A callback function called when the entity associated with the SimpleCharacterController reaches the target coordinate. An entity must reach the x,y,z coordinate for the callback to be called.\n *\n * @param endTranslation - The translation of the entity after it has finished moving.\n *\n * @public\n */\n",
         | 
| 30551 | 
            +
                      "excerptTokens": [
         | 
| 30552 | 
            +
                        {
         | 
| 30553 | 
            +
                          "kind": "Content",
         | 
| 30554 | 
            +
                          "text": "export type MoveCompleteCallback = "
         | 
| 30555 | 
            +
                        },
         | 
| 30556 | 
            +
                        {
         | 
| 30557 | 
            +
                          "kind": "Content",
         | 
| 30558 | 
            +
                          "text": "(endTranslation: "
         | 
| 30559 | 
            +
                        },
         | 
| 30560 | 
            +
                        {
         | 
| 30561 | 
            +
                          "kind": "Reference",
         | 
| 30562 | 
            +
                          "text": "Vector3",
         | 
| 30563 | 
            +
                          "canonicalReference": "server!Vector3:interface"
         | 
| 30564 | 
            +
                        },
         | 
| 30565 | 
            +
                        {
         | 
| 30566 | 
            +
                          "kind": "Content",
         | 
| 30567 | 
            +
                          "text": ") => void"
         | 
| 30568 | 
            +
                        },
         | 
| 30569 | 
            +
                        {
         | 
| 30570 | 
            +
                          "kind": "Content",
         | 
| 30571 | 
            +
                          "text": ";"
         | 
| 30572 | 
            +
                        }
         | 
| 30573 | 
            +
                      ],
         | 
| 30574 | 
            +
                      "fileUrlPath": "src/world/entities/controllers/SimpleCharacterController.ts",
         | 
| 30575 | 
            +
                      "releaseTag": "Public",
         | 
| 30576 | 
            +
                      "name": "MoveCompleteCallback",
         | 
| 30577 | 
            +
                      "typeTokenRange": {
         | 
| 30578 | 
            +
                        "startIndex": 1,
         | 
| 30579 | 
            +
                        "endIndex": 4
         | 
| 30580 | 
            +
                      }
         | 
| 30581 | 
            +
                    },
         | 
| 30582 | 
            +
                    {
         | 
| 30583 | 
            +
                      "kind": "TypeAlias",
         | 
| 30584 | 
            +
                      "canonicalReference": "server!MoveOptions:type",
         | 
| 30585 | 
            +
                      "docComment": "/**\n * Options for the {@link SimpleCharacterController.move} method.\n *\n * @public\n */\n",
         | 
| 30586 | 
            +
                      "excerptTokens": [
         | 
| 30587 | 
            +
                        {
         | 
| 30588 | 
            +
                          "kind": "Content",
         | 
| 30589 | 
            +
                          "text": "export type MoveOptions = "
         | 
| 30590 | 
            +
                        },
         | 
| 30591 | 
            +
                        {
         | 
| 30592 | 
            +
                          "kind": "Content",
         | 
| 30593 | 
            +
                          "text": "{\n    moveCallback?: "
         | 
| 30594 | 
            +
                        },
         | 
| 30595 | 
            +
                        {
         | 
| 30596 | 
            +
                          "kind": "Reference",
         | 
| 30597 | 
            +
                          "text": "MoveCallback",
         | 
| 30598 | 
            +
                          "canonicalReference": "server!MoveCallback:type"
         | 
| 30599 | 
            +
                        },
         | 
| 30600 | 
            +
                        {
         | 
| 30601 | 
            +
                          "kind": "Content",
         | 
| 30602 | 
            +
                          "text": ";\n    moveCompleteCallback?: "
         | 
| 30603 | 
            +
                        },
         | 
| 30604 | 
            +
                        {
         | 
| 30605 | 
            +
                          "kind": "Reference",
         | 
| 30606 | 
            +
                          "text": "MoveCompleteCallback",
         | 
| 30607 | 
            +
                          "canonicalReference": "server!MoveCompleteCallback:type"
         | 
| 30608 | 
            +
                        },
         | 
| 30609 | 
            +
                        {
         | 
| 30610 | 
            +
                          "kind": "Content",
         | 
| 30611 | 
            +
                          "text": ";\n}"
         | 
| 30612 | 
            +
                        },
         | 
| 30613 | 
            +
                        {
         | 
| 30614 | 
            +
                          "kind": "Content",
         | 
| 30615 | 
            +
                          "text": ";"
         | 
| 30616 | 
            +
                        }
         | 
| 30617 | 
            +
                      ],
         | 
| 30618 | 
            +
                      "fileUrlPath": "src/world/entities/controllers/SimpleCharacterController.ts",
         | 
| 30619 | 
            +
                      "releaseTag": "Public",
         | 
| 30620 | 
            +
                      "name": "MoveOptions",
         | 
| 30621 | 
            +
                      "typeTokenRange": {
         | 
| 30622 | 
            +
                        "startIndex": 1,
         | 
| 30623 | 
            +
                        "endIndex": 6
         | 
| 30624 | 
            +
                      }
         | 
| 30625 | 
            +
                    },
         | 
| 30120 30626 | 
             
                    {
         | 
| 30121 30627 | 
             
                      "kind": "Class",
         | 
| 30122 30628 | 
             
                      "canonicalReference": "server!Player:class",
         | 
| @@ -35308,6 +35814,202 @@ | |
| 35308 35814 | 
             
                      ],
         | 
| 35309 35815 | 
             
                      "extendsTokenRanges": []
         | 
| 35310 35816 | 
             
                    },
         | 
| 35817 | 
            +
                    {
         | 
| 35818 | 
            +
                      "kind": "Class",
         | 
| 35819 | 
            +
                      "canonicalReference": "server!SimpleCharacterController:class",
         | 
| 35820 | 
            +
                      "docComment": "/**\n * A simple character controller with basic movement functions.\n *\n * @remarks\n *\n * This class implements simple movement methods that serve as a way to add realistic movement and rotational facing functionality to an entity. This is also a great base to extend for your own more complex character controller that implements things like pathfinding.\n *\n * @example\n * ```typescript\n * // Create a custom character controller for myEntity, prior to spawning it.\n * myEntity.createCustomCharacterController = () => {\n *   return new SimpleCharacterController(myEntity);\n * };\n *\n * // Spawn the entity in the world.\n * myEntity.spawn(world, { x: 53, y: 10, z: 23 });\n *\n * // Move the entity at a speed of 4 blocks\n * // per second to the coordinate (10, 1, 10).\n * // console.log when we reach the target.\n * myEntity.characterController.move({ x: 10, y: 1, z: 10 }, 4, {\n *   moveCompleteCallback: endPosition => {\n *     console.log('Finished moving to', endPosition);\n *   },\n * });\n * ```\n *\n * @public\n */\n",
         | 
| 35821 | 
            +
                      "excerptTokens": [
         | 
| 35822 | 
            +
                        {
         | 
| 35823 | 
            +
                          "kind": "Content",
         | 
| 35824 | 
            +
                          "text": "export default class SimpleCharacterController extends "
         | 
| 35825 | 
            +
                        },
         | 
| 35826 | 
            +
                        {
         | 
| 35827 | 
            +
                          "kind": "Reference",
         | 
| 35828 | 
            +
                          "text": "BaseCharacterController",
         | 
| 35829 | 
            +
                          "canonicalReference": "server!BaseCharacterController:class"
         | 
| 35830 | 
            +
                        },
         | 
| 35831 | 
            +
                        {
         | 
| 35832 | 
            +
                          "kind": "Content",
         | 
| 35833 | 
            +
                          "text": " "
         | 
| 35834 | 
            +
                        }
         | 
| 35835 | 
            +
                      ],
         | 
| 35836 | 
            +
                      "fileUrlPath": "src/world/entities/controllers/SimpleCharacterController.ts",
         | 
| 35837 | 
            +
                      "releaseTag": "Public",
         | 
| 35838 | 
            +
                      "isAbstract": false,
         | 
| 35839 | 
            +
                      "name": "SimpleCharacterController",
         | 
| 35840 | 
            +
                      "preserveMemberOrder": false,
         | 
| 35841 | 
            +
                      "members": [
         | 
| 35842 | 
            +
                        {
         | 
| 35843 | 
            +
                          "kind": "Method",
         | 
| 35844 | 
            +
                          "canonicalReference": "server!SimpleCharacterController#face:member(1)",
         | 
| 35845 | 
            +
                          "docComment": "/**\n * Rotates the entity at a given speed to face a target coordinate.\n *\n * @remarks\n *\n * If this method is called while the entity is already attempting to face another target, the previous target will be ignored and the entity will start attempting to face the new target.\n *\n * @param target - The target coordinate to face.\n *\n * @param speed - The speed at which to rotate to the target coordinate.\n *\n * @param options - Additional options for the face operation, such as callbacks.\n */\n",
         | 
| 35846 | 
            +
                          "excerptTokens": [
         | 
| 35847 | 
            +
                            {
         | 
| 35848 | 
            +
                              "kind": "Content",
         | 
| 35849 | 
            +
                              "text": "face(target: "
         | 
| 35850 | 
            +
                            },
         | 
| 35851 | 
            +
                            {
         | 
| 35852 | 
            +
                              "kind": "Reference",
         | 
| 35853 | 
            +
                              "text": "Vector3",
         | 
| 35854 | 
            +
                              "canonicalReference": "server!Vector3:interface"
         | 
| 35855 | 
            +
                            },
         | 
| 35856 | 
            +
                            {
         | 
| 35857 | 
            +
                              "kind": "Content",
         | 
| 35858 | 
            +
                              "text": ", speed: "
         | 
| 35859 | 
            +
                            },
         | 
| 35860 | 
            +
                            {
         | 
| 35861 | 
            +
                              "kind": "Content",
         | 
| 35862 | 
            +
                              "text": "number"
         | 
| 35863 | 
            +
                            },
         | 
| 35864 | 
            +
                            {
         | 
| 35865 | 
            +
                              "kind": "Content",
         | 
| 35866 | 
            +
                              "text": ", options?: "
         | 
| 35867 | 
            +
                            },
         | 
| 35868 | 
            +
                            {
         | 
| 35869 | 
            +
                              "kind": "Reference",
         | 
| 35870 | 
            +
                              "text": "FaceOptions",
         | 
| 35871 | 
            +
                              "canonicalReference": "server!FaceOptions:type"
         | 
| 35872 | 
            +
                            },
         | 
| 35873 | 
            +
                            {
         | 
| 35874 | 
            +
                              "kind": "Content",
         | 
| 35875 | 
            +
                              "text": "): "
         | 
| 35876 | 
            +
                            },
         | 
| 35877 | 
            +
                            {
         | 
| 35878 | 
            +
                              "kind": "Content",
         | 
| 35879 | 
            +
                              "text": "void"
         | 
| 35880 | 
            +
                            },
         | 
| 35881 | 
            +
                            {
         | 
| 35882 | 
            +
                              "kind": "Content",
         | 
| 35883 | 
            +
                              "text": ";"
         | 
| 35884 | 
            +
                            }
         | 
| 35885 | 
            +
                          ],
         | 
| 35886 | 
            +
                          "isStatic": false,
         | 
| 35887 | 
            +
                          "returnTypeTokenRange": {
         | 
| 35888 | 
            +
                            "startIndex": 7,
         | 
| 35889 | 
            +
                            "endIndex": 8
         | 
| 35890 | 
            +
                          },
         | 
| 35891 | 
            +
                          "releaseTag": "Public",
         | 
| 35892 | 
            +
                          "isProtected": false,
         | 
| 35893 | 
            +
                          "overloadIndex": 1,
         | 
| 35894 | 
            +
                          "parameters": [
         | 
| 35895 | 
            +
                            {
         | 
| 35896 | 
            +
                              "parameterName": "target",
         | 
| 35897 | 
            +
                              "parameterTypeTokenRange": {
         | 
| 35898 | 
            +
                                "startIndex": 1,
         | 
| 35899 | 
            +
                                "endIndex": 2
         | 
| 35900 | 
            +
                              },
         | 
| 35901 | 
            +
                              "isOptional": false
         | 
| 35902 | 
            +
                            },
         | 
| 35903 | 
            +
                            {
         | 
| 35904 | 
            +
                              "parameterName": "speed",
         | 
| 35905 | 
            +
                              "parameterTypeTokenRange": {
         | 
| 35906 | 
            +
                                "startIndex": 3,
         | 
| 35907 | 
            +
                                "endIndex": 4
         | 
| 35908 | 
            +
                              },
         | 
| 35909 | 
            +
                              "isOptional": false
         | 
| 35910 | 
            +
                            },
         | 
| 35911 | 
            +
                            {
         | 
| 35912 | 
            +
                              "parameterName": "options",
         | 
| 35913 | 
            +
                              "parameterTypeTokenRange": {
         | 
| 35914 | 
            +
                                "startIndex": 5,
         | 
| 35915 | 
            +
                                "endIndex": 6
         | 
| 35916 | 
            +
                              },
         | 
| 35917 | 
            +
                              "isOptional": true
         | 
| 35918 | 
            +
                            }
         | 
| 35919 | 
            +
                          ],
         | 
| 35920 | 
            +
                          "isOptional": false,
         | 
| 35921 | 
            +
                          "isAbstract": false,
         | 
| 35922 | 
            +
                          "name": "face"
         | 
| 35923 | 
            +
                        },
         | 
| 35924 | 
            +
                        {
         | 
| 35925 | 
            +
                          "kind": "Method",
         | 
| 35926 | 
            +
                          "canonicalReference": "server!SimpleCharacterController#move:member(1)",
         | 
| 35927 | 
            +
                          "docComment": "/**\n * Moves the entity at a given speed in a straight line to a target coordinate.\n *\n * @remarks\n *\n * If this method is called while the entity is already attempting to move to another target, the previous target will be ignored and the entity will start attempting to move to the new target.\n *\n * @param target - The target coordinate to move to.\n *\n * @param speed - The speed at which to move to the target coordinate.\n *\n * @param options - Additional options for the move operation, such as callbacks.\n */\n",
         | 
| 35928 | 
            +
                          "excerptTokens": [
         | 
| 35929 | 
            +
                            {
         | 
| 35930 | 
            +
                              "kind": "Content",
         | 
| 35931 | 
            +
                              "text": "move(target: "
         | 
| 35932 | 
            +
                            },
         | 
| 35933 | 
            +
                            {
         | 
| 35934 | 
            +
                              "kind": "Reference",
         | 
| 35935 | 
            +
                              "text": "Vector3",
         | 
| 35936 | 
            +
                              "canonicalReference": "server!Vector3:interface"
         | 
| 35937 | 
            +
                            },
         | 
| 35938 | 
            +
                            {
         | 
| 35939 | 
            +
                              "kind": "Content",
         | 
| 35940 | 
            +
                              "text": ", speed: "
         | 
| 35941 | 
            +
                            },
         | 
| 35942 | 
            +
                            {
         | 
| 35943 | 
            +
                              "kind": "Content",
         | 
| 35944 | 
            +
                              "text": "number"
         | 
| 35945 | 
            +
                            },
         | 
| 35946 | 
            +
                            {
         | 
| 35947 | 
            +
                              "kind": "Content",
         | 
| 35948 | 
            +
                              "text": ", options?: "
         | 
| 35949 | 
            +
                            },
         | 
| 35950 | 
            +
                            {
         | 
| 35951 | 
            +
                              "kind": "Reference",
         | 
| 35952 | 
            +
                              "text": "MoveOptions",
         | 
| 35953 | 
            +
                              "canonicalReference": "server!MoveOptions:type"
         | 
| 35954 | 
            +
                            },
         | 
| 35955 | 
            +
                            {
         | 
| 35956 | 
            +
                              "kind": "Content",
         | 
| 35957 | 
            +
                              "text": "): "
         | 
| 35958 | 
            +
                            },
         | 
| 35959 | 
            +
                            {
         | 
| 35960 | 
            +
                              "kind": "Content",
         | 
| 35961 | 
            +
                              "text": "void"
         | 
| 35962 | 
            +
                            },
         | 
| 35963 | 
            +
                            {
         | 
| 35964 | 
            +
                              "kind": "Content",
         | 
| 35965 | 
            +
                              "text": ";"
         | 
| 35966 | 
            +
                            }
         | 
| 35967 | 
            +
                          ],
         | 
| 35968 | 
            +
                          "isStatic": false,
         | 
| 35969 | 
            +
                          "returnTypeTokenRange": {
         | 
| 35970 | 
            +
                            "startIndex": 7,
         | 
| 35971 | 
            +
                            "endIndex": 8
         | 
| 35972 | 
            +
                          },
         | 
| 35973 | 
            +
                          "releaseTag": "Public",
         | 
| 35974 | 
            +
                          "isProtected": false,
         | 
| 35975 | 
            +
                          "overloadIndex": 1,
         | 
| 35976 | 
            +
                          "parameters": [
         | 
| 35977 | 
            +
                            {
         | 
| 35978 | 
            +
                              "parameterName": "target",
         | 
| 35979 | 
            +
                              "parameterTypeTokenRange": {
         | 
| 35980 | 
            +
                                "startIndex": 1,
         | 
| 35981 | 
            +
                                "endIndex": 2
         | 
| 35982 | 
            +
                              },
         | 
| 35983 | 
            +
                              "isOptional": false
         | 
| 35984 | 
            +
                            },
         | 
| 35985 | 
            +
                            {
         | 
| 35986 | 
            +
                              "parameterName": "speed",
         | 
| 35987 | 
            +
                              "parameterTypeTokenRange": {
         | 
| 35988 | 
            +
                                "startIndex": 3,
         | 
| 35989 | 
            +
                                "endIndex": 4
         | 
| 35990 | 
            +
                              },
         | 
| 35991 | 
            +
                              "isOptional": false
         | 
| 35992 | 
            +
                            },
         | 
| 35993 | 
            +
                            {
         | 
| 35994 | 
            +
                              "parameterName": "options",
         | 
| 35995 | 
            +
                              "parameterTypeTokenRange": {
         | 
| 35996 | 
            +
                                "startIndex": 5,
         | 
| 35997 | 
            +
                                "endIndex": 6
         | 
| 35998 | 
            +
                              },
         | 
| 35999 | 
            +
                              "isOptional": true
         | 
| 36000 | 
            +
                            }
         | 
| 36001 | 
            +
                          ],
         | 
| 36002 | 
            +
                          "isOptional": false,
         | 
| 36003 | 
            +
                          "isAbstract": false,
         | 
| 36004 | 
            +
                          "name": "move"
         | 
| 36005 | 
            +
                        }
         | 
| 36006 | 
            +
                      ],
         | 
| 36007 | 
            +
                      "extendsTokenRange": {
         | 
| 36008 | 
            +
                        "startIndex": 1,
         | 
| 36009 | 
            +
                        "endIndex": 2
         | 
| 36010 | 
            +
                      },
         | 
| 36011 | 
            +
                      "implementsTokenRanges": []
         | 
| 36012 | 
            +
                    },
         | 
| 35311 36013 | 
             
                    {
         | 
| 35312 36014 | 
             
                      "kind": "Class",
         | 
| 35313 36015 | 
             
                      "canonicalReference": "server!Simulation:class",
         |