- 最后登录
- 2021-7-6
- 注册时间
- 2012-12-27
- 阅读权限
- 90
- 积分
- 76145
 
- 纳金币
- 53488
- 精华
- 316
|
首先建一个空对象 然后填加Network View组件 之后给客户端添加脚本- using UnityEngine;
- using System.Collections;
- using UnityEngine.UI;
- using System.Collections.Generic;
- public class ServerController : MonoBehaviour {
- public Text messageText;
- public Text connectCount;
- public Text m;
- private string [] xing;
- private string [] ming;
- private Dictionary <string, string> players;
- private NetworkView v;
- private Dictionary <string, ArrayList> playersMessage;
- void Start () {
- xing = new string [] {
- "赵", "钱", "孙", "李", "周",
- "吴", "郑", "王", "冯", "陈",
- "楮", "卫", "蒋", "沈", "韩",
- "杨", "朱", "秦", "尤", "许",
- "何", "吕", "施", "张", "孔",
- "曹", "严", "华"};
- ming = new string [] {
- "狗蛋", "JJ", "尼玛", "尼美", "厂长",
- "铁锤", "脑残", "酸菜", "禽兽", "水杯"};
- playersMessage = new Dictionary <string, ArrayList> ();
- players = new Dictionary <string, string> ();
- v = GetComponent <NetworkView> ();
- // 初始化服务器
- Network.InitializeServer (30, 2333, false);
- }
- // 服务器初始化完毕
- void OnServerInitialized () {
- messageText.text = "服务器初始化完毕!";
- }
- // 有客户端链接到服务器
- void OnPlayerConnected (NetworkPlayer p) {
- string n = NamedPlayer (p);
- players.Add (p.ipAddress, n);
- messageText.text = "玩家: " + n + " 已连接!";
- connectCount.text = Network.connections.Length.ToString ();
- }
- // 客户端断开连接
- void OnPlayerDisconnected (NetworkPlayer p) {
- messageText.text = "玩家: " + players [p.ipAddress] + " 已退出!";
- players.Remove (p.ipAddress);
- connectCount.text = Network.connections.Length.ToString ();
- }
- string NamedPlayer (NetworkPlayer p) {
- int x = Random.Range (0, 28);
- int m = Random.Range (0, 10);
- string name = xing [x] + ming [m];
- v.RPC ("ReceivedMessage", p, name);
- return name;
- }
- public void DidClickButton () {
- NetworkView vv = GetComponent <NetworkView> ();
- vv.RPC ("Send", RPCMode.All, "aa", "bb");
- }
- [RPC]
- public void Send (string name, string message) {
- m.text += name + ": " + message + "\n";
- }
- }
复制代码 |
|