docs: Updated docs for 2.0.0 version

This commit is contained in:
AURUMVORXX
2025-04-15 13:13:31 +03:00
parent 988f901dc8
commit 7ff72c7887
347 changed files with 530 additions and 700 deletions

View File

@@ -0,0 +1,21 @@
# `event` onPlayerUseCheat
!!! note
Detecting some type of forbidden tools may take, even a few minutes. Server need time to analyze player data.
This event is triggered when player uses some of forbidden cheat tools.
Original: [onPlayerUseCheat](https://gothicmultiplayerteam.gitlab.io/docs/0.3.0/script-reference/server-events/anticheat/onPlayerUseCheat/)
## Parameters
* `dict` **kwargs**:
* `int` **playerid**: the id of the player who used some type of trainer/cheat.
* `int` **type**: the type of used trainer/cheat. For more information see [AntiCheat constants](../../constants/anticheat.md)
## Usage
```python
import pyg2o
@pyg2o.event('onPlayerUseCheat')
async def onCheat(playerid, type):
print(f'Player {playerid} used forbidden cheat tool type {type}.')
```

View File

@@ -0,0 +1,30 @@
# `event` onBan
> [!TIP] This event can be cancelled
!!! note
If serial/mac/ip/name indexes doesn't exist, then the parameters has not been specified when ban was added.
If timestamp doesn't exist, then ban was permanent.
This event is triggered when new ban is being added.
Original: [onBan](https://gothicmultiplayerteam.gitlab.io/docs/0.3.0/script-reference/server-events/general/onBan/)
## Parameters
* `dict` **kwargs**:
* `str` **mac**: MAC address of the banned player.
* `str` **ip**: IP address of the banned player.
* `str` **serial**: serial of the banned player.
* `str` **name**: nickname of the banned player.
* `int` **timestamp**: timestamp when the ban expires.
## Usage
```python
import pyg2o as g2o
from datetime import datetime
@g2o.event('onBan')
async def onBan(banInfo):
print(f'Player {banInfo['name']} has been banned.')
if ('timestamp' in banInfo):
banExpires = datetime.fromtimestamp(banInfo['timestamp'])
print(f'Ban expires at {banExpires}')
```

View File

@@ -0,0 +1,17 @@
# `event` onExit
This event is triggered when server is going to shut down.
You can use it, to save some data before closing up, or do something else.
Original: [onExit](https://gothicmultiplayerteam.gitlab.io/docs/0.3.0/script-reference/server-events/general/onExit/)
## Parameters
No parameters.
## Usage
```python
import pyg2o as g2o
@g2o.event('onExit')
async def onExitEvt():
print('Bye')
```

View File

@@ -0,0 +1,16 @@
# `event` onInit
This event is triggered when server successfully starts up.
Original: [onExit](https://gothicmultiplayerteam.gitlab.io/docs/0.3.0/script-reference/server-events/general/onInit/)
## Parameters
No parameters.
## Usage
```python
import pyg2o as g2o
@g2o.event('onInit')
async def onInitEventHandler():
print('Called onInit event')
```

View File

@@ -0,0 +1,16 @@
# `event` onTick
This event is triggered in every server main loop iteration.
Original: [onExit](https://gothicmultiplayerteam.gitlab.io/docs/0.3.0/script-reference/server-events/general/onTick/)
## Parameters
No parameters.
## Usage
```python
import pyg2o as g2o
@g2o.event('onTick')
async def onTickEvt():
print('Tock')
```

View File

@@ -0,0 +1,19 @@
# `event` onTime
This event is triggered each time when game time minute passes.
Original: [onExit](https://gothicmultiplayerteam.gitlab.io/docs/0.3.0/script-reference/server-events/general/onTime/)
## Parameters
* `dict` **kwargs**:
* `int` **day**: the current ingame day.
* `int` **hour**: the current ingame hour.
* `int` **min**: the current ingame minutes.
## Usage
```python
import pyg2o as g2o
@g2o.event('onTime')
async def onTickEvt(day, hour, min):
print(f'Current time: Day {day}, Hour {hour}, Min {mins}')
```

View File

@@ -0,0 +1,26 @@
# `event` onUnban
> [!TIP] This event can be cancelled
!!! note
If serial/mac/ip/name indexes doesn't exist, then the parameters has not been specified when ban was added.
If timestamp doesn't exist, then ban was permanent.
This event is triggered when ban with specified info is being removed.
Original: [onExit](https://gothicmultiplayerteam.gitlab.io/docs/0.3.0/script-reference/server-events/general/onUnban/)
## Parameters
* `dict` **kwargs**:
* `str` **mac**: MAC address of the banned player.
* `str` **ip**: IP address of the banned player.
* `str` **serial**: serial of the banned player.
* `str` **name**: nickname of the banned player.
* `int` **timestamp**: timestamp when the ban expires.
## Usage
```python
import pyg2o as g2o
@g2o.event('onUnban')
async def onUnban(banInfo):
print(f'Player {banInfo['name']} has been unbanned.')
```

View File

@@ -0,0 +1,21 @@
# `event` onNpcActionFinished
This event is triggered when NPC action was finished.
Original: [onNpcActionFinished](https://gothicmultiplayerteam.gitlab.io/docs/0.3.0/script-reference/server-events/npc/onNpcActionFinished/)
## Parameters
* `dict` **kwargs**:
* `int` **npc_id**: the npc identifier.
* `int` **action_type**: the action type.
* `int` **action_id**: the unique action identifier.
* `bool` **result**: the result of finished action.
## Usage
```python
import pyg2o as g2o
@g2o.event('onNpcActionFinished')
async def onActionFinished(npc_id, action_type, action_id, result):
print(f'NPC {npc_id} finished action {action_type} with the result {result}.')
```

View File

@@ -0,0 +1,20 @@
# `event` onNpcActionSent
This event is triggered when NPC host is changed. Every remote NPC is hosted by one of spawned players in order to get valid position of NPC.
Original: [onNpcActionSent](https://gothicmultiplayerteam.gitlab.io/docs/0.3.0/script-reference/server-events/npc/onNpcActionSent/)
## Parameters
* `dict` **kwargs**:
* `int` **npc_id**: the npc identifier.
* `int` **current_id**: the action type.
* `int` **previous_id**: the unique action identifier.
## Usage
```python
import pyg2o as g2o
@g2o.event('onNpcActionSent')
async def onActionSent(npc_id, action_type, action_id):
print(f'NPC {npc_id} sent action {action_id}.')
```

View File

@@ -0,0 +1,20 @@
# `event` onNpcChangeHostPlayer
This event is triggered when server sends NPC action to streamed players.
Original: [onNpcChangeHostPlayer](https://gothicmultiplayerteam.gitlab.io/docs/0.3.0/script-reference/server-events/npc/onNpcChangeHostPlayer/)
## Parameters
* `dict` **kwargs**:
* `int` **npc_id**: the id of the remote npc.
* `int` **current_id**: the id of the current host, can be -1 if there is no current host.
* `int` **previous_id**: the id of the previous host, can be -1 if there was no previous host.
## Usage
```python
import pyg2o as g2o
@g2o.event('onNpcChangeHostPlayer')
async def onChangeHostPlayer(npc_id, previous_id, current_id):
print(f'NPC {npc_id} changed host to {current_id}')
```

View File

@@ -0,0 +1,18 @@
# `event` onNpcCreated
This event is triggered when remote NPC is created.
Original: [onNpcCreated](https://gothicmultiplayerteam.gitlab.io/docs/0.3.0/script-reference/server-events/npc/onNpcCreated/)
## Parameters
* `dict` **kwargs**:
* `int` **npc_id**: the id of the newly created remote npc.
## Usage
```python
import pyg2o as g2o
@g2o.event('onNpcCreated')
async def onNpcCreate(npc_id):
print(f'NPC {npc_id} has been created.')
```

View File

@@ -0,0 +1,18 @@
# `event` onNpcDestroyed
This event is triggered when remote NPC is created.
Original: [onNpcDestroyed](https://gothicmultiplayerteam.gitlab.io/docs/0.3.0/script-reference/server-events/npc/onNpcDestroyed/)
## Parameters
* `dict` **kwargs**:
* `int` **npc_id**: the id of the destroyed remote npc.
## Usage
```python
import pyg2o as g2o
@g2o.event('onNpcDestroyed')
async def onNpcDestroy(npc_id):
print(f'NPC {npc_id} has been destroyed.')
```

View File

@@ -0,0 +1,22 @@
# `event` onPlayerChangeColor
This event is triggered when player nickname color was changed for all players.
Original: [onPlayerChangeColor](https://gothicmultiplayerteam.gitlab.io/docs/0.3.0/script-reference/server-events/player/onPlayerChangeColor/)
## Parameters
* `dict` **kwargs**:
* `int` **playerid**: the id of the player whose nickname color was changed.
* `int` **r**: the amount of red in the nickname color `(0 - 255)`.
* `int` **g**: the amount of green in the nickname color `(0 - 255)`.
* `int` **b**: the amount of blue in the nickname color `(0 - 255)`.
## Usage
```python
import pyg2o as g2o
@g2o.event('onPlayerChangeColor')
async def onChangeColor(playerid, r, g, b):
rgbColor = tuple(r, g, b)
hexColor = '#%02x%02x%02x' % rgbColor
print(f'Player {playerid} changed his color to {hexColor}')
```

View File

@@ -0,0 +1,22 @@
# `event` onPlayerChangeFocus
This event is triggered when player targets another player.
Original: [onPlayerChangeFocus](https://gothicmultiplayerteam.gitlab.io/docs/0.3.0/script-reference/server-events/player/onPlayerChangeFocus/)
## Parameters
* `dict` **kwargs**:
* `int` **playerid**: the id of the player which changes the focus.
* `int` **oldFocusId**: the old playerid targeted by the player. Can be `-1` if player wasn't targeting other player.
* `int` **newFocusId**: the new playerid targeted by the player. Can be `-1` if player doesn't target anyone.
## Usage
```python
import pyg2o as g2o
@g2o.event('onPlayerChangeFocus')
async def onChangeFocus(playerid, oldFocusId, newFocusId):
if newFocusId != -1:
print(f'Player {playerid} is looking at {newFocusId}')
else
print(f'Player {playerid} is looking at... who?')
```

View File

@@ -0,0 +1,19 @@
# `event` onPlayerChangeHealth
This event is triggered when player health changes.
Original: [onPlayerChangeHealth](https://gothicmultiplayerteam.gitlab.io/docs/0.3.0/script-reference/server-events/player/onPlayerChangeHealth/)
## Parameters
* `dict` **kwargs**:
* `int` **playerid**: the id of the player whose health points gets changed.
* `int` **previous**: the previous health points of the player.
* `int` **current**: the new health points of the player.
## Usage
```python
import pyg2o as g2o
@g2o.event('onPlayerChangeHealth')
async def onChangeHealth(playerid, previous, current):
print(f'Player {playerid} changed health: {previous} -> {current}')
```

View File

@@ -0,0 +1,19 @@
# `event` onPlayerChangeMana
This event is triggered when player mana changes.
Original: [onPlayerChangeMana](https://gothicmultiplayerteam.gitlab.io/docs/0.3.0/script-reference/server-events/player/onPlayerChangeMana/)
## Parameters
* `dict` **kwargs**:
* `int` **playerid**: the id of the player mana points gets changed.
* `int` **previous**: the previous mana points of the player.
* `int` **current**: the new mana points of the player.
## Usage
```python
import pyg2o as g2o
@g2o.event('onPlayerChangeMana')
async def onChangeMana(playerid, previous, current):
print(f'Player {playerid} changed mana: {previous} -> {current}')
```

View File

@@ -0,0 +1,19 @@
# `event` onPlayerChangeMaxHealth
This event is triggered when player maximum health changes.
Original: [onPlayerChangeMaxHealth](https://gothicmultiplayerteam.gitlab.io/docs/0.3.0/script-reference/server-events/player/onPlayerChangeMaxHealth/)
## Parameters
* `dict` **kwargs**:
* `int` **playerid**: the id of the player whose maxium health points gets changed.
* `int` **previous**: the previous maximum health points of the player.
* `int` **current**: the new maximum health points of the player.
## Usage
```python
import pyg2o as g2o
@g2o.event('onPlayerChangeMaxHealth')
async def onChangeMaxHealth(playerid, previous, current):
print(f'Player {playerid} changed maximum health: {previous} -> {current}')
```

View File

@@ -0,0 +1,19 @@
# `event` onPlayerChangeMaxMana
This event is triggered when player maximum mana changes.
Original: [onPlayerChangeMaxMana](https://gothicmultiplayerteam.gitlab.io/docs/0.3.0/script-reference/server-events/player/onPlayerChangeMaxMana/)
## Parameters
* `dict` **kwargs**:
* `int` **playerid**: the id of the player maximum mana points gets changed.
* `int` **previous**: the previous maximum mana points of the player.
* `int` **current**: the new maximum mana points of the player.
## Usage
```python
import pyg2o as g2o
@g2o.event('onPlayerChangeMaxMana')
async def onChangeMaxMana(playerid, previous, current):
print(f'Player {playerid} changed maximum mana: {previous} -> {current}')
```

View File

@@ -0,0 +1,19 @@
# `event` onPlayerChangeWeaponMode
This event is triggered when player changes the weapon mode.
Original: [onPlayerChangeWeaponMode](https://gothicmultiplayerteam.gitlab.io/docs/0.3.0/script-reference/server-events/player/onPlayerChangeWeaponMode/)
## Parameters
* `dict` **kwargs**:
* `int` **playerid**: the id of the player which changes the weapon mode.
* `int` **previous**: the old weapon mode which was used by the player. For more information see [Weapon mode](../../constants/weapon-mode.md).
* `int` **current**: the new weapon mode in which player is currently using. For more information see [Weapon mode](../../constants/weapon-mode.md).
## Usage
```python
import pyg2o as g2o
@g2o.event('onPlayerChangeWeaponMode')
async def onChangeWM(playerid, previous, current):
print(f'Player {playerid} changed wm: {previous} -> {current}')
```

View File

@@ -0,0 +1,20 @@
# `event` onPlayerChangeWorld
> [!TIP] This event can be cancelled
This event is triggered when player tries to change his currently played world (ZEN).
Original: [onPlayerChangeWorld](https://gothicmultiplayerteam.gitlab.io/docs/0.3.0/script-reference/server-events/player/onPlayerChangeWorld/)
## Parameters
* `dict` **kwargs**:
* `int` **playerid**: the id of the player who tries to change the played world.
* `str` **world**: a filename name of the world.
* `str` **waypoint**: a name of the waypoint that the player will be teleported to.
## Usage
```python
import pyg2o as g2o
@g2o.event('onPlayerChangeWorld')
async def onChangeWorld(playerid, world, waypoint):
print(f'Player {playerid} teleported to {world} at {waypoint}')
```

View File

@@ -0,0 +1,24 @@
# `event` onPlayerCommand
This event is triggered when a player uses command on the chat.
Command always begins with forward slash `/`.
Original: [onPlayerCommand](https://gothicmultiplayerteam.gitlab.io/docs/0.3.0/script-reference/server-events/player/onPlayerCommand/)
## Parameters
* `dict` **kwargs**:
* `int` **playerid**: the id of the player who typed the command.
* `str` **command**: used command name on the chat.
* `str` **params**: command parameters divided by space.
## Usage
```python
import pyg2o as g2o
@g2o.event('onPlayerCommand')
async def onCommand(playerid, command, params):
# Spliting and formating params
params = [eval(x) if not x.isalpha() else x for params.split()]
if command == 'add' and len(params) == 2:
print('Sum is: ', params[0] + params[1]) # /add 5 10 -> output: Sum is 15
```

View File

@@ -0,0 +1,20 @@
# `event` onPlayerDamage
> [!TIP] This event can be cancelled
This event is triggered when player receives damage.
Original: [onPlayerDamage](https://gothicmultiplayerteam.gitlab.io/docs/0.3.0/script-reference/server-events/player/onPlayerDamage/)
## Parameters
* `dict` **kwargs**:
* `int` **playerid**: the id of the player who died.
* `int` **killerid**: the id of the killer. If killerid is set to `-1`, it means that there was no killer. In this particular case damage source can be fall from a tall object or scripts.
* `DamageDescription` **description**: a structure containing damage information. For more information see [DamageDescription](../../classes/game/DamageDescription.md)
## Usage
```python
import pyg2o as g2o
@g2o.event('onPlayerDamage')
async def onDamage(playerid, killerid, description):
print(f'Ouch! Player {playerid} just received {description.damage} damage.')
```

View File

@@ -0,0 +1,18 @@
# `event` onPlayerDead
This event is triggered when one player kills another player.
Original: [onPlayerDead](https://gothicmultiplayerteam.gitlab.io/docs/0.3.0/script-reference/server-events/player/onPlayerDead/)
## Parameters
* `dict` **kwargs**:
* `int` **playerid**: the id of the player who died.
* `int` **killerid**: the id of the player who killed other player. If killerid is set to `-1`, it means that there was no killer.
## Usage
```python
import pyg2o as g2o
@g2o.event('onPlayerDead')
async def onDead(playerid, killerid):
print(playerid, 'killed by', killerid)
```

View File

@@ -0,0 +1,18 @@
# `event` onPlayerDisconnect
This event is triggered when a player gets disconnected with the server.
Original: [onPlayerDisconnect](https://gothicmultiplayerteam.gitlab.io/docs/0.3.0/script-reference/server-events/player/onPlayerDisconnect/)
## Parameters
* `dict` **kwargs**:
* `int` **playerid**: he id of the player who disconnected from the server.
* `int` **reason**: the reason why player got disconnected. For more information see [Network](../../constants/network.md).
## Usage
```python
import pyg2o as g2o
@g2o.event('onPlayerDisconnect')
async def onDC(playerid, reason):
print(f'Player {playerid} has left from the server')
```

View File

@@ -0,0 +1,19 @@
# `event` onPlayerDropItem
> [!TIP] This event can be cancelled
This event is triggered when player drops an item from his inventory to the ground.
Original: [onPlayerDropItem](https://gothicmultiplayerteam.gitlab.io/docs/0.3.0/script-reference/server-events/player/onPlayerDropItem/)
## Parameters
* `dict` **kwargs**:
* `int` **playerid**: the id of the player who tries to drop the item on the ground.
* `ItemGround` **itemGround**: the ground item object which represents the dropped item by the player.
## Usage
```python
import pyg2o as g2o
@g2o.event('onPlayerDropItem')
async def onDropItem(playerid, itemGround):
print(f'Player {playerid} dropped {itemGround.instance} x{itemGround.amount}')
```

View File

@@ -0,0 +1,18 @@
# `event` onPlayerEnterWorld
This event is triggered when player entered the world (**ZEN**) and was successfully spawned in it.
Original: [onPlayerEnterWorld](https://gothicmultiplayerteam.gitlab.io/docs/0.3.0/script-reference/server-events/player/onPlayerEnterWorld/)
## Parameters
* `dict` **kwargs**:
* `int` **playerid**: the id of the player who entered the world.
* `str` **world**: an filename name of the world.
## Usage
```python
import pyg2o as g2o
@g2o.event('onPlayerEnterWorld')
async def onEnterWorld(playerid, world):
print(f'Player {playerid} entered world {world}')
```

View File

@@ -0,0 +1,18 @@
# `event` onPlayerEquipAmulet
This event is triggered when player equips or unequips amulet. When item is unequiped, empty `str` is returned instead.
Original: [onPlayerEquipAmulet](https://gothicmultiplayerteam.gitlab.io/docs/0.3.0/script-reference/server-events/player/onPlayerEquipAmulet/)
## Parameters
* `dict` **kwargs**:
* `int` **playerid**: the id of the player who equips a amulet.
* `str` **instance**: the item instance from Daedalus scripts.
## Usage
```python
import pyg2o as g2o
@g2o.event('onPlayerEquipAmulet')
async def onEquip(playerid, instance):
print(f'Player {playerid} equipped {instance}')
```

View File

@@ -0,0 +1,18 @@
# `event` onPlayerEquipAmulet
This event is triggered when player equips or unequips armor. When item is unequiped, empty `str` is returned instead.
Original: [onPlayerEquipArmor](https://gothicmultiplayerteam.gitlab.io/docs/0.3.0/script-reference/server-events/player/onPlayerEquipArmor/)
## Parameters
* `dict` **kwargs**:
* `int` **playerid**: the id of the player who equips an armor.
* `str` **instance**: the item instance from Daedalus scripts.
## Usage
```python
import pyg2o as g2o
@g2o.event('onPlayerEquipArmor')
async def onEquip(playerid, instance):
print(f'Player {playerid} equipped {instance}')
```

View File

@@ -0,0 +1,18 @@
# `event` onPlayerEquipBelt
This event is triggered when player equips or unequips belt. When item is unequiped, empty `str` is returned instead.
Original: [onPlayerEquipBelt](https://gothicmultiplayerteam.gitlab.io/docs/0.3.0/script-reference/server-events/player/onPlayerEquipBelt/)
## Parameters
* `dict` **kwargs**:
* `int` **playerid**: the id of the player who equips a belt.
* `str` **instance**: the item instance from Daedalus scripts.
## Usage
```python
import pyg2o as g2o
@g2o.event('onPlayerEquipBelt')
async def onEquip(playerid, instance):
print(f'Player {playerid} equipped {instance}')
```

View File

@@ -0,0 +1,19 @@
# `event` onPlayerEquipHandItem
This event is triggered when game adds item to player hand, e.g: when player opens or consumes any item. When item is removed from hand, empty `str` is returned instead.
Original: [onPlayerEquipHandItem](https://gothicmultiplayerteam.gitlab.io/docs/0.3.0/script-reference/server-events/player/onPlayerEquipHandItem/)
## Parameters
* `dict` **kwargs**:
* `int` **playerid**: the id of the player who gets an item to his hand.
* `int` **hand**: the id of the hand in which player holds item. For more information see [Hand](../../constants/hand.md).
* `str` **instance**: the item instance from Daedalus scripts.
## Usage
```python
import pyg2o as g2o
@g2o.event('onPlayerEquipHandItem')
async def onEquip(playerid, hand, instance):
print(f'Player {playerid} equipped {instance}')
```

View File

@@ -0,0 +1,18 @@
# `event` onPlayerEquipHelmet
This event is triggered when player equips or unequips helmet. When item is unequiped, empty `str` is returned instead.
Original: [onPlayerEquipHelmet](https://gothicmultiplayerteam.gitlab.io/docs/0.3.0/script-reference/server-events/player/onPlayerEquipHelmet/)
## Parameters
* `dict` **kwargs**:
* `int` **playerid**: the id of the player who equips a helmet.
* `str` **instance**: the item instance from Daedalus scripts.
## Usage
```python
import pyg2o as g2o
@g2o.event('onPlayerEquipHelmet')
async def onEquip(playerid, instance):
print(f'Player {playerid} equipped {instance}')
```

View File

@@ -0,0 +1,18 @@
# `event` onPlayerEquipMeleeWeapon
This event is triggered when player equips or unequips melee weapon. When item is unequiped, empty `str` is returned instead.
Original: [onPlayerEquipMeleeWeapon](https://gothicmultiplayerteam.gitlab.io/docs/0.3.0/script-reference/server-events/player/onPlayerEquipMeleeWeapon/)
## Parameters
* `dict` **kwargs**:
* `int` **playerid**: the id of the player who equips an melee weapon.
* `str` **instance**: the item instance from Daedalus scripts.
## Usage
```python
import pyg2o as g2o
@g2o.event('onPlayerEquipMeleeWeapon')
async def onEquip(playerid, instance):
print(f'Player {playerid} equipped {instance}')
```

View File

@@ -0,0 +1,18 @@
# `event` onPlayerEquipRangedWeapon
This event is triggered when player equips or unequips ranged weapon. When item is unequiped, empty `str` is returned instead.
Original: [onPlayerEquipRangedWeapon](https://gothicmultiplayerteam.gitlab.io/docs/0.3.0/script-reference/server-events/player/onPlayerEquipRangedWeapon/)
## Parameters
* `dict` **kwargs**:
* `int` **playerid**: the id of the player who equips an ranged weapon.
* `str` **instance**: the item instance from Daedalus scripts.
## Usage
```python
import pyg2o as g2o
@g2o.event('onPlayerEquipRangedWeapon')
async def onEquip(playerid, instance):
print(f'Player {playerid} equipped {instance}')
```

View File

@@ -0,0 +1,19 @@
# `event` onPlayerEquipRing
This event is triggered when player equips or unequips ring. When item is unequiped, empty `str` is returned instead.
Original: [onPlayerEquipRing](https://gothicmultiplayerteam.gitlab.io/docs/0.3.0/script-reference/server-events/player/onPlayerEquipRing/)
## Parameters
* `dict` **kwargs**:
* `int` **playerid**: the id of the player who equips a ring.
* `int` **hand**: the hand id that the player is putting the ring on. For more information see [Hand](../../constants/hand.md).
* `str` **instance**: the item instance from Daedalus scripts.
## Usage
```python
import pyg2o as g2o
@g2o.event('onPlayerEquipRing')
async def onEquip(playerid, hand, instance):
print(f'Player {playerid} equipped {instance}')
```

View File

@@ -0,0 +1,18 @@
# `event` onPlayerEquipShield
This event is triggered when player equips or unequips shield. When item is unequiped, empty `str` is returned instead.
Original: [onPlayerEquipShield](https://gothicmultiplayerteam.gitlab.io/docs/0.3.0/script-reference/server-events/player/onPlayerEquipShield/)
## Parameters
* `dict` **kwargs**:
* `int` **playerid**: the id of the player who equips a shield.
* `str` **instance**: the item instance from Daedalus scripts.
## Usage
```python
import pyg2o as g2o
@g2o.event('onPlayerEquipShield')
async def onEquip(playerid, instance):
print(f'Player {playerid} equipped {instance}')
```

View File

@@ -0,0 +1,19 @@
# `event` onPlayerEquipSpell
This event is triggered when player equips or unequips scroll or rune. When item is unequiped, empty `str` is returned instead.
Original: [onPlayerEquipSpell](https://gothicmultiplayerteam.gitlab.io/docs/0.3.0/script-reference/server-events/player/onPlayerEquipSpell/)
## Parameters
* `dict` **kwargs**:
* `int` **playerid**: the id of the player who equips a spell.
* `int` **slotId**: the slot id that the player puts the spell on in range `<0, 6>`.
* `str` **instance**: the item instance from Daedalus scripts.
## Usage
```python
import pyg2o as g2o
@g2o.event('onPlayerSpell')
async def onEquip(playerid, slotId, instance):
print(f'Player {playerid} equipped {instance}')
```

View File

@@ -0,0 +1,17 @@
# `event` onPlayerJoin
This event is triggered when a player successfully joined the server.
Original: [onPlayerJoin](https://gothicmultiplayerteam.gitlab.io/docs/0.3.0/script-reference/server-events/player/onPlayerJoin/)
## Parameters
* `dict` **kwargs**:
* `int` **playerid**: the id of the player who joined the server.
## Usage
```python
import pyg2o as g2o
@g2o.event('onPlayerJoin')
async def onJoin(playerid):
print(pyg2o.getPlayerName(playerid), ' joined to the server.')
```

View File

@@ -0,0 +1,18 @@
# `event` onPlayerMessage
This event is triggered when a player types the message on the chat.
Original: [onPlayerMessage](https://gothicmultiplayerteam.gitlab.io/docs/0.3.0/script-reference/server-events/player/onPlayerMessage/)
## Parameters
* `dict` **kwargs**:
* `int` **playerid**: the id of the player who typed the message.
* `str` **message**: the message typed by the player.
## Usage
```python
import pyg2o as g2o
@g2o.event('onPlayerMessage')
async def onMessage(playerid, message):
print(pyg2o.getPlayerName(playerid), ' says ', message)
```

View File

@@ -0,0 +1,19 @@
# `event` onPlayerMobInteract
This event is triggered when player interacts with any kind of mob object in the world. In Gothic, mobs are special vobs on the map, that hero can interact with. For example bed, door, chest etc.
Original: [onPlayerMobInteract](https://gothicmultiplayerteam.gitlab.io/docs/0.3.0/script-reference/server-events/player/onPlayerMobInteract/)
## Parameters
* `dict` **kwargs**:
* `int` **playerid**: represents previous state of mob. If value is `1`, then mob was used, in any other case value is `0`.
* `int` **from**: represents current state of mob. If value is `1`, then mob is used, in any other case value is `0`.
## Usage
```python
import pyg2o as g2o
@g2o.event('onPlayerMobInteract')
async def onMobInteract(playerid, from, to):
if to == 1:
print(playerid, 'started interaction with the MOB')
```

View File

@@ -0,0 +1,17 @@
# `event` onPlayerRespawn
This event is triggered when a player respawns after death.
Original: [onPlayerRespawn](https://gothicmultiplayerteam.gitlab.io/docs/0.3.0/script-reference/server-events/player/onPlayerRespawn/)
## Parameters
* `dict` **kwargs**:
* `int` **playerid**: the id of the player who respawned after death.
## Usage
```python
import pyg2o as g2o
@g2o.event('onPlayerRespawn')
async def onRespawn(playerid):
print(playerid, 'respawned.')
```

View File

@@ -0,0 +1,18 @@
# `event` onPlayerShoot
This event is triggered when player shoot using ranged weapon.
Original: [onPlayerShoot](https://gothicmultiplayerteam.gitlab.io/docs/0.3.0/script-reference/server-events/player/onPlayerShoot/)
## Parameters
* `dict` **kwargs**:
* `int` **playerid**: the id of the player who just shot.
* `str | null` **munition**: the item instance from Daedalus scripts.
## Usage
```python
import pyg2o as g2o
@g2o.event('onPlayerShoot')
async def onShoot(playerid, munition):
print(playerid, 'made a shot.')
```

View File

@@ -0,0 +1,23 @@
# `event` onPlayerSpellCast
> [!TIP] This event can be cancelled
!!! note
Right now transformation and summon spells are not supported, despite this event will be triggered for them. Cancelling this event willl prevent this action to be synced to other players.
This event is triggered when player is casting some spell.
Original: [onPlayerSpellCast](https://gothicmultiplayerteam.gitlab.io/docs/0.3.0/script-reference/server-events/player/onPlayerSpellCast/)
## Parameters
* `dict` **kwargs**:
* `int` **playerid**: the id of the player who casts the spell.
* `str | null` **instance**: the item instance from Daedalus scripts.
* `int` **spellLevel**: the level of charged spell.
## Usage
```python
import pyg2o as g2o
@g2o.event('onPlayerSpellCast')
async def onSpellCast(playerid, instance, spellLevel):
print(playerid, 'casted a spell', instance)
```

View File

@@ -0,0 +1,18 @@
# `event` onPlayerSpellSetup
This event is triggered when player prepares the spell.
Original: [onPlayerSpellSetup](https://gothicmultiplayerteam.gitlab.io/docs/0.3.0/script-reference/server-events/player/onPlayerSpellSetup/)
## Parameters
* `dict` **kwargs**:
* `int` **playerid**: the id of the player who prepares the spell.
* `str | null` **instance**: the item instance from Daedalus scripts.
## Usage
```python
import pyg2o as g2o
@g2o.event('onPlayerSpellSetup')
async def onSpellSetup(playerid, instance):
print(playerid, 'setuped a spell', instance)
```

View File

@@ -0,0 +1,22 @@
# `event` onPlayerTakeItem
> [!TIP] This event can be cancelled
!!! note
Even if this event is triggered it doesn't mean, that player will get item to his inventory. It only means, that the player tried to get the item from the ground. Server is the last decide if the item can be taken from the ground. Canceling this event will prevent the item to be taken from the ground.
This event is triggered when player takes an item from the ground.
Original: [onPlayerTakeItem](https://gothicmultiplayerteam.gitlab.io/docs/0.3.0/script-reference/server-events/player/onPlayerTakeItem/)
## Parameters
* `dict` **kwargs**:
* `int` **playerid**: the id of the player who tries to take the ground item.
* `ItemGround` **itemGround**: the ground item object which player tried to to take.
## Usage
```python
import pyg2o as g2o
@g2o.event('onPlayerTakeItem')
async def onTakeItem(playerid, itemGround):
print(f'Player {playerid} took {itemGround.instance} x{itemGround.amount}')
```

View File

@@ -0,0 +1,18 @@
# `event` onPlayerTeleport
This event is triggered when player gets teleported by the game to the specified vob.
Original: [onPlayerTeleport](https://gothicmultiplayerteam.gitlab.io/docs/0.3.0/script-reference/server-events/player/onPlayerTeleport/)
## Parameters
* `dict` **kwargs**:
* `int` **playerid**: the id of the player who gets teleported by the game.
* `str` **vobName**: represents the name of the vob that player gets teleported to.
## Usage
```python
import pyg2o as g2o
@g2o.event('onPlayerTeleport')
async def onTeleport(playerid, vobName):
print(playerid, 'teleported to', vobName)
```

View File

@@ -0,0 +1,20 @@
# `event` onPlayerTeleport
This event is triggered when player face animation is toggled (played or stopped), due to eating or other activities.
Original: [onPlayerToggleFaceAni](https://gothicmultiplayerteam.gitlab.io/docs/0.3.0/script-reference/server-events/player/onPlayerToggleFaceAni/)
## Parameters
* `dict` **kwargs**:
* `int` **playerid**: the id of the player who gets teleported by the game.
* `str` **aniName**: the face animation name.
* `bool` **toggle**: `true` when player is started playing face animation, otherwise `false`.
## Usage
```python
import g2o
@g2o.event('onPlayerToggleFaceAni')
async def onToggleFA(playerid, aniName, toggle):
if toggle:
print(playerid, 'started face ani', aniName)
```