Commit Graph
100 Commits
Author SHA1 Message Date
P0nk 7d42870abd Fix sql script not being runnable on newer versions of MySQL 2024-05-09 21:26:09 +02:00
P0nk c7b9e0eee3 Major rewrite of README 2024-05-09 21:11:53 +02:00
P0nk c5089881b3 Tidy pom
mvn tidy:pom
2024-05-09 14:24:03 +02:00
P0nk 9c1406f75d Update pull request template 2024-05-09 12:33:50 +02:00
P0nk 92226483be Merge branch 'refs/heads/master' into feat/project-update 2024-05-09 12:30:14 +02:00
P0nk f61fee829a Upgrade Java version and dependencies 2024-05-09 11:45:16 +02:00
P0nk 851b57e8ef Fix able to gain infinite slots with clean slate scroll
And remove a GM config option.
Thanks Crabo for the suggested solution.
2024-02-05 08:34:36 +01:00
P0nk 0aee9d7c3f Fix unable to create playernpc
The initialization of the running world counters depended on worlds already having been initialized, so I made that dependency more explicit.
2023-09-19 12:56:51 +02:00
P0nk a49c1703ae Remove developer player npc 2023-09-18 23:26:37 +02:00
P0nk f4062e5ebb Upgrade dependencies 2023-03-02 18:31:21 +01:00
P0nk 10945927c1 Fix writeString not fully respecting charset
The string would be cut short for charsets
with characters more than 1 byte.
2023-03-02 18:11:41 +01:00
P0nk b30e03ffb3 Fix portal in Zenumist society not working for GM chr 2023-02-17 00:42:33 +01:00
P0nk 82157c7bd1 Flatten ChangeMapHandler 2023-02-16 23:46:13 +01:00
P0nk b1ef94ef60 Fix handbook file encoding
All handbook files are now UTF-8
2023-02-04 19:49:54 +01:00
P0nk f89392b476 Refactor IdCommand 2023-02-04 19:46:09 +01:00
P0nk 404c00c2bf Merge branch 'master' into feat/note-dao 2022-12-27 15:09:38 +01:00
P0nk 771b69d151 Merge branch 'master' into feat/note-dao 2022-12-27 14:21:43 +01:00
P0nk 14d80dc2f3 Fix saving "Illegal program claim" report
No chatlog is provided in the packet for this type
2022-12-27 14:08:20 +01:00
P0nk cb38bcd270 Fix wrong timestamp format when saving report 2022-12-27 14:08:20 +01:00
P0nk 37a9a4121f Show confirmation after note is sent 2022-12-27 12:31:47 +01:00
P0nk 4731c0c60d Add tests for NoteService 2022-12-27 12:18:58 +01:00
P0nk 65111ae209 Create packet class for PacketCreator::showNotes 2022-12-27 12:18:36 +01:00
P0nk 2a460de911 Disable logging in tests 2022-12-27 12:05:51 +01:00
P0nk cee82a08ba Remove ItemInformationProvider field in Character
This field prevented creation of Character mock in tests
2022-12-27 11:59:14 +01:00
P0nk 387437cada Workaround for Guild dependence on NoteDao 2022-12-27 11:05:00 +01:00
P0nk af14da987e Replace FredrickProcessor dependence on NoteDao 2022-12-27 11:04:11 +01:00
P0nk 389b3ad2a4 Add NoteService to handle note operations
NoteService should be the only class with access to NoteDao;
nowhere else should NoteDao be accessed directly.

Channel dependencies are static in PacketProcessor, for now.
Ideally they would be injected in the constructor,
but since the constructor is private and I don't want to open
up that can of worms, I'll leave it like this.
At the very least, now we have a way of injecting services into
the handlers. This will make further restructuring way easier.
2022-12-27 10:34:55 +01:00
P0nk 5f1f5b7dcd Fix saving note 2022-12-27 10:24:47 +01:00
P0nk 7e3be4c45d Update README - explain hide 2022-12-26 18:09:09 +01:00
P0nk c82881e6f2 Get rid of Character#sendNote, refactor usages of it 2022-12-26 18:09:09 +01:00
P0nk 6be1fabc55 Send wedding invitation note directly via dao 2022-12-26 18:07:41 +01:00
P0nk 4d480660b5 Rework sending notes to chr, get rid of the first method
Sending notes should not be the handled by Character
2022-12-26 18:07:41 +01:00
P0nk 1f4ce98998 Show notes using NoteDao 2022-12-26 18:07:41 +01:00
P0nk 605f2e212e Add NoteDao, used by NoteActionHandler to delete note when read 2022-12-26 18:07:41 +01:00
P0nk 188eb74a70 Add Note model object 2022-12-26 18:07:41 +01:00
P0nk 2d7d113458 Initial jdbi setup 2022-12-26 18:07:41 +01:00
P0nk f267b1fc0b Fix error summoning master guardians on CWKPQ last stage 2022-10-16 12:30:01 +02:00
P0nk 4004b36bfa Tag the merge commit instead of last commit in the PR
The merge commit is more suitable since it provides some context
and groups up all the commits.
2022-10-16 11:53:29 +02:00
P0nk 584fccec92 Activate bump-version action 2022-10-16 10:04:35 +02:00
P0nk 41cf8b4485 Update README - add "Working with GitHub", "Versioning" 2022-10-16 10:02:03 +02:00
P0nk e12d853499 Update build workflow - new name and updated dependencies 2022-10-16 08:48:32 +02:00
P0nk 5c7fcdae06 Add action to automatically tag commits
Using this action: https://github.com/marketplace/actions/github-tag-bump
The idea is that the repo will be versioned in SemVer format, such as "v0.5.3".
When a PR is merged, a new version will automatically be added.
The new version is generated based on the latest tag, and the part that is bumped
is dictated by the merge commit message, either #major, #minor (default) or #patch.

This way I (the repo owner) has control over versioning, and other contributors
don't have to bother with anything.
2022-10-16 08:34:45 +02:00
P0nk 1a28fc98ac Commit to "tameness" name over "closeness" for pets, fix scripts 2022-09-15 17:12:21 +02:00
P0nk 650b1ff89b Fix mob summoning mobskill not working 2022-09-14 07:27:48 +02:00
P0nk d31f4806fc Fix mob using attack with no diseaseSkill causing errors 2022-09-12 20:31:38 +02:00
P0nk df5159e34c MobSkillFactory throws exception instead of returning null 2022-09-07 19:25:30 +02:00
P0nk 319d65a0c3 Add tests for MobSkillFactory 2022-09-07 18:58:26 +02:00
P0nk fd793d6b04 Fix not reading mpCon from MobSkill 2022-09-07 18:58:02 +02:00
P0nk 15c4188d48 Make MCSkill immutable with record 2022-09-03 14:44:14 +02:00
P0nk 9e0479fe9f Clean up Monster usedSkills 2022-09-03 14:31:43 +02:00
P0nk a6ec6adbb5 Combine type and skillLevel in MobSkill 2022-09-03 14:07:24 +02:00
P0nk 7cdaabf6f8 Simplify Monster skills with Set instead of List
Doable now with MobSkillId records
2022-09-03 13:31:47 +02:00
P0nk c47ca4d6a4 Fix MobSkillType always being ATTACK_UP 2022-09-03 13:11:45 +02:00
P0nk 930d365752 Add record MobSkillId for mob skill type + level combination
Pair is nasty to work with when they are passed around all over
2022-09-03 11:01:51 +02:00
P0nk 7a784a7938 Disease and MCSkill hold MobSkillType instead of int 2022-09-03 05:20:54 +02:00
P0nk fba49e7eec MobSkillFactory takes MobSkillType instead of int as id argument 2022-09-03 04:52:55 +02:00
P0nk 66b04969fd Delete ArrayMap which filled no function 2022-09-03 04:32:09 +02:00
P0nk aeaad4194a Refactor MobSkill#applyEffect, split into multiple smaller methods 2022-09-03 04:22:06 +02:00
P0nk 455d4b2195 Make MobSkill immutable using builder pattern 2022-09-02 08:45:55 +02:00
P0nk 6e62a6a45d Break off mob skill loading into separate method 2022-09-02 07:58:52 +02:00
P0nk 3c9be7d70b Lessen magic numbers around mob skills with new "type" enum 2022-09-02 07:39:26 +02:00
P0nk 958286e078 Make Riche text MSEA-like (at least)
MSEA text is likely not the same as GMS text, but it's better than making things up.
2022-08-31 22:04:58 +02:00
P0nk ea76880b7f Use act() in reactor scripts where possible, provide empty act() otherwise
"function hit()" has triggered on each reactor hit,
while "function act()" is only triggered once it's destroyed or reached an end state
2022-08-31 21:34:49 +02:00
P0nk 298457a007 Clean up old way of damaging area boss with reactor 2022-08-30 08:33:10 +02:00
P0nk 7d28e00e4f Make Riche killable after destroying the reactor 2022-08-29 23:32:59 +02:00
P0nk 0118844c2e Make Scholar Ghost killable after triggering the reactor 2022-08-29 23:05:25 +02:00
P0nk 8c418f197a Make Rurumo killable after triggering the reactor 2022-08-29 22:53:29 +02:00
P0nk 7fa677d766 Fix act for scripts that reset to initial state after some time 2022-08-29 22:46:46 +02:00
P0nk 17ae269cc9 Make Security Camera killable after talking to control device 2022-08-29 22:04:07 +02:00
P0nk 535b6c3e8e Make Deet and Roi killable after talking to magic pentagram 2022-08-29 21:58:58 +02:00
P0nk f1d0cb6b4d Make Shade killable after talking to lamp post 2022-08-29 21:42:57 +02:00
P0nk 7fffd0bb64 Make Snow Witch killable after reactor activation 2022-08-29 21:20:51 +02:00
P0nk 84890ac308 Support sealing mob skill 2022-08-29 19:40:24 +02:00
P0nk d1da1d67e0 Add test for evaluating all reactor scripts 2022-08-19 20:00:28 +02:00
P0nk 5b0715d5d0 Add test for evaluating all quest scripts 2022-08-19 19:58:17 +02:00
P0nk cf27c6301f Add test for evaluating all portal scripts 2022-08-19 19:57:15 +02:00
P0nk 3354345cef Add test for evaluating all item scripts 2022-08-19 19:55:27 +02:00
P0nk 6ae2235083 Add test for evaluating all event scripts 2022-08-19 19:53:07 +02:00
P0nk c5d2e90e5b Add test for evaluating all NPC scripts 2022-08-19 19:45:40 +02:00
P0nk 6ea4e3cfc1 Fix one-time lens coupon for female
Last commit fixed Orbis, this one fixes:
Henesys, Showa, NLC, Mu Lung, Ludibrium, Singapore, Amoria, Ariant
2022-08-11 21:14:26 +02:00
P0nk ae7b832e00 Fix Orbis one-time lens coupon for female 2022-08-11 20:20:45 +02:00
P0nk 79ab28a52e Break up Orbis lens NPC script into multiple functions 2022-08-11 19:10:57 +02:00
P0nk d691dc1e18 Prefer Path.of() over Paths.get() 2022-08-11 19:01:40 +02:00
P0nk 297d5b25f0 Fix default wz location 2022-08-11 18:54:01 +02:00
P0nk 229252cd63 Fix deprecations 2022-08-11 15:18:09 +02:00
P0nk 618f312b84 Remove thread tracker system 2022-08-11 14:57:26 +02:00
P0nk 4fb632ecdb Remove monitored locks (fair), use basic version 2022-08-11 14:45:48 +02:00
P0nk 54878ebe8c Remove monitored locks with default fairness, use basic version 2022-08-11 14:26:23 +02:00
P0nk 8657b765b1 Remove monitored read/write locks, use basic version 2022-08-11 14:16:06 +02:00
P0nk 8ab2058ecc Stop using monitored locks in EventInstanceManager 2022-08-11 13:56:12 +02:00
P0nk 42043c3d6c Stop using monitored locks in MapleMap 2022-08-11 13:38:16 +02:00
P0nk 28e8862254 Stop using monitored locks in World 2022-08-11 13:31:55 +02:00
P0nk 7e848618e8 Stop using monitored locks in Server 2022-08-11 12:07:38 +02:00
P0nk b6c17e944a Stop using monitored locks in Channel 2022-08-11 11:55:56 +02:00
P0nk c7af125afc Remove FaceExpressionService
Face expressions are automatically defaulted back after 5 seconds by the client, anyway
2022-08-11 11:48:11 +02:00
P0nk 65f8a6e335 Bump dependencies (maven plugins + JUnit) 2022-08-11 01:19:36 +02:00
P0nk 58277574b5 Refactor QuestItemFetcher, remove commons-io dependency 2022-08-11 01:15:34 +02:00
P0nk 7aba5f4578 Refactor MapInfoRetriever, stop using FileUtils from commons 2022-08-11 01:01:08 +02:00
P0nk 28bc5ee925 Refactor EventMethodFiller, stop using FileUtils from commons 2022-08-11 00:43:08 +02:00
P0nk 62ce462c0f Make jar multi-release to align with log4j2, get rid of warning 2022-08-11 00:08:19 +02:00