Commit Graph

245 Commits

Author SHA1 Message Date
f3cc9a2d75 Add emojis to urban dictionary 2022-12-28 05:41:23 +01:00
8f5c29aa95 Convert message response to immutable record 2022-12-28 05:41:23 +01:00
91261f04e5 Make dice roll support slash commands too 2022-12-28 05:41:23 +01:00
bc0463dd38 Add a MessageResponse class for mixed-type content 2022-12-28 05:41:23 +01:00
161c91b45d Rename method 2022-12-28 05:41:23 +01:00
d09c59996b Cache love calculator results in RAM 2022-12-28 05:41:23 +01:00
1c82d2b53b Make love calculator also support slash commands 2022-12-28 05:41:23 +01:00
174b78704f Optimize imports 2022-12-28 05:41:23 +01:00
ba64c02049 Increase randomness by updating the random's seed every minute 2022-12-28 05:41:23 +01:00
9e1888611a Make random statuses update automatically 2022-12-28 05:41:23 +01:00
b1b62bab9f Fix invite command being categorized as fun 2022-12-28 05:41:23 +01:00
de34caa513 Improve help command title 2022-12-28 05:41:23 +01:00
215e597a4d Make permissions bold instead of code-wrapped 2022-12-28 05:41:23 +01:00
34c100acde Fix nothing being rolles if no arg was specified 2022-12-28 05:41:22 +01:00
496304c2c3 Make help command use descriptions and usages 2022-12-28 05:41:22 +01:00
e08fefbda3 Fix spacing 2022-12-28 05:41:22 +01:00
6c4d362ca4 Improve default responses 2022-12-28 05:41:22 +01:00
e2c84f62c3 Make command category not null 2022-12-28 05:41:22 +01:00
b20fb73371 Implement alias command 2022-12-28 05:41:22 +01:00
61745c36d0 Implement alias command 2022-12-28 05:41:22 +01:00
480b8b5eda Add help command and command categories 2022-12-28 05:41:22 +01:00
f9fe12a248 Remove deprecated and unused private method 2022-12-28 05:41:22 +01:00
28d7ff18ba Throw exception in case of serialization issue 2022-12-28 05:41:22 +01:00
1644a4b07d Make serialization util class 2022-12-28 05:41:22 +01:00
68dceaff13 Use enum instead of boolean for page switching
This is useless but looks better
2022-12-28 05:41:22 +01:00
7dcdf9dbde Remove duplication 2022-12-28 05:41:22 +01:00
c4d81fb0e4 Add javadoc comment 2022-12-28 05:41:22 +01:00
24a55e14fd Merge two classes 2022-12-28 05:41:22 +01:00
cce57b8108 Optimize imports 2022-12-28 05:41:22 +01:00
fc846fa901 Remove duplicated method 2022-12-28 05:41:22 +01:00
4476dd2f7b Fix small emoji translation issue 2022-12-28 05:41:22 +01:00
2d7cadea02 Optimize imports 2022-12-28 05:41:22 +01:00
b4c80fe56a Make urban command support slash too 2022-12-28 05:41:22 +01:00
60ee5f2ae2 Allow sender to delete their own urban command results 2022-12-28 05:41:22 +01:00
8ca70dac78 Fix urban dictionary term not getting parsed correctly for url 2022-12-28 05:41:22 +01:00
4ef42ffa9e Make urban command support multiple entries 2022-12-28 05:41:22 +01:00
0f54211ecd Improve urban dictionary parsing 2022-12-28 05:41:22 +01:00
d5664eb646 Improve urban dictionary parsing 2022-12-28 05:41:22 +01:00
1421d52598 Keep newlines in urban dictionary parser 2022-12-28 05:41:22 +01:00
28c0f1d750 Implement urban dictionary lookup command 2022-12-28 05:41:22 +01:00
3259a49ace Change a magic ball response 2022-12-28 05:41:22 +01:00
4d888d68b9 Make it send a message instead of responding to 8ball 2022-12-28 05:41:22 +01:00
7959044335 Bump version to 0.5.6 2022-12-28 05:41:22 +01:00
fb3c08fc41 Add basic love calculator message command 2022-12-28 05:41:22 +01:00
c9ff329cbb Make magicball support slash commands too 2022-12-28 05:41:22 +01:00
8f4f341aab Improve magic ball answers 2022-12-28 05:41:22 +01:00
a030821197 Implement magic ball message command 2022-12-28 05:41:22 +01:00
b033763704 Improve diceroll looks, implement limits to avoid abuse 2022-12-28 05:41:21 +01:00
982902fc6d Ignore bots interacting with hideko 2022-12-28 05:41:16 +01:00
00441f089f Remove unneeded todo 2022-12-28 05:41:11 +01:00
1f6f23e917 Make clear command also delete the sender's message 2022-12-28 05:41:06 +01:00
1a8409994c Implement basic functional diceroll command 2022-12-28 05:40:56 +01:00
b0a1381589 Fix command label being passed as arg in case of no args 2022-12-28 05:40:51 +01:00
9504921f27 Fallback to 0 instead of 1 2022-12-28 05:40:45 +01:00
c9528848bc Fix console error when int parsing fails in clear message 2022-12-28 05:40:39 +01:00
2d1f6699ba Re-register accidentally removed invite command 2022-12-28 05:40:34 +01:00
32ea099690 Fix messages with newlines not being handled for commands 2022-12-28 05:40:17 +01:00
1410e4e8af Make say support both slash and message commands 2022-12-28 05:40:11 +01:00
c486630adb Make avatar support both slash and message commands 2022-12-28 05:37:26 +01:00
50ccda214f Finish command completion listener implementation
All checks were successful
continuous-integration/drone/push Build is passing
Very similarly to how the slash command interface works, now a slash command auto-completion interface also exists, with its respective listener.
2022-11-23 00:01:05 +01:00
ff084cf8e8 Rename datasource package
All checks were successful
continuous-integration/drone/push Build is passing
2022-11-22 23:44:34 +01:00
0016b5de30 Force using config enum class instead of direct entry path
All checks were successful
continuous-integration/drone/push Build is passing
2022-11-22 23:42:21 +01:00
6480795368 Discontinue config.yml file in favor of class mapping
All checks were successful
continuous-integration/drone/push Build is passing
The configuration entries are now mapped in an enum that transfers very well to SnakeYaml's YAML parsing. This is better because we no longer run the risk of entries getting mistyped in classes, or renamed without replacing them everywhere...
2022-11-22 23:40:44 +01:00
40aac28e34 Make bot version consistent with Maven
All checks were successful
continuous-integration/drone/push Build is passing
A new internal properties file has been added. Maven will scan this file and replace any value it finds.
2022-11-22 23:28:59 +01:00
70578d2ffc Bump version to 0.4.0
All checks were successful
continuous-integration/drone/push Build is passing
The new thread update deserves a decent version bump
2022-11-22 22:00:59 +01:00
5f73c4069b Make bot commands run in separate threads by default
All checks were successful
continuous-integration/drone/push Build is passing
2022-11-22 21:59:58 +01:00
b681acdbca Make bot announce its prefix
All checks were successful
continuous-integration/drone/push Build is passing
2022-11-22 21:48:13 +01:00
19100758cb Bump version
All checks were successful
continuous-integration/drone/push Build is passing
2022-11-22 21:42:46 +01:00
b2a62d754e Make invite support both slash and message commands
All checks were successful
continuous-integration/drone/push Build is passing
2022-11-22 21:42:35 +01:00
c186c9c576 Improve bot info page
All checks were successful
continuous-integration/drone/push Build is passing
2022-11-22 21:32:20 +01:00
c7208eef84 Make botinfo support both slash and message commands
All checks were successful
continuous-integration/drone/push Build is passing
2022-11-22 21:02:48 +01:00
89fc2aa0a6 Bump version to 0.3.1
All checks were successful
continuous-integration/drone/push Build is passing
The bot is now in a semi-stable state, although still very lacking in terms of features.
2022-11-22 20:51:23 +01:00
96ea29b103 Reduce bot name to just Hideko
All checks were successful
continuous-integration/drone/push Build is passing
2022-11-22 20:50:53 +01:00
4015aecc99 Make coinflip support both slash and message commands
All checks were successful
continuous-integration/drone/push Build is passing
2022-11-22 20:50:37 +01:00
ff80e754ff Add comment 2022-11-22 20:42:47 +01:00
3f1835e059 Move clearchat command to base class
All checks were successful
continuous-integration/drone/push Build is passing
The "clear" command now supports both slash commands and message commands, having identical behavior in both situations.
2022-11-22 20:39:55 +01:00
ecdb0c73e8 Add tiny comment
All checks were successful
continuous-integration/drone/push Build is passing
2022-11-22 17:27:56 +01:00
655840dc82 Implement basic permission check for message commands
All checks were successful
continuous-integration/drone/push Build is passing
2022-11-22 17:08:31 +01:00
11e4a07698 Refactor objects package
All checks were successful
continuous-integration/drone/push Build is passing
2022-11-22 16:41:08 +01:00
a7ac446b0b Remove the need to register slash commands separately
All checks were successful
continuous-integration/drone/push Build is passing
We modified the slash command interface to allow getting command data, and created a generic implementation of it that automatically retrieves data from the command data. The interface should not be used now. Instead, extending the implementation is preferred as it provides a semi-working command already.
2022-11-22 16:40:02 +01:00
ee263a1297 Bump version to 0.3.0
All checks were successful
continuous-integration/drone/push Build is passing
We finally reached a good status for the bot's internal structure, and can actually focus on features now. We also dropped the -slash tag because it's not restricted to slash commands anymore.
2022-11-22 16:20:28 +01:00
a9790b3525 Complete message command parser and listener
All checks were successful
continuous-integration/drone/push Build is passing
The message command listener is now completed and the bot now also supports message-based commands with multiple aliases.
2022-11-22 16:19:08 +01:00
501b1bc71c Bump version
All checks were successful
continuous-integration/drone/push Build is passing
Up to 0.2.8 because we are close to 0.3.0 since we made slash commands interfaces and a better command listener. However, we're still missing interface for command auto-completion and we should probably also register commands on discord's api from our interface instead of storing them again in a separate class.
2022-11-22 14:55:47 +01:00
244e8ace76 Remove redundant API command fetcher
All checks were successful
continuous-integration/drone/push Build is passing
We have our own command listener now, so we don't need to rely on Discord's slow API.
2022-11-22 14:53:46 +01:00
526880e1f1 Start implementing message-base commands
All checks were successful
continuous-integration/drone/push Build is passing
Slash commands can't be used for everything, so we need something to fall back on.
2022-11-22 14:40:44 +01:00
882c695484 Make slash commands interface and load them dynamically
All checks were successful
continuous-integration/drone/push Build is passing
Slash commands are now loaded dynamically by implementing a SlashCommand interface and storing them in a loaded commands map.
2022-11-22 14:32:22 +01:00
7ae4790d5c Add bot owner info to botinfo command
All checks were successful
continuous-integration/drone/push Build is passing
2022-11-22 00:45:58 +01:00
51de18206e Refactor clearchat class 2022-11-22 00:35:10 +01:00
d3db53a451 Cleanup imports 2022-11-22 00:34:37 +01:00
656dff4b26 Refactor packages
All checks were successful
continuous-integration/drone/push Build is passing
2022-11-22 00:31:52 +01:00
8faa9c4677 Refactor datasource classes
All checks were successful
continuous-integration/drone/push Build is passing
2022-11-22 00:28:33 +01:00
f9e1578899 Fix heartbeat error not always being logged
All checks were successful
continuous-integration/drone/push Build is passing
2022-11-22 00:12:24 +01:00
72115cbec2 Bump version
All checks were successful
continuous-integration/drone/push Build is passing
2022-11-22 00:08:36 +01:00
843ee43275 Finish implementing configuration file
All checks were successful
continuous-integration/drone/push Build is passing
Configuration file is now fully functional.
Startup arguments for bot token and heartbeat key have now been removed.
2022-11-22 00:04:34 +01:00
b6bf366822 Allow reading values from config
All checks were successful
continuous-integration/drone/push Build is passing
2022-11-21 23:36:42 +01:00
c650caa090 Finish configuration init method
All checks were successful
continuous-integration/drone/push Build is passing
This method runs every time the bot starts, and ensures that all values are always present in the config file.
2022-11-21 23:28:33 +01:00
f74ae43673 Refactor Config class
All checks were successful
continuous-integration/drone/push Build is passing
2022-11-21 20:20:11 +01:00
e396ce6417 Start implementing yaml loading
Some checks failed
continuous-integration/drone/push Build is failing
2022-11-21 20:20:03 +01:00
66d27fe1fe Start implementing config file 2022-11-21 20:04:28 +01:00
d9d0ce3236 Bump version
All checks were successful
continuous-integration/drone/push Build is passing
2022-11-21 19:55:04 +01:00