Grille Repairing (#15570)

This commit is contained in:
SabreML
2021-02-24 12:52:34 +00:00
committed by GitHub
parent efa3aecb61
commit 8fd921237f
2 changed files with 24 additions and 16 deletions
+13 -13
View File
@@ -117,28 +117,28 @@
var/atom/movable/mover = caller
. = . || mover.checkpass(PASSGRILLE)
/obj/structure/grille/attackby(obj/item/W, mob/user, params)
/obj/structure/grille/attackby(obj/item/I, mob/user, params)
user.changeNext_move(CLICK_CD_MELEE)
add_fingerprint(user)
if(istype(W, /obj/item/stack/rods) && broken)
var/obj/item/stack/rods/R = W
if(!shock(user, 90))
user.visible_message("<span class='notice'>[user] rebuilds the broken grille.</span>", \
"<span class='notice'>You rebuild the broken grille.</span>")
new grille_type(loc)
R.use(1)
qdel(src)
return
if(istype(I, /obj/item/stack/rods) && broken)
repair(user, I)
//window placing begin
else if(is_glass_sheet(W))
build_window(W, user)
else if(is_glass_sheet(I))
build_window(I, user)
return
//window placing end
else if(istype(W, /obj/item/shard) || !shock(user, 70))
else if(istype(I, /obj/item/shard) || !shock(user, 70))
return ..()
/obj/structure/grille/proc/repair(mob/user, obj/item/stack/rods/R)
user.visible_message("<span class='notice'>[user] rebuilds the broken grille.</span>",
"<span class='notice'>You rebuild the broken grille.</span>")
new grille_type(loc)
R.use(1)
qdel(src)
/obj/structure/grille/wirecutter_act(mob/user, obj/item/I)
. = TRUE
if(shock(user, 100))
+11 -3
View File
@@ -166,7 +166,15 @@
return 1 //skip the afterattack
add_fingerprint(user)
if(istype(I, /obj/item/grab) && get_dist(src, user) < 2)
if(istype(I, /obj/item/stack/rods) && user.a_intent == INTENT_HELP)
for(var/obj/structure/grille/G in get_turf(src))
if(!G.broken)
continue
to_chat(user, "<span class='notice'>You start rebuilding the broken grille.</span>")
if(do_after(user, 4 SECONDS, FALSE, G))
G.repair(user, I)
else if(istype(I, /obj/item/grab) && get_dist(src, user) < 2)
var/obj/item/grab/G = I
if(isliving(G.affecting))
var/mob/living/M = G.affecting
@@ -193,8 +201,8 @@
M.Weaken(5)
M.apply_damage(30)
take_damage(75)
return
return ..()
else
return ..()
/obj/structure/window/crowbar_act(mob/user, obj/item/I)