protected override async UniTask OnExecuteAsync() { var user = (UnturnedUser)Context.Actor; var cosmetics = _playerCosmeticsStore.GetCosmetics(user.SteamId.m_SteamID); if (cosmetics == null) { throw new UserFriendlyException(_stringLocalizer["RemoveCosmetics:Fail"]); } _playerCosmeticsStore.PlayersCosmetics.Remove(cosmetics); if (Context.Parameters.Any(x => x == "--force")) { await UniTask.SwitchToMainThread(); user.Player.Player.sendRelayToServer(Provider.ip, Provider.port, Provider.serverPassword, false); } else { await user.PrintMessageAsync(_stringLocalizer["RemoveCosmetics:Success"], Color.White, true, string.Empty); } }
public Task HandleEventAsync(object sender, IUserConnectingEvent @event) { var id = ulong.Parse(@event.User.Id); var cosmetics = _playerCosmeticsStore.GetCosmetics(id); if (cosmetics == null) { return(Task.CompletedTask); } var pending = Provider.pending.FirstOrDefault(x => x.playerID.steamID.m_SteamID == id); cosmetics.ApplyCosmetics(pending); return(Task.CompletedTask); }