1219 lines
41 KiB
Markdown
1219 lines
41 KiB
Markdown
---
|
||
sidebarDepth: 1
|
||
---
|
||
# 世界
|
||
|
||
# 索引
|
||
|
||
| 事件 | <div style="width: 3em"></div> | 描述 |
|
||
| --- | --- | --- |
|
||
| [AchievementCompleteEvent](世界.md#achievementcompleteevent) | <span style="display:inline;color:#ff5555">服务端</span> | 玩家完成自定义成就时触发该事件 |
|
||
| [AddEntityClientEvent](世界.md#addentityclientevent) | <span style="display:inline;color:#7575f9">客户端</span> | 客户端侧创建新实体时触发 |
|
||
| [AddEntityServerEvent](世界.md#addentityserverevent) | <span style="display:inline;color:#ff5555">服务端</span> | 服务端侧创建新实体,或实体从存档加载时触发 |
|
||
| [AddPlayerAOIClientEvent](世界.md#addplayeraoiclientevent) | <span style="display:inline;color:#7575f9">客户端</span> | 玩家加入游戏或者其余玩家进入当前玩家所在的区块时触发的AOI事件,替换AddPlayerEvent |
|
||
| [AddPlayerCreatedClientEvent](世界.md#addplayercreatedclientevent) | <span style="display:inline;color:#7575f9">客户端</span> | 玩家进入当前玩家所在的区块AOI后,玩家皮肤数据异步加载完成后触发的事件 |
|
||
| [AddServerPlayerEvent](世界.md#addserverplayerevent) | <span style="display:inline;color:#ff5555">服务端</span> | 触发时机:玩家加入时触发该事件。 |
|
||
| [ChunkAcquireDiscardedClientEvent](世界.md#chunkacquirediscardedclientevent) | <span style="display:inline;color:#7575f9">客户端</span> | 触发时机:客户端区块即将被卸载时 |
|
||
| [ChunkAcquireDiscardedServerEvent](世界.md#chunkacquirediscardedserverevent) | <span style="display:inline;color:#ff5555">服务端</span> | 服务端区块即将被卸载时触发 |
|
||
| [ChunkGeneratedServerEvent](世界.md#chunkgeneratedserverevent) | <span style="display:inline;color:#ff5555">服务端</span> | 触发时机:区块创建完成时触发 |
|
||
| [ChunkLoadedClientEvent](世界.md#chunkloadedclientevent) | <span style="display:inline;color:#7575f9">客户端</span> | 触发时机:客户端区块加载完成时 |
|
||
| [ChunkLoadedServerEvent](世界.md#chunkloadedserverevent) | <span style="display:inline;color:#ff5555">服务端</span> | 触发时机:服务端区块加载完成时 |
|
||
| [ClientLoadAddonsFinishServerEvent](世界.md#clientloadaddonsfinishserverevent) | <span style="display:inline;color:#ff5555">服务端</span> | 触发时机:客户端mod加载完成时,服务端触发此事件。服务器可以使用此事件,往客户端发送数据给其初始化。 |
|
||
| [CommandEvent](世界.md#commandevent) | <span style="display:inline;color:#ff5555">服务端</span> | 玩家请求执行指令时触发 |
|
||
| [DelServerPlayerEvent](世界.md#delserverplayerevent) | <span style="display:inline;color:#ff5555">服务端</span> | 触发时机:删除玩家时触发该事件。 |
|
||
| [EntityRemoveEvent](世界.md#entityremoveevent) | <span style="display:inline;color:#ff5555">服务端</span> | 实体被删除时触发 |
|
||
| [ExplosionServerEvent](世界.md#explosionserverevent) | <span style="display:inline;color:#ff5555">服务端</span> | 当发生爆炸时触发。 |
|
||
| [LoadClientAddonScriptsAfter](世界.md#loadclientaddonscriptsafter) | <span style="display:inline;color:#7575f9">客户端</span> | 客户端加载mod完成事件 |
|
||
| [LoadServerAddonScriptsAfter](世界.md#loadserveraddonscriptsafter) | <span style="display:inline;color:#ff5555">服务端</span> | 服务器加载完mod时触发 |
|
||
| [NewOnEntityAreaEvent](世界.md#newonentityareaevent) | <span style="display:inline;color:#ff5555">服务端</span> | 触发时机:通过RegisterEntityAOIEvent注册过AOI事件后,当有实体进入或离开注册感应区域时触发该事件。 |
|
||
| [OnCommandOutputClientEvent](世界.md#oncommandoutputclientevent) | <span style="display:inline;color:#7575f9">客户端</span> | 当command命令有成功消息输出时触发 |
|
||
| [OnCommandOutputServerEvent](世界.md#oncommandoutputserverevent) | <span style="display:inline;color:#ff5555">服务端</span> | Command命令执行成功事件 |
|
||
| [OnContainerFillLoottableServerEvent](世界.md#oncontainerfillloottableserverevent) | <span style="display:inline;color:#ff5555">服务端</span> | 触发时机:随机奖励箱第一次打开根据loottable生成物品时 |
|
||
| [OnLightningLevelChangeServerEvent](世界.md#onlightninglevelchangeserverevent) | <span style="display:inline;color:#ff5555">服务端</span> | 打雷强度发生改变 |
|
||
| [OnLocalLightningLevelChangeServerEvent](世界.md#onlocallightninglevelchangeserverevent) | <span style="display:inline;color:#ff5555">服务端</span> | 独立维度天气打雷强度发生改变时触发 |
|
||
| [OnLocalPlayerStopLoading](世界.md#onlocalplayerstoploading) | <span style="display:inline;color:#7575f9">客户端</span> | 触发时机:玩家进入存档,出生点地形加载完成时触发。该事件触发时可以进行切换维度的操作。 |
|
||
| [OnLocalRainLevelChangeServerEvent](世界.md#onlocalrainlevelchangeserverevent) | <span style="display:inline;color:#ff5555">服务端</span> | 独立维度天气下雨强度发生改变时触发 |
|
||
| [OnRainLevelChangeServerEvent](世界.md#onrainlevelchangeserverevent) | <span style="display:inline;color:#ff5555">服务端</span> | 下雨强度发生改变 |
|
||
| [OnScriptTickClient](世界.md#onscripttickclient) | <span style="display:inline;color:#7575f9">客户端</span> | 客户端tick事件,1秒30次 |
|
||
| [OnScriptTickServer](世界.md#onscripttickserver) | <span style="display:inline;color:#ff5555">服务端</span> | 服务器tick时触发,1秒有30个tick |
|
||
| [PlaceNeteaseStructureFeatureEvent](世界.md#placeneteasestructurefeatureevent) | <span style="display:inline;color:#ff5555">服务端</span> | 触发时机:首次生成地形时,结构特征即将生成时服务端抛出该事件。 |
|
||
| [PlayerIntendLeaveServerEvent](世界.md#playerintendleaveserverevent) | <span style="display:inline;color:#ff5555">服务端</span> | 触发时机:即将删除玩家时触发该事件,此时可以通过各种API获取玩家的当前状态。 |
|
||
| [PlayerJoinMessageEvent](世界.md#playerjoinmessageevent) | <span style="display:inline;color:#ff5555">服务端</span> | 触发时机:准备显示“xxx加入游戏”的玩家登录提示文字时服务端抛出的事件。 |
|
||
| [PlayerLeftMessageServerEvent](世界.md#playerleftmessageserverevent) | <span style="display:inline;color:#ff5555">服务端</span> | 触发时机:准备显示“xxx离开游戏”的玩家离开提示文字时服务端抛出的事件。 |
|
||
| [RemoveEntityClientEvent](世界.md#removeentityclientevent) | <span style="display:inline;color:#7575f9">客户端</span> | 客户端侧实体被移除时触发 |
|
||
| [RemovePlayerAOIClientEvent](世界.md#removeplayeraoiclientevent) | <span style="display:inline;color:#7575f9">客户端</span> | 玩家离开当前玩家同一个区块时触发AOI事件 |
|
||
| [ServerChatEvent](世界.md#serverchatevent) | <span style="display:inline;color:#ff5555">服务端</span> | 玩家发送聊天信息时触发 |
|
||
| [ServerPostBlockPatternEvent](世界.md#serverpostblockpatternevent) | <span style="display:inline;color:#ff5555">服务端</span> | 触发时机:用方块组合生成生物,生成生物之后触发该事件。 |
|
||
| [ServerPreBlockPatternEvent](世界.md#serverpreblockpatternevent) | <span style="display:inline;color:#ff5555">服务端</span> | 触发时机:用方块组合生成生物,在放置最后一个组成方块时触发该事件。 |
|
||
| [ServerSpawnMobEvent](世界.md#serverspawnmobevent) | <span style="display:inline;color:#ff5555">服务端</span> | 游戏内自动生成生物,以及使用api生成生物时触发 |
|
||
| [UnLoadClientAddonScriptsBefore](世界.md#unloadclientaddonscriptsbefore) | <span style="display:inline;color:#7575f9">客户端</span> | 客户端卸载mod之前触发 |
|
||
# 世界
|
||
|
||
## AchievementCompleteEvent
|
||
|
||
<span style="display:inline;color:#ff5555">服务端</span>
|
||
|
||
- 描述
|
||
|
||
玩家完成自定义成就时触发该事件
|
||
|
||
- 参数
|
||
|
||
| 参数名 | <div style="width: 4em">数据类型</div> | 说明 |
|
||
| :--- | :--- | :--- |
|
||
| playerId | str | 玩家id |
|
||
| rootNodeId | str | 所属的页面的根节点成就id |
|
||
| achievementId | str | 达成的成就id |
|
||
| title | str | 成就标题 |
|
||
| description | str | 成就描述 |
|
||
|
||
- 返回值
|
||
|
||
无
|
||
|
||
在零件中直接声明一个同名函数,即可完成监听,详情参考<a href="../../../mcguide/20-玩法开发/14-预设玩法编程/2-深入理解零件/0-零件开发.html#零件事件">零件事件</a>
|
||
|
||
|
||
## AddEntityClientEvent
|
||
|
||
<span style="display:inline;color:#7575f9">客户端</span>
|
||
|
||
- 描述
|
||
|
||
客户端侧创建新实体时触发
|
||
|
||
- 参数
|
||
|
||
| 参数名 | <div style="width: 4em">数据类型</div> | 说明 |
|
||
| :--- | :--- | :--- |
|
||
| id | str | 实体id |
|
||
| posX | float | 位置x |
|
||
| posY | float | 位置y |
|
||
| posZ | float | 位置z |
|
||
| dimensionId | int | 实体维度 |
|
||
| isBaby | bool | 是否为幼儿 |
|
||
| engineTypeStr | str | 实体类型 |
|
||
| itemName | str | 物品identifier(仅当物品实体时存在该字段) |
|
||
| auxValue | int | 物品附加值(仅当物品实体时存在该字段) |
|
||
|
||
- 返回值
|
||
|
||
无
|
||
|
||
- 备注
|
||
- 创建玩家时不会触发该事件
|
||
|
||
在零件中直接声明一个同名函数,即可完成监听,详情参考<a href="../../../mcguide/20-玩法开发/14-预设玩法编程/2-深入理解零件/0-零件开发.html#零件事件">零件事件</a>
|
||
|
||
|
||
## AddEntityServerEvent
|
||
|
||
<span style="display:inline;color:#ff5555">服务端</span>
|
||
|
||
- 描述
|
||
|
||
服务端侧创建新实体,或实体从存档加载时触发
|
||
|
||
- 参数
|
||
|
||
| 参数名 | <div style="width: 4em">数据类型</div> | 说明 |
|
||
| :--- | :--- | :--- |
|
||
| id | str | 实体id |
|
||
| posX | float | 位置x |
|
||
| posY | float | 位置y |
|
||
| posZ | float | 位置z |
|
||
| dimensionId | int | 实体维度 |
|
||
| isBaby | bool | 是否为幼儿 |
|
||
| engineTypeStr | str | 实体类型,即实体identifier |
|
||
| itemName | str | 物品identifier(仅当物品实体时存在该字段) |
|
||
| auxValue | int | 物品附加值(仅当物品实体时存在该字段) |
|
||
|
||
- 返回值
|
||
|
||
无
|
||
|
||
- 备注
|
||
- 创建玩家时不会触发该事件
|
||
|
||
在零件中直接声明一个同名函数,即可完成监听,详情参考<a href="../../../mcguide/20-玩法开发/14-预设玩法编程/2-深入理解零件/0-零件开发.html#零件事件">零件事件</a>
|
||
|
||
|
||
## AddPlayerAOIClientEvent
|
||
|
||
<span style="display:inline;color:#7575f9">客户端</span>
|
||
|
||
- 描述
|
||
|
||
玩家加入游戏或者其余玩家进入当前玩家所在的区块时触发的AOI事件,替换AddPlayerEvent
|
||
|
||
- 参数
|
||
|
||
| 参数名 | <div style="width: 4em">数据类型</div> | 说明 |
|
||
| :--- | :--- | :--- |
|
||
| playerId | str | 玩家id |
|
||
|
||
- 返回值
|
||
|
||
无
|
||
|
||
- 备注
|
||
- 该事件触发只表明在服务端数据中接收到了新玩家,并不能代表此时玩家在客户端中可见,若想在玩家进入AOI后立马调用玩家渲染相关接口,建议使用[AddPlayerCreatedClientEvent](#addplayercreatedclientevent)。
|
||
|
||
在零件中直接声明一个同名函数,即可完成监听,详情参考<a href="../../../mcguide/20-玩法开发/14-预设玩法编程/2-深入理解零件/0-零件开发.html#零件事件">零件事件</a>
|
||
|
||
|
||
## AddPlayerCreatedClientEvent
|
||
|
||
<span style="display:inline;color:#7575f9">客户端</span>
|
||
|
||
- 描述
|
||
|
||
玩家进入当前玩家所在的区块AOI后,玩家皮肤数据异步加载完成后触发的事件
|
||
|
||
- 参数
|
||
|
||
| 参数名 | <div style="width: 4em">数据类型</div> | 说明 |
|
||
| :--- | :--- | :--- |
|
||
| playerId | str | 玩家id |
|
||
|
||
- 返回值
|
||
|
||
无
|
||
|
||
- 备注
|
||
- 由于玩家皮肤是异步加载的原因,该事件触发时机比[AddPlayerAOIClientEvent](#addplayeraoiclientevent)晚,触发该事件后可以对该玩家调用相关[玩家渲染接口](../接口/玩家/渲染.md)。
|
||
- 当前客户端每加载好一个玩家的皮肤,就会触发一次该事件,比如刚进入世界时,localPlayer加载好会触发一次,周围的所有玩家加载好后也会分别触发一次。
|
||
|
||
在零件中直接声明一个同名函数,即可完成监听,详情参考<a href="../../../mcguide/20-玩法开发/14-预设玩法编程/2-深入理解零件/0-零件开发.html#零件事件">零件事件</a>
|
||
|
||
|
||
## AddServerPlayerEvent
|
||
|
||
<span style="display:inline;color:#ff5555">服务端</span>
|
||
|
||
- 描述
|
||
|
||
触发时机:玩家加入时触发该事件。
|
||
|
||
- 参数
|
||
|
||
| 参数名 | <div style="width: 4em">数据类型</div> | 说明 |
|
||
| :--- | :--- | :--- |
|
||
| id | str | 玩家id |
|
||
| isTransfer | bool | 是否是切服时进入服务器,仅用于Apollo。如果是True,则表示切服时加入服务器,若是False,则表示登录进入网络游戏 |
|
||
| isReconnect | bool | 是否是断线重连,仅用于Apollo。如果是True,则表示本次登录是断线重连,若是False,则表示本次是正常登录或者转服 |
|
||
| isPeUser | bool | 是否从手机端登录,仅用于Apollo。如果是True,则表示本次登录是从手机端登录,若是False,则表示本次登录是从PC端登录 |
|
||
| transferParam | str | 切服传入参数,仅用于Apollo。调用【TransferToOtherServer】或【TransferToOtherServerById】传入的切服参数 |
|
||
| uid | int/long | 仅用于Apollo,玩家的netease uid,玩家的唯一标识 |
|
||
| proxyId | int | 仅用于Apollo,当前客户端连接的proxy服务器id |
|
||
|
||
- 返回值
|
||
|
||
无
|
||
|
||
- 备注
|
||
- 触发此事件时,客户端mod未加载完毕,因此响应本事件时不能客户端发送事件。若需要在玩家进入世界时,服务器往客户端发送事件,请使用ClientLoadAddonsFinishServerEvent
|
||
- 触发此事件时,玩家的实体还未加载完毕,请勿在这时切换维度。请在客户端监听OnLocalPlayerStopLoading事件并发送事件到server端再进行维度切换。
|
||
|
||
在零件中直接声明一个同名函数,即可完成监听,详情参考<a href="../../../mcguide/20-玩法开发/14-预设玩法编程/2-深入理解零件/0-零件开发.html#零件事件">零件事件</a>
|
||
|
||
|
||
## ChunkAcquireDiscardedClientEvent
|
||
|
||
<span style="display:inline;color:#7575f9">客户端</span>
|
||
|
||
- 描述
|
||
|
||
触发时机:客户端区块即将被卸载时
|
||
|
||
- 参数
|
||
|
||
| 参数名 | <div style="width: 4em">数据类型</div> | 说明 |
|
||
| :--- | :--- | :--- |
|
||
| dimension | int | 区块所在维度 |
|
||
| chunkPosX | int | 区块的x坐标,对应方块X坐标区间为[x * 16, x * 16 + 15] |
|
||
| chunkPosZ | int | 区块的z坐标,对应方块Z坐标区间为[z * 16, z * 16 + 15] |
|
||
|
||
- 返回值
|
||
|
||
无
|
||
|
||
- 备注
|
||
- 区块卸载:游戏只会加载玩家周围的区块,玩家移动到别的区域时,原来所在区域的区块会被卸载,参考[区块介绍](https://minecraft-zh.gamepedia.com/%E5%8C%BA%E5%9D%97)
|
||
|
||
|
||
|
||
## ChunkAcquireDiscardedServerEvent
|
||
|
||
<span style="display:inline;color:#ff5555">服务端</span>
|
||
|
||
- 描述
|
||
|
||
服务端区块即将被卸载时触发
|
||
|
||
- 参数
|
||
|
||
| 参数名 | <div style="width: 4em">数据类型</div> | 说明 |
|
||
| :--- | :--- | :--- |
|
||
| dimension | int | 区块所在维度 |
|
||
| chunkPosX | int | 区块的x坐标,对应方块X坐标区间为[x * 16, x * 16 + 15] |
|
||
| chunkPosZ | int | 区块的z坐标,对应方块Z坐标区间为[z * 16, z * 16 + 15] |
|
||
| entities | list(str) | 随区块卸载而从世界移除的实体id的列表。注意事件触发时已经无法获取到这些实体的信息,仅供脚本资源回收用。 |
|
||
| blockEntities | list(dict) | 随区块卸载而从世界移除的自定义方块实体的坐标的列表,列表元素dict包含posX,posY,posZ三个int表示自定义方块实体的坐标。注意事件触发时已经无法获取到这些方块实体的信息,仅供脚本资源回收用。 |
|
||
|
||
- 返回值
|
||
|
||
无
|
||
|
||
- 备注
|
||
- 区块卸载:游戏只会加载玩家周围的区块,玩家移动到别的区域时,原来所在区域的区块会被卸载,参考[区块介绍](https://minecraft-zh.gamepedia.com/%E5%8C%BA%E5%9D%97)
|
||
|
||
|
||
|
||
## ChunkGeneratedServerEvent
|
||
|
||
<span style="display:inline;color:#ff5555">服务端</span>
|
||
|
||
- 描述
|
||
|
||
触发时机:区块创建完成时触发
|
||
|
||
- 参数
|
||
|
||
| 参数名 | <div style="width: 4em">数据类型</div> | 说明 |
|
||
| :--- | :--- | :--- |
|
||
| dimension | int | 该区块所在的维度 |
|
||
| blockEntityData | [{"blockName":str,"posX":int,"posY":int,"posZ":int}...]/None | 该区块中的自定义方块实体列表,通常是由自定义特征生成的自定义方块,没有自定义方块实体时该值为None |
|
||
|
||
- 返回值
|
||
|
||
无
|
||
|
||
|
||
|
||
## ChunkLoadedClientEvent
|
||
|
||
<span style="display:inline;color:#7575f9">客户端</span>
|
||
|
||
- 描述
|
||
|
||
触发时机:客户端区块加载完成时
|
||
|
||
- 参数
|
||
|
||
| 参数名 | <div style="width: 4em">数据类型</div> | 说明 |
|
||
| :--- | :--- | :--- |
|
||
| dimension | int | 区块所在维度 |
|
||
| chunkPosX | int | 区块的x坐标,对应方块X坐标区间为[x * 16, x * 16 + 15] |
|
||
| chunkPosZ | int | 区块的z坐标,对应方块Z坐标区间为[z * 16, z * 16 + 15] |
|
||
|
||
- 返回值
|
||
|
||
无
|
||
|
||
|
||
|
||
## ChunkLoadedServerEvent
|
||
|
||
<span style="display:inline;color:#ff5555">服务端</span>
|
||
|
||
- 描述
|
||
|
||
触发时机:服务端区块加载完成时
|
||
|
||
- 参数
|
||
|
||
| 参数名 | <div style="width: 4em">数据类型</div> | 说明 |
|
||
| :--- | :--- | :--- |
|
||
| dimension | int | 区块所在维度 |
|
||
| chunkPosX | int | 区块的x坐标,对应方块X坐标区间为[x * 16, x * 16 + 15] |
|
||
| chunkPosZ | int | 区块的z坐标,对应方块Z坐标区间为[z * 16, z * 16 + 15] |
|
||
|
||
- 返回值
|
||
|
||
无
|
||
|
||
|
||
|
||
## ClientLoadAddonsFinishServerEvent
|
||
|
||
<span style="display:inline;color:#ff5555">服务端</span>
|
||
|
||
- 描述
|
||
|
||
触发时机:客户端mod加载完成时,服务端触发此事件。服务器可以使用此事件,往客户端发送数据给其初始化。
|
||
|
||
- 参数
|
||
|
||
| 参数名 | <div style="width: 4em">数据类型</div> | 说明 |
|
||
| :--- | :--- | :--- |
|
||
| playerId | str | 玩家id |
|
||
|
||
- 返回值
|
||
|
||
无
|
||
|
||
在零件中直接声明一个同名函数,即可完成监听,详情参考<a href="../../../mcguide/20-玩法开发/14-预设玩法编程/2-深入理解零件/0-零件开发.html#零件事件">零件事件</a>
|
||
|
||
|
||
## CommandEvent
|
||
|
||
<span style="display:inline;color:#ff5555">服务端</span>
|
||
|
||
- 描述
|
||
|
||
玩家请求执行指令时触发
|
||
|
||
- 参数
|
||
|
||
| 参数名 | <div style="width: 4em">数据类型</div> | 说明 |
|
||
| :--- | :--- | :--- |
|
||
| entityId | str | 玩家ID |
|
||
| command | str | 指令字符串 |
|
||
| cancel | bool | 是否取消 |
|
||
|
||
- 返回值
|
||
|
||
无
|
||
|
||
- 备注
|
||
- 该事件是玩家请求执行指令时触发的Hook,该事件不响应命令方块的指令和通过modSDK调用的指令,阻止玩家的该条指令只需要将cancel设置为True
|
||
|
||
在零件中直接声明一个同名函数,即可完成监听,详情参考<a href="../../../mcguide/20-玩法开发/14-预设玩法编程/2-深入理解零件/0-零件开发.html#零件事件">零件事件</a>
|
||
|
||
|
||
## DelServerPlayerEvent
|
||
|
||
<span style="display:inline;color:#ff5555">服务端</span>
|
||
|
||
- 描述
|
||
|
||
触发时机:删除玩家时触发该事件。
|
||
|
||
- 参数
|
||
|
||
| 参数名 | <div style="width: 4em">数据类型</div> | 说明 |
|
||
| :--- | :--- | :--- |
|
||
| id | str | 玩家id |
|
||
| isTransfer | bool | 是否是切服时退出服务器,仅用于Apollo。如果是True,则表示切服时退出服务器;若是False,则表示退出网络游戏 |
|
||
| uid | int/long | 玩家的netease uid,玩家的唯一标识 |
|
||
|
||
- 返回值
|
||
|
||
无
|
||
|
||
在零件中直接声明一个同名函数,即可完成监听,详情参考<a href="../../../mcguide/20-玩法开发/14-预设玩法编程/2-深入理解零件/0-零件开发.html#零件事件">零件事件</a>
|
||
|
||
|
||
## EntityRemoveEvent
|
||
|
||
<span style="display:inline;color:#ff5555">服务端</span>
|
||
|
||
- 描述
|
||
|
||
实体被删除时触发
|
||
|
||
- 参数
|
||
|
||
| 参数名 | <div style="width: 4em">数据类型</div> | 说明 |
|
||
| :--- | :--- | :--- |
|
||
| id | str | 实体id |
|
||
|
||
- 返回值
|
||
|
||
无
|
||
|
||
- 备注
|
||
- 触发情景:实体从场景中被删除,例如:生物死亡,生物被[清除](https://minecraft.fandom.com/zh/wiki/%E7%94%9F%E6%88%90#.E6.B8.85.E9.99.A4),玩家退出游戏,船/盔甲架被破坏,掉落物/经验球被捡起或清除
|
||
- 当生物随区块卸载时,不会触发该事件,而是ChunkAcquireDiscardedServerEvent事件
|
||
- 关于生物的清除:当生物离玩家大于wiki所说的距离,并且还在玩家的模拟距离内时,会被清除。也就是说,如果玩家瞬间传送到远处,原处的生物马上离开了模拟距离,并不会被清除
|
||
- 玩家退出游戏时,EntityRemoveEvent,DelServerPlayerEvent按顺序依次触发
|
||
|
||
在零件中直接声明一个同名函数,即可完成监听,详情参考<a href="../../../mcguide/20-玩法开发/14-预设玩法编程/2-深入理解零件/0-零件开发.html#零件事件">零件事件</a>
|
||
|
||
|
||
## ExplosionServerEvent
|
||
|
||
<span style="display:inline;color:#ff5555">服务端</span>
|
||
|
||
- 描述
|
||
|
||
当发生爆炸时触发。
|
||
|
||
- 参数
|
||
|
||
| 参数名 | <div style="width: 4em">数据类型</div> | 说明 |
|
||
| :--- | :--- | :--- |
|
||
| blocks | list[[x,y,z,cancel],...] | 爆炸涉及到的方块坐标(x,y,z),cancel是一个bool值 |
|
||
| victims | list/None | 受伤实体id列表,当该爆炸创建者id为None时,victims也为None |
|
||
| sourceId | str/None | 爆炸创建者id |
|
||
| explodePos | list | 爆炸位置[x,y,z] |
|
||
| dimensionId | int | 维度id |
|
||
|
||
- 返回值
|
||
|
||
无
|
||
|
||
- 备注
|
||
- 通过设置blocks中cancel的bool值为True可以将该方块的爆炸取消,例如(x,y,z,True)
|
||
- 某些情况下爆炸创建者id为None,此时受伤实体id列表也为None,比如爬行者所造成的爆炸。
|
||
|
||
在零件中直接声明一个同名函数,即可完成监听,详情参考<a href="../../../mcguide/20-玩法开发/14-预设玩法编程/2-深入理解零件/0-零件开发.html#零件事件">零件事件</a>
|
||
|
||
|
||
## LoadClientAddonScriptsAfter
|
||
|
||
<span style="display:inline;color:#7575f9">客户端</span>
|
||
|
||
- 描述
|
||
|
||
客户端加载mod完成事件
|
||
|
||
- 参数
|
||
|
||
无
|
||
|
||
- 返回值
|
||
|
||
无
|
||
|
||
|
||
|
||
## LoadServerAddonScriptsAfter
|
||
|
||
<span style="display:inline;color:#ff5555">服务端</span>
|
||
|
||
- 描述
|
||
|
||
服务器加载完mod时触发
|
||
|
||
- 参数
|
||
|
||
无
|
||
|
||
- 返回值
|
||
|
||
无
|
||
|
||
|
||
|
||
## NewOnEntityAreaEvent
|
||
|
||
<span style="display:inline;color:#ff5555">服务端</span>
|
||
|
||
- 描述
|
||
|
||
触发时机:通过RegisterEntityAOIEvent注册过AOI事件后,当有实体进入或离开注册感应区域时触发该事件。
|
||
|
||
- 参数
|
||
|
||
| 参数名 | <div style="width: 4em">数据类型</div> | 说明 |
|
||
| :--- | :--- | :--- |
|
||
| name | str | 注册感应区域名称 |
|
||
| enteredEntities | list[str] | 进入该感应区域的实体id列表 |
|
||
| leftEntities | list[str] | 离开该感应区域的实体id列表 |
|
||
|
||
- 返回值
|
||
|
||
无
|
||
|
||
- 备注
|
||
- 本事件代替原有的OnEntityAreaEvent事件
|
||
|
||
- 示例
|
||
|
||
```python
|
||
# ServerSystem
|
||
import mod.server.extraServerApi as serverApi
|
||
self.ListenForEvent(serverApi.GetEngineNamespace(),
|
||
serverApi.GetEngineSystemName(),
|
||
"NewOnEntityAreaEvent",
|
||
self, self.NewOnEntityAreaEvent)
|
||
def NewOnEntityAreaEvent(self, args):
|
||
name = args['name']
|
||
```
|
||
|
||
|
||
|
||
### 相关接口
|
||
|
||
<span id="RegisterEntityAOIEvent"></span>
|
||
### RegisterEntityAOIEvent
|
||
|
||
method in mod.server.component.dimensionCompServer.DimensionCompServer
|
||
|
||
- 描述
|
||
|
||
注册感应区域,有实体进入时和离开时会有消息通知
|
||
|
||
- 参数
|
||
|
||
| 参数名 | <div style="width: 4em">数据类型</div> | 说明 |
|
||
| :--- | :--- | :--- |
|
||
| dimension | int | 维度id |
|
||
| name | str | 注册的感应区域名 |
|
||
| aabb | tuple(float,float,float,float,float,float) | 感应区域的坐标范围,依次为minX, minY, minZ, maxX, maxY, maxZ |
|
||
| ignoredEntities | list(str) | 忽略的实体id列表 |
|
||
| entityType | int | 期望响应的实体类型,不传则响应所有的实体类型[EntityType枚举](../枚举值/EntityType.md) |
|
||
|
||
- 返回值
|
||
|
||
| <div style="width: 4em">数据类型</div> | 说明 |
|
||
| :--- | :--- |
|
||
| bool | 是否注册成功 |
|
||
|
||
- 备注
|
||
- 注册完感应区域后,需通过监听OnEntityAreaEvent或NewOnEntityAreaEvent事件来获取感应事件
|
||
- 不支持长或宽大于2000格的区域。对于大范围区域,建议在脚本中每隔一段时间获取实体坐标判断来实现。
|
||
|
||
- 示例
|
||
|
||
```python
|
||
import mod.server.extraServerApi as serverApi
|
||
comp = serverApi.GetEngineCompFactory().CreateDimension(levelId)
|
||
comp.RegisterEntityAOIEvent(0, "test", (0, 0, 0, 1, 1, 1), None)
|
||
```
|
||
|
||
|
||
|
||
<span id="UnRegisterEntityAOIEvent"></span>
|
||
### UnRegisterEntityAOIEvent
|
||
|
||
method in mod.server.component.dimensionCompServer.DimensionCompServer
|
||
|
||
- 描述
|
||
|
||
反注册感应区域
|
||
|
||
- 参数
|
||
|
||
| 参数名 | <div style="width: 4em">数据类型</div> | 说明 |
|
||
| :--- | :--- | :--- |
|
||
| dimension | int | 维度id |
|
||
| name | str | 需要反注册的感应区域名 |
|
||
|
||
- 返回值
|
||
|
||
| <div style="width: 4em">数据类型</div> | 说明 |
|
||
| :--- | :--- |
|
||
| bool | 是否注册成功 |
|
||
|
||
- 示例
|
||
|
||
```python
|
||
import mod.server.extraServerApi as serverApi
|
||
comp = serverApi.GetEngineCompFactory().CreateDimension(levelId)
|
||
comp.UnRegisterEntityAOIEvent(0, "test")
|
||
```
|
||
|
||
|
||
|
||
## OnCommandOutputClientEvent
|
||
|
||
<span style="display:inline;color:#7575f9">客户端</span>
|
||
|
||
- 描述
|
||
|
||
当command命令有成功消息输出时触发
|
||
|
||
- 参数
|
||
|
||
| 参数名 | <div style="width: 4em">数据类型</div> | 说明 |
|
||
| :--- | :--- | :--- |
|
||
| command | str | 命令名称 |
|
||
| message | str | 命令返回的消息 |
|
||
|
||
- 返回值
|
||
|
||
无
|
||
|
||
- 备注
|
||
- 部分命令在返回的时候没有命令名称,命令组件需要showOutput参数为True时才会有返回
|
||
|
||
|
||
|
||
## OnCommandOutputServerEvent
|
||
|
||
<span style="display:inline;color:#ff5555">服务端</span>
|
||
|
||
- 描述
|
||
|
||
Command命令执行成功事件
|
||
|
||
- 参数
|
||
|
||
| 参数名 | <div style="width: 4em">数据类型</div> | 说明 |
|
||
| :--- | :--- | :--- |
|
||
| command | str | 命令名称 |
|
||
| message | str | 命令返回的消息 |
|
||
|
||
- 返回值
|
||
|
||
无
|
||
|
||
- 备注
|
||
- 部分命令在返回的时候没有命令名称,命令组件需要showOutput参数为True时才会有返回
|
||
|
||
|
||
|
||
## OnContainerFillLoottableServerEvent
|
||
|
||
<span style="display:inline;color:#ff5555">服务端</span>
|
||
|
||
- 描述
|
||
|
||
触发时机:随机奖励箱第一次打开根据loottable生成物品时
|
||
|
||
- 参数
|
||
|
||
| 参数名 | <div style="width: 4em">数据类型</div> | 说明 |
|
||
| :--- | :--- | :--- |
|
||
| loottable | str | 奖励箱子所读取的loottable的json路径 |
|
||
| playerId | str | 打开奖励箱子的玩家的playerId |
|
||
| itemList | list | 掉落物品列表,每个元素为一个itemDict,格式可参考<a href="../../../mcguide/20-玩法开发/10-基本概念/1-我的世界基础概念.html#物品信息字典#物品信息字典">物品信息字典</a> |
|
||
| dirty | bool | 默认为False,如果需要修改掉落列表需将该值设为True |
|
||
|
||
- 返回值
|
||
|
||
无
|
||
|
||
- 备注
|
||
- 只有当dirty为True时才会重新读取item列表并生成对应的掉落物,如果不需要修改掉落结果的话请勿随意修改dirty值
|
||
|
||
在零件中直接声明一个同名函数,即可完成监听,详情参考<a href="../../../mcguide/20-玩法开发/14-预设玩法编程/2-深入理解零件/0-零件开发.html#零件事件">零件事件</a>
|
||
|
||
|
||
## OnLightningLevelChangeServerEvent
|
||
|
||
<span style="display:inline;color:#ff5555">服务端</span>
|
||
|
||
- 描述
|
||
|
||
打雷强度发生改变
|
||
|
||
- 参数
|
||
|
||
| 参数名 | <div style="width: 4em">数据类型</div> | 说明 |
|
||
| :--- | :--- | :--- |
|
||
| oldLevel | float | 改变前的打雷强度 |
|
||
| newLevel | float | 改变后的打雷强度 |
|
||
|
||
- 返回值
|
||
|
||
无
|
||
|
||
|
||
|
||
## OnLocalLightningLevelChangeServerEvent
|
||
|
||
<span style="display:inline;color:#ff5555">服务端</span>
|
||
|
||
- 描述
|
||
|
||
独立维度天气打雷强度发生改变时触发
|
||
|
||
- 参数
|
||
|
||
| 参数名 | <div style="width: 4em">数据类型</div> | 说明 |
|
||
| :--- | :--- | :--- |
|
||
| oldLevel | float | 改变前的打雷强度 |
|
||
| newLevel | float | 改变后的打雷强度 |
|
||
| dimensionId | int | 独立天气维度id |
|
||
|
||
- 返回值
|
||
|
||
无
|
||
|
||
|
||
|
||
## OnLocalPlayerStopLoading
|
||
|
||
<span style="display:inline;color:#7575f9">客户端</span>
|
||
|
||
- 描述
|
||
|
||
触发时机:玩家进入存档,出生点地形加载完成时触发。该事件触发时可以进行切换维度的操作。
|
||
|
||
- 参数
|
||
|
||
| 参数名 | <div style="width: 4em">数据类型</div> | 说明 |
|
||
| :--- | :--- | :--- |
|
||
| playerId | str | 加载完成的玩家id |
|
||
|
||
- 返回值
|
||
|
||
无
|
||
|
||
在零件中直接声明一个同名函数,即可完成监听,详情参考<a href="../../../mcguide/20-玩法开发/14-预设玩法编程/2-深入理解零件/0-零件开发.html#零件事件">零件事件</a>
|
||
|
||
|
||
## OnLocalRainLevelChangeServerEvent
|
||
|
||
<span style="display:inline;color:#ff5555">服务端</span>
|
||
|
||
- 描述
|
||
|
||
独立维度天气下雨强度发生改变时触发
|
||
|
||
- 参数
|
||
|
||
| 参数名 | <div style="width: 4em">数据类型</div> | 说明 |
|
||
| :--- | :--- | :--- |
|
||
| oldLevel | float | 改变前的下雨强度 |
|
||
| newLevel | float | 改变后的下雨强度 |
|
||
| dimensionId | int | 独立天气维度id |
|
||
|
||
- 返回值
|
||
|
||
无
|
||
|
||
|
||
|
||
## OnRainLevelChangeServerEvent
|
||
|
||
<span style="display:inline;color:#ff5555">服务端</span>
|
||
|
||
- 描述
|
||
|
||
下雨强度发生改变
|
||
|
||
- 参数
|
||
|
||
| 参数名 | <div style="width: 4em">数据类型</div> | 说明 |
|
||
| :--- | :--- | :--- |
|
||
| oldLevel | float | 改变前的下雨强度 |
|
||
| newLevel | float | 改变后的下雨强度 |
|
||
|
||
- 返回值
|
||
|
||
无
|
||
|
||
|
||
|
||
## OnScriptTickClient
|
||
|
||
<span style="display:inline;color:#7575f9">客户端</span>
|
||
|
||
- 描述
|
||
|
||
客户端tick事件,1秒30次
|
||
|
||
- 参数
|
||
|
||
无
|
||
|
||
- 返回值
|
||
|
||
无
|
||
|
||
|
||
|
||
## OnScriptTickServer
|
||
|
||
<span style="display:inline;color:#ff5555">服务端</span>
|
||
|
||
- 描述
|
||
|
||
服务器tick时触发,1秒有30个tick
|
||
|
||
- 参数
|
||
|
||
无
|
||
|
||
- 返回值
|
||
|
||
无
|
||
|
||
|
||
|
||
## PlaceNeteaseStructureFeatureEvent
|
||
|
||
<span style="display:inline;color:#ff5555">服务端</span>
|
||
|
||
- 描述
|
||
|
||
触发时机:首次生成地形时,结构特征即将生成时服务端抛出该事件。
|
||
|
||
- 参数
|
||
|
||
| 参数名 | <div style="width: 4em">数据类型</div> | 说明 |
|
||
| :--- | :--- | :--- |
|
||
| structureName | str | 结构名称 |
|
||
| x | int | 结构坐标最小方块所在的x坐标 |
|
||
| y | int | 结构坐标最小方块所在的y坐标 |
|
||
| z | int | 结构坐标最小方块所在的z坐标 |
|
||
| biomeType | int | 该feature所放置区块的生物群系类型 |
|
||
| biomeName | str | 该feature所放置区块的生物群系名称 |
|
||
| dimensionId | int | 维度id |
|
||
| cancel | bool | 设置为True时可阻止该结构的放置 |
|
||
|
||
- 返回值
|
||
|
||
无
|
||
|
||
- 备注
|
||
- **需要配合AddNeteaseFeatureWhiteList接口一同使用**
|
||
若在本监听事件中调用其他mod SDK接口将无法生效,强烈建议本事件仅用于设置结构放置与否
|
||
|
||
|
||
|
||
### 相关接口
|
||
|
||
<span id="AddNeteaseFeatureWhiteList"></span>
|
||
### AddNeteaseFeatureWhiteList
|
||
|
||
method in mod.server.component.featureCompServer.FeatureCompServer
|
||
|
||
- 描述
|
||
|
||
添加结构对PlaceNeteaseStructureFeatureEvent事件的脚本层监听
|
||
|
||
- 参数
|
||
|
||
| 参数名 | <div style="width: 4em">数据类型</div> | 说明 |
|
||
| :--- | :--- | :--- |
|
||
| structureName | str | 结构的identifier |
|
||
|
||
- 返回值
|
||
|
||
| <div style="width: 4em">数据类型</div> | 说明 |
|
||
| :--- | :--- |
|
||
| bool | 是否增加成功 |
|
||
|
||
- 示例
|
||
|
||
```python
|
||
import mod.server.extraServerApi as serverApi
|
||
comp = serverApi.GetEngineCompFactory().CreateFeature(levelId)
|
||
# 注意structureName格式为floderName:structureName
|
||
comp.AddNeteaseFeatureWhiteList("test:pumpkins")
|
||
```
|
||
|
||
|
||
|
||
<span id="RemoveNeteaseFeatureWhiteList"></span>
|
||
### RemoveNeteaseFeatureWhiteList
|
||
|
||
method in mod.server.component.featureCompServer.FeatureCompServer
|
||
|
||
- 描述
|
||
|
||
移除structureName对PlaceNeteaseStructureFeatureEvent事件的脚本层监听
|
||
|
||
- 参数
|
||
|
||
| 参数名 | <div style="width: 4em">数据类型</div> | 说明 |
|
||
| :--- | :--- | :--- |
|
||
| structureName | str | 结构名称 |
|
||
|
||
- 返回值
|
||
|
||
| <div style="width: 4em">数据类型</div> | 说明 |
|
||
| :--- | :--- |
|
||
| bool | 是否移除成功 |
|
||
|
||
- 示例
|
||
|
||
```python
|
||
import mod.server.extraServerApi as serverApi
|
||
comp = serverApi.GetEngineCompFactory().CreateFeature(levelId)
|
||
# 注意structureName格式为floderName:structureName
|
||
comp.RemoveNeteaseFeatureWhiteList("test:pumpkins")
|
||
```
|
||
|
||
|
||
|
||
<span id="ClearAllNeteaseFeatureWhiteList"></span>
|
||
### ClearAllNeteaseFeatureWhiteList
|
||
|
||
method in mod.server.component.featureCompServer.FeatureCompServer
|
||
|
||
- 描述
|
||
|
||
清空所有已添加Netease Structure Feature对PlaceNeteaseStructureFeatureEvent事件的脚本层监听
|
||
|
||
- 参数
|
||
|
||
无
|
||
|
||
- 返回值
|
||
|
||
| <div style="width: 4em">数据类型</div> | 说明 |
|
||
| :--- | :--- |
|
||
| bool | 是否清空成功 |
|
||
|
||
- 示例
|
||
|
||
```python
|
||
import mod.server.extraServerApi as serverApi
|
||
comp = serverApi.GetEngineCompFactory().CreateFeature(levelId)
|
||
comp.ClearAllNeteaseFeatureWhiteList()
|
||
```
|
||
|
||
|
||
|
||
## PlayerIntendLeaveServerEvent
|
||
|
||
<span style="display:inline;color:#ff5555">服务端</span>
|
||
|
||
- 描述
|
||
|
||
触发时机:即将删除玩家时触发该事件,此时可以通过各种API获取玩家的当前状态。
|
||
|
||
- 参数
|
||
|
||
| 参数名 | <div style="width: 4em">数据类型</div> | 说明 |
|
||
| :--- | :--- | :--- |
|
||
| playerId | str | 玩家id |
|
||
|
||
- 返回值
|
||
|
||
无
|
||
|
||
- 备注
|
||
- 与【DelServerPlayerEvent】事件不同,此时可以通过各种API获取玩家的当前状态。
|
||
|
||
在零件中直接声明一个同名函数,即可完成监听,详情参考<a href="../../../mcguide/20-玩法开发/14-预设玩法编程/2-深入理解零件/0-零件开发.html#零件事件">零件事件</a>
|
||
|
||
|
||
## PlayerJoinMessageEvent
|
||
|
||
<span style="display:inline;color:#ff5555">服务端</span>
|
||
|
||
- 描述
|
||
|
||
触发时机:准备显示“xxx加入游戏”的玩家登录提示文字时服务端抛出的事件。
|
||
|
||
- 参数
|
||
|
||
| 参数名 | <div style="width: 4em">数据类型</div> | 说明 |
|
||
| :--- | :--- | :--- |
|
||
| id | str | 玩家实体id |
|
||
| name | str | 玩家昵称 |
|
||
| cancel | bool | 是否显示提示文字,允许修改。True:不显示提示 |
|
||
| message | str | 玩家加入游戏的提示文字,允许修改 |
|
||
|
||
- 返回值
|
||
|
||
无
|
||
|
||
在零件中直接声明一个同名函数,即可完成监听,详情参考<a href="../../../mcguide/20-玩法开发/14-预设玩法编程/2-深入理解零件/0-零件开发.html#零件事件">零件事件</a>
|
||
|
||
|
||
## PlayerLeftMessageServerEvent
|
||
|
||
<span style="display:inline;color:#ff5555">服务端</span>
|
||
|
||
- 描述
|
||
|
||
触发时机:准备显示“xxx离开游戏”的玩家离开提示文字时服务端抛出的事件。
|
||
|
||
- 参数
|
||
|
||
| 参数名 | <div style="width: 4em">数据类型</div> | 说明 |
|
||
| :--- | :--- | :--- |
|
||
| id | str | 玩家实体id |
|
||
| name | str | 玩家昵称 |
|
||
| cancel | bool | 是否显示提示文字,允许修改。True:不显示提示 |
|
||
| message | str | 玩家离开游戏的提示文字,允许修改 |
|
||
|
||
- 返回值
|
||
|
||
无
|
||
|
||
在零件中直接声明一个同名函数,即可完成监听,详情参考<a href="../../../mcguide/20-玩法开发/14-预设玩法编程/2-深入理解零件/0-零件开发.html#零件事件">零件事件</a>
|
||
|
||
|
||
## RemoveEntityClientEvent
|
||
|
||
<span style="display:inline;color:#7575f9">客户端</span>
|
||
|
||
- 描述
|
||
|
||
客户端侧实体被移除时触发
|
||
|
||
- 参数
|
||
|
||
| 参数名 | <div style="width: 4em">数据类型</div> | 说明 |
|
||
| :--- | :--- | :--- |
|
||
| id | str | 移除的实体id |
|
||
|
||
- 返回值
|
||
|
||
无
|
||
|
||
- 备注
|
||
- 客户端接收服务端AOI事件时触发,原事件名 RemoveEntityPacketEvent
|
||
|
||
在零件中直接声明一个同名函数,即可完成监听,详情参考<a href="../../../mcguide/20-玩法开发/14-预设玩法编程/2-深入理解零件/0-零件开发.html#零件事件">零件事件</a>
|
||
|
||
|
||
## RemovePlayerAOIClientEvent
|
||
|
||
<span style="display:inline;color:#7575f9">客户端</span>
|
||
|
||
- 描述
|
||
|
||
玩家离开当前玩家同一个区块时触发AOI事件
|
||
|
||
- 参数
|
||
|
||
| 参数名 | <div style="width: 4em">数据类型</div> | 说明 |
|
||
| :--- | :--- | :--- |
|
||
| playerId | str | 玩家id |
|
||
|
||
- 返回值
|
||
|
||
无
|
||
|
||
在零件中直接声明一个同名函数,即可完成监听,详情参考<a href="../../../mcguide/20-玩法开发/14-预设玩法编程/2-深入理解零件/0-零件开发.html#零件事件">零件事件</a>
|
||
|
||
|
||
## ServerChatEvent
|
||
|
||
<span style="display:inline;color:#ff5555">服务端</span>
|
||
|
||
- 描述
|
||
|
||
玩家发送聊天信息时触发
|
||
|
||
- 参数
|
||
|
||
| 参数名 | <div style="width: 4em">数据类型</div> | 说明 |
|
||
| :--- | :--- | :--- |
|
||
| username | str | 玩家名称 |
|
||
| playerId | str | 玩家id |
|
||
| message | str | 玩家发送的聊天消息内容 |
|
||
| cancel | bool | 是否取消这个聊天事件,若取消可以设置为True |
|
||
| bChatById | bool | 是否把聊天消息发送给指定在线玩家,而不是广播给所有在线玩家,若只发送某些玩家可以设置为True |
|
||
| bForbid | bool | 是否禁言,仅apollo可用。true:被禁言,玩家聊天会提示“你已被管理员禁言”。 |
|
||
| toPlayerIds | list(str) | 接收聊天消息的玩家id列表,bChatById为True时生效 |
|
||
|
||
- 返回值
|
||
|
||
无
|
||
|
||
- 示例
|
||
|
||
```python
|
||
# ServerSystem
|
||
import mod.server.extraServerApi as serverApi
|
||
from mod_log import logger as logger
|
||
# 监听引擎的事件 :self指ServerSystem类的实例 ServerChatEvent是系统事件
|
||
self.ListenForEvent(serverApi.GetEngineNamespace(),
|
||
serverApi.GetEngineSystemName(),
|
||
"ServerChatEvent",
|
||
self, self.OnServerChat)
|
||
def OnServerChat(self, args):
|
||
#可以设置username或者message的样式代码 详见mc维基 样式代码
|
||
args["username"] = "§rl"+args[username]+"§r"
|
||
args["message"] = "test"
|
||
logger.info("ServerChatEvent %s" % args)
|
||
```
|
||
|
||
在零件中直接声明一个同名函数,即可完成监听,详情参考<a href="../../../mcguide/20-玩法开发/14-预设玩法编程/2-深入理解零件/0-零件开发.html#零件事件">零件事件</a>
|
||
|
||
|
||
## ServerPostBlockPatternEvent
|
||
|
||
<span style="display:inline;color:#ff5555">服务端</span>
|
||
|
||
- 描述
|
||
|
||
触发时机:用方块组合生成生物,生成生物之后触发该事件。
|
||
|
||
- 参数
|
||
|
||
| 参数名 | <div style="width: 4em">数据类型</div> | 说明 |
|
||
| :--- | :--- | :--- |
|
||
| entityId | str | 生成生物的id |
|
||
| entityGenerated | str | 生成生物的名字,如"minecraft:pig" |
|
||
| x | int | 方块x坐标 |
|
||
| y | int | 方块y坐标 |
|
||
| z | int | 方块z坐标 |
|
||
| dimensionId | int | 维度id |
|
||
|
||
- 返回值
|
||
|
||
无
|
||
|
||
在零件中直接声明一个同名函数,即可完成监听,详情参考<a href="../../../mcguide/20-玩法开发/14-预设玩法编程/2-深入理解零件/0-零件开发.html#零件事件">零件事件</a>
|
||
|
||
|
||
## ServerPreBlockPatternEvent
|
||
|
||
<span style="display:inline;color:#ff5555">服务端</span>
|
||
|
||
- 描述
|
||
|
||
触发时机:用方块组合生成生物,在放置最后一个组成方块时触发该事件。
|
||
|
||
- 参数
|
||
|
||
| 参数名 | <div style="width: 4em">数据类型</div> | 说明 |
|
||
| :--- | :--- | :--- |
|
||
| enable | bool | 是否允许继续生成。若设为False,可阻止生成生物 |
|
||
| x | int | 方块x坐标 |
|
||
| y | int | 方块y坐标 |
|
||
| z | int | 方块z坐标 |
|
||
| dimensionId | int | 维度id |
|
||
| entityWillBeGenerated | str | 即将生成生物的名字,如"minecraft:pig" |
|
||
|
||
- 返回值
|
||
|
||
无
|
||
|
||
|
||
|
||
## ServerSpawnMobEvent
|
||
|
||
<span style="display:inline;color:#ff5555">服务端</span>
|
||
|
||
- 描述
|
||
|
||
游戏内自动生成生物,以及使用api生成生物时触发
|
||
|
||
- 参数
|
||
|
||
| 参数名 | <div style="width: 4em">数据类型</div> | 说明 |
|
||
| :--- | :--- | :--- |
|
||
| entityId | str | 实体id |
|
||
| identifier | str | 生成实体的命名空间 |
|
||
| type | int | 生成实体的类型,参考[EntityType](../枚举值/EntityType.md) |
|
||
| baby | bool | 生成怪物是否是幼年怪 |
|
||
| x | float | 生成实体坐标x |
|
||
| y | float | 生成实体坐标y |
|
||
| z | float | 生成实体坐标z |
|
||
| dimensionId | int | 生成实体的维度,默认值为0(0为主世界,1为地狱,2为末地) |
|
||
| realIdentifier | str | 生成实体的命名空间,通过MOD API生成的生物在这个参数也能获取到真正的命名空间,而不是以custom开头的 |
|
||
| cancel | bool | 是否取消生成该实体 |
|
||
|
||
- 返回值
|
||
|
||
无
|
||
|
||
- 备注
|
||
- 如果通过MOD API生成,identifier命名空间为custom。如果需要屏蔽原版的生物生成,可以判断identifier命名空间不为custom时设置cancel为True
|
||
|
||
在零件中直接声明一个同名函数,即可完成监听,详情参考<a href="../../../mcguide/20-玩法开发/14-预设玩法编程/2-深入理解零件/0-零件开发.html#零件事件">零件事件</a>
|
||
|
||
|
||
## UnLoadClientAddonScriptsBefore
|
||
|
||
<span style="display:inline;color:#7575f9">客户端</span>
|
||
|
||
- 描述
|
||
|
||
客户端卸载mod之前触发
|
||
|
||
- 参数
|
||
|
||
无
|
||
|
||
- 返回值
|
||
|
||
无
|
||
|
||
|
||
|