This replaces several sanitizeSQL calls with ckey calls, which
effectively sanitizes on its own.
Admin ckeys are not ckeyized if they don't actually match the admin's
ckey, which only really happens with specific automated notes.
All species-specific clothing icons (obj and worn) are now in their own files instead of cluttering up the main ones. I didn't do the Skrell helmets/whatevers because Humans can wear them too.
Fixes a bug where the 'select equipment' debug verb wouldn't correctly equip Armalis if you selected the 'Vox' option. Also corrects an issue where it gave the Armalis two uniforms. Adds a placeholder invisible uniform icon state for the Armalis so Admins can use 'em for events and do uniform-related things without having to deal with terribly awkward icons.
Players:
- The only thing that you should notice is that your backpack options
have changed. Instead of being "None", "Backpack", "Satchel", and
"Satchel Alt", there are 6 options:
- "Grey Backpack": Ensures you always recieve a plain grey backpack.
- "Grey Satchel": Same as the above, grey, plain, satchel.
- "Grey Dufflebag": So you don't have to rush the locker room, I
guess. Just kinda ransacked it from /tg/. Happy to revert it, please
do not post a five paragraph text wall calling me a shitlord
powergaming hitler-loving furry.
- "Leather Satchel": It's a leather satchel. What the hell did you
think it was?
- "Department Backpack": Gives you the department's default backpack.
Grey for most jobs.
- "Department Satchel": It gives you the department's default
satchel; A grey satchel if the department doesn't have one.
Coders:
- The above means this needs a minor SQL change:
```
SQL goes here
I'll write a query later
Can't be bothered now
Kill me please
```
- This is a cleaner method of handling job equipment than
"M.equip_or_collect" x 1000. Jobs specify a '/datum/outfit' datum,
which defines all of the things to equip to the user.
- Minor note: equip_or_collect will no longer ever generate a plastic
bag. It will instead just drop stuff on the floor if it can't stuff it
into a mob. If this is even slightly a point of contention, more than
happy to revert it; It was just requested by Fox.
- Addendum: This also has the effect of making it so that labcoats
are just thrown onto the floor if you have a loadout suit. It's not
really avoidable. Uniforms and suits are equipped before the
backpack.
- Changes from /tg/:
- Changed all of the "H.equip_to_slot_or_del" calls into invoking a
new "equip_item" proc; This is used to support a new variable called
"collect_not_del". Job outfits use this, it makes it so that the
system calls equip_or_collect instead of equip_to_slot_or_del. The
idea being that job items should never be lost to the void,
especially because they can conflict with loadout items.
TODO:
- Retrofit "Equip Mob" verb to use this for all of the non-job options
- Fully implement head announcements(?)
- May be best for a second PR that addresses all of the real issues
with our current job system
( Now go reread that SQL code block :) )