mirror of
https://github.com/Aurorastation/Aurora.3.git
synced 2026-01-09 00:42:34 +00:00
Various Tweaks and Changes (#9222)
This commit is contained in:
@@ -196,11 +196,33 @@
|
||||
if(!active)
|
||||
if(default_deconstruction_screwdriver(user, O))
|
||||
return
|
||||
if (!panel_open)
|
||||
if(default_deconstruction_crowbar(user, O))
|
||||
return
|
||||
if(default_part_replacement(user, O))
|
||||
if(default_part_replacement(user, O))
|
||||
return
|
||||
|
||||
if(istype(O, /obj/item/mining_scanner))
|
||||
if(!length(resource_field))
|
||||
to_chat(user, SPAN_WARNING("\The [src] has no resource field to draw data from!"))
|
||||
return
|
||||
to_chat(user, SPAN_NOTICE("You start drawing the data from \the [src]..."))
|
||||
if(do_after(user, 50, TRUE))
|
||||
if(!length(resource_field))
|
||||
to_chat(user, SPAN_WARNING("\The [src] has no resource field to draw data from!"))
|
||||
return
|
||||
var/list/ore_data = list()
|
||||
for(var/ore_type in ore_types)
|
||||
ore_data[ore_type] = 0
|
||||
for(var/field in resource_field)
|
||||
var/turf/T = field
|
||||
if(!T.resources)
|
||||
continue
|
||||
for(var/ore in ore_types)
|
||||
if(T.resources[ore])
|
||||
ore_data[ore] += T.resources[ore]
|
||||
to_chat(user, SPAN_NOTICE("\The [src] has found this ore in the vicinity, and is able to gather it:"))
|
||||
for(var/entry in ore_data)
|
||||
to_chat(user, SPAN_NOTICE(" | <b>[entry]</b> - <b>[ore_data[entry]]</b>"))
|
||||
return
|
||||
|
||||
if(active)
|
||||
return ..()
|
||||
|
||||
@@ -237,16 +259,37 @@
|
||||
return
|
||||
|
||||
if(O.iscrowbar())
|
||||
if (panel_open)
|
||||
if(panel_open)
|
||||
if(cell)
|
||||
to_chat(user, SPAN_NOTICE("You wrench out \the [cell]."))
|
||||
to_chat(user, SPAN_NOTICE("You shimmy out \the [cell]."))
|
||||
cell.forceMove(get_turf(user))
|
||||
component_parts -= cell
|
||||
user.put_in_hands(cell)
|
||||
cell = null
|
||||
return
|
||||
else
|
||||
to_chat(user, SPAN_WARNING("There's no cell to remove!"))
|
||||
return
|
||||
else
|
||||
to_chat(user, SPAN_WARNING("The hatch must be open to take out a power cell."))
|
||||
return
|
||||
|
||||
if(istype(O, /obj/item/gripper/miner)) // the gripper will always be empty, because it passes its wrapped object's attack if it has one
|
||||
var/obj/item/gripper/miner/M = O
|
||||
if(panel_open)
|
||||
if(cell)
|
||||
to_chat(user, SPAN_NOTICE("You use your gripper to squeeze the cell out of its case."))
|
||||
cell.forceMove(get_turf(user))
|
||||
component_parts -= cell
|
||||
M.grip_item(cell, user, FALSE)
|
||||
cell = null
|
||||
return
|
||||
else
|
||||
to_chat(user, SPAN_WARNING("There's no cell to remove!"))
|
||||
return
|
||||
else
|
||||
to_chat(user, SPAN_WARNING("The hatch must be open to take out a power cell."))
|
||||
return
|
||||
|
||||
if(istype(O, /obj/item/cell))
|
||||
if(panel_open)
|
||||
@@ -259,11 +302,11 @@
|
||||
cell = O
|
||||
component_parts += O
|
||||
O.add_fingerprint(user)
|
||||
visible_message(span("notice", "\The [user] inserts a power cell into \the [src]."),
|
||||
span("notice", "You insert the power cell into \the [src]."))
|
||||
visible_message("<b>\The [user]</b> inserts a power cell into \the [src].",
|
||||
SPAN_NOTICE("You insert the power cell into \the [src]."))
|
||||
power_change()
|
||||
else
|
||||
to_chat(user, span("notice", "The hatch must be open to insert a power cell."))
|
||||
to_chat(user, SPAN_WARNING("The hatch must be open to insert a power cell."))
|
||||
return
|
||||
else
|
||||
..()
|
||||
|
||||
@@ -59,6 +59,8 @@
|
||||
to_chat(user, SPAN_NOTICE("You collect \the [I]."))
|
||||
I.forceMove(src)
|
||||
wrapped = I
|
||||
wrapped.pixel_x = 0
|
||||
wrapped.pixel_y = 0
|
||||
update_icon()
|
||||
return TRUE
|
||||
if(feedback)
|
||||
@@ -90,6 +92,12 @@
|
||||
update_icon()
|
||||
return ..()
|
||||
|
||||
/obj/item/gripper/CtrlClick(mob/user)
|
||||
if(wrapped)
|
||||
drop(get_turf(src))
|
||||
return
|
||||
to_chat(user, SPAN_WARNING("\The [src] isn't gripping anything!"))
|
||||
|
||||
/obj/item/gripper/verb/drop_item()
|
||||
set name = "Drop Item"
|
||||
set desc = "Release an item from your magnetic gripper."
|
||||
@@ -98,8 +106,13 @@
|
||||
drop(get_turf(src))
|
||||
|
||||
/obj/item/gripper/proc/drop(var/atom/target)
|
||||
if(wrapped?.loc == src)
|
||||
wrapped.forceMove(target)
|
||||
if(wrapped)
|
||||
if(wrapped.loc == src)
|
||||
if(force_holder)
|
||||
wrapped.force = force_holder
|
||||
wrapped.forceMove(target)
|
||||
force_holder = null
|
||||
to_chat(loc, SPAN_NOTICE("You release \the [wrapped].")) // loc will always be the cyborg
|
||||
wrapped = null
|
||||
update_icon()
|
||||
return TRUE
|
||||
@@ -153,6 +166,8 @@
|
||||
if(!isturf(target.loc))
|
||||
return
|
||||
grip_item(target, user)
|
||||
else if (istype(target, /obj/machinery/mining)) // to prevent them from activating it by accident
|
||||
return
|
||||
else if (!just_dropped)
|
||||
target.attack_ai(user)
|
||||
just_dropped = FALSE
|
||||
|
||||
@@ -685,6 +685,7 @@ var/global/list/robot_modules = list(
|
||||
src.modules += new /obj/item/extinguisher/mini(src) // For navigating space and/or low grav, and just being useful.
|
||||
src.modules += new /obj/item/device/flash(src) // Non-lethal tool that prevents any 'borg from going lethal on Crew so long as it's an option according to laws.
|
||||
src.modules += new /obj/item/crowbar/robotic(src) // Base crowbar that all 'borgs should have access to.
|
||||
src.modules += new /obj/item/storage/part_replacer(src)
|
||||
src.emag = new /obj/item/gun/energy/plasmacutter/mounted(src)
|
||||
|
||||
/obj/item/robot_module/research
|
||||
@@ -730,6 +731,7 @@ var/global/list/robot_modules = list(
|
||||
src.modules += new /obj/item/extinguisher(src) // For navigating space and/or low grav, and just being useful.
|
||||
src.modules += new /obj/item/device/flash(src) // Non-lethal tool that prevents any 'borg from going lethal on Crew so long as it's an option according to laws.
|
||||
src.modules += new /obj/item/crowbar/robotic(src) // Base crowbar that all 'borgs should have access to.
|
||||
src.modules += new /obj/item/storage/part_replacer(src)
|
||||
src.emag = new /obj/item/hand_tele(src)
|
||||
|
||||
var/datum/matter_synth/nanite = new /datum/matter_synth/nanite(10000)
|
||||
|
||||
Reference in New Issue
Block a user