玩法 / HotWeaponAimComponent
HotWeaponAimComponent Class
热武器瞄准组件,瞄准状态下持枪角色的视角会拉近
使用示例: 创建一个名为"HotWeaponAimSample1"的脚本,放置在对象管理器中,打开脚本,输入以下代码保存,运行游戏,代码如下:ts
@Component
export default class HotWeaponAimSample1 extends Script {
protected onStart(): void {
// 构造
const hotWeapon = this.gameObject as HotWeapon;
if (SystemUtil.isServer()) {
hotWeapon.aimEnabled = true;
hotWeapon.aimComponent.aimMode = HotWeaponAimMode.ThirdPerson;
hotWeapon.aimComponent.aimingZoom = 16;
hotWeapon.aimComponent.cameraOffsetDistanceInThirdPersonMode = 300;
hotWeapon.aimComponent.onStartAim.add(() => { console.log("aimComponent.onAimStartClient") });
hotWeapon.aimComponent.onEndAim.add(() => { console.log("aimComponent.onAimEndClient") });
} else if (SystemUtil.isClient()) {
hotWeapon.aimComponent.onStartAim.add(() => { console.log("aimComponent.onAimStartClient") });
hotWeapon.aimComponent.onEndAim.add(() => { console.log("aimComponent.onAimEndClient") });
}
}
}
@Component
export default class HotWeaponAimSample1 extends Script {
protected onStart(): void {
// 构造
const hotWeapon = this.gameObject as HotWeapon;
if (SystemUtil.isServer()) {
hotWeapon.aimEnabled = true;
hotWeapon.aimComponent.aimMode = HotWeaponAimMode.ThirdPerson;
hotWeapon.aimComponent.aimingZoom = 16;
hotWeapon.aimComponent.cameraOffsetDistanceInThirdPersonMode = 300;
hotWeapon.aimComponent.onStartAim.add(() => { console.log("aimComponent.onAimStartClient") });
hotWeapon.aimComponent.onEndAim.add(() => { console.log("aimComponent.onAimEndClient") });
} else if (SystemUtil.isClient()) {
hotWeapon.aimComponent.onStartAim.add(() => { console.log("aimComponent.onAimStartClient") });
hotWeapon.aimComponent.onEndAim.add(() => { console.log("aimComponent.onAimEndClient") });
}
}
}
Table of contents
Properties
onEndAim: MulticastDelegateInterface <() => void > |
---|
服务器端开始瞄准代理。使用示例见类 HotWeaponAimComponent 使用示例 |
onStartAim: MulticastDelegateInterface <() => void > |
服务器端开始瞄准代理 |
Accessors
aimMode(): HotWeaponAimMode |
---|
Get瞄准时的第一/第三人称模式。 |
aimingZoom(): number |
Get第一人称瞄准时的瞄准镜放大倍数。 |
cameraOffsetDistanceInThirdPersonMode(): number |
Get第三人称瞄准时的连接相机弹簧组件的长度。 |
defaultCameraSpringArmLength(): number |
Get第三人称常态下相机弹簧组件的默认长度。 |
Methods
enableAiming(enabled : boolean ): void other |
---|
打开/关闭瞄准 |
Properties
onEndAim
• onEndAim: MulticastDelegateInterface
<() => void
>
服务器端开始瞄准代理。使用示例见类 HotWeaponAimComponent 使用示例
onStartAim
• onStartAim: MulticastDelegateInterface
<() => void
>
服务器端开始瞄准代理
Accessors
aimMode
• | • | ||||
---|---|---|---|---|---|
Get瞄准时的第一/第三人称模式。 Returns
| Set瞄准时的第一/第三人称模式。 Parameters
|
aimingZoom
• | • | ||||
---|---|---|---|---|---|
Get第一人称瞄准时的瞄准镜放大倍数。 Precautions 合法范围为[1.0 , 18.0],对应[0° , 90°]的FOV值每增加1.0,对应FOV增加5° Returns
| Set模拟瞄准时的瞄准镜放大倍数。使用示例见类 HotWeaponAimComponent 使用示例 Precautions 合法范围为[1.0 , 18.0],对应[0° , 90°]的 FOV 值每增加1.0,对应 FOV 增加5° Parameters
|
cameraOffsetDistanceInThirdPersonMode
• | • | ||||
---|---|---|---|---|---|
Get第三人称瞄准时的连接相机弹簧组件的长度。 Returns
| Set第三人称瞄准时的连接相机弹簧组件的长度。 Precautions 相机弹簧组件长度有一个闭区间范围,目的是为了防止相机离Character太近导致穿模,太远则没有必要 Parameters
|
defaultCameraSpringArmLength
• | • | ||||
---|---|---|---|---|---|
Get第三人称常态下相机弹簧组件的默认长度。 Returns
| Set第三人称常态下相机弹簧组件的默认长度。 Precautions 相机弹簧组件长度有一个闭区间范围,目的是为了防止相机离Character太近导致穿模,太远则没有必要 Parameters
|
Methods
enableAiming
• enableAiming(enabled
): void
other
打开/关闭瞄准
Parameters
enabled boolean | 是否开启瞄准功能 default: |
---|
- 切换相机View
- 切换准星UI
- 修改子弹发射精度-上升到用户层,开发者自己在瞄准时设置默认精准度