Example #1
0
        private object OnPlayerChat(PlayerIdentity identity, NetworkMessageInfo info, string message)
        {
            if (message.Trim().Length <= 1) return true;
            var str = message.Substring(0, 1);
            // Is it a chat command?
            if (str.Equals("/") || str.Equals("!"))
            {
                // Get the arg string
                var argstr = message.Substring(1);

                // Parse it
                string chatcmd;
                string[] args;
                ParseChatCommand(argstr, out chatcmd, out args);
                if (chatcmd == null) return null;

                // Handle it
                if (!cmdlib.HandleChatCommand(identity, info, chatcmd, args))
                {
                    ChatManager.Instance.AppendChatboxServerSingle($"<color=#b8d7a3>Unknown command: {chatcmd}</color>", info.sender);
                    return true;
                }
                return true;
            }
            return null;
        }
Example #2
0
        private void OnSerializeNetworkView(BitStream stream, NetworkMessageInfo info)
        {
            if (started)
            {
                if (stream.isWriting)
                {
                    int ss   = 4;
                    int turn = 4;
                    int x    = 9;
                    int y    = 9;

                    if (sendState == 1 && isServer)
                    {
                        ss   = sendState;
                        turn = app.controller.turns.Turn;
                        Debug.Log("Serwer Wysyłanie - SetUp: " + "State: " + ss + ", Turn " + turn + ", x, y :" + x + ", " + y);
                    }
                    else if (sendState == 1 && !isServer)
                    {
                        Debug.Log("Client Wysyłanie - SetUp: Waiting for setup, moj stan: " + sendState);
                    }
                    else if (sendState == 2 && !isServer)
                    {
                        Debug.Log("Client Wysyłanie - Waiting, moj stan: " + sendState);
                        ss = sendState;
                    }
                    else if (sendState == 2 && isServer)
                    {
                        Debug.Log("Serwer Wysyłanie - Waiting, moj stan: " + sendState);
                        ss = sendState;
                    }
                    else if (sendState == 3)
                    {
                        ss = sendState;
                        x  = xToSend[0];
                        y  = yToSend[0];
                        Debug.Log("Send Sendstate: " + ss + " mode: " + app.controller.gameMode.mode);
                        Debug.Log("Send Move: " + x + " - " + y + " mode: " + app.controller.gameMode.mode);
                        xToSend.RemoveAt(0);
                        yToSend.RemoveAt(0);
                        if (xToSend.Count == 0)
                        {
                            sendState = 2;
                        }
                    }

                    string all    = ss.ToString() + turn.ToString() + x.ToString() + y.ToString();
                    int    toSend = int.Parse(all);
                    Debug.Log("Do wysłania (klient/serwer): " + toSend);
                    stream.Serialize(ref toSend);
                }
                else
                {
                    int recived = 4499;
                    stream.Serialize(ref recived);
                    Debug.Log("Odbieranie (Klient/Serwer): " + recived);
                    string all = recived.ToString();
                    Debug.Log("Odbieranie (Klient/Serwer): (string) " + all);
                    int ss   = int.Parse(all [0].ToString());
                    int turn = int.Parse(all [1].ToString());
                    int x    = int.Parse(all [2].ToString());
                    int y    = int.Parse(all [3].ToString());

                    Debug.Log("Odbieranie (Klient/Serwer): " + "State: " + ss + ", Turn " + turn + ", x, y :" + x + ", " + y);
                    if (isServer && sendState == 1 && ss == 2)
                    {
                        Debug.Log("Serwer Odbieranie - SetUp: " + " Potwierdzenie ustawienia tury klienta");
                        app.controller.bluetooth.ServerClientMultiplayerWindow.SetActive(false);
                        this.ChangeState(2);
                    }
                    else if (!isServer && sendState == 1 && ss == 1)
                    {
                        app.controller.turns.SetTurnBeforeStart(turn);
                        app.controller.bluetooth.ServerClientMultiplayerWindow.SetActive(false);
                        Debug.Log("Client Odbieranie - SetUp: " + "Ustawiam ture na " + turn);
                        Debug.Log("Stan przed ustawieniem: " + sendState);
                        Debug.Log("Ustawiam na waiting (2)");
                        this.ChangeState(2);
                        Debug.Log("Stan po ustawieniu: " + sendState);
                    }
                    else if (ss == 3)
                    {
                        Debug.Log("Recive Move: " + x + " - " + y + " mode: " + app.controller.gameMode.mode);
                        PrepareClick(x, y);
                    }
                }
            }
        }
Example #3
0
 void OnSerializeNetworkView(BitStream stream, NetworkMessageInfo info)
 {
     callIfExist(idOnSerializeNetworkView, stream, info);
 }
Example #4
0
 private void B(NetworkMessageInfo info)
 {
 }
Example #5
0
 private void M(NetworkMessageInfo info)
 {
     ui.OnServerRestartPolling();
 }
Example #6
0
 private void K(NetworkMessageInfo info)
 {
     ui.OnServerSelection(true);
 }
Example #7
0
 private void I(NetworkMessageInfo info)
 {
     ui.OnServerImmediate(true);
 }
Example #8
0
 private void G(NetworkMessageInfo info)
 {
     ui.OnServerCancel();
 }
Example #9
0
 // Used to customize synchronization of variables in a script watched by a network view.
 void OnSerializeNetworkView(BitStream stream, NetworkMessageInfo info)
 {
     AddMessage("OnSerializeNetworkView: " + info);
 }
Example #10
0
 // Called on objects which have been network instantiated with Network.Instantiate.
 void OnNetworkInstantiate(NetworkMessageInfo info)
 {
     AddMessage("OnNetworkInstantiate: " + info);
 }
Example #11
0
        protected override void RunItem(LineFS t)
        {
            var model = GetProperty(new LineArgs
            {
                Path  = _file.Path,
                iLine = t.iLine,
                Line  = t.Text
            });

            if (model.Direction == NetworkDirection.Na)
            {
                return;
            }

            var      networkMessageName = model.FindPropertyValue(Keywords.NETWORK_MESSAGE_NAME);
            var      dateTimeString     = model.FindPropertyValue(Keywords.DATETIME);
            DateTime dateTime;

            DateTimeExt.TryParseWithTimeZoneRemoval(dateTimeString, out dateTime);

            var x = new NetworkMessageInfo
            {
                Source = new NetworkPacketInfo
                {
                    FilePath           = _file.Path,
                    iLine              = t.iLine,
                    Direction          = model.Direction,
                    NetworkMessageName = networkMessageName,
                    DateTime           = dateTime
                }
            };

            string receiverIp   = null;
            string receiverPort = null;
            string receiverHost = null;
            string senderIp     = null;
            string senderPort   = null;
            string senderHost   = null;

            foreach (var prop in model.Properties)
            {
                if (prop.Value == null)
                {
                    continue;
                }
                var value = prop.Value.ToString();
                x.Source.Values.Add(new ValuePair
                {
                    Name  = prop.Name,
                    Value = value
                });

                switch (prop.Name)
                {
                case Keywords.RECEIVER_IP:
                    receiverIp = value;
                    break;

                case Keywords.RECEIVER_HOST:
                    receiverHost = value;
                    break;

                case Keywords.RECEIVER_PORT:
                    receiverPort = value;
                    break;

                case Keywords.SENDER_IP:
                    senderIp = value;
                    break;

                case Keywords.SENDER_HOST:
                    senderHost = value;
                    break;

                case Keywords.SENDER_PORT:
                    senderPort = value;
                    break;
                }
            }

            lock (Network)
            {
                switch (model.Direction)
                {
                case NetworkDirection.Na:
                    Log.Write("A direction of NA should never be added as a Node!", typeof(BuildFileNetworkMessagesLoop).FullName, MethodBase.GetCurrentMethod().Name);
                    break;

                case NetworkDirection.Send:
                case NetworkDirection.SendBlocking:
                    x.Source.Node = NodeBase.FormatIpAndHostHame(senderIp, senderHost);
                    if (!IsNullOrBlank(receiverIp) ||
                        !IsNullOrBlank(receiverPort) ||
                        !IsNullOrBlank(receiverHost))
                    {
                        AddNode(t, receiverIp, receiverPort, receiverHost, NodeSource.Remote, x);
                    }
                    if (!IsNullOrBlank(senderIp) ||
                        !IsNullOrBlank(senderPort) ||
                        !IsNullOrBlank(senderHost))
                    {
                        AddNode(t, senderIp, senderPort, senderHost, NodeSource.Local, x, _file.SourceType);
                    }
                    break;

                case NetworkDirection.Receive:
                    x.Source.Node = NodeBase.FormatIpAndHostHame(receiverIp, receiverHost);
                    if (!IsNullOrBlank(senderIp) ||
                        !IsNullOrBlank(senderPort) ||
                        !IsNullOrBlank(senderHost))
                    {
                        AddNode(t, senderIp, senderPort, senderHost, NodeSource.Remote, x);
                    }
                    if (!IsNullOrBlank(receiverIp) ||
                        !IsNullOrBlank(receiverPort) ||
                        !IsNullOrBlank(receiverHost))
                    {
                        AddNode(t, receiverIp, receiverPort, receiverHost, NodeSource.Local, x, _file.SourceType);
                    }
                    break;

                default:
                    throw new ArgumentOutOfRangeException();
                }
                var msg = Network.NetworkMessages.FirstOrDefault(n => n.Source.iLine == x.Source.iLine);

                if (msg == null)
                {
                    Network.NetworkMessages.Add(x);
                }
                else
                {
                    msg.Source.Values = x.Source.Values;
                }
            }
        }
Example #12
0
        private void AddNode(LineFS lineFs, string ip, string port, string hostName, NodeSource nodeSource, NetworkMessageInfo source, string sourceType = null)
        {
            if (_file.Start > _file.End)
            {
                throw new DateTimeExt.InvalidDateRangeException();
            }

            var node = new Node
            {
                Ip          = ip,
                Port        = port,
                Host        = hostName,
                iLine       = lineFs.iLine,
                Source      = nodeSource,
                SourceStart = _file.Start,
                SourceEnd   = _file.End
            };
            // Check if the Node already exists
            var found =
                Network.Nodes.Any(
                    n => n.Ip == node.Ip && n.Host == node.Host);

            if (found)
            {
                return;
            }

            if (sourceType == null)
            {
                var results = NetworkMapService.GetNetworkMapFiles(lineFs.Text, source);

                switch (results.Count)
                {
                case 0:
                    node.SourceType = Keywords.NO_FILE;
                    break;

                case 1:
                    node.SourceType = results[0].File.SourceType;
                    break;

                default:
                    node.SourceType = "Multiple Files";
                    break;
                }
            }
            else
            {
                node.SourceType = sourceType;
            }

            // Here we would need to find the target file to determine Source Type
            Network.Nodes.Add(node);
        }
Example #13
0
    public static bool QueueOrExecute(IInterpTimedEventReceiver receiver, bool immediate, string tag, ref NetworkMessageInfo info, params object[] args)
    {
        MonoBehaviour    behaviour = receiver as MonoBehaviour;
        InterpTimedEvent evnt      = New(behaviour, tag, ref info, args, immediate);

        if (evnt == null)
        {
            return(false);
        }
        if (immediate)
        {
            InvokeDirect(evnt);
        }
        else if (!InterpTimedEventSyncronizer.available)
        {
            Debug.LogWarning("Not running event because theres no syncronizer available. " + tag, receiver as Object);
            return(false);
        }
        return(true);
    }
Example #14
0
 public static bool QueueOrExecute(IInterpTimedEventReceiver receiver, bool immediate, string tag, ref NetworkMessageInfo info)
 {
     return(QueueOrExecute(receiver, immediate, tag, ref info, emptyArgs));
 }
Example #15
0
 public static bool Queue(IInterpTimedEventReceiver receiver, string tag, ref NetworkMessageInfo info, params object[] args)
 {
     return(QueueOrExecute(receiver, false, tag, ref info, args));
 }
Example #16
0
 private void F(NetworkMessageInfo info)
 {
     ui.OnServerNoOp();
 }
 public NetworkSerializationEventArgs(BitStream bs, NetworkMessageInfo info)
 {
     m_BitStream   = bs;
     m_MessageInfo = info;
 }
Example #18
0
 private void H(NetworkMessageInfo info)
 {
     ui.OnServerImmediate(false);
 }
 public NetworkInstantiateEventArgs(NetworkMessageInfo info)
 {
     m_MessageInfo = info;
 }
Example #20
0
 private void J(NetworkMessageInfo info)
 {
     ui.OnServerSelection(false);
 }
 /// <summary>Called on objects which have been network instantiated with Network.</summary>Instantiate.</summary>
 public virtual void OnNetworkInstantiate(NetworkMessageInfo info)
 {
 }
Example #22
0
 private void L(NetworkMessageInfo info)
 {
     ui.OnServerSelectionStale();
 }
 /// <summary>Used to customize synchronization of variables in a script watched by a network view.</summary>
 public virtual void OnSerializeNetworkView(BitStream stream, NetworkMessageInfo info)
 {
 }
Example #24
0
 private void A(NetEntityID hit, NetworkMessageInfo info)
 {
 }
    //---------------------------------------------------------------------

    void OnSerializeNetworkView(BitStream stream, NetworkMessageInfo info)
    {
        // SENDING
        if (stream.isWriting)
        {
        }

        // RECEIVING
        else
        {
            // Tachometer Values
            stream.Serialize(ref vehicleSpeed);
            stream.Serialize(ref vehicleRPM);

            // Vehicle Positions
            stream.Serialize(ref wbConcreteMixerPosition);
            stream.Serialize(ref wbConcretePumpPosition);
            stream.Serialize(ref wbDepositTipperPosition);
            stream.Serialize(ref wbEscortSchleicherPosition);
            stream.Serialize(ref wbExcavatorPosition);
            stream.Serialize(ref wbFlatbedTruckPosition);
            stream.Serialize(ref wbFlatTopCranePosition);
            stream.Serialize(ref wbForkLiftPosition);
            stream.Serialize(ref wbFrontLoaderPosition);
            stream.Serialize(ref wbGeneratorTrailerPosition);
            stream.Serialize(ref wbHalfpipeTruckPosition);
            stream.Serialize(ref wbHeavyDutyTrailerPosition);
            stream.Serialize(ref wbLittleFlabBedTruckPosition);
            stream.Serialize(ref wbLittleHalfpipeTruckPosition);
            stream.Serialize(ref wbLowLoaderTrailerPosition);
            stream.Serialize(ref wbMiniExcavatorPosition);
            stream.Serialize(ref wbPlattmakerPosition);
            stream.Serialize(ref wbRotaryDrillingRigPosition);
            stream.Serialize(ref wbTowerCranePosition);
            stream.Serialize(ref wbTrailerPosition);
            stream.Serialize(ref wbTrailerFlatbedPosition);
            stream.Serialize(ref wbTrailerSmallPosition);
            stream.Serialize(ref wbTruckCranePosition);

            // Vehicle Rotations
            stream.Serialize(ref wbConcreteMixerRotation);
            stream.Serialize(ref wbConcretePumpRotation);
            stream.Serialize(ref wbDepositTipperRotation);
            stream.Serialize(ref wbEscortSchleicherRotation);
            stream.Serialize(ref wbExcavatorRotation);
            stream.Serialize(ref wbFlatbedTruckRotation);
            stream.Serialize(ref wbFlatTopCraneRotation);
            stream.Serialize(ref wbForkLiftRotation);
            stream.Serialize(ref wbFrontLoaderRotation);
            stream.Serialize(ref wbGeneratorTrailerRotation);
            stream.Serialize(ref wbHalfpipeTruckRotation);
            stream.Serialize(ref wbHeavyDutyTrailerRotation);
            stream.Serialize(ref wbLittleFlabBedTruckRotation);
            stream.Serialize(ref wbLittleHalfpipeTruckRotation);
            stream.Serialize(ref wbLowLoaderTrailerRotation);
            stream.Serialize(ref wbMiniExcavatorRotation);
            stream.Serialize(ref wbPlattmakerRotation);
            stream.Serialize(ref wbRotaryDrillingRigRotation);
            stream.Serialize(ref wbTowerCraneRotation);
            stream.Serialize(ref wbTrailerRotation);
            stream.Serialize(ref wbTrailerFlatbedRotation);
            stream.Serialize(ref wbTrailerSmallRotation);
            stream.Serialize(ref wbTruckCraneRotation);
        }
    }
Example #26
0
 void OnNetworkInstantiate(NetworkMessageInfo info)
 {
     callIfExist(idOnNetworkInstantiate, info);
 }
Example #27
0
 void ReceiveSerializeEvent(byte[] bytes, NetworkMessageInfo info)
 {
     Car.ReceiveSerializeEvent(bytes, info);
 }
Example #28
0
 public void ReceiveBallsInMotion(int BallType, Vector3 Velocity, Vector3 Position, Quaternion Rotation, NetworkPlayer owner, NetworkMessageInfo info)
 {
     try
     {
         CreateBall(BallType, Velocity, Position, Rotation, owner);
     }
     catch (System.Exception e) { }
 }
Example #29
0
 private void C(int name, NetworkMessageInfo info)
 {
 }
Example #30
0
 private void E(ContextMenuData options, NetworkMessageInfo info)
 {
     ui.OnServerMenu(options);
 }
Example #31
0
 void SetDeltaTime(float serverTime, NetworkMessageInfo info)
 {
     deltaTime = serverTime - (float)info.timestamp;
     Debug.Log("Network.time " + Network.time + " Time " + Time.time + " Delta " + deltaTime + "  serverTime =  " + serverTime.ToString());
 }