zoukankan      html  css  js  c++  java
  • network view

    ConnectionUI 脚本挂在摄像机上

    using UnityEngine;
    using System.Collections;

    public class ConnectionUI : MonoBehaviour {
    public string remoteIP = "127.0.0.1";
    public int remotePort = 25000;
    public int listenPort = 25000;
    public bool useNAT = false;
    public string yourIP = "";
    public int yourPort=0;
    // Use this for initialization
    void Start () {

    }

    // Update is called once per frame
    void Update () {

    }
    void OnConnectedToServer()
    {
    //通知场景中的物体网络已经准备好了
    foreach(GameObject go in FindObjectsOfType<GameObject>())
    {
    go.SendMessage("OnNetworkLoadedLevel",SendMessageOptions.DontRequireReceiver);
    }

    }
    void OnGUI()
    {
    //检查你是否连接到服务器。
    if(Network.peerType==NetworkPeerType.Disconnected)
    {
    if(GUI.Button(new Rect(10,50,100,30),"Connect"))
    {
    Network.useNat=useNAT;
    //连接到服务器
    Network.Connect(remoteIP,remotePort);
    }
    if(GUI.Button(new Rect(10,100,100,30),"Start Server"))
    {
    Network.useNat=useNAT;
    //创建服务器
    Network.InitializeServer(32,listenPort);
    //通知我们场景中的物体network已经准备好了。
    foreach(GameObject go in FindObjectsOfType<GameObject>())
    {
    go.SendMessage("OnNetworkLoadedLevel",SendMessageOptions.DontRequireReceiver);
    }
    }
    //添加IP地址和端口号
    remoteIP=GUI.TextField(new Rect(120,10,100,20),remoteIP);
    remotePort=int.Parse( GUI.TextField(new Rect(230,10,40,20),remotePort.ToString()));
    }
    else
    {
    //得到你的IP地址和端口
    yourIP=Network.player.ipAddress;
    yourPort=int.Parse(Network.player.port.ToString());
    GUI.Label(new Rect(140,20,250,40),"IP Address:"+yourIP+":"+yourPort);
    if(GUI.Button(new Rect(10,10,100,50),"Disconnect"))
    {
    //从服务器上断开连接
    Network.Disconnect(200);
    }
    }

    }

    }

    Instantiated 脚本的SpaceCraft绑定要监视的物体

    using UnityEngine;
    using System.Collections;

    public class Instantiated : MonoBehaviour {
    public Transform SpaceCraft;
    // Use this for initialization
    void Start () {

    }

    // Update is called once per frame
    void Update () {

    }
    void OnNetworkLoadedLevel()
    {
    //当网络加载后实例化SpaceCraft。
    Network.Instantiate(SpaceCraft,transform.position,transform.rotation,0);
    }

    void OnPlayerDisconnected(NetworkPlayer player)
    {
    Network.RemoveRPCs(player,0);
    Network.DestroyPlayerObjects(player);
    }

    }

  • 相关阅读:
    Python3.5 Day2作业:购物车程序
    Python3.5 Day1作业:实现用户密码登录,输错三次锁定。
    Python3.5 day3作业二:修改haproxy配置文件。
    Python3.5 day3作业一:实现简单的shell sed替换功能
    Python3.5 day4作业:对员工信息文件,实现增删改查操作。
    栈的数组实现
    栈的链式实现
    20101217
    traits
    DES加密算法中的IP置换算法
  • 原文地址:https://www.cnblogs.com/lifesteven/p/3892302.html
Copyright © 2011-2022 走看看