补充3.7版本文档:物理系统API/事件/枚举值、游戏设置事件、物品ID变更、物理使用指南
Some checks failed
Deploy VitePress to AliYun OSS / build-and-deploy (push) Has been cancelled
Some checks failed
Deploy VitePress to AliYun OSS / build-and-deploy (push) Has been cancelled
This commit is contained in:
@@ -144,7 +144,8 @@
|
||||
"/mcdocs/1-ModAPI/接口/联机大厅",
|
||||
"/mcdocs/1-ModAPI/接口/成就",
|
||||
"/mcdocs/1-ModAPI/接口/商城",
|
||||
"/mcdocs/1-ModAPI/接口/渲染"
|
||||
"/mcdocs/1-ModAPI/接口/渲染",
|
||||
"/mcdocs/1-ModAPI/接口/物理"
|
||||
],
|
||||
"title": "接口"
|
||||
},
|
||||
@@ -160,7 +161,9 @@
|
||||
"/mcdocs/1-ModAPI/事件/UI",
|
||||
"/mcdocs/1-ModAPI/事件/音效",
|
||||
"/mcdocs/1-ModAPI/事件/控制",
|
||||
"/mcdocs/1-ModAPI/事件/联机大厅"
|
||||
"/mcdocs/1-ModAPI/事件/联机大厅",
|
||||
"/mcdocs/1-ModAPI/事件/物理",
|
||||
"/mcdocs/1-ModAPI/事件/游戏设置"
|
||||
],
|
||||
"title": "事件"
|
||||
},
|
||||
@@ -217,6 +220,11 @@
|
||||
"/mcdocs/1-ModAPI/枚举值/PlayerActionType",
|
||||
"/mcdocs/1-ModAPI/枚举值/PlayerExhauseRatioType",
|
||||
"/mcdocs/1-ModAPI/枚举值/PlayerUISlot",
|
||||
"/mcdocs/1-ModAPI/枚举值/PxActorFlag",
|
||||
"/mcdocs/1-ModAPI/枚举值/PxEventMask",
|
||||
"/mcdocs/1-ModAPI/枚举值/PxForceMode",
|
||||
"/mcdocs/1-ModAPI/枚举值/PxRigidBodyFlag",
|
||||
"/mcdocs/1-ModAPI/枚举值/PxRigidDynamicLockFlag",
|
||||
"/mcdocs/1-ModAPI/枚举值/RayFilterType",
|
||||
"/mcdocs/1-ModAPI/枚举值/RedstoneModeType",
|
||||
"/mcdocs/1-ModAPI/枚举值/RenderControllerArrayType",
|
||||
@@ -240,6 +248,7 @@
|
||||
},
|
||||
{
|
||||
"children": [
|
||||
"/mcdocs/1-ModAPI/更新信息/3.7",
|
||||
"/mcdocs/1-ModAPI/更新信息/3.6",
|
||||
"/mcdocs/1-ModAPI/更新信息/3.5",
|
||||
"/mcdocs/1-ModAPI/更新信息/3.4",
|
||||
|
||||
@@ -15,6 +15,8 @@ sidebarDepth: 1
|
||||
- [音效](#音效)
|
||||
- [控制](#控制)
|
||||
- [联机大厅](#联机大厅)
|
||||
- [物理](#物理)
|
||||
- [游戏设置](#游戏设置)
|
||||
|
||||
## 世界
|
||||
| 事件| <div style="width: 3em"></div> | 描述 |
|
||||
@@ -337,3 +339,17 @@ sidebarDepth: 1
|
||||
| --- | --- | --- |
|
||||
| [lobbyGoodBuySucServerEvent](联机大厅.md#lobbygoodbuysucserverevent) | <span style="display:inline;color:#ff5555">服务端</span> | 玩家登录联机大厅服务器,或者联机大厅游戏内购买商品时触发。如果是玩家登录,触发时玩家客户端已经触发了UiInitFinished事件 |
|
||||
|
||||
## 物理
|
||||
| 事件| <div style="width: 3em"></div> | 描述 |
|
||||
| --- | --- | --- |
|
||||
| [PhysxTouchClientEvent](物理.md#physxtouchclientevent) | <span style="display:inline;color:#7575f9">客户端</span> | 给自定义刚体添加的碰撞体,与其他碰撞体或原版实体发生碰撞/结束碰撞时触发。需要在碰撞体创建时使用PxEventMask.Client才会触发 |
|
||||
| [PhysxTouchServerEvent](物理.md#physxtouchserverevent) | <span style="display:inline;color:#ff5555">服务端</span> | 给自定义刚体添加的碰撞体,与其他碰撞体或原版实体发生碰撞/结束碰撞时触发。需要在碰撞体创建时使用PxEventMask.Server才会触发 |
|
||||
|
||||
## 游戏设置
|
||||
| 事件| <div style="width: 3em"></div> | 描述 |
|
||||
| --- | --- | --- |
|
||||
| [OnCustomGamepadChangedEvent](游戏设置.md#oncustomgamepadchangedevent) | <span style="display:inline;color:#7575f9">客户端</span> | 当自定义手柄按键绑定发生改变时触发 |
|
||||
| [OnCustomGamepadPressInGame](游戏设置.md#oncustomgamepadpressingame) | <span style="display:inline;color:#7575f9">客户端</span> | 当玩家按下自定义手柄按键时触发 |
|
||||
| [OnCustomKeyChangedEvent](游戏设置.md#oncustomkeychangedevent) | <span style="display:inline;color:#7575f9">客户端</span> | 当自定义按键绑定发生改变时触发 |
|
||||
| [OnCustomKeyPressInGame](游戏设置.md#oncustomkeypressingame) | <span style="display:inline;color:#7575f9">客户端</span> | 当玩家按下自定义按键时触发 |
|
||||
|
||||
|
||||
109
docs/mcdocs/1-ModAPI/事件/游戏设置.md
Normal file
109
docs/mcdocs/1-ModAPI/事件/游戏设置.md
Normal file
@@ -0,0 +1,109 @@
|
||||
---
|
||||
sidebarDepth: 1
|
||||
---
|
||||
# 游戏设置
|
||||
|
||||
# 索引
|
||||
|
||||
| 事件 | <div style="width: 3em"></div> | 描述 |
|
||||
| --- | --- | --- |
|
||||
| [OnCustomGamepadChangedEvent](游戏设置.md#oncustomgamepadchangedevent) | <span style="display:inline;color:#7575f9">客户端</span> | 当自定义手柄按键绑定发生改变时触发 |
|
||||
| [OnCustomGamepadPressInGame](游戏设置.md#oncustomgamepadpressingame) | <span style="display:inline;color:#7575f9">客户端</span> | 当玩家按下自定义手柄按键时触发 |
|
||||
| [OnCustomKeyChangedEvent](游戏设置.md#oncustomkeychangedevent) | <span style="display:inline;color:#7575f9">客户端</span> | 当自定义按键绑定发生改变时触发 |
|
||||
| [OnCustomKeyPressInGame](游戏设置.md#oncustomkeypressingame) | <span style="display:inline;color:#7575f9">客户端</span> | 当玩家按下自定义按键时触发 |
|
||||
# 游戏设置
|
||||
|
||||
## OnCustomGamepadChangedEvent
|
||||
|
||||
<span style="display:inline;color:#7575f9">客户端</span>
|
||||
|
||||
- 描述
|
||||
|
||||
当自定义手柄按键绑定发生改变时触发
|
||||
|
||||
- 参数
|
||||
|
||||
| 参数名 | <div style="width: 4em">数据类型</div> | 说明 |
|
||||
| :--- | :--- | :--- |
|
||||
| name | str | 按键名称 |
|
||||
| oldKey | str | 旧的键码 |
|
||||
| newKey | str | 新的键码 |
|
||||
|
||||
- 返回值
|
||||
|
||||
无
|
||||
|
||||
|
||||
|
||||
## OnCustomGamepadPressInGame
|
||||
|
||||
<span style="display:inline;color:#7575f9">客户端</span>
|
||||
|
||||
- 描述
|
||||
|
||||
当玩家按下自定义手柄按键时触发
|
||||
|
||||
- 参数
|
||||
|
||||
| 参数名 | <div style="width: 4em">数据类型</div> | 说明 |
|
||||
| :--- | :--- | :--- |
|
||||
| name | str | 按键名称 |
|
||||
| key | str | 键码 |
|
||||
| category | str | 按键分类 |
|
||||
| isDown | str | 按下状态 ("1"为按下, "0"为抬起),仅普通按键有效 |
|
||||
| magnitude | float | 扳机力度 (0.0-1.0),仅扳机键有效 |
|
||||
| x | float | 摇杆X轴偏移 (-1.0-1.0),仅摇杆键有效 |
|
||||
| y | float | 摇杆Y轴偏移 (-1.0-1.0),仅摇杆键有效 |
|
||||
| screenName | str | 当前屏幕名称 |
|
||||
|
||||
- 返回值
|
||||
|
||||
无
|
||||
|
||||
|
||||
|
||||
## OnCustomKeyChangedEvent
|
||||
|
||||
<span style="display:inline;color:#7575f9">客户端</span>
|
||||
|
||||
- 描述
|
||||
|
||||
当自定义按键绑定发生改变时触发
|
||||
|
||||
- 参数
|
||||
|
||||
| 参数名 | <div style="width: 4em">数据类型</div> | 说明 |
|
||||
| :--- | :--- | :--- |
|
||||
| name | str | 按键名称 |
|
||||
| oldKey | str | 旧的键码 |
|
||||
| newKey | str | 新的键码 |
|
||||
|
||||
- 返回值
|
||||
|
||||
无
|
||||
|
||||
|
||||
|
||||
## OnCustomKeyPressInGame
|
||||
|
||||
<span style="display:inline;color:#7575f9">客户端</span>
|
||||
|
||||
- 描述
|
||||
|
||||
当玩家按下自定义按键时触发
|
||||
|
||||
- 参数
|
||||
|
||||
| 参数名 | <div style="width: 4em">数据类型</div> | 说明 |
|
||||
| :--- | :--- | :--- |
|
||||
| name | str | 按键名称 |
|
||||
| key | str | 键码 |
|
||||
| category | str | 按键分类 |
|
||||
| isDown | str | 按下状态 ("1"为按下, "0"为抬起) |
|
||||
| screenName | str | 当前屏幕名称 |
|
||||
|
||||
- 返回值
|
||||
|
||||
无
|
||||
|
||||
|
||||
118
docs/mcdocs/1-ModAPI/事件/物理.md
Normal file
118
docs/mcdocs/1-ModAPI/事件/物理.md
Normal file
@@ -0,0 +1,118 @@
|
||||
---
|
||||
sidebarDepth: 1
|
||||
---
|
||||
# 物理
|
||||
|
||||
# 索引
|
||||
|
||||
| 事件 | <div style="width: 3em"></div> | 描述 |
|
||||
| --- | --- | --- |
|
||||
| [PhysxTouchClientEvent](物理.md#physxtouchclientevent) | <span style="display:inline;color:#7575f9">客户端</span> | 给自定义刚体添加的碰撞体,与其他碰撞体或原版实体发生碰撞/结束碰撞时触发。需要在碰撞体创建时使用PxEventMask.Client才会触发 |
|
||||
| [PhysxTouchServerEvent](物理.md#physxtouchserverevent) | <span style="display:inline;color:#ff5555">服务端</span> | 给自定义刚体添加的碰撞体,与其他碰撞体或原版实体发生碰撞/结束碰撞时触发。需要在碰撞体创建时使用PxEventMask.Server才会触发 |
|
||||
# 物理
|
||||
|
||||
## PhysxTouchClientEvent
|
||||
|
||||
<span style="display:inline;color:#7575f9">客户端</span>
|
||||
|
||||
- 描述
|
||||
|
||||
给自定义刚体添加的碰撞体,与其他碰撞体或原版实体发生碰撞/结束碰撞时触发。需要在碰撞体创建时使用PxEventMask.Client才会触发
|
||||
|
||||
- 参数
|
||||
|
||||
| 参数名 | <div style="width: 4em">数据类型</div> | 说明 |
|
||||
| :--- | :--- | :--- |
|
||||
| touch | list(dict) | 开始接触的碰撞体对的信息。一个碰撞体在创建时使用了PxEventMask.Found,他与其他碰撞体/原版实体开始接触时,会出现在列表中 |
|
||||
| lost | list(dict) | 结束接触的碰撞体对的信息。一个碰撞体在创建时使用了PxEventMask.Lost,他与其他碰撞体/原版实体结束接触时,会出现在列表中 |
|
||||
|
||||
- 返回值
|
||||
|
||||
无
|
||||
|
||||
- 备注
|
||||
|
||||
touch列表每个元素的内容:
|
||||
|
||||
```python
|
||||
{
|
||||
"entityId0": str, # 一个碰撞体所属实体的entityId
|
||||
"identifier0": str, # 一个碰撞体所属实体的identifier
|
||||
"shape0": str或None, # 一个碰撞体的userData
|
||||
"entityId1": str, # 另一个碰撞体所属实体的entityId
|
||||
"identifier1": str, # 另一个碰撞体所属实体的identifier
|
||||
"shape1": str或None, # 另一个碰撞体的userData
|
||||
"pos": (float,float,float), # 碰撞点的世界坐标。其中一个碰撞体在创建时使用了PxEventMask.Found_Detail才有该字段
|
||||
"normal":(float,float,float) # 碰撞产生的力的方向,由碰撞体1指向碰撞体0。其中一个碰撞体在创建时使用了PxEventMask.Found_Detail才有该字段
|
||||
}
|
||||
```
|
||||
|
||||
lost列表每个元素的内容:
|
||||
|
||||
```python
|
||||
{
|
||||
"entityId0": str, # 一个碰撞体所属实体的entityId
|
||||
"identifier0": str, # 一个碰撞体所属实体的identifier
|
||||
"shape0": str或None, # 一个碰撞体的userData
|
||||
"entityId1": str, # 另一个碰撞体所属实体的entityId
|
||||
"identifier1": str, # 另一个碰撞体所属实体的identifier
|
||||
"shape1": str或None # 另一个碰撞体的userData
|
||||
}
|
||||
```
|
||||
|
||||
列表中的碰撞对不分先后,每个碰撞对中的碰撞体0与碰撞体1也不分先后
|
||||
|
||||
|
||||
|
||||
## PhysxTouchServerEvent
|
||||
|
||||
<span style="display:inline;color:#ff5555">服务端</span>
|
||||
|
||||
- 描述
|
||||
|
||||
给自定义刚体添加的碰撞体,与其他碰撞体或原版实体发生碰撞/结束碰撞时触发。需要在碰撞体创建时使用PxEventMask.Server才会触发
|
||||
|
||||
- 参数
|
||||
|
||||
| 参数名 | <div style="width: 4em">数据类型</div> | 说明 |
|
||||
| :--- | :--- | :--- |
|
||||
| touch | list(dict) | 开始接触的碰撞体对的信息。一个碰撞体在创建时使用了PxEventMask.Found,他与其他碰撞体/原版实体开始接触时,会出现在列表中 |
|
||||
| lost | list(dict) | 结束接触的碰撞体对的信息。一个碰撞体在创建时使用了PxEventMask.Lost,他与其他碰撞体/原版实体结束接触时,会出现在列表中 |
|
||||
|
||||
- 返回值
|
||||
|
||||
无
|
||||
|
||||
- 备注
|
||||
|
||||
touch列表每个元素的内容:
|
||||
|
||||
```python
|
||||
{
|
||||
"entityId0": str, # 一个碰撞体所属实体的entityId
|
||||
"identifier0": str, # 一个碰撞体所属实体的identifier
|
||||
"shape0": str或None, # 一个碰撞体的userData
|
||||
"entityId1": str, # 另一个碰撞体所属实体的entityId
|
||||
"identifier1": str, # 另一个碰撞体所属实体的identifier
|
||||
"shape1": str或None, # 另一个碰撞体的userData
|
||||
"pos": (float,float,float), # 碰撞点的世界坐标。其中一个碰撞体在创建时使用了PxEventMask.Found_Detail才有该字段
|
||||
"normal":(float,float,float) # 碰撞产生的力的方向,由碰撞体1指向碰撞体0。其中一个碰撞体在创建时使用了PxEventMask.Found_Detail才有该字段
|
||||
}
|
||||
```
|
||||
|
||||
lost列表每个元素的内容:
|
||||
|
||||
```python
|
||||
{
|
||||
"entityId0": str, # 一个碰撞体所属实体的entityId
|
||||
"identifier0": str, # 一个碰撞体所属实体的identifier
|
||||
"shape0": str或None, # 一个碰撞体的userData
|
||||
"entityId1": str, # 另一个碰撞体所属实体的entityId
|
||||
"identifier1": str, # 另一个碰撞体所属实体的identifier
|
||||
"shape1": str或None # 另一个碰撞体的userData
|
||||
}
|
||||
```
|
||||
|
||||
列表中的碰撞对不分先后,每个碰撞对中的碰撞体0与碰撞体1也不分先后
|
||||
|
||||
|
||||
469
docs/mcdocs/1-ModAPI/接口/物理.md
Normal file
469
docs/mcdocs/1-ModAPI/接口/物理.md
Normal file
@@ -0,0 +1,469 @@
|
||||
---
|
||||
sidebarDepth: 1
|
||||
---
|
||||
# 物理
|
||||
|
||||
# 索引
|
||||
|
||||
---
|
||||
|
||||
| 接口 | <div style="width: 3em"></div> | 描述 |
|
||||
| --- | --- | --- |
|
||||
| [AddBoxGeometry](物理.md#addboxgeometry) | <span style="display:inline;color:#ff5555">服务端</span> | 给自定义刚体创建盒形碰撞体 |
|
||||
| [AddForce](物理.md#addforce) | <span style="display:inline;color:#ff5555">服务端</span> | 对自定义刚体的质心添加力,对运动学刚体无效 |
|
||||
| [CreatePxActor](物理.md#createpxactor) | <span style="display:inline;color:#ff5555">服务端</span> | 给实体创建自定义刚体 |
|
||||
| [GetQuaternion](物理.md#getquaternion) | <span style="display:inline;color:#ff5555">服务端</span> <span style="display:inline;color:#7575f9">客户端</span> | 获取自定义刚体的四元数旋转 |
|
||||
| [Raycast](物理.md#raycast) | <span style="display:inline;color:#ff5555">服务端</span> <span style="display:inline;color:#7575f9">客户端</span> | 射线检测,获取与射线相交的碰撞体。目前仅支持获取自定义刚体 |
|
||||
| [SetActorFlag](物理.md#setactorflag) | <span style="display:inline;color:#ff5555">服务端</span> | 设置物理实体的行为开关 |
|
||||
| [SetGlobalPose](物理.md#setglobalpose) | <span style="display:inline;color:#ff5555">服务端</span> | 设置自定义刚体的变换(直接瞬移) |
|
||||
| [SetKinematicTarget](物理.md#setkinematictarget) | <span style="display:inline;color:#ff5555">服务端</span> | 设置运动学刚体的目标变换,仅对开启了PxRigidBodyFlag.eKINEMATIC的自定义刚体生效 |
|
||||
| [SetRigidBodyFlag](物理.md#setrigidbodyflag) | <span style="display:inline;color:#ff5555">服务端</span> | 设置自定义刚体的行为开关 |
|
||||
| [SetRigidDynamicLockFlags](物理.md#setrigiddynamiclockflags) | <span style="display:inline;color:#ff5555">服务端</span> | 设置自定义刚体的约束 |
|
||||
|
||||
## AddBoxGeometry
|
||||
|
||||
<span style="display:inline;color:#ff5555">服务端</span>
|
||||
|
||||
method in mod.server.component.physxCompServer.PhysxComponentServer
|
||||
|
||||
- 描述
|
||||
|
||||
给自定义刚体创建盒形碰撞体
|
||||
|
||||
- 参数
|
||||
|
||||
| 参数名 | <div style="width: 4em">数据类型</div> | 说明 |
|
||||
| :--- | :--- | :--- |
|
||||
| localTransform | tuple(float,float,float) | 盒子中心相对实体原点的偏移 |
|
||||
| halfX | float | 表示盒子长度的一半 |
|
||||
| halfY | float | 表示盒子高度的一半 |
|
||||
| halfZ | float | 表示盒子宽度的一半 |
|
||||
| staticFriction | float | 静摩擦系数 |
|
||||
| dynamicFriction | float | 动摩擦系数 |
|
||||
| restitution | float | 弹性恢复系数,范围:[0, 1] |
|
||||
| eventMask | int | [PxEventMask](../枚举值/PxEventMask.md)枚举,用于监听碰撞事件,默认为PxEventMask.Null,即不需要碰撞事件 |
|
||||
| userData | None或str | 可记录自定义数据,长度不超过20,默认为None |
|
||||
|
||||
- 返回值
|
||||
|
||||
| <div style="width: 4em">数据类型</div> | 说明 |
|
||||
| :--- | :--- |
|
||||
| bool | 是否成功 |
|
||||
|
||||
- 备注
|
||||
|
||||
- 目前只能在AddEntityServerEvent事件中使用,不存档
|
||||
- 世界中同时存在的碰撞体上限为8192个
|
||||
|
||||
- 示例
|
||||
|
||||
```python
|
||||
import mod.server.extraServerApi as serverApi
|
||||
comp = serverApi.GetEngineCompFactory().CreatePhysx(entityId)
|
||||
comp.AddBoxGeometry((0, 0.9, 0), 0.3, 0.9, 0.3, 0.05, 0.05, 0)
|
||||
```
|
||||
|
||||
|
||||
|
||||
## AddForce
|
||||
|
||||
<span style="display:inline;color:#ff5555">服务端</span>
|
||||
|
||||
method in mod.server.component.physxCompServer.PhysxComponentServer
|
||||
|
||||
- 描述
|
||||
|
||||
对自定义刚体的质心添加力,对运动学刚体无效
|
||||
|
||||
- 参数
|
||||
|
||||
| 参数名 | <div style="width: 4em">数据类型</div> | 说明 |
|
||||
| :--- | :--- | :--- |
|
||||
| dir | tuple(float,float,float) | 在全局坐标系中定义的力/冲量 |
|
||||
| mode | int | [PxForceMode](../枚举值/PxForceMode.md)枚举,施加力/冲量时使用的模式 |
|
||||
|
||||
- 返回值
|
||||
|
||||
| <div style="width: 4em">数据类型</div> | 说明 |
|
||||
| :--- | :--- |
|
||||
| bool | 是否成功 |
|
||||
|
||||
- 示例
|
||||
|
||||
```python
|
||||
import mod.server.extraServerApi as serverApi
|
||||
from common.minecraftEnum import PxForceMode
|
||||
comp = serverApi.GetEngineCompFactory().CreatePhysx(entityId)
|
||||
# 添加一个向上的速度
|
||||
comp.AddForce((0,1,0), PxForceMode.eVELOCITY_CHANGE)
|
||||
```
|
||||
|
||||
|
||||
|
||||
## CreatePxActor
|
||||
|
||||
<span style="display:inline;color:#ff5555">服务端</span>
|
||||
|
||||
method in mod.server.component.physxCompServer.PhysxComponentServer
|
||||
|
||||
- 描述
|
||||
|
||||
给实体创建自定义刚体
|
||||
|
||||
- 参数
|
||||
|
||||
无
|
||||
|
||||
- 返回值
|
||||
|
||||
| <div style="width: 4em">数据类型</div> | 说明 |
|
||||
| :--- | :--- |
|
||||
| bool | 是否成功 |
|
||||
|
||||
- 备注
|
||||
|
||||
- 只能在AddEntityServerEvent事件中使用,不存档
|
||||
- 只能对自定义生物使用,不支持玩家与原版实体。自定义生物需移除minecraft:physics等原生物理组件,并且使用SetBlockControlAi关闭ai
|
||||
|
||||
- 示例
|
||||
|
||||
```python
|
||||
import mod.server.extraServerApi as serverApi
|
||||
comp = serverApi.GetEngineCompFactory().CreatePhysx(entityId)
|
||||
comp.CreatePxActor()
|
||||
```
|
||||
|
||||
|
||||
|
||||
## GetQuaternion
|
||||
|
||||
<span style="display:inline;color:#ff5555">服务端</span> <span style="display:inline;color:#7575f9">客户端</span>
|
||||
|
||||
### 服务端接口
|
||||
|
||||
method in mod.server.component.physxCompServer.PhysxComponentServer
|
||||
|
||||
- 描述
|
||||
|
||||
获取自定义刚体的四元数旋转
|
||||
|
||||
- 参数
|
||||
|
||||
无
|
||||
|
||||
- 返回值
|
||||
|
||||
| <div style="width: 4em">数据类型</div> | 说明 |
|
||||
| :--- | :--- |
|
||||
| tuple(float,float,float,float) | 四元数 |
|
||||
|
||||
- 备注
|
||||
|
||||
非自定义刚体返回(0,0,0,1)
|
||||
|
||||
- 示例
|
||||
|
||||
```python
|
||||
import mod.server.extraServerApi as serverApi
|
||||
comp = serverApi.GetEngineCompFactory().CreatePhysx(entityId)
|
||||
print comp.GetQuaternion()
|
||||
```
|
||||
|
||||
### 客户端接口
|
||||
|
||||
method in mod.client.component.physxCompClient.PhysxComponentClient
|
||||
|
||||
- 描述
|
||||
|
||||
获取自定义刚体的四元数旋转
|
||||
|
||||
- 参数
|
||||
|
||||
无
|
||||
|
||||
- 返回值
|
||||
|
||||
| <div style="width: 4em">数据类型</div> | 说明 |
|
||||
| :--- | :--- |
|
||||
| tuple(float,float,float,float) | 四元数 |
|
||||
|
||||
- 备注
|
||||
|
||||
非自定义刚体返回(0,0,0,1)
|
||||
|
||||
- 示例
|
||||
|
||||
```python
|
||||
import mod.client.extraClientApi as clientApi
|
||||
comp = clientApi.GetEngineCompFactory().CreatePhysx(entityId)
|
||||
print comp.GetQuaternion()
|
||||
```
|
||||
|
||||
|
||||
|
||||
## Raycast
|
||||
|
||||
<span style="display:inline;color:#ff5555">服务端</span> <span style="display:inline;color:#7575f9">客户端</span>
|
||||
|
||||
### 服务端接口
|
||||
|
||||
method in mod.server.component.physxCompServer.PhysxComponentServer
|
||||
|
||||
- 描述
|
||||
|
||||
射线检测,获取与射线相交的碰撞体。目前仅支持获取自定义刚体
|
||||
|
||||
- 参数
|
||||
|
||||
| 参数名 | <div style="width: 4em">数据类型</div> | 说明 |
|
||||
| :--- | :--- | :--- |
|
||||
| dimensionId | int | 维度id |
|
||||
| origin | tuple(float,float,float) | 射线的起点 |
|
||||
| dir | tuple(float,float,float) | 射线的方向 |
|
||||
| maxDist | float | 射线的最大长度,最大128 |
|
||||
| maxHits | int | 获取射线相交的前N个碰撞体,最大为16,默认为1 |
|
||||
|
||||
- 返回值
|
||||
|
||||
| <div style="width: 4em">数据类型</div> | 说明 |
|
||||
| :--- | :--- |
|
||||
| list(dict) | 返回相交的碰撞体的信息。每个元素的内容见备注 |
|
||||
|
||||
- 备注
|
||||
|
||||
返回列表的每个元素为一个dict,内容如下:
|
||||
|
||||
```python
|
||||
{
|
||||
"entityId": str, # 碰撞体所属的实体id
|
||||
"userData": str或None, # 碰撞体的userData
|
||||
"pos": (float,float,float), # 相交的位置
|
||||
"normal": (float,float,float), # 碰撞体在相交位置的法线
|
||||
"dist": float, # 射线起点与相交点的距离
|
||||
}
|
||||
```
|
||||
|
||||
- 示例
|
||||
|
||||
```python
|
||||
import mod.server.extraServerApi as serverApi
|
||||
comp = serverApi.GetEngineCompFactory().CreatePhysx(levelId)
|
||||
print comp.Raycast(0, (0,80,0), (0,1,0), 5)
|
||||
```
|
||||
|
||||
### 客户端接口
|
||||
|
||||
method in mod.client.component.physxCompClient.PhysxComponentClient
|
||||
|
||||
- 描述
|
||||
|
||||
射线检测,获取与射线相交的碰撞体。目前仅支持获取自定义刚体
|
||||
|
||||
- 参数
|
||||
|
||||
| 参数名 | <div style="width: 4em">数据类型</div> | 说明 |
|
||||
| :--- | :--- | :--- |
|
||||
| origin | tuple(float,float,float) | 射线的起点 |
|
||||
| dir | tuple(float,float,float) | 射线的方向 |
|
||||
| maxDist | float | 射线的最大长度,最大128 |
|
||||
| maxHits | int | 获取射线相交的前N个碰撞体,最大为16,默认为1 |
|
||||
|
||||
- 返回值
|
||||
|
||||
| <div style="width: 4em">数据类型</div> | 说明 |
|
||||
| :--- | :--- |
|
||||
| list(dict) | 按顺序返回相交的碰撞体的信息。每个元素的内容见备注 |
|
||||
|
||||
- 备注
|
||||
|
||||
返回列表的每个元素为一个dict,内容如下:
|
||||
|
||||
```python
|
||||
{
|
||||
"entityId": str, # 碰撞体所属的实体id
|
||||
"userData": str或None, # 碰撞体的userData
|
||||
"pos": (float,float,float), # 相交的位置
|
||||
"normal": (float,float,float), # 碰撞体在相交位置的法线
|
||||
"dist": float, # 射线起点与相交点的距离
|
||||
}
|
||||
```
|
||||
|
||||
- 示例
|
||||
|
||||
```python
|
||||
import mod.client.extraClientApi as clientApi
|
||||
comp = clientApi.GetEngineCompFactory().CreatePhysx(levelId)
|
||||
print comp.Raycast((0,80,0), (0,1,0), 5)
|
||||
```
|
||||
|
||||
|
||||
|
||||
## SetActorFlag
|
||||
|
||||
<span style="display:inline;color:#ff5555">服务端</span>
|
||||
|
||||
method in mod.server.component.physxCompServer.PhysxComponentServer
|
||||
|
||||
- 描述
|
||||
|
||||
设置物理实体的行为开关
|
||||
|
||||
- 参数
|
||||
|
||||
| 参数名 | <div style="width: 4em">数据类型</div> | 说明 |
|
||||
| :--- | :--- | :--- |
|
||||
| flag | int | [PxActorFlag](../枚举值/PxActorFlag.md)枚举 |
|
||||
|
||||
- 返回值
|
||||
|
||||
| <div style="width: 4em">数据类型</div> | 说明 |
|
||||
| :--- | :--- |
|
||||
| bool | 是否成功 |
|
||||
|
||||
- 示例
|
||||
|
||||
```python
|
||||
import mod.server.extraServerApi as serverApi
|
||||
from common.minecraftEnum import PxActorFlag
|
||||
comp = serverApi.GetEngineCompFactory().CreatePhysx(entityId)
|
||||
# 不受重力
|
||||
comp.SetActorFlag(PxActorFlag.eDISABLE_GRAVITY, True)
|
||||
```
|
||||
|
||||
|
||||
|
||||
## SetGlobalPose
|
||||
|
||||
<span style="display:inline;color:#ff5555">服务端</span>
|
||||
|
||||
method in mod.server.component.physxCompServer.PhysxComponentServer
|
||||
|
||||
- 描述
|
||||
|
||||
设置自定义刚体的变换(直接瞬移)
|
||||
|
||||
- 参数
|
||||
|
||||
| 参数名 | <div style="width: 4em">数据类型</div> | 说明 |
|
||||
| :--- | :--- | :--- |
|
||||
| pos | tuple(float,float,float)或None | 目标位置,None表示位置不变 |
|
||||
| rot | tuple(float,float,float,float)或None | 目标旋转,用四元数表示,None表示旋转不变 |
|
||||
|
||||
- 返回值
|
||||
|
||||
| <div style="width: 4em">数据类型</div> | 说明 |
|
||||
| :--- | :--- |
|
||||
| bool | 是否成功 |
|
||||
|
||||
- 示例
|
||||
|
||||
```python
|
||||
import mod.server.extraServerApi as serverApi
|
||||
comp = serverApi.GetEngineCompFactory().CreatePhysx(entityId)
|
||||
# 瞬移到0,80,0,旋转不变
|
||||
comp.SetGlobalPose((0,80,0), None)
|
||||
```
|
||||
|
||||
|
||||
|
||||
## SetKinematicTarget
|
||||
|
||||
<span style="display:inline;color:#ff5555">服务端</span>
|
||||
|
||||
method in mod.server.component.physxCompServer.PhysxComponentServer
|
||||
|
||||
- 描述
|
||||
|
||||
设置运动学刚体的目标变换,仅对开启了PxRigidBodyFlag.eKINEMATIC的自定义刚体生效
|
||||
|
||||
- 参数
|
||||
|
||||
| 参数名 | <div style="width: 4em">数据类型</div> | 说明 |
|
||||
| :--- | :--- | :--- |
|
||||
| pos | tuple(float,float,float)或None | 目标位置,None表示位置不变 |
|
||||
| rot | tuple(float,float,float,float)或None | 目标旋转,用四元数表示,None表示旋转不变 |
|
||||
|
||||
- 返回值
|
||||
|
||||
| <div style="width: 4em">数据类型</div> | 说明 |
|
||||
| :--- | :--- |
|
||||
| bool | 是否成功 |
|
||||
|
||||
- 示例
|
||||
|
||||
```python
|
||||
import mod.server.extraServerApi as serverApi
|
||||
comp = serverApi.GetEngineCompFactory().CreatePhysx(entityId)
|
||||
# 位置移动到0,80,0,旋转不变
|
||||
comp.SetKinematicTarget((0,80,0), None)
|
||||
```
|
||||
|
||||
|
||||
|
||||
## SetRigidBodyFlag
|
||||
|
||||
<span style="display:inline;color:#ff5555">服务端</span>
|
||||
|
||||
method in mod.server.component.physxCompServer.PhysxComponentServer
|
||||
|
||||
- 描述
|
||||
|
||||
设置自定义刚体的行为开关
|
||||
|
||||
- 参数
|
||||
|
||||
| 参数名 | <div style="width: 4em">数据类型</div> | 说明 |
|
||||
| :--- | :--- | :--- |
|
||||
| flag | int | [PxRigidBodyFlag](../枚举值/PxRigidBodyFlag.md)枚举 |
|
||||
| val | bool | 开关 |
|
||||
|
||||
- 返回值
|
||||
|
||||
| <div style="width: 4em">数据类型</div> | 说明 |
|
||||
| :--- | :--- |
|
||||
| bool | 是否成功 |
|
||||
|
||||
- 示例
|
||||
|
||||
```python
|
||||
import mod.server.extraServerApi as serverApi
|
||||
from common.minecraftEnum import PxRigidBodyFlag
|
||||
comp = serverApi.GetEngineCompFactory().CreatePhysx(entityId)
|
||||
comp.SetRigidBodyFlag(PxRigidBodyFlag.eKINEMATIC, True) # 设置为运动学刚体
|
||||
```
|
||||
|
||||
|
||||
|
||||
## SetRigidDynamicLockFlags
|
||||
|
||||
<span style="display:inline;color:#ff5555">服务端</span>
|
||||
|
||||
method in mod.server.component.physxCompServer.PhysxComponentServer
|
||||
|
||||
- 描述
|
||||
|
||||
设置自定义刚体的约束
|
||||
|
||||
- 参数
|
||||
|
||||
| 参数名 | <div style="width: 4em">数据类型</div> | 说明 |
|
||||
| :--- | :--- | :--- |
|
||||
| flag | int | [PxRigidDynamicLockFlag](../枚举值/PxRigidDynamicLockFlag.md)枚举 |
|
||||
|
||||
- 返回值
|
||||
|
||||
| <div style="width: 4em">数据类型</div> | 说明 |
|
||||
| :--- | :--- |
|
||||
| bool | 是否成功 |
|
||||
|
||||
- 示例
|
||||
|
||||
```python
|
||||
import mod.server.extraServerApi as serverApi
|
||||
from common.minecraftEnum import PxRigidDynamicLockFlag
|
||||
comp = serverApi.GetEngineCompFactory().CreatePhysx(entityId)
|
||||
# 锁定xyz轴旋转
|
||||
comp.SetRigidDynamicLockFlags(PxRigidDynamicLockFlag.eLOCK_ANGULAR_X | PxRigidDynamicLockFlag.eLOCK_ANGULAR_Y | PxRigidDynamicLockFlag.eLOCK_ANGULAR_Z)
|
||||
```
|
||||
|
||||
|
||||
191
docs/mcdocs/1-ModAPI/更新信息/3.7.md
Normal file
191
docs/mcdocs/1-ModAPI/更新信息/3.7.md
Normal file
@@ -0,0 +1,191 @@
|
||||
# 3.7
|
||||
|
||||
2025.12.31:版本号(V3.7 BE1.21.50)包括Mod PC包,手机测试版启动器,和服务器引擎。
|
||||
|
||||
示例Demo:<a href="../../../mcguide/20-玩法开发/13-模组SDK编程/60-Demo示例.html" rel="noopenner">前往此处下载</a>
|
||||
|
||||
## 一、更新时间表
|
||||
|
||||
1. 在2025年12月31日上线3.7第一个Beta版。
|
||||
2. 在2026年1月14日上线3.7第二个Beta版。
|
||||
3. 在2026年1月28日上线3.7稳定版。有以下注意事项:
|
||||
- 3.7稳定包,会提供RenderDragon渲染龙、Opengl两个包体
|
||||
- 渲染龙版本仅会在Java经典版中的基岩版(非基岩互通版和手机版)上线,基岩互通版和手机端仍然使用 OpenGL
|
||||
- 为了确保您的模组、光影等内容后续能够兼容基岩版,您可以通过3.7稳定版渲染龙包进行测试兼容开发
|
||||
4. 在2026年2月1日,全渠道将更新3.7版本玩家包体,玩家将陆续更新到3.7版本,请开发者合理安排更新节奏。
|
||||
|
||||
## 二、重要功能更新
|
||||
|
||||
1. **物理系统**
|
||||
|
||||
> 注意:物理系列的接口为实验性内容,在后期版本中可能会存在接口变更、开发环境变更等情况。请各位开发者合理安排开发内容与正式版本,避免后续版本物理系统更新后出现模组失效的情况
|
||||
|
||||
- 新增创建物理刚体,开发者可以给实体创建自定义刚体,并给刚体添加力、碰撞盒,设置其位置、四元数旋转等,同时新增支持刚体碰撞盒之间碰撞检测、以及适用于刚体的射线检测
|
||||
- 物理系统相关教程请见[物理的使用指南](../../../mcguide/20-玩法开发/13-模组SDK编程/60-Demo示例.md)
|
||||
|
||||
2. **PC按键绑定**
|
||||
|
||||
- 新增自定义手柄按键(GamepadKeyMappings)的注册和获取,同时新增事件支持在按下自定义手柄按键时、自定义手柄按键绑定发生改变时触发
|
||||
- 新增自定义按键映射(CustomKeyMapping)的注册和获取,同时新增事件支持在玩家按下自定义按键时、自定义按键绑定发生改变时触发
|
||||
|
||||
3. **客户端实体**
|
||||
|
||||
- 对 CreateClientEntityByTypeStr 创建的客户端实体,接口创建的客户端实体进行了优化,对实体使用的一系列渲染、模型、材质、动画等接口,也支持对客户端实体使用
|
||||
- 新增[GetEntitiesAroundForClientEntity](../接口/实体/属性.md#getentitiesaroundforcliententity)(客户端)
|
||||
- 新增[GetEntitiesInSquareAreaForClientEntity](../接口/实体/属性.md#getentitiesinsquareareaforcliententity)(客户端)接口,用于获取区域内的客户端实体
|
||||
- 新增[SetRotForClientEntity](../接口/实体/属性.md#setrotforcliententity)(客户端),设置客户端实体头与水平方向的俯仰角度和竖直方向的旋转角度
|
||||
- 新增[SetPosForClientEntity](../接口/实体/属性.md#setposforcliententity)(客户端),设置客户端实体位置
|
||||
|
||||
4. **新增其他接口**
|
||||
|
||||
- 新增[EntityUseItemToPos](../接口/世界/行为.md#entityuseitemtopos)(服务端),模拟实体对某个坐标使用指定物品
|
||||
- 新增[UseItemToEntity](../接口/世界/行为.md#useitemtoentity)(服务端),模拟对某个实体使用物品
|
||||
- 新增[GetRecipeByRecipeId](../接口/世界/方块管理.md#getrecipebyrecipeid)(客户端),可以根据配方id查询配方内容
|
||||
|
||||
5. **接口优化**
|
||||
|
||||
- [AddEffectToEntity](../接口/实体/状态效果.md#addeffecttoentity)(服务端)接口持续时间支持设置浮点型
|
||||
- [UseItemAttackEntity](../接口/世界/行为.md#useitemattackentity)(服务端)接口增加damageFormula参数,可传入计算公式来修改伤害值
|
||||
- 调整[ItemPushInCustomContainerServerEvent](../事件/方块.md#itempushincustomcontainerserverevent)(服务端)、[ItemPullOutCustomContainerServerEvent](../事件/方块.md#itempulloutcustomcontainerserverevent)(服务端),增加容器方块所在维度的参数
|
||||
|
||||
::: warning 特别注意
|
||||
**3.7同步微软版本后变更内容较多,以下为官方整理的重要变更,请开发者们注意适配。**
|
||||
:::
|
||||
|
||||
- 微软在1.21.50继续修改了部分方块ID,如光源方块、虫蚀类方块等,详见[3.7版本物品id变更](../../../mcguide/20-玩法开发/13-模组SDK编程/Python脚本开发/103-3.7版本物品id变更.md),请开发者注意适配
|
||||
- 3.7 版本同步微软后,将会移除假日创作者实验。使用实验性功能的内容可能无法正常运行。开发者可以使用网易组件+Mod API,可以复刻大部分内容
|
||||
- **极限模式说明**:以下接口不能在极限模式使用,同样原版指令也将不会生效,请开发者注意使用场景
|
||||
- `SetPlayerGameType` 设置玩家游戏模式
|
||||
- `SetGameRulesInfoServer` 设置游戏规则
|
||||
- `SetGameDifficulty` 设置游戏难度
|
||||
- `SetDefaultGameType` 设置默认游戏模式
|
||||
- **原版UI变更**:原版界面Json路径有所修改,如果开发者修改原版Json界面,则需要重新调整路径。以下文件具有变更,请开发者注意适配
|
||||
- ui_common.json
|
||||
- play_screen.json
|
||||
- gameplay_common.json
|
||||
- start_screen.json
|
||||
- pause_screen.json
|
||||
- settings_screen.json
|
||||
- hud_screen.json
|
||||
- inventory_screen.json
|
||||
- inventory_screen_pocket.json
|
||||
- general_section.json
|
||||
- world_section.json
|
||||
- controls_section.json
|
||||
- command_block_screen.json
|
||||
|
||||
## 三、API更新
|
||||
|
||||
- 新增
|
||||
|
||||
1. 新增[EntityUseItemToPos](../接口/世界/行为.md#entityuseitemtopos)(服务端),模拟实体对某个坐标使用指定物品。
|
||||
|
||||
1. 新增[UseItemToEntity](../接口/世界/行为.md#useitemtoentity)(服务端),模拟对某个实体使用物品。
|
||||
|
||||
1. 新增[CreatePxActor](../接口/物理.md#createpxactor)(服务端),给实体创建自定义刚体
|
||||
|
||||
1. 新增[AddBoxGeometry](../接口/物理.md#addboxgeometry)(服务端),给自定义刚体创建盒形碰撞体
|
||||
|
||||
1. 新增[SetRigidBodyFlag](../接口/物理.md#setrigidbodyflag)(服务端),设置自定义刚体的行为
|
||||
|
||||
1. 新增[SetRigidDynamicLockFlags](../接口/物理.md#setrigiddynamiclockflags)(服务端),设置自定义刚体的约束
|
||||
|
||||
1. 新增[SetActorFlag](../接口/物理.md#setactorflag)(服务端),设置物理实体的行为开关
|
||||
|
||||
1. 新增[SetKinematicTarget](../接口/物理.md#setkinematictarget)(服务端),设置运动学刚体的目标变换
|
||||
|
||||
1. 新增[SetGlobalPose](../接口/物理.md#setglobalpose)(服务端),设置自定义刚体的变换(直接瞬移)
|
||||
|
||||
1. 新增[AddForce](../接口/物理.md#addforce)(服务端),给自定义刚体添加力
|
||||
|
||||
1. 新增[GetQuaternion](../接口/物理.md#getquaternion)(服务端),获取自定义刚体的四元数旋转
|
||||
|
||||
1. 新增[Raycast](../接口/物理.md#raycast)(服务端),射线检测
|
||||
|
||||
1. 新增[GetRecipeByRecipeId](../接口/世界/方块管理.md#getrecipebyrecipeid)(服务端),根据配方id查询配方内容。
|
||||
|
||||
1. 新增[GetEntitiesAroundForClientEntity](../接口/实体/属性.md#getentitiesaroundforcliententity)(客户端),获取区域内的客户端实体列表
|
||||
|
||||
1. 新增[GetEntitiesInSquareAreaForClientEntity](../接口/实体/属性.md#getentitiesinsquareareaforcliententity)(客户端),获取区域内的客户端实体列表
|
||||
|
||||
1. 新增[GetQuaternion](../接口/物理.md#getquaternion)(客户端),获取自定义刚体的四元数旋转
|
||||
|
||||
1. 新增[Raycast](../接口/物理.md#raycast)(客户端),射线检测
|
||||
|
||||
1. 新增[GetKeyMappings](../接口/游戏设置.md#getkeymappings)(客户端),获取指定的自定义按键映射配置
|
||||
|
||||
1. 新增[RegisterCustomKeyMapping](../接口/游戏设置.md#registercustomkeymapping)(客户端),注册自定义按键映射
|
||||
|
||||
1. 新增[GetGamepadKeyMappings](../接口/游戏设置.md#getgamepadkeymappings)(客户端),获取自定义手柄按键映射
|
||||
|
||||
1. 新增[RegisterCustomGamepadMapping](../接口/游戏设置.md#registercustomgamepadmapping)(客户端),注册自定义手柄按键映射
|
||||
|
||||
1. 新增[SetPosForClientEntity](../接口/实体/属性.md#setposforcliententity)(客户端),设置客户端实体位置。
|
||||
|
||||
1. 新增[GetRecipeByRecipeId](../接口/世界/方块管理.md#getrecipebyrecipeid)(客户端),根据配方id查询配方内容。
|
||||
|
||||
1. 新增[SetRotForClientEntity](../接口/实体/属性.md#setrotforcliententity)(客户端),设置客户端实体头与水平方向的俯仰角度和竖直方向的旋转角度。
|
||||
|
||||
1. 新增[PhysxTouchServerEvent](../事件/物理.md#physxtouchserverevent)(服务端),给自定义刚体添加的碰撞体,与其他碰撞体或原版生物发生碰撞/结束碰撞时触发
|
||||
|
||||
1. 新增[OnCustomKeyPressInGame](../事件/游戏设置.md#oncustomkeypressingame)(客户端),当玩家按下自定义按键时触发
|
||||
|
||||
1. 新增[OnCustomKeyChangedEvent](../事件/游戏设置.md#oncustomkeychangedevent)(客户端),当自定义按键绑定发生改变时触发
|
||||
|
||||
1. 新增[OnCustomGamepadPressInGame](../事件/游戏设置.md#oncustomgamepadpressingame)(客户端),当玩家按下自定义手柄按键时触发
|
||||
|
||||
1. 新增[OnCustomGamepadChangedEvent](../事件/游戏设置.md#oncustomgamepadchangedevent)(客户端),当自定义手柄按键绑定发生改变时触发
|
||||
|
||||
1. 新增[PhysxTouchClientEvent](../事件/物理.md#physxtouchclientevent)(客户端),给自定义刚体添加的碰撞体,与其他碰撞体或原版生物发生碰撞/结束碰撞时触发
|
||||
|
||||
1. 新增[ActorDamageCause](../枚举值/ActorDamageCause.md),新增MaceSmash类型
|
||||
|
||||
1. 新增[BiomeType](../枚举值/BiomeType.md),新增pale_garden(苍白花园)类型
|
||||
|
||||
1. 新增[EntityType](../枚举值/EntityType.md),新增Creaking(嘎枝)类型
|
||||
|
||||
1. 新增[OpenContainerId](../枚举值/OpenContainerId.md),新增DynamicContainer类型
|
||||
|
||||
1. 新增[PxActorFlag](../枚举值/PxActorFlag.md),物理实体行为枚举
|
||||
|
||||
1. 新增[PxEventMask](../枚举值/PxEventMask.md),碰撞事件枚举
|
||||
|
||||
1. 新增[PxForceMode](../枚举值/PxForceMode.md),添加力的模式
|
||||
|
||||
1. 新增[PxRigidBodyFlag](../枚举值/PxRigidBodyFlag.md),自定义刚体行为枚举
|
||||
|
||||
1. 新增[PxRigidDynamicLockFlag](../枚举值/PxRigidDynamicLockFlag.md),自定义刚体约束枚举
|
||||
|
||||
1. 新增[RenderLayer](../枚举值/RenderLayer.md),补充原版发光方块渲染时的材质类型
|
||||
|
||||
- 调整
|
||||
|
||||
1. 调整[AddEffectToEntity](../接口/实体/状态效果.md#addeffecttoentity)(服务端),持续时间支持浮点型
|
||||
|
||||
1. 调整[CanSee](../接口/实体/属性.md#cansee)(服务端),增加angleX、angleY的描述
|
||||
|
||||
1. 调整[SetGameDifficulty](../接口/世界/行为.md#setgamedifficulty)(服务端),极限模式不可修改游戏难度
|
||||
|
||||
1. 调整[SetDefaultGameType](../接口/世界/行为.md#setdefaultgametype)(服务端),极限模式不可修改默认游戏模式
|
||||
|
||||
1. 调整[SetGameRulesInfoServer](../接口/世界/游戏规则.md#setgamerulesinfoserver)(服务端),极限模式不可修改cheat_info部分的游戏规则
|
||||
|
||||
1. 调整[UseItemAttackEntity](../接口/世界/行为.md#useitemattackentity)(服务端),增加damageFormula参数,可传入计算公式来修改伤害值。
|
||||
|
||||
1. 调整[SetPlayerGameType](../接口/玩家/游戏模式.md#setplayergametype)(服务端),极限模式不可修改玩家个人游戏模式
|
||||
|
||||
1. 调整GetNotRenderAtAll(客户端),新增支持CreateClientEntityByTypeStr创建的客户端实体。
|
||||
|
||||
1. 调整SetNotRenderAtAll(客户端),新增支持CreateClientEntityByTypeStr创建的客户端实体。
|
||||
|
||||
1. 调整ResetActorRender(客户端),新增支持CreateClientEntityByTypeStr创建的客户端实体。
|
||||
|
||||
1. 调整多个客户端渲染、模型、材质、动画相关接口,新增支持CreateClientEntityByTypeStr创建的客户端实体。详见官方文档。
|
||||
|
||||
1. 调整[ItemPushInCustomContainerServerEvent](../事件/方块.md#itempushincustomcontainerserverevent)(服务端),增加容器方块所在维度的参数
|
||||
|
||||
1. 调整[ItemPullOutCustomContainerServerEvent](../事件/方块.md#itempulloutcustomcontainerserverevent)(服务端),增加容器方块所在维度的参数
|
||||
|
||||
- 废弃(将在未来不可用)
|
||||
|
||||
1. 废弃OpenVoiceGui,语言转文字功能已移除
|
||||
18
docs/mcdocs/1-ModAPI/枚举值/PxActorFlag.md
Normal file
18
docs/mcdocs/1-ModAPI/枚举值/PxActorFlag.md
Normal file
@@ -0,0 +1,18 @@
|
||||
# PxActorFlag
|
||||
|
||||
class in mod.common.minecraftEnum
|
||||
|
||||
- 描述
|
||||
|
||||
物理实体行为枚举
|
||||
|
||||
|
||||
|
||||
```python
|
||||
class PxActorFlag(object):
|
||||
eDISABLE_GRAVITY = (1 << 1) # 禁用重力
|
||||
eDISABLE_SIMULATION = (1 << 3) # 禁用物理模拟
|
||||
|
||||
```
|
||||
|
||||
|
||||
22
docs/mcdocs/1-ModAPI/枚举值/PxEventMask.md
Normal file
22
docs/mcdocs/1-ModAPI/枚举值/PxEventMask.md
Normal file
@@ -0,0 +1,22 @@
|
||||
# PxEventMask
|
||||
|
||||
class in mod.common.minecraftEnum
|
||||
|
||||
- 描述
|
||||
|
||||
碰撞事件枚举
|
||||
|
||||
|
||||
|
||||
```python
|
||||
class PxEventMask(object):
|
||||
Null = 0x0 # 不需要碰撞事件。若不为Null,则Found或Lost必须有一个,Server或Client必须有一个
|
||||
Found = 0x1 # 需要接触开始事件
|
||||
Found_Detail = 0x2 # 接触开始事件需要附带碰撞点与法线信息。性能消耗较大。
|
||||
Lost = 0x4 # 需要接触结束事件
|
||||
Server = 0x8 # 需要服务器事件
|
||||
Client = 0x10 # 需要客户端事件
|
||||
|
||||
```
|
||||
|
||||
|
||||
20
docs/mcdocs/1-ModAPI/枚举值/PxForceMode.md
Normal file
20
docs/mcdocs/1-ModAPI/枚举值/PxForceMode.md
Normal file
@@ -0,0 +1,20 @@
|
||||
# PxForceMode
|
||||
|
||||
class in mod.common.minecraftEnum
|
||||
|
||||
- 描述
|
||||
|
||||
添加力的模式
|
||||
|
||||
|
||||
|
||||
```python
|
||||
class PxForceMode(object):
|
||||
eFORCE = 0 # 力,单位为质量 × 距离 / 时间²
|
||||
eIMPULSE = 1 # 冲量,单位为质量 × 距离 / 时间
|
||||
eVELOCITY_CHANGE = 2 # 速度变化,单位为距离 / 时间,直接改变速度,与质量无关
|
||||
eACCELERATION = 3 # 加速度,单位为距离 / 时间²,直接施加加速度,与质量无关
|
||||
|
||||
```
|
||||
|
||||
|
||||
17
docs/mcdocs/1-ModAPI/枚举值/PxRigidBodyFlag.md
Normal file
17
docs/mcdocs/1-ModAPI/枚举值/PxRigidBodyFlag.md
Normal file
@@ -0,0 +1,17 @@
|
||||
# PxRigidBodyFlag
|
||||
|
||||
class in mod.common.minecraftEnum
|
||||
|
||||
- 描述
|
||||
|
||||
自定义刚体行为枚举
|
||||
|
||||
|
||||
|
||||
```python
|
||||
class PxRigidBodyFlag(object):
|
||||
eKINEMATIC = (1 << 0) # 设置刚体的运动学模式。运动学刚体不受力的影响,使用setKinematicTarget控制移动
|
||||
|
||||
```
|
||||
|
||||
|
||||
22
docs/mcdocs/1-ModAPI/枚举值/PxRigidDynamicLockFlag.md
Normal file
22
docs/mcdocs/1-ModAPI/枚举值/PxRigidDynamicLockFlag.md
Normal file
@@ -0,0 +1,22 @@
|
||||
# PxRigidDynamicLockFlag
|
||||
|
||||
class in mod.common.minecraftEnum
|
||||
|
||||
- 描述
|
||||
|
||||
自定义刚体约束枚举
|
||||
|
||||
|
||||
|
||||
```python
|
||||
class PxRigidDynamicLockFlag(object):
|
||||
eLOCK_LINEAR_X = (1 << 0) # 锁定x轴平移
|
||||
eLOCK_LINEAR_Y = (1 << 1) # 锁定y轴平移
|
||||
eLOCK_LINEAR_Z = (1 << 2) # 锁定z轴平移
|
||||
eLOCK_ANGULAR_X = (1 << 3) # 锁定x轴旋转
|
||||
eLOCK_ANGULAR_Y = (1 << 4) # 锁定y轴旋转
|
||||
eLOCK_ANGULAR_Z = (1 << 5) # 锁定z轴旋转
|
||||
|
||||
```
|
||||
|
||||
|
||||
@@ -56,6 +56,11 @@
|
||||
| [PlayerActionType](../枚举值/PlayerActionType.md) | 玩家动作枚举 |
|
||||
| [PlayerExhauseRatioType](../枚举值/PlayerExhauseRatioType.md) | 饥饿度消耗倍率类型 |
|
||||
| [PlayerUISlot](../枚举值/PlayerUISlot.md) | 开放容器对应的slot偏移 |
|
||||
| [PxActorFlag](../枚举值/PxActorFlag.md) | 物理实体行为枚举 |
|
||||
| [PxEventMask](../枚举值/PxEventMask.md) | 碰撞事件枚举 |
|
||||
| [PxForceMode](../枚举值/PxForceMode.md) | 添加力的模式 |
|
||||
| [PxRigidBodyFlag](../枚举值/PxRigidBodyFlag.md) | 自定义刚体行为枚举 |
|
||||
| [PxRigidDynamicLockFlag](../枚举值/PxRigidDynamicLockFlag.md) | 自定义刚体约束枚举 |
|
||||
| [RayFilterType](../枚举值/RayFilterType.md) | 射线检测类型 |
|
||||
| [RedstoneModeType](../枚举值/RedstoneModeType.md) | 命令方块红石类型 |
|
||||
| [RenderControllerArrayType](../枚举值/RenderControllerArrayType.md) | 渲染控制器字典中材质、贴图、模型的枚举值 |
|
||||
|
||||
Reference in New Issue
Block a user