Repository navigation
Fix phantoms not dying when shot during the "birth" state animation - #771
Conversation
|
LGTM |
|
Looks kinda janky. We need to decide if its appropriate to do either of these:
|
|
I pushed a second commit to the same branch with alternative version of the fix. This attempt makes it possible for phantoms in stBirth to transition straight to stShoot upon being hit. I chose the initial approach because I have no idea how animations work and I expected the "clean" approach of doing something only in "animation end" callback was safer. The game did not crash for me with this new approach so I guess I was unnecessarily careful there. Video proof, note that phantoms now disappear immediately upon being hit despite being in stBirth state: 2026-10-19.23-56-37.mp4Snarky comment: I know no one begged for the fix, but damn if you're not being choosers : ) |
|
actually i think a lot were begging for a fix. these bugged bastards are extremely annoying |
This fixes the well known bug that keeps phantoms flying around and through the player.
Thanks to Jack_Harris in GAMMA discord for providing info on repro:
The root cause is the lines 306 and 241 in phantom.cpp, they respectively:
g_Alive() == falseg_Alive() == true, so a phantom that got hit duringstBirthwill never "self-destroy" on player contact and has to be hit again to be destroyed despite being "dead" according to the game.The fix:
after stBirth animation finishes check if phantom is dead. If it's dead then transition to stShoot, if it's alive then continue to stFly as it did before the change.
Shitty 480p video proof (under 10mb limit for attachments...). Note that since we wait for the stBirth animation to end there might be a delay between phantom getting shot and it "dying" - this is noticeable in the video.
2026-10-19.20-44-42.mp4