Esempio n. 1
0
        internal static void Prefix(ref GameplayCoreInstaller __instance, ref IConnectedPlayer ____connectedPlayer, ref GameplayCoreSceneSetupData ____sceneSetupData)
        {
            var mib       = __instance as MonoInstallerBase;
            var Container = SiraUtil.Accessors.GetDiContainer(ref mib);

            ExtendedPlayerManager exPlayerManager = Container.Resolve <ExtendedPlayerManager>();
            ExtendedPlayer?       exPlayer        = exPlayerManager.GetExtendedPlayer(____connectedPlayer);
            ExtendedPlayer?       hostPlayer      = exPlayerManager.GetExtendedPlayer(Container.Resolve <IMultiplayerSessionManager>().connectionOwner);

            GameplayModifiers?newModifiers;

            if (____connectedPlayer.HasState("modded") && MPState.FreeModEnabled && exPlayer?.mpexVersion >= _minVersionFreeMod)
            {
                newModifiers = exPlayer.lastModifiers;
            }
            else
            {
                newModifiers = hostPlayer?.lastModifiers;
            }

            if (newModifiers != null)
            {
                ____sceneSetupData = new GameplayCoreSceneSetupData(
                    ____sceneSetupData.difficultyBeatmap,
                    ____sceneSetupData.previewBeatmapLevel,
                    newModifiers,
                    ____sceneSetupData.playerSpecificSettings,
                    ____sceneSetupData.practiceSettings,
                    ____sceneSetupData.useTestNoteCutSoundEffects,
                    ____sceneSetupData.environmentInfo,
                    ____sceneSetupData.colorScheme
                    );
            }
        }
 internal LobbyEnvironmentManager(PacketManager packetManager, IMultiplayerSessionManager sessionManager, LobbyPlaceManager placeManager, ExtendedPlayerManager playerManager)
 {
     _packetManager  = packetManager;
     _sessionManager = sessionManager;
     _placeManager   = placeManager;
     _playerManager  = playerManager;
 }
Esempio n. 3
0
 internal LobbyEnvironmentManager(IMultiplayerSessionManager sessionManager, ILobbyStateDataModel lobbyStateDataModel, MenuEnvironmentManager menuEnvironmentManager, MultiplayerLobbyAvatarPlaceManager placeManager, MultiplayerLobbyCenterStageManager stageManager, ExtendedPlayerManager playerManager)
 {
     _sessionManager         = sessionManager;
     _lobbyStateDataModel    = lobbyStateDataModel;
     _menuEnvironmentManager = menuEnvironmentManager;
     _placeManager           = placeManager;
     _stageManager           = stageManager;
     _playerManager          = playerManager;
 }
Esempio n. 4
0
        internal void Construct(IConnectedPlayer connectedPlayer, MultiplayerController multiplayerController, IScoreSyncStateManager scoreProvider, MultiplayerLeadPlayerProvider leadPlayerProvider, MultiplayerGameplayAnimator gameplayAnimator, ExtendedPlayerManager extendedPlayerManager)
        {
            _connectedPlayer       = connectedPlayer;
            _multiplayerController = multiplayerController;
            _scoreProvider         = scoreProvider;
            _leadPlayerProvider    = leadPlayerProvider;
            _gameplayAnimator      = gameplayAnimator;
            _extendedPlayerManager = extendedPlayerManager;

            _allLights      = gameplayAnimator.GetField <LightsAnimator[], MultiplayerGameplayAnimator>("_allLightsAnimators");
            _gameplayLights = gameplayAnimator.GetField <LightsAnimator[], MultiplayerGameplayAnimator>("_gameplayLightsAnimators");

            _activeLightsColor  = gameplayAnimator.GetField <ColorSO, MultiplayerGameplayAnimator>("_activeLightsColor");
            _leadingLightsColor = gameplayAnimator.GetField <ColorSO, MultiplayerGameplayAnimator>("_leadingLightsColor");
            _failedLightsColor  = gameplayAnimator.GetField <ColorSO, MultiplayerGameplayAnimator>("_failedLightsColor");

            _leadPlayerProvider.newLeaderWasSelectedEvent += this.HandleNewLeaderWasSelected;
        }
 internal GameStateControllerStub(PacketManager packetManager, ExtendedPlayerManager extendedPlayerManager)
 {
     _packetManager         = packetManager;
     _extendedPlayerManager = extendedPlayerManager;
 }
Esempio n. 6
0
 internal GameStateControllerStub(IMultiplayerSessionManager sessionManager, PacketManager packetManager, ExtendedPlayerManager extendedPlayerManager)
 {
     _sessionManager        = sessionManager;
     _packetManager         = packetManager;
     _extendedPlayerManager = extendedPlayerManager;
 }
 internal PlayersDataModelStub(PacketManager packetManager, ExtendedPlayerManager playerManager)
 {
     _packetManager = packetManager;
     _playerManager = playerManager;
 }