Hail Lii'dra (#17925)

* fsad

* uihj
This commit is contained in:
Fluffy
2023-12-13 19:06:40 +00:00
committed by GitHub
parent 04dc739845
commit e27a6f3070
58 changed files with 121 additions and 120 deletions
-1
View File
@@ -393,7 +393,6 @@
#include "code\datums\observation\instruments.dm"
#include "code\datums\observation\moved.dm"
#include "code\datums\observation\observation.dm"
#include "code\datums\observation\see_in_dark_set.dm"
#include "code\datums\observation\see_invisible_set.dm"
#include "code\datums\observation\set_invisibility.dm"
#include "code\datums\observation\shuttle_moved.dm"
-2
View File
@@ -32,8 +32,6 @@
#define SEE_INVISIBLE_OBSERVER 61
#define SEE_INVISIBLE_SYSTEM 99
#define SEE_IN_DARK_DEFAULT 2
#define SEE_INVISIBLE_MINIMUM 5
#define INVISIBILITY_MAXIMUM 100
#define INVISIBILITY_ABSTRACT 101 // Special invis value that can never be seen by see_invisible.
@@ -1,25 +0,0 @@
// Observer Pattern Implementation: See In Dark Set
// Registration type: /mob
//
// Raised when: A mob's see_in_dark value changes.
//
// Arguments that the called proc should expect:
// /mob/sightee: The mob that had its see_in_dark set
// /old_see_in_dark: see_in_dark before the change
// /new_see_in_dark: see_in_dark after the change
var/singleton/observ/see_in_dark_set/see_in_dark_set_event = new()
/singleton/observ/see_in_dark_set
name = "See In Dark Set"
expected_type = /mob
/***************************
* See In Dark Set Handling *
***************************/
/mob/proc/set_see_in_dark(var/new_see_in_dark)
var/old_see_in_dark = sight
if(old_see_in_dark != new_see_in_dark)
see_in_dark = new_see_in_dark
see_in_dark_set_event.raise_event(src, old_see_in_dark, new_see_in_dark)
@@ -1,6 +1,5 @@
/mob/abstract/hivemind
name = "internal hivemind"
see_in_dark = 2
see_invisible = SEE_INVISIBLE_LIVING
var/mob/living/carbon/human/changeling_mob // the head honcho
+1 -1
View File
@@ -79,7 +79,7 @@ Would like to add a law like "Law x is _______" where x = a number, and _____ is
//AI laws
for(var/mob/living/silicon/ai/M in living_mob_list)
if(M.stat != 2 && M.see_in_dark != 0)
if(M.stat != 2)
var/who2 = pick("ALIENS", "BEARS", "CLOWNS", "XENOS", "PETES", "BOMBS", "FETISHES", "WIZARDS", "SYNDICATE AGENTS", "CENTCOM OFFICERS", "SPACE PIRATES", "TRAITORS", "MONKEYS", "BEES", "CARP", "CRABS", "EELS", "BANDITS", "LIGHTS")
var/what2 = pick("BOLTERS", "STAVES", "DICE", "SINGULARITIES", "TOOLBOXES", "NETTLES", "AIRLOCKS", "CLOTHES", "WEAPONS", "MEDKITS", "BOMBS", "CANISTERS", "CHAIRS", "BBQ GRILLS", "ID CARDS", "CAPTAINS")
var/what2pref = pick("SOFT", "WARM", "WET", "COLD", "ICY", "SEXY", "UGLY", "CUBAN")
@@ -40,8 +40,6 @@ AI MODULES
if (comp.current.stat == 2 || comp.current.control_disabled == 1)
to_chat(usr, "Upload failed. No signal is being detected from the AI.")
else if (comp.current.see_in_dark == 0)
to_chat(usr, "Upload failed. Only a faint signal is being detected from the AI, and it is not responding to our requests. It may be low on power.")
else
src.transmitInstructions(comp.current, usr)
to_chat(comp.current, "These are your laws now:")
-2
View File
@@ -508,8 +508,6 @@ Traitors and the like can also be revived with the previous role mostly intact.
for(var/mob/living/silicon/ai/M in mob_list)
if (M.stat == 2)
to_chat(usr, "Upload failed. No signal is being detected from the AI.")
else if (M.see_in_dark == 0)
to_chat(usr, "Upload failed. Only a faint signal is being detected from the AI, and it is not responding to our requests. It may be low on power.")
else
M.add_ion_law(input)
for(var/mob/living/silicon/ai/O in mob_list)
@@ -16,7 +16,6 @@
var/acceleration = 1
var/owner_follows_eye = 0
see_in_dark = 7
status_flags = GODMODE
invisibility = INVISIBILITY_EYE
@@ -42,7 +42,6 @@
sight |= SEE_TURFS | SEE_MOBS | SEE_OBJS | SEE_SELF
see_invisible = SEE_INVISIBLE_OBSERVER
see_in_dark = 100
add_verb(src, /mob/abstract/observer/proc/dead_tele)
set_stat(DEAD)
@@ -873,12 +872,10 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp
if(on_restricted_level())
//On the restricted level they have the same sight as the mob
set_sight(sight&(~SEE_TURFS)&(~SEE_MOBS)&(~SEE_OBJS))
set_see_in_dark(2)
set_see_invisible(SEE_INVISIBLE_OBSERVER)
else
//Outside of the restrcited level, they have enhanced vision
set_sight(sight|SEE_TURFS|SEE_MOBS|SEE_OBJS)
set_see_in_dark(100)
set_see_invisible(SEE_INVISIBLE_LEVEL_TWO)
if (!seedarkness)
-1
View File
@@ -73,7 +73,6 @@
layer = MOB_LAYER
set_sight(sight|SEE_TURFS|SEE_MOBS|SEE_OBJS)
set_see_in_dark(8)
set_see_invisible(SEE_INVISIBLE_LEVEL_TWO)
drop_r_hand()
+49 -6
View File
@@ -190,22 +190,65 @@
SHOULD_NOT_SLEEP(TRUE)
return TRUE
// Language handling.
/mob/proc/add_language(var/language)
/**
* Adds a language to the known ones for the mob, returns `TRUE` if added successfully, `FALSE` otherwise
*
* Does NOT make it the default language
*
* * language - The language to add, can either be a `/datum/language` or a string, see the LANGUAGE_* defines in `code\__defines\species_languages.dm` for the strings
*/
/mob/proc/add_language(language)
SHOULD_NOT_SLEEP(TRUE)
var/datum/language/new_language
if(istype(language, /datum/language))
new_language = language
else
new_language = all_languages[language]
if (!istype(new_language) || !new_language)
CRASH("ERROR: Language [language] not found in list of all languages. The language you're looking for may have been moved, renamed, or removed. Please recheck the spelling of the name.")
if(!istype(new_language) || !new_language)
crash_with("ERROR: Language [language] not found in list of all languages. The language you're looking for may have been moved, renamed, or removed. Please recheck the spelling of the name.")
if(new_language in languages)
return 0
return FALSE
languages.Add(new_language)
return 1
return TRUE
/**
* Set default language for a `/mob/living`, return `TRUE` if set successfully, `FALSE` otherwise
*
* * language - The language to set as default, can either be a `/datum/language`, a string as per `LANGUAGE_*` defines in `code\__defines\species_languages.dm`,
* or `null` to remove the default language
*/
/mob/living/proc/set_default_language(language)
SHOULD_NOT_SLEEP(TRUE)
var/datum/language/new_default_language
if(istype(language, /datum/language))
new_default_language = language
else
new_default_language = all_languages[language]
if(!isnull(new_default_language) && !istype(new_default_language))
stack_trace("ERROR: Language [language] not found in list of all languages. The language you're looking for may have been moved, renamed, or removed. Please recheck the spelling of the name.")
return FALSE
if(!isnull(new_default_language) && !(new_default_language in languages))
stack_trace("Trying to set a default language that is not known by the mob! The language must first be added for it to be set as default!")
return FALSE
default_language = new_default_language
return TRUE
//Silicons can only speak languages listed in the `speech_synthesizer_langs`, even if they can understand more
/mob/living/silicon/set_default_language(language)
//Return FALSE if they can't speak this language
if(!(language in speech_synthesizer_langs))
return FALSE
. = ..()
/mob/proc/remove_language(var/rem_language)
var/datum/language/L = all_languages[rem_language]
+3 -1
View File
@@ -318,7 +318,9 @@
/datum/language/bug/check_speech_restrict(var/mob/speaker)
var/mob/living/carbon/human/H = speaker
var/obj/item/organ/internal/vaurca/neuralsocket/S = H.internal_organs_by_name[BP_NEURAL_SOCKET]
if(S.muted || S.disrupted)
//Black k'ois zombies don't have neural sockets but need to talk, hence check if the socket exists, or it will runtime for them
if(S && (S.muted || S.disrupted))
to_chat(speaker, SPAN_WARNING("You have been muted over the Hivenet!"))
return FALSE
else
@@ -96,14 +96,12 @@
if(stat == DEAD || HAS_FLAG(mutations, XRAY))
set_sight(sight|SEE_TURFS|SEE_MOBS|SEE_OBJS)
set_see_in_dark(8)
set_see_invisible(SEE_INVISIBLE_LEVEL_TWO)
else if(stat != DEAD && is_ventcrawling == FALSE)
if(species && species.vision_flags)
sight = species.vision_flags
else
set_sight(sight&(~SEE_TURFS)&(~SEE_MOBS)&(~SEE_OBJS))
set_see_in_dark(2)
set_see_invisible(SEE_INVISIBLE_LIVING)
if (healths)
@@ -167,11 +167,9 @@
/mob/living/carbon/brain/handle_regular_hud_updates()
if(stat == DEAD || HAS_FLAG(mutations, XRAY))
set_sight(sight|SEE_TURFS|SEE_MOBS|SEE_OBJS)
set_see_in_dark(8)
set_see_invisible(SEE_INVISIBLE_LEVEL_TWO)
else if(stat != DEAD)
set_sight(sight&(~SEE_TURFS)&(~SEE_MOBS)&(~SEE_OBJS))
set_see_in_dark(2)
set_see_invisible(SEE_INVISIBLE_LIVING)
if (healths)
@@ -196,11 +194,9 @@
if(stat == DEAD || HAS_FLAG(mutations, XRAY))
set_sight(sight|SEE_TURFS|SEE_MOBS|SEE_OBJS)
set_see_in_dark(8)
set_see_invisible(SEE_INVISIBLE_LEVEL_TWO)
else if(stat != DEAD)
set_sight(sight&(~SEE_TURFS)&(~SEE_MOBS)&(~SEE_OBJS))
set_see_in_dark(2)
set_see_invisible(SEE_INVISIBLE_LIVING)
if (client)
@@ -548,7 +548,6 @@
return 1
if(!H.druggy)
H.set_see_in_dark((H.sight == (SEE_TURFS|SEE_MOBS|SEE_OBJS)) ? 8 : min(darksight + H.equipment_darkness_modifier, 8))
if(H.seer)
var/obj/effect/rune/R = locate(/obj/effect/rune) in get_turf(H)
if(R && R.type == /datum/rune/see_invisible)
@@ -30,7 +30,7 @@
meat_type = /obj/item/reagent_containers/food/snacks/meat/bug
rarity_value = 4
slowdown = 1
darksight = 8 //USELESS
darksight = 8 //Allows you to see through black k'ois if the night vision is on
eyes = "vaurca_eyes" //makes it so that eye colour is not changed when skin colour is.
eyes_are_impermeable = TRUE
@@ -17,7 +17,6 @@
nutrition = 700
max_nutrition = 1200
see_in_dark = 8
update_slimes = 0
// canstun and canweaken don't affect slimes because they ignore stun and weakened variables
+12 -11
View File
@@ -1,26 +1,27 @@
/mob/living
var/datum/language/default_language
/mob/living/verb/set_default_language()
/mob/living/verb/set_default_language_verb()
set name = "Set Default Language"
set category = "IC"
var/datum/language/language = input(src, "Choose a language.", "Set Default Language") as null|anything in languages
if(language)
to_chat(src, "<span class='notice'>You will now speak [language] if you do not specify a language when speaking.</span>")
else
to_chat(src, "<span class='notice'>You will now speak whatever your standard default language is if you do not specify one when speaking.</span>")
default_language = language
if(!language)
to_chat(src, SPAN_NOTICE("You will keep speaking your current default language, by default."))
return
// Silicons can't neccessarily speak everything in their languages list
/mob/living/silicon/set_default_language(language as null|anything in speech_synthesizer_langs)
..()
var/set_result = set_default_language(language)
if(set_result)
to_chat(src, SPAN_NOTICE("You will now speak [language] if you do not specify a language when speaking."))
else
to_chat(src, SPAN_NOTICE("You are unable to speak [language], choose another one or keep using [default_language]."))
/mob/living/verb/check_default_language()
set name = "Check Default Language"
set category = "IC"
if(default_language)
to_chat(src, "<span class='notice'>You are currently speaking [default_language] by default.</span>")
to_chat(src, SPAN_NOTICE("You are currently speaking [default_language] by default."))
else
to_chat(src, "<span class='notice'>Your current default language is your species or mob type default.</span>")
to_chat(src, SPAN_NOTICE("Your current default language is your species or mob type default."))
-3
View File
@@ -162,7 +162,6 @@
/mob/living/proc/update_sight()
set_sight(0)
set_see_in_dark(0)
if(stat == DEAD || eyeobj)
update_dead_sight()
else
@@ -180,12 +179,10 @@
set_sight_flags &= ~BLIND
set_sight(set_sight_flags)
set_see_in_dark(initial(see_in_dark))
set_see_invisible(initial(see_invisible))
/mob/living/proc/update_dead_sight()
set_sight(sight|SEE_TURFS|SEE_MOBS|SEE_OBJS)
set_see_in_dark(8)
set_see_invisible(SEE_INVISIBLE_LEVEL_TWO)
/mob/living/proc/handle_hud_icons()
@@ -1,5 +1,4 @@
/mob/living
see_in_dark = 2
see_invisible = SEE_INVISIBLE_LIVING
//Health and life related vars
@@ -148,13 +148,11 @@
update_icon()
overlay_fullscreen("blind", /obj/screen/fullscreen/blind)
set_sight(sight&(~SEE_TURFS)&(~SEE_MOBS)&(~SEE_OBJS))
set_see_in_dark(0)
set_see_invisible(SEE_INVISIBLE_LIVING)
else if(stat == DEAD)
update_dead_sight()
else
set_sight(sight|SEE_TURFS|SEE_MOBS|SEE_OBJS)
set_see_in_dark(8)
set_see_invisible(SEE_INVISIBLE_LIVING)
/mob/living/silicon/ai/is_blind()
@@ -149,26 +149,20 @@
..()
if(stat == DEAD || HAS_FLAG(mutations, XRAY) || (sight_mode & BORGXRAY))
set_sight(sight|SEE_TURFS|SEE_MOBS|SEE_OBJS)
set_see_in_dark(8)
set_see_invisible(SEE_INVISIBLE_LEVEL_TWO)
else if((sight_mode & BORGMESON) && (sight_mode & BORGTHERM))
set_sight(sight|SEE_TURFS|SEE_MOBS)
set_see_in_dark(8)
set_see_invisible(SEE_INVISIBLE_NOLIGHTING)
else if(sight_mode & BORGMESON)
set_sight(sight|SEE_TURFS)
set_see_in_dark(8)
set_see_invisible(SEE_INVISIBLE_NOLIGHTING)
else if(sight_mode & BORGMATERIAL)
set_sight(sight|SEE_OBJS)
set_see_in_dark(8)
else if(sight_mode & BORGTHERM)
set_sight(sight|SEE_MOBS)
set_see_in_dark(8)
set_see_invisible(SEE_INVISIBLE_LEVEL_TWO)
else if(stat != DEAD)
set_sight(sight&(~SEE_TURFS)&(~SEE_MOBS)&(~SEE_OBJS))
set_see_in_dark(8)
set_see_invisible(SEE_INVISIBLE_LIVING)
switch(sensor_mode)
@@ -27,7 +27,6 @@
show_stat_health = TRUE
faction = "cult"
supernatural = TRUE
see_in_dark = 8
see_invisible = SEE_INVISIBLE_LEVEL_ONE
blood_type = "#000000"
@@ -14,7 +14,6 @@
organ_names = list("core", "harvesting array")
speed = -1
environment_smash = 1
see_in_dark = 7
attack_sound = 'sound/weapons/pierce.ogg'
can_repair = TRUE
construct_spells = list(
@@ -13,7 +13,6 @@
organ_names = list("core", "right arm", "left arm")
speed = -1
environment_smash = TRUE
see_in_dark = 7
attack_sound = 'sound/weapons/rapidslice.ogg'
construct_spells = list(/spell/targeted/ethereal_jaunt/shift)
@@ -77,7 +77,6 @@
emote_see = list("shakes its head")
speak_chance = 1
turns_per_move = 5
see_in_dark = 6
meat_amount = 30
organ_names = list("head", "chest", "right fore leg", "left fore leg", "right rear leg", "left rear leg")
response_help = "pets"
@@ -262,7 +261,6 @@
emote_see = list("shakes its head", "stomps its feet")
speak_chance = 1
turns_per_move = 5
see_in_dark = 6
organ_names = list("head", "chest", "right fore leg", "left fore leg", "right rear leg", "left rear leg")
response_help = "pets"
@@ -331,7 +329,6 @@
emote_see = list("shakes its head")
speak_chance = 1
turns_per_move = 5
see_in_dark = 6
meat_amount = 50
organ_names = list("head", "chest", "right fore leg", "left fore leg", "right rear leg", "left rear leg")
response_help = "pets"
@@ -15,7 +15,6 @@
emote_see = list("floats steadily", "inflates its gills")
speak_chance = 1
turns_per_move = 5
see_in_dark = 6
meat_type = /obj/item/reagent_containers/food/snacks/fish/carpmeat
organ_names = list("head", "chest", "tail", "left flipper", "right flipper")
response_help = "brushes"
@@ -16,7 +16,6 @@
emote_see = list("shakes their head", "shivers")
speak_chance = 1
turns_per_move = 5
see_in_dark = 6
meat_type = /obj/item/reagent_containers/food/snacks/meat
organ_names = list("head", "chest", "right fore leg", "left fore leg", "right rear leg", "left rear leg")
response_help = "pets"
@@ -19,7 +19,6 @@
response_help = "pets"
response_disarm = "bops"
response_harm = "kicks"
see_in_dark = 5
mob_size = 3.5
max_nutrition = 70 //Dogs are insatiable eating monsters. This scales with their mob size too
stomach_size_mult = 8
@@ -31,7 +31,6 @@
minbodytemp = 0
flying = TRUE
see_in_dark = 8
see_invisible = SEE_INVISIBLE_NOLIGHTING
/mob/living/simple_animal/cosmozoan/Initialize()
@@ -12,7 +12,6 @@
emote_see = list("shakes its head", "stamps a foot", "glares around")
speak_chance = 1
turns_per_move = 5
see_in_dark = 6
meat_type = /obj/item/reagent_containers/food/snacks/meat
meat_amount = 6
mob_size = 4.5//weight based on Chanthangi goats
@@ -89,7 +88,6 @@
emote_see = list("shakes its head")
speak_chance = 1
turns_per_move = 5
see_in_dark = 6
meat_type = /obj/item/reagent_containers/food/snacks/meat
meat_amount = 40 //Cows are huge, should be worth a lot of meat
organ_names = list("head", "chest", "right fore leg", "left fore leg", "right rear leg", "left rear leg")
@@ -134,7 +132,6 @@
emote_see = list("sways its tail")
speak_chance = 1
turns_per_move = 5
see_in_dark = 6
meat_type = /obj/item/reagent_containers/food/snacks/meat/pig
meat_amount = 20
organ_names = list("head", "chest", "right fore leg", "left fore leg", "right rear leg", "left rear leg")
@@ -6,7 +6,6 @@
emote_hear = list("glubs","glibs")
emote_see = list("flops around", "inflates its gills")
speak_chance = 1
see_in_dark = 6
density = FALSE
mob_size = MOB_SMALL
item_state = "fish"
@@ -13,7 +13,6 @@
emote_see = list("shakes its head", "shivers")
speak_chance = 1
turns_per_move = 5
see_in_dark = 6
meat_type = /obj/item/reagent_containers/food/snacks/meat
meat_amount = 3
organ_names = list("head", "chest", "right fore leg", "left fore leg", "right rear leg", "left rear leg")
@@ -26,7 +26,6 @@
pass_flags = PASSTABLE
speak_chance = 3
turns_per_move = 5
see_in_dark = 6
maxHealth = 5
health = 5
meat_type = /obj/item/reagent_containers/food/snacks/meat/rat
@@ -21,7 +21,6 @@
icon_dead = "rat_gray_dead"
icon_rest = "rat_gray_sleep"
see_in_dark = 8
see_invisible = SEE_INVISIBLE_NOLIGHTING
var/swarm_name = "peasentry"
@@ -101,7 +101,6 @@
environment_smash = 1
attack_emote = "wiggles toward"
see_in_dark = 10
see_invisible = SEE_INVISIBLE_NOLIGHTING
blood_type = "#281C2D"
@@ -132,7 +131,6 @@
mob_size = 5
attack_emote = "hums at"
see_in_dark = 10
see_invisible = SEE_INVISIBLE_NOLIGHTING
smart_ranged = TRUE
@@ -15,7 +15,6 @@
emote_see = list("stares ferociously", "stomps")
speak_chance = 10
turns_per_move = 10
see_in_dark = 6
meat_type = /obj/item/reagent_containers/food/snacks/bearmeat
meat_amount = 5
organ_names = list("chest", "lower body", "left arm", "right arm", "left leg", "right leg", "head")
@@ -31,7 +31,6 @@
attacktext = "mangled"
attack_sound = 'sound/weapons/bloodyslice.ogg'
see_in_dark = 8
see_invisible = SEE_INVISIBLE_NOLIGHTING
pixel_x = -16
speed = -1
@@ -37,7 +37,6 @@
attack_sound = 'sound/weapons/bloodyslice.ogg'
emote_sounds = list('sound/effects/creatures/bear_loud_1.ogg', 'sound/effects/creatures/bear_loud_2.ogg', 'sound/effects/creatures/bear_loud_3.ogg', 'sound/effects/creatures/bear_loud_4.ogg')
see_in_dark = 8
see_invisible = SEE_INVISIBLE_NOLIGHTING
minbodytemp = 0
@@ -167,7 +166,6 @@
attacktext = "mangled"
attack_sound = 'sound/weapons/bloodyslice.ogg'
see_in_dark = 8
see_invisible = SEE_INVISIBLE_NOLIGHTING
pass_flags = PASSTABLE
@@ -16,7 +16,6 @@
speak_chance = 1
turns_per_move = 7
see_in_dark = 6
speak = list("Woof!", "Bark!", "AUUUUUU!","AwooOOOoo!")
speak_emote = list("barks", "woofs")
@@ -20,7 +20,6 @@
speak_chance = 1
turns_per_move = 7
see_in_dark = 6
speak = list("Rawr!", "Gawrgle!", "Bizzbop!", "Bweeewoooo!")
speak_emote = list("roars pitifully", "squeals out a mechanical attempt at a growl")
@@ -19,7 +19,6 @@
emote_hear = list("chitters")
speak_chance = 5
turns_per_move = 5
see_in_dark = 10
meat_amount = 3
meat_type = /obj/item/reagent_containers/food/snacks/xenomeat
organ_names = list("thorax", "legs", "head")
@@ -31,7 +31,6 @@
tameable = FALSE
flying = TRUE
smart_melee = FALSE
see_in_dark = 8
pass_flags = PASSTABLE|PASSRAILING
emote_hear = list("emits a harsh noise")
emote_sounds = list(
@@ -33,7 +33,6 @@
max_n2 = 0
minbodytemp = 0
speed = -10
see_in_dark = 8
destroy_surroundings = 0
var/bot_type
var/bot_amt = 160 //Number of total bots that are spawned before the beacon disappears completely.
@@ -30,7 +30,6 @@
tameable = FALSE
flying = 1
mob_size = MOB_LARGE
see_in_dark = 8
pass_flags = PASSTABLE|PASSRAILING
attack_emote = "focuses on"
var/mob/living/simple_animal/hostile/hivebotbeacon/linked_parent = null
@@ -56,7 +56,6 @@
tameable = FALSE
flying = TRUE
see_in_dark = 8
see_invisible = SEE_INVISIBLE_NOLIGHTING
psi_pingable = FALSE
@@ -30,7 +30,6 @@
attacktext = "punished"
attack_sound = 'sound/weapons/bladeslice.ogg'
see_in_dark = 8
see_invisible = SEE_INVISIBLE_NOLIGHTING
minbodytemp = 0
@@ -32,7 +32,6 @@
melee_damage_lower = 12
melee_damage_upper = 16
see_in_dark = 8
see_invisible = SEE_INVISIBLE_NOLIGHTING
stop_sight_update = TRUE
@@ -31,7 +31,6 @@
mob_swap_flags = HUMAN|SIMPLE_ANIMAL|SLIME|MONKEY
mob_push_flags = ALLMOBS
see_in_dark = 8
see_invisible = SEE_INVISIBLE_NOLIGHTING
minbodytemp = 0
@@ -194,7 +194,6 @@
tameable = FALSE
flying = TRUE
see_in_dark = 8
see_invisible = SEE_INVISIBLE_NOLIGHTING
emote_sounds = list('sound/effects/creatures/PRA_drone.ogg')
@@ -37,7 +37,6 @@
name = "carnivorous aquatic creature"
desc = "A threatening-looking aquatic creature with a mouth full of densely-packed, razor sharp teeth."
emote_see = list("swishes around elegantly", "floats threateningly")
see_in_dark = 6
mob_size = MOB_LARGE
icon_state = "thresher"
icon_living = "thresher"
@@ -45,7 +45,6 @@
faction = "cavern"
flying = TRUE
see_in_dark = 8
see_invisible = SEE_INVISIBLE_NOLIGHTING
/mob/living/simple_animal/hostile/retaliate/cavern_dweller/Allow_Spacemove(var/check_drift = 0)
@@ -110,7 +109,6 @@
minbodytemp = 0
light_range = 10
light_wedge = LIGHT_WIDE
see_in_dark = 8
psi_pingable = FALSE
faction = "sol"
@@ -92,7 +92,6 @@
desc = "The gaping maw opens and closes eternally, insatiably... Rumours however tell that those who can sate it are rewarded."
icon = 'icons/mob/npc/cavern.dmi'
icon_state = "sarlacc"
see_in_dark = 8
health = 100
maxHealth = 100
gender = NEUTER
@@ -313,7 +312,6 @@
desc = "This pulsating brain seems somehow connected to all the other orifices in this room..."
icon = 'icons/mob/npc/cavern.dmi'
icon_state = "sarlaccbrain"
see_in_dark = 8
see_invisible = SEE_INVISIBLE_NOLIGHTING
universal_speak = 1
@@ -48,7 +48,6 @@
attack_emote = "nashes at"
flying = TRUE
see_in_dark = 8
see_invisible = SEE_INVISIBLE_NOLIGHTING
/mob/living/simple_animal/hostile/carp/update_icon()
@@ -291,5 +290,4 @@
attack_emote = "nashes at"
flying = TRUE
see_in_dark = 8
see_invisible = SEE_INVISIBLE_NOLIGHTING
@@ -13,7 +13,6 @@
emote_hear = list("chitters")
speak_chance = 5
turns_per_move = 5
see_in_dark = 10
see_invisible = SEE_INVISIBLE_NOLIGHTING
meat_type = /obj/item/reagent_containers/food/snacks/xenomeat
organ_names = list("thorax", "legs", "head")
+4
View File
@@ -6,6 +6,10 @@
sight = DEFAULT_SIGHT
var/datum/mind/mind
// we never want to hide a turf because it's not lit
// We can rely on the lighting plane to handle that for us
see_in_dark = 1e6
var/stat = 0 //Whether a mob is alive or dead. TODO: Move this to living - Nodrak
can_be_buckled = TRUE
+4
View File
@@ -230,8 +230,12 @@
owner.remove_language(L.name)
owner.add_language(LANGUAGE_VAURCA)
owner.add_language(LANGUAGE_LIIDRA)
owner.set_default_language(LANGUAGE_LIIDRA)
removed_langs = TRUE
owner.set_see_invisible(SEE_INVISIBLE_NOLIGHTING)
owner.add_client_color(/datum/client_color/vaurca)
if(prob(10))
if(owner.can_feel_pain())
to_chat(owner, SPAN_WARNING("You feel an unbearable pain in your mind!"))
@@ -0,0 +1,47 @@
################################
# Example Changelog File
#
# Note: This file, and files beginning with ".", and files that don't end in ".yml" will not be read. If you change this file, you will look really dumb.
#
# Your changelog will be merged with a master changelog. (New stuff added only, and only on the date entry for the day it was merged.)
# When it is, any changes listed below will disappear.
#
# Valid Prefixes:
# bugfix
# wip (For works in progress)
# tweak
# soundadd
# sounddel
# rscadd (general adding of nice things)
# rscdel (general deleting of nice things)
# imageadd
# imagedel
# maptweak
# spellcheck (typo fixes)
# experiment
# balance
# admin
# backend
# security
# refactor
#################################
# Your name.
author: FluffyGhost
# Optional: Remove this file after generating master changelog. Useful for PR changelogs that won't get used again.
delete-after: True
# Any changes you've made. See valid prefix list above.
# INDENT WITH TWO SPACES. NOT TABS. SPACES.
# SCREW THIS UP AND IT WON'T WORK.
# Also, all entries are changed into a single [] after a master changelog generation. Just remove the brackets when you add new entries.
# Please surround your changes in double quotes ("), as certain characters otherwise screws up compiling. The quotes will not show up in the changelog.
changes:
- bugfix: "Liidra zombies now speak Liidraic by default."
- bugfix: "Fixed a runtime that prevented the Liidra zombies from speaking in the hivenet."
- rscadd: "Liidra zombies now see in the dark, like their Vaurca counterparts."
- backend: "Refactored set_default_language into a proc, updated the verbs that interact with it."
- backend: "Minor refactor of the set default language verb."
- backend: "DMDoc'd add_language and minor refactor of it."
- backend: "Removed see_in_dark related things, set it as per TG, we rely on the lighting plane only now."