Commit Graph

1137 Commits

Author SHA1 Message Date
208a301a48 Rename coord args in summonNPC() and constructors to clarify purpose
This makes it clearer that the real coords aren't set until the first
call to updateNPCPosition().
2023-09-10 19:49:40 +02:00
278818dd37 Quick fix for Fuse boss fight NPCEvent logic
Will be replaced with a proper rework immediately.
2023-09-10 19:24:19 +02:00
gsemaj
ea033a97dd
reduce drain tickrate 2023-09-09 11:59:13 -07:00
gsemaj
d8b63a043e
Fix conflicts 2023-08-23 19:22:38 -07:00
gsemaj
f2447cd940
Clear player buffs on death if not revived 2023-08-20 18:16:14 -07:00
gsemaj
97dca62fd0
Fix egg skill handling 2023-08-20 18:07:23 -07:00
d3bef95a7f Fix /npcr
Also removed a redundant invocation of NPCManager::updateNPCPosition()
and simplified the surrounding code.
2023-08-20 05:06:16 +02:00
gsemaj
0eff236512
Fix corruption reflection 2023-08-19 16:19:36 -07:00
gsemaj
0fcf41cbfe
Fix guard FOR REAL 2023-08-19 15:03:16 -07:00
gsemaj
efb3887e3e
Fix corruption attack rebound 2023-08-19 14:54:18 -07:00
gsemaj
874bdefb13
Fix passive powers 2023-08-19 14:46:35 -07:00
gsemaj
94b08659d2
Fix battery drain block 2023-08-19 14:21:04 -07:00
gsemaj
d936d0b621 Updater contributer guide 2023-08-19 20:46:41 +00:00
gsemaj
249e5b081f Move corruption block to new system 2023-08-19 20:46:41 +00:00
gsemaj
52c1ed4480 Return home heal to new system 2023-08-19 20:46:41 +00:00
gsemaj
522b9ab7b8 Passive mob buffs to new system 2023-08-19 20:46:41 +00:00
gsemaj
c0a9ec6b7c Move mob active skills to new system 2023-08-19 20:46:41 +00:00
gsemaj
d416763ae0 Move eruption attacks to new system 2023-08-19 20:46:41 +00:00
gsemaj
ff74c8ede1 Implement leech 2023-08-19 20:46:41 +00:00
gsemaj
e64bcf91a5 Make clearBuffs memory-safe
improperly erasing during iteration oops
2023-08-19 20:46:41 +00:00
gsemaj
b04c292272 Break if player dies from buff combat tick 2023-08-19 20:46:41 +00:00
gsemaj
36b6aeeb00 Fix segv: Halt buff iteration if mob is dead 2023-08-19 20:46:41 +00:00
gsemaj
93ec6380c1 Tighten parameter for removeBuff 2023-08-19 20:46:41 +00:00
gsemaj
c1aff8d3c3 Move drain to new system
TODO
- There is a seg fault that happens when drain kills the mob
- leech unimplemented
- mob skills unimplemented
2023-08-19 20:46:41 +00:00
gsemaj
1cf2be9968 reorder some stuff 2023-08-19 20:46:41 +00:00
gsemaj
dd4063e416 Fix icon not disappearing for debuffs 2023-08-19 20:46:41 +00:00
gsemaj
464d18820b Tick buffs for mobs 2023-08-19 20:46:41 +00:00
gsemaj
288a4a3da5 Fix infinite slowdown with snare 2023-08-19 20:46:41 +00:00
gsemaj
807e182407 Implement buff handling for CombatNPC 2023-08-19 20:46:41 +00:00
gsemaj
0dd628717d Move buffs from Mob to CombatNPC 2023-08-19 20:46:41 +00:00
gsemaj
c70205a15b Implement buffs for mobs 2023-08-19 20:46:41 +00:00
gsemaj
8062e52c55 Damage n debuff handler 2023-08-19 20:46:41 +00:00
gsemaj
3b5f6c0fe7 Fix trailing structs
The change to allow flexible trailing struct sizes broke
`attachSkillResults` oops
2023-08-19 20:46:41 +00:00
gsemaj
e9cd5db8a2 Get rid of cbf 2023-08-19 20:46:41 +00:00
gsemaj
e7450b974c Add clearBuffs 2023-08-19 20:46:41 +00:00
gsemaj
13e71de785 Make skill result size check an assertion 2023-08-19 20:46:41 +00:00
gsemaj
e3c3da87b2 Oops 2023-08-19 20:46:41 +00:00
gsemaj
4bc53b2e7e Change SkillResult size validation
Since leech uses trailing structs of two different sizes, just use the max SkillResult size in validation/zeroing and then check for overflow in a couple extra places
2023-08-19 20:46:41 +00:00
gsemaj
03abb6f830 Reorder abilities to match client handling 2023-08-19 20:46:41 +00:00
gsemaj
bd1abcef72 Don't add buff if player dead 2023-08-19 20:46:41 +00:00
gsemaj
49fa6d65c4 Fix seg fault with egg powers 2023-08-19 20:46:41 +00:00
gsemaj
773e4b36e1 Reuse useNanoSkill codepath for passive powers 2023-08-19 20:46:41 +00:00
gsemaj
945599f93c Fix recall 2023-08-19 20:46:41 +00:00
gsemaj
78c15e2899 Make SkillType an enum class 2023-08-19 20:46:41 +00:00
gsemaj
eaebe3ba4c Fix self recall 2023-08-19 20:46:41 +00:00
gsemaj
9312706524 [WIP] Fix targeting for groups 2023-08-19 20:46:41 +00:00
gsemaj
80dd6b5479 [WIP] Active power handling
TODO:
- recall (self and group) is broken
- revive (only group) is broken
- damage + debuff is unimplemented
2023-08-19 20:46:41 +00:00
gsemaj
751fd4fd9d Sync with master 2023-08-19 20:46:41 +00:00
gsemaj
ec71fd8f46 Add overload to remove specific class of buff
I initially added this because, despite the higher tickrate for
composite condition calculations thanks to the last commit, there is
still a slight status icon delay when rapidly switching nanos. I
attempted to use this to make that problem go away and for whatever
reason it wasn't effective, but I figure it would be useful to have
anyway so I'm keeping it.
2023-08-19 20:46:41 +00:00
gsemaj
f0bb90b547 Move some stuff from playerTick to player combat step 2023-08-19 20:46:41 +00:00