Firearm

銃器は発射物を発射します。このコンポーネントの目的は、キャラクターに関連する武器の動作を制御することです。発射物の動作には関係ありません。発射点、使用する発射物、発射方向、回転方法、反動、その他の機能を指定します。これらのプロパティを使用して、さまざまな銃器のバリエーションを作成できます。

セットアップするには、空のゲームオブジェクトを作成し、銃器コンポーネントを追加します。武器を表示する場合は、このゲームオブジェクトにスプライトを追加します (スプライトピボットを左に設定します)。このゲームオブジェクトを、銃器を使用するキャラクターの子にします。
プレイヤーは、Firearms abilityを有効にする必要があります (反動が機能するため、および機能の例外を適用するため)。

Note
一度に複数の銃器をアクティブにすることができ、アイテムクラスはツールを拾うための便利な方法を提供します。

Property
Name識別のために銃器に固有の名前を付けます。
Fire Point発射物のスポーン ポイント。
発射ポイントのトランスフォームを作成し、それを銃器の子にします。ここで参照を設定します。発射ポイントは通常、銃口の端に配置されます。
Button発射ボタンです。
ボタンとそのトリガー イベントを選択します。
Local Position銃器の現地位置。
Stop Velocity有効にすると、キャラクターは発射物を発射している間、指定された時間の間動きを停止します。
Off Near Wallキャラクターが壁の隣にいて、武器が壁の内側にある場合、これを true に設定すると、武器が発射されなくなります。これにより、武器が別の部屋に発射されなくなります。
On Activated銃器のゲームオブジェクトがアクティブに true に設定されたときに呼び出される Unity イベント。
Method
Pause(bool value)一時停止すると、プレイヤーはこの銃器を使用できなくなります。
Shoot()必要に応じて、このメソッドを使用して発射イベントをトリガーします。
AnimationComplete()射撃アニメーションが完了したら、このメソッドを呼び出します。射撃イベントはトリガーされませんが、銃器のアニメーション状態は終了します。ShootAndWaitForAnimation() が以前に呼び出されていることが前提となります。Sprite Engine を使用する場合は、Loop Once イベントでこれを呼び出します。
ShootAndAnimationComplete()スプライトが完了したら、このメソッドを呼び出します。これにより、射撃イベントがトリガーされ、銃器のアニメーション状態が終了します。スプライト エンジンを使用している場合は、Loop Once イベントでこれを呼び出します。
ShootAndWaitForAnimation()射撃が必要なスプライト フレームでこのメソッドを呼び出します。これによって銃器のアニメーション状態が終了されるわけではありません。
したがって、射撃アニメーションの最後のフレームでは AnimationComplete() を呼び出す必要があります。
ChangeDefaultProjectile (ProjectileBase newProjectile)発射物の種類を変更します。
ChangeChargeProjectile (ProjectileBase newProjectile)チャージ弾の種類を変更します。

Note
The animation methods are only necessary if Shoot Animation is enabled. If Shoot Animation is enabled, the firearm will enter an animation wait state upon shooting, where the system will wait for the animation to complete.


Projectile

Property
Default Projectile銃器が使用する発射体。
Inventory (Optional)発射物インベントリへの参照。これには発射物のリストが含まれており、これによりシステムは銃器上の発射物を簡単に交換できるようになります。
Auto Dischargeキャラクターが射撃を終えた後、銃器が射撃を続ける短い時間を指定します。値が 0 の場合、この機能は無効になります。
Shoot Animation有効にすると、キャラクターが射撃する前に再生するアニメーションになります。システムは、指定されたアニメーション信号を true に設定します。Sprite Engine を使用する場合は、シグナル名が存在することを確認し、それに応じて Sprite State を構成し、Loop Once に設定します。
これが有効になっている場合は、戻り信号が必要です。そうしないと、システムが停止したままになります。
通常は、ShootAndAnimationComplete () または ShootAndWaitForAnimation () を呼び出し、その後 AnimationComplete () を呼び出します。
Extra Animation.ルールはシュートアニメーションと同じです。ただし、使用するスプライト エンジンを指定できる点が異なります。そのため、スプライト エンジンへの参照とアニメーションシグナルの名前を指定する必要があります。
Property反動により、銃器を発射したときに押し戻しが発生します。
Typeスライドバックが有効になっている場合、プレーヤーは後ろにスライドします。
シェイクが有効になっている場合、プレーヤーは後ろにスライドしてから前にスライドします。シェイクは短時間のみ有効です。
Recoil WhenVelocity Zero が有効になっている場合、反動はプレイヤーが静止している場合にのみ機能します。
Distanceプレイヤーが反動する距離。
Time反動に必要な時間。
Has Gravityプレイヤーが重力の影響を受ける場合は、これを有効にして反動システムが重力の効果を考慮に入れるようにします。

Signals: recoil, recoilLeft, recoilRight, recoilDown, recoilUp, recoilSlide, recoilShake

Important
反動を機能させるには、プレイヤーがFirearms abilityを有効にする必要があります。

Note
反動はキャラクターに速度を適用するため、スプライトの方向が反転します。スプライト エンジンを使用する場合、スプライトを正しい状態に保つには、recoil、recoilLeft、recoilRight 信号を有効にし、スプライトの方向の状態を構成します。通常、recoilLeft が true の場合は flipLeft を設定し、recoilRight が true の場合は flipRight を設定します。

Rotation

銃器を回転させます。

Property
Rotate With銃器の回転方法: マウス、8方向、自動シーク、固定角度、固定方向、回転なし。
Point Towards銃器が向く方向。キャラクター方向が有効になっている場合、銃器はキャラクターの移動方向を向きます。
マウス方向が有効になっている場合、銃器はマウスの方向を向きます。
トランスフォーム方向が有効になっている場合、銃器は指定されたトランスフォームの方向を向きます。
これは、銃器が NPC に属している場合に役立ちます。指定されたトランスフォームは、プレイヤーの方向を向くように設定できます。

Signals: mouseDirectionLeft, mouseDirectionRight

Note
スプライト エンジンを使用する場合は、マウス信号を有効にして、プレイヤーが反対方向に走っている場合でも、マウスの方向を向いたままにします。通常、mouseDirectionLeft が true の場合は flipLeft を設定し、mouseDirectionRight が true の場合は flipRight を設定します。キャラクターの走っているスプライトは、後ろ向きに走っているように見せるために逆方向に再生する必要がある可能性が高いため、特別な考慮が必要になる場合があります。

Propertyマウスで回転
Top Limit銃器の可動範囲は 0 度から 180 度です。これは、Point Towards が Character Direction に設定されている場合にのみ有効になります。
Bottom Limit銃器の可動範囲は 0 度から -180 度までです。
Angle Offset必要に応じて、銃器に適用されるオフセット。

Note
上限と下限の両方の値がゼロの場合、銃器の可動範囲は 360 度になります。それ以外の場合、銃器は固定されているとみなされ、指定された制限によって制限されます。

Propertyキーボードで回転
Buttons Left, Right, Up, Down銃器の方向を変更するためのキーボードボタンを指定します。
Diagonal有効にすると、銃器を 45 度の角度で向けることができるようになります。
Property自動シークで回転(ターゲットに向かって自動的に回転)
Target Layerターゲットを検索するレイヤー。
Search Radius銃器の中心からこの半径内のターゲットのみが検出されます。
Search Rate銃器がターゲットを捜索する頻度。
Auto Shoot有効にすると、銃器は自動的にターゲットを射撃します。
On Found New Target銃器が新しいターゲットを見つけるたびに呼び出される Unity イベント。

Aim

プレイヤーが狙いを定めるのに役立つビームやレチクルなどの視覚要素を追加します。

Propertyビーム
Line Of Sight Beam銃からビームが伸びます。ゲームオブジェクトを作成し、ビームを表すスプライトを配置します。スプライト ピボットを左に設定します。このゲームオブジェクトは銃の子である必要があり、有効になっている必要があります。
Layerビームが相互作用できるレイヤー。
通常は壁や敵のターゲットです。
Beamここにビーム ゲームオブジェクトの参照を配置します。
Beam Endビームがターゲットレイヤーに当たると、このゲームオブジェクトはビームの終了時に有効になります。特殊効果の目的でスプライトを再生できます。このゲーム オブジェクトを作成し、銃器の子にします。このゲームオブジェクトは有効にしないでください。システムがそのアクティブ状態を制御します。(オプション)
Max Lengthビームの最大長。
ターゲット レイヤーにヒットしない場合は、ビームはこの長さまで延長されます。
Target敵のみを含むレイヤー。ビームが敵ターゲットに当たると、On Target Hit イベントが呼び出されます。
Auto Shoot有効にすると、ターゲット レイヤーを使用して敵ターゲットがヒットすると、銃器が自動的に発砲します。
On Target Hitターゲットレイヤーを使用して敵にヒットしたときに呼び出される Unity イベント。
On Beam Hitビームが何かに当たったときに呼び出される Unity イベント。
On Nothing Hitビームが何も当たらなかったときに呼び出される Unity イベント。
Propertyレチクル
Line Of Sight Reticle銃器から特定の距離にレチクルが表示されます。ゲームオブジェクトを作成し、レチクルとして機能するスプライトを配置します。このゲームオブジェクトを銃器の子にします。
Aim Reticleここにレチクルゲームオブジェクトの参照を配置します。
Follow Type「Fixed Position」が有効になっている場合、レチクルは指定された距離で銃器の方向を指します。「Follow Mouse」が有効になっている場合、レチクルはマウスの正確な位置に従います。
Distance固定位置が有効になっている場合は、照準線を銃器からどのくらい離すかを指定します。

Charge

銃器をチャージしてスーパーチャージ弾攻撃を放ちます。

Property
Projectileチャージ攻撃で使用する発射体
Charge Time発射をトリガーする前にユーザーがボタンを押し続けなければならない時間。
プレイヤーが銃を発射できる最小しきい値時間を設定することもできます。
Discharge Time銃器を完全に発射するのに必要な時間。
Cooldown Time次の充電が開始されるまでに経過する必要がある時間。
Shoot Animation有効にすると、キャラクターが放電する前に再生するアニメーションになります。システムは、指定されたアニメーション信号を true に設定します。スプライトエンジンを使用する場合は、信号名が存在することを確認し、スプライト状態を適切に構成し、ループ ワンスに設定します。
これが有効になっている場合は、戻り信号が必要です。そうしないと、システムが停止したままになります。充電セットアップの場合は、アニメーションが完了したら ShootAndAnimationComplete() のみを呼び出します。
Extra Animation.ルールはシュートアニメーションと同じです。ただし、使用するスプライトエンジンを指定できる点が異なります。そのため、スプライトエンジンへの参照とアニメーション信号の名前を指定する必要があります。
Event
OnCharging銃器が充電されているときに呼び出される Unity イベント。
OnCharging Complete銃器の充電が完了したときに呼び出される Unity イベント。
OnDischarging銃器が発射されるときに呼び出される Unity イベント。残りの発射時間を表す 0 から 1 の間の値を返します。
OnDischarging Complete銃器の発射が終了したときに呼び出される Unity イベント。
OnDischarging Failed銃器が発射に失敗した場合に呼び出される Unity イベント。これは、弾薬が足りないことが原因である可能性があります。
OnCooling Down銃器がクールダウンしているときに呼び出される Unity イベント。残りのクールダウン時間を表す 0 から 1 の間の値を返します。
Recoil
On Dischargeこの反動は、デフォルトの発射物の反動と同じ特性を持ちます。発射中に、プレイヤーが反動を 1 回だけ受けるか、発射期間中に必要な回数だけ受けるかを指定します。

Note
チャージ システムでは、ユーザーはボタンを押し続けないとチャージできません。そのため、通常の射撃ボタンのトリガータイプを On Press に設定するのが最適です。こうすることで、チャージ中に銃器が弾丸を発射することはありません。また、チャージに使用する発射体は、連続発射の利点を生かすために、発射速度と発射速度を高く設定する必要があります。

タイトルとURLをコピーしました