Esempio n. 1
0
        public override string Activate(int itemPos, User user, User target, string channel)
        {
            if (!_eventDispatcher.OnKick(target, user, channel))
            {
                return(string.Empty);
            }

            _slack.KickUser(target.Id, channel).Wait();

            return(base.Activate(itemPos, user, target, channel));
        }
Esempio n. 2
0
        public override string Target(int itemPos, User user, User target, string channel)
        {
            base.Use(itemPos, user, channel);

            if (!_eventDispatcher.OnKick(target, user, channel))
            {
                return(string.Empty);
            }

            _slack.KickUser(target.Id, channel).Wait();

            _slack.BroadcastMessage(string.Format(DougMessages.UsedItemOnTarget, _userService.Mention(user), Name, _userService.Mention(target)), channel);

            return(string.Empty);
        }
Esempio n. 3
0
        public async Task <bool> HandleDeath(User user, string channel)
        {
            if (!_eventDispatcher.OnDeath(user))
            {
                return(false);
            }

            _statsRepository.KillUser(user.Id);
            _effectRepository.AddEffect(user, MortuaryGrace.EffectId, 15);

            await _slack.BroadcastMessage(string.Format(DougMessages.UserDied, Mention(user)), channel);

            await _slack.KickUser(user.Id, channel);

            return(true);
        }
Esempio n. 4
0
 public override bool OnKick(User kicker, string channel)
 {
     _slack.KickUser(kicker.Id, channel).Wait();
     return(false);
 }