P0nk
fdd2ef7b3a
Move MapleBossHpBarFetcher to main module
2021-07-10 18:28:09 +02:00
P0nk
bc6593fd81
Move MapleArrowFetcher to the main module
2021-07-10 18:12:36 +02:00
P0nk
14a405adb2
Consistent handling of wz files and their paths
2021-07-10 17:49:04 +02:00
Ponk
0b17725e8e
Merge pull request #35 from ronancpl7/fix-change-maps-disorder
...
Fix mob status crash & dmg from map hazard
2021-05-23 07:44:17 +02:00
Ronan Lana
3d5db5d79c
fix: incurred ambiguity import
2021-05-22 14:48:44 -03:00
Ronan Lana
d330376706
fix: missed stream import
2021-05-22 11:56:37 -03:00
P0nk
d9d63a1b44
Refactor event max lobbies - is no longer a range
...
It's no longer a range because it:
1. Makes no sense for it to be a range
2. Makes for simpler scripts since returning a JS array is a hassle with Graal
2021-05-21 20:54:51 +02:00
P0nk
095008a20f
Fix event scripts' getEligibleParty
...
Cannot return a JavaScript array straight up
(otherwise you'll get a PolyglotMap):
it has to be converted first from inside the script.
2021-05-21 19:09:40 +02:00
P0nk
bcefd42093
Handle reactor scheduling outside of script
...
No longer need to make all invocations synchronized
2021-05-21 08:15:01 +02:00
P0nk
f9aec05779
Update GraalVM to latest version (21.1.0)
2021-05-20 22:22:26 +02:00
P0nk
406c43b0ec
Make all event script invocations thread safe
...
Simple solution for avoiding concurrent access
of the same evaluated script, but I would be surprised
if performance is not affected for the worse.
The same Invocable is used for all instances of an event,
so more active instances means higher contention of the single Invocable.
Hopefully the number of instances required for it to be noticeably slow
is high enough that this is not an issue.
2021-05-20 22:03:11 +02:00
P0nk
cdfb7074ec
Make all reactor script invocations thread safe
...
Might be a bit overkill to force synchronization
for every single method invocation when the only
scheduling done in reactor scripts are:
- 5511000 (summon Targa)
- 5511001 (summon Scarlion)
2021-05-20 21:30:46 +02:00
P0nk
2ce6041ef8
Add thread safe wrapper for Invocable
2021-05-20 21:00:48 +02:00
Ronan Lana
2aa09f89db
fix: Minor code typo
2021-05-20 13:01:42 -03:00
Ronan Lana
f4a4acf742
Encode status patch
...
Filter out some status crashing players.
2021-05-18 20:21:38 -03:00
Ronan Lana
458de52dbc
Broadcast damage from map hazard
...
Fix taking damage from map hazard not showing to other players.
2021-05-18 18:16:46 -03:00
P0nk
cd6415b061
Enforce implementation of PortalScript
2021-04-18 12:31:01 +02:00
P0nk
46c2d92082
refactor: use Invocable instead of ScriptEngine in script managers
...
- Make fields final
- Inject event script variable earlier
- Remove redundant fields
2021-04-18 11:26:05 +02:00
P0nk
58e69654a2
Let scripts access Java classes
...
Fix script attempting to schedule with non-long (double) time value
2021-04-17 22:26:18 +02:00
P0nk
a18a1cb8ce
Replace NashornScriptEngine with implicit GraalJSScriptEngine
...
GraalJSScriptEngine implements Invocable, which is why casting to it works.
However, this is just a quick and ugly fix to make it compile.
A better solution would be to cast it once, immediately after `eval`,
and from then on only handle it as Invocable.
Scripts still need to be fixed. They are still using Rhino and Nashorn-specific
ways of importing packages.
Usages of "importPackage" and "Packages" need to be replaced with
the Graal specific "Java.type".
2021-04-17 15:12:19 +02:00
P0nk
5a5110d905
Use existing connection for loading new year + family
...
Move async tasks earlier for lower chance of having to wait
2021-04-16 20:41:17 +02:00
P0nk
8335e77f2e
Load developer room async on startup
2021-04-13 22:44:20 +02:00
P0nk
dd7c2a697a
Load skillbook source information async on startup
2021-04-13 08:14:11 +02:00
P0nk
055ee01ae9
Load quests async on startup
2021-04-12 22:05:57 +02:00
P0nk
a59b55db57
Load cash items async on startup
2021-04-12 21:44:47 +02:00
P0nk
415376ce08
Load skills async on startup
2021-04-12 21:06:05 +02:00
P0nk
ab56d18bd3
Log startup time
2021-04-11 14:02:25 +02:00
P0nk
68239bc0b5
Make database operations during startup consistent
...
Use the same Connection. and log things in a similar fashion
2021-04-11 13:52:35 +02:00
P0nk
858fcd2a3a
Actually perform name changes & world transfers on startup
...
No changes were being committed
2021-04-11 13:05:12 +02:00
ronancpl
d4e4150a6e
cleanup: adjust syntax
2021-04-10 09:43:05 -03:00
ronancpl
7a3d5d2b94
Allow local/LAN/WAN login-phase connections
...
Allow clients connecting from different IP domains (local/LAN/WAN) to get past login phase and clean unnecessary local server check.
2021-04-09 20:54:53 -03:00
P0nk
a5b42b8a43
cleanup: use primitive type instead of wrapper type
2021-04-08 17:49:22 +02:00
P0nk
202f2d8bc5
cleanup: use bulk operation instead of iteration
2021-04-08 17:49:21 +02:00
P0nk
3434c7334b
cleanup: remove redundant cast
2021-04-08 17:39:55 +02:00
P0nk
ebb3aa7ba3
cleanup: prefer List#sort over Collections#sort
2021-04-08 07:44:02 +02:00
P0nk
5730b3b42d
cleanup: use implicit generic type with diamond operator
2021-04-08 07:42:10 +02:00
P0nk
8aa44711e3
cleanup: use Integer#parseInt where applicable
2021-04-08 07:40:42 +02:00
P0nk
7ff8190977
cleanup: remove unnecessary boxing
2021-04-08 07:39:02 +02:00
P0nk
5c6f515d18
cleanup: use for-each loop where applicable
2021-04-08 07:36:38 +02:00
P0nk
0ff8a80ef2
cleanup: remove unnecessary semicolon
2021-04-08 07:34:56 +02:00
P0nk
f37d4063fb
cleanup: remove unnecessary interface modifiers
2021-04-08 07:33:52 +02:00
P0nk
dde52653e5
cleanup: remove unnecessary conversion to String
2021-04-08 07:30:12 +02:00
P0nk
5e3b346053
cleanup: use Java-style array declaration
2021-04-08 07:17:03 +02:00
P0nk
ed5a444753
cleanup: remove unnecessary unboxing
2021-04-07 23:52:58 +02:00
P0nk
6253169e35
cleanup: replace anonymous inner class with lambda
2021-04-07 23:45:28 +02:00
P0nk
b3c1259580
Use new logging for all startup messages
2021-04-07 18:40:47 +02:00
RubenD96
e8d2256683
Fix exploit for negative itemId's in PetExcludeItemsHandler
2021-04-07 17:26:55 +02:00
RubenD96
28707fa0f3
Fix exploit for invalid skill macro name length
2021-04-07 17:26:49 +02:00
P0nk
2f34b3ed8b
Fix ranking update query using a keyword for field name
...
"Rank" is a reserved keyword in MySQL 8.
This caused an SQLSyntaxErrorException during the task run.
2021-04-06 21:12:23 +02:00
P0nk
02256e04ed
Fix SQL type conversion error during ranking move update
...
Caused by prior upgrade to MySQL 8 which seems more strict when it comes to type conversions.
2021-04-06 21:11:56 +02:00