Ejemplo n.º 1
0
        private void CreatedRemotePlayer(IRemotePlayer remotePlayer, object args)
        {
            PlayerID pid = _infra.ResolvePlayerID(args);

            NetworkArgs nargs = null;

            if (args is object[] argList)
            {
                if (argList.Length >= 2)
                {
                    if (argList[1] is NetworkArgs result)
                    {
                        nargs = result;
                    }
                }
            }

            IAvatar avatar = GetOrCreateAvatar(pid, nargs);

            avatar.SetAvatarController(remotePlayer);

            remotePlayer.PlayerID = pid;
            remotePlayer.OnDestroyingRemotePlayer += HandleRemotePlayerDestroying;

            OnCreatedRemotePlayer?.Invoke(avatar, remotePlayer);
        }
Ejemplo n.º 2
0
        private void CreatedRemotePlayer(IRemotePlayer remotePlayer, object args)
        {
            PlayerID pid    = _infra.ResolvePlayerID(args);
            IAvatar  avatar = GetOrCreateAvatar(pid);

            avatar.SetAvatarController(remotePlayer);

            remotePlayer.PlayerID = pid;
            remotePlayer.OnDestroyingRemotePlayer += HandleRemotePlayerDestroying;

            OnCreatedRemotePlayer?.Invoke(avatar, remotePlayer);
        }