0
我正在製作地震式遊戲,並且目前正在實施多人遊戲。如果gameObject =(「玩家(克隆)」)進入觸發器,則會出現跳躍板。在unet(Unity多人遊戲)中,當你啓動並加入它時,會將你的GameObject創建爲「玩家(克隆)」。無法在Unity中找到克隆玩家(Unet)的實例
現在的問題是,當第二個玩家加入並在跳板上跳轉(進入觸發器)時,什麼都不會發生。但主持人(玩家1)可以。以下是跳轉板識別遊戲對象的代碼。我一直在抨擊我的大腦,試圖使用諸如「Find.FindGameObjectsWithTag」之類的不同方法。
代碼:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class JumpPad : MonoBehaviour {
QuakeJump fpsinput;
public float power;
private void OnTriggerEnter(Collider mycollision)
{
{
fpsinput =
GameObject.Find("Player(Clone)").GetComponent<QuakeJump>();
if (mycollision.gameObject.tag == "Player")
{
fpsinput.playerVelocity = transform.up * power;
}
}
}
}
編輯:我還注意到,當玩家2次墊跳躍,沒有發生在他身上,但播放器1(主機)被髮射到空中,甚至沒有踩着墊。
我很肯定在這一點上它的編號1),我剛剛開始聯網,所以我不確定什麼RPCClient和所有。但是你會用什麼樣的方法(除了rpc)來解決數字1)? –
您需要從已經進入觸發器的玩家處獲得quakeJump組件。所以,你可以使用這樣的代碼:https://pastebin.com/baU5qyfb 但是,如果你不確定第二點,它將不起作用。 - – ZayedUpal
我的網絡身份設置爲本地播放器權限,當我寫下你粘貼在我的代碼中的內容時,它沒有任何影響,它仍然處於當前狀態,如果主持人跳轉到可以啓動的鍵盤上,並且如果有其他播放器跳上去,玩家不會啓動,但主持人即使不在墊上也會啓動。 –