Skip to content
HotWeaponRecoilForceComponent

玩法 / HotWeaponRecoilForceComponent

HotWeaponRecoilForceComponent Class
​

热武器后坐力组件,用于在发射时控制角色的视角的抖动(会自动恢复)和偏移(不会自动恢复)

使用示例: 创建一个名为"HotWeaponRecoilForceSample1"的脚本,放置在对象管理器中,打开脚本,输入以下代码保存,运行游戏,代码如下:
ts
@Component
export default class HotWeaponRecoilForceSample1 extends Script {
    protected onStart(): void {
        // 构造
        const hotWeapon = this.gameObject as HotWeapon;

        if (SystemUtil.isServer()) {
            hotWeapon.recoilForceEnabled = true;
            hotWeapon.recoilForceComponent.minHorizontalOffset = 1
            hotWeapon.recoilForceComponent.maxHorizontalOffset = 1
            hotWeapon.recoilForceComponent.minVerticalOffset = 1
            hotWeapon.recoilForceComponent.maxVerticalOffset = 1
            hotWeapon.recoilForceComponent.minHorizontalJitter = 1;
            hotWeapon.recoilForceComponent.maxHorizontalJitter = 1;
            hotWeapon.recoilForceComponent.minVerticalJitter = 1;
            hotWeapon.recoilForceComponent.maxVerticalJitter = 1;
        }
        hotWeapon.recoilForceComponent.onStartRecoil.add(() => { console.log("recoilForceComponent.onStartRecoilForce") });
    }
}
@Component
export default class HotWeaponRecoilForceSample1 extends Script {
    protected onStart(): void {
        // 构造
        const hotWeapon = this.gameObject as HotWeapon;

        if (SystemUtil.isServer()) {
            hotWeapon.recoilForceEnabled = true;
            hotWeapon.recoilForceComponent.minHorizontalOffset = 1
            hotWeapon.recoilForceComponent.maxHorizontalOffset = 1
            hotWeapon.recoilForceComponent.minVerticalOffset = 1
            hotWeapon.recoilForceComponent.maxVerticalOffset = 1
            hotWeapon.recoilForceComponent.minHorizontalJitter = 1;
            hotWeapon.recoilForceComponent.maxHorizontalJitter = 1;
            hotWeapon.recoilForceComponent.minVerticalJitter = 1;
            hotWeapon.recoilForceComponent.maxVerticalJitter = 1;
        }
        hotWeapon.recoilForceComponent.onStartRecoil.add(() => { console.log("recoilForceComponent.onStartRecoilForce") });
    }
}

Table of contents ​

Properties
​

onStartRecoil: MulticastDelegateInterface<() => void>
后坐力开始广播。

Accessors
​

maxHorizontalJitter(): number
获取相机水平抖动最大值。
maxHorizontalOffset(): number
获取水平偏移最大值。
maxVerticalJitter(): number
获取相机垂直抖动最大值。
maxVerticalOffset(): number
获取垂直偏移最大值。
minHorizontalJitter(): number
获取相机水平抖动最小值。
minHorizontalOffset(): number
获取水平偏移最小值。
minVerticalJitter(): number
获取相机垂直抖动最小值。
minVerticalOffset(): number
获取垂直偏移最小值。

Methods
​

getDeepJitter(): number
获取深度抖动值。
getHorizontalJitter(): number
获取水平抖动值。
getHorizontalOffset(): number
获取水平偏移值
getVerticalJitter(): number
获取垂直抖动值。
getVerticalOffset(): number
获取垂直偏移值。

Properties ​

onStartRecoil
​

• onStartRecoil: MulticastDelegateInterface<() => void>

后坐力开始广播。

Accessors ​

maxHorizontalJitter
​

• get maxHorizontalJitter(): number

• set maxHorizontalJitter(value): void other

获取相机水平抖动最大值。

Returns ​

number相机水平抖动最大值

设置相机水平抖动最大值。

Precautions

装备热武器前仅服务器调用,装备后双端都可调用

Parameters ​

value number相机水平抖动最大值
default: 0
range: [-5, 5] type:浮点数

maxHorizontalOffset
​

• get maxHorizontalOffset(): number

• set maxHorizontalOffset(value): void

获取水平偏移最大值。

Returns ​

number水平偏移最大值

设置水平偏移最大值。

Precautions

装备热武器前仅服务器调用,装备后双端都可调用

Parameters ​

value number水平偏移最大值
default: 0
range: [-5, 5] type:浮点数

maxVerticalJitter
​

• get maxVerticalJitter(): number

• set maxVerticalJitter(value): void other

获取相机垂直抖动最大值。

Returns ​

number相机垂直抖动最大值

设置相机垂直抖动最大值。

Precautions

装备热武器前仅服务器调用,装备后双端都可调用

Parameters ​

value number新相机垂直抖动最大值
default: 0
range: [-5, 5] type:浮点数

maxVerticalOffset
​

• get maxVerticalOffset(): number

• set maxVerticalOffset(value): void other

获取垂直偏移最大值。

Returns ​

number垂直偏移最大值

设置垂直偏移最大值。

Precautions

装备热武器前仅服务器调用,装备后双端都可调用

Parameters ​

value number垂直偏移最大值
default: 0
range: [-5, 5] type:浮点数

minHorizontalJitter
​

• get minHorizontalJitter(): number

• set minHorizontalJitter(value): void other

获取相机水平抖动最小值。

Returns ​

number相机水平抖动最小值

设置相机水平抖动最小值。

Precautions

装备热武器前仅服务器调用,装备后双端都可调用

Parameters ​

value number新相机水平抖动最小值
default: 0
range: [-5, 5] type:浮点数

minHorizontalOffset
​

• get minHorizontalOffset(): number

• set minHorizontalOffset(value): void

获取水平偏移最小值。

Returns ​

number水平偏移最小值

设置水平偏移最小值。

Precautions

装备热武器前仅服务器调用,装备后双端都可调用

Parameters ​

value number水平偏移最小值
default: 0
range: [-5, 5] type:浮点数 type:浮点数

minVerticalJitter
​

• get minVerticalJitter(): number

• set minVerticalJitter(value): void other

获取相机垂直抖动最小值。

Returns ​

number相机垂直抖动最小值

设置相机垂直抖动最小值。

Precautions

装备热武器前仅服务器调用,装备后双端都可调用

Parameters ​

value number新相机垂直抖动最小值
default: 0
range: [-5, 5] type:浮点数

minVerticalOffset
​

• get minVerticalOffset(): number

• set minVerticalOffset(value): void other

获取垂直偏移最小值。

Returns ​

number垂直偏移最小值

设置垂直偏移最小值。

Precautions

装备热武器前仅服务器调用,装备后双端都可调用

Parameters ​

value number垂直偏移最小值
default: 0
range: [-5, 5] type:浮点数

Methods ​

getDeepJitter
​

• getDeepJitter(): number

获取深度抖动值。

Returns ​

number深度抖动值

getHorizontalJitter
​

• getHorizontalJitter(): number

获取水平抖动值。

Returns ​

number水平抖动值

getHorizontalOffset
​

• getHorizontalOffset(): number

获取水平偏移值

Returns ​

number水平偏移值
使用示例: 创建一个名为"HotWeaponRecoilForceSample2"的脚本,放置在对象管理器中,打开脚本,输入以下代码保存,运行游戏,你将在场景中看到一个热武器后坐力组件获取当前关键状态的效果,代码如下:
ts
@Component
export default class HotWeaponRecoilForceSample2 extends mw.Script {
    protected onStart(): void {
        // 构造
        const hotWeapon = this.gameObject as mw.HotWeapon;

        const horizontalOffset = hotWeapon.recoilForceComponent.getHorizontalOffset();
        const verticalOffset = hotWeapon.recoilForceComponent.getVerticalOffset();
        const horizontalJitter = hotWeapon.recoilForceComponent.getHorizontalJitter();
        const verticalJitter = hotWeapon.recoilForceComponent.getVerticalJitter();
        const deepJitter = hotWeapon.recoilForceComponent.getDeepJitter();
    }
}
@Component
export default class HotWeaponRecoilForceSample2 extends mw.Script {
    protected onStart(): void {
        // 构造
        const hotWeapon = this.gameObject as mw.HotWeapon;

        const horizontalOffset = hotWeapon.recoilForceComponent.getHorizontalOffset();
        const verticalOffset = hotWeapon.recoilForceComponent.getVerticalOffset();
        const horizontalJitter = hotWeapon.recoilForceComponent.getHorizontalJitter();
        const verticalJitter = hotWeapon.recoilForceComponent.getVerticalJitter();
        const deepJitter = hotWeapon.recoilForceComponent.getDeepJitter();
    }
}

getVerticalJitter
​

• getVerticalJitter(): number

获取垂直抖动值。

Returns ​

number垂直抖动值

getVerticalOffset
​

• getVerticalOffset(): number

获取垂直偏移值。

Returns ​

number垂直偏移值