mirror of
https://github.com/CHOMPStation2/CHOMPStation2.git
synced 2025-12-16 05:02:42 +00:00
Merge pull request #7836 from VOREStation/aro-rigopti
Only process rigs on a person
This commit is contained in:
@@ -125,8 +125,6 @@
|
|||||||
spark_system.set_up(5, 0, src)
|
spark_system.set_up(5, 0, src)
|
||||||
spark_system.attach(src)
|
spark_system.attach(src)
|
||||||
|
|
||||||
START_PROCESSING(SSobj, src)
|
|
||||||
|
|
||||||
if(initial_modules && initial_modules.len)
|
if(initial_modules && initial_modules.len)
|
||||||
for(var/path in initial_modules)
|
for(var/path in initial_modules)
|
||||||
var/obj/item/rig_module/module = new path(src)
|
var/obj/item/rig_module/module = new path(src)
|
||||||
@@ -184,6 +182,22 @@
|
|||||||
spark_system = null
|
spark_system = null
|
||||||
return ..()
|
return ..()
|
||||||
|
|
||||||
|
// We only care about processing when we're on a mob
|
||||||
|
/obj/item/weapon/rig/Moved(old_loc, direction, forced)
|
||||||
|
if(ismob(loc))
|
||||||
|
START_PROCESSING(SSobj, src)
|
||||||
|
else
|
||||||
|
STOP_PROCESSING(SSobj, src)
|
||||||
|
|
||||||
|
// If we've lost any parts, grab them back.
|
||||||
|
var/mob/living/M
|
||||||
|
for(var/obj/item/piece in list(gloves,boots,helmet,chest))
|
||||||
|
if(piece.loc != src && !(wearer && piece.loc == wearer))
|
||||||
|
if(istype(piece.loc, /mob/living))
|
||||||
|
M = piece.loc
|
||||||
|
M.unEquip(piece)
|
||||||
|
piece.forceMove(src)
|
||||||
|
|
||||||
/obj/item/weapon/rig/get_worn_icon_file(var/body_type,var/slot_name,var/default_icon,var/inhands)
|
/obj/item/weapon/rig/get_worn_icon_file(var/body_type,var/slot_name,var/default_icon,var/inhands)
|
||||||
if(!inhands && (slot_name == slot_back_str || slot_name == slot_belt_str))
|
if(!inhands && (slot_name == slot_back_str || slot_name == slot_belt_str))
|
||||||
if(icon_override)
|
if(icon_override)
|
||||||
@@ -466,14 +480,13 @@
|
|||||||
turn_cooling_off(H, 1)
|
turn_cooling_off(H, 1)
|
||||||
|
|
||||||
/obj/item/weapon/rig/process()
|
/obj/item/weapon/rig/process()
|
||||||
// If we've lost any parts, grab them back.
|
// Not on a mob...?
|
||||||
var/mob/living/M
|
if(!ismob(loc))
|
||||||
for(var/obj/item/piece in list(gloves,boots,helmet,chest))
|
if(wearer?.wearing_rig == src)
|
||||||
if(piece.loc != src && !(wearer && piece.loc == wearer))
|
wearer.wearing_rig = null
|
||||||
if(istype(piece.loc, /mob/living))
|
wearer = null
|
||||||
M = piece.loc
|
return PROCESS_KILL
|
||||||
M.unEquip(piece)
|
|
||||||
piece.forceMove(src)
|
|
||||||
// Run through cooling
|
// Run through cooling
|
||||||
coolingProcess()
|
coolingProcess()
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user