Gent Semaj
0d26ff5370
Merge d8b63a043e
into d3bef95a7f
2023-08-24 02:22:51 +00: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
gsemaj
0dfcc928a9
Refactor group handling
2023-08-19 20:46:41 +00:00
gsemaj
dc6386131a
Port egg buffs over to new system
2023-08-19 20:46:41 +00:00