示例#1
0
    private void OnEvent(EventData evt)
    {
        byte event_code = evt.Code;

        if (event_code == LOAD_SAVE_DATA_ID)
        {
            Debug.Log("LoadSaveData!");
            var content   = (object[])evt.CustomData;
            var save_data = (byte[])content[0];
            Game.Instance.LoadCompressedSaveFileBytes(save_data);
            MainMenu.Instance.m_join_island_screen.OnIslandStartLoading();
        }
        else if (event_code == COMMAND_BUFFER_FROM_CLIENT_ID)
        {
            var raise_event_options = new RaiseEventOptions {
                Receivers = ReceiverGroup.All
            };
            PhotonNetwork.RaiseEvent(COMMAND_BUFFER_FROM_SERVER_ID, (object[])evt.CustomData, raise_event_options, SendOptions.SendReliable);
        }
        else if (event_code == COMMAND_BUFFER_FROM_SERVER_ID)
        {
            var content        = (object[])evt.CustomData;
            var command_buffer = (byte[])content[0];

            CommandHandlerManager.RunCommands(command_buffer, 0, command_buffer.Length);
        }
    }
示例#2
0
        public CommandForm()
        {
            InitializeComponent();
            originalWindowSize = this.Size;
            originalPanelSize  = panelCalendar.Size;

            painter = new SelectorCalendarPainter();
            painter.PainterNeeded += new CalendarPainterNeededHandler(painter_PainterNeeded);

            systemCallback = this;

            systemCommandHandler     = new SystemCommandHandler(systemCallback);
            timerCommandHandler      = new TimerCommandHandler(systemCallback);
            scriptingCommandHandler  = new ScriptingCommandHandler(systemCallback);
            shellCommandHandler      = new ShellCommandHandler();
            expressionCommandHandler = new ExpressionCommandHandler(systemCallback);

            timerCommandHandler.TimersChanged += new EventHandler(timerCommandHandler_TimersChanged);

            commandHandlerManager = new CommandHandlerManager(systemCallback);
            commandHandlerManager.AddCommandHandler(systemCommandHandler);
            commandHandlerManager.AddCommandHandler(timerCommandHandler);
            commandHandlerManager.AddCommandHandler(scriptingCommandHandler);
            commandHandlerManager.AddCommandHandler(shellCommandHandler);
            commandHandlerManager.AddCommandHandler(expressionCommandHandler);

            settingPath = Application.ExecutablePath + ".Settings.xml";
            systemCallback.LoadSettings();

            foreach (ICommandHandler handler in commandHandlerManager.Handlers)
            {
                handler.SuggestedCommandsChanged += new EventHandler(handler_SuggestedCommandsChanged);
            }
            handler_SuggestedCommandsChanged(null, new EventArgs());
        }
示例#3
0
 public void WriteCommand <T>(T command) where T : struct, ICommand
 {
     CommandHandlerManager.WriteCommand(command, m_buffer, ref m_position);
 }