Nukes karma (#20628)

* Nukes karma

* Skin + logic

* TGUI Build
This commit is contained in:
AffectedArc07
2023-03-14 19:14:47 +00:00
committed by GitHub
parent f33054212b
commit 72ba1ada7b
49 changed files with 73 additions and 922 deletions
@@ -347,14 +347,12 @@
/mob/living/carbon/human/proc/generate_valid_species(check_whitelist = TRUE, list/whitelist = list(), list/blacklist = list())
var/list/valid_species = new()
for(var/current_species_name in GLOB.all_species)
var/datum/species/current_species = GLOB.all_species[current_species_name]
if(check_whitelist && !check_rights(R_ADMIN, FALSE, src)) //If we're using the whitelist, make sure to check it!
if(whitelist.len && !(current_species_name in whitelist))
continue
if(blacklist.len && (current_species_name in blacklist))
continue
if((IS_WHITELISTED in current_species.species_traits) && !can_use_species(src, current_species_name))
if(!can_use_species(src, current_species_name))
continue
valid_species += current_species_name
@@ -13,7 +13,7 @@
"eyes" = /obj/item/organ/internal/eyes/abductor //3 darksight.
)
species_traits = list(NO_BLOOD, NO_HAIR)
species_traits = list(NO_BLOOD, NO_HAIR, NOT_SELECTABLE)
inherent_traits = list(TRAIT_VIRUSIMMUNE, TRAIT_CHUNKYFINGERS, TRAIT_NOHUNGER, TRAIT_NOBREATH, TRAIT_NOEXAMINE, TRAIT_REPEATSURGERY)
dies_at_threshold = TRUE
@@ -31,7 +31,7 @@
"is sucking in warm air!",
"is holding their breath!")
species_traits = list(LIPS, IS_WHITELISTED, NO_HAIR)
species_traits = list(LIPS, NO_HAIR)
clothing_flags = HAS_UNDERWEAR | HAS_UNDERSHIRT
bodyflags = HAS_SKIN_TONE | HAS_BODY_MARKINGS | BALD | SHAVED
has_gender = FALSE
@@ -4,7 +4,7 @@
icobase = 'icons/mob/human_races/r_golem.dmi'
species_traits = list(NO_BLOOD, NO_HAIR)
species_traits = list(NO_BLOOD, NO_HAIR, NOT_SELECTABLE)
inherent_traits = list(TRAIT_RESISTHEAT, TRAIT_NOBREATH, TRAIT_RESISTCOLD, TRAIT_RESISTHIGHPRESSURE, TRAIT_RESISTLOWPRESSURE, TRAIT_NOFIRE, TRAIT_CHUNKYFINGERS, TRAIT_RADIMMUNE, TRAIT_PIERCEIMMUNE, TRAIT_NOPAIN, TRAIT_NO_BONES, TRAIT_STURDY_LIMBS, TRAIT_XENO_IMMUNE)
inherent_biotypes = MOB_HUMANOID | MOB_MINERAL
dies_at_threshold = TRUE
@@ -16,7 +16,7 @@
"eyes" = /obj/item/organ/internal/eyes/grey //5 darksight.
)
species_traits = list(LIPS, IS_WHITELISTED, CAN_WINGDINGS, NO_HAIR)
species_traits = list(LIPS, CAN_WINGDINGS, NO_HAIR)
clothing_flags = HAS_UNDERWEAR | HAS_UNDERSHIRT | HAS_SOCKS
bodyflags = HAS_BODY_MARKINGS | HAS_BODYACC_COLOR | SHAVED | BALD
dietflags = DIET_HERB
@@ -9,7 +9,7 @@
hunger_drain = 0.15
tox_mod = 1.7
species_traits = list(IS_WHITELISTED, NO_HAIR)
species_traits = list(NO_HAIR)
inherent_biotypes = MOB_ORGANIC | MOB_HUMANOID | MOB_BUG
clothing_flags = HAS_UNDERWEAR | HAS_UNDERSHIRT | HAS_SOCKS
bodyflags = HAS_HEAD_ACCESSORY | HAS_HEAD_MARKINGS | HAS_BODY_MARKINGS | HAS_BODYACC_COLOR | SHAVED
@@ -22,7 +22,7 @@
death_message = "gives a short series of shrill beeps, their chassis shuddering before falling limp, nonfunctional."
death_sounds = list('sound/voice/borg_deathsound.ogg') //I've made this a list in the event we add more sounds for dead robots.
species_traits = list(IS_WHITELISTED, NO_BLOOD, NO_CLONESCAN, NO_INTORGANS)
species_traits = list(NO_BLOOD, NO_CLONESCAN, NO_INTORGANS)
inherent_traits = list(TRAIT_VIRUSIMMUNE, TRAIT_NOBREATH, TRAIT_NOGERMS, TRAIT_NODECAY, TRAIT_NOPAIN, TRAIT_GENELESS) //Computers that don't decay? What a lie!
inherent_biotypes = MOB_ROBOTIC | MOB_HUMANOID
clothing_flags = HAS_UNDERWEAR | HAS_UNDERSHIRT | HAS_SOCKS
@@ -10,6 +10,7 @@
language = null
default_language = "Chimpanzee"
inherent_traits = list(TRAIT_NOEXAMINE)
species_traits = list(NOT_SELECTABLE)
skinned_type = /obj/item/stack/sheet/animalhide/monkey
greater_form = /datum/species/human
no_equip = list(slot_belt, slot_wear_id, slot_l_ear, slot_r_ear, slot_glasses, slot_gloves, slot_shoes, slot_wear_suit, slot_w_uniform, slot_l_store, slot_r_store, slot_s_store, slot_wear_pda)
@@ -13,7 +13,7 @@
language = "Sol Common"
burn_mod = 4 // holy shite, poor guys wont survive half a second cooking smores
brute_mod = 2 // damn, double wham, double dam
species_traits = list(LIPS, IS_WHITELISTED, NO_BLOOD, NO_CLONESCAN)
species_traits = list(LIPS, NO_BLOOD, NO_CLONESCAN)
inherent_traits = list(TRAIT_NOBREATH, TRAIT_RADIMMUNE, TRAIT_NOPAIN)
bodyflags = SHAVED
dies_at_threshold = TRUE
@@ -5,7 +5,7 @@
dangerous_existence = TRUE //So so much
//language = "Clatter"
species_traits = list(IS_WHITELISTED, NO_BLOOD, NO_HAIR)
species_traits = list(NO_BLOOD, NO_HAIR)
inherent_traits = list(TRAIT_RADIMMUNE, TRAIT_NOHUNGER)
inherent_biotypes = MOB_HUMANOID | MOB_MINERAL
forced_heartattack = TRUE // Plasmamen have no blood, but they should still get heart-attacks
@@ -15,7 +15,7 @@
"eyes" = /obj/item/organ/internal/eyes/night_vision/nightmare //8 darksight.
)
species_traits = list(NO_BLOOD)
species_traits = list(NO_BLOOD, NOT_SELECTABLE)
inherent_traits = list(TRAIT_VIRUSIMMUNE, TRAIT_NOBREATH, TRAIT_RADIMMUNE)
dies_at_threshold = TRUE
@@ -9,7 +9,7 @@
blood_color = "#FFFFFF"
flesh_color = "#E6E6C6"
species_traits = list(NO_BLOOD, NO_HAIR)
species_traits = list(NO_BLOOD, NO_HAIR, NOT_SELECTABLE)
inherent_traits = list(TRAIT_RESISTHEAT, TRAIT_NOBREATH, TRAIT_RESISTCOLD, TRAIT_RESISTHIGHPRESSURE, TRAIT_RESISTLOWPRESSURE, TRAIT_RADIMMUNE, TRAIT_PIERCEIMMUNE, TRAIT_NOHUNGER, TRAIT_XENO_IMMUNE)
inherent_biotypes = MOB_UNDEAD | MOB_HUMANOID
tox_mod = 0
@@ -25,7 +25,7 @@
male_cough_sounds = list('sound/effects/slime_squish.ogg')
female_cough_sounds = list('sound/effects/slime_squish.ogg')
species_traits = list(LIPS, IS_WHITELISTED, NO_CLONESCAN, EXOTIC_COLOR)
species_traits = list(LIPS, NO_CLONESCAN, EXOTIC_COLOR)
inherent_traits = list(TRAIT_WATERBREATH, TRAIT_NO_BONES)
clothing_flags = HAS_UNDERWEAR | HAS_UNDERSHIRT | HAS_SOCKS
bodyflags = HAS_SKIN_COLOR | NO_EYES
@@ -114,6 +114,7 @@
default_language = "Sinta'unathi"
speed_mod = -0.80
species_traits = list(LIPS, NOT_SELECTABLE)
inherent_traits = list(TRAIT_CHUNKYFINGERS)
has_organ = list( // same as unathi's organs, aside for the lungs as they need to be able to breathe on lavaland.
@@ -20,7 +20,7 @@
eyes = "vox_eyes_s"
species_traits = list(NO_CLONESCAN, IS_WHITELISTED)
species_traits = list(NO_CLONESCAN)
inherent_traits = list(TRAIT_NOGERMS, TRAIT_NODECAY)
clothing_flags = HAS_UNDERWEAR | HAS_UNDERSHIRT | HAS_SOCKS //Species-fitted 'em all.
dietflags = DIET_OMNI
@@ -144,7 +144,7 @@
eyes = "blank_eyes"
species_traits = list(NO_CLONESCAN, NO_BLOOD, IS_WHITELISTED)
species_traits = list(NO_CLONESCAN, NO_BLOOD)
inherent_traits = list(TRAIT_RESISTHEAT, TRAIT_RESISTCOLD, TRAIT_RESISTHIGHPRESSURE, TRAIT_RESISTLOWPRESSURE, TRAIT_NOFIRE, TRAIT_NOPAIN, TRAIT_NOGERMS, TRAIT_NODECAY)
clothing_flags = 0 //IDK if you've ever seen underwear on an Armalis, but it ain't pretty.
bodyflags = HAS_TAIL
+9 -11
View File
@@ -225,11 +225,9 @@
if(!SSticker || SSticker.current_state != GAME_STATE_PLAYING)
to_chat(usr, "<span class='warning'>The round is either not ready, or has already finished...</span>")
return
if(client.prefs.active_character.species in GLOB.whitelisted_species)
if(!can_use_species(src, client.prefs.active_character.species))
to_chat(src, alert("You are currently not whitelisted to play [client.prefs.active_character.species]."))
return FALSE
if(!can_use_species(src, client.prefs.active_character.species))
to_chat(src, alert("You are currently not whitelisted to play [client.prefs.active_character.species]."))
return FALSE
LateChoices()
@@ -245,10 +243,9 @@
if(client.prefs.toggles2 & PREFTOGGLE_2_RANDOMSLOT)
client.prefs.load_random_character_slot(client)
if(client.prefs.active_character.species in GLOB.whitelisted_species)
if(!can_use_species(src, client.prefs.active_character.species))
to_chat(src, alert("You are currently not whitelisted to play [client.prefs.active_character.species]."))
return FALSE
if(!can_use_species(src, client.prefs.active_character.species))
to_chat(src, alert("You are currently not whitelisted to play [client.prefs.active_character.species]."))
return FALSE
AttemptLateSpawn(href_list["SelectedJob"])
return
@@ -601,8 +598,9 @@
return check_rights(R_ADMIN, 0, src)
/mob/new_player/proc/is_species_whitelisted(datum/species/S)
if(!S) return 1
return can_use_species(src, S.name) || !(IS_WHITELISTED in S.species_traits)
if(!S)
return TRUE // Allow null species?
return can_use_species(src, S.name)
/mob/new_player/get_gender()
if(!client || !client.prefs) ..()