Fpsゲームがマルチプレイ対応できない

ファイルありがとうございます

すごく助かりました、ほんとにありがとうございます

解決した点を順にお伝えしていきますね

「リロード処理について」

ーまずリロードアニメーションであるPlay Anim Montageに

マルチキャストのカスタムイベント(PlayReloadAnim)を作成します

余談になりますがPlay Anim Montageを再生するには別でアニメーションBPにmontageのslotを

入れる必要があります

次にもう一つカスタムイベントを作成します名前をreloadingとしてサーバーで実行にします

これを先ほど作ったカスタムイベントであるPlayReloadAnim関数に接続します(写真1参考)

次にリロードボタンを押した際の処理になります(写真2参考)Reload(リロードした際の球数の処理)関数は

マルチから離れてしまうためここでは割愛しますあとは自分の好きな時に先ほど作ったReloading関数

を呼びます

「銃のFire処理について」

まずFireOnClientというマルチキャストのカスタムイベントを作成しますそこに自分で作った

Fire関数に

接続します僕の場合Fire関数はspawn actor to class(クラスからアクタをスポーンします)ノードを使って

球を飛ばす処理が入ってます

次にサーバーで実行するFireOnServerというカスタムイベントを作成します

そこに先ほど作ったFireOnnClientを接続します(写真3参考)

あとは自分が呼びたいところにFireOnServerカスタムイベントを呼ぶだけですね

「Crouching(しゃがみの処理)」

こちらは写真をアップロードできないため文章でのお伝えになります

まずカスタムイベントを二つ作ります

一つはCrouching,もう一つはUnCrouchingどちらもサーバーで実行になります

あとはインプットボタンを作り押した際はCrouchingカスタムイベントの関数を呼び出し、

離した際はUnCrouchingカスタムイベント関数を呼び出します

しゃがみアクションはいろんな方法がありますが

僕の場合は変数(ブーリアン型)のIsCrouchingという名前の変数を作り

変数をCrouchingとUnCrouchingカスタムにそれぞれセットしてCrouchingに所だけIsAimingにチェックを入れます

あとはアニメーションBPのステートマシンで変数を使用します

こんな感じで僕の場合はマルチ化に対応できマスタ

ありがとうございますm(^^)m