示例#1
0
        private void InitializeLocalPlayerState()
        {
            ILocalNitroxPlayer  localPlayer         = NitroxServiceLocator.LocateService <ILocalNitroxPlayer>();
            PlayerModelDirector playerModelDirector = new PlayerModelDirector(localPlayer);

            playerModelDirector
            .AddDiveSuit();

            playerModelDirector.Construct();
        }
示例#2
0
        public void Create(string playerId, string playerName, PlayerSettings playerSettings)
        {
            if (playersById.ContainsKey(playerId))
            {
                throw new Exception("The playerId has already been used.");
            }

            RemotePlayer player = new RemotePlayer(playerId, playerName, playerSettings);

            PlayerModelDirector playerModelDirector = new PlayerModelDirector(player);

            playerModelDirector
            .AddPing()
            .AddDiveSuit();

            playerModelDirector.Construct();

            playersById.Add(playerId, player);
        }
示例#3
0
        public void Create(PlayerContext playerContext)
        {
            Validate.NotNull(playerContext);

            if (playersById.ContainsKey(playerContext.PlayerId))
            {
                throw new Exception("The playerId has already been used.");
            }

            GameObject   remotePlayerBody = CloneLocalPlayerBodyPrototype();
            RemotePlayer player           = new RemotePlayer(remotePlayerBody, playerContext);

            PlayerModelDirector playerModelDirector = new PlayerModelDirector(player);

            playerModelDirector
            .AddPing()
            .AddDiveSuit();

            playerModelDirector.Construct();

            playersById.Add(player.PlayerId, player);
        }