mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-07-20 19:44:09 +01:00
Ports a character customization option: Quirks (#28388)
* Makes the datum * Initial Commit * Gets TGUI menu not crashing * Autodoc * quirk menu bugged * oh. * Working menu + buttons * trait defintes pt 1/? * Moves traits around * ACTUALLY START ON THE QUIRKS THEMSELVES * TGUI Bundle Rebuild * TGUI properly saves now * Removes allergies for scope reasons, make foreigner work properly * TGUI tweaks * Reworks TGUI Menu * quirks store the mob, not mind * Adds asthma and mute * minor tweaks * Cloning re-adds quirks * Adds functionality to frail * Adds crafty * TGUI fix * Fixes a frail bug * Makes sure the list is in the correct format * TGUI size change * Makes skittish work * Adds glutton, removes unused traits * Changes description and adds function to glutton * Freerunner functioning * Crafty buff * Clear quirk list when changing species * Forgot to remove light step * Delete * Refactor item-giving * TGUI Bundle Rebuild * whoops * Apply quirks when changing species * Removes some unneeded defines/paths * Replaces improved charging cord with a bad charger * coment * Guard clause * Changes how quirks add and remove organs * unused var * adding organs works, removing them doesn't yet * oh that fixed it * Hopefully finally once and for all fix the json issues * Buffs asthma * switches the processor to ssobj since it's slower * actually spawns the items whoops * maybe actually fixes json issues I really hope this doesn't come up again? * moves sql to the right directory * CULPRIT FOUND, JSON ISSUES ACTUALLY SOLVED * adds admin tooling for quirks * Ups the cost of lungs * Adds removal for the drinking ones * Fixes some duplicate code * Removing foreigner works * wops * bumps sql version to 65 * prettier * semicolon * Foreigners can understand galcomm but not speak it, as per headmin request * Different solution was agreed upon * CC announcements now get auto-translated * Apply suggestions from code review Lewc quick suggestions Co-authored-by: Luc <89928798+lewcc@users.noreply.github.com> Signed-off-by: BiancaWilkson <42818125+BiancaWilkson@users.noreply.github.com> * Move alcohol tolerance basetype * accomodates for reset_styles * Swap to species flags, and being dead is a universal process stopper * adds a foreigner trait * Xenos and the like can't understand CC's translated announcements * TGUI Bundle Rebuild * Lewc quick fixes Co-authored-by: Luc <89928798+lewcc@users.noreply.github.com> Signed-off-by: BiancaWilkson <42818125+BiancaWilkson@users.noreply.github.com> * i forgor * i forgor pt 2 * process properly returns true * TGUI Bundle Rebuild * sql update for fixing merge conflicts * bundle changes * actual sql fix * Not test tiny in prod * sql fix? * tgui update, first pass * Adds schema changes to main quirk branch * persistent data works now * TGUI Bundle Rebuild * Fixes conflict with job assignment datumization * TGUI Bundle Rebuild * Adds pacifism by request, -3 points * gives skittish a small cd * Makes the lunch randomizer I was thinking about doing * GC returns a qdel hint now * Removes hard refs * SQL save fix * Fixes admin tools * Fixes wizards getting quirked up * ragin too * Lightweight is more lightweight * Adds admin logging for when someone makes a languagesless character * TGUI Bundle Rebuild * Adds colorblind, hungry, and buffs asthma * fixed vv post-merge conflict * behold, my monster * rebuild and merge master * Adds more positive quirks, and makes monochrome give more points * adds nearsighted, and no whispering * sorry linter * Adds the cool quirk, thanks to pumpkin312 * Oh dear that signal gets sent to everyone every time someone spawns in * i forgot that slimes dont have eyes * tgui fix * bundle rebuild probably * prettier * prettier * Skittish package fix * force add bundle * Makes plasmemes be unable to take foreigner * Makes advanced lungs respect the owner's species * makes breaking open wrapped crates/lockers a do_after_once * Makes plasmeme/vox advanced lungs actually help * You get glasses anyway whoops * bundle rebuild --------- Signed-off-by: BiancaWilkson <42818125+BiancaWilkson@users.noreply.github.com> Co-authored-by: Burzah <116982774+Burzah@users.noreply.github.com> Co-authored-by: Luc <89928798+lewcc@users.noreply.github.com> Co-authored-by: warriorstar-orion <orion@snowfrost.garden>
This commit is contained in:
@@ -153,6 +153,8 @@ RESTRICT_TYPE(/datum/job_candidate)
|
||||
return FALSE
|
||||
if(is_barred_by_missing_limbs(job))
|
||||
return FALSE
|
||||
if(is_barred_by_quirk(job))
|
||||
return FALSE
|
||||
|
||||
return TRUE
|
||||
|
||||
@@ -177,6 +179,16 @@ RESTRICT_TYPE(/datum/job_candidate)
|
||||
return TRUE
|
||||
return FALSE
|
||||
|
||||
/datum/job_candidate/proc/is_barred_by_quirk(datum/job/job)
|
||||
if(!length(job.blacklisted_disabilities))
|
||||
return FALSE
|
||||
active_character.rebuild_quirks() // Gotta rebuild to make sure they aren't still JSON
|
||||
var/list/active_character_quirks = active_character.quirks
|
||||
for(var/datum/quirk/quirk in active_character_quirks)
|
||||
if(quirk.blacklisted)
|
||||
return TRUE
|
||||
return FALSE
|
||||
|
||||
/datum/job_candidate/proc/get_job_exp_restrictions(datum/job/job)
|
||||
if(is_job_playable(job))
|
||||
return null
|
||||
|
||||
@@ -305,7 +305,7 @@ RESTRICT_TYPE(/datum/job_selector)
|
||||
if(candidate.get_job_exp_restrictions(job))
|
||||
young++
|
||||
continue
|
||||
if(candidate.is_barred_by_disability(job) || candidate.is_barred_by_missing_limbs(job))
|
||||
if(candidate.is_barred_by_disability(job) || candidate.is_barred_by_missing_limbs(job) || candidate.is_barred_by_quirk(job))
|
||||
disabled++
|
||||
continue
|
||||
if(candidate.wants_job(job, 1))
|
||||
|
||||
@@ -444,7 +444,9 @@
|
||||
var/actual_strength = strength
|
||||
var/datum/mind/M = owner.mind
|
||||
var/is_robot = ismachineperson(owner) || issilicon(owner)
|
||||
|
||||
if(ishuman(owner))
|
||||
var/mob/living/carbon/human/drunkard = owner
|
||||
actual_strength *= drunkard.physiology.alcohol_mod
|
||||
if(HAS_TRAIT(owner, TRAIT_ALCOHOL_TOLERANCE))
|
||||
alcohol_resistance = 2
|
||||
|
||||
|
||||
Reference in New Issue
Block a user