Example #1
0
        public void HandleMessage(object sender, Message message)
        {
            switch(message.Kind)
            {
                case Message.MessageType.MenuMessage:
                    {
                        var msg = (MenuMessage)message;
                        parentMenu = Menu;
                        Menu = msg.Value;
                    }
                    break;
                case Message.MessageType.LogicMessage:
                    {
                        LogicMessage msg = (LogicMessage)message;
                        if (msg.Kind == LogicMessage.MessageType.GameMessage)
                        {
                            Enabled = !Enabled;
                            Visible = !Visible;
                        }
                    }
                    break;
            }

            //TODO: handle Messages
        }
Example #2
0
        public void HandleMessage(object sender, Message message)
        {
            if (message.Kind == Message.MessageType.InputMessage)
            {
                // Pass input messages to the respective ball controllers
                InputMessage msg = (InputMessage)message;
                if(msg.Player != null && BallControllers.ContainsKey(msg.Player))
                {
                    BallControllers[msg.Player].HandleMessage(sender, msg);
                }
            }

            if (message.Kind == Message.MessageType.LogicMessage)
            {
                LogicMessage msg = (LogicMessage)message;

                if (msg.Kind == LogicMessage.MessageType.GameMessage)
                {
                    Enabled = !Enabled;
                    if (Enabled && Game.Match.State != SessionState.Finished)
                        Game.Match.State = SessionState.Running;
                    else
                    {
                        Game.Match.State = SessionState.Paused;
                    }
                }
            }
        }
Example #3
0
        public void HandleMessage(object sender, Message message)
        {
            if (message.Kind == Message.MessageType.InputMessage)
            {
                InputMessage msg = (InputMessage)message;

                processInput(msg);
            }
        }
Example #4
0
        public void HandleMessage(object sender, Message message)
        {
            if (message.Kind == Message.MessageType.MenuMessage)
            {
                var msg = (MenuMessage)message;
                parentMenu = menu;
                menu = msg.Value;
            }
            if (message.Kind == Message.MessageType.LogicMessage)
            {
                LogicMessage msg = (LogicMessage)message;
                if (msg.Kind == LogicMessage.MessageType.GameMessage)
                {
                    Enabled = !Enabled;
                    Visible = !Visible;
                }
            }

            //TODO: handle Messages
        }
Example #5
0
        public void HandleInputMessage(object sender, Message message)
        {
            if (message.Kind != Messages.Message.MessageType.InputMessage)
                return;

            if (((InputMessage)message).Kind == InputMessage.MessageType.ControlsConsole && ((InputMessage)message).Pressed.Value)
                RaiseMessageEvent(new LogicMessage(LogicMessage.MessageType.PerformanceMessage));

            switch (state)
            {
                case GameState.MenuState:
                    MenuLogic((InputMessage) message);
                    break;
                case GameState.SimulationState:
                    GameLogic((InputMessage) message);
                    break;
                default:
                    throw new ArgumentOutOfRangeException();
            }
            CheckInputMode((InputTranslator)sender);
        }
Example #6
0
        public void HandleMessage(object sender, Message message)
        {
            if (message.Kind == Message.MessageType.InputMessage)
            {
                // Pass input messages to the respective ball controllers
                InputMessage msg = (InputMessage)message;

                // When using turn mode in hot-seat, direct all input messages to the active player
                if (Session.UsePlayerTurns && Session.ActivePlayer != null && ActiveControllers.ContainsKey(Session.ActivePlayer))
                {
                    ActiveControllers[Session.ActivePlayer]?.HandleMessage(sender, msg);
                }
                // Otherwise, redirect input messages to the player given by msg.Player
                else if(msg.Player != null && ActiveControllers.ContainsKey(msg.Player) && ActiveControllers.ContainsKey(msg.Player))
                {
                    ActiveControllers[msg.Player]?.HandleMessage(sender, msg);
                }
            }

            if (message.Kind == Message.MessageType.LogicMessage)
            {
                LogicMessage msg = (LogicMessage)message;

                if (msg.Kind == LogicMessage.MessageType.GameMessage)
                {
                    Enabled = !Enabled;
                    if (Enabled && Game.Match.State != SessionState.Finished)
                        Game.Match.State = SessionState.Running;
                    else
                    {
                        Ballz.The().Services.GetService<SoundControl>().PlaySound(SoundControl.DeclineSound);
                        Game.Match.State = SessionState.Paused;
                    }
                }
            }
        }
Example #7
0
 public void HandleNetworkMessage(object sender, Message message)
 {
     if (message.Kind != Messages.Message.MessageType.NetworkMessage)
         return;
     var msg = (NetworkMessage)message;
     switch (msg.Kind)
     {
     case NetworkMessage.MessageType.ConnectedToServer:
         //TODO: show lobby!!!!<<<<<<<<<<<<<<<<<<<<<<<<<
             //startGame ();
         break;
     }
 }
Example #8
0
 protected virtual void RaiseMessageEvent(Message msg)
 {
     Message?.Invoke(this, msg);
 }
Example #9
0
 public void HandleMessage(object sender, Message msg)
 {
     if (msg.Kind == Message.MessageType.LogicMessage)
     {
         if (((LogicMessage)msg).Kind == LogicMessage.MessageType.PerformanceMessage)
         {
             Visible = !Visible;
         }
     }
 }
Example #10
0
        public void HandleMessage(object sender, Message message)
        {
            if (message.Kind == Message.MessageType.LogicMessage)
            {
                LogicMessage msg = (LogicMessage)message;

                if (msg.Kind == LogicMessage.MessageType.GameMessage)
                {
                    Enabled = !Enabled;
                }
            }
        }
Example #11
0
 public void HandleMessage(object sender, Message message)
 {
     //TODO: handle Messages
 }
Example #12
0
 public override void HandleMessage(object sender, Message message)
 {
     base.HandleMessage(sender, message);
     
     InputMessage input = message as InputMessage;
     if (input?.Pressed ?? false)
     {
         controlInput = input.Kind;
     }
 }
Example #13
0
 protected virtual void RaiseMessageEvent(Message msg)
 {
     Message?.Invoke(this, msg);
     if(state == GameState.MenuState)
         Ballz.The().Services.GetService<SoundControl>().StartMusic(SoundControl.MenuMusic);
     else
         Ballz.The().Services.GetService<SoundControl>().StopMusic(SoundControl.MenuMusic);
 }
Example #14
0
        public void HandleMessage(object sender, Message message)
        {
            //throw new NotImplementedException ();
            if (message.Kind != Message.MessageType.LogicMessage)
                return;
            LogicMessage msg = (LogicMessage)message;

            //see if the message was meant for us
            if (msg.Kind == LogicMessage.MessageType.GameMessage)
            {
                Enabled = !Enabled;
                Visible = !Visible;
            }
        }