Ejemplo n.º 1
0
 public static void CloneTo(IPlayerItem from, IPlayerItem to)
 {
     to.ItemID        = from.ItemID;
     to.PlayerId      = from.PlayerId;
     to.GUID          = from.GUID;
     to.Amount        = from.Amount;
     to.Exp           = from.Exp;
     to.EquipItemGuid = from.EquipItemGuid;
     to.EquipPosition = from.EquipPosition;
     //to.itemType = from.itemType;
 }
Ejemplo n.º 2
0
        public PlayerToken(IPlayerItem playerItem, IDateTimeService dateTimeService)
        {
            _dateTimeService = dateTimeService;
            //this.Id = idGenerator.Generate();
            this.MediaSource = playerItem.MediaSource;
            this.PlayRange   = playerItem.PlayRange;
            //this.Parameters = playerItem.PlayParameters;

            this.Position   = TimeSpan.Zero;
            this.RemainTime = this.PlayRange.Duration;

            this.CGItems = playerItem.CGItems;
        }
Ejemplo n.º 3
0
        public void PlayNext()
        {
            Debug.Assert(_nextItem != null);
            OnCurrentItemStopped();

            _nextItem.PlayerToken.Stopped += CurrentItem_Stopped;
            if (IsMLSource(_nextItem.MediaSource))
            {
                M_PlayNext();
            }

            _currentItem           = _nextItem;
            _nextItem              = null;
            _currentItem.StartTime = _dateTimeService.GetLocalNow();
            OnItemStarted(_currentItem);
        }
Ejemplo n.º 4
0
        private void OnCurrentItemStopped()
        {
            if (_currentItem != null)
            {
                _currentItem.PlayerToken.Stopped -= CurrentItem_Stopped;
                if (IsMLSource(_currentItem.MediaSource))
                {
                    M_OnCurrentItemStopped();
                }

                _currentItem.StopTime = _dateTimeService.GetLocalNow();
                _currentItem.PlayerToken.Dispose();
                var temp = _currentItem;
                _currentItem = null;
                OnItemStopped(temp);
            }
        }
Ejemplo n.º 5
0
        private void OnCurrentPlayItemChanged(object sender, EventArgs e)
        {
            _currentItem = _scheduler.CurrentPlayItem;
            if (_currentItem != null)
            {
                _playlist.CurrentItem = _currentItem.PlayItem;
            }
            else
            {
                _playlist.CurrentItem = null;
            }

            if (this.CurrentPlayItemChanged != null)
            {
                this.CurrentPlayItemChanged(this, new PlayerItemEventArgs(_currentItem));
            }
        }
Ejemplo n.º 6
0
        public void Load(IPlayerItem playerItem)
        {
            Debug.Assert(_nextItem == null);

            PlayerToken playToken = new PlayerToken(playerItem, _dateTimeService);

            if (IsMLSource(playerItem.MediaSource))
            {
                playToken.MPlaylist = _mplaylist;
                M_Load(playToken);
            }
            else
            {
                var adjustedRange = playerItem.MediaSource.Adjust(playToken.PlayRange);
                playToken.LoadRange = adjustedRange.Value;
            }

            _nextItem             = playerItem;
            _nextItem.LoadTime    = _dateTimeService.GetLocalNow();
            _nextItem.PlayerToken = playToken;
            OnItemLoaded(_nextItem);
        }
Ejemplo n.º 7
0
 public void AddItem(IPlayerItem newItem)
 {
     inventory.Add(newItem);
     Debug.Log(newItem + " added");
 }
Ejemplo n.º 8
0
 public PlayerItemEventArgs(IPlayerItem playItem)
 {
     this.PlayerItem = playItem;
 }
Ejemplo n.º 9
0
 public abstract void Add(IPlayerItem playerItem);