[TG Mirror] Basic Space Dragon [MDB IGNORE] #66
Closed
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Mirrored on Skyrat: ${this.url}
Original PR: (original url)
About The Pull Request
Converts Space Dragon from simple to basic mob.
Its behaviour should largely be the same, but as always it's not impossible something slipped through the cracks.
I made two intentional changes though.
Change the first:
I made its wall tearing behaviour into a component, this also for two reasons.
The first reason is that it's much more reasonable than the wall smashing other mobs get and we probably should go through and use this instead on several of them.
The second reason is so that I could make it visually cooler.
Instead of one action bar after which a wall disappears, it's now three action bars with 1/3rd of the duration which progressively show the wall being damaged. If you're stood on the other side you can frantically try and weld it shut again while it is still being attacked, which I think is fun.
Change the second:
I refactored the existing "door prying" component used only by Faithless mobs and also put it on the Regal Rat (who should have been using it already).
I then also gave it to space dragons if for some reason they would rather pry open a door rather than smash the wall next to the door. This doesn't seem like a notable balance change, given that they can destroy RWalls.
Side benefit is that as usual, all of the bespoke actions are now
mob_cooldowns
so you can give them to other mobs.Other code changes:
Went through and made our three separate implementations of "breathing a line of fire" to actually share a typepath and implementation.
Added a check for "eating a mob extinguishes it" in the space dragon unit test, because I suspect it was broken (called
extinguish
instead ofextinguish_mob
).I made mob actions require consciousness and not being incapacitated by default because I got tired of pasting this onto every ability, I actually checked which abilities this should affect this time I swear.
Changelog
🆑 Jacquerel
refactor: Space Dragons are now basic mobs, please report any unexpected behaviour.
balance: You can now see that a space dragon is destroying a wall with a visual indicator of the wall being damaged.
balance: Space Dragons can pry open airlocks.
/:cl: