mirror of
https://github.com/vgstation-coders/vgstation13.git
synced 2025-12-09 16:14:13 +00:00
Welder sprite update (#12747)
* New welder sprites for welders using duplicate sprites. Credit to DragonBro for the sprites. * The GATLING WELDER * removes capitalization * I don't know how this works but Kurfurst is smarter than me I do know that. * Comment thanks to Comics explanation. * Dropping redundant proc calls. * Cutting the comment down to only note that it is a ternary operator. * Adds in_hand sprites for welders. * replaces items_lefthand.dmi and righthand with their previous files. Adds all welder in hand sprites to misc_tools.dmi Adds research to unlock gatling welders. * Finalization of research requirements.
This commit is contained in:
@@ -204,8 +204,10 @@
|
||||
*/
|
||||
/obj/item/weapon/weldingtool
|
||||
name = "welding tool"
|
||||
desc = "Ensure the switch is safely in the off position before refueling."
|
||||
icon = 'icons/obj/items.dmi'
|
||||
icon_state = "welder"
|
||||
inhand_states = list("left_hand" = 'icons/mob/in-hand/left/misc_tools.dmi', "right_hand" = 'icons/mob/in-hand/right/misc_tools.dmi')
|
||||
hitsound = 'sound/weapons/toolhit.ogg'
|
||||
flags = FPRINT
|
||||
siemens_coefficient = 1
|
||||
@@ -293,7 +295,7 @@
|
||||
if(src.icon_state != "welder") //Check that the sprite is correct, if it isnt, it means toggle() was not called
|
||||
src.force = 3
|
||||
src.damtype = "brute"
|
||||
src.icon_state = "welder"
|
||||
update_icon()
|
||||
src.hitsound = "sound/weapons/toolhit.ogg"
|
||||
src.welding = 0
|
||||
processing_objects.Remove(src)
|
||||
@@ -303,7 +305,7 @@
|
||||
if(src.icon_state != "welder1") //Check that the sprite is correct, if it isnt, it means toggle() was not called
|
||||
src.force = 15
|
||||
src.damtype = "fire"
|
||||
src.icon_state = "welder1"
|
||||
update_icon()
|
||||
src.hitsound = "sound/weapons/welderattack.ogg"
|
||||
if(prob(5))
|
||||
remove_fuel(1)
|
||||
@@ -399,7 +401,7 @@
|
||||
to_chat(usr, "<span class='notice'>\The [src] switches on.</span>")
|
||||
src.force = 15
|
||||
src.damtype = "fire"
|
||||
src.icon_state = "welder1"
|
||||
update_icon()
|
||||
processing_objects.Add(src)
|
||||
else
|
||||
to_chat(usr, "<span class='notice'>Need more fuel!</span>")
|
||||
@@ -410,7 +412,7 @@
|
||||
to_chat(usr, "<span class='notice'>\The [src] switches off.</span>")
|
||||
src.force = 3
|
||||
src.damtype = "brute"
|
||||
src.icon_state = "welder"
|
||||
update_icon()
|
||||
src.welding = 0
|
||||
|
||||
//Turns off the welder if there is no more fuel (does this really need to be its own proc?)
|
||||
@@ -431,7 +433,7 @@
|
||||
to_chat(usr, "<span class='notice'>You switch the [src] on.</span>")
|
||||
src.force = 15
|
||||
src.damtype = "fire"
|
||||
src.icon_state = "welder1"
|
||||
update_icon()
|
||||
processing_objects.Add(src)
|
||||
else
|
||||
to_chat(usr, "<span class='notice'>Need more fuel!</span>")
|
||||
@@ -444,7 +446,7 @@
|
||||
to_chat(usr, "<span class='notice'>\The [src] shuts off!</span>")
|
||||
src.force = 3
|
||||
src.damtype = "brute"
|
||||
src.icon_state = "welder"
|
||||
update_icon()
|
||||
src.welding = 0
|
||||
|
||||
//Decides whether or not to damage a player's eyes based on what they're wearing as protection
|
||||
@@ -497,11 +499,18 @@
|
||||
spawn(100)
|
||||
user.disabilities &= ~NEARSIGHTED
|
||||
|
||||
/obj/item/weapon/weldingtool/update_icon()
|
||||
..()
|
||||
icon_state = "[initial(icon_state)][welding ? "1" : ""]" //Ternary operator.
|
||||
|
||||
|
||||
/obj/item/weapon/weldingtool/empty
|
||||
start_fueled = 0
|
||||
|
||||
/obj/item/weapon/weldingtool/largetank
|
||||
name = "Industrial Welding Tool"
|
||||
desc = "The cutting edge between portability and tank size."
|
||||
icon_state = "welder_large"
|
||||
max_fuel = 40
|
||||
starting_materials = list(MAT_IRON = 70, MAT_GLASS = 60)
|
||||
origin_tech = Tc_ENGINEERING + "=2"
|
||||
@@ -511,6 +520,8 @@
|
||||
|
||||
/obj/item/weapon/weldingtool/hugetank
|
||||
name = "Upgraded Welding Tool"
|
||||
desc = "A large tank for a large job."
|
||||
icon_state = "welder_larger"
|
||||
max_fuel = 80
|
||||
w_class = W_CLASS_MEDIUM
|
||||
starting_materials = list(MAT_IRON = 70, MAT_GLASS = 120)
|
||||
@@ -519,6 +530,19 @@
|
||||
/obj/item/weapon/weldingtool/hugetank/empty
|
||||
start_fueled = 0
|
||||
|
||||
/obj/item/weapon/weldingtool/gatling
|
||||
name = "gatling welder"
|
||||
desc = "Engineering Dakka."
|
||||
icon_state = "welder_gatling"
|
||||
max_fuel = 160
|
||||
w_class = W_CLASS_HUGE
|
||||
starting_materials = list(MAT_IRON = 18750, MAT_GLASS = 18750)
|
||||
origin_tech = Tc_ENGINEERING + "=4"
|
||||
|
||||
/obj/item/weapon/weldingtool/gatling/empty
|
||||
start_fueled = 0
|
||||
|
||||
|
||||
/obj/item/weapon/weldingtool/experimental
|
||||
name = "Experimental Welding Tool"
|
||||
max_fuel = 40
|
||||
|
||||
@@ -162,3 +162,13 @@
|
||||
materials = list(MAT_IRON = 500, MAT_GLASS = 100)
|
||||
build_path = /obj/item/device/t_scanner/advanced
|
||||
category = "Engineering"
|
||||
|
||||
/datum/design/welder_gatling
|
||||
name = "Gatling Welder"
|
||||
desc = "Engineering Dakka."
|
||||
id = "welder_gatling"
|
||||
req_tech = list(Tc_ENGINEERING = 5, Tc_BLUESPACE = 2)
|
||||
build_type = PROTOLATHE
|
||||
materials = list(MAT_IRON = 18750, MAT_GLASS = 9375)
|
||||
build_path = /obj/item/weapon/weldingtool/gatling/empty
|
||||
category = "Engineering"
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 6.4 KiB After Width: | Height: | Size: 13 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 6.4 KiB After Width: | Height: | Size: 13 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 86 KiB After Width: | Height: | Size: 88 KiB |
Reference in New Issue
Block a user