示例#1
0
        /// <summary>
        /// Lurkers the trade accepted.
        /// </summary>
        /// <param name="sender">The sender.</param>
        /// <param name="e">The e.</param>
        private async void Lurker_TradeAccepted(object sender, Patreon.Events.TradeAcceptedEvent e)
        {
            if (this._activeOffer == null)
            {
                return;
            }

            if (!string.IsNullOrEmpty(this.SettingsService.ThankYouMessage))
            {
                var tradeEvent = this._activeOffer.Event;
                await this._keyboardHelper.Whisper(tradeEvent.PlayerName, TokenHelper.ReplaceToken(this.SettingsService.ThankYouMessage, tradeEvent));
            }

            var activePlayer = this._playerService.FirstPlayer;

            if (activePlayer != null && this.SettingsService.AutoKickEnabled)
            {
                await this._keyboardHelper.Kick(activePlayer.Name);
            }

            await this.InsertEvent(this._activeOffer.Event);

            this.RemoveOffer(this._activeOffer);
            this._activeOffer  = null;
            this._removeActive = null;
        }
        /// <summary>
        /// Lurkers the trade accepted.
        /// </summary>
        /// <param name="sender">The sender.</param>
        /// <param name="e">The e.</param>
        private void Lurker_TradeAccepted(object sender, Patreon.Events.TradeAcceptedEvent e)
        {
            var offer = this.TradeOffers.Where(t => t.Status == OfferStatus.Traded).FirstOrDefault();

            if (offer != null)
            {
                this.InsertEvent(offer.Event);
                if (!string.IsNullOrEmpty(this._settingsService.ThankYouMessage))
                {
                    offer.ThankYou();
                }

                if (this._settingsService.AutoKickEnabled)
                {
                    this._keyboardHelper.Kick(offer.PlayerName);
                }

                var itemClass = ItemClassParser.Parse(offer.ItemName);
                if (itemClass != ItemClass.Map && itemClass != ItemClass.Currency)
                {
                    var alreadySold = this.CheckIfOfferIsAlreadySold(offer.Event);
                    if (!alreadySold)
                    {
                        this._lastOffers.Add(offer.Event);
                        if (this._lastOffers.Count >= 5)
                        {
                            this._lastOffers.RemoveAt(0);
                        }
                    }
                }

                this.RemoveOffer(offer);
            }
        }
示例#3
0
        /// <summary>
        /// Lurkers the trade accepted.
        /// </summary>
        /// <param name="sender">The sender.</param>
        /// <param name="e">The e.</param>
        private void Lurker_TradeAccepted(object sender, Patreon.Events.TradeAcceptedEvent e)
        {
            if (this._activeOffer == null)
            {
                return;
            }

            if (!string.IsNullOrEmpty(this.SettingsService.ThankYouMessage))
            {
                var tradeEvent = this._activeOffer.Event;
                this._keyboardHelper.Whisper(tradeEvent.PlayerName, TokenHelper.ReplaceToken(this.SettingsService.ThankYouMessage, tradeEvent));
            }

            this.InsertEvent(this._activeOffer.Event);
            this.RemoveOffer(this._activeOffer);
            this._activeOffer  = null;
            this._removeActive = null;
        }