ae279100d7
[refactor] Extract Abilities.cpp from {Nano,Mob}Manager.cpp
...
I've kept all the functions in their original namespaces for now, since
putting them all into the same one will cause collissions, and this is
all getting rewritten soon anyway.
2021-03-13 21:22:29 +01:00
e92a5a2f8b
[refactor] Split ItemManager.cpp into Vendor.cpp & Trading.cpp
...
- added sources to Makefile
- Added Trading::init() to main.cpp
2021-03-12 20:09:45 -06:00
2d7129111a
[refactor] Refactor ChatManager
...
* Extracted all commands into CustomCommands.cpp
* Moved all chat-related packet handlers into ChatManger.cpp
* Cleaned up redundant includes
* Unified handler naming scheme
* Made all command handlers in CustomCommands.cpp static
2021-03-13 02:59:18 +01:00
4cd3a3dabd
[refactor] src/contrib, src/mingw -> vendor
2021-03-13 02:58:57 +01:00
f7e9cc2cea
Disallow attaching the same item to an email twice
...
Also fix vendor buying validation not allowing crates to be bought,
since apparently their maximum stack size is 0 in TableData.
2021-03-10 00:13:46 +01:00
ffe5947925
Keep track of sold items so we can validate buyback packets
2021-03-09 16:45:38 +01:00
0fbdb1dad2
Improve sanity checks when opening crates and combining items
...
And ignore ITEM_MOVE packets while trading.
2021-03-08 22:31:25 +01:00
5e569d4324
Disallow selling Croc-Potted items
...
Also, make sure to explicitly terminate the connection when a player is
kicked, and align a few fields in tables.sql.
2021-03-07 00:38:24 +01:00
5fdef50f0f
Fix failure to summon the highest NPC_ID
...
And update tdata.
2021-03-03 23:17:36 +01:00
74af1ad173
Set iOpt to 1 for mission rewards and disallow trading iOpt 0 items
...
Co-authored-by: Jade <jadeshrinemaiden@gmail.com>
2021-01-17 22:57:07 +01:00
CakeLancelot
9e30e55669
eggBuffPlayer now takes duration, and buff duration is read from EggType
2021-01-06 05:56:54 -06:00
2bf3fd0975
Further sanity checks for shops
2021-01-06 11:47:07 +01:00
d4eaf83354
Fixed Instancing Bugs
2021-01-04 23:53:44 +01:00
c78b3ca69f
Do not cancel the ongoing race on recall
...
Also do not remove the player's vehicle if the player isn't on a
vehicle.
2020-12-31 03:00:54 +01:00
55431362a7
Make sure the current race is cleared when leaving an IZ
2020-12-28 18:40:26 +01:00
07a930fe1c
Fix vehicles in IZs for real this time
2020-12-28 18:40:26 +01:00
d97444cca5
Remove each group member's vehicle when warping into an instance
2020-12-28 00:50:58 +01:00
44fbb8e81f
Fix other group members not respawning properly in Lairs
2020-12-24 05:22:46 +01:00
e0808ffcbd
Read the NPC ID limit from the XDT
2020-12-23 13:50:12 -05:00
8d1bc94b7e
Mission Handling Fixes
...
- Q. Item count glitches are dealt with
- Warping out now correctly rewinds missions.
2020-12-22 11:30:57 -05:00
Gent S
618a8d0a9f
Reimplement NPC barking
2020-12-15 19:16:05 -05:00
d25e7ca4fc
Implement rudimentary NPC scripting framework and Lord Fuse boss fight
2020-12-15 23:19:29 +01:00
3359ca0c3e
Moved common NPC summoning logic into a helper function
2020-12-15 23:19:29 +01:00
0dd478b9f0
Tweak Lair respawns slightly
...
* Respawn the player in the air, not on the ground
* Do save the player's current instance, just to lessen the chance of
validation not catching stale recall coords.
2020-12-15 23:19:29 +01:00
442d7853a5
In the absence of a Resurrect 'Em in a Lair, respawn at the entrance
2020-12-15 00:26:29 +01:00
JadeShrineMaiden
b947ff65cf
Various bugfixes
...
- Eruption is now blocked by stun and sleep.
- Corruption should block all nano abilities.
- Buffs time out for other players
- Timed mission bugfixes (AGAIN)
- Corruption and Eruptions fire quicker.
- Heal egg ids fix
- No power nanos no longer break the system.
- Mobs should no longer restun.
- Mob ability chance calculation adjustments.
- Duration of the power's debuff is sent as iDamage instead of 0, this removes the ugly "Block" that shows up on successful hits.
- Group mob respawning bugfixes
- a bit of a cleanup
2020-12-12 17:22:22 -05:00
Gent S
794856a63c
Clean up item loading from XDT.
2020-12-04 13:57:08 -05:00
1e822f7a6c
Removed redundant checks for a nullptr from PlayerManager::getPlayer()
...
These were written in desparation and never should have been there in
the first place.
2020-12-01 21:37:34 +01:00
Gent S
c2ab5c9d02
Fix case where resplen wasn't being initialized
2020-11-26 23:01:19 -05:00
26ca4d8671
New Powers, Tweaked Eggs further + Cleanup
...
* Scavenge and Bonus nanos work.
* Eggs now damage and heal more cleanly.
2020-11-26 23:01:19 -05:00
28276d2229
Reverting back some changes + Tweaks
2020-11-26 23:01:19 -05:00
2b25b17bd8
Gumball Handling and Bugfixes
...
* Gumballs now run out of timer.
* Reverted a regression, (gumballs with 0 iOpt do not get emptied).
* Nano matchups now work correctly.
2020-11-26 23:01:19 -05:00
f7c0596a4c
Adapted Egg Buffing to Nano powers
...
* Adapted eggs to nano power data.
* Tweaked nano abilities.
2020-11-26 23:01:19 -05:00
Gent S
478bcd5338
Use vendorID instead of NPC_ID to index into vendor tables
2020-11-26 09:00:30 -05:00
Gent S
e3568ea506
Fix viewableChunks memory leaks
2020-11-25 22:49:37 -05:00
Gent S
71d9cab72e
Fix chunk desync on NPC warp
2020-11-25 17:42:46 -05:00
Gent S
e0858a42b2
Fix getNearestNPC w/ uses
2020-11-22 19:14:46 -05:00
Gent S
71d4f331b5
Fix egg type warning message
2020-11-22 16:46:09 -05:00
Gent S
665f28313a
Clean up redundant forced chunk updates for NPCs
2020-11-21 11:53:48 -05:00
Gent S
95b385dee1
Reimplement chunk data caching
2020-11-19 19:16:51 -05:00
Gent S
dae3b24093
Reimplement chunk position caching
2020-11-19 17:37:07 -05:00
Gent S
e50a4c2edd
Experimental chunk refactor.
2020-11-19 17:37:02 -05:00
Gent S
5cbb8538c0
Get rid of PlayerView. For good.
2020-11-19 17:36:49 -05:00
Gent S
0075457f81
Temporarily remove sanity check for egg pickup distance
2020-11-17 13:51:35 -05:00
Gent S
8ad3f3aabd
CHUNKPOS macro -> ChunkPos typedef
2020-11-16 09:59:53 -05:00
Gent S
b22ba781c8
Possible fix for chunking desyncs + CHUNKPOS macro
2020-11-15 14:41:56 -05:00
Gent
4d1d77ceaf
Switch to getTime() for egg and buff ticking
2020-11-11 23:50:39 -05:00
Gent
7135767cc4
Egg checks, fixes, and cleanup
...
fixed not taking egg buff flag into consideration in mob manager
fixed stamina bug and improved sanity check
Egg cleanups
2020-11-11 23:19:07 -05:00
Kamil
0ecf76c5ec
moved egg summoning to a custom ChatManager command
2020-11-11 23:19:07 -05:00
Kamil
95b5da8932
temp chunk issue fix
2020-11-11 23:19:07 -05:00