mirror of
https://github.com/CHOMPStation2/CHOMPStation2.git
synced 2025-12-10 18:22:39 +00:00
Fixes mining borg ore box movement astral sorcery
This commit is contained in:
@@ -124,15 +124,6 @@ turf/simulated/mineral/floor/light_corner
|
||||
if(air_master)
|
||||
air_master.mark_for_update(src)
|
||||
|
||||
/turf/simulated/mineral/Entered(atom/movable/M as mob|obj)
|
||||
. = ..()
|
||||
if(istype(M,/mob/living/silicon/robot))
|
||||
var/mob/living/silicon/robot/R = M
|
||||
if(R.module)
|
||||
for(var/obj/item/weapon/storage/bag/ore/O in list(R.module_state_1, R.module_state_2, R.module_state_3))
|
||||
attackby(O, R)
|
||||
return
|
||||
|
||||
/turf/simulated/mineral/proc/get_cached_border(var/cache_id, var/direction, var/icon_file, var/icon_state, var/offset = 32)
|
||||
//Cache miss
|
||||
if(!mining_overlay_cache["[cache_id]_[direction]"])
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
|
||||
/**********************Ore box**************************/
|
||||
//Why the hell is this file called satchel_ore_boxdm.dm? -CK
|
||||
/obj/structure/ore_box
|
||||
icon = 'icons/obj/mining.dmi'
|
||||
icon_state = "orebox0"
|
||||
@@ -41,11 +40,15 @@
|
||||
|
||||
/obj/structure/ore_box/examine(mob/user)
|
||||
to_chat(user, "That's an [src].")
|
||||
<<<<<<< HEAD:code/modules/mining/satchel_ore_boxdm.dm
|
||||
to_chat(user,desc)
|
||||
|
||||
// Borgs can now check contents too.
|
||||
if((!istype(user, /mob/living/carbon/human)) && (!istype(user, /mob/living/silicon/robot)))
|
||||
return
|
||||
=======
|
||||
to_chat(user, desc)
|
||||
>>>>>>> a862d55... Fixes mining borg ore box movement on sand with a mining satchel equipped (#6693):code/modules/mining/ore_box.dm
|
||||
|
||||
if(!Adjacent(user)) //Can only check the contents of ore boxes if you can physically reach them.
|
||||
return
|
||||
@@ -70,11 +73,16 @@
|
||||
set category = "Object"
|
||||
set src in view(1)
|
||||
|
||||
<<<<<<< HEAD:code/modules/mining/satchel_ore_boxdm.dm
|
||||
if(!istype(usr, /mob/living/carbon/human) && !istype(usr, /mob/living/silicon/robot)) //Only living, intelligent creatures with gripping aparatti can empty ore boxes.
|
||||
to_chat(usr, "<font color='red'>You are physically incapable of emptying the ore box.</font>")
|
||||
=======
|
||||
if(!ishuman(usr) && !isrobot(usr)) //Only living, intelligent creatures with gripping aparatti can empty ore boxes.
|
||||
to_chat(usr, "<span class='warning'>You are physically incapable of emptying the ore box.</span>")
|
||||
>>>>>>> a862d55... Fixes mining borg ore box movement on sand with a mining satchel equipped (#6693):code/modules/mining/ore_box.dm
|
||||
return
|
||||
|
||||
if( usr.stat || usr.restrained() )
|
||||
if(usr.stat || usr.restrained())
|
||||
return
|
||||
|
||||
if(!Adjacent(usr)) //You can only empty the box if you can physically reach it
|
||||
@@ -84,13 +92,21 @@
|
||||
add_fingerprint(usr)
|
||||
|
||||
if(contents.len < 1)
|
||||
<<<<<<< HEAD:code/modules/mining/satchel_ore_boxdm.dm
|
||||
to_chat(usr, "<font color='red'>The ore box is empty.</font>")
|
||||
=======
|
||||
to_chat(usr, "<span class='warning'>The ore box is empty.</span>")
|
||||
>>>>>>> a862d55... Fixes mining borg ore box movement on sand with a mining satchel equipped (#6693):code/modules/mining/ore_box.dm
|
||||
return
|
||||
|
||||
for (var/obj/item/weapon/ore/O in contents)
|
||||
contents -= O
|
||||
O.loc = src.loc
|
||||
<<<<<<< HEAD:code/modules/mining/satchel_ore_boxdm.dm
|
||||
to_chat(usr, "<font color='blue'>You empty the ore box.</font>")
|
||||
=======
|
||||
to_chat(usr, "<span class='notice'>You empty the ore box.</span>")
|
||||
>>>>>>> a862d55... Fixes mining borg ore box movement on sand with a mining satchel equipped (#6693):code/modules/mining/ore_box.dm
|
||||
|
||||
return
|
||||
|
||||
@@ -903,6 +903,7 @@
|
||||
/mob/living/silicon/robot/proc/radio_menu()
|
||||
radio.interact(src)//Just use the radio's Topic() instead of bullshit special-snowflake code
|
||||
|
||||
<<<<<<< HEAD
|
||||
|
||||
/mob/living/silicon/robot/Move(a, b, flag)
|
||||
|
||||
@@ -954,6 +955,8 @@
|
||||
B.gather_all(tile, src, 1) //Shhh, unless the bag fills, don't spam the borg's chat with stuff that's going on every time they move!
|
||||
return
|
||||
|
||||
=======
|
||||
>>>>>>> a862d55... Fixes mining borg ore box movement on sand with a mining satchel equipped (#6693)
|
||||
/mob/living/silicon/robot/proc/self_destruct()
|
||||
gib()
|
||||
return
|
||||
|
||||
@@ -32,3 +32,56 @@
|
||||
var/datum/robot_component/actuator/A = get_component("actuator")
|
||||
if (cell_use_power(A.active_usage))
|
||||
return ..()
|
||||
<<<<<<< HEAD
|
||||
=======
|
||||
|
||||
/mob/living/silicon/robot/Move(a, b, flag)
|
||||
|
||||
. = ..()
|
||||
|
||||
if(module)
|
||||
if(module.type == /obj/item/weapon/robot_module/robot/janitor)
|
||||
var/turf/tile = loc
|
||||
if(isturf(tile))
|
||||
tile.clean_blood()
|
||||
if (istype(tile, /turf/simulated))
|
||||
var/turf/simulated/S = tile
|
||||
S.dirt = 0
|
||||
for(var/A in tile)
|
||||
if(istype(A, /obj/effect))
|
||||
if(istype(A, /obj/effect/rune) || istype(A, /obj/effect/decal/cleanable) || istype(A, /obj/effect/overlay))
|
||||
qdel(A)
|
||||
else if(istype(A, /obj/item))
|
||||
var/obj/item/cleaned_item = A
|
||||
cleaned_item.clean_blood()
|
||||
else if(istype(A, /mob/living/carbon/human))
|
||||
var/mob/living/carbon/human/cleaned_human = A
|
||||
if(cleaned_human.lying)
|
||||
if(cleaned_human.head)
|
||||
cleaned_human.head.clean_blood()
|
||||
cleaned_human.update_inv_head(0)
|
||||
if(cleaned_human.wear_suit)
|
||||
cleaned_human.wear_suit.clean_blood()
|
||||
cleaned_human.update_inv_wear_suit(0)
|
||||
else if(cleaned_human.w_uniform)
|
||||
cleaned_human.w_uniform.clean_blood()
|
||||
cleaned_human.update_inv_w_uniform(0)
|
||||
if(cleaned_human.shoes)
|
||||
cleaned_human.shoes.clean_blood()
|
||||
cleaned_human.update_inv_shoes(0)
|
||||
cleaned_human.clean_blood(1)
|
||||
cleaned_human << "<font color='red'>[src] cleans your face!</font>"
|
||||
|
||||
if((module_state_1 && istype(module_state_1, /obj/item/weapon/storage/bag/ore)) || (module_state_2 && istype(module_state_2, /obj/item/weapon/storage/bag/ore)) || (module_state_3 && istype(module_state_3, /obj/item/weapon/storage/bag/ore))) //Borgs and drones can use their mining bags ~automagically~ if they're deployed in a slot. Only mining bags, as they're optimized for mass use.
|
||||
var/obj/item/weapon/storage/bag/ore/B = null
|
||||
if(istype(module_state_1, /obj/item/weapon/storage/bag/ore)) //First orebag has priority, if they for some reason have multiple.
|
||||
B = module_state_1
|
||||
else if(istype(module_state_2, /obj/item/weapon/storage/bag/ore))
|
||||
B = module_state_2
|
||||
else if(istype(module_state_3, /obj/item/weapon/storage/bag/ore))
|
||||
B = module_state_3
|
||||
var/turf/tile = loc
|
||||
if(isturf(tile))
|
||||
B.gather_all(tile, src, 1) //Shhh, unless the bag fills, don't spam the borg's chat with stuff that's going on every time they move!
|
||||
return
|
||||
>>>>>>> a862d55... Fixes mining borg ore box movement on sand with a mining satchel equipped (#6693)
|
||||
|
||||
Reference in New Issue
Block a user