Merge remote-tracking branch 'upstream/master' into hudpatches
This commit is contained in:
@@ -1315,15 +1315,15 @@ GLOBAL_LIST_EMPTY(custom_outfits) //Admin created outfits
|
||||
var/obj/item/reagent_containers/food/snacks/pie/cream/nostun/creamy = new(get_turf(target))
|
||||
creamy.splat(target)
|
||||
if (ADMIN_PUNISHMENT_CUSTOM_PIE)
|
||||
var/obj/item/reagent_containers/food/snacks/pie/cream/nostun/A = new(get_turf(target))
|
||||
var/obj/item/reagent_containers/food/snacks/pie/cream/nostun/A = new()
|
||||
if(!A.reagents)
|
||||
var/amount = input(usr, "Specify the reagent size of [A]", "Set Reagent Size", 50) as num
|
||||
var/amount = input(usr, "Specify the reagent size of [A]", "Set Reagent Size", 50) as num|null
|
||||
if(amount)
|
||||
A.create_reagents(amount)
|
||||
if(A.reagents)
|
||||
var/chosen_id = choose_reagent_id(usr)
|
||||
if(chosen_id)
|
||||
var/amount = input(usr, "Choose the amount to add.", "Choose the amount.", A.reagents.maximum_volume) as num
|
||||
var/amount = input(usr, "Choose the amount to add.", "Choose the amount.", A.reagents.maximum_volume) as num|null
|
||||
if(amount)
|
||||
A.reagents.add_reagent(chosen_id, amount)
|
||||
A.splat(target)
|
||||
|
||||
@@ -102,7 +102,8 @@
|
||||
/obj/item/clothing/glasses/hud/diagnostic/sunglasses
|
||||
name = "diagnostic HUDSunglasses"
|
||||
desc = "Sunglasses with a diagnostic HUD."
|
||||
icon_state = "sunhuddiagnostic"
|
||||
icon_state = "sunhuddiag"
|
||||
item_state = "glasses"
|
||||
darkness_view = 1
|
||||
flash_protect = 1
|
||||
tint = 1
|
||||
|
||||
@@ -44,8 +44,8 @@
|
||||
if(ishuman(hit_atom))
|
||||
var/mob/living/carbon/human/H = hit_atom
|
||||
var/mutable_appearance/creamoverlay = mutable_appearance('icons/effects/creampie.dmi')
|
||||
if(H.dna.species.limbs_id == "lizard")
|
||||
creamoverlay.icon_state = "creampie_lizard"
|
||||
if((("mam_snouts" in H.dna.species.default_features) && H.dna.features["mam_snouts"] != "None") || (("snout" in H.dna.species.default_features) && H.dna.features["snout"] != "None"))
|
||||
creamoverlay.icon_state = "creampie_snout"
|
||||
else
|
||||
creamoverlay.icon_state = "creampie_human"
|
||||
if(stunning)
|
||||
@@ -53,7 +53,7 @@
|
||||
H.adjust_blurriness(1)
|
||||
H.visible_message("<span class='warning'>[H] is creamed by [src]!</span>", "<span class='userdanger'>You've been creamed by [src]!</span>")
|
||||
playsound(H, "desceration", 50, TRUE)
|
||||
if(!H.is_mouth_covered())
|
||||
if(!H.is_mouth_covered())
|
||||
reagents.trans_to(H,15) //Cream pie combat
|
||||
if(!H.creamed) // one layer at a time
|
||||
H.add_overlay(creamoverlay)
|
||||
|
||||
@@ -139,6 +139,9 @@
|
||||
icon = 'icons/obj/lavaland/survival_pod.dmi'
|
||||
icon_state = "sleeper"
|
||||
|
||||
/obj/machinery/sleeper/survival_pod/update_icon_state()
|
||||
return
|
||||
|
||||
/obj/machinery/sleeper/survival_pod/update_overlays()
|
||||
. = ..()
|
||||
if(!state_open)
|
||||
@@ -189,7 +192,7 @@
|
||||
flags_1 = NODECONSTRUCT_1
|
||||
var/empty = FALSE
|
||||
|
||||
/obj/machinery/stasis/survival_pod/ComponentInitialize()
|
||||
/obj/machinery/smartfridge/survival_pod/ComponentInitialize()
|
||||
. = ..()
|
||||
AddElement(/datum/element/update_icon_blocker)
|
||||
|
||||
|
||||
@@ -24,6 +24,9 @@
|
||||
|
||||
/obj/item/mmi/update_overlays()
|
||||
. = ..()
|
||||
. += add_mmi_overlay()
|
||||
|
||||
/obj/item/mmi/proc/add_mmi_overlay()
|
||||
if(brainmob && brainmob.stat != DEAD)
|
||||
. += "mmi_alive"
|
||||
else
|
||||
|
||||
@@ -193,3 +193,6 @@ GLOBAL_VAR(posibrain_notify_cooldown)
|
||||
icon_state = "[initial(icon_state)]-occupied"
|
||||
else
|
||||
icon_state = initial(icon_state)
|
||||
|
||||
/obj/item/mmi/posibrain/add_mmi_overlay()
|
||||
return
|
||||
|
||||
@@ -242,6 +242,12 @@
|
||||
return
|
||||
|
||||
if(href_list["pockets"])
|
||||
var/strip_mod = 1
|
||||
var/strip_silence = FALSE
|
||||
var/obj/item/clothing/gloves/g = gloves
|
||||
if (istype(g))
|
||||
strip_mod = g.strip_mod
|
||||
strip_silence = g.strip_silence
|
||||
var/pocket_side = href_list["pockets"]
|
||||
var/pocket_id = (pocket_side == "right" ? SLOT_R_STORE : SLOT_L_STORE)
|
||||
var/obj/item/pocket_item = (pocket_id == SLOT_R_STORE ? r_store : l_store)
|
||||
@@ -258,7 +264,7 @@
|
||||
else
|
||||
return
|
||||
|
||||
if(do_mob(usr, src, POCKET_STRIP_DELAY/delay_denominator, ignorehelditem = TRUE)) //placing an item into the pocket is 4 times faster
|
||||
if(do_mob(usr, src, max(round(POCKET_STRIP_DELAY/(delay_denominator*strip_mod)),1), ignorehelditem = TRUE)) //placing an item into the pocket is 4 times faster (and the strip_mod too)
|
||||
if(pocket_item)
|
||||
if(pocket_item == (pocket_id == SLOT_R_STORE ? r_store : l_store)) //item still in the pocket we search
|
||||
dropItemToGround(pocket_item)
|
||||
@@ -276,7 +282,8 @@
|
||||
show_inv(usr)
|
||||
else
|
||||
// Display a warning if the user mocks up
|
||||
to_chat(src, "<span class='warning'>You feel your [pocket_side] pocket being fumbled with!</span>")
|
||||
if (!strip_silence)
|
||||
to_chat(src, "<span class='warning'>You feel your [pocket_side] pocket being fumbled with!</span>")
|
||||
|
||||
..() //CITADEL CHANGE - removes a tab from behind this ..() so that flavortext can actually be examined
|
||||
|
||||
|
||||
@@ -397,7 +397,7 @@ GLOBAL_LIST_EMPTY(roundstart_race_names)
|
||||
if(I.flags_inv & HIDEFACIALHAIR)
|
||||
facialhair_hidden = TRUE
|
||||
|
||||
if(H.wear_mask)
|
||||
if(H.wear_mask && istype(H.wear_mask))
|
||||
var/obj/item/clothing/mask/M = H.wear_mask
|
||||
dynamic_fhair_suffix = M.dynamic_fhair_suffix //mask > head in terms of facial hair
|
||||
if(M.flags_inv & HIDEFACIALHAIR)
|
||||
@@ -451,7 +451,7 @@ GLOBAL_LIST_EMPTY(roundstart_race_names)
|
||||
if(I.flags_inv & HIDEHAIR)
|
||||
hair_hidden = TRUE
|
||||
|
||||
if(H.wear_mask)
|
||||
if(H.wear_mask && istype(H.wear_mask))
|
||||
var/obj/item/clothing/mask/M = H.wear_mask
|
||||
if(!dynamic_hair_suffix) //head > mask in terms of head hair
|
||||
dynamic_hair_suffix = M.dynamic_hair_suffix
|
||||
|
||||
@@ -821,7 +821,6 @@
|
||||
/obj/item/gps/cyborg,
|
||||
/obj/item/weapon/gripper/mining,
|
||||
/obj/item/cyborg_clamp,
|
||||
/obj/item/card/id/miningborg,
|
||||
/obj/item/stack/marker_beacon,
|
||||
/obj/item/destTagger,
|
||||
/obj/item/stack/packageWrap)
|
||||
@@ -1023,4 +1022,4 @@
|
||||
/datum/robot_energy_storage/wrapping_paper
|
||||
max_energy = 30
|
||||
recharge_rate = 1
|
||||
name = "Wrapping Paper Storage"
|
||||
name = "Wrapping Paper Storage"
|
||||
|
||||
@@ -445,7 +445,7 @@
|
||||
sleep(3)
|
||||
step_to(src,movement_target,1)
|
||||
|
||||
if(movement_target) //Not redundant due to sleeps, Item can be gone in 6 decisecomds
|
||||
if(movement_target?.loc) //Not redundant due to sleeps, Item can be gone in 6 decisecomds
|
||||
if (movement_target.loc.x < src.x)
|
||||
setDir(WEST)
|
||||
else if (movement_target.loc.x > src.x)
|
||||
|
||||
@@ -204,7 +204,7 @@
|
||||
rapid = 2
|
||||
icon_state = "syndicate_smg"
|
||||
icon_living = "syndicate_smg"
|
||||
casingtype = /obj/item/ammo_casing/c45/nostamina
|
||||
casingtype = /obj/item/ammo_casing/c45
|
||||
projectilesound = 'sound/weapons/gunshot_smg.ogg'
|
||||
|
||||
/mob/living/simple_animal/hostile/syndicate/ranged/smg/pilot //caravan ambush ruin
|
||||
|
||||
@@ -70,6 +70,9 @@
|
||||
else
|
||||
. = FALSE //as to not cancel attack_hand()
|
||||
|
||||
/obj/item/clothing/gloves/space_ninja/dropped(mob/user)
|
||||
. = ..()
|
||||
REMOVE_TRAIT(src, TRAIT_NODROP, NINJA_SUIT_TRAIT)
|
||||
|
||||
/obj/item/clothing/gloves/space_ninja/proc/toggledrain()
|
||||
var/mob/living/carbon/human/U = loc
|
||||
|
||||
@@ -9,4 +9,8 @@
|
||||
strip_delay = 12
|
||||
resistance_flags = LAVA_PROOF | FIRE_PROOF | ACID_PROOF
|
||||
blockTracking = 1//Roughly the only unique thing about this helmet.
|
||||
flags_inv = HIDEEARS|HIDEEYES|HIDEFACE|HIDEHAIR|HIDEFACIALHAIR
|
||||
flags_inv = HIDEEARS|HIDEEYES|HIDEFACE|HIDEHAIR|HIDEFACIALHAIR
|
||||
|
||||
/obj/item/clothing/head/helmet/space/space_ninja/dropped(mob/user)
|
||||
. = ..()
|
||||
REMOVE_TRAIT(src, TRAIT_NODROP, NINJA_SUIT_TRAIT)
|
||||
|
||||
@@ -19,6 +19,10 @@ Contents:
|
||||
resistance_flags = LAVA_PROOF | FIRE_PROOF | ACID_PROOF
|
||||
modifies_speech = TRUE
|
||||
|
||||
/obj/item/clothing/mask/gas/space_ninja/dropped(mob/user)
|
||||
. = ..()
|
||||
REMOVE_TRAIT(src, TRAIT_NODROP, NINJA_SUIT_TRAIT)
|
||||
|
||||
/obj/item/clothing/mask/gas/space_ninja/handle_speech(datum/source, list/speech_args)
|
||||
var/message = speech_args[SPEECH_MESSAGE]
|
||||
if(message[1] != "*")
|
||||
|
||||
@@ -24,9 +24,6 @@
|
||||
caliber = ".45"
|
||||
projectile_type = /obj/item/projectile/bullet/c45
|
||||
|
||||
/obj/item/ammo_casing/c45/nostamina
|
||||
projectile_type = /obj/item/projectile/bullet/c45_nostamina
|
||||
|
||||
/obj/item/ammo_casing/c45/kitchengun
|
||||
desc = "A .45 bullet casing. It has a small sponge attached to it."
|
||||
projectile_type = /obj/item/projectile/bullet/c45_cleaning
|
||||
|
||||
@@ -60,7 +60,7 @@
|
||||
/obj/item/ammo_box/magazine/smgm45
|
||||
name = "SMG magazine (.45)"
|
||||
icon_state = "c20r45-24"
|
||||
ammo_type = /obj/item/ammo_casing/c45/nostamina
|
||||
ammo_type = /obj/item/ammo_casing/c45
|
||||
caliber = ".45"
|
||||
max_ammo = 24
|
||||
|
||||
|
||||
@@ -1,18 +1,12 @@
|
||||
// .45 (M1911 & C20r)
|
||||
|
||||
/obj/item/projectile/bullet/c45
|
||||
name = ".45 bullet"
|
||||
damage = 20
|
||||
stamina = 65
|
||||
|
||||
/obj/item/projectile/bullet/c45_nostamina
|
||||
name = ".45 bullet"
|
||||
damage = 30
|
||||
|
||||
/obj/item/projectile/bullet/c45_cleaning
|
||||
name = ".45 bullet"
|
||||
damage = 24
|
||||
stamina = 10
|
||||
damage = 40 //BANG BANG BANG
|
||||
|
||||
/obj/item/projectile/bullet/c45_cleaning/on_hit(atom/target, blocked = FALSE)
|
||||
. = ..()
|
||||
|
||||
@@ -43,14 +43,14 @@
|
||||
set_APTFT()
|
||||
return TRUE
|
||||
|
||||
/obj/item/reagent_containers/proc/set_APTFT(mob/user) //set amount_per_transfer_from_this
|
||||
/obj/item/reagent_containers/proc/set_APTFT() //set amount_per_transfer_from_this
|
||||
set name = "Set Transfer Amount"
|
||||
set category = "Object"
|
||||
set waitfor = FALSE
|
||||
var/N = input("Amount per transfer from this:","[src]") as null|anything in possible_transfer_amounts
|
||||
if(N)
|
||||
amount_per_transfer_from_this = N
|
||||
to_chat(user, "<span class='notice'>[src]'s transfer amount is now [amount_per_transfer_from_this] units.</span>")
|
||||
to_chat(usr, "<span class='notice'>[src]'s transfer amount is now [amount_per_transfer_from_this] units.</span>")
|
||||
|
||||
/obj/item/reagent_containers/proc/add_initial_reagents()
|
||||
if(list_reagents)
|
||||
|
||||
@@ -35,6 +35,17 @@
|
||||
dangerous_construction = TRUE
|
||||
departmental_flags = DEPARTMENTAL_FLAG_SCIENCE
|
||||
|
||||
/datum/design/duffelbag_holding
|
||||
name = "Duffel Bag of Holding"
|
||||
desc = "A duffel bag that opens into a localized pocket of bluespace."
|
||||
id = "duffelbag_holding"
|
||||
build_type = PROTOLATHE
|
||||
materials = list(/datum/material/gold = 3000, /datum/material/diamond = 1500, /datum/material/uranium = 250, /datum/material/bluespace = 2000)
|
||||
build_path = /obj/item/storage/backpack/holding/duffel
|
||||
category = list("Bluespace Designs")
|
||||
dangerous_construction = TRUE
|
||||
departmental_flags = DEPARTMENTAL_FLAG_SCIENCE
|
||||
|
||||
/datum/design/biobag_holding
|
||||
name = "Bio Bag of Holding"
|
||||
desc = "A chemical holding thingy. Mostly used for xenobiology."
|
||||
|
||||
@@ -633,15 +633,6 @@
|
||||
construction_time = 120
|
||||
category = list("Cyborg Upgrade Modules")
|
||||
|
||||
/datum/design/borg_upgrade_premiumka
|
||||
name = "Cyborg Upgrade (Premium Kinetic Accelerator)"
|
||||
id = "borg_upgrade_premiumka"
|
||||
build_type = MECHFAB
|
||||
build_path = /obj/item/borg/upgrade/premiumka
|
||||
materials = list(/datum/material/iron=8000, /datum/material/glass=4000, /datum/material/titanium=2000)
|
||||
construction_time = 120
|
||||
category = list("Cyborg Upgrade Modules")
|
||||
|
||||
/datum/design/borg_upgrade_lavaproof
|
||||
name = "Cyborg Upgrade (Lavaproof Tracks)"
|
||||
id = "borg_upgrade_lavaproof"
|
||||
|
||||
@@ -278,7 +278,7 @@
|
||||
display_name = "Bluespace Pockets"
|
||||
description = "Studies into the mysterious alternate dimension known as bluespace and how to place items in the threads of reality."
|
||||
prereq_ids = list("adv_power", "adv_bluespace", "adv_biotech", "adv_plasma")
|
||||
design_ids = list( "bluespacebodybag","bag_holding", "bluespace_pod", "borg_upgrade_trashofholding", "blutrash", "satchel_holding", "bsblood_bag")
|
||||
design_ids = list( "bluespacebodybag","bag_holding", "bluespace_pod", "borg_upgrade_trashofholding", "blutrash", "satchel_holding", "bsblood_bag", "duffelbag_holding")
|
||||
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 5500)
|
||||
|
||||
/datum/techweb_node/bluespace_portal
|
||||
@@ -336,7 +336,7 @@
|
||||
display_name = "Advanced Robotics Research"
|
||||
description = "It can even do the dishes!"
|
||||
prereq_ids = list("robotics")
|
||||
design_ids = list("borg_upgrade_diamonddrill", "borg_upgrade_advancedmop", "borg_upgrade_advcutter", "borg_upgrade_premiumka")
|
||||
design_ids = list("borg_upgrade_diamonddrill", "borg_upgrade_advancedmop", "borg_upgrade_advcutter")
|
||||
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 3000)
|
||||
|
||||
/datum/techweb_node/neural_programming
|
||||
|
||||
@@ -319,6 +319,8 @@
|
||||
on_mob.forceMove(scanning)
|
||||
for(var/i in 1 to light_beam_distance)
|
||||
scanning = get_step(scanning, scandir)
|
||||
if(!scanning)
|
||||
break
|
||||
if(scanning.opacity || scanning.has_opaque_atom)
|
||||
stop = TRUE
|
||||
var/obj/effect/abstract/eye_lighting/L = LAZYACCESS(eye_lighting, i)
|
||||
|
||||
@@ -159,7 +159,7 @@
|
||||
/datum/uplink_item/role_restricted/kitchen_gun
|
||||
name = "Kitchen Gun (TM)"
|
||||
desc = "A revolutionary .45 caliber cleaning solution! Say goodbye to daily stains and dirty surfaces with Kitchen Gun (TM)! \
|
||||
Just five shots from Kitchen Gun (TM), and it'll sparkle like new! Includes two extra ammunition clips!"
|
||||
Just three shots from Kitchen Gun (TM), and it'll sparkle like new! Includes two extra ammunition clips!"
|
||||
cost = 10
|
||||
surplus = 40
|
||||
restricted_roles = list("Cook", "Janitor")
|
||||
|
||||
Reference in New Issue
Block a user