--- sidebarDepth: 1 --- # 控制 # 索引 包括屏幕操作的相关接口 --- | 接口 |
| 描述 | | --- | --- | --- | | [AddPickBlacklist](控制.md#addpickblacklist) | 客户端 | 添加使用camera组件(例如GetChosen接口、PickFacing接口)选取实体时的黑名单,即该实体不会被选取到 | | [ClearPickBlacklist](控制.md#clearpickblacklist) | 客户端 | 清除使用camera组件(例如GetChosen接口、PickFacing接口)选取实体的黑名单 | | [GetChosen](控制.md#getchosen) | 客户端 | 获取屏幕点击位置的实体或方块信息,通常与GetEntityByCoordEvent配合使用 | | [GetChosenEntity](控制.md#getchosenentity) | 客户端 | 获取屏幕点击位置的实体id,通常与GetEntityByCoordEvent配合使用 | | [GetHoldTimeThresholdInMs](控制.md#getholdtimethresholdinms) | 客户端 | 获取长按判定时间,即按着屏幕多长时间会触发长按操作 | | [GetInputVector](控制.md#getinputvector) | 客户端 | 获取方向键(移动轮盘)的输入 | | [GetMousePosition](控制.md#getmouseposition) | 客户端 | 获取鼠标位置 | | [GetTouchPos](控制.md#gettouchpos) | 客户端 | 获取点击的屏幕坐标。可以监听TapBeforeClientEvent或TapOrHoldReleaseClientEvent事件,调用本API获取点击坐标。 | | [IsCanAttack](控制.md#iscanattack) | 客户端 | 获取玩家是否响应攻击 | | [IsCanChat](控制.md#iscanchat) | 客户端 | 获取玩家是否响应聊天按钮 | | [IsCanDrag](控制.md#iscandrag) | 客户端 | 获取玩家是否响应屏幕拖动 | | [IsCanInair](控制.md#iscaninair) | 客户端 | 获取玩家是否响应打上升下降按钮 | | [IsCanJump](控制.md#iscanjump) | 客户端 | 获取玩家是否响应跳跃(以及在水中浮起) | | [IsCanMove](控制.md#iscanmove) | 客户端 | 获取玩家是否响应移动 | | [IsCanOpenInv](控制.md#iscanopeninv) | 客户端 | 获取玩家是否响应打开背包按钮 | | [IsCanPause](控制.md#iscanpause) | 客户端 | 获取玩家是否响应暂停按钮 | | [IsCanPauseScreen](控制.md#iscanpausescreen) | 客户端 | 获取玩家是否可以打开暂停界面 | | [IsCanPerspective](控制.md#iscanperspective) | 客户端 | 获取玩家是否响应切换视角 | | [IsCanScreenShot](控制.md#iscanscreenshot) | 客户端 | 获取玩家是否响应截图按钮 | | [IsCanWalkMode](控制.md#iscanwalkmode) | 客户端 | 获取玩家是否响应切换行走模式 | | [IsTouchWithMouse](控制.md#istouchwithmouse) | 客户端 | 获取是否正在使用鼠标点击模拟触屏 | | [LockInputVector](控制.md#lockinputvector) | 客户端 | 锁定本地玩家方向键(移动轮盘)的输入,可使本地玩家持续向指定方向前行,且不会再受玩家输入影响 | | [LockVerticalMove](控制.md#lockverticalmove) | 客户端 | 模拟上升或下降,调用后一直上升或下降 | | [PickFacing](控制.md#pickfacing) | 客户端 | 获取准星选中的实体或者方块 | | [SetCanAll](控制.md#setcanall) | 客户端 | 同时设置SetCanMove,SetCanJump,SetCanAttack,SetCanWalkMode,SetCanPerspective,SetCanPause,SetCanChat,SetCanScreenShot,SetCanOpenInv,SetCanDrag,SetCanInair | | [SetCanAttack](控制.md#setcanattack) | 客户端 | 设置是否响应攻击 | | [SetCanChat](控制.md#setcanchat) | 客户端 | 设置是否响应聊天按钮 | | [SetCanDrag](控制.md#setcandrag) | 客户端 | 设置是否响应屏幕拖动 | | [SetCanInair](控制.md#setcaninair) | 客户端 | 设置是否响应上升下降按钮(飞在空中时右下角的三个按钮) | | [SetCanJump](控制.md#setcanjump) | 客户端 | 设置是否响应跳跃(以及在水中浮起) | | [SetCanMove](控制.md#setcanmove) | 客户端 | 设置是否响应移动 | | [SetCanOpenInv](控制.md#setcanopeninv) | 客户端 | 设置是否响应打开背包按钮 | | [SetCanPause](控制.md#setcanpause) | 客户端 | 设置是否响应暂停按钮 | | [SetCanPauseScreen](控制.md#setcanpausescreen) | 客户端 | 设置是否可以打开暂停界面 | | [SetCanPerspective](控制.md#setcanperspective) | 客户端 | 设置是否响应切换视角 | | [SetCanScreenShot](控制.md#setcanscreenshot) | 客户端 | 设置是否响应截图按钮 | | [SetCanWalkMode](控制.md#setcanwalkmode) | 客户端 | 设置是否响应切换行走模式 | | [SetControlMode](控制.md#setcontrolmode) | 客户端 | 设置控制模式 | | [SetControlModeLock](控制.md#setcontrolmodelock) | 客户端 | 设置控制模式是否可以被改变 | | [SetDeviceVibrate](控制.md#setdevicevibrate) | 客户端 | 设置设备震动 | | [SetGyroSensorReportRate](控制.md#setgyrosensorreportrate) | 客户端 | 设置陀螺仪传感器(上报/触发)频率 | | [SetHoldTimeThreshold](控制.md#setholdtimethreshold) | 客户端 | 设置长按判定时间,即按着屏幕多长时间会触发长按操作 | | [SetMoveLock](控制.md#setmovelock) | 客户端 | 设置是否锁住移动。实际上为是否响应十字键与遥感的操作。 | | [SetShowRideUI](控制.md#setshowrideui) | 服务端 | 设置是否显示马匹的UI界面 | | [SimulateTouchWithMouse](控制.md#simulatetouchwithmouse) | 客户端 | 模拟使用鼠标控制UI(PC F11快捷键) | | [ToggleGyroSensor](控制.md#togglegyrosensor) | 客户端 | 开启或关闭陀螺仪传感器采集 | | [UnLockVerticalMove](控制.md#unlockverticalmove) | 客户端 | 解除上升或下降状态 | | [UnlockInputVector](控制.md#unlockinputvector) | 客户端 | 解锁本地玩家方向键(移动轮盘)的输入 | ## AddPickBlacklist 客户端 method in mod.client.component.gameCompClient.GameComponentClient - 描述 添加使用camera组件(例如GetChosen接口、PickFacing接口)选取实体时的黑名单,即该实体不会被选取到 - 参数 | 参数名 |
数据类型
| 说明 | | :--- | :--- | :--- | | entityId | str | 实体id | - 返回值 |
数据类型
| 说明 | | :--- | :--- | | bool | 设置是否成功 | - 示例 ```python import mod.client.extraClientApi as clientApi comp = clientApi.GetEngineCompFactory().CreateGame(levelId) # 添加黑名单 comp.AddPickBlacklist(entityId) ``` ## ClearPickBlacklist 客户端 method in mod.client.component.gameCompClient.GameComponentClient - 描述 清除使用camera组件(例如GetChosen接口、PickFacing接口)选取实体的黑名单 - 参数 无 - 返回值 |
数据类型
| 说明 | | :--- | :--- | | bool | 设置是否成功 | - 示例 ```python import mod.client.extraClientApi as clientApi comp = clientApi.GetEngineCompFactory().CreateGame(levelId) # 清除黑名单中所有实体 comp.ClearPickBlacklist() ``` ## GetChosen 客户端 method in mod.client.component.cameraCompClient.CameraComponentClient - 描述 获取屏幕点击位置的实体或方块信息,通常与GetEntityByCoordEvent配合使用 - 参数 无 - 返回值 |
数据类型
| 说明 | | :--- | :--- | | dict | 选中目标的数据,详见[PickFacing接口](控制.md#pickfacing)的备注 | - 备注 - 目前只有在第一人称视角才能准确获取 - 示例 ```python import mod.client.extraClientApi as clientApi # 当玩家点击屏幕时获取点击位置的entityId class MyClientSystem(ClientSystem): def __init__(self, namespace, name): ClientSystem.__init__(self, namespace, name) self.ListenForEvent('Minecraft', 'Engine', 'GetEntityByCoordEvent', self, self.click) def click(self, args): comp = clientApi.GetEngineCompFactory().CreateCamera(levelId) pickData = comp.GetChosen() ``` ## GetChosenEntity 客户端 method in mod.client.component.cameraCompClient.CameraComponentClient - 描述 获取屏幕点击位置的实体id,通常与GetEntityByCoordEvent配合使用 - 参数 无 - 返回值 |
数据类型
| 说明 | | :--- | :--- | | str | 实体id | - 备注 - 目前只有在第一人称视角才能准确获取 - 示例 ```python # 当玩家点击屏幕时获取点击位置的entityId import mod.client.extraClientApi as clientApi class MyClientSystem(ClientSystem): def __init__(self, namespace, name): ClientSystem.__init__(self, namespace, name) self.ListenForEvent('Minecraft', 'Engine', 'GetEntityByCoordEvent', self, self.click) def click(self, args): comp = clientApi.GetEngineCompFactory().CreateCamera(levelId) entityId = comp.GetChosenEntity() ``` ## GetHoldTimeThresholdInMs 客户端 method in mod.client.component.operationCompClient.OperationCompClient - 描述 获取长按判定时间,即按着屏幕多长时间会触发长按操作 - 参数 无 - 返回值 |
数据类型
| 说明 | | :--- | :--- | | int | 时间,单位毫秒。默认为400 | - 示例 ```python import mod.client.extraClientApi as clientApi comp = clientApi.GetEngineCompFactory().CreateOperation(levelId) timeMs = comp.GetHoldTimeThresholdInMs() ``` ## GetInputVector 客户端 method in mod.client.component.actorMotionCompClient.ActorMotionComponentClient - 描述 获取方向键(移动轮盘)的输入 - 参数 无 - 返回值 |
数据类型
| 说明 | | :--- | :--- | | tuple(float,float) | 返回一个单位向量,向量第一项为向左的大小,第二项为向前的大小 | - 示例 ```python import mod.client.extraClientApi as clientApi comp = clientApi.GetEngineCompFactory().CreateActorMotion(localPlayerId) left, up = comp.GetInputVector() ``` ## GetMousePosition 客户端 method in mod.client.component.actorMotionCompClient.ActorMotionComponentClient - 描述 获取鼠标位置 - 参数 无 - 返回值 |
数据类型
| 说明 | | :--- | :--- | | tuple(float,float) | 返回一个tuple,第一个元素为x坐标,第一个元素为y坐标,非PC会返回None | - 备注 - 仅在PC有效果,非PC会返回None。仅在PushScreen时正常获取 - 示例 ```python import mod.client.extraClientApi as clientApi comp = clientApi.GetEngineCompFactory().CreateActorMotion(localPlayerId) comp.GetMousePosition() ``` ## GetTouchPos 客户端 method in mod.client.extraClientApi - 描述 获取点击的屏幕坐标。可以监听TapBeforeClientEvent或TapOrHoldReleaseClientEvent事件,调用本API获取点击坐标。 - 参数 无 - 返回值 |
数据类型
| 说明 | | :--- | :--- | | tuple(float,float) | 屏幕坐标 | - 示例 ```python import mod.client.extraClientApi as clientApi def GetTouchPosTest(): touchX, touchY = clientApi.GetTouchPos() ``` ## IsCanAttack 客户端 method in mod.client.component.operationCompClient.OperationCompClient - 描述 获取玩家是否响应攻击 - 参数 无 - 返回值 |
数据类型
| 说明 | | :--- | :--- | | bool | 是否响应攻击 | - 示例 ```python import mod.client.extraClientApi as clientApi comp = clientApi.GetEngineCompFactory().CreateOperation(levelId) comp.IsCanAttack() ``` ## IsCanChat 客户端 method in mod.client.component.operationCompClient.OperationCompClient - 描述 获取玩家是否响应聊天按钮 - 参数 无 - 返回值 |
数据类型
| 说明 | | :--- | :--- | | bool | 是否响应聊天按钮 | - 示例 ```python import mod.client.extraClientApi as clientApi comp = clientApi.GetEngineCompFactory().CreateOperation(levelId) comp.IsCanChat() ``` ## IsCanDrag 客户端 method in mod.client.component.operationCompClient.OperationCompClient - 描述 获取玩家是否响应屏幕拖动 - 参数 无 - 返回值 |
数据类型
| 说明 | | :--- | :--- | | bool | 是否响应屏幕拖动 | - 示例 ```python import mod.client.extraClientApi as clientApi comp = clientApi.GetEngineCompFactory().CreateOperation(levelId) comp.IsCanDrag() ``` ## IsCanInair 客户端 method in mod.client.component.operationCompClient.OperationCompClient - 描述 获取玩家是否响应打上升下降按钮 - 参数 无 - 返回值 |
数据类型
| 说明 | | :--- | :--- | | bool | 是否响应打上升下降按钮 | - 示例 ```python import mod.client.extraClientApi as clientApi comp = clientApi.GetEngineCompFactory().CreateOperation(levelId) comp.IsCanInair() ``` ## IsCanJump 客户端 method in mod.client.component.operationCompClient.OperationCompClient - 描述 获取玩家是否响应跳跃(以及在水中浮起) - 参数 无 - 返回值 |
数据类型
| 说明 | | :--- | :--- | | bool | 是否响应跳跃(以及在水中浮起) | - 示例 ```python import mod.client.extraClientApi as clientApi comp = clientApi.GetEngineCompFactory().CreateOperation(levelId) comp.IsCanJump() ``` ## IsCanMove 客户端 method in mod.client.component.operationCompClient.OperationCompClient - 描述 获取玩家是否响应移动 - 参数 无 - 返回值 |
数据类型
| 说明 | | :--- | :--- | | bool | 是否响应移动 | - 示例 ```python import mod.client.extraClientApi as clientApi comp = clientApi.GetEngineCompFactory().CreateOperation(levelId) comp.IsCanMove() ``` ## IsCanOpenInv 客户端 method in mod.client.component.operationCompClient.OperationCompClient - 描述 获取玩家是否响应打开背包按钮 - 参数 无 - 返回值 |
数据类型
| 说明 | | :--- | :--- | | bool | 是否响应打开背包按钮 | - 示例 ```python import mod.client.extraClientApi as clientApi comp = clientApi.GetEngineCompFactory().CreateOperation(levelId) comp.IsCanOpenInv() ``` ## IsCanPause 客户端 method in mod.client.component.operationCompClient.OperationCompClient - 描述 获取玩家是否响应暂停按钮 - 参数 无 - 返回值 |
数据类型
| 说明 | | :--- | :--- | | bool | 是否响应暂停按钮 | - 示例 ```python import mod.client.extraClientApi as clientApi comp = clientApi.GetEngineCompFactory().CreateOperation(levelId) comp.IsCanPause() ``` ## IsCanPauseScreen 客户端 method in mod.client.component.operationCompClient.OperationCompClient - 描述 获取玩家是否可以打开暂停界面 - 参数 无 - 返回值 |
数据类型
| 说明 | | :--- | :--- | | bool | 是否可以打开暂停界面 | - 示例 ```python import mod.client.extraClientApi as clientApi comp = clientApi.GetEngineCompFactory().CreateOperation(levelId) comp.IsCanPauseScreen() ``` ## IsCanPerspective 客户端 method in mod.client.component.operationCompClient.OperationCompClient - 描述 获取玩家是否响应切换视角 - 参数 无 - 返回值 |
数据类型
| 说明 | | :--- | :--- | | bool | 是否响应切换视角 | - 示例 ```python import mod.client.extraClientApi as clientApi comp = clientApi.GetEngineCompFactory().CreateOperation(levelId) comp.IsCanPerspective() ``` ## IsCanScreenShot 客户端 method in mod.client.component.operationCompClient.OperationCompClient - 描述 获取玩家是否响应截图按钮 - 参数 无 - 返回值 |
数据类型
| 说明 | | :--- | :--- | | bool | 是否响应截图按钮 | - 示例 ```python import mod.client.extraClientApi as clientApi comp = clientApi.GetEngineCompFactory().CreateOperation(levelId) comp.IsCanScreenShot() ``` ## IsCanWalkMode 客户端 method in mod.client.component.operationCompClient.OperationCompClient - 描述 获取玩家是否响应切换行走模式 - 参数 无 - 返回值 |
数据类型
| 说明 | | :--- | :--- | | bool | 是否响应切换行走模式 | - 示例 ```python import mod.client.extraClientApi as clientApi comp = clientApi.GetEngineCompFactory().CreateOperation(levelId) comp.IsCanWalkMode() ``` ## IsTouchWithMouse 客户端 method in mod.client.extraClientApi - 描述 获取是否正在使用鼠标点击模拟触屏 - 参数 无 - 返回值 |
数据类型
| 说明 | | :--- | :--- | | bool | 是否在用鼠标模拟触屏 | - 备注 - 该接口只适用于PC端 - 示例 ```python import mod.client.extraClientApi as clientApi clientApi.IsTouchWithMouse() ``` ## LockInputVector 客户端 method in mod.client.component.actorMotionCompClient.ActorMotionComponentClient - 描述 锁定本地玩家方向键(移动轮盘)的输入,可使本地玩家持续向指定方向前行,且不会再受玩家输入影响 - 参数 | 参数名 |
数据类型
| 说明 | | :--- | :--- | :--- | | inputVector | tuple(float,float) | 输入向量,第一项控制向左的大小,第二项控制向前的大小。传入(0, 0)时玩家将会被强制固定在原地,不允许移动。 | - 返回值 |
数据类型
| 说明 | | :--- | :--- | | bool | 是否锁定成功,True:成功 False:失败 | - 备注 - 传入的向量会被转化为单位向量,因此传入(10, 0)与传入(0.1, 0)效果相同 - 示例 ```python import mod.client.extraClientApi as clientApi # 使玩家向左前方持续移动 localPlayerId = clientApi.GetLocalPlayerId() rotComp = clientApi.GetEngineCompFactory().CreateRot(localPlayerId) motionComp = clientApi.GetEngineCompFactory().CreateActorMotion(localPlayerId) motionComp.LockInputVector((1, 1)) ``` ## LockVerticalMove 客户端 method in mod.client.component.actorMotionCompClient.ActorMotionComponentClient - 描述 模拟上升或下降,调用后一直上升或下降 - 参数 | 参数名 |
数据类型
| 说明 | | :--- | :--- | :--- | | flag | bool | True 上升, False 下降 | - 返回值 无 - 示例 ```python import mod.client.extraClientApi as clientApi comp = clientApi.GetEngineCompFactory().CreateActorMotion(localPlayerId) comp.LockVerticalMove(flag) ``` ## PickFacing 客户端 method in mod.client.component.cameraCompClient.CameraComponentClient - 描述 获取准星选中的实体或者方块 - 参数 无 - 返回值 |
数据类型
| 说明 | | :--- | :--- | | dict | 选中目标的数据,详见备注 | - 备注 - 选中目标为实体时,返回值为: ```python { "type": "Entity", "entityId": entityId, "hitPosX" : x, #精准碰撞点的x轴坐标,类型为float "hitPosY" : y, #精准碰撞点的y轴坐标,类型为float "hitPosZ" : z #精准碰撞点的z轴坐标,类型为float } ``` - 选中目标为方块时,返回值为: ```python { "type": "Block", "x": x, "y": y, "z": z, "face": face, "hitPosX" : x, #精准碰撞点的x轴坐标,类型为float "hitPosY" : y, #精准碰撞点的y轴坐标,类型为float "hitPosZ" : z #精准碰撞点的z轴坐标,类型为float } ``` - 没有选中目标时,返回值为: ```python { "type": "None" } ``` - 备注:由于引擎限制,准星指向实体时候的hitPosXYZ依旧是实体脚底中心的坐标,而不是射线与碰撞箱实际的相交坐标。 - 示例 ```python import mod.client.extraClientApi as clientApi comp = clientApi.GetEngineCompFactory().CreateCamera(levelId) pickData = comp.PickFacing() ``` ## SetCanAll 客户端 method in mod.client.component.operationCompClient.OperationCompClient - 描述 同时设置SetCanMove,SetCanJump,SetCanAttack,SetCanWalkMode,SetCanPerspective,SetCanPause,SetCanChat,SetCanScreenShot,SetCanOpenInv,SetCanDrag,SetCanInair - 参数 | 参数名 |
数据类型
| 说明 | | :--- | :--- | :--- | | all | bool | True为全部响应 | - 返回值 |
数据类型
| 说明 | | :--- | :--- | | bool | 设置是否成功 | - 备注 - 要在其他属性设置之前设置,不然在all之前设置的会被覆盖掉 - 示例 ```python import mod.client.extraClientApi as clientApi comp = clientApi.GetEngineCompFactory().CreateOperation(levelId) # 全部设置为不响应 comp.SetCanAll(False) ``` ## SetCanAttack 客户端 method in mod.client.component.operationCompClient.OperationCompClient - 描述 设置是否响应攻击 - 参数 | 参数名 |
数据类型
| 说明 | | :--- | :--- | :--- | | attack | bool | True为可攻击 | - 返回值 |
数据类型
| 说明 | | :--- | :--- | | bool | 设置是否成功 | - 备注 - 触屏模式下,设置SetCanAttack(False)后,将屏蔽点击效果。 <攻击实体,放置方块,开关门,拉动拉杆,点击有UI界面的方块(如工作台)> 将失效。注意,不屏蔽点击交互按钮(例如交易、骑乘等按钮),不屏蔽破坏方块。 - PC的键鼠模式下,设置SetCanAttack(False)后, 将屏蔽鼠标左键效果。<攻击实体,破坏方块> 将失效。 - 示例 ```python import mod.client.extraClientApi as clientApi comp = clientApi.GetEngineCompFactory().CreateOperation(levelId) # 不响应攻击 comp.SetCanAttack(False) ``` ## SetCanChat 客户端 method in mod.client.component.operationCompClient.OperationCompClient - 描述 设置是否响应聊天按钮 - 参数 | 参数名 |
数据类型
| 说明 | | :--- | :--- | :--- | | chat | bool | True为可打开聊天页面 | - 返回值 |
数据类型
| 说明 | | :--- | :--- | | bool | 设置是否成功 | - 示例 ```python import mod.client.extraClientApi as clientApi comp = clientApi.GetEngineCompFactory().CreateOperation(levelId) # 不响应聊天按钮 comp.SetCanChat(False) ``` ## SetCanDrag 客户端 method in mod.client.component.operationCompClient.OperationCompClient - 描述 设置是否响应屏幕拖动 - 参数 | 参数名 |
数据类型
| 说明 | | :--- | :--- | :--- | | drag | bool | True为可拖动屏幕 | - 返回值 |
数据类型
| 说明 | | :--- | :--- | | bool | 设置是否成功 | - 示例 ```python import mod.client.extraClientApi as clientApi comp = clientApi.GetEngineCompFactory().CreateOperation(levelId) # 不响应屏幕拖动 comp.SetCanDrag(False) ``` ## SetCanInair 客户端 method in mod.client.component.operationCompClient.OperationCompClient - 描述 设置是否响应上升下降按钮(飞在空中时右下角的三个按钮) - 参数 | 参数名 |
数据类型
| 说明 | | :--- | :--- | :--- | | inair | bool | True为可点击 | - 返回值 |
数据类型
| 说明 | | :--- | :--- | | bool | 设置是否成功 | - 示例 ```python import mod.client.extraClientApi as clientApi comp = clientApi.GetEngineCompFactory().CreateOperation(levelId) # 不响应空中控制按钮 comp.SetCanInair(False) ``` ## SetCanJump 客户端 method in mod.client.component.operationCompClient.OperationCompClient - 描述 设置是否响应跳跃(以及在水中浮起) - 参数 | 参数名 |
数据类型
| 说明 | | :--- | :--- | :--- | | jump | bool | True为可跳跃 | - 返回值 |
数据类型
| 说明 | | :--- | :--- | | bool | 设置是否成功 | - 示例 ```python import mod.client.extraClientApi as clientApi comp = clientApi.GetEngineCompFactory().CreateOperation(levelId) # 不响应跳跃 comp.SetCanJump(False) ``` ## SetCanMove 客户端 method in mod.client.component.operationCompClient.OperationCompClient - 描述 设置是否响应移动 - 参数 | 参数名 |
数据类型
| 说明 | | :--- | :--- | :--- | | move | bool | True为可移动 | - 返回值 |
数据类型
| 说明 | | :--- | :--- | | bool | 设置是否成功 | - 备注 - 与SetMoveLock的区别:调用SetCanMove会清除当前Input Vector,例如玩家一直按着前进键,调用SetCanMove(False)会立即停下来,调用SetMoveLock(True)则不会。 - 示例 ```python import mod.client.extraClientApi as clientApi comp = clientApi.GetEngineCompFactory().CreateOperation(levelId) # 不响应移动 comp.SetCanMove(False) ``` ## SetCanOpenInv 客户端 method in mod.client.component.operationCompClient.OperationCompClient - 描述 设置是否响应打开背包按钮 - 参数 | 参数名 |
数据类型
| 说明 | | :--- | :--- | :--- | | open | bool | True为可打开背包 | - 返回值 |
数据类型
| 说明 | | :--- | :--- | | bool | 设置是否成功 | - 示例 ```python import mod.client.extraClientApi as clientApi comp = clientApi.GetEngineCompFactory().CreateOperation(levelId) # 不响应打开背包按钮 comp.SetCanOpenInv(False) ``` ## SetCanPause 客户端 method in mod.client.component.operationCompClient.OperationCompClient - 描述 设置是否响应暂停按钮 - 参数 | 参数名 |
数据类型
| 说明 | | :--- | :--- | :--- | | pause | bool | True为可打开暂停页面 | - 返回值 |
数据类型
| 说明 | | :--- | :--- | | bool | 设置是否成功 | - 示例 ```python import mod.client.extraClientApi as clientApi comp = clientApi.GetEngineCompFactory().CreateOperation(levelId) # 不响应暂停按钮 comp.SetCanPause(False) ``` ## SetCanPauseScreen 客户端 method in mod.client.component.operationCompClient.OperationCompClient - 描述 设置是否可以打开暂停界面 - 参数 | 参数名 |
数据类型
| 说明 | | :--- | :--- | :--- | | pause | bool | True为可打开暂停页面 | - 返回值 |
数据类型
| 说明 | | :--- | :--- | | bool | 设置是否成功 | - 示例 ```python import mod.client.extraClientApi as clientApi comp = clientApi.GetEngineCompFactory().CreateOperation(levelId) # 不响应暂停按钮 comp.SetCanPauseScreen(False) ``` ## SetCanPerspective 客户端 method in mod.client.component.operationCompClient.OperationCompClient - 描述 设置是否响应切换视角 - 参数 | 参数名 |
数据类型
| 说明 | | :--- | :--- | :--- | | persp | bool | True为可切换 | - 返回值 |
数据类型
| 说明 | | :--- | :--- | | bool | 设置是否成功 | - 示例 ```python import mod.client.extraClientApi as clientApi comp = clientApi.GetEngineCompFactory().CreateOperation(levelId) # 不响应切换视角 comp.SetCanPerspective(False) ``` ## SetCanScreenShot 客户端 method in mod.client.component.operationCompClient.OperationCompClient - 描述 设置是否响应截图按钮 - 参数 | 参数名 |
数据类型
| 说明 | | :--- | :--- | :--- | | shot | bool | True为可截图 | - 返回值 |
数据类型
| 说明 | | :--- | :--- | | bool | 设置是否成功 | - 示例 ```python import mod.client.extraClientApi as clientApi comp = clientApi.GetEngineCompFactory().CreateOperation(levelId) # 不响应截图按钮 comp.SetCanScreenShot(False) ``` ## SetCanWalkMode 客户端 method in mod.client.component.operationCompClient.OperationCompClient - 描述 设置是否响应切换行走模式 - 参数 | 参数名 |
数据类型
| 说明 | | :--- | :--- | :--- | | walkmode | bool | True为可切换 | - 返回值 |
数据类型
| 说明 | | :--- | :--- | | bool | 设置是否成功 | - 示例 ```python import mod.client.extraClientApi as clientApi comp = clientApi.GetEngineCompFactory().CreateOperation(levelId) # 不响应切换行走模式 comp.SetCanWalkMode(False) ``` ## SetControlMode 客户端 method in mod.client.component.operationCompClient.OperationCompClient - 描述 设置控制模式 - 参数 | 参数名 |
数据类型
| 说明 | | :--- | :--- | :--- | | mode | int | 控制模式,0:摇杆并点击互动, 1:摇杆并瞄准十字线, 2:方向键并点击互动 | - 返回值 |
数据类型
| 说明 | | :--- | :--- | | bool | 设置成功返回true,失败返回false | - 示例 ```python import mod.client.extraClientApi as clientApi comp = clientApi.GetEngineCompFactory().CreateOperation(levelId) comp.SetControlMode(mode) ``` ## SetControlModeLock 客户端 method in mod.client.component.operationCompClient.OperationCompClient - 描述 设置控制模式是否可以被改变 - 参数 | 参数名 |
数据类型
| 说明 | | :--- | :--- | :--- | | lock | bool | true则控制模式锁定,无法打开对应设置界面,false则控制模式可以被改变 | - 返回值 |
数据类型
| 说明 | | :--- | :--- | | bool | 设置成功返回true,失败返回false | - 示例 ```python import mod.client.extraClientApi as clientApi comp = clientApi.GetEngineCompFactory().CreateOperation(levelId) comp.SetControlModeLock(lock) ``` ## SetDeviceVibrate 客户端 method in mod.client.component.deviceCompClient.DeviceCompClient - 描述 设置设备震动 - 参数 | 参数名 |
数据类型
| 说明 | | :--- | :--- | :--- | | milliSeconds | int | 震动时间(单位:毫秒),iOS设备该参数无效,无论传入多少均只震动一下,替代方案:可以通过高频调用实现长震动,如每秒调用本接口30次。 | - 返回值 |
数据类型
| 说明 | | :--- | :--- | | bool | 设置是否成功 | - 备注 - 部分设备1分钟内累计震动时间过长会导致设置失败,请尽量不要设置过长的震动时间 - 设置震动失败(函数返回False)的可能原因:当前已经处于震动状态、设备不支持震动等 - 即使函数返回值为True,也有可能因为未正确判断设备是否支持震动、设备权限上禁止震动等原因未能真正震动 - 示例 ```python import mod.client.extraClientApi as clientApi comp = clientApi.GetEngineCompFactory().CreateDevice(entityId) comp.SetDeviceVibrate(1000) ``` ## SetGyroSensorReportRate 客户端 method in mod.client.extraClientApi - 描述 设置陀螺仪传感器(上报/触发)频率 - 参数 | 参数名 |
数据类型
| 说明 | | :--- | :--- | :--- | | reportRate | int | 上报/触发频率,默认为1hz,范围为1hz - 200hz | - 返回值 |
数据类型
| 说明 | | :--- | :--- | | bool | 是否设置成功 | - 备注 - 注意: 设置的上报频率只是期望频率,由于硬件的实现,实际上的上报频率会比设置值高 - 该接口只适用于移动端 - 示例 ```python import mod.client.extraClientApi as clientApi clientApi.SetGyroSensorReportRate(reportRate) ``` ## SetHoldTimeThreshold 客户端 method in mod.client.component.operationCompClient.OperationCompClient - 描述 设置长按判定时间,即按着屏幕多长时间会触发长按操作 - 参数 | 参数名 |
数据类型
| 说明 | | :--- | :--- | :--- | | time | int | 时间,单位毫秒。默认为400 | - 返回值 |
数据类型
| 说明 | | :--- | :--- | | bool | 设置是否成功 | - 示例 ```python import mod.client.extraClientApi as clientApi comp = clientApi.GetEngineCompFactory().CreateOperation(levelId) comp.SetHoldTimeThreshold(100) ``` ## SetMoveLock 客户端 method in mod.client.component.operationCompClient.OperationCompClient - 描述 设置是否锁住移动。实际上为是否响应十字键与遥感的操作。 - 参数 | 参数名 |
数据类型
| 说明 | | :--- | :--- | :--- | | movelock | bool | True为锁住 | - 返回值 |
数据类型
| 说明 | | :--- | :--- | | bool | 设置是否成功 | - 备注 - 与SetCanMove的区别:调用SetCanMove会清除当前Input Vector,例如玩家一直按着前进键,调用SetCanMove(False)会立即停下来,调用SetMoveLock(True)则不会。 - 示例 ```python import mod.client.extraClientApi as clientApi comp = clientApi.GetEngineCompFactory().CreateOperation(levelId) # 锁住移动 comp.SetMoveLock(True) ``` ## SetShowRideUI 服务端 method in mod.server.component.rideCompServer.RideCompServer - 描述 设置是否显示马匹的UI界面 - 参数 | 参数名 |
数据类型
| 说明 | | :--- | :--- | :--- | | tamedEntityId | str | 可骑乘生物id | | isShowUI | bool | 是否显示UI | - 返回值 |
数据类型
| 说明 | | :--- | :--- | | bool | 设置结果 | - 示例 ```python import mod.server.extraServerApi as serverApi comp = serverApi.GetEngineCompFactory().CreateRide(entityId) comp.SetShowRideUI(entityId,False) ``` ## SimulateTouchWithMouse 客户端 method in mod.client.component.gameCompClient.GameComponentClient - 描述 模拟使用鼠标控制UI(PC F11快捷键) - 参数 | 参数名 |
数据类型
| 说明 | | :--- | :--- | :--- | | touch | bool | True:进入鼠标模式,False:退出鼠标模式 | - 返回值 |
数据类型
| 说明 | | :--- | :--- | | bool | 模拟结果 | - 示例 ```python import mod.client.extraClientApi as clientApi comp = clientApi.GetEngineCompFactory().CreateGame(levelId) comp.SimulateTouchWithMouse(True) ``` ## ToggleGyroSensor 客户端 method in mod.client.extraClientApi - 描述 开启或关闭陀螺仪传感器采集 - 参数 | 参数名 |
数据类型
| 说明 | | :--- | :--- | :--- | | isOpen | bool | True开启,False关闭,默认False | - 返回值 |
数据类型
| 说明 | | :--- | :--- | | bool | 是否设置成功 | - 备注 - 注意: 开启后需要重新设置一次上报频率 - 该接口只适用于移动端 - 示例 ```python import mod.client.extraClientApi as clientApi clientApi.ToggleGyroSensor(False) # 开启后需要重新设置一次上报频率 clientApi.SetGyroSensorReportRate(10) ``` ## UnLockVerticalMove 客户端 method in mod.client.component.actorMotionCompClient.ActorMotionComponentClient - 描述 解除上升或下降状态 - 参数 无 - 返回值 无 - 示例 ```python import mod.client.extraClientApi as clientApi comp = clientApi.GetEngineCompFactory().CreateActorMotion(localPlayerId) comp.UnLockVerticalMove() ``` ## UnlockInputVector 客户端 method in mod.client.component.actorMotionCompClient.ActorMotionComponentClient - 描述 解锁本地玩家方向键(移动轮盘)的输入 - 参数 无 - 返回值 |
数据类型
| 说明 | | :--- | :--- | | bool | 是否解锁成功,True:成功 False:失败 | - 示例 ```python import mod.client.extraClientApi as clientApi # 解锁使用LockInputVector锁定的本地玩家方向键(移动轮盘)输入 comp = clientApi.GetEngineCompFactory().CreateActorMotion(localPlayerId) motionComp.UnlockInputVector() ```