Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using UnityEngine;
- using System.Collections;
- using System.Collections.Generic;
- using BeardedManStudios.Network;
- public class Startup : MonoBehaviour {
- public string host = "127.0.0.1";
- public int port = 15937;
- public Networking.TransportationProtocolType protocolType = Networking.TransportationProtocolType.UDP;
- private NetWorker socket = null;
- public Chat chat;
- void Start () {
- Networking.InitializeFirewallCheck((ushort)port);
- }
- public void StartServer() {
- socket = Networking.Host((ushort)port, protocolType, 10);
- socket.playerConnected += PlayerConnected;
- socket.playerDisconnected += PlayerDisconnected;
- chat.SendMessage("Starting server...");
- }
- public void StartClient() {
- socket = Networking.Connect("127.0.0.1", (ushort)port, protocolType);
- chat.SendMessage("Starting client...");
- }
- private void PlayerDisconnected(NetworkingPlayer player) {
- chat.SendMessage(string.Format("Player [{0}] disconnected", player.Ip));
- }
- private void PlayerConnected(NetworkingPlayer player) {
- chat.SendMessage(string.Format("Player [{0}] connected", player.Ip));
- }
- }
- //---- Chat.cs
- using UnityEngine;
- using System.Collections;
- using System.Collections.Generic;
- using UnityEngine.UI;
- using BeardedManStudios.Network;
- public class Chat : SimpleNetworkedMonoBehavior {
- public Text chatbox;
- public InputField input;
- public List<string> messages = new List<string>();
- public void SendMessage(string message) {
- RPC("SendMessageRPC", message);
- //SendMessageRPC(message);
- }
- [BRPC]
- private void SendMessageRPC(string message) {
- Debug.Log("Sending message: " + message);
- messages.Add("\n [] : " + message);
- Debug.Log(messages.Count);
- if (messages.Count > 50) {
- messages.RemoveAt(0);
- }
- UpdateChatbox();
- }
- private void UpdateChatbox() {
- string text = "";
- for(int i = messages.Count-1; i>= 0; i--){
- text += messages[i];
- }
- chatbox.text = text;
- }
- private void Update() {
- base.Update();
- if (Input.GetKeyDown(KeyCode.Return)) {
- if (input.text != "") {
- SendMessage(input.text.Trim());
- }
- input.text = "";
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement