Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Adds digitigrade robotic legs #2646

Open
wants to merge 3 commits into
base: master
Choose a base branch
from

Conversation

DeltaFire15
Copy link
Contributor

About The Pull Request

This PR adds digitigrade as an option to choose to modify robotic legs to at the augment manipulator machine.
Behavior is just as you would expect from something taking on both characteristics.

Sprites created by @Bokkiewokkie, code by me.

Additionally, took the time to get the three engineering hardsuits we preserved to work with digitigrade legs again, since we did have those sprites still in the digitigrade suit file. This took a bit of modification to icon procs (because NSV already overrides the icon file so I have to tell the digi file to override the override if it exists), but in theory it should work fine.

Why It's Good For The Game

There not being any digitigrade robotic legs has been a personal point of annoyance for a long, long time. Thanks to Bokkie, there is finally an equivalent for digitigrade legs if augmented, which helps with preserving character expression (and preserving the fact you don't get to wear magboots, if so desired).
But I guess you could just augment yourself with digitigrade legs if you wanted to for whatever reason.

Testing Photographs and Procedure

woe, lizards upon ye

image

image

Changelog

🆑 Bokkiewokkie, DeltaFire15
add: Robotic legs can now be modified to a digitigrade version in the augment manipulator. Rejoice, full-metal lizards.
imageadd: Robot Digitigrade leg sprites.
tweak: The CE, Engineering, and Atmos hardsuit once again do not squish digilegs (we had the sprites still around)
code: Some mild hooking into icon code to bypass our own crimes.
fix: Coincidentally, IPC limbs no longer commit crimes against icons after being thrown in the augment manipulator.
/:cl:

actual digi aug sprites
brings back the three digi hardsuit NSV preserved
mildly cursed hooks included!
@Pockets-byte
Copy link
Contributor

would you know how to make an exception for the humanlike prosthetics in terms of hair, I looked briefly, but did not manage to find anything I could poke personally to mess with that beyond it being caused by robotic limbs(and finding the line that removes hair on loose heads)

@DeltaFire15
Copy link
Contributor Author

DeltaFire15 commented May 12, 2024

would you know how to make an exception for the humanlike prosthetics in terms of hair, I looked briefly, but did not manage to find anything I could poke personally to mess with that beyond it being caused by robotic limbs(and finding the line that removes hair on loose heads)

It appears to be a bit different on bee than I'm used to, but seems to happen in /datum/species/handle_hair() within [...]\code\modules\mob\living\carbon\human\species.dm.
A few lines in you'll find a check for IS_ORGANIC_LIMB() used on the head, which prevents progressing further into the proc if said head isn't organic.

The very basics of changing it would probably be adding a flag or variable to limbs (or just heads) that bypasses this check if it is set right, buuut given this is icon stuff there's a lot of things that might behave weird or look odd.

@Pockets-byte
Copy link
Contributor

would you know how to make an exception for the humanlike prosthetics in terms of hair, I looked briefly, but did not manage to find anything I could poke personally to mess with that beyond it being caused by robotic limbs(and finding the line that removes hair on loose heads)

It appears to be a bit different on bee than I'm used to, but seems to happen in /datum/species/handle_hair() within [...]\code\modules\mob\living\carbon\human\species.dm. A few lines in you'll find a check for IS_ORGANIC_LIMB() used on the head, which prevents progressing further into the proc if said head isn't organic.

The very basics of changing it would probably be adding a flag or variable to limbs (or just heads) that bypasses this check if it is set right, buuut given this is icon stuff there's a lot of things that might behave weird or look odd.

I'll look into it, but my limited coding skills may not be up to it

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants