public PointsModule(PointsService pointsService, ReactionSettings reactionSettings, GraphPaintingService graphPaintingService, PointsGraphPaintingStrategy graphPaintingStrategy, UsersService usersService) { PointsService = pointsService; ReactionSettings = reactionSettings; GraphPaintingService = graphPaintingService; GraphPaintingStrategy = graphPaintingStrategy; UsersService = usersService; }
public async Task GetGraphAsync() { await using var _ = await DisposableReaction.CreateAsync(Context.Message, ReactionSettings.Loading, Context.Client.CurrentUser); var results = new Dictionary <string, IReadOnlyList <GraphItem> > { { "Body", await PointsService.GetUsersTotalPointsAsync() } }; using var file = new TemporaryFile("png"); using var graph = await GraphPaintingService.DrawAsync(Context.Guild, GraphPaintingStrategy, results); graph.Write(file.Path, ImageMagick.MagickFormat.Png); await ReplyFileAsync(file.Path); }