Merge branch 'master' into upstream-merge-37529
This commit is contained in:
@@ -11,7 +11,7 @@
|
||||
else
|
||||
return 0
|
||||
|
||||
/obj/mecha/combat/mmi_moved_inside(obj/item/device/mmi/mmi_as_oc,mob/user)
|
||||
/obj/mecha/combat/mmi_moved_inside(obj/item/mmi/mmi_as_oc,mob/user)
|
||||
if(..())
|
||||
if(occupant.client && occupant.client.mouse_pointer_icon == initial(occupant.client.mouse_pointer_icon))
|
||||
occupant.client.mouse_pointer_icon = 'icons/mecha/mecha_mouse.dmi'
|
||||
|
||||
@@ -367,8 +367,7 @@
|
||||
return ..()
|
||||
|
||||
/obj/item/mecha_parts/mecha_equipment/generator/proc/generator_init()
|
||||
fuel = new /obj/item/stack/sheet/mineral/plasma(src)
|
||||
fuel.amount = 0
|
||||
fuel = new /obj/item/stack/sheet/mineral/plasma(src, 0)
|
||||
|
||||
/obj/item/mecha_parts/mecha_equipment/generator/detach()
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
@@ -472,8 +471,7 @@
|
||||
var/rad_per_cycle = 3
|
||||
|
||||
/obj/item/mecha_parts/mecha_equipment/generator/nuclear/generator_init()
|
||||
fuel = new /obj/item/stack/sheet/mineral/uranium(src)
|
||||
fuel.amount = 0
|
||||
fuel = new /obj/item/stack/sheet/mineral/uranium(src, 0)
|
||||
|
||||
/obj/item/mecha_parts/mecha_equipment/generator/nuclear/critfail()
|
||||
return
|
||||
|
||||
@@ -301,8 +301,7 @@
|
||||
|
||||
/obj/item/mecha_parts/mecha_equipment/cable_layer/Initialize()
|
||||
. = ..()
|
||||
cable = new(src)
|
||||
cable.amount = 0
|
||||
cable = new(src, 0)
|
||||
|
||||
/obj/item/mecha_parts/mecha_equipment/cable_layer/can_attach(obj/mecha/working/M)
|
||||
if(..())
|
||||
@@ -333,8 +332,7 @@
|
||||
if(to_load)
|
||||
to_load = min(target.amount, to_load)
|
||||
if(!cable)
|
||||
cable = new(src)
|
||||
cable.amount = 0
|
||||
cable = new(src, 0)
|
||||
cable.amount += to_load
|
||||
target.use(to_load)
|
||||
occupant_message("<span class='notice'>[to_load] meters of cable successfully loaded.</span>")
|
||||
@@ -358,8 +356,7 @@
|
||||
m = min(m, cable.amount)
|
||||
if(m)
|
||||
use_cable(m)
|
||||
var/obj/item/stack/cable_coil/CC = new (get_turf(chassis))
|
||||
CC.amount = m
|
||||
new /obj/item/stack/cable_coil(get_turf(chassis), m)
|
||||
else
|
||||
occupant_message("There's no more cable on the reel.")
|
||||
return
|
||||
|
||||
@@ -369,7 +369,7 @@
|
||||
name = "mousetrap mortar"
|
||||
desc = "Equipment for clown exosuits. Launches armed mousetraps."
|
||||
icon_state = "mecha_mousetrapmrtr"
|
||||
projectile = /obj/item/device/assembly/mousetrap/armed
|
||||
projectile = /obj/item/assembly/mousetrap/armed
|
||||
fire_sound = 'sound/items/bikehorn.ogg'
|
||||
projectiles = 15
|
||||
missile_speed = 1.5
|
||||
@@ -382,7 +382,7 @@
|
||||
return 1
|
||||
return 0
|
||||
|
||||
/obj/item/mecha_parts/mecha_equipment/weapon/ballistic/launcher/mousetrap_mortar/proj_init(var/obj/item/device/assembly/mousetrap/armed/M)
|
||||
/obj/item/mecha_parts/mecha_equipment/weapon/ballistic/launcher/mousetrap_mortar/proj_init(var/obj/item/assembly/mousetrap/armed/M)
|
||||
M.secured = 1
|
||||
|
||||
|
||||
|
||||
@@ -64,9 +64,6 @@
|
||||
recharging_turf = get_step(loc, dir)
|
||||
return
|
||||
|
||||
if(exchange_parts(user, I))
|
||||
return
|
||||
|
||||
if(default_deconstruction_crowbar(I))
|
||||
return
|
||||
return ..()
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
/obj/machinery/mecha_part_fabricator/Initialize()
|
||||
var/datum/component/material_container/materials = AddComponent(/datum/component/material_container,
|
||||
list(MAT_METAL, MAT_GLASS, MAT_SILVER, MAT_GOLD, MAT_DIAMOND, MAT_PLASMA, MAT_URANIUM, MAT_BANANIUM, MAT_TITANIUM, MAT_BLUESPACE), 0,
|
||||
FALSE, list(/obj/item/stack, /obj/item/stack/ore/bluespace_crystal), CALLBACK(src, .proc/is_insertion_ready), CALLBACK(src, .proc/AfterMaterialInsert))
|
||||
FALSE, list(/obj/item/stack), CALLBACK(src, .proc/is_insertion_ready), CALLBACK(src, .proc/AfterMaterialInsert))
|
||||
materials.precise_insertion = TRUE
|
||||
stored_research = new
|
||||
return ..()
|
||||
@@ -401,9 +401,6 @@
|
||||
if(default_deconstruction_screwdriver(user, "fab-o", "fab-idle", W))
|
||||
return TRUE
|
||||
|
||||
if(exchange_parts(user, W))
|
||||
return TRUE
|
||||
|
||||
if(default_deconstruction_crowbar(W))
|
||||
return TRUE
|
||||
|
||||
|
||||
+15
-13
@@ -57,7 +57,7 @@
|
||||
var/datum/gas_mixture/cabin_air
|
||||
var/obj/machinery/atmospherics/components/unary/portables_connector/connected_port = null
|
||||
|
||||
var/obj/item/device/radio/mech/radio
|
||||
var/obj/item/radio/mech/radio
|
||||
var/list/trackers = list()
|
||||
|
||||
var/max_temperature = 25000
|
||||
@@ -118,7 +118,7 @@
|
||||
|
||||
hud_possible = list (DIAG_STAT_HUD, DIAG_BATT_HUD, DIAG_MECH_HUD, DIAG_TRACK_HUD)
|
||||
|
||||
/obj/item/device/radio/mech //this has to go somewhere
|
||||
/obj/item/radio/mech //this has to go somewhere
|
||||
|
||||
/obj/mecha/Initialize()
|
||||
. = ..()
|
||||
@@ -672,7 +672,7 @@
|
||||
return
|
||||
to_chat(user, "<a href='?src=[REF(user)];ai_take_control=[REF(src)]'><span class='boldnotice'>Take control of exosuit?</span></a><br>")
|
||||
|
||||
/obj/mecha/transfer_ai(interaction, mob/user, mob/living/silicon/ai/AI, obj/item/device/aicard/card)
|
||||
/obj/mecha/transfer_ai(interaction, mob/user, mob/living/silicon/ai/AI, obj/item/aicard/card)
|
||||
if(!..())
|
||||
return
|
||||
|
||||
@@ -812,16 +812,18 @@
|
||||
to_chat(usr, "<span class='warning'>The [name] is already occupied!</span>")
|
||||
log_append_to_last("Permission denied.")
|
||||
return
|
||||
var/passed
|
||||
if(dna_lock)
|
||||
var/passed = FALSE
|
||||
if(user.has_dna())
|
||||
var/mob/living/carbon/C = user
|
||||
if(C.dna.unique_enzymes==dna_lock)
|
||||
passed = 1
|
||||
else if(operation_allowed(user))
|
||||
passed = 1
|
||||
if(!passed)
|
||||
to_chat(user, "<span class='warning'>Access denied.</span>")
|
||||
passed = TRUE
|
||||
if (!passed)
|
||||
to_chat(user, "<span class='warning'>Access denied. [name] is secured with a DNA lock.</span>")
|
||||
log_append_to_last("Permission denied.")
|
||||
return
|
||||
if(!operation_allowed(user))
|
||||
to_chat(user, "<span class='warning'>Access denied. Insufficient operation keycodes.</span>")
|
||||
log_append_to_last("Permission denied.")
|
||||
return
|
||||
if(user.buckled)
|
||||
@@ -866,7 +868,7 @@
|
||||
else
|
||||
return 0
|
||||
|
||||
/obj/mecha/proc/mmi_move_inside(obj/item/device/mmi/mmi_as_oc, mob/user)
|
||||
/obj/mecha/proc/mmi_move_inside(obj/item/mmi/mmi_as_oc, mob/user)
|
||||
if(!mmi_as_oc.brainmob || !mmi_as_oc.brainmob.client)
|
||||
to_chat(user, "<span class='warning'>Consciousness matrix not detected!</span>")
|
||||
return FALSE
|
||||
@@ -891,7 +893,7 @@
|
||||
to_chat(user, "<span class='notice'>You stop inserting the MMI.</span>")
|
||||
return FALSE
|
||||
|
||||
/obj/mecha/proc/mmi_moved_inside(obj/item/device/mmi/mmi_as_oc, mob/user)
|
||||
/obj/mecha/proc/mmi_moved_inside(obj/item/mmi/mmi_as_oc, mob/user)
|
||||
if(!(Adjacent(mmi_as_oc) && Adjacent(user)))
|
||||
return FALSE
|
||||
if(!mmi_as_oc.brainmob || !mmi_as_oc.brainmob.client)
|
||||
@@ -967,8 +969,8 @@
|
||||
log_message("[mob_container] moved out.")
|
||||
L << browse(null, "window=exosuit")
|
||||
|
||||
if(istype(mob_container, /obj/item/device/mmi))
|
||||
var/obj/item/device/mmi/mmi = mob_container
|
||||
if(istype(mob_container, /obj/item/mmi))
|
||||
var/obj/item/mmi/mmi = mob_container
|
||||
if(mmi.brainmob)
|
||||
L.forceMove(mmi)
|
||||
L.reset_perspective()
|
||||
|
||||
@@ -1409,7 +1409,7 @@
|
||||
|
||||
//26
|
||||
list(
|
||||
"key" = /obj/item/device/assembly/signaler/anomaly,
|
||||
"key" = /obj/item/assembly/signaler/anomaly,
|
||||
"action" = ITEM_DELETE,
|
||||
"back_key" = TOOL_WELDER,
|
||||
"desc" = "Anomaly core socket is open.",
|
||||
|
||||
@@ -155,7 +155,7 @@
|
||||
|
||||
/obj/mecha/attackby(obj/item/W as obj, mob/user as mob, params)
|
||||
|
||||
if(istype(W, /obj/item/device/mmi))
|
||||
if(istype(W, /obj/item/mmi))
|
||||
if(mmi_move_inside(W,user))
|
||||
to_chat(user, "[src]-[W] interface initialized successfully.")
|
||||
else
|
||||
@@ -180,7 +180,7 @@
|
||||
if(istype(W, /obj/item/card/id))
|
||||
id_card = W
|
||||
else
|
||||
var/obj/item/device/pda/pda = W
|
||||
var/obj/item/pda/pda = W
|
||||
id_card = pda.id
|
||||
output_maintenance_dialog(id_card, user)
|
||||
return
|
||||
|
||||
@@ -199,7 +199,7 @@
|
||||
</head>
|
||||
<body>
|
||||
[add_req_access?"<a href='?src=[REF(src)];req_access=1;id_card=[REF(id_card)];user=[REF(user)]'>Edit operation keycodes</a>":null]
|
||||
[maint_access?"<a href='?src=[REF(src)];maint_access=1;id_card=[REF(id_card)];user=[REF(user)]'>Initiate maintenance protocol</a>":null]
|
||||
[maint_access?"<a href='?src=[REF(src)];maint_access=1;id_card=[REF(id_card)];user=[REF(user)]'>[(state>0) ? "Terminate" : "Initiate"] maintenance protocol</a>":null]
|
||||
[(state>0) ?"<a href='?src=[REF(src)];set_internal_tank_valve=1;user=[REF(user)]'>Set Cabin Air Pressure</a>":null]
|
||||
</body>
|
||||
</html>"}
|
||||
|
||||
@@ -79,7 +79,7 @@
|
||||
to_chat(user, "<span class='warning'>You don't see anything that can be pried with [I]!</span>")
|
||||
|
||||
|
||||
/obj/structure/mecha_wreckage/transfer_ai(interaction, mob/user, null, obj/item/device/aicard/card)
|
||||
/obj/structure/mecha_wreckage/transfer_ai(interaction, mob/user, null, obj/item/aicard/card)
|
||||
if(!..())
|
||||
return
|
||||
|
||||
|
||||
@@ -31,8 +31,6 @@
|
||||
ore.forceMove(ore_box)
|
||||
|
||||
/obj/mecha/working/ripley/Destroy()
|
||||
for(var/i=1, i <= hides, i++)
|
||||
new /obj/item/stack/sheet/animalhide/goliath_hide(loc) //If a goliath-plated ripley gets killed, all the plates drop
|
||||
for(var/atom/movable/A in cargo)
|
||||
A.forceMove(drop_location())
|
||||
step_rand(A)
|
||||
@@ -49,13 +47,18 @@
|
||||
|
||||
/obj/mecha/working/ripley/update_icon()
|
||||
..()
|
||||
if (hides)
|
||||
GET_COMPONENT(C,/datum/component/armor_plate)
|
||||
if (C.amount)
|
||||
cut_overlays()
|
||||
if(hides < 3)
|
||||
if(C.amount < 3)
|
||||
add_overlay(occupant ? "ripley-g" : "ripley-g-open")
|
||||
else
|
||||
add_overlay(occupant ? "ripley-g-full" : "ripley-g-full-open")
|
||||
|
||||
/obj/mecha/working/ripley/Initialize()
|
||||
. = ..()
|
||||
AddComponent(/datum/component/armor_plate,3,/obj/item/stack/sheet/animalhide/goliath_hide,list("melee" = 10, "bullet" = 5, "laser" = 5))
|
||||
|
||||
|
||||
/obj/mecha/working/ripley/firefighter
|
||||
desc = "Autonomous Power Loader Unit. This model is refitted with additional thermal protection."
|
||||
|
||||
Reference in New Issue
Block a user