Esempio n. 1
0
        public override void Initialize(SS14Window window,
                                        ViewVariablesBlobMetadata blob, ViewVariablesRemoteSession session)
        {
            Session = session;

            _wrappingInit(window, $"[SERVER] {blob.Stringified}", blob.ObjectTypePretty);
            foreach (var trait in TraitsFor(blob.Traits))
            {
                trait.Initialize(this);
                _traits.Add(trait);
            }
            _refresh();
        }
        public override async void Initialize(DefaultWindow window, ViewVariablesBlobMetadata blob, ViewVariablesRemoteSession session)
        {
            // TODO: this is pretty poorly implemented right now.
            // For example, it assumes a client-side entity exists,
            // so it also means client bubbling won't work in this context.

            _entitySession = session;

            _membersBlob = await ViewVariablesManager.RequestData <ViewVariablesBlobMembers>(session, new ViewVariablesRequestMembers());

            var uid = (EntityUid)_membersBlob.MemberGroups.SelectMany(p => p.Item2).Single(p => p.Name == "Uid").Value;

            Initialize(window, uid);
        }
        public override async void Initialize(SS14Window window, ViewVariablesBlobMetadata blob, ViewVariablesRemoteSession session)
        {
            // TODO: this is pretty poorly implemented right now.
            // For example, it assumes a client-side entity exists,
            // so it also means client bubbling won't work in this context.

            _entitySession = session;

            _membersBlob = await ViewVariablesManager.RequestData<ViewVariablesBlobMembers>(session, new ViewVariablesRequestMembers());

            var entityManager = IoCManager.Resolve<IEntityManager>();
            var uid = (EntityUid) _membersBlob.Members.Single(p => p.Name == "Uid").Value;

            var entity = entityManager.GetEntity(uid);
            Initialize(window, entity);
        }
 /// <summary>
 ///     Initializes this instance to work on a remote object.
 ///     This is called when the view variables manager has already made a session to the remote object.
 /// </summary>
 /// <param name="window">The window to initialize by adding GUI components.</param>
 /// <param name="blob">The data blob sent by the server for this remote object.</param>
 /// <param name="session">The session connecting to the remote object.</param>
 public virtual void Initialize(DefaultWindow window, ViewVariablesBlobMetadata blob, ViewVariablesRemoteSession session)
 {
     throw new NotSupportedException();
 }