Merge remote-tracking branch 'origin/master' into perlin-genny
This commit is contained in:
@@ -477,6 +477,10 @@
|
||||
name = "Messy"
|
||||
icon_state = "hair_messy"
|
||||
|
||||
/datum/sprite_accessory/hair/messy2
|
||||
name = "Messy2"
|
||||
icon_state = "hair_messy2"
|
||||
|
||||
/datum/sprite_accessory/hair/modern
|
||||
name = "Modern"
|
||||
icon_state = "hair_modern"
|
||||
|
||||
@@ -334,7 +334,9 @@
|
||||
I.moveToNullspace()
|
||||
else
|
||||
I.forceMove(newloc)
|
||||
I.dropped(src, silent)
|
||||
on_item_dropped(I)
|
||||
if(I.dropped(src) == ITEM_RELOCATED_BY_DROPPED)
|
||||
return FALSE
|
||||
return TRUE
|
||||
|
||||
//This is a SAFE proc. Use this instead of equip_to_slot()!
|
||||
|
||||
@@ -1237,7 +1237,7 @@
|
||||
if(user.incapacitated() || !user.Adjacent(src))
|
||||
return FALSE
|
||||
if(W && user.a_intent == INTENT_HELP && W.can_give())
|
||||
user.give()
|
||||
user.give(src)
|
||||
return TRUE
|
||||
|
||||
/mob/living/carbon/verb/give_verb()
|
||||
@@ -1253,4 +1253,4 @@
|
||||
var/obj/item/I = usr.get_active_held_item()
|
||||
var/mob/living/carbon/C = usr
|
||||
if(I.can_give())
|
||||
C.give()
|
||||
C.give(src)
|
||||
|
||||
@@ -41,10 +41,10 @@
|
||||
|
||||
. += "[t_He] [t_is] wearing [w_uniform.get_examine_string(user)][accessory_msg]."
|
||||
//head
|
||||
if(head)
|
||||
if(head && !(head.item_flags & EXAMINE_SKIP))
|
||||
. += "[t_He] [t_is] wearing [head.get_examine_string(user)] on [t_his] head."
|
||||
//suit/armor
|
||||
if(wear_suit)
|
||||
if(wear_suit && !(wear_suit.item_flags & EXAMINE_SKIP))
|
||||
. += "[t_He] [t_is] wearing [wear_suit.get_examine_string(user)]."
|
||||
//suit/armor storage
|
||||
if(s_store && !(SLOT_S_STORE in obscured))
|
||||
|
||||
@@ -625,7 +625,7 @@
|
||||
say_mod = "clicks"
|
||||
limbs_id = "clockgolem"
|
||||
info_text = "<span class='bold alloy'>As a </span><span class='bold brass'>Clockwork Golem</span><span class='bold alloy'>, you are faster than other types of golems, and are capable of using guns. On death, you will break down into scrap.</span>"
|
||||
species_traits = list(NOBLOOD,NO_UNDERWEAR,NOEYES,NOGENITALS,NOAROUSAL)
|
||||
species_traits = list(NOBLOOD,NO_UNDERWEAR,NOEYES,NOGENITALS,NOAROUSAL,ROBOTIC_LIMBS)
|
||||
inherent_biotypes = MOB_ROBOTIC|MOB_HUMANOID
|
||||
inherent_traits = list(TRAIT_RESISTHEAT,TRAIT_NOBREATH,TRAIT_RESISTCOLD,TRAIT_RESISTHIGHPRESSURE,TRAIT_RESISTLOWPRESSURE,TRAIT_NOFIRE,TRAIT_RADIMMUNE,TRAIT_PIERCEIMMUNE,TRAIT_NODISMEMBER)
|
||||
inherent_biotypes = MOB_ROBOTIC|MOB_HUMANOID
|
||||
@@ -667,6 +667,10 @@
|
||||
|
||||
/datum/species/golem/clockwork/no_scrap //These golems are created through the herald's beacon and leave normal corpses on death.
|
||||
id = "clockwork golem servant"
|
||||
species_traits = list(NOBLOOD,NO_UNDERWEAR,NOEYES,NOSTOMACH,NOLIVER,NOGENITALS,NOAROUSAL,NOTRANSSTING,ROBOTIC_LIMBS,HAS_BONE)
|
||||
inherent_biotypes = MOB_ROBOTIC|MOB_HUMANOID
|
||||
inherent_traits = list(TRAIT_RESISTHEAT,TRAIT_NOBREATH,TRAIT_RESISTCOLD,TRAIT_NOHUNGER,TRAIT_RESISTHIGHPRESSURE,TRAIT_RESISTLOWPRESSURE,TRAIT_NOFIRE,TRAIT_RADIMMUNE,TRAIT_PIERCEIMMUNE,TRAIT_NODISMEMBER)
|
||||
inherent_biotypes = MOB_ROBOTIC|MOB_HUMANOID
|
||||
armor = 15 //Balance reasons make this armor weak
|
||||
no_equip = list()
|
||||
nojumpsuit = FALSE
|
||||
@@ -675,6 +679,8 @@
|
||||
dangerous_existence = TRUE
|
||||
random_eligible = FALSE
|
||||
info_text = "<span class='bold alloy'>As a </span><span class='bold brass'>Clockwork Golem Servant</span><span class='bold alloy'>, you are faster than other types of golems, and are capable of using guns.</span>" //warcult golems leave a corpse
|
||||
gib_types = list(/obj/effect/gibspawner/ipc, /obj/effect/gibspawner/ipc/bodypartless)
|
||||
|
||||
|
||||
/datum/species/golem/cloth
|
||||
name = "Cloth Golem"
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
* Splits off into PhysicalLife() and BiologicalLife(). Override those instead of this.
|
||||
*/
|
||||
/mob/living/proc/Life(seconds, times_fired)
|
||||
//SHOULD_NOT_SLEEP(TRUE)
|
||||
SHOULD_NOT_SLEEP(TRUE)
|
||||
if(mob_transforming)
|
||||
return
|
||||
|
||||
@@ -24,7 +24,7 @@
|
||||
break
|
||||
var/msg = "[key_name_admin(src)] [ADMIN_JMP(src)] was found to have no .loc with an attached client, if the cause is unknown it would be wise to ask how this was accomplished."
|
||||
message_admins(msg)
|
||||
send2tgs_adminless_only("Mob", msg, R_ADMIN)
|
||||
INVOKE_ASYNC(GLOBAL_PROC, .proc/send2tgs_adminless_only, "Mob", msg, R_ADMIN)
|
||||
log_game("[key_name(src)] was found to have no .loc with an attached client.")
|
||||
|
||||
// This is a temporary error tracker to make sure we've caught everything
|
||||
|
||||
@@ -514,10 +514,21 @@
|
||||
/mob/living/ratvar_act()
|
||||
if(status_flags & GODMODE)
|
||||
return
|
||||
if(stat != DEAD && !is_servant_of_ratvar(src))
|
||||
if(stat == DEAD || is_servant_of_ratvar(src))
|
||||
return
|
||||
if(is_eligible_servant(src))
|
||||
add_servant_of_ratvar(src)
|
||||
to_chat(src, "<span class='heavy_brass'>Ratvar's influence invades your mind, praise the Justiciar!</span>")
|
||||
else
|
||||
to_chat(src, "<span class='userdanger'>A blinding light boils you alive! <i>Run!</i></span>")
|
||||
adjust_fire_stacks(20)
|
||||
adjustFireLoss(35)
|
||||
IgniteMob()
|
||||
if(iscultist(src))
|
||||
to_chat(src, "<span class='userdanger'>You resist Ratvar's influence... but not all of it! <i>Run!</i></span>")
|
||||
adjustFireLoss(35)
|
||||
if(src && reagents)
|
||||
reagents.add_reagent(/datum/reagent/fuel/holyoil, 5)
|
||||
return FALSE
|
||||
|
||||
|
||||
|
||||
@@ -200,7 +200,7 @@
|
||||
if(option == "Random")
|
||||
iconstates[option] = image(icon = src.icon, icon_state = "ai-random")
|
||||
continue
|
||||
iconstates[option] = image(icon = src.icon, icon_state = resolve_ai_icon(option))
|
||||
iconstates[option] = image(icon = src.icon, icon_state = resolve_ai_icon(option, radial_preview = TRUE))
|
||||
|
||||
view_core()
|
||||
var/ai_core_icon = show_radial_menu(src, src , iconstates, radius = 42)
|
||||
|
||||
@@ -23,13 +23,17 @@
|
||||
if(module.cyborg_base_icon == "robot")
|
||||
icon = 'icons/mob/robots.dmi'
|
||||
pixel_x = initial(pixel_x)
|
||||
if(stat != DEAD && !(IsUnconscious() ||IsStun() || IsKnockdown() || IsParalyzed() || low_power_mode)) //Not dead, not stunned.
|
||||
if(stat != DEAD && !(IsUnconscious() || IsStun() || IsParalyzed() || low_power_mode)) //Not dead, not stunned.
|
||||
if(!eye_lights)
|
||||
eye_lights = new()
|
||||
if(lamp_intensity > 2)
|
||||
if(lamp_enabled || lamp_doom)
|
||||
eye_lights.icon_state = "[module.special_light_key ? "[module.special_light_key]":"[module.cyborg_base_icon]"]_l"
|
||||
eye_lights.color = lamp_doom? COLOR_RED : lamp_color
|
||||
eye_lights.plane = 19 //glowy eyes
|
||||
else
|
||||
eye_lights.icon_state = "[module.special_light_key ? "[module.special_light_key]":"[module.cyborg_base_icon]"]_e[is_servant_of_ratvar(src) ? "_r" : ""]"
|
||||
eye_lights.color = COLOR_WHITE
|
||||
eye_lights.plane = -1
|
||||
eye_lights.icon = icon
|
||||
add_overlay(eye_lights)
|
||||
|
||||
|
||||
@@ -1059,5 +1059,5 @@ Pass a positive integer as an argument to override a bot's default speed.
|
||||
I.icon_state = null
|
||||
path.Cut(1, 2)
|
||||
|
||||
/mob/living/silicon/rust_heretic_act()
|
||||
/mob/living/simple_animal/bot/rust_heretic_act()
|
||||
adjustBruteLoss(500)
|
||||
|
||||
@@ -192,6 +192,11 @@
|
||||
back.contract_next_chain_into_single_tile()
|
||||
return
|
||||
|
||||
/mob/living/simple_animal/hostile/eldritch/armsy/proc/get_length()
|
||||
. += 1
|
||||
if(back)
|
||||
. += back.get_length()
|
||||
|
||||
///Updates the next mob in the chain to move to our last location, fixed the worm if somehow broken.
|
||||
/mob/living/simple_animal/hostile/eldritch/armsy/proc/update_chain_links()
|
||||
gib_trail()
|
||||
|
||||
@@ -425,7 +425,9 @@
|
||||
/mob/living/simple_animal/pet/dog/corgi/Ian/BiologicalLife()
|
||||
if(!(. = ..()))
|
||||
return
|
||||
INVOKE_ASYNC(src, .proc/corgi_ai_behavior)
|
||||
|
||||
/mob/living/simple_animal/pet/dog/corgi/Ian/proc/corgi_ai_behavior()
|
||||
//Feeding, chasing food, FOOOOODDDD
|
||||
if(!stat && CHECK_MULTIPLE_BITFIELDS(mobility_flags, MOBILITY_STAND|MOBILITY_MOVE) && !buckled)
|
||||
turns_since_scan++
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
var/datum/boss_active_timed_battle/atb
|
||||
var/point_regen_delay = 20
|
||||
var/point_regen_amount = 1
|
||||
|
||||
sentience_type = SENTIENCE_BOSS
|
||||
|
||||
/mob/living/simple_animal/hostile/boss/Initialize()
|
||||
. = ..()
|
||||
|
||||
Reference in New Issue
Block a user