[MIRROR] Refactors Rabbits to be a Basic Mob [MDB IGNORE] (#17499)

* Refactors Rabbits to be a Basic Mob (#71205)

## About The Pull Request

Back in #64175, I reworked rabbits such that their base behavior was
just a cute fluffy snuggle monster, and not have the "easter" variant be
the default. Now that we're transitioning everything from simple_animal
to basic, I figured now was the time to shift that over too.

Pretty much everything should be the same as it was before, I even took
some time to add behavior to some elements to allow it to work (let me
know if I should handle it a different way) but rabbits as a
simple_animal and rabbits as a basic mob should now not be very
distinguishable (beyond the fact that they only speak via subtrees).

I also got rid of the single-letter icon_states in the DMI and
accomodated the code to fix because I finally got irritated enough to do
something about that.
## Why It's Good For The Game

Although I didn't really have any pressing urge to add more complex AI
behavior to rabbits than just pretty much re-implementing what they had
as a simple_animal, this is an excellent first-step to allowing much
more extensible behaviors to these fuzzy creatures.

Also, it takes three more mobs off "the frozen list". Whoopie!
## Changelog
🆑
fix: Dead Black Space Rabbits should now properly have a sprite.
/🆑

The UpdatePaths is useless for the maps we have on our repository
(holodecks use a spawner code-side), but I'm going to be nice to
downstreams who need it.

* Refactors Rabbits to be a Basic Mob

* Fixed the CI and the rabbit on VoidRaptor

* Oops, forgot to remove it from here too

Co-authored-by: san7890 <the@san7890.com>
Co-authored-by: GoldenAlpharex <jerego1234@hotmail.com>
This commit is contained in:
SkyratBot
2022-11-16 11:57:50 -05:00
committed by GitHub
co-authored by san7890 GoldenAlpharex
parent b721d78657
commit 68e8eee1fc
14 changed files with 152 additions and 103 deletions
@@ -19,14 +19,18 @@
if(!isbasicmob(target))
return ELEMENT_INCOMPATIBLE
if(min_body_temp)
if(isnum(min_body_temp))
src.min_body_temp = min_body_temp
if(max_body_temp)
if(isnum(max_body_temp))
src.max_body_temp = max_body_temp
if(cold_damage)
if(isnum(cold_damage))
src.cold_damage = cold_damage
if(heat_damage)
if(isnum(heat_damage))
src.heat_damage = heat_damage
RegisterSignal(target, COMSIG_LIVING_LIFE, PROC_REF(on_life))
/datum/element/basic_body_temp_sensitive/Detach(datum/source)