GHOST11111100 792ee63f22
Player Attributes (#578)
* feat: add max interaction distance functionality to Player class and Lua bindings

* feat: add getter and setter for max interaction distance in Player class documentation

* feat: add speed and gravity scale properties with corresponding getters and setters in Player class

* fix: replace deprecated __max and __min with std::max and std::min in setMaxInteractionDistance

* feat: add time scale functionality with getters and setters in World and Engine classes

* remove speed and gravity scale functions from player and world libraries

* remove time scale setting on world open and close

* rename interaction distance functions for consistency

* refactor: update interaction distance functions and remove time scale methods

* refactor: revert classes.lua to dev

* refactor: remove time scale functionality from Engine and World classes

* fix: Now I’ve definitely rolled back `classes.lua`.

* refactor: remove unused player attributes and clean up player class

* Update Player.hpp

removed unused methods from Player.cpp
2025-09-26 21:59:15 +03:00

145 lines
4.1 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Библиотека *player*
```lua
player.create(name: str) -> int
```
Создаёт игрока и возвращает его id.
```lua
player.delete(id: int)
```
Удаляет игрока по id.
```lua
player.get_pos(playerid: int) -> number, number, number
```
Возвращает x, y, z координаты игрока
```lua
player.set_pos(playerid: int, x: number, y: number, z: number)
```
Устанавливает x, y, z координаты игрока
```lua
player.get_vel(playerid: int) -> number, number, number
```
Возвращает x, y, z линейной скорости игрока
```lua
player.set_vel(playerid: int, x: number, y: number, z: number)
```
Устанавливает x, y, z линейной скорости игрока
```lua
player.get_rot(playerid: int, interpolated: bool=false) -> number, number, number
```
Возвращает x, y, z вращения камеры (в радианах). Интерполяция актуальна в случаях, когда частота обновления вращения ниже частоты кадров.
```lua
player.set_rot(playerid: int, x: number, y: number, z: number)
```
Устанавливает x, y вращения камеры (в радианах)
```lua
player.get_inventory(playerid: int) -> int, int
```
Возвращает id инвентаря игрока и индекс выбранного слота (от 0 до 9)
```lua
player.is_flight(playerid: int) -> bool
player.set_flight(playerid: int, bool)
```
Геттер и сеттер режима полета
```lua
player.is_noclip(playerid: int) -> bool
player.set_noclip(playerid: int, bool)
```
Геттер и сеттер noclip режима (выключенная коллизия игрока)
```lua
player.is_infinite_items(playerid: int) -> bool
player.set_infinite_items(playerid: int, bool)
```
Геттер и сеттер бесконечных предметов (не удаляются из инвентаря при использовании)
```lua
player.is_instant_destruction(playerid: int) -> bool
player.set_instant_destruction(playerid: int, bool)
```
Геттер и сеттер мнгновенного разрушения блоков при активации привязки `player.destroy`.
```lua
player.is_loading_chunks(playerid: int) -> bool
player.set_loading_chunks(playerid: int, bool)
```
Геттер и сеттер свойства, определяющего, прогружает ли игрок чанки вокруг.
```lua
player.get_interaction_distance(playerid: int) -> float
player.set_interaction_distance(playerid: int, distance: float)
```
Геттер и сеттер свойства, определяющего максимальную дистанцию взаимодействия.
```lua
player.set_spawnpoint(playerid: int, x: number, y: number, z: number)
player.get_spawnpoint(playerid: int) -> number, number, number
```
Сеттер и геттер точки спавна игрока
```lua
player.is_suspended(pid: int) -> bool
player.set_suspended(pid: int, suspended: bool)
```
Сеттер и геттер статуса "заморозки" игрока.
При "заморозке" удаляется сущность, а игрок выключается из симуляции мира.
```lua
player.set_name(playerid: int, name: str)
player.get_name(playerid: int) -> str
```
Сеттер и геттер имени игрока
```lua
player.set_selected_slot(playerid: int, slotid: int)
```
Устанавливает индекс выбранного слота
```lua
player.get_selected_block(playerid: int) -> x,y,z
```
Возвращает координаты выделенного блока, либо nil
```lua
player.get_selected_entity(playerid: int) -> int
```
Возвращает уникальный идентификатор сущности, на которую нацелен игрок
```lua
player.get_entity(playerid: int) -> int
```
Возвращает уникальный идентификатор сущности игрока