feat: version 2.0.0
This commit is contained in:
280
src/pyg2o/functions/game.py
Normal file
280
src/pyg2o/functions/game.py
Normal file
@@ -0,0 +1,280 @@
|
||||
from ..server import PythonWebsocketServer
|
||||
from ..call_repr import get_call_repr
|
||||
|
||||
async def getHostname() -> str:
|
||||
"""
|
||||
This function will get the hostname of the server.
|
||||
Original: [getHostname](https://gothicmultiplayerteam.gitlab.io/docs/0.3.0/script-reference/shared-functions/game/getHostname/)
|
||||
|
||||
## Declaration
|
||||
```python
|
||||
async def getHostname() -> str
|
||||
```
|
||||
## Returns
|
||||
`str`: Server hostname.
|
||||
|
||||
## Usage
|
||||
```python
|
||||
import g2o
|
||||
|
||||
@g2o.event('onInit')
|
||||
def evtInit(**kwargs):
|
||||
print('Server hostname:', g2o.getHostname())
|
||||
```
|
||||
"""
|
||||
|
||||
data = f'return {get_call_repr()}'
|
||||
|
||||
server = await PythonWebsocketServer.get_server()
|
||||
result = await server.make_request(data)
|
||||
return result
|
||||
|
||||
|
||||
|
||||
async def getMaxSlots() -> int:
|
||||
"""
|
||||
This function will get the max number of slots available on the server.
|
||||
Original: [getMaxSlots](https://gothicmultiplayerteam.gitlab.io/docs/0.3.0/script-reference/shared-functions/game/getMaxSlots/)
|
||||
|
||||
## Declaration
|
||||
```python
|
||||
async def getMaxSlots() -> int
|
||||
```
|
||||
## Returns
|
||||
`int`: Max slots number on the server.
|
||||
|
||||
## Usage
|
||||
```python
|
||||
import g2o
|
||||
|
||||
@g2o.event('onInit')
|
||||
def evtInit(**kwargs):
|
||||
print('Server max slots:', g2o.getMaxSlots())
|
||||
```
|
||||
"""
|
||||
data = f'return {get_call_repr()}'
|
||||
|
||||
server = await PythonWebsocketServer.get_server()
|
||||
result = await server.make_request(data)
|
||||
return result
|
||||
|
||||
async def getPlayersCount() -> int:
|
||||
"""
|
||||
This function will get the max number of slots available on the server.
|
||||
Original: [getPlayersCount](https://gothicmultiplayerteam.gitlab.io/docs/0.3.0/script-reference/shared-functions/game/getPlayersCount/)
|
||||
|
||||
## Declaration
|
||||
```python
|
||||
async def getPlayersCount() -> int
|
||||
```
|
||||
## Returns
|
||||
`int`: Number of players on the server.
|
||||
|
||||
## Usage
|
||||
```python
|
||||
import g2o
|
||||
|
||||
@g2o.event('onInit')
|
||||
def evtInit(**kwargs):
|
||||
print('Players online:', g2o.getPlayersCount())
|
||||
```
|
||||
"""
|
||||
data = f'return {get_call_repr()}'
|
||||
|
||||
server = await PythonWebsocketServer.get_server()
|
||||
result = await server.make_request(data)
|
||||
return result
|
||||
|
||||
async def exit(exitCode : int = 0):
|
||||
"""
|
||||
This function will close the server with specified exit code.
|
||||
Original: [exit](https://gothicmultiplayerteam.gitlab.io/docs/0.3.0/script-reference/server-functions/game/exit/)
|
||||
|
||||
## Declaration
|
||||
```python
|
||||
async def exit(exitCode : int = 0)
|
||||
```
|
||||
## Parameters
|
||||
* `int` **exitCode**: exit status for g2o server.
|
||||
"""
|
||||
data = f'return {get_call_repr()}'
|
||||
|
||||
server = await PythonWebsocketServer.get_server()
|
||||
result = await server.make_request(data)
|
||||
return result
|
||||
|
||||
async def getDayLength() -> float:
|
||||
"""
|
||||
The function is used to get the day length in miliseconds.
|
||||
Original: [getDayLength](https://gothicmultiplayerteam.gitlab.io/docs/0.3.0/script-reference/server-functions/game/getDayLength/)
|
||||
|
||||
## Declaration
|
||||
```python
|
||||
async def getDayLength() -> float
|
||||
```
|
||||
## Returns
|
||||
`float`: the current day length in miliseconds.
|
||||
"""
|
||||
data = f'return {get_call_repr()}'
|
||||
|
||||
server = await PythonWebsocketServer.get_server()
|
||||
result = await server.make_request(data)
|
||||
return result
|
||||
|
||||
async def getServerDescription() -> str:
|
||||
"""
|
||||
This function will get the description of the server.
|
||||
Original: [getServerDescription](https://gothicmultiplayerteam.gitlab.io/docs/0.3.0/script-reference/server-functions/game/getServerDescription/)
|
||||
|
||||
## Declaration
|
||||
```python
|
||||
async def getServerDescription() -> str
|
||||
```
|
||||
## Returns
|
||||
`str`: Server description.
|
||||
"""
|
||||
data = f'return {get_call_repr()}'
|
||||
|
||||
server = await PythonWebsocketServer.get_server()
|
||||
result = await server.make_request(data)
|
||||
return result
|
||||
|
||||
async def getServerWorld() -> str:
|
||||
"""
|
||||
The function is used to get the path of the default world on the server.
|
||||
Original: [getServerWorld](https://gothicmultiplayerteam.gitlab.io/docs/0.3.0/script-reference/server-functions/game/getServerWorld/)
|
||||
|
||||
## Declaration
|
||||
```python
|
||||
async def getServerWorld() -> str
|
||||
```
|
||||
## Returns
|
||||
`str`: The world path name.
|
||||
"""
|
||||
data = f'return {get_call_repr()}'
|
||||
|
||||
server = await PythonWebsocketServer.get_server()
|
||||
result = await server.make_request(data)
|
||||
return result
|
||||
|
||||
async def getTime() -> dict:
|
||||
"""
|
||||
The function is used to get the path of the default world on the server.
|
||||
Original: [getTime](https://gothicmultiplayerteam.gitlab.io/docs/0.3.0/script-reference/server-functions/game/getTime/)
|
||||
|
||||
## Declaration
|
||||
```python
|
||||
async def getTime() -> dict
|
||||
```
|
||||
## Returns
|
||||
`dict {day, hour, min}`: The current time in the game.
|
||||
"""
|
||||
data = f'return {get_call_repr()}'
|
||||
|
||||
server = await PythonWebsocketServer.get_server()
|
||||
result = await server.make_request(data)
|
||||
return result
|
||||
|
||||
async def serverLog(text : str):
|
||||
"""
|
||||
This function will log the text into server.log file.
|
||||
Original: [serverLog](https://gothicmultiplayerteam.gitlab.io/docs/0.3.0/script-reference/server-functions/game/serverLog/)
|
||||
|
||||
## Declaration
|
||||
```python
|
||||
async def serverLog(text : str)
|
||||
```
|
||||
## Parameters
|
||||
`str` **text**: the text message that you want to append to server.log file.
|
||||
"""
|
||||
data = f'return {get_call_repr()}'
|
||||
|
||||
server = await PythonWebsocketServer.get_server()
|
||||
result = await server.make_request(data)
|
||||
return result
|
||||
|
||||
async def setDayLength(miliseconds : float):
|
||||
"""
|
||||
!!! note
|
||||
Day length can't be smaller than 10 000 miliseconds.
|
||||
|
||||
This function will set the day length in miliseconds.
|
||||
Original: [setDayLength](https://gothicmultiplayerteam.gitlab.io/docs/0.3.0/script-reference/server-functions/game/setDayLength/)
|
||||
|
||||
## Declaration
|
||||
```python
|
||||
async def setDayLength(miliseconds : float)
|
||||
```
|
||||
## Parameters
|
||||
`float` **miliseconds**: day length in miliseconds.
|
||||
"""
|
||||
data = f'return {get_call_repr()}'
|
||||
|
||||
server = await PythonWebsocketServer.get_server()
|
||||
result = await server.make_request(data)
|
||||
return result
|
||||
|
||||
async def setServerDescription(description : str):
|
||||
"""
|
||||
This function will set the description of the server.
|
||||
Original: [setServerDescription](https://gothicmultiplayerteam.gitlab.io/docs/0.3.0/script-reference/server-functions/game/setServerDescription/)
|
||||
|
||||
## Declaration
|
||||
```python
|
||||
async def setServerDescription(description : str)
|
||||
```
|
||||
## Parameters
|
||||
`str` **description**: the server description.
|
||||
## Returns
|
||||
`bool`: `true` if server description was set successfully, otherwise `false`.
|
||||
"""
|
||||
data = f'return {get_call_repr()}'
|
||||
|
||||
server = await PythonWebsocketServer.get_server()
|
||||
result = await server.make_request(data)
|
||||
return result
|
||||
|
||||
async def setServerWorld(world : str):
|
||||
"""
|
||||
!!! note
|
||||
The server world limit is set to 32 characters.
|
||||
|
||||
!!! note
|
||||
If the target world path is written with backslashes instead of normal slashes, you need to escape it with another backslashes e.g. "NEWWORLD\\NEWWORLD.ZEN".
|
||||
|
||||
This function will change the default world to which players will enter after joining.
|
||||
Original: [setServerWorld](https://gothicmultiplayerteam.gitlab.io/docs/0.3.0/script-reference/server-functions/game/setServerWorld/)
|
||||
|
||||
## Declaration
|
||||
```python
|
||||
async def setServerWorld(world : str)
|
||||
```
|
||||
## Parameters
|
||||
`str` **world**: the path to the target world.
|
||||
"""
|
||||
data = f'return {get_call_repr()}'
|
||||
|
||||
server = await PythonWebsocketServer.get_server()
|
||||
result = await server.make_request(data)
|
||||
return result
|
||||
|
||||
|
||||
async def setTime(hour : int, min : int, day : int = 0):
|
||||
"""
|
||||
This function will set the current time in the game to the given time, for all the players.
|
||||
Original: [setTime](https://gothicmultiplayerteam.gitlab.io/docs/0.3.0/script-reference/server-functions/game/setTime/)
|
||||
|
||||
## Declaration
|
||||
```python
|
||||
async def setTime(hour : int, min : int, day : int = 0)
|
||||
```
|
||||
## Parameters
|
||||
`int` **hour**: the hour of new time (in the range between 0-23).
|
||||
`int` **min**: the minute of new time (in the range between 0-59).
|
||||
`int` **day**: the day of new time.
|
||||
"""
|
||||
data = f'return {get_call_repr()}'
|
||||
|
||||
server = await PythonWebsocketServer.get_server()
|
||||
result = await server.make_request(data)
|
||||
return result
|
||||
Reference in New Issue
Block a user