This commit is contained in:
Fox-McCloud
2015-09-04 05:18:48 -04:00
parent 7c29e59784
commit a019934e9e
80 changed files with 254 additions and 329 deletions
+1 -1
View File
@@ -8,7 +8,7 @@
item_state = "electronic"
throw_speed = 4
throw_range = 20
m_amt = 500
materials = list(MAT_METAL=500)
var/obj/item/weapon/disk/nuclear/the_disk = null
var/active = 0
+40 -41
View File
@@ -105,7 +105,7 @@
var/area/alarm_area
var/danger_level = 0
var/alarmActivated = 0 // Manually activated (independent from danger level)
var/buildstage = 2 //2 is built, 1 is building, 0 is frame.
var/target_temperature = T0C+20
@@ -114,21 +114,21 @@
var/datum/radio_frequency/radio_connection
var/list/TLV = list()
var/report_danger_level = 1
/obj/machinery/alarm/monitor
report_danger_level = 0
/obj/machinery/alarm/server
preset = AALARM_PRESET_SERVER
/obj/machinery/alarm/vox
preset = AALARM_PRESET_VOX
/obj/machinery/alarm/kitchen_cold_room
preset = AALARM_PRESET_COLDROOM
/obj/machinery/alarm/proc/apply_preset(var/no_cycle_after=0)
// Propogate settings.
for (var/obj/machinery/alarm/AA in alarm_area)
@@ -143,10 +143,10 @@
"plasma" = new/datum/tlv(-1.0, -1.0, 0.2, 0.5), // Partial pressure, kpa
"other" = new/datum/tlv(-1.0, -1.0, 0.5, 1.0), // Partial pressure, kpa
"pressure" = new/datum/tlv(ONE_ATMOSPHERE*0.80,ONE_ATMOSPHERE*0.90,ONE_ATMOSPHERE*1.10,ONE_ATMOSPHERE*1.20), /* kpa */
"temperature" = new/datum/tlv(T0C, T0C+10, T0C+40, T0C+66), // K
"temperature" = new/datum/tlv(T0C, T0C+10, T0C+40, T0C+66), // K
)
switch(preset)
if(AALARM_PRESET_VOX)
if(AALARM_PRESET_VOX)
TLV = list(
"oxygen" = new/datum/tlv(-1.0, -1.0, 1, 2), // Partial pressure, kpa
"nitrogen" = new/datum/tlv(16, 19, 135, 140), // Partial pressure, kpa
@@ -154,9 +154,9 @@
"plasma" = new/datum/tlv(-1.0, -1.0, 0.2, 0.5), // Partial pressure, kpa
"other" = new/datum/tlv(-1.0, -1.0, 0.5, 1.0), // Partial pressure, kpa
"pressure" = new/datum/tlv(ONE_ATMOSPHERE*0.80,ONE_ATMOSPHERE*0.90,ONE_ATMOSPHERE*1.10,ONE_ATMOSPHERE*1.20), /* kpa */
"temperature" = new/datum/tlv(T0C, T0C+10, T0C+40, T0C+66), // K
"temperature" = new/datum/tlv(T0C, T0C+10, T0C+40, T0C+66), // K
)
if(AALARM_PRESET_SERVER)
if(AALARM_PRESET_SERVER)
TLV = list(
"oxygen" = new/datum/tlv(-1.0, -1.0,-1.0,-1.0), // Partial pressure, kpa
"nitrogen" = new/datum/tlv(-1.0, -1.0, -1.0, -1.0), // Partial pressure, kpa
@@ -166,7 +166,7 @@
"pressure" = new/datum/tlv(-1.0, -1.0,-1.0,-1.0), /* kpa */
"temperature" = new/datum/tlv(-1.0, -1.0,-1.0,-1.0), // K
)
if(AALARM_PRESET_COLDROOM)
if(AALARM_PRESET_COLDROOM)
TLV = list(
"oxygen" = new/datum/tlv(16, 19, 135, 140), // Partial pressure, kpa
"nitrogen" = new/datum/tlv(-1.0, -1.0, -1.0, -1.0), // Partial pressure, kpa
@@ -176,7 +176,7 @@
"pressure" = new/datum/tlv(ONE_ATMOSPHERE*0.80,ONE_ATMOSPHERE*0.90,ONE_ATMOSPHERE*1.50,ONE_ATMOSPHERE*1.60), /* kpa */
"temperature" = new/datum/tlv(200, 210, 273.15, 283.15), // K
)
if(!no_cycle_after)
mode = AALARM_MODE_REPLACEMENT
apply_mode()
@@ -185,7 +185,7 @@
..()
air_alarms += src
air_alarms = sortAtom(air_alarms)
wires = new(src)
if(building)
@@ -223,7 +223,7 @@
set_frequency(frequency)
if (!master_is_operating())
elect_master()
/obj/machinery/alarm/proc/master_is_operating()
if (! alarm_area)
alarm_area = areaMaster
@@ -243,12 +243,12 @@
return
var/turf/simulated/location = loc
if(!istype(location))
if(!istype(location))
return 0
var/datum/gas_mixture/environment = location.return_air()
var/datum/tlv/cur_tlv
handle_heating_cooling(environment, cur_tlv, location)
var/GET_PP = R_IDEAL_GAS_EQUATION*environment.temperature/environment.volume
@@ -256,13 +256,13 @@
cur_tlv = TLV["pressure"]
var/environment_pressure = environment.return_pressure()
var/pressure_dangerlevel = cur_tlv.get_danger_level(environment_pressure)
cur_tlv = TLV["oxygen"]
var/oxygen_dangerlevel = cur_tlv.get_danger_level(environment.oxygen*GET_PP)
cur_tlv = TLV["nitrogen"]
var/nitrogen_dangerlevel = cur_tlv.get_danger_level(environment.nitrogen*GET_PP)
var/nitrogen_dangerlevel = cur_tlv.get_danger_level(environment.nitrogen*GET_PP)
cur_tlv = TLV["carbon dioxide"]
var/co2_dangerlevel = cur_tlv.get_danger_level(environment.carbon_dioxide*GET_PP)
@@ -291,11 +291,11 @@
if (old_danger_level!=danger_level)
apply_danger_level()
if (mode == AALARM_MODE_REPLACEMENT && environment_pressure < ONE_ATMOSPHERE * 0.05)
mode = AALARM_MODE_SCRUBBING
apply_mode()
/obj/machinery/alarm/proc/handle_heating_cooling(var/datum/gas_mixture/environment, var/datum/tlv/cur_tlv, var/turf/simulated/location)
cur_tlv = TLV["temperature"]
//Handle temperature adjustment here.
@@ -603,7 +603,7 @@
/obj/machinery/alarm/attack_robot(mob/user)
return attack_ai(user)
/obj/machinery/alarm/attack_ghost(user as mob)
if(stat & (BROKEN|MAINT))
return
@@ -614,22 +614,22 @@
if (.)
return
return interact(user)
/obj/machinery/alarm/interact(mob/user)
if(buildstage != 2)
return
if(wiresexposed && !istype(user, /mob/living/silicon/ai))
wires.Interact(user)
if(!shorted)
ui_interact(user)
/obj/machinery/alarm/proc/ui_air_status()
var/turf/location = get_turf(src)
if(!istype(location))
if(!istype(location))
return
var/datum/gas_mixture/environment = location.return_air()
var/total = environment.oxygen + environment.nitrogen + environment.carbon_dioxide + environment.toxins
if(total==0)
@@ -754,7 +754,7 @@
scrubbers+=list(scrubber_data)
data["scrubbers"]=scrubbers
return data
/obj/machinery/alarm/proc/get_nano_data_console(mob/user)
var/data[0]
data["name"] = sanitize(name)
@@ -766,7 +766,7 @@
data["y"] = pos.y
data["z"] = pos.z
return data
/obj/machinery/alarm/proc/generate_thresholds_menu()
var/datum/tlv/selected
var/list/thresholds = list()
@@ -800,9 +800,9 @@
thresholds[thresholds.len]["settings"] += list(list("env" = "temperature", "val" = "max2", "selected" = selected.max2))
return thresholds
/obj/machinery/alarm/ui_interact(mob/user, ui_key = "main", datum/nanoui/ui = null, force_open = 1, var/master_ui = null, var/datum/topic_state/state = default_state)
var/list/href = state.href_list(user)
var/list/href = state.href_list(user)
var/remote_connection = 0
var/remote_access = 0
if(href)
@@ -812,8 +812,8 @@
var/list/data = get_nano_data(user, href)
data["remote_connection"] = remote_connection
data["remote_access"] = remote_access
data["remote_access"] = remote_access
ui = nanomanager.try_update_ui(user, src, ui_key, ui, data, force_open)
if(!ui)
ui = new(user, src, ui_key, "air_alarm.tmpl", name, 570, 410, state = state)
@@ -828,7 +828,7 @@
return 1
else
return !locked
/obj/machinery/alarm/proc/is_locked(mob/user as mob, href_list)
if(isobserver(user) && check_rights(R_ADMIN, 0, user))
return 0
@@ -838,13 +838,13 @@
return 0
else
return locked
/obj/machinery/alarm/proc/is_auth_rcon(href_list)
if(href_list && href_list["remote_connection"] && href_list["remote_access"])
return 1
else
return 0
/obj/machinery/alarm/CanUseTopic(var/mob/user, var/datum/topic_state/state, var/href_list = list())
if(buildstage != 2)
return STATUS_CLOSE
@@ -862,12 +862,12 @@
. = STATUS_UPDATE
return min(..(), .)
/obj/machinery/alarm/Topic(href, href_list, var/nowindow = 0, var/datum/topic_state/state)
/obj/machinery/alarm/Topic(href, href_list, var/nowindow = 0, var/datum/topic_state/state)
if(..(href, href_list, nowindow, state))
return 1
var/state_href = state.href_list(usr)
if(href_list["rcon"])
var/attempted_rcon_setting = text2num(href_list["rcon"])
switch(attempted_rcon_setting)
@@ -1101,5 +1101,4 @@ Just an object used in constructing air alarms
icon_state = "door_electronics"
desc = "Looks like a circuit. Probably is."
w_class = 2.0
m_amt = 50
g_amt = 50
materials = list(MAT_METAL=50, MAT_GLASS=50)
@@ -5,8 +5,7 @@
icon_state = "cameracase"
w_class = 2
anchored = 0
m_amt = 400
g_amt = 250
materials = list(MAT_METAL=400, MAT_GLASS=250)
// Motion, EMP-Proof, X-Ray
var/list/obj/item/possible_upgrades = list(/obj/item/device/assembly/prox_sensor, /obj/item/stack/sheet/mineral/plasma, /obj/item/device/analyzer)
+1 -1
View File
@@ -179,7 +179,7 @@
//Machine Frame Circuit Boards
/*Common Parts: Parts List: Ignitor, Timer, Infra-red laser, Infra-red sensor, t_scanner, Capacitor, Valve, sensor unit,
micro-manipulator, console screen, beaker, Microlaser, matter bin, power cells.
Note: Once everything is added to the public areas, will add m_amt and g_amt to circuit boards since autolathe won't be able
Note: Once everything is added to the public areas, will add MAT_METAL and MAT_GLASS to circuit boards since autolathe won't be able
to destroy them and players will be able to make replacements.
*/
/obj/item/weapon/circuitboard/vendor
+2 -2
View File
@@ -596,7 +596,7 @@ About the new airlock wires panel:
if (src.isElectrified())
if (istype(mover, /obj/item))
var/obj/item/i = mover
if (i.m_amt)
if (i.materials[MAT_METAL])
var/datum/effect/effect/system/spark_spread/s = new /datum/effect/effect/system/spark_spread
s.set_up(5, 1, src)
s.start()
@@ -1049,4 +1049,4 @@ About the new airlock wires panel:
src.unlock()
src.open()
src.lock()
return
return
@@ -5,8 +5,7 @@
icon = 'icons/obj/doors/door_assembly.dmi'
icon_state = "door_electronics"
w_class = 2.0 //It should be tiny! -Agouri
m_amt = 50
g_amt = 50
materials = list(MAT_METAL=50, MAT_GLASS=50)
req_access = list(access_engine)
+4 -5
View File
@@ -53,8 +53,8 @@ FIRE ALARM
if(src.detecting)
if(temperature > T0C+200)
src.alarm() // added check of detector status here
return
return
/obj/machinery/firealarm/attack_ai(mob/user as mob)
src.add_hiddenprint(user)
return src.attack_hand(user)
@@ -213,7 +213,7 @@ FIRE ALARM
/obj/machinery/firealarm/Topic(href, href_list)
if(..())
return 1
if (buildstage != 2)
return 1
@@ -285,8 +285,7 @@ Just a object used in constructing fire alarms
icon_state = "door_electronics"
desc = "A circuit. It has a label on it, it says \"Can handle heat levels up to 40 degrees celsius!\""
w_class = 2.0
m_amt = 50
g_amt = 50
materials = list(MAT_METAL=50, MAT_GLASS=50)
/obj/machinery/partyalarm
name = "\improper PARTY BUTTON"
+3 -4
View File
@@ -81,8 +81,7 @@
icon_broken = "ashtray_bork_bl"
max_butts = 14
health = 24.0
g_amt = 30
m_amt = 30
materials = list(MAT_METAL=30, MAT_GLASS=30)
empty_desc = "Cheap plastic ashtray."
throwforce = 3.0
die()
@@ -102,7 +101,7 @@
icon_broken = "ashtray_bork_br"
max_butts = 10
health = 72.0
m_amt = 80
materials = list(MAT_METAL=80)
empty_desc = "Massive bronze ashtray."
throwforce = 10.0
@@ -123,7 +122,7 @@
icon_broken = "ashtray_bork_gl"
max_butts = 12
health = 12.0
g_amt = 60
materials = list(MAT_GLASS=60)
empty_desc = "Glass ashtray. Looks fragile."
throwforce = 6.0
+1 -2
View File
@@ -16,8 +16,7 @@
throw_range = 15
throw_speed = 3
desc = "You can use this on airlocks or APCs to try to hack them without cutting wires."
m_amt = 50
g_amt = 20
materials = list(MAT_METAL=50, MAT_GLASS=20)
origin_tech = "magnets=1;engineering=1"
var/obj/machinery/telecomms/buffer // simple machine buffer for device linkage
@@ -7,8 +7,7 @@
w_class = 2
flags = CONDUCT
slot_flags = SLOT_BELT
m_amt = 50
g_amt = 20
materials = list(MAT_METAL=50, MAT_GLASS=20)
action_button_name = "Flashlight"
var/on = 0
var/brightness_on = 4 //luminosity when on
@@ -119,8 +118,7 @@
brightness_on = 5
w_class = 4
flags = CONDUCT
m_amt = 0
g_amt = 0
materials = list()
on = 1
@@ -214,6 +212,7 @@ obj/item/device/flashlight/lamp/bananalamp
w_class = 1
brightness_on = 6
light_color = "#FFBF00"
materials = list()
on = 1 //Bio-luminesence has one setting, on.
/obj/item/device/flashlight/slime/New()
@@ -7,8 +7,7 @@
var/pointer_icon_state
flags = CONDUCT
slot_flags = SLOT_BELT
m_amt = 500
g_amt = 500
materials = list(MAT_METAL=500, MAT_GLASS=500)
w_class = 2 //Increased to 2, because diodes are w_class 2. Conservation of matter.
origin_tech = "combat=1"
origin_tech = "magnets=2"
+1 -2
View File
@@ -15,8 +15,7 @@
throw_range = 15
throw_speed = 3
desc = "You can use this on airlocks or APCs to try to hack them without cutting wires."
m_amt = 50
g_amt = 20
materials = list(MAT_METAL=50, MAT_GLASS=20)
origin_tech = "magnets=1;engineering=1"
var/obj/machinery/buffer // simple machine buffer for device linkage
+1 -2
View File
@@ -10,8 +10,7 @@
throwforce = 5
throw_speed = 1
throw_range = 2
m_amt = 750
w_amt = 750
materials = list(MAT_METAL=750)
origin_tech = "powerstorage=3;syndicate=5"
var/drain_rate = 1500000 // amount of power to drain per tick
var/apc_drain_rate = 5000 // Max. amount drained from single APC. In Watts.
@@ -7,8 +7,7 @@
flags = CONDUCT
slot_flags = SLOT_BACK
w_class = 5.0
g_amt = 2500
m_amt = 10000
materials = list(MAT_METAL=10000, MAT_GLASS=2500)
var/code = 2
/obj/item/device/radio/electropack/attack_hand(mob/user as mob)
@@ -4,7 +4,7 @@
var/radio_desc = ""
icon_state = "headset"
item_state = "headset"
m_amt = 75
materials = list(MAT_METAL=75)
subspace_transmission = 1
canhear_range = 0 // can't hear headsets from very far away
@@ -39,7 +39,7 @@
add_fingerprint(user)
spawn(0)
attack_self(user)
/obj/item/device/radio/intercom/attack_ghost(mob/user as mob)
spawn(0)
attack_self(user)
@@ -160,5 +160,4 @@
icon_state = "door_electronics"
desc = "Looks like a circuit. Probably is."
w_class = 2.0
m_amt = 50
g_amt = 50
materials = list(MAT_METAL=50, MAT_GLASS=50)
@@ -26,8 +26,8 @@
throw_range = 9
w_class = 2
m_amt = 75
g_amt = 25
materials = list(MAT_METAL=75)
var/const/FREQ_LISTENING = 1
var/prison_radio = 0
var/atom/follow_target // Custom follow target for autosay-using bots
+6 -10
View File
@@ -16,7 +16,7 @@ REAGENT SCANNER
slot_flags = SLOT_BELT
w_class = 2
item_state = "electronic"
m_amt = 150
materials = list(MAT_METAL=150)
origin_tech = "magnets=1;engineering=1"
var/scan_range = 1
var/pulse_duration = 10
@@ -121,7 +121,7 @@ REAGENT SCANNER
w_class = 1.0
throw_speed = 5
throw_range = 10
m_amt = 200
materials = list(MAT_METAL=200)
origin_tech = "magnets=1;biotech=1"
var/upgraded = 0
var/mode = 1;
@@ -296,8 +296,7 @@ REAGENT SCANNER
throwforce = 0
throw_speed = 3
throw_range = 7
m_amt = 30
g_amt = 20
materials = list(MAT_METAL=30, MAT_GLASS=20)
origin_tech = "magnets=1;engineering=1"
/obj/item/device/analyzer/attack_self(mob/user as mob)
@@ -363,8 +362,7 @@ REAGENT SCANNER
throwforce = 5
throw_speed = 4
throw_range = 20
m_amt = 30
g_amt = 20
materials = list(MAT_METAL=30, MAT_GLASS=20)
origin_tech = "magnets=2;biotech=2"
var/details = 0
var/recent_fail = 0
@@ -436,8 +434,7 @@ REAGENT SCANNER
throwforce = 5
throw_speed = 4
throw_range = 20
m_amt = 30
g_amt = 20
materials = list(MAT_METAL=30, MAT_GLASS=20)
origin_tech = "magnets=2;biotech=2"
var/details = 0
var/recent_fail = 0
@@ -493,8 +490,7 @@ REAGENT SCANNER
throwforce = 0
throw_speed = 3
throw_range = 7
m_amt = 30
g_amt = 20
materials = list(MAT_METAL=30, MAT_GLASS=20)
/obj/item/device/slime_scanner/attack(mob/living/M as mob, mob/living/user as mob)
if (!isslime(M))
@@ -5,8 +5,7 @@
item_state = "analyzer"
w_class = 2
slot_flags = SLOT_BELT
m_amt = 60
g_amt = 30
materials = list(MAT_METAL=60, MAT_GLASS=30)
force = 2
throwforce = 0
var/recording = 0
@@ -262,8 +261,7 @@
icon_state = "tape_white"
item_state = "analyzer"
w_class = 1
m_amt = 20
g_amt = 5
materials = list(MAT_METAL=20, MAT_GLASS=5)
force = 1
throwforce = 0
var/max_capacity = 600
@@ -85,7 +85,7 @@ effective or pretty fucking useless.
w_class = 1.0
throw_speed = 5
throw_range = 10
m_amt = 200
materials = list(MAT_METAL=400)
origin_tech = "magnets=3;biotech=5;syndicate=3"
var/intensity = 5 // how much damage the radiation does
var/wavelength = 10 // time it takes for the radiation to kick in, in seconds
@@ -8,7 +8,7 @@ Code shamelessly copied from apc_frame
desc = "Used for building Air Alarms"
icon = 'icons/obj/monitors.dmi'
icon_state = "alarm_bitem"
m_amt = 2000
materials = list(MAT_METAL=2000)
mount_reqs = list("simfloor", "nospace")
/obj/item/mounted/frame/alarm_frame/do_build(turf/on_wall, mob/user)
@@ -3,8 +3,7 @@
desc = "Used to build newscasters, just secure to the wall."
icon_state = "newscaster"
item_state = "syringe_kit"
m_amt = 14000
g_amt = 8000
materials = list(MAT_METAL=14000, MAT_GLASS=8000)
mount_reqs = list("simfloor", "nospace")
/obj/item/mounted/frame/newscaster_frame/try_build(turf/on_wall, mob/user)
+1 -1
View File
@@ -10,7 +10,7 @@
throwforce = 10.0
throw_speed = 3
throw_range = 7
m_amt = 1000
materials = list(MAT_METAL=1000)
max_amount = 60
attack_verb = list("hit", "bludgeoned", "whacked")
hitsound = 'sound/weapons/grenadelaunch.ogg'
@@ -18,7 +18,7 @@
desc = "HOLY SHEET! That is a lot of glass."
singular_name = "glass sheet"
icon_state = "sheet-glass"
g_amt = MINERAL_MATERIAL_AMOUNT
materials = list(MAT_GLASS=MINERAL_MATERIAL_AMOUNT)
origin_tech = "materials=1"
var/created_window = /obj/structure/window/basic
var/full_window = /obj/structure/window/full/basic
@@ -28,7 +28,7 @@
desc = "HOLY SHEET! That is a lot of glass."
singular_name = "glass sheet"
icon_state = "sheet-glass"
g_amt = 0
materials = list()
created_window = /obj/structure/window/basic
/obj/item/stack/sheet/glass/attack_self(mob/user as mob)
@@ -153,8 +153,7 @@
desc = "Glass which seems to have rods or something stuck in them."
singular_name = "reinforced glass sheet"
icon_state = "sheet-rglass"
g_amt = MINERAL_MATERIAL_AMOUNT
m_amt = MINERAL_MATERIAL_AMOUNT / 2
materials = list(MAT_METAL=MINERAL_MATERIAL_AMOUNT/2, MAT_GLASS=MINERAL_MATERIAL_AMOUNT)
origin_tech = "materials=2"
var/created_window = /obj/structure/window/reinforced
var/full_window = /obj/structure/window/full/reinforced
@@ -164,8 +163,7 @@
desc = "Glass which seems to have rods or something stuck in them."
singular_name = "reinforced glass sheet"
icon_state = "sheet-rglass"
g_amt = 0
m_amt = 0
materials = list()
/obj/item/stack/sheet/rglass/attack_self(mob/user as mob)
construct_window(user)
@@ -272,7 +270,7 @@
desc = "A very strong and very resistant sheet of a plasma-glass alloy."
singular_name = "glass sheet"
icon_state = "sheet-plasmaglass"
g_amt = MINERAL_MATERIAL_AMOUNT * 2
materials = list(MAT_GLASS=MINERAL_MATERIAL_AMOUNT*2)
origin_tech = "materials=3;plasma=2"
var/created_window = /obj/structure/window/plasmabasic
var/full_window = /obj/structure/window/full/plasmabasic
@@ -361,8 +359,7 @@
desc = "Plasma glass which seems to have rods or something stuck in them."
singular_name = "reinforced plasma glass sheet"
icon_state = "sheet-plasmarglass"
g_amt = MINERAL_MATERIAL_AMOUNT * 2
m_amt = MINERAL_MATERIAL_AMOUNT / 2
materials = list(MAT_METAL=MINERAL_MATERIAL_AMOUNT/2, MAT_GLASS=MINERAL_MATERIAL_AMOUNT*2)
origin_tech = "materials=3;plasma=2"
var/created_window = /obj/structure/window/plasmareinforced
var/full_window = /obj/structure/window/full/plasmareinforced
@@ -86,7 +86,7 @@ var/global/list/datum/stack_recipe/metal_recipes = list ( \
desc = "Sheets made out off metal. It has been dubbed Metal Sheets."
singular_name = "metal sheet"
icon_state = "sheet-metal"
m_amt = 3750
materials = list(MAT_METAL=MINERAL_MATERIAL_AMOUNT)
throwforce = 10.0
flags = CONDUCT
origin_tech = "materials=1"
@@ -96,7 +96,7 @@ var/global/list/datum/stack_recipe/metal_recipes = list ( \
desc = "Sheets made out off metal. It has been dubbed Metal Sheets."
singular_name = "metal sheet"
icon_state = "sheet-metal"
m_amt = 0
materials = list()
throwforce = 10.0
flags = CONDUCT
@@ -124,7 +124,7 @@ var/global/list/datum/stack_recipe/plasteel_recipes = list ( \
desc = "This sheet is an alloy of iron and plasma."
icon_state = "sheet-plasteel"
item_state = "sheet-metal"
m_amt = 7500
materials = list(MAT_METAL=6000, MAT_PLASMA=6000)
throwforce = 10.0
flags = CONDUCT
origin_tech = "materials=2"
@@ -6,7 +6,7 @@
icon_state = "tile"
w_class = 3.0
force = 6.0
m_amt = 937.5
materials = list(MAT_METAL=937.5)
throwforce = 10.0
throw_speed = 3
throw_range = 7
+2 -4
View File
@@ -134,8 +134,7 @@
flags = CONDUCT
slot_flags = SLOT_BELT
w_class = 3.0
g_amt = 10
m_amt = 10
materials = list(MAT_METAL=10, MAT_GLASS=10)
attack_verb = list("struck", "pistol whipped", "hit", "bashed")
var/bullets = 7.0
@@ -190,8 +189,7 @@
icon_state = "357-7"
flags = CONDUCT
w_class = 1.0
g_amt = 10
m_amt = 10
materials = list(MAT_METAL=10, MAT_GLASS=10)
var/amount_left = 7.0
update_icon()
+2 -3
View File
@@ -18,7 +18,7 @@ RCD
throw_speed = 3
throw_range = 5
w_class = 3.0
m_amt = 100000
materials = list(MAT_METAL=100000)
origin_tech = "engineering=4;materials=2"
var/datum/effect/effect/system/spark_spread/spark_system
var/max_matter = 100
@@ -206,8 +206,7 @@ RCD
density = 0
anchored = 0.0
origin_tech = "materials=2"
m_amt = 16000
g_amt = 8000
materials = list(MAT_METAL=16000, MAT_GLASS=8000)
var/ammoamt = 20
/obj/item/weapon/rcd_ammo/large
@@ -11,7 +11,7 @@
throw_speed = 2
throw_range = 7
force = 10
m_amt = 90
materials = list(MAT_METAL=90)
attack_verb = list("slammed", "whacked", "bashed", "thunked", "battered", "bludgeoned", "thrashed")
var/max_water = 50
var/last_use = 1.0
@@ -31,7 +31,7 @@
throwforce = 2
w_class = 2.0
force = 3.0
m_amt = 0
materials = list()
max_water = 30
sprite_name = "miniFE"
@@ -10,7 +10,7 @@
throw_speed = 1
throw_range = 5
w_class = 3.0
m_amt = 500
materials = list(MAT_METAL=500)
origin_tech = "combat=1;plasmatech=1"
var/status = 0
var/throw_amount = 100
+1 -1
View File
@@ -10,7 +10,7 @@
w_class = 2.0
throw_speed = 2
throw_range = 5
m_amt = 500
materials = list(MAT_METAL=500)
origin_tech = "materials=1"
var/breakouttime = 600 //Deciseconds = 60s = 1 minutes
var/cuffsound = 'sound/weapons/handcuffs.ogg'
+1 -2
View File
@@ -141,7 +141,7 @@
throwforce = 6.0
throw_speed = 3
throw_range = 6
m_amt = 12000
materials = list(MAT_METAL=12000)
origin_tech = "materials=1"
attack_verb = list("slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut")
@@ -183,7 +183,6 @@
throwforce = 8.0
throw_speed = 3
throw_range = 6
m_amt = 12000
origin_tech = "materials=1"
attack_verb = list("cleaved", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut")
sharp = 1
+1 -1
View File
@@ -31,7 +31,7 @@
force = 5.0
throwforce = 7.0
w_class = 2.0
m_amt = 50
materials = list(MAT_METAL=50)
attack_verb = list("bludgeoned", "whacked", "disciplined", "thrashed")
/obj/item/weapon/c_tube
+1 -2
View File
@@ -8,8 +8,7 @@ var/global/list/cached_icons = list()
icon = 'icons/obj/items.dmi'
icon_state = "paint_neutral"
item_state = "paintcan"
m_amt = 200
g_amt = 0
materials = list(MAT_METAL=200)
w_class = 3.0
amount_per_transfer_from_this = 10
possible_transfer_amounts = list(10,20,30,50,70)
+11 -14
View File
@@ -13,8 +13,7 @@
var/charge = 0 // note %age conveted to actual charge in New
var/maxcharge = 10000
rating = 1
m_amt = 700
g_amt = 50
materials = list(MAT_METAL=700, MAT_GLASS=50)
var/rigged = 0 // true if rigged to explode
var/minor_fault = 0 //If not 100% reliable, it will build up faults.
var/construction_cost = list("metal"=750,"glass"=75)
@@ -30,7 +29,7 @@
origin_tech = "powerstorage=0"
maxcharge = 5000
rating = 2
g_amt = 40
materials = list(MAT_GLASS=40)
/obj/item/weapon/stock_parts/cell/crap/empty/New()
..()
@@ -41,7 +40,7 @@
origin_tech = "powerstorage=0"
maxcharge = 6000 //6000 max charge / 1000 charge per shot = six shots
rating = 2.5
g_amt = 40
materials = list(MAT_GLASS=40)
/obj/item/weapon/stock_parts/cell/secborg/empty/New()
..()
@@ -53,7 +52,7 @@
icon_state = "hcell"
maxcharge = 15000
rating = 3
g_amt = 60
materials = list(MAT_GLASS=60)
/obj/item/weapon/stock_parts/cell/high/empty/New()
..()
@@ -64,7 +63,7 @@
origin_tech = "powerstorage=5"
icon_state = "scell"
maxcharge = 20000
g_amt = 70
materials = list(MAT_GLASS=70)
rating = 4
construction_cost = list("metal"=750,"glass"=100)
@@ -78,7 +77,7 @@
icon_state = "hpcell"
maxcharge = 30000
rating = 5
g_amt = 80
materials = list(MAT_GLASS=80)
construction_cost = list("metal"=500,"glass"=150,"gold"=200,"silver"=200)
/obj/item/weapon/stock_parts/cell/hyper/empty/New()
@@ -90,7 +89,7 @@
origin_tech = "powerstorage=7"
icon_state = "bscell"
maxcharge = 40000
g_amt = 80
materials = list(MAT_GLASS=80)
rating = 6
construction_cost = list("metal"=800,"gold"=300,"silver"=300,"glass"=160,"diamond"=160)
@@ -104,7 +103,7 @@
origin_tech = null
maxcharge = 30000
rating = 6
g_amt = 80
materials = list(MAT_GLASS=80)
use()
return 1
@@ -117,8 +116,7 @@
charge = 100
maxcharge = 3000
rating = 1
m_amt = 0
g_amt = 0
materials = list()
minor_fault = 1
@@ -130,8 +128,7 @@
icon_state = "yellow slime extract" //"potato_battery"
maxcharge = 10000
rating = 3
m_amt = 0
g_amt = 0
materials = list()
/obj/item/weapon/stock_parts/cell/pulse/carbine
name = "pulse carbine power cell"
@@ -146,7 +143,7 @@
desc = "A standard ninja-suit power cell."
maxcharge = 10000
rating = 3
g_amt = 60
materials = list(MAT_GLASS=60)
/obj/item/weapon/stock_parts/cell/emproof
name = "\improper EMP-proof cell"
+1 -1
View File
@@ -11,7 +11,7 @@
force = 5.0
throwforce = 10.0
item_state = "shard-glass"
g_amt = MINERAL_MATERIAL_AMOUNT
materials = list(MAT_GLASS=MINERAL_MATERIAL_AMOUNT)
attack_verb = list("stabbed", "slashed", "sliced", "cut")
hitsound = 'sound/weapons/bladeslice.ogg'
+1 -2
View File
@@ -12,8 +12,7 @@
throw_speed = 2
throw_range = 3
w_class = 4
g_amt = 7500
m_amt = 1000
materials = list(MAT_GLASS=7500, MAT_METAL=1000)
origin_tech = "materials=2"
attack_verb = list("shoved", "bashed")
var/cooldown = 0 //shield bash cooldown. based on world.time
+28 -45
View File
@@ -74,45 +74,42 @@
desc = "Used in the construction of computers and other devices with a interactive console."
icon_state = "screen"
origin_tech = "materials=1"
g_amt = 200
materials = list(MAT_GLASS=200)
/obj/item/weapon/stock_parts/capacitor
name = "capacitor"
desc = "A basic capacitor used in the construction of a variety of devices."
icon_state = "capacitor"
origin_tech = "powerstorage=1"
m_amt = 50
g_amt = 50
materials = list(MAT_METAL=50, MAT_GLASS=50)
/obj/item/weapon/stock_parts/scanning_module
name = "scanning module"
desc = "A compact, high resolution scanning module used in the construction of certain devices."
icon_state = "scan_module"
origin_tech = "magnets=1"
m_amt = 50
g_amt = 20
materials = list(MAT_METAL=50, MAT_GLASS=20)
/obj/item/weapon/stock_parts/manipulator
name = "micro-manipulator"
desc = "A tiny little manipulator used in the construction of certain devices."
icon_state = "micro_mani"
origin_tech = "materials=1;programming=1"
m_amt = 30
materials = list(MAT_METAL=30)
/obj/item/weapon/stock_parts/micro_laser
name = "micro-laser"
desc = "A tiny laser used in certain devices."
icon_state = "micro_laser"
origin_tech = "magnets=1"
m_amt = 10
g_amt = 20
materials = list(MAT_METAL=10, MAT_GLASS=20)
/obj/item/weapon/stock_parts/matter_bin
name = "matter bin"
desc = "A container for hold compressed matter awaiting re-construction."
icon_state = "matter_bin"
origin_tech = "materials=1"
m_amt = 80
materials = list(MAT_METAL=80)
//Rank 2
@@ -122,8 +119,7 @@
icon_state = "adv_capacitor"
origin_tech = "powerstorage=3"
rating = 2
m_amt = 50
g_amt = 50
materials = list(MAT_METAL=50, MAT_GLASS=50)
/obj/item/weapon/stock_parts/scanning_module/adv
name = "advanced scanning module"
@@ -131,8 +127,7 @@
icon_state = "adv_scan_module"
origin_tech = "magnets=3"
rating = 2
m_amt = 50
g_amt = 20
materials = list(MAT_METAL=50, MAT_GLASS=20)
/obj/item/weapon/stock_parts/manipulator/nano
name = "nano-manipulator"
@@ -140,7 +135,7 @@
icon_state = "nano_mani"
origin_tech = "materials=3,programming=2"
rating = 2
m_amt = 30
materials = list(MAT_METAL=30)
/obj/item/weapon/stock_parts/micro_laser/high
name = "high-power micro-laser"
@@ -148,8 +143,7 @@
icon_state = "high_micro_laser"
origin_tech = "magnets=3"
rating = 2
m_amt = 10
g_amt = 20
materials = list(MAT_METAL=10, MAT_GLASS=20)
/obj/item/weapon/stock_parts/matter_bin/adv
name = "advanced matter bin"
@@ -157,7 +151,7 @@
icon_state = "advanced_matter_bin"
origin_tech = "materials=3"
rating = 2
m_amt = 80
materials = list(MAT_METAL=80)
//Rating 3
@@ -167,8 +161,7 @@
icon_state = "super_capacitor"
origin_tech = "powerstorage=5;materials=4"
rating = 3
m_amt = 50
g_amt = 50
materials = list(MAT_METAL=50, MAT_GLASS=50)
/obj/item/weapon/stock_parts/scanning_module/phasic
name = "phasic scanning module"
@@ -176,8 +169,7 @@
icon_state = "super_scan_module"
origin_tech = "magnets=5"
rating = 3
m_amt = 50
g_amt = 20
materials = list(MAT_METAL=50, MAT_GLASS=20)
/obj/item/weapon/stock_parts/manipulator/pico
name = "pico-manipulator"
@@ -185,7 +177,7 @@
icon_state = "pico_mani"
origin_tech = "materials=5,programming=2"
rating = 3
m_amt = 30
materials = list(MAT_METAL=30)
/obj/item/weapon/stock_parts/micro_laser/ultra
name = "ultra-high-power micro-laser"
@@ -193,8 +185,7 @@
desc = "A tiny laser used in certain devices."
origin_tech = "magnets=5"
rating = 3
m_amt = 10
g_amt = 20
materials = list(MAT_METAL=10, MAT_GLASS=20)
/obj/item/weapon/stock_parts/matter_bin/super
name = "super matter bin"
@@ -202,7 +193,7 @@
icon_state = "super_matter_bin"
origin_tech = "materials=5"
rating = 3
m_amt = 80
materials = list(MAT_METAL=80)
//Rating 4
@@ -212,8 +203,7 @@
icon_state = "quadratic_capacitor"
origin_tech = "powerstorage=6;materials=5"
rating = 4
m_amt = 50
g_amt = 50
materials = list(MAT_METAL=50, MAT_GLASS=50)
/obj/item/weapon/stock_parts/scanning_module/triphasic
name = "triphasic scanning module"
@@ -221,8 +211,7 @@
icon_state = "triphasic_scan_module"
origin_tech = "magnets=6"
rating = 4
m_amt = 50
g_amt = 20
materials = list(MAT_METAL=50, MAT_GLASS=20)
/obj/item/weapon/stock_parts/manipulator/femto
name = "femto-manipulator"
@@ -230,7 +219,7 @@
icon_state = "femto_mani"
origin_tech = "materials=6;programming=3"
rating = 4
m_amt = 30
materials = list(MAT_METAL=30)
/obj/item/weapon/stock_parts/micro_laser/quadultra
name = "quad-ultra micro-laser"
@@ -238,8 +227,7 @@
desc = "A tiny laser used in certain devices."
origin_tech = "magnets=6"
rating = 4
m_amt = 10
g_amt = 20
materials = list(MAT_METAL=10, MAT_GLASS=20)
/obj/item/weapon/stock_parts/matter_bin/bluespace
name = "bluespace matter bin"
@@ -247,7 +235,7 @@
icon_state = "bluespace_matter_bin"
origin_tech = "materials=6"
rating = 4
m_amt = 80
materials = list(MAT_METAL=80)
// Subspace stock parts
@@ -256,54 +244,49 @@
icon_state = "subspace_ansible"
desc = "A compact module capable of sensing extradimensional activity."
origin_tech = "programming=2;magnets=3;materials=2;bluespace=1"
m_amt = 30
g_amt = 10
materials = list(MAT_METAL=30, MAT_GLASS=10)
/obj/item/weapon/stock_parts/subspace/filter
name = "hyperwave filter"
icon_state = "hyperwave_filter"
desc = "A tiny device capable of filtering and converting super-intense radiowaves."
origin_tech = "programming=2;magnets=1"
m_amt = 30
g_amt = 10
materials = list(MAT_METAL=30, MAT_GLASS=10)
/obj/item/weapon/stock_parts/subspace/amplifier
name = "subspace amplifier"
icon_state = "subspace_amplifier"
desc = "A compact micro-machine capable of amplifying weak subspace transmissions."
origin_tech = "programming=2;magnets=2;materials=1;bluespace=1"
m_amt = 30
g_amt = 10
materials = list(MAT_METAL=30, MAT_GLASS=10)
/obj/item/weapon/stock_parts/subspace/treatment
name = "subspace treatment disk"
icon_state = "treatment_disk"
desc = "A compact micro-machine capable of stretching out hyper-compressed radio waves."
origin_tech = "programming=2;magnets=1;materials=3;bluespace=1"
m_amt = 30
g_amt = 10
materials = list(MAT_METAL=30, MAT_GLASS=10)
/obj/item/weapon/stock_parts/subspace/analyzer
name = "subspace wavelength analyzer"
icon_state = "wavelength_analyzer"
desc = "A sophisticated analyzer capable of analyzing cryptic subspace wavelengths."
origin_tech = "programming=2;magnets=2;materials=2;bluespace=1"
m_amt = 30
g_amt = 10
materials = list(MAT_METAL=30, MAT_GLASS=10)
/obj/item/weapon/stock_parts/subspace/crystal
name = "ansible crystal"
icon_state = "ansible_crystal"
desc = "A crystal made from pure glass used to transmit laser databursts to subspace."
origin_tech = "magnets=2;materials=2;bluespace=1"
g_amt = 50
materials = list(MAT_GLASS=50)
/obj/item/weapon/stock_parts/subspace/transmitter
name = "subspace transmitter"
icon_state = "subspace_transmitter"
desc = "A large piece of equipment used to open a window into the subspace dimension."
origin_tech = "magnets=3;materials=3;bluespace=2"
m_amt = 50
materials = list(MAT_METAL=50)
/obj/item/weapon/research//Makes testing much less of a pain -Sieve
name = "research"
@@ -365,7 +365,7 @@
throw_range = 5
w_class = 4.0
flags = CONDUCT
m_amt = 3000
materials = list(MAT_METAL=3000)
/obj/item/weapon/storage/bag/tray/attack(mob/living/M as mob, mob/living/user as mob)
..()
@@ -133,7 +133,7 @@
/obj/item/weapon/storage/box/gauge
name = "box of 12 gauge slugs"
desc = "It has a picture of a gun and several warning symbols on the front."
m_amt = 50000
materials = list(MAT_METAL=28000)
New()
..()
@@ -14,7 +14,7 @@
item_state = "radio"
throw_speed = 4
throw_range = 20
m_amt = 100
materials = list(MAT_METAL=100)
origin_tech = "magnets=2;syndicate=3"*/
/obj/item/weapon/SWF_uplink
@@ -34,5 +34,5 @@
w_class = 2.0
throw_speed = 4
throw_range = 20
m_amt = 100
materials = list(MAT_METAL=100)
origin_tech = "magnets=1"
@@ -12,7 +12,7 @@
gender = PLURAL
icon = 'icons/obj/items.dmi'
icon_state = "table_parts"
m_amt = 3750
materials = list(MAT_METAL=3750)
flags = CONDUCT
attack_verb = list("slammed", "bashed", "battered", "bludgeoned", "thrashed", "whacked")
@@ -21,7 +21,7 @@
desc = "Hard table parts. Well...harder..."
icon = 'icons/obj/items.dmi'
icon_state = "reinf_tableparts"
m_amt = 7500
materials = list(MAT_METAL=7500)
flags = CONDUCT
/obj/item/weapon/table_parts/wood
@@ -42,7 +42,7 @@
icon = 'icons/obj/items.dmi'
icon_state = "rack_parts"
flags = CONDUCT
m_amt = 3750
materials = list(MAT_METAL=3750)
/*
* Table Parts
@@ -21,7 +21,7 @@
item_state = "electronic"
throw_speed = 4
throw_range = 20
m_amt = 400
materials = list(MAT_METAL=400)
origin_tech = "magnets=1"
/obj/item/weapon/locator/attack_self(mob/user as mob)
@@ -132,7 +132,7 @@ Frequency:
w_class = 2.0
throw_speed = 3
throw_range = 5
m_amt = 10000
materials = list(MAT_METAL=10000)
origin_tech = "magnets=1;bluespace=3"
var/active_portals = 0
+12 -17
View File
@@ -25,7 +25,7 @@
force = 5.0
throwforce = 7.0
w_class = 2.0
m_amt = 150
materials = list(MAT_METAL=150)
origin_tech = "materials=1;engineering=1"
attack_verb = list("bashed", "battered", "bludgeoned", "whacked")
@@ -35,7 +35,7 @@
*/
/obj/item/weapon/screwdriver
name = "screwdriver"
desc = "You can be totally screwwy with this."
desc = "You can be totally screwy with this."
icon = 'icons/obj/items.dmi'
icon_state = "screwdriver"
flags = CONDUCT
@@ -45,8 +45,7 @@
throwforce = 5.0
throw_speed = 3
throw_range = 5
g_amt = 0
m_amt = 75
materials = list(MAT_METAL=75)
attack_verb = list("stabbed")
hitsound = 'sound/weapons/bladeslice.ogg'
@@ -84,7 +83,7 @@
return
/obj/item/weapon/screwdriver/attack(mob/living/carbon/M as mob, mob/living/carbon/user as mob)
if(!istype(M) || user.a_intent == "help")
if(!istype(M) || user.a_intent == "help")
return ..()
if(user.zone_sel.selecting != "eyes" && user.zone_sel.selecting != "head")
return ..()
@@ -106,7 +105,7 @@
throw_speed = 3
throw_range = 7
w_class = 2.0
m_amt = 80
materials = list(MAT_METAL=80)
origin_tech = "materials=1;engineering=1"
attack_verb = list("pinched", "nipped")
hitsound = "sound/items/Wirecutter.ogg"
@@ -148,8 +147,7 @@
w_class = 2.0
//Cost to make in the autolathe
m_amt = 70
g_amt = 20
materials = list(MAT_METAL=70, MAT_GLASS=30)
//R&D tech level
origin_tech = "engineering=1"
@@ -409,24 +407,21 @@
/obj/item/weapon/weldingtool/largetank
name = "Industrial Welding Tool"
max_fuel = 40
m_amt = 70
g_amt = 60
materials = list(MAT_METAL=70, MAT_GLASS=60)
origin_tech = "engineering=2"
/obj/item/weapon/weldingtool/hugetank
name = "Upgraded Welding Tool"
max_fuel = 80
w_class = 3.0
m_amt = 70
g_amt = 120
materials = list(MAT_METAL=70, MAT_GLASS=120)
origin_tech = "engineering=3"
/obj/item/weapon/weldingtool/experimental
name = "Experimental Welding Tool"
max_fuel = 40
w_class = 3.0
m_amt = 70
g_amt = 120
materials = list(MAT_METAL=70, MAT_GLASS=120)
origin_tech = "engineering=4;plasma=3"
icon_state = "ewelder"
var/last_gen = 0
@@ -454,7 +449,7 @@
throwforce = 7.0
item_state = "crowbar"
w_class = 2.0
m_amt = 50
materials = list(MAT_METAL=50)
origin_tech = "engineering=1"
attack_verb = list("attacked", "bashed", "battered", "bludgeoned", "whacked")
@@ -470,7 +465,7 @@
w_class = 3
throw_speed = 3
throw_range = 3
m_amt = 66
materials = list(MAT_METAL=70)
icon_state = "crowbar_large"
/obj/item/weapon/weldingtool/attack(mob/M as mob, mob/user as mob)
@@ -478,7 +473,7 @@
var/mob/living/carbon/human/H = M
var/obj/item/organ/external/S = H.organs_by_name[user.zone_sel.selecting]
if (!S)
if (!S)
return
if(!(S.status & ORGAN_ROBOT) || user.a_intent != "help" || S.open == 2)
return ..()
+1 -1
View File
@@ -158,7 +158,7 @@ obj/item/weapon/wirerod
force = 9
throwforce = 10
w_class = 3
m_amt = 1875
materials = list(MAT_METAL=1875)
attack_verb = list("hit", "bludgeoned", "whacked", "bonked")
obj/item/weapon/wirerod/attackby(var/obj/item/I, mob/user as mob, params)
+1 -1
View File
@@ -8,7 +8,7 @@
var/amount = 1.0
var/laying = 0.0
var/old_lay = null
m_amt = 40
materials = list(MAT_METAL=40)
attack_verb = list("whipped", "lashed", "disciplined", "tickled")
suicide_act(mob/user)
+27 -27
View File
@@ -14,14 +14,14 @@
var/time_coeff_tech = 1
var/resource_coeff_tech = 1
var/list/resources = list(
"$metal"=0,
"$glass"=0,
"$bananium"=0,
"$diamond"=0,
"$gold"=0,
"$plasma"=0,
"$silver"=0,
"$uranium"=0
MAT_METAL=0,
MAT_GLASS=0,
MAT_BANANIUM=0,
MAT_DIAMOND=0,
MAT_GOLD=0,
MAT_PLASMA=0,
MAT_SILVER=0,
MAT_URANIUM=0
)
var/res_max_amount = 200000
var/datum/research/files
@@ -55,7 +55,7 @@
component_parts += new /obj/item/weapon/stock_parts/micro_laser(null)
component_parts += new /obj/item/weapon/stock_parts/console_screen(null)
RefreshParts()
files = new /datum/research(src) //Setup the research data holder.
for(var/direction in cardinal)
exit = get_step(src,direction)
@@ -195,8 +195,8 @@
L.name += " ([I.name])"
else
I.loc = exit
I.m_amt = get_resource_cost_w_coeff(D,"$metal")
I.g_amt = get_resource_cost_w_coeff(D,"$glass")
I.materials[MAT_METAL] = get_resource_cost_w_coeff(D,MAT_METAL)
I.materials[MAT_GLASS] = get_resource_cost_w_coeff(D,MAT_GLASS)
visible_message("\icon[src] <b>\The [src]</b> beeps, \"\The [I] is complete.\"")
being_built = null
@@ -475,21 +475,21 @@
return -1
var/type
switch(mat_string)
if("$metal")
if(MAT_METAL)
type = /obj/item/stack/sheet/metal
if("$glass")
if(MAT_GLASS)
type = /obj/item/stack/sheet/glass
if("$gold")
if(MAT_GOLD)
type = /obj/item/stack/sheet/mineral/gold
if("$silver")
if(MAT_SILVER)
type = /obj/item/stack/sheet/mineral/silver
if("$diamond")
if(MAT_DIAMOND)
type = /obj/item/stack/sheet/mineral/diamond
if("$plasma")
if(MAT_PLASMA)
type = /obj/item/stack/sheet/mineral/plasma
if("$uranium")
if(MAT_URANIUM)
type = /obj/item/stack/sheet/mineral/uranium
if("$bananium")
if(MAT_BANANIUM)
type = /obj/item/stack/sheet/mineral/bananium
else
return 0
@@ -531,21 +531,21 @@
var/material
switch(W.type)
if(/obj/item/stack/sheet/mineral/gold)
material = "$gold"
material = MAT_GOLD
if(/obj/item/stack/sheet/mineral/silver)
material = "$silver"
material = MAT_SILVER
if(/obj/item/stack/sheet/mineral/diamond)
material = "$diamond"
material = MAT_DIAMOND
if(/obj/item/stack/sheet/mineral/plasma)
material = "$plasma"
material = MAT_PLASMA
if(/obj/item/stack/sheet/metal)
material = "$metal"
material = MAT_METAL
if(/obj/item/stack/sheet/glass)
material = "$glass"
material = MAT_GLASS
if(/obj/item/stack/sheet/mineral/bananium)
material = "$bananium"
material = MAT_BANANIUM
if(/obj/item/stack/sheet/mineral/uranium)
material = "$uranium"
material = MAT_URANIUM
else
return ..()
+1 -2
View File
@@ -5,8 +5,7 @@
icon_state = ""
flags = CONDUCT
w_class = 2.0
m_amt = 100
g_amt = 0
materials = list(MAT_METAL=100)
throwforce = 2
throw_speed = 3
throw_range = 10
+1 -2
View File
@@ -2,8 +2,7 @@
name = "igniter"
desc = "A small electronic device able to ignite combustable substances."
icon_state = "igniter"
m_amt = 500
g_amt = 50
materials = list(MAT_METAL=500, MAT_GLASS=50)
w_amt = 10
origin_tech = "magnets=1"
+1 -2
View File
@@ -2,8 +2,7 @@
name = "infrared emitter"
desc = "Emits a visible or invisible beam and is triggered when the beam is interrupted."
icon_state = "infrared"
m_amt = 1000
g_amt = 500
materials = list(MAT_METAL=1000, MAT_GLASS=500)
origin_tech = "magnets=2"
bomb_name = "tripwire mine"
+1 -1
View File
@@ -2,7 +2,7 @@
name = "mousetrap"
desc = "A handy little spring-loaded trap for catching pesty rodents."
icon_state = "mousetrap"
m_amt = 100
materials = list(MAT_METAL=100)
origin_tech = "combat=1"
var/armed = 0
+1 -2
View File
@@ -2,8 +2,7 @@
name = "proximity sensor"
desc = "Used for scanning and alerting when someone enters a certain proximity."
icon_state = "prox"
m_amt = 800
g_amt = 200
materials = list(MAT_METAL=800, MAT_GLASS=200)
origin_tech = "magnets=1"
secured = 0
+2 -3
View File
@@ -3,8 +3,7 @@
desc = "Used to remotely activate devices."
icon_state = "signaller"
item_state = "signaler"
m_amt = 400
g_amt = 120
materials = list(MAT_METAL=400, MAT_GLASS=120)
origin_tech = "magnets=1"
wires = WIRE_RECEIVE | WIRE_PULSE | WIRE_RADIO_PULSE | WIRE_RADIO_RECEIVE
@@ -18,7 +17,7 @@
var/delay = 0
var/datum/radio_frequency/radio_connection
var/airlock_wire = null
New()
..()
if(!radio_controller)
+1 -2
View File
@@ -2,8 +2,7 @@
name = "timer"
desc = "Used to time things. Works well with contraptions which has to count down. Tick tock."
icon_state = "timer"
m_amt = 500
g_amt = 50
materials = list(MAT_METAL=500, MAT_GLASS=50)
origin_tech = "magnets=1"
secured = 0
+1 -2
View File
@@ -2,8 +2,7 @@
name = "voice analyzer"
desc = "A small electronic device able to record a voice sample, and send a signal when that sample is repeated."
icon_state = "voice"
m_amt = 500
g_amt = 50
materials = list(MAT_METAL=500, MAT_GLASS=50)
origin_tech = "magnets=1"
var/listening = 0
var/recorded = null //the activation message
+1 -2
View File
@@ -17,8 +17,7 @@
icon_state = "welding"
flags = HEADCOVERSEYES | HEADCOVERSMOUTH
item_state = "welding"
m_amt = 1750
g_amt = 400
materials = list(MAT_METAL=1750, MAT_GLASS=400)
var/up = 0
flash_protect = 2
tint = 2
+1 -2
View File
@@ -21,8 +21,7 @@
desc = "A gas mask with built in welding goggles and face shield. Looks like a skull, clearly designed by a nerd."
icon_state = "weldingmask"
item_state = "weldingmask"
m_amt = 3000
g_amt = 1000
materials = list(MAT_METAL=4000, MAT_GLASS=2000)
var/up = 0
flash_protect = 2
tint = 2
+1 -1
View File
@@ -153,7 +153,7 @@ var/global/list/fish_items_list = list("goldfish" = /obj/item/weapon/fish/goldfi
icon_state = "teeth"
force = 2.0
throwforce = 5.0
g_amt = 0
materials = list()
/obj/item/weapon/shard/shark_teeth/New()
src.pixel_x = rand(-5,5)
+2 -2
View File
@@ -264,7 +264,7 @@
force = 5.0
throwforce = 7.0
w_class = 2.0
m_amt = 50
materials = list(MAT_METAL=50)
attack_verb = list("slashed", "sliced", "cut", "clawed")
//Hatchets and things to kill kudzu
@@ -281,7 +281,7 @@
throwforce = 15.0
throw_speed = 4
throw_range = 4
m_amt = 15000
materials = list(MAT_METAL=15000)
origin_tech = "materials=2;combat=1"
attack_verb = list("chopped", "torn", "cut")
hitsound = 'sound/weapons/bladeslice.ogg'
+2 -2
View File
@@ -58,7 +58,7 @@
throwforce = 10.0
item_state = "pickaxe"
w_class = 4.0
m_amt = 3750 //one sheet, but where can you make them?
materials = list(MAT_METAL=3750) //one sheet, but where can you make them?
var/digspeed = 40 //moving the delay to an item var so R&D can make improved picks. --NEO
origin_tech = "materials=1;engineering=1"
attack_verb = list("hit", "pierced", "sliced", "attacked")
@@ -151,7 +151,7 @@
throwforce = 4.0
item_state = "shovel"
w_class = 3.0
m_amt = 50
materials = list(MAT_METAL=50)
origin_tech = "materials=1;engineering=1"
attack_verb = list("bashed", "bludgeoned", "thrashed", "whacked")
+1 -1
View File
@@ -21,7 +21,7 @@
w_class = 1.0
throw_speed = 3
throw_range = 7
m_amt = 10
materials = list(MAT_METAL=10)
var/colour = "black" //what colour the ink is!
pressure_resistance = 2
+1 -1
View File
@@ -444,7 +444,7 @@
item_state = "videocam"
w_class = 2.0
slot_flags = SLOT_BELT
m_amt = 2000
materials = list(MAT_METAL=2000)
var/on = 0
var/obj/machinery/camera/camera
var/icon_on = "videocam_on"
+2 -2
View File
@@ -8,7 +8,7 @@
w_class = 1.0
throw_speed = 3
throw_range = 7
m_amt = 60
materials = list(MAT_METAL=60)
_color = "cargo"
pressure_resistance = 2
attack_verb = list("stamped")
@@ -76,7 +76,7 @@
name = "Nanotrasen Representative's rubber stamp"
icon_state = "stamp-cent"
_color = "centcom"
/obj/item/weapon/stamp/syndicate
name = "suspicious rubber stamp"
icon_state = "stamp-syndicate"
+1 -2
View File
@@ -470,8 +470,7 @@ obj/structure/cable/proc/cableColor(var/colorC)
w_class = 2.0
throw_speed = 2
throw_range = 5
m_amt = 50
g_amt = 20
materials = list(MAT_METAL=50, MAT_GLASS=20)
flags = CONDUCT
slot_flags = SLOT_BELT
item_state = "coil"
+4 -4
View File
@@ -605,7 +605,7 @@
var/status = 0 // LIGHT_OK, LIGHT_BURNED or LIGHT_BROKEN
var/base_state
var/switchcount = 0 // number of times switched
m_amt = 60
materials = list(MAT_METAL=60)
var/rigged = 0 // true if rigged to explode
var/brightness_range = 2 //how much light it gives off
var/brightness_power = 1
@@ -617,7 +617,7 @@
icon_state = "ltube"
base_state = "ltube"
item_state = "c_tube"
g_amt = 100
materials = list(MAT_GLASS=100)
brightness_range = 8
brightness_power = 3
@@ -633,7 +633,7 @@
icon_state = "lbulb"
base_state = "lbulb"
item_state = "contvapour"
g_amt = 100
materials = list(MAT_GLASS=100)
brightness_range = 5
brightness_power = 2
brightness_color = "#a0a080"
@@ -648,7 +648,7 @@
icon_state = "fbulb"
base_state = "fbulb"
item_state = "egg4"
g_amt = 100
materials = list(MAT_GLASS=100)
brightness_range = 5
brightness_power = 2
+1 -1
View File
@@ -67,7 +67,7 @@
flags = CONDUCT
slot_flags = SLOT_BELT
item_state = "syringe_kit"
m_amt = 30000
materials = list(MAT_METAL=30000)
throwforce = 2
w_class = 1.0
throw_speed = 4
@@ -38,7 +38,7 @@
icon_state = "blshell"
caliber = "shotgun"
projectile_type = "/obj/item/projectile/bullet"
m_amt = 4000
materials = list(MAT_METAL=4000)
/obj/item/ammo_casing/shotgun/buckshot
@@ -55,7 +55,7 @@
desc = "A weak beanbag slug for riot control."
icon_state = "bshell"
projectile_type = "/obj/item/projectile/bullet/weakbullet/rubber"
m_amt = 250
materials = list(MAT_METAL=250)
/obj/item/ammo_casing/shotgun/improvised
@@ -63,7 +63,7 @@
desc = "An extremely weak shotgun shell with multiple small pellets made out of metal shards."
icon_state = "gshell"
projectile_type = "/obj/item/projectile/bullet/pellet/weak"
m_amt = 250
materials = list(MAT_METAL=250)
pellets = 5
deviation = 30
@@ -73,7 +73,7 @@
propellant. It's like playing russian roulette, with a shotgun."
icon_state = "improvshell"
projectile_type = /obj/item/projectile/bullet/pellet/random
m_amt = 250
materials = list(MAT_METAL=250)
pellets = 5
deviation = 30
@@ -86,7 +86,7 @@
desc = "A stunning taser slug."
icon_state = "stunshell"
projectile_type = "/obj/item/projectile/bullet/stunshot"
m_amt = 200
materials = list(MAT_METAL=250)
/obj/item/ammo_casing/shotgun/meteorshot
@@ -164,7 +164,7 @@
desc = "A tranquilizer round used to subdue individuals utilizing stimulants."
icon_state = "cshell"
projectile_type = "/obj/item/projectile/bullet/dart/syringe/tranquilizer"
m_amt = 250
materials = list(MAT_METAL=250)
/obj/item/ammo_casing/syringegun
name = "syringe gun spring"
+4 -4
View File
@@ -54,7 +54,7 @@
origin_tech = "combat=2"
ammo_type = /obj/item/ammo_casing/shotgun
max_ammo = 8
m_amt = 100000
materials = list(MAT_METAL=32000)
/obj/item/ammo_box/shotgun/buck
name = "Ammunition Box (buckshot)"
@@ -63,15 +63,15 @@
/obj/item/ammo_box/shotgun/stun
name = "Ammunition Box (stun shells)"
ammo_type = /obj/item/ammo_casing/shotgun/stunslug
m_amt = 20000
materials = list(MAT_METAL=2000)
/obj/item/ammo_box/shotgun/beanbag
name = "Ammunition Box (beanbag shells)"
ammo_type = /obj/item/ammo_casing/shotgun/beanbag
m_amt = 4000
materials = list(MAT_METAL=2000)
/obj/item/ammo_box/shotgun/tranquilizer
name = "Ammunition Box (tranquilizer darts)"
icon_state = "45box"
ammo_type = /obj/item/ammo_casing/shotgun/tranquilizer
m_amt = 2000
materials = list(MAT_METAL=2000)
+1 -1
View File
@@ -10,7 +10,7 @@
item_state = "gun"
flags = CONDUCT
slot_flags = SLOT_BELT
m_amt = 2000
materials = list(MAT_METAL=2000)
w_class = 3.0
throwforce = 5
throw_speed = 4
@@ -6,7 +6,7 @@
fire_sound = 'sound/weapons/Laser.ogg'
charge_cost = 830
w_class = 3.0
m_amt = 2000
materials = list(MAT_METAL=2000)
origin_tech = "combat=3;magnets=2"
projectile_type = "/obj/item/projectile/beam"
@@ -272,7 +272,7 @@ modules/mob/living/carbon/human/life.dm if you die, you will be zoomed out.
icon_state = "crossbow"
item_state = "crossbow"
w_class = 2
m_amt = 2000
materials = list(MAT_METAL=2000)
origin_tech = "combat=2;magnets=2;syndicate=5"
silenced = 1
projectile_type = "/obj/item/projectile/energy/bolt"
@@ -285,7 +285,7 @@ modules/mob/living/carbon/human/life.dm if you die, you will be zoomed out.
desc = "A reverse engineered weapon using syndicate technology."
icon_state = "crossbowlarge"
w_class = 3
m_amt = 4000
materials = list(MAT_METAL=4000)
origin_tech = "combat=2;magnets=2;syndicate=3" //can be further researched for more syndie tech
silenced = 0
projectile_type = "/obj/item/projectile/energy/bolt/large"
@@ -294,7 +294,7 @@ modules/mob/living/carbon/human/life.dm if you die, you will be zoomed out.
desc = "One and done!"
icon_state = "crossbowlarge"
origin_tech = null
m_amt = 0
materials = list()
/obj/item/weapon/gun/energy/plasmacutter
name = "plasma cutter"
+2 -2
View File
@@ -63,7 +63,7 @@
icon_state = "crossbow"
w_class = 2.0
item_state = "crossbow"
m_amt = 2000
materials = list(MAT_METAL=2000)
origin_tech = "combat=2;magnets=2;syndicate=5"
silenced = 1
fire_sound = 'sound/weapons/Genhit.ogg'
@@ -98,7 +98,7 @@
silenced = 0
w_class = 3.0
force = 10
m_amt = 4000
materials = list(MAT_METAL=4000)
projectile_type = "/obj/item/projectile/energy/bolt/large"
+1 -1
View File
@@ -8,7 +8,7 @@
icon_state = "pistol"
origin_tech = "combat=2;materials=2"
w_class = 3.0
m_amt = 1000
materials = list(MAT_METAL=1000)
// recoil = 1
var/mag_type = "/obj/item/ammo_box/magazine/m10mm" //Removes the need for max_ammo and caliber info
var/obj/item/ammo_box/magazine/magazine
+1 -1
View File
@@ -15,7 +15,7 @@
var/ammo_type = /obj/item/weapon/grenade
var/unloaded
m_amt = 2000
materials = list(MAT_METAL=2000)
examine()
set src in view()
@@ -6,7 +6,7 @@
icon_state = "glass_empty"
amount_per_transfer_from_this = 10
volume = 50
g_amt = 500
materials = list(MAT_GLASS=500)
proc/smash(mob/living/target as mob, mob/living/user as mob)
@@ -181,8 +181,7 @@
icon = 'icons/obj/chemical.dmi'
icon_state = "beaker"
item_state = "beaker"
m_amt = 0
g_amt = 500
materials = list(MAT_GLASS=500)
var/obj/item/device/assembly_holder/assembly = null
on_reagent_change()
@@ -276,7 +275,7 @@
name = "large beaker"
desc = "A large beaker. Can hold up to 100 units."
icon_state = "beakerlarge"
g_amt = 2500
materials = list(MAT_GLASS=2500)
volume = 100
amount_per_transfer_from_this = 10
possible_transfer_amounts = list(5,10,15,25,30,50,100)
@@ -286,7 +285,7 @@
name = "vial"
desc = "A small glass vial. Can hold up to 25 units."
icon_state = "vial"
g_amt = 250
materials = list(MAT_GLASS=250)
volume = 25
amount_per_transfer_from_this = 10
possible_transfer_amounts = list(5,10,15,25)
@@ -296,7 +295,7 @@
name = "cryostasis beaker"
desc = "A cryostasis beaker that allows for chemical storage without reactions. Can hold up to 50 units."
icon_state = "beakernoreact"
g_amt = 500
materials = list(MAT_GLASS=500)
volume = 50
amount_per_transfer_from_this = 10
flags = OPENCONTAINER | NOREACT
@@ -305,7 +304,7 @@
name = "bluespace beaker"
desc = "A bluespace beaker, powered by experimental bluespace technology and Element Cuban combined with the Compound Pete. Can hold up to 300 units."
icon_state = "beakerbluespace"
g_amt = 5000
materials = list(MAT_GLASS=5000)
volume = 300
amount_per_transfer_from_this = 10
possible_transfer_amounts = list(5,10,15,25,30,50,100,300)
@@ -335,8 +334,7 @@
icon = 'icons/obj/janitor.dmi'
icon_state = "bucket"
item_state = "bucket"
m_amt = 200
g_amt = 0
materials = list(MAT_METAL=200)
w_class = 3.0
amount_per_transfer_from_this = 20
possible_transfer_amounts = list(5,10,15,25,30,50,80,100,120)
@@ -357,7 +355,7 @@
name = "vial"
desc = "Small glass vial. Looks fragile."
icon_state = "vial"
g_amt = 500
materials = list(MAT_GLASS=500)
volume = 15
amount_per_transfer_from_this = 5
possible_transfer_amounts = list(1,5,15)
@@ -386,8 +384,7 @@
icon = 'icons/obj/tank.dmi'
icon_state = "canister"
item_state = "canister"
m_amt = 300
g_amt = 0
materials = list(MAT_METAL=300)
w_class = 4.0
amount_per_transfer_from_this = 20
+1 -1
View File
@@ -7,7 +7,7 @@
throw_speed = 2
throw_range = 10
force = 4
m_amt = 2000
materials = list(MAT_METAL=2000)
clumsy_check = 0
fire_sound = 'sound/items/syringeproj.ogg'
var/list/syringes = list()
+2 -4
View File
@@ -271,8 +271,7 @@ datum/tech/robotics
icon_state = "datadisk2"
item_state = "card-id"
w_class = 1.0
m_amt = 30
g_amt = 10
materials = list(MAT_METAL=30, MAT_GLASS=10)
var/datum/tech/stored
/obj/item/weapon/disk/tech_disk/New()
@@ -286,8 +285,7 @@ datum/tech/robotics
icon_state = "datadisk2"
item_state = "card-id"
w_class = 1.0
m_amt = 30
g_amt = 10
materials = list(MAT_METAL=30, MAT_GLASS=10)
var/datum/design/blueprint
/obj/item/weapon/disk/design_disk/New()
@@ -81,8 +81,7 @@ datum
desc = "A small, open-topped glass container for delicate research samples. It sports a re-useable strip for labelling with a pen."
icon = 'icons/obj/device.dmi'
icon_state = "solution_tray"
m_amt = 0
g_amt = 5
materials = list(MAT_GLASS=5)
w_class = 1.0
amount_per_transfer_from_this = 1
possible_transfer_amounts = list(1, 2)
+6 -12
View File
@@ -3,8 +3,7 @@
desc = "Retracts stuff."
icon = 'icons/obj/surgery.dmi'
icon_state = "retractor"
m_amt = 6000
g_amt = 3000
materials = list(MAT_METAL=6000, MAT_GLASS=3000)
flags = CONDUCT
w_class = 2.0
origin_tech = "materials=1;biotech=1"
@@ -15,8 +14,7 @@
desc = "You think you have seen this before."
icon = 'icons/obj/surgery.dmi'
icon_state = "hemostat"
m_amt = 5000
g_amt = 2500
materials = list(MAT_METAL=5000, MAT_GLASS=2500)
flags = CONDUCT
w_class = 1.0
origin_tech = "materials=1;biotech=1"
@@ -28,8 +26,7 @@
desc = "This stops bleeding."
icon = 'icons/obj/surgery.dmi'
icon_state = "cautery"
m_amt = 2500
g_amt = 750
materials = list(MAT_METAL=2500, MAT_GLASS=750)
flags = CONDUCT
w_class = 1.0
origin_tech = "materials=1;biotech=1"
@@ -42,8 +39,7 @@
icon = 'icons/obj/surgery.dmi'
icon_state = "drill"
hitsound = 'sound/weapons/drill.ogg'
m_amt = 10000
g_amt = 6000
materials = list(MAT_METAL=10000, MAT_GLASS=6000)
flags = CONDUCT
force = 15.0
sharp = 1
@@ -71,8 +67,7 @@
throwforce = 5.0
throw_speed = 3
throw_range = 5
m_amt = 4000
g_amt = 1000
materials = list(MAT_METAL=4000, MAT_GLASS=1000)
origin_tech = "materials=1;biotech=1"
attack_verb = list("attacked", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut")
hitsound = 'sound/weapons/bladeslice.ogg'
@@ -136,8 +131,7 @@
throwforce = 9.0
throw_speed = 3
throw_range = 5
m_amt = 10000
g_amt = 6000
materials = list(MAT_METAL=10000, MAT_GLASS=6000)
origin_tech = "materials=1;biotech=1"
attack_verb = list("attacked", "slashed", "sawed", "cut")