mirror of
https://github.com/CHOMPStation2/CHOMPStation2.git
synced 2026-08-30 16:48:12 +01:00
Merge branch 'master' into DesertTiles
This commit is contained in:
@@ -0,0 +1,7 @@
|
||||
/mob/observer
|
||||
var/mob/living/body_backup = null //add reforming
|
||||
|
||||
/mob/observer/Destroy()
|
||||
if(body_backup)
|
||||
qdel(body_backup)
|
||||
..()
|
||||
@@ -0,0 +1,7 @@
|
||||
/obj/item/device/mmi
|
||||
var/mob/living/body_backup = null //add reforming
|
||||
|
||||
/obj/item/device/mmi/Destroy()
|
||||
if(body_backup)
|
||||
qdel(body_backup)
|
||||
..()
|
||||
@@ -0,0 +1,20 @@
|
||||
/mob/living/carbon/human/verb/hide_nutrition()
|
||||
set name = "Show/Hide Nutrition Levels"
|
||||
set category = "IC"
|
||||
set desc = "Allow other player to see your current nutrition level or not."
|
||||
nutrition_hidden = !nutrition_hidden
|
||||
to_chat(src, "Players will [nutrition_hidden ? "no longer" : "now"] see your nutrition levels.")
|
||||
|
||||
/mob/living/carbon/human/proc/toggle_speech_sounds()
|
||||
set name = "Toggle Species Speech Sounds"
|
||||
set desc = "Toggle if your species defined speech sound has a chance of playing on a Say"
|
||||
set category = "IC"
|
||||
|
||||
if(stat)
|
||||
to_chat(src, "<span class='warning'>You must be awake and standing to perform this action!</span>")
|
||||
return
|
||||
|
||||
speech_sound_enabled = !speech_sound_enabled
|
||||
to_chat(src, "You will [speech_sound_enabled ? "now" : "no longer"] have a chance to play your species defined speech sound on a Say.")
|
||||
|
||||
return TRUE
|
||||
@@ -22,4 +22,11 @@
|
||||
set category = "IC"
|
||||
set desc = "Toggle headset worn icon visibility."
|
||||
hide_headset = !hide_headset
|
||||
update_inv_ears()
|
||||
update_inv_ears()
|
||||
|
||||
/mob/living/carbon/human/verb/hide_glasses()
|
||||
set name = "Show/Hide Glasses"
|
||||
set category = "IC"
|
||||
set desc = "Toggle glasses worn icon visibility."
|
||||
hide_glasses = !hide_glasses
|
||||
update_inv_glasses()
|
||||
@@ -9,4 +9,7 @@
|
||||
vore_icon_bellies = list("stomach", "taur belly")
|
||||
var/struggle_anim_stomach = FALSE
|
||||
var/struggle_anim_taur = FALSE
|
||||
var/hide_headset = FALSE
|
||||
var/hide_headset = FALSE
|
||||
var/hide_glasses = FALSE
|
||||
var/speech_sound_enabled = TRUE
|
||||
var/nutrition_hidden = FALSE
|
||||
|
||||
@@ -0,0 +1,5 @@
|
||||
/datum/species/vox
|
||||
speech_chance = 50 // As long as we're making the option to disable it, might as well bump up the chances when it is enabled
|
||||
inherent_verbs = list(
|
||||
/mob/living/carbon/human/proc/toggle_speech_sounds
|
||||
)
|
||||
@@ -1,6 +1,22 @@
|
||||
/datum/species
|
||||
var/crit_mod = 1
|
||||
var/vore_belly_default_variant = "H"
|
||||
var/list/env_traits = list()
|
||||
var/dirtslip = FALSE
|
||||
var/photosynthesizing = FALSE
|
||||
var/grows = FALSE
|
||||
var/shrinks = FALSE
|
||||
var/rad_levels = list("safe" = 2.5, "danger_1" = 50, "danger_2" = 75, "danger_3" = 150)
|
||||
var/rad_removal_mod = 1
|
||||
var/bite_mod = 1
|
||||
var/grab_resist_divisor_victims = 1
|
||||
var/grab_resist_divisor_self = 1
|
||||
var/grab_power_victims = 0
|
||||
var/grab_power_self = 0
|
||||
var/waking_speed = 1
|
||||
var/mudking = FALSE
|
||||
var/icodigi = 'modular_chomp/icons/mob/human_races/r_digi.dmi'
|
||||
var/digi_allowed = FALSE
|
||||
|
||||
// Handles non-standard eyes when using a species that utilizes a custom base icon set.
|
||||
// Eye data is stored in the head organ, and this needs to be handled specially.
|
||||
@@ -27,4 +43,9 @@
|
||||
|
||||
if(!QDELETED(baseHead) && baseHead)
|
||||
qdel(baseHead)
|
||||
return
|
||||
|
||||
/datum/species/handle_environment_special(var/mob/living/carbon/human/H)
|
||||
for(var/datum/trait/env_trait in env_traits)
|
||||
env_trait.handle_environment_special(H)
|
||||
return
|
||||
@@ -1,2 +1,74 @@
|
||||
/datum/species/unathi
|
||||
vore_belly_default_variant = "L"
|
||||
//Any species commented out here must be made restricted elsewhere. They are kept here for easy reference of what we disabled.
|
||||
//Note that at the time of this PR we are simply disabling everything new to discuss keeping versus scrapping later.
|
||||
|
||||
///datum/species/zaddat
|
||||
// spawn_flags = SPECIES_IS_RESTRICTED //Species has been enabled elsewhere.
|
||||
|
||||
///datum/species/crew_shadekin
|
||||
// spawn_flags = SPECIES_IS_RESTRICTED
|
||||
|
||||
/datum/species/human/gravworlder
|
||||
spawn_flags = SPECIES_IS_RESTRICTED
|
||||
|
||||
/datum/species/human/spacer
|
||||
spawn_flags = SPECIES_IS_RESTRICTED
|
||||
|
||||
///datum/species/alraune
|
||||
// spawn_flags = SPECIES_IS_RESTRICTED //Species has been enabled, keeping this here for reference.
|
||||
|
||||
///datum/species/werebeast
|
||||
// spawn_flags = SPECIES_IS_RESTRICTED
|
||||
|
||||
/datum/species/shadekin_yw
|
||||
spawn_flags = SPECIES_IS_RESTRICTED
|
||||
|
||||
/datum/species/shadekin
|
||||
//spawn_flags = SPECIES_IS_RESTRICTED
|
||||
|
||||
//datum/species/protean
|
||||
// spawn_flags = SPECIES_IS_RESTRICTED
|
||||
|
||||
//TFF 20/1/20 - More whitelisted species listed here. Unable to force overrides to be enabled here.
|
||||
/*
|
||||
/datum/species/xenochimera
|
||||
spawn_flags = SPECIES_CAN_JOIN | SPECIES_IS_WHITELISTED | SPECIES_WHITELIST_SELECTABLE
|
||||
|
||||
/datum/species/diona
|
||||
spawn_flags = SPECIES_CAN_JOIN | SPECIES_IS_WHITELISTED | SPECIES_WHITELIST_SELECTABLE
|
||||
|
||||
/datum/species/vox
|
||||
spawn_flags = SPECIES_CAN_JOIN | SPECIES_IS_WHITELISTED | SPECIES_WHITELIST_SELECTABLE
|
||||
*/
|
||||
|
||||
//Can use digitigrade flags
|
||||
/datum/species/custom
|
||||
digi_allowed = TRUE
|
||||
|
||||
/datum/species/unathi
|
||||
digi_allowed = TRUE
|
||||
vore_belly_default_variant = "L"
|
||||
|
||||
/datum/species/tajaran
|
||||
digi_allowed = TRUE
|
||||
|
||||
/datum/species/hi_zoxxen
|
||||
digi_allowed = TRUE
|
||||
|
||||
/datum/species/sergal
|
||||
digi_allowed = TRUE
|
||||
|
||||
/datum/species/akula
|
||||
digi_allowed = TRUE
|
||||
|
||||
/datum/species/nevrean
|
||||
digi_allowed = TRUE
|
||||
|
||||
/datum/species/vulpkanin
|
||||
digi_allowed = TRUE
|
||||
|
||||
/datum/species/xenohybrid
|
||||
digi_allowed = TRUE
|
||||
|
||||
/datum/species/xenochimera
|
||||
digi_allowed = TRUE
|
||||
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
//speech sounds
|
||||
var/list/speech_sounds = list()
|
||||
var/speech_chance = 75 //mobs can be a bit more emotive than carbon/humans
|
||||
var/speech_sound_enabled = TRUE
|
||||
|
||||
//vars for vore_icons toggle control
|
||||
var/vore_icons_cache = null // null by default. Going from ON to OFF should store vore_icons val here, OFF to ON reset as null
|
||||
@@ -34,8 +35,22 @@
|
||||
|
||||
update_icon()
|
||||
|
||||
/mob/living/simple_mob/verb/toggle_speech_sounds()
|
||||
set name = "Toggle Species Speech Sounds"
|
||||
set desc = "Toggle if your species defined speech sound has a chance of playing on a Say"
|
||||
set category = "IC"
|
||||
|
||||
if(stat)
|
||||
to_chat(src, "<span class='warning'>You must be awake and standing to perform this action!</span>")
|
||||
return
|
||||
|
||||
speech_sound_enabled = !speech_sound_enabled
|
||||
to_chat(src, "You will [speech_sound_enabled ? "now" : "no longer"] have a chance to play your species defined speech sound on a Say.")
|
||||
|
||||
return TRUE
|
||||
|
||||
/mob/living/simple_mob/handle_speech_sound()
|
||||
if(speech_sounds && speech_sounds.len && prob(speech_chance))
|
||||
if(speech_sound_enabled && speech_sounds && speech_sounds.len && prob(speech_chance))
|
||||
var/list/returns[2]
|
||||
returns[1] = sound(pick(speech_sounds))
|
||||
returns[2] = 50
|
||||
@@ -82,6 +97,3 @@
|
||||
|
||||
// This from original living.dm update_transforms too
|
||||
handle_status_indicators()
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -87,7 +87,7 @@
|
||||
var/datum/action/innate/xeno_ch/xeno_corrode/corrode_action = new
|
||||
var/datum/action/innate/xeno_ch/xeno_pounce/pounce_action = new
|
||||
var/datum/action/innate/xeno_ch/xeno_spin/spin_action = new
|
||||
|
||||
|
||||
can_be_drop_prey = FALSE //CHOMP Add
|
||||
|
||||
/mob/living/simple_mob/xeno_ch/Initialize()
|
||||
@@ -99,6 +99,7 @@
|
||||
. = ..()
|
||||
faction = "neutral"
|
||||
verbs |= /mob/living/simple_mob/xeno_ch/proc/xeno_build
|
||||
verbs |= /mob/living/simple_mob/verb/toggle_speech_sounds
|
||||
build_action.Grant(src)
|
||||
|
||||
|
||||
|
||||
@@ -1,9 +1,10 @@
|
||||
/mob
|
||||
var/voice_freq = 42500 // Preference for character voice frequency
|
||||
var/list/voice_sounds_list = list() // The sound list containing our voice sounds!
|
||||
var/enabled = TRUE //Pauses a mob if disabled (Prevents life ticks from happening)
|
||||
var/died_in_vr = FALSE //For virtual reality sleepers
|
||||
|
||||
/mob/is_incorporeal()
|
||||
if(incorporeal_move)
|
||||
return 1
|
||||
..()
|
||||
..()
|
||||
|
||||
@@ -163,4 +163,22 @@
|
||||
name = "Thick Throat"
|
||||
icon_state = "thickthroat"
|
||||
body_parts = list(BP_HEAD)
|
||||
color_blend_mode = ICON_MULTIPLY
|
||||
|
||||
/datum/sprite_accessory/marking/ch/fangs2
|
||||
name = "Forward Fangs"
|
||||
icon_state = "fangs2"
|
||||
body_parts = list(BP_HEAD)
|
||||
color_blend_mode = ICON_MULTIPLY
|
||||
|
||||
/datum/sprite_accessory/marking/ch/fangs3
|
||||
name = "Further Forward Fangs"
|
||||
icon_state = "fangs3"
|
||||
body_parts = list(BP_HEAD)
|
||||
color_blend_mode = ICON_MULTIPLY
|
||||
|
||||
/datum/sprite_accessory/marking/ch/normeyes
|
||||
name = "Normal Eyes"
|
||||
icon_state = "normeyes"
|
||||
body_parts = list(BP_HEAD)
|
||||
color_blend_mode = ICON_MULTIPLY
|
||||
@@ -1,3 +1,7 @@
|
||||
/datum/sprite_accessory/tail
|
||||
lower_layer_dirs = list(SOUTH, WEST, EAST)
|
||||
|
||||
|
||||
/datum/sprite_accessory/tail/anthrovirus_tail
|
||||
name = "Anthro Virus Tail"
|
||||
icon = 'icons/mob/vore/tails_ch.dmi'
|
||||
|
||||
Reference in New Issue
Block a user