コード例 #1
0
        public UnturnedUserProvider(
            IEventBus eventBus,
            IUserDataSeeder dataSeeder,
            IUserDataStore userDataStore,
            IRuntime runtime)
        {
            m_EventBus      = eventBus;
            m_DataSeeder    = dataSeeder;
            m_UserDataStore = userDataStore;
            m_Runtime       = runtime;
            m_UnturnedUsers = new HashSet <UnturnedUser>();
            m_PendingUsers  = new HashSet <UnturnedPendingUser>();

            // sync users in case of openmod reloads
            foreach (var client in Provider.clients)
            {
                m_UnturnedUsers.Add(new UnturnedUser(userDataStore, client.player));
            }

            foreach (var pending in Provider.pending)
            {
                m_PendingUsers.Add(new UnturnedPendingUser(userDataStore, pending));
            }

            Provider.onCheckValidWithExplanation += OnPendingPlayerConnecting;
            Provider.onEnemyConnected            += OnPlayerConnected;
            Provider.onEnemyDisconnected         += OnPlayerDisconnected;
            Provider.onRejectingPlayer           += OnRejectingPlayer;
        }
コード例 #2
0
 public UnturnedPlayerEventsHandler(
     IEventBus eventBus,
     ICommandExecutor commandExecutor,
     IRuntime runtime,
     IUserDataSeeder dataSeeder,
     IUserDataStore userDataStore)
 {
     m_EventBus        = eventBus;
     m_CommandExecutor = commandExecutor;
     m_Runtime         = runtime;
     m_DataSeeder      = dataSeeder;
     m_UserDataStore   = userDataStore;
     m_UnturnedUsers   = new HashSet <UnturnedUser>();
     m_PendingUsers    = new HashSet <UnturnedPendingUser>();
 }
コード例 #3
0
        public UnturnedUserProvider(
            IEventBus eventBus,
            IUserDataSeeder dataSeeder,
            IUserDataStore userDataStore,
            IRuntime runtime)
        {
            m_EventBus      = eventBus;
            m_DataSeeder    = dataSeeder;
            m_UserDataStore = userDataStore;
            m_Runtime       = runtime;
            m_UnturnedUsers = new HashSet <UnturnedUser>();
            m_PendingUsers  = new HashSet <UnturnedPendingUser>();

            Provider.onCheckValidWithExplanation += OnPendingPlayerConnected;
            Provider.onEnemyConnected            += OnPlayerConnected;
            Provider.onEnemyDisconnected         += OnEnemyDisconnected;
        }
コード例 #4
0
        public UnturnedUserProvider(
            IEventBus eventBus,
            IOpenModStringLocalizer stringLocalizer,
            IUserDataSeeder dataSeeder,
            IUserDataStore userDataStore,
            IRuntime runtime)
        {
            m_EventBus        = eventBus;
            m_DataSeeder      = dataSeeder;
            m_StringLocalizer = stringLocalizer;
            m_UserDataStore   = userDataStore;
            m_Runtime         = runtime;
            m_Users           = new HashSet <UnturnedUser>();
            m_PendingUsers    = new HashSet <UnturnedPendingUser>();

            // sync users in case of openmod reloads
            if (Provider.clients != null)
            {
                foreach (var client in Provider.clients)
                {
                    m_Users.Add(new UnturnedUser(this, userDataStore, client.player));
                }
            }

            if (Provider.pending != null)
            {
                foreach (var pending in Provider.pending)
                {
                    m_PendingUsers.Add(new UnturnedPendingUser(this, userDataStore, pending));
                }
            }

            Provider.onCheckValidWithExplanation += OnPendingPlayerConnecting;
            Provider.onServerConnected           += OnPlayerConnected;
            Provider.onServerDisconnected        += OnPlayerDisconnected;
            Provider.onRejectingPlayer           += OnRejectingPlayer;
        }
コード例 #5
0
 public UnturnedPlayerDeathEventListener(IUserDataStore userDataStore, IUserDataSeeder userDataSeeder)
 {
     m_UserDataStore  = userDataStore;
     m_UserDataSeeder = userDataSeeder;
 }