Exemple #1
0
 public override void AfterStart()
 {
     this.Mission.MakeDeploymentPlan();
     this._missionScoreboardComponent = this.Mission.GetMissionBehaviour <MissionScoreboardComponent>();
     this._gameMode        = this.Mission.GetMissionBehaviour <MissionMultiplayerGameModeBase>();
     this._timerComponent  = this.Mission.GetMissionBehaviour <MultiplayerTimerComponent>();
     this._roundComponent  = this.Mission.GetMissionBehaviour <IRoundComponent>();
     this._warmupComponent = this.Mission.GetMissionBehaviour <MultiplayerWarmupComponent>();
 }
 public virtual void Initialize(SpawnComponent spawnComponent)
 {
     this.SpawnComponent            = spawnComponent;
     this.AgentVisualSpawnComponent = this.Mission.GetMissionBehaviour <MultiplayerMissionAgentVisualSpawnComponent>();
     this.GameMode = this.Mission.GetMissionBehaviour <MissionMultiplayerGameModeBase>();
     this.MissionLobbyComponent = this.Mission.GetMissionBehaviour <MissionLobbyComponent>();
     this.MissionLobbyEquipmentNetworkComponent = this.Mission.GetMissionBehaviour <MissionLobbyEquipmentNetworkComponent>();
     this.MissionLobbyEquipmentNetworkComponent.OnEquipmentRefreshed += new MissionLobbyEquipmentNetworkComponent.OnRefreshEquipmentEventDelegate(this.OnPeerEquipmentUpdated);
 }
 public override void OnBehaviourInitialize()
 {
     base.OnBehaviourInitialize();
     this._missionNetworkComponent = this.Mission.GetMissionBehaviour <MissionNetworkComponent>();
     this._gameModeServer          = this.Mission.GetMissionBehaviour <MissionMultiplayerGameModeBase>();
     if (BannerlordNetwork.LobbyMissionType == LobbyMissionType.Matchmaker)
     {
         this.TeamSelectionEnabled = false;
     }
     else
     {
         this.TeamSelectionEnabled = true;
     }
 }
Exemple #4
0
 public override void OnBehaviourInitialize()
 {
     base.OnBehaviourInitialize();
     this.CurrentMultiplayerState = MissionLobbyComponent.MultiplayerGameState.WaitingFirstPlayers;
     if (GameNetwork.IsServerOrRecorder)
     {
         MissionMultiplayerGameModeBase missionBehaviour = Mission.Current.GetMissionBehaviour <MissionMultiplayerGameModeBase>();
         if (missionBehaviour == null || missionBehaviour.AllowCustomPlayerBanners())
         {
             return;
         }
         this._usingFixedBanners       = true;
         MissionPeer.OnPreTeamChanged += new MissionPeer.OnTeamChangedDelegate(MissionLobbyComponent.CreateFixedBannerForPeer);
     }
     else
     {
         this._inactivityTimer = new Timer(MBCommon.GetTime(MBCommon.TimeType.Mission), MissionLobbyComponent.InactivityThreshold);
     }
 }
Exemple #5
0
        private bool HandleClientEventCreateBannerForPeer(
            NetworkCommunicator peer,
            NetworkMessages.FromClient.CreateBanner message)
        {
            MissionMultiplayerGameModeBase missionBehaviour = Mission.Current.GetMissionBehaviour <MissionMultiplayerGameModeBase>();

            if (missionBehaviour == null || !missionBehaviour.AllowCustomPlayerBanners())
            {
                return(false);
            }
            MissionPeer component = peer.GetComponent <MissionPeer>();

            if (component == null)
            {
                return(false);
            }
            component.Peer.BannerCode = message.BannerCode;
            MissionLobbyComponent.SyncBannersToAllClients(message.BannerCode, component.GetNetworkPeer());
            return(true);
        }