# Conflicts:
#	code/_helpers/unsorted.dm
#	code/controllers/subsystems/mapping_vr.dm
#	code/datums/datum.dm
#	code/datums/datumvars.dm
#	code/datums/supplypacks/voidsuits.dm
#	code/game/machinery/suit_storage_unit.dm
#	code/game/objects/items/devices/defib.dm
#	code/game/objects/items/weapons/tools/weldingtool.dm
#	code/game/world.dm
#	code/modules/client/preference_setup/loadout/loadout_accessories.dm
#	code/modules/client/preference_setup/loadout/loadout_eyes.dm
#	code/modules/client/preference_setup/loadout/loadout_head.dm
#	code/modules/client/preference_setup/loadout/loadout_suit.dm
#	code/modules/client/preference_setup/loadout/loadout_uniform.dm
#	code/modules/clothing/glasses/glasses.dm
#	code/modules/food/food/snacks.dm
#	code/modules/mob/living/carbon/human/species/station/station_vr.dm
#	code/modules/reagents/Chemistry-Recipes.dm
#	code/world.dm
#	config/custom_items.txt
#	config/example/config.txt
#	config/example/game_options.txt
#	icons/mob/robots.dmi
#	icons/obj/mining.dmi
#	maps/submaps/surface_submaps/wilderness/wilderness.dm
#	vorestation.dme
This commit is contained in:
Repede
2019-04-07 19:40:12 -04:00
1789 changed files with 447589 additions and 66985 deletions
@@ -7,7 +7,6 @@
desc = "Used to remove floors and to pry open doors."
icon = 'icons/obj/tools.dmi'
icon_state = "crowbar"
flags = CONDUCT
slot_flags = SLOT_BELT
force = 6
throwforce = 7
@@ -28,9 +27,24 @@
icon_state = "red_crowbar"
item_state = "crowbar_red"
/datum/category_item/catalogue/anomalous/precursor_a/alien_crowbar
name = "Precursor Alpha Object - Hard Light Pry Tool"
desc = "An object which bears striking resemblence to the common crowbar. \
It appears to also serve a similar purpose, being used for prying. Unlike \
a crowbar, however, this object is made of some form of 'hard light'.\
<br><br>\
There is a visible switch on the base of the tool, which controls the \
hard light side of the tool. When the switch is used, the shape of \
the tool changes, with the hard light moving and making a prying motion. \
This allows the user to pry something with no physical effort beyond keeping \
the tool aligned while in use."
value = CATALOGUER_REWARD_EASY
/obj/item/weapon/tool/crowbar/alien
name = "alien crowbar"
desc = "A hard-light crowbar. It appears to pry by itself, without any effort required."
catalogue_data = list(/datum/category_item/catalogue/anomalous/precursor_a/alien_crowbar)
icon = 'icons/obj/abductor.dmi'
usesound = 'sound/weapons/sonic_jackhammer.ogg'
icon_state = "crowbar"
@@ -7,7 +7,6 @@
desc = "A steel bar with a wedge, designed specifically for opening unpowered doors in an emergency. It comes in a variety of configurations - collect them all!"
icon = 'icons/obj/tools_vr.dmi'
icon_state = "prybar"
flags = CONDUCT
slot_flags = SLOT_BELT
force = 4
throwforce = 5
@@ -6,7 +6,6 @@
desc = "You can be totally screwwy with this."
icon = 'icons/obj/tools.dmi'
icon_state = "screwdriver"
flags = CONDUCT
slot_flags = SLOT_BELT | SLOT_EARS
force = 6
w_class = ITEMSIZE_TINY
@@ -68,9 +67,24 @@
/obj/item/weapon/tool/screwdriver/is_screwdriver()
return TRUE
/datum/category_item/catalogue/anomalous/precursor_a/alien_screwdriver
name = "Precursor Alpha Object - Hard Light Torgue Tool"
desc = "This appears to be a tool, with a solid handle, and a thin hard light \
shaft, with a tip at the end. On the handle appears to be two mechanisms that \
causes the hard light section to spin at a high speed while held down, in a \
similar fashion as an electric drill. One makes it spin clockwise, the other \
counter-clockwise.\
<br><br>\
The hard light tip is able to shift its shape to a degree when pressed into \
a solid receptacle. This allows it to be able to function on many kinds of \
fastener, which includes the screws."
value = CATALOGUER_REWARD_EASY
/obj/item/weapon/tool/screwdriver/alien
name = "alien screwdriver"
desc = "An ultrasonic screwdriver."
catalogue_data = list(/datum/category_item/catalogue/anomalous/precursor_a/alien_screwdriver)
icon = 'icons/obj/abductor.dmi'
icon_state = "screwdriver_a"
item_state = "screwdriver_black"
@@ -122,4 +136,4 @@
counterpart.forceMove(get_turf(src))
src.forceMove(counterpart)
user.put_in_active_hand(counterpart)
to_chat(user, "<span class='notice'>You attach the bolt driver bit to [src].</span>")
to_chat(user, "<span class='notice'>You attach the bolt driver bit to [src].</span>")
@@ -7,7 +7,6 @@
icon = 'icons/obj/tools.dmi'
icon_state = "welder"
item_state = "welder"
flags = CONDUCT
slot_flags = SLOT_BELT
//Amount of OUCH when it's thrown
@@ -39,7 +38,8 @@
var/always_process = FALSE // If true, keeps the welder on the process list even if it's off. Used for when it needs to regenerate fuel.
toolspeed = 1
/obj/item/weapon/weldingtool/New()
/obj/item/weapon/weldingtool/Initialize()
. = ..()
// var/random_fuel = min(rand(10,20),max_fuel)
var/datum/reagents/R = new/datum/reagents(max_fuel)
reagents = R
@@ -47,12 +47,11 @@
R.add_reagent("fuel", max_fuel)
update_icon()
if(always_process)
processing_objects |= src
..()
START_PROCESSING(SSobj, src)
/obj/item/weapon/weldingtool/Destroy()
if(welding || always_process)
processing_objects -= src
STOP_PROCESSING(SSobj, src)
return ..()
/obj/item/weapon/weldingtool/examine(mob/user)
@@ -60,7 +59,7 @@
if(max_fuel)
to_chat(user, text("\icon[] The [] contains []/[] units of fuel!", src, src.name, get_fuel(),src.max_fuel ))
/obj/item/weapon/weldingtool/attack(var/atom/A, var/mob/living/user, var/def_zone)
/obj/item/weapon/weldingtool/attack(atom/A, mob/living/user, def_zone)
if(ishuman(A) && user.a_intent == I_HELP)
var/mob/living/carbon/human/H = A
var/obj/item/organ/external/S = H.organs_by_name[user.zone_sel.selecting]
@@ -115,18 +114,13 @@
..()
return
/obj/item/weapon/weldingtool/process()
if(welding)
++burned_fuel_for
if(burned_fuel_for >= WELDER_FUEL_BURN_INTERVAL)
remove_fuel(1)
if(get_fuel() < 1)
setWelding(0)
//I'm not sure what this does. I assume it has to do with starting fires...
//...but it doesnt check to see if the welder is on or not.
var/turf/location = src.loc
@@ -137,7 +131,6 @@
if (istype(location, /turf))
location.hotspot_expose(700, 5)
/obj/item/weapon/weldingtool/afterattack(obj/O as obj, mob/user as mob, proximity)
if(!proximity) return
if (istype(O, /obj/structure/reagent_dispensers/fueltank) && get_dist(src,O) <= 1)
@@ -164,12 +157,8 @@
L.IgniteMob()
if (istype(location, /turf))
location.hotspot_expose(700, 50, 1)
return
/obj/item/weapon/weldingtool/attack_self(mob/user as mob)
setWelding(!welding, usr)
return
/obj/item/weapon/weldingtool/attack_self(mob/user)
setWelding(!welding, user)
//Returns the amount of fuel in the welder
/obj/item/weapon/weldingtool/proc/get_fuel()
@@ -198,7 +187,7 @@
//Returns whether or not the welding tool is currently on.
/obj/item/weapon/weldingtool/proc/isOn()
return src.welding
return welding
/obj/item/weapon/weldingtool/update_icon()
..()
@@ -214,7 +203,7 @@
// Fuel counter overlay.
if(change_icons && get_max_fuel())
var/ratio = get_fuel() / get_max_fuel()
ratio = Ceiling(ratio*4) * 25
ratio = CEILING(ratio * 4, 1) * 25
var/image/I = image(icon, src, "[icon_state][ratio]")
overlays.Add(I)
@@ -283,7 +272,7 @@
welding = 1
update_icon()
if(!always_process)
processing_objects |= src
START_PROCESSING(SSobj, src)
else
if(M)
var/msg = max_fuel ? "welding fuel" : "charge"
@@ -292,7 +281,7 @@
//Otherwise
else if(!set_welding && welding)
if(!always_process)
processing_objects -= src
STOP_PROCESSING(SSobj, src)
if(M)
to_chat(M, "<span class='notice'>You switch \the [src] off.</span>")
else if(T)
@@ -386,9 +375,34 @@
toolspeed = 2
eye_safety_modifier = 1 // Safer on eyes.
/datum/category_item/catalogue/anomalous/precursor_a/alien_welder
name = "Precursor Alpha Object - Self Refueling Exothermic Tool"
desc = "An unwieldly tool which somewhat resembles a weapon, due to \
having a prominent trigger attached to the part which would presumably \
have been held by whatever had created this object. When the trigger is \
held down, a small but very high temperature flame shoots out from the \
tip of the tool. The grip is able to be held by human hands, however the \
shape makes it somewhat awkward to hold.\
<br><br>\
The tool appears to utilize an unknown fuel to light and maintain the \
flame. What is more unusual, is that the fuel appears to replenish itself. \
How it does this is not known presently, however experimental human-made \
welders have been known to have a similar quality.\
<br><br>\
Interestingly, the flame is able to cut through a wide array of materials, \
such as iron, steel, stone, lead, plasteel, and even durasteel. Yet, it is unable \
to cut the unknown material that itself and many other objects made by this \
precursor civilization have made. This raises questions on the properties of \
that material, and how difficult it would have been to work with. This tool \
does demonstrate, however, that the alien fuel cannot melt precursor beams, walls, \
or other structual elements, making it rather limited for their \
deconstruction purposes."
value = CATALOGUER_REWARD_EASY
/obj/item/weapon/weldingtool/alien
name = "alien welding tool"
desc = "An alien welding tool. Whatever fuel it uses, it never runs out."
catalogue_data = list(/datum/category_item/catalogue/anomalous/precursor_a/alien_welder)
icon = 'icons/obj/abductor.dmi'
icon_state = "welder"
toolspeed = 0.1
@@ -609,4 +623,4 @@
/obj/item/weapon/weldingtool/electric/mounted/cyborg
toolspeed = 0.5
#undef WELDER_FUEL_BURN_INTERVAL
#undef WELDER_FUEL_BURN_INTERVAL
@@ -6,7 +6,6 @@
desc = "This cuts wires."
icon = 'icons/obj/tools.dmi'
icon_state = "cutters"
flags = CONDUCT
slot_flags = SLOT_BELT
force = 6
throw_speed = 2
@@ -44,9 +43,24 @@
/obj/item/weapon/tool/wirecutters/is_wirecutter()
return TRUE
/datum/category_item/catalogue/anomalous/precursor_a/alien_wirecutters
name = "Precursor Alpha Object - Wire Seperator"
desc = "An object appearing to have a tool shape. It has two handles, and two \
sides which are attached to each other in the center. At the end on each side \
is a sharp cutting edge, made from a seperate material than the rest of the \
tool.\
<br><br>\
This tool appears to serve the same purpose as conventional wirecutters, due \
to how similar the shapes are. If so, this implies that the creators of this \
object also may utilize flexible cylindrical strands of metal to transmit \
energy and signals, just as humans do."
value = CATALOGUER_REWARD_EASY
/obj/item/weapon/tool/wirecutters/alien
name = "alien wirecutters"
desc = "Extremely sharp wirecutters, made out of a silvery-green metal."
catalogue_data = list(/datum/category_item/catalogue/anomalous/precursor_a/alien_wirecutters)
icon = 'icons/obj/abductor.dmi'
icon_state = "cutters"
toolspeed = 0.1
@@ -6,7 +6,6 @@
desc = "A wrench with many common uses. Can be usually found in your hand."
icon = 'icons/obj/tools.dmi'
icon_state = "wrench"
flags = CONDUCT
slot_flags = SLOT_BELT
force = 6
throwforce = 7
@@ -26,9 +25,26 @@
usesound = 'sound/items/drill_use.ogg'
toolspeed = 0.5
/datum/category_item/catalogue/anomalous/precursor_a/alien_wrench
name = "Precursor Alpha Object - Fastener Torque Tool"
desc = "This is an object that has a distinctive tool shape. \
It has a handle on one end, with a simple mechanism attached to it. \
On the other end is the head of the tool, with two sides each glowing \
a different color. The head opens up towards the top, in a similar shape \
as a conventional wrench.\
<br><br>\
When an object is placed into the head section of the tool, the tool appears \
to force the object to be turned in a specific direction. The direction can be \
inverted by pressing down on the mechanism on the handle. It is not known if \
this tool was intended by its creators to tighten fasteners or if it has a less obvious \
purpose, however it is very well suited to act in a wrench's capacity regardless."
value = CATALOGUER_REWARD_EASY
/obj/item/weapon/tool/wrench/alien
name = "alien wrench"
desc = "A polarized wrench. It causes anything placed between the jaws to turn."
catalogue_data = list(/datum/category_item/catalogue/anomalous/precursor_a/alien_wrench)
icon = 'icons/obj/abductor.dmi'
icon_state = "wrench"
usesound = 'sound/effects/empulse.ogg'
@@ -68,4 +84,4 @@
counterpart.forceMove(get_turf(src))
src.forceMove(counterpart)
user.put_in_active_hand(counterpart)
to_chat(user, "<span class='notice'>You attach the screw driver bit to [src].</span>")
to_chat(user, "<span class='notice'>You attach the screw driver bit to [src].</span>")