mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-07-14 01:24:21 +01:00
Fixes engiborgs deleting their own welder by creating a flamethrower.
The attackby() of flamethrowers can lead to flamethrower_screwdriver() and flamethrower_rods(). Two new procs that handle the creation of a flamethrower. New object /obj/item/weapon/weldingtool/largetank/cyborg. This new object does nothing on the flamethrower creation procs. I'm not entirely happy about this.
This commit is contained in:
@@ -155,29 +155,9 @@
|
||||
|
||||
/obj/item/weapon/weldingtool/attackby(obj/item/I, mob/user)
|
||||
if(istype(I, /obj/item/weapon/screwdriver))
|
||||
if(welding)
|
||||
user << "<span class='notice'>Turn it off first.</span>"
|
||||
return
|
||||
|
||||
status = !status
|
||||
if(status)
|
||||
user << "<span class='notice'>You resecure [src].</span>"
|
||||
else
|
||||
user << "<span class='notice'>[src] can now be attached and modified.</span>"
|
||||
add_fingerprint(user)
|
||||
return
|
||||
|
||||
if(!status && istype(I, /obj/item/stack/rods))
|
||||
var/obj/item/stack/rods/R = I
|
||||
R.use(1)
|
||||
var/obj/item/weapon/flamethrower/F = new /obj/item/weapon/flamethrower(user.loc)
|
||||
user.drop_from_inventory(src)
|
||||
loc = F
|
||||
F.weldtool = src
|
||||
add_fingerprint(user)
|
||||
user.put_in_hands(F)
|
||||
return
|
||||
|
||||
flamethrower_screwdriver(I, user)
|
||||
if(istype(I, /obj/item/stack/rods))
|
||||
flamethrower_rods(I, user)
|
||||
..()
|
||||
|
||||
|
||||
@@ -341,6 +321,27 @@
|
||||
spawn(100)
|
||||
user.disabilities &= ~NEARSIGHTED
|
||||
|
||||
/obj/item/weapon/weldingtool/proc/flamethrower_screwdriver(obj/item/I, mob/user)
|
||||
if(welding)
|
||||
user << "<span class='notice'>Turn it off first.</span>"
|
||||
return
|
||||
status = !status
|
||||
if(status)
|
||||
user << "<span class='notice'>You resecure [src].</span>"
|
||||
else
|
||||
user << "<span class='notice'>[src] can now be attached and modified.</span>"
|
||||
add_fingerprint(user)
|
||||
|
||||
/obj/item/weapon/weldingtool/proc/flamethrower_rods(obj/item/I, mob/user)
|
||||
if(!status)
|
||||
var/obj/item/stack/rods/R = I
|
||||
R.use(1)
|
||||
var/obj/item/weapon/flamethrower/F = new /obj/item/weapon/flamethrower(user.loc)
|
||||
user.drop_from_inventory(src)
|
||||
loc = F
|
||||
F.weldtool = src
|
||||
add_fingerprint(user)
|
||||
user.put_in_hands(F)
|
||||
|
||||
/obj/item/weapon/weldingtool/largetank
|
||||
name = "industrial welding tool"
|
||||
@@ -349,6 +350,14 @@
|
||||
g_amt = 60
|
||||
origin_tech = "engineering=2"
|
||||
|
||||
/obj/item/weapon/weldingtool/largetank/cyborg
|
||||
|
||||
/obj/item/weapon/weldingtool/largetank/cyborg/flamethrower_screwdriver()
|
||||
return
|
||||
|
||||
/obj/item/weapon/weldingtool/largetank/cyborg/flamethrower_rods()
|
||||
return
|
||||
|
||||
/obj/item/weapon/weldingtool/hugetank
|
||||
name = "upgraded welding tool"
|
||||
max_fuel = 80
|
||||
|
||||
Reference in New Issue
Block a user