aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRatakor <ratakor@disroot.org>2023-11-15 00:33:58 +0100
committerRatakor <ratakor@disroot.org>2023-11-15 00:33:58 +0100
commit58eeff81d25bed87f9d6ef84c70b7b1b51c45496 (patch)
treef8288e35b0bcde9e575cf0bdd17b50261199dd96
parent7af91dde680613b2627de535539a83efd81aa908 (diff)
Remove overcap_dmg and switch to concord 2.0.0
-rw-r--r--Makefile2
-rw-r--r--src/cmd_source.c1
-rw-r--r--src/main.c5
-rw-r--r--src/ocr.c3
-rw-r--r--src/raids.c41
-rw-r--r--src/roles.c84
-rw-r--r--src/stats.c56
7 files changed, 80 insertions, 112 deletions
diff --git a/Makefile b/Makefile
index 268be76..95b0d49 100644
--- a/Makefile
+++ b/Makefile
@@ -7,7 +7,7 @@ LIBRE_DIR = libre
SRC_DIR = src
DFLAGS = -O0 -g -DDALLOC
-CFLAGS ?= -O3
+CFLAGS ?= -O3 -Wno-unused-function
LDFLAGS ?= -s
all: build
diff --git a/src/cmd_source.c b/src/cmd_source.c
index 2d361a6..bb02fba 100644
--- a/src/cmd_source.c
+++ b/src/cmd_source.c
@@ -30,7 +30,6 @@ create_slash_source(struct discord *client)
discord_create_global_application_command(client, APP_ID, &cmd, NULL);
}
-
char *
load_source(void)
{
diff --git a/src/main.c b/src/main.c
index 9dcefba..60b85de 100644
--- a/src/main.c
+++ b/src/main.c
@@ -73,7 +73,8 @@ static void
sighandler(int sig)
{
UNUSED(sig);
- ccord_shutdown_async();
+ /* ccord_shutdown_async(); */
+ exit(0);
}
int
@@ -95,7 +96,7 @@ main(int argc, char *argv[])
/* client->conf.http = xcalloc(1, sizeof(*(client->conf.http))); */
/* client->conf.http->f = stderr; */
logconf_add_callback(&client->conf, &log_callback, stderr, LOG_WARN);
- discord_add_intents(client, DISCORD_GATEWAY_MESSAGE_CONTENT |
+ discord_add_intents(client, //DISCORD_GATEWAY_MESSAGE_CONTENT |
DISCORD_GATEWAY_GUILD_MEMBERS);
discord_set_prefix(client, PREFIX);
create_slash_commands(client);
diff --git a/src/ocr.c b/src/ocr.c
index 2d8feaa..87ea7ab 100644
--- a/src/ocr.c
+++ b/src/ocr.c
@@ -13,7 +13,8 @@
/* meh */
#define DIFF 110
/* #define WHITE 12000000 */
-#define WHITE 10000000
+/* #define WHITE 10000000 */
+#define WHITE 9000000
static int write_rect(gdRect *rect, gdImagePtr im);
diff --git a/src/raids.c b/src/raids.c
index cdf6f1c..86cfb78 100644
--- a/src/raids.c
+++ b/src/raids.c
@@ -8,8 +8,6 @@
#include "nolan.h"
-#define DAMAGE_CAP 300000000 /* weekly */
-
enum {
SUCCESS,
DOWNLOAD_FAILED,
@@ -27,8 +25,6 @@ static void save_to_file(Slayer slayers[], size_t nslayers);
static int raids(struct discord_attachment *attachment, const char *lang,
Slayer slayers[], u64snowflake channel_id);
static void parse_file(char *fname, Slayer slayers[], size_t *nslayers);
-static void overcap_msg(struct discord *client, u64snowflake channel_id,
- Slayer slayers[]);
static const char *delims[] = {
"+ Raid options",
@@ -366,30 +362,6 @@ load_files(Slayer slayers[])
}
void
-overcap_msg(struct discord *client, u64snowflake channel_id, Slayer slayers[])
-{
- size_t nslayers, i;
-
- nslayers = load_files(slayers);
- for (i = 0; i < nslayers; i++) {
- if (slayers[i].damage < DAMAGE_CAP) {
- free(slayers[i].name);
- continue;
- }
-
- /* FIXME: ' flag */
- discord_send_message(client, channel_id,
- "%s has overcapped the limit by %'"PRIu32
- " damage, he is now at %'"PRIu32" damage.",
- slayers[i].name,
- slayers[i].damage - DAMAGE_CAP,
- slayers[i].damage);
-
- free(slayers[i].name);
- }
-}
-
-void
on_raids(struct discord *client, const struct discord_message *event)
{
Slayer *slayers;
@@ -442,15 +414,9 @@ run_again:
}
log_error("parsing failed with lang:%s from %s",
lang, event->author->username);
- /* TODO: just me being lazy */
- if (strcmp(lang, "jpn") == 0) {
- discord_send_message(client, event->channel_id,
- "Error: Sorry japanese doesn't work well");
- } else {
- discord_send_message(client, event->channel_id,
- "Error: Failed to parse image <@%"PRIu64">.\n"
- "Fix me <@%"PRIu64">", event->author->id, ADMIN);
- }
+ discord_send_message(client, event->channel_id,
+ "Error: Failed to parse image\n"
+ "Possible cause are luminosity, language (english works better) or dpi.");
break;
}
time_run = 0;
@@ -458,6 +424,5 @@ run_again:
}
log_info("%s %d", __func__, event->attachments->size);
- overcap_msg(client, event->channel_id, slayers);
free(slayers);
}
diff --git a/src/roles.c b/src/roles.c
index ff4be18..7cb7978 100644
--- a/src/roles.c
+++ b/src/roles.c
@@ -22,37 +22,37 @@ level(struct discord *client, u64snowflake userid, Player *player)
{
if (player->level == 250) {
discord_add_guild_member_role(client, ROLE_GUILD_ID, userid,
- 999698224665341982, NULL, NULL);
+ 999698224665341982, NULL);
} else if (player->level >= 225) {
discord_add_guild_member_role(client, ROLE_GUILD_ID, userid,
- 999698288104190002, NULL, NULL);
+ 999698288104190002, NULL);
} else if (player->level >= 200) {
discord_add_guild_member_role(client, ROLE_GUILD_ID, userid,
- 999698328856051792, NULL, NULL);
+ 999698328856051792, NULL);
} else if (player->level >= 175) {
discord_add_guild_member_role(client, ROLE_GUILD_ID, userid,
- 999698552768970875, NULL, NULL);
+ 999698552768970875, NULL);
} else if (player->level >= 150) {
discord_add_guild_member_role(client, ROLE_GUILD_ID, userid,
- 999700504051453973, NULL, NULL);
+ 999700504051453973, NULL);
} else if (player->level >= 125) {
discord_add_guild_member_role(client, ROLE_GUILD_ID, userid,
- 999700550209785866, NULL, NULL);
+ 999700550209785866, NULL);
} else if (player->level >= 100) {
discord_add_guild_member_role(client, ROLE_GUILD_ID, userid,
- 999700639313567744, NULL, NULL);
+ 999700639313567744, NULL);
} else if (player->level >= 75) {
discord_add_guild_member_role(client, ROLE_GUILD_ID, userid,
- 999700691310366760, NULL, NULL);
+ 999700691310366760, NULL);
} else if (player->level >= 50) {
discord_add_guild_member_role(client, ROLE_GUILD_ID, userid,
- 999700747350462505, NULL, NULL);
+ 999700747350462505, NULL);
} else if (player->level >= 25) {
discord_add_guild_member_role(client, ROLE_GUILD_ID, userid,
- 999700794230177842, NULL, NULL);
+ 999700794230177842, NULL);
} else if (player->level >= 1) {
discord_add_guild_member_role(client, ROLE_GUILD_ID, userid,
- 999700841281896508, NULL, NULL);
+ 999700841281896508, NULL);
}
}
@@ -63,13 +63,13 @@ playtime(struct discord *client, u64snowflake userid, Player *player)
if (playtime >= 150) {
discord_add_guild_member_role(client, ROLE_GUILD_ID, userid,
- 1114895554254753873, NULL, NULL);
+ 1114895554254753873, NULL);
} else if (playtime >= 100) {
discord_add_guild_member_role(client, ROLE_GUILD_ID, userid,
- 1114909422947410013, NULL, NULL);
+ 1114909422947410013, NULL);
} else if (playtime >= 50) {
discord_add_guild_member_role(client, ROLE_GUILD_ID, userid,
- 1114909817463656460, NULL, NULL);
+ 1114909817463656460, NULL);
}
}
@@ -78,13 +78,13 @@ monsters(struct discord *client, u64snowflake userid, Player *player)
{
if (player->monsters >= 500000) {
discord_add_guild_member_role(client, ROLE_GUILD_ID, userid,
- 1114908471985438832, NULL, NULL);
+ 1114908471985438832, NULL);
} else if (player->monsters >= 250000) {
discord_add_guild_member_role(client, ROLE_GUILD_ID, userid,
- 1000114023045537923, NULL, NULL);
+ 1000114023045537923, NULL);
} else if (player->monsters >= 100000) {
discord_add_guild_member_role(client, ROLE_GUILD_ID, userid,
- 1114908461004759050, NULL, NULL);
+ 1114908461004759050, NULL);
}
}
@@ -93,13 +93,13 @@ bosses(struct discord *client, u64snowflake userid, Player *player)
{
if (player->bosses >= 500000) {
discord_add_guild_member_role(client, ROLE_GUILD_ID, userid,
- 1000113783043268719, NULL, NULL);
+ 1000113783043268719, NULL);
} else if (player->bosses >= 250000) {
discord_add_guild_member_role(client, ROLE_GUILD_ID, userid,
- 1000113738046787654, NULL, NULL);
+ 1000113738046787654, NULL);
} else if (player->bosses >= 100000) {
discord_add_guild_member_role(client, ROLE_GUILD_ID, userid,
- 1114907696878071832, NULL, NULL);
+ 1114907696878071832, NULL);
}
}
@@ -108,10 +108,10 @@ _players(struct discord *client, u64snowflake userid, Player *player)
{
if (player->players >= 50000) {
discord_add_guild_member_role(client, ROLE_GUILD_ID, userid,
- 999720879502151901, NULL, NULL);
+ 999720879502151901, NULL);
} else if (player->players >= 10000) {
discord_add_guild_member_role(client, ROLE_GUILD_ID, userid,
- 999720827656347668, NULL, NULL);
+ 999720827656347668, NULL);
}
}
@@ -120,13 +120,13 @@ quests(struct discord *client, u64snowflake userid, Player *player)
{
if (player->quests >= 5000) {
discord_add_guild_member_role(client, ROLE_GUILD_ID, userid,
- 1029862081383628882, NULL, NULL);
+ 1029862081383628882, NULL);
} else if (player->quests >= 3000) {
discord_add_guild_member_role(client, ROLE_GUILD_ID, userid,
- 1029862056335245442, NULL, NULL);
+ 1029862056335245442, NULL);
} else if (player->quests >= 1000) {
discord_add_guild_member_role(client, ROLE_GUILD_ID, userid,
- 1029861894904877087, NULL, NULL);
+ 1029861894904877087, NULL);
}
}
@@ -135,13 +135,13 @@ dungeons(struct discord *client, u64snowflake userid, Player *player)
{
if (player->dungeons >= 25000) {
discord_add_guild_member_role(client, ROLE_GUILD_ID, userid,
- 1114908526050017330, NULL, NULL);
+ 1114908526050017330, NULL);
} else if (player->dungeons >= 10000) {
discord_add_guild_member_role(client, ROLE_GUILD_ID, userid,
- 999720735184527500, NULL, NULL);
+ 999720735184527500, NULL);
} else if (player->dungeons >= 2000) {
discord_add_guild_member_role(client, ROLE_GUILD_ID, userid,
- 999720622806532206, NULL, NULL);
+ 999720622806532206, NULL);
}
}
@@ -150,7 +150,7 @@ coliseum(struct discord *client, u64snowflake userid, Player *player)
{
if (player->coliseum >= 100) {
discord_add_guild_member_role(client, ROLE_GUILD_ID, userid,
- 1000112930043469836, NULL, NULL);
+ 1000112930043469836, NULL);
}
}
@@ -159,13 +159,13 @@ items(struct discord *client, u64snowflake userid, Player *player)
{
if (player->items >= 3000) {
discord_add_guild_member_role(client, ROLE_GUILD_ID, userid,
- 1029862435391295580, NULL, NULL);
+ 1029862435391295580, NULL);
} else if (player->items >= 2000) {
discord_add_guild_member_role(client, ROLE_GUILD_ID, userid,
- 1029862373080698974, NULL, NULL);
+ 1029862373080698974, NULL);
} else if (player->items >= 1000) {
discord_add_guild_member_role(client, ROLE_GUILD_ID, userid,
- 1029862100346089522, NULL, NULL);
+ 1029862100346089522, NULL);
}
}
@@ -174,13 +174,13 @@ fish(struct discord *client, u64snowflake userid, Player *player)
{
if (player->fish >= 5000) {
discord_add_guild_member_role(client, ROLE_GUILD_ID, userid,
- 1114896335456436335, NULL, NULL);
+ 1114896335456436335, NULL);
} else if (player->fish >= 2500) {
discord_add_guild_member_role(client, ROLE_GUILD_ID, userid,
- 1114897128058269696, NULL, NULL);
+ 1114897128058269696, NULL);
} else if (player->fish >= 1000) {
discord_add_guild_member_role(client, ROLE_GUILD_ID, userid,
- 1114896253155819580, NULL, NULL);
+ 1114896253155819580, NULL);
}
}
@@ -189,16 +189,16 @@ endless(struct discord *client, u64snowflake userid, Player *player)
{
if (player->endless >= 500) {
discord_add_guild_member_role(client, ROLE_GUILD_ID, userid,
- 1000116691390451736, NULL, NULL);
+ 1000116691390451736, NULL);
} else if (player->endless >= 400) {
discord_add_guild_member_role(client, ROLE_GUILD_ID, userid,
- 1000116521823121509, NULL, NULL);
+ 1000116521823121509, NULL);
} else if (player->endless >= 300) {
discord_add_guild_member_role(client, ROLE_GUILD_ID, userid,
- 1000116301269844128, NULL, NULL);
+ 1000116301269844128, NULL);
} else if (player->endless >= 200) {
discord_add_guild_member_role(client, ROLE_GUILD_ID, userid,
- 1000115997652570114, NULL, NULL);
+ 1000115997652570114, NULL);
}
}
@@ -207,13 +207,13 @@ codex(struct discord *client, u64snowflake userid, Player *player)
{
if (player->codex >= 400) {
discord_add_guild_member_role(client, ROLE_GUILD_ID, userid,
- 1000114579604508753, NULL, NULL);
+ 1000114579604508753, NULL);
} else if (player->codex >= 300) {
discord_add_guild_member_role(client, ROLE_GUILD_ID, userid,
- 1000114528375279697, NULL, NULL);
+ 1000114528375279697, NULL);
} else if (player->codex >= 200) {
discord_add_guild_member_role(client, ROLE_GUILD_ID, userid,
- 1000114428747972659, NULL, NULL);
+ 1000114428747972659, NULL);
}
}
diff --git a/src/stats.c b/src/stats.c
index d18542c..6737e25 100644
--- a/src/stats.c
+++ b/src/stats.c
@@ -286,7 +286,8 @@ update_player(char *buf, size_t siz, Player *player, Player *new_player)
continue;
/* don't update if stat decreases except for special cases */
if (diff < 0 && i != ASCENSION && i != GLOBAL_RANK &&
- i != REGIONAL_RANK && i != COMPETITIVE_RANK)
+ i != REGIONAL_RANK && i != COMPETITIVE_RANK &&
+ i != REPUTATION)
continue;
if (i == PLAYTIME) {
@@ -478,32 +479,33 @@ void
on_stats_interaction(struct discord *client,
const struct discord_interaction *ev)
{
- char buf[MAX_MESSAGE_LEN] = "", *url, *endurl;
- json_char *attachment;
+ /* char buf[MAX_MESSAGE_LEN] = "", *url, *endurl; */
+ /* json_char *attachment; */
log_info("%s", __func__);
- attachment = xstrdup(ev->data->resolved->attachments);
- url = strstr(attachment, "\"url\":");
- if (!url) {
- free(attachment);
- return;
- }
- url += STRLEN("\"url\":\"");
- endurl = strchr(url, '"');
- if (!endurl) {
- free(attachment);
- return;
- }
- *endurl = '\0';
-
- stats(buf,
- sizeof(buf),
- url,
- ev->member->user->username,
- ev->member->user->id,
- ev->guild_id,
- client);
- free(attachment);
-
- discord_send_interaction_message(client, ev->id, ev->token, "%s", buf);
+ /* attachment = xstrdup(ev->data->resolved->attachments); */
+ /* url = strstr(attachment, "\"url\":"); */
+ /* if (!url) { */
+ /* free(attachment); */
+ /* return; */
+ /* } */
+ /* url += STRLEN("\"url\":\""); */
+ /* endurl = strchr(url, '"'); */
+ /* if (!endurl) { */
+ /* free(attachment); */
+ /* return; */
+ /* } */
+ /* *endurl = '\0'; */
+
+ /* stats(buf, */
+ /* sizeof(buf), */
+ /* url, */
+ /* ev->member->user->username, */
+ /* ev->member->user->id, */
+ /* ev->guild_id, */
+ /* client); */
+ /* free(attachment); */
+
+ /* discord_send_interaction_message(client, ev->id, ev->token, "%s", buf); */
+ discord_send_interaction_message(client, ev->id, ev->token, "This command is momentarily unavailable.");
}