Example #1
0
        public async Task Handle(AvatarChanged e, IHandleContext ctx)
        {
            var get = await _uow.Get <presentationUsers.Models.AU_UserResponse>(e.UserId);

            get.ImageType = e.ImageType;
            get.ImageData = e.ImageData;

            _uow.Save(get);
            ctx.UpdateAsync(get, ChangeType.CHANGE);
        }
        public void Handle(AvatarChanged e)
        {
            using (IDocumentSession session = _store.OpenSession())
            {
                var user = session.Load <User>(e.UserId);

                user.ImageType = e.ImageType;
                user.ImageData = e.ImageData;

                session.Store(user);
                session.SaveChanges();
            }
        }
Example #3
0
    private void Spawn()
    {
        if (player == null)
        {
            player     = GameManager.Instance.spawnedPlayer;
            spawnPoint = GameObject.Find("CreatureSpawn").transform;
        }

        // Spawns a creature if the user is not currently controlling a creature
        if (Input.GetButtonDown("Spawn") && (isPlayingCreature == false))
        {
            if (creature != null)
            {
                List <GameObject> tempList = new List <GameObject>();

                foreach (GameObject creature in spawnedCreatures)
                {
                    if (creature != null)
                    {
                        tempList.Add(creature);
                    }
                }

                foreach (GameObject creature in tempList)
                {
                    if (creature.tag == selectedCreature.tag)
                    {
                        spawnedCreatures.Remove(creature);
                        Destroy(creature.gameObject);
                    }
                }
            }
            creature = Instantiate(selectedCreature, spawnPoint) as GameObject;
            creature.transform.parent       = null;
            movement.moveableCharacter      = creature;
            cameraController.avatarToFollow = creature;
            isPlayingCreature = true;
            spawnedCreatures.Add(creature);

            if (AvatarChanged != null)
            {
                AvatarChanged.Invoke();
            }
        }
        // Destroys the currently controlled creature and swtiches back to main character
        else if (Input.GetButtonDown("Despawn") && (isPlayingCreature == true))
        {
            Despawn(creature);
        }
    }
Example #4
0
        public void Handle(AvatarChanged e)
        {
            using (var session = _store.OpenSession())
            {
                var get = session.Load <Responses.Get>(e.UserId);

                get.ImageType = e.ImageType;
                get.ImageData = e.ImageData;

                session.SaveChanges();

                _manager.Publish(get);
            }
        }
Example #5
0
    public void Despawn(GameObject creatureToDespawn)
    {
        {
            movement.moveableCharacter      = player;
            cameraController.avatarToFollow = player;
            isPlayingCreature = false;

            if (AvatarChanged != null)
            {
                AvatarChanged.Invoke();
            }

            spawnedCreatures.Remove(creatureToDespawn);
            Destroy(creatureToDespawn);
        }
    }
Example #6
0
    private void ControlSelectedCreature()
    {
        foreach (GameObject creature in spawnedCreatures)
        {
            if (creature.tag == selectedCreature.tag)
            {
                movement.moveableCharacter      = creature;
                cameraController.avatarToFollow = creature;
                isPlayingCreature = true;

                if (AvatarChanged != null)
                {
                    AvatarChanged.Invoke();
                }
            }
        }
    }
Example #7
0
    private void Switch()
    {
        if (player == null)
        {
            player     = GameManager.Instance.spawnedPlayer;
            spawnPoint = GameObject.Find("CreatureSpawn").transform;
        }

        // Switches back to main character if the user is controlling a creature
        if (Input.GetButtonDown("Switch") && (isPlayingCreature == true))
        {
            movement.moveableCharacter      = player;
            cameraController.avatarToFollow = player;
            isPlayingCreature = false;

            if (AvatarChanged != null)
            {
                AvatarChanged.Invoke();
            }
        }
    }
        private void CustomAvatarLoaded(CustomAvatar loadedAvatar, AvatarLoadResult result)
        {
            if (result != AvatarLoadResult.Completed)
            {
                Logger.Log("Avatar " + loadedAvatar.FullPath + " failed to load");
                return;
            }

            Logger.Log("Loaded avatar " + loadedAvatar.Name + " by " + loadedAvatar.AuthorName);

            if (_currentSpawnedPlayerAvatar?.GameObject != null)
            {
                Object.Destroy(_currentSpawnedPlayerAvatar.GameObject);
            }

            _currentSpawnedPlayerAvatar = AvatarSpawner.SpawnAvatar(loadedAvatar, _playerAvatarInput);

            AvatarChanged?.Invoke(loadedAvatar);

            _avatarTailor.OnAvatarLoaded(_currentSpawnedPlayerAvatar);
            ResizePlayerAvatar();
            OnFirstPersonEnabledChanged(Plugin.Instance.FirstPersonEnabled);
        }
Example #9
0
        /// <summary>
        /// Invoked when a contact has published avatar metadata information.
        /// </summary>
        /// <param name="jid">The JID of the XMPP entity that published the tune
        /// information.</param>
        /// <param name="item">The 'item' Xml element of the pubsub publish
        /// event.</param>
        void onMetadata(Jid jid, XmlElement item)
        {
            if (item == null || item["metadata"] == null)
            {
                return;
            }
            // An empty 'metadata' element means the XMPP entity wishes to temporarily
            // disable avatar publishing.
            if (item["metadata"].IsEmpty)
            {
                // Raise the 'AvatarChanged' event with the 'Cleared' property set to true.
                AvatarChanged.Raise(this, new AvatarChangedEventArgs(jid));
                return;
            }
            var info = item["metadata"]["info"];

            if (info == null)
            {
                return;
            }
            // Parse meta data attributes.
            string hash = info.GetAttribute("id");

            if (String.IsNullOrEmpty(hash))
            {
                return;
            }
            // Request image unless we already have a cached copy.
            if (!cachedImages.ContainsKey(hash))
            {
                cachedImages.Add(hash, RequestImage(jid, hash));
            }
            Image image = cachedImages[hash];

            // Raise 'AvatarChanged' event.
            AvatarChanged.Raise(this, new AvatarChangedEventArgs(jid, hash, image));
        }
Example #10
0
 public static void OnAvatarChanged(object sender, UserPhotoChangedEventArgs e)
 {
     AvatarChanged?.Invoke(sender, e);
 }
Example #11
0
 protected virtual void OnAvatarChanged(object sender, string avatar)
 {
     AvatarChanged?.Invoke(this, avatar);
 }
Example #12
0
 public void When(AvatarChanged avatarChanged)
 {
     AvatarDigitalAssetId = avatarChanged.AvatarDigitalAssetId;
 }