mirror of
https://github.com/Aurorastation/Aurora.3.git
synced 2026-07-15 01:46:30 +01:00
Bugfixes: Welding tool, Constructs, Runes (#1072)
Fixes #1066 Fixes #1065 Fixes #1053
This commit is contained in:
@@ -306,15 +306,24 @@
|
||||
var/mob/living/carbon/human/H = M
|
||||
if(H.species.flags & IS_SYNTHETIC)
|
||||
if(M == user)
|
||||
user << "\red You can't repair damage to your own body - it's against OH&S."
|
||||
user << "<span class='warning'>You can't repair damage to your own body - it's against OH&S.</span>"
|
||||
return
|
||||
|
||||
if(S.brute_dam)
|
||||
S.heal_damage(15,0,0,1)
|
||||
user.visible_message("\red \The [user] patches some dents on \the [M]'s [S.name] with \the [src].")
|
||||
if(S.brute_dam == 0)
|
||||
// Organ undamaged
|
||||
user << "Nothing to fix here!"
|
||||
return
|
||||
if (!src.welding)
|
||||
// Welder is switched off!
|
||||
user << "<span class='warning'>You need to light the welding tool, first!</span>"
|
||||
return
|
||||
if (src.remove_fuel(0))
|
||||
// Use a bit of fuel and repair
|
||||
S.heal_damage(15,0,0,1)
|
||||
user.visible_message("<span class='warning'>\The [user] patches some dents on \the [M]'s [S.name] with \the [src].</span>")
|
||||
else
|
||||
user << "Nothing to fix!"
|
||||
// Welding tool is out of fuel
|
||||
user << "Need more welding fuel!"
|
||||
return
|
||||
|
||||
else
|
||||
return ..()
|
||||
|
||||
@@ -425,7 +425,10 @@
|
||||
if(istype(O,/obj/effect/decal/cleanable) || istype(O,/obj/effect/overlay))
|
||||
qdel(O)
|
||||
if(istype(O,/obj/effect/rune))
|
||||
user << "<span class='warning'>\red No matter how well you wash, the bloody symbols remain!</span>"
|
||||
var/obj/effect/rune/R = O
|
||||
// Only show message for visible runes
|
||||
if (R.visibility)
|
||||
user << "<span class='warning'>No matter how well you wash, the bloody symbols remain!</span>"
|
||||
else
|
||||
user << "<span class='warning'>\The [source] is too dry to wash that.</span>"
|
||||
source.reagents.trans_to_turf(src, 1, 10) //10 is the multiplier for the reaction effect. probably needed to wet the floor properly.
|
||||
|
||||
@@ -456,16 +456,20 @@
|
||||
user << "<span class='warning'>You lack the reach to be able to repair yourself.</span>"
|
||||
return
|
||||
|
||||
if (!getBruteLoss())
|
||||
if (getBruteLoss() == 0)
|
||||
user << "Nothing to fix here!"
|
||||
return
|
||||
var/obj/item/weapon/weldingtool/WT = W
|
||||
if (!WT.welding)
|
||||
// Welding tool is switched off
|
||||
user << "<span class='warning'>You need to light the welding tool, first!</span>"
|
||||
return
|
||||
if (WT.remove_fuel(0))
|
||||
adjustBruteLoss(-30)
|
||||
updatehealth()
|
||||
add_fingerprint(user)
|
||||
for(var/mob/O in viewers(user, null))
|
||||
O.show_message(text("\red [user] has fixed some of the dents on [src]!"), 1)
|
||||
O.show_message(text("<span class='warning'>[user] has fixed some of the dents on [src]!</span>"), 1)
|
||||
else
|
||||
user << "Need more welding fuel!"
|
||||
return
|
||||
|
||||
@@ -57,11 +57,14 @@
|
||||
|
||||
/mob/living/simple_animal/construct/attack_generic(var/mob/user)
|
||||
if(istype(user, /mob/living/simple_animal/construct/builder))
|
||||
if(health < maxHealth)
|
||||
if(getBruteLoss() > 0)
|
||||
adjustBruteLoss(-5)
|
||||
user.visible_message("<span class='notice'>\The [user]</b> mends some of \the [src]'s wounds.</span>")
|
||||
else
|
||||
user << "<span class='notice'>\The [src] is undamaged.</span>"
|
||||
if (health < maxHealth)
|
||||
user << "<span class='notice'>Healing \the [src] any further is beyond your abilities.</span>"
|
||||
else
|
||||
user << "<span class='notice'>\The [src] is undamaged.</span>"
|
||||
return
|
||||
return ..()
|
||||
|
||||
@@ -131,6 +134,16 @@
|
||||
|
||||
return (..(P))
|
||||
|
||||
/mob/living/simple_animal/construct/armoured/UnarmedAttack(var/atom/A, var/proximity)
|
||||
if(istype(A, /obj/machinery))
|
||||
// Destroy machines instead of opening their UI
|
||||
var/obj/machinery/M = A
|
||||
do_attack_animation(M)
|
||||
playsound(loc, attack_sound, 50, 1, 1)
|
||||
M.ex_act(3.0)
|
||||
else
|
||||
..()
|
||||
|
||||
|
||||
|
||||
////////////////////////Wraith/////////////////////////////////////////////
|
||||
|
||||
@@ -0,0 +1,10 @@
|
||||
author: inselc
|
||||
|
||||
delete-after: True
|
||||
|
||||
changes:
|
||||
- bugfix: "Fixed welding tool not using fuel when repairing IPCs, and repairing IPCs in switched-off state."
|
||||
- bugfix: "Fixed Artificers healing other constructs."
|
||||
- bugfix: "Fixed invisible runes triggering message when trying to clean the tile they're on."
|
||||
- rscadd: "Added Juggernaut ability to smash machines."
|
||||
|
||||
Reference in New Issue
Block a user