unity3d 修正了Unity中多人游戏的衍生点

jchrr9hc  于 2022-12-19  发布在  其他
关注(0)|答案(1)|浏览(130)

我可以将这个Random.Range更改为固定点并仍然将数据发送到套接字吗?
我想在两个不同的位置有两个固定的重生点。而且,我是统一的新手。有人能帮我做固定的重生点吗?

public Transform[] spawnPoints; //stores the spawn points
    
    //makes the draw of a point for the player to be  spawn
    int index = Random.Range (0, spawnPoints.Length);
    
    public void EmitJoin(){
    //store player's skin
    data["model"] = CharacterChoiceManager.instance.current_model.ToString();
    data["posX"] = spawnPoints[index].position.x.ToString();
    data["posY"] = spawnPoints[index].position.y.ToString();
    data["posZ"] = spawnPoints[index].position.z.ToString();
    
    Application.ExternalCall("socket.emit", "JOIN",new JSONObject(data));
7fhtutme

7fhtutme1#

方法Random.Range(min, max)返回一个介于最小值和最大值之间的数字。
如果您想让某个用户拥有相同的spawnPoint,则需要存储第一次获得的index的值。
具体实现将因代码而异。
选项:

  • 向播放器类添加属性以保存index
  • 创建一个列表/字典/散列集来为每个玩家保存索引
  • ...

相关问题