Slime People and IPC; Imitating Species Cosmetically. (#27359)

* Pain

* More transparency / alpha

* Vulp + Name override

* more transparency alpha stuff

* Reworks species subtype for slimepeople

* Iteration 3...

* Me when initial

* 60 - 61

* Character.dm select query changes.

* 61-62

* The real 61-62

* Update to IPC imitation

* +63-64.sql
> species_subtype after pda_ringtone

IPC identity configuration surgery.

Slime "Morph" action: 10 seconds. Allows a slime person to change how they look.
> Same cost as regenerating a limb.

Link processing subspecies implement.

* Pain2

* SQL

* Frankenstein monster fix

* Slimify! ...no longer applies to robotic limbs.

* 220 Alpha to 200

* Ordering issue fix.

* Last ordering issue.

* aa review, paradise_schema.sql

* Apply suggestions from code review

Co-authored-by: AffectedArc07 <25063394+AffectedArc07@users.noreply.github.com>
Signed-off-by: Spaghetti-bit <yumyumkillkill@gmail.com>

---------

Signed-off-by: Spaghetti-bit <yumyumkillkill@gmail.com>
Co-authored-by: AffectedArc07 <25063394+AffectedArc07@users.noreply.github.com>
This commit is contained in:
Spaghetti-bit
2025-02-09 15:59:57 +00:00
committed by GitHub
co-authored by AffectedArc07
parent 59377ad52d
commit 32c9d4d682
28 changed files with 670 additions and 429 deletions
@@ -17,9 +17,13 @@
var/list/whitelist
var/list/blacklist
/// Temporary holder when we first initialize the TGUI, we store this as our owner's previous subtype so we can tell when it updates.
var/owner_subtype
/datum/ui_module/appearance_changer/New(datum/host, mob/living/carbon/human/H, check_species_whitelist = TRUE, list/species_whitelist = list(), list/species_blacklist = list())
..()
owner = H
owner_subtype = owner.dna.species.species_subtype
head_organ = owner.get_organ("head")
check_whitelist = check_species_whitelist
whitelist = species_whitelist
@@ -214,7 +218,11 @@
ui.open()
/datum/ui_module/appearance_changer/ui_data(mob/user)
generate_data(check_whitelist, whitelist, blacklist)
if(user.dna.species.species_subtype != owner_subtype)
owner_subtype = user.dna.species.species_subtype
cut_and_generate_data()
else
generate_data(check_whitelist, whitelist, blacklist)
var/list/data = list()
data["specimen"] = owner.dna.species.name