mirror of
https://github.com/PolarisSS13/Polaris.git
synced 2025-12-24 09:03:05 +00:00
Mass rename of 'metal' to steel, refactor of walls and falsewall mineral construction, refactor of materials and ores.
This commit is contained in:
@@ -83,7 +83,7 @@
|
|||||||
force = 5.0
|
force = 5.0
|
||||||
throwforce = 7.0
|
throwforce = 7.0
|
||||||
w_class = 2.0
|
w_class = 2.0
|
||||||
matter = list("metal" = 50)
|
matter = list("steel" = 50)
|
||||||
attack_verb = list("bludgeoned", "whacked", "disciplined", "thrashed")
|
attack_verb = list("bludgeoned", "whacked", "disciplined", "thrashed")
|
||||||
|
|
||||||
/obj/item/weapon/cane/concealed
|
/obj/item/weapon/cane/concealed
|
||||||
@@ -271,7 +271,7 @@
|
|||||||
w_class = 2.0
|
w_class = 2.0
|
||||||
throw_speed = 4
|
throw_speed = 4
|
||||||
throw_range = 20
|
throw_range = 20
|
||||||
matter = list("metal" = 100)
|
matter = list("steel" = 100)
|
||||||
origin_tech = "magnets=1"
|
origin_tech = "magnets=1"
|
||||||
|
|
||||||
/obj/item/weapon/staff
|
/obj/item/weapon/staff
|
||||||
@@ -321,7 +321,7 @@
|
|||||||
var/amount = 1.0
|
var/amount = 1.0
|
||||||
var/laying = 0.0
|
var/laying = 0.0
|
||||||
var/old_lay = null
|
var/old_lay = null
|
||||||
matter = list("metal" = 40)
|
matter = list("steel" = 40)
|
||||||
attack_verb = list("whipped", "lashed", "disciplined", "tickled")
|
attack_verb = list("whipped", "lashed", "disciplined", "tickled")
|
||||||
|
|
||||||
suicide_act(mob/user)
|
suicide_act(mob/user)
|
||||||
@@ -345,7 +345,7 @@
|
|||||||
name = "power control module"
|
name = "power control module"
|
||||||
icon_state = "power_mod"
|
icon_state = "power_mod"
|
||||||
desc = "Heavy-duty switching circuits for power control."
|
desc = "Heavy-duty switching circuits for power control."
|
||||||
matter = list("metal" = 50, "glass" = 50)
|
matter = list("steel" = 50, "glass" = 50)
|
||||||
|
|
||||||
/obj/item/weapon/module/power_control/attackby(var/obj/item/weapon/W as obj, var/mob/user as mob)
|
/obj/item/weapon/module/power_control/attackby(var/obj/item/weapon/W as obj, var/mob/user as mob)
|
||||||
if (istype(W, /obj/item/device/multitool))
|
if (istype(W, /obj/item/device/multitool))
|
||||||
@@ -467,35 +467,35 @@
|
|||||||
desc = "A basic capacitor used in the construction of a variety of devices."
|
desc = "A basic capacitor used in the construction of a variety of devices."
|
||||||
icon_state = "capacitor"
|
icon_state = "capacitor"
|
||||||
origin_tech = "powerstorage=1"
|
origin_tech = "powerstorage=1"
|
||||||
matter = list("metal" = 50,"glass" = 50)
|
matter = list("steel" = 50,"glass" = 50)
|
||||||
|
|
||||||
/obj/item/weapon/stock_parts/scanning_module
|
/obj/item/weapon/stock_parts/scanning_module
|
||||||
name = "scanning module"
|
name = "scanning module"
|
||||||
desc = "A compact, high resolution scanning module used in the construction of certain devices."
|
desc = "A compact, high resolution scanning module used in the construction of certain devices."
|
||||||
icon_state = "scan_module"
|
icon_state = "scan_module"
|
||||||
origin_tech = "magnets=1"
|
origin_tech = "magnets=1"
|
||||||
matter = list("metal" = 50,"glass" = 20)
|
matter = list("steel" = 50,"glass" = 20)
|
||||||
|
|
||||||
/obj/item/weapon/stock_parts/manipulator
|
/obj/item/weapon/stock_parts/manipulator
|
||||||
name = "micro-manipulator"
|
name = "micro-manipulator"
|
||||||
desc = "A tiny little manipulator used in the construction of certain devices."
|
desc = "A tiny little manipulator used in the construction of certain devices."
|
||||||
icon_state = "micro_mani"
|
icon_state = "micro_mani"
|
||||||
origin_tech = "materials=1;programming=1"
|
origin_tech = "materials=1;programming=1"
|
||||||
matter = list("metal" = 30)
|
matter = list("steel" = 30)
|
||||||
|
|
||||||
/obj/item/weapon/stock_parts/micro_laser
|
/obj/item/weapon/stock_parts/micro_laser
|
||||||
name = "micro-laser"
|
name = "micro-laser"
|
||||||
desc = "A tiny laser used in certain devices."
|
desc = "A tiny laser used in certain devices."
|
||||||
icon_state = "micro_laser"
|
icon_state = "micro_laser"
|
||||||
origin_tech = "magnets=1"
|
origin_tech = "magnets=1"
|
||||||
matter = list("metal" = 10,"glass" = 20)
|
matter = list("steel" = 10,"glass" = 20)
|
||||||
|
|
||||||
/obj/item/weapon/stock_parts/matter_bin
|
/obj/item/weapon/stock_parts/matter_bin
|
||||||
name = "matter bin"
|
name = "matter bin"
|
||||||
desc = "A container for hold compressed matter awaiting re-construction."
|
desc = "A container for hold compressed matter awaiting re-construction."
|
||||||
icon_state = "matter_bin"
|
icon_state = "matter_bin"
|
||||||
origin_tech = "materials=1"
|
origin_tech = "materials=1"
|
||||||
matter = list("metal" = 80)
|
matter = list("steel" = 80)
|
||||||
|
|
||||||
//Rank 2
|
//Rank 2
|
||||||
|
|
||||||
@@ -504,7 +504,7 @@
|
|||||||
desc = "An advanced capacitor used in the construction of a variety of devices."
|
desc = "An advanced capacitor used in the construction of a variety of devices."
|
||||||
origin_tech = "powerstorage=3"
|
origin_tech = "powerstorage=3"
|
||||||
rating = 2
|
rating = 2
|
||||||
matter = list("metal" = 50,"glass" = 50)
|
matter = list("steel" = 50,"glass" = 50)
|
||||||
|
|
||||||
/obj/item/weapon/stock_parts/scanning_module/adv
|
/obj/item/weapon/stock_parts/scanning_module/adv
|
||||||
name = "advanced scanning module"
|
name = "advanced scanning module"
|
||||||
@@ -512,7 +512,7 @@
|
|||||||
icon_state = "scan_module"
|
icon_state = "scan_module"
|
||||||
origin_tech = "magnets=3"
|
origin_tech = "magnets=3"
|
||||||
rating = 2
|
rating = 2
|
||||||
matter = list("metal" = 50,"glass" = 20)
|
matter = list("steel" = 50,"glass" = 20)
|
||||||
|
|
||||||
/obj/item/weapon/stock_parts/manipulator/nano
|
/obj/item/weapon/stock_parts/manipulator/nano
|
||||||
name = "nano-manipulator"
|
name = "nano-manipulator"
|
||||||
@@ -520,7 +520,7 @@
|
|||||||
icon_state = "nano_mani"
|
icon_state = "nano_mani"
|
||||||
origin_tech = "materials=3,programming=2"
|
origin_tech = "materials=3,programming=2"
|
||||||
rating = 2
|
rating = 2
|
||||||
matter = list("metal" = 30)
|
matter = list("steel" = 30)
|
||||||
|
|
||||||
/obj/item/weapon/stock_parts/micro_laser/high
|
/obj/item/weapon/stock_parts/micro_laser/high
|
||||||
name = "high-power micro-laser"
|
name = "high-power micro-laser"
|
||||||
@@ -528,7 +528,7 @@
|
|||||||
icon_state = "high_micro_laser"
|
icon_state = "high_micro_laser"
|
||||||
origin_tech = "magnets=3"
|
origin_tech = "magnets=3"
|
||||||
rating = 2
|
rating = 2
|
||||||
matter = list("metal" = 10,"glass" = 20)
|
matter = list("steel" = 10,"glass" = 20)
|
||||||
|
|
||||||
/obj/item/weapon/stock_parts/matter_bin/adv
|
/obj/item/weapon/stock_parts/matter_bin/adv
|
||||||
name = "advanced matter bin"
|
name = "advanced matter bin"
|
||||||
@@ -536,7 +536,7 @@
|
|||||||
icon_state = "advanced_matter_bin"
|
icon_state = "advanced_matter_bin"
|
||||||
origin_tech = "materials=3"
|
origin_tech = "materials=3"
|
||||||
rating = 2
|
rating = 2
|
||||||
matter = list("metal" = 80)
|
matter = list("steel" = 80)
|
||||||
|
|
||||||
//Rating 3
|
//Rating 3
|
||||||
|
|
||||||
@@ -545,14 +545,14 @@
|
|||||||
desc = "A super-high capacity capacitor used in the construction of a variety of devices."
|
desc = "A super-high capacity capacitor used in the construction of a variety of devices."
|
||||||
origin_tech = "powerstorage=5;materials=4"
|
origin_tech = "powerstorage=5;materials=4"
|
||||||
rating = 3
|
rating = 3
|
||||||
matter = list("metal" = 50,"glass" = 50)
|
matter = list("steel" = 50,"glass" = 50)
|
||||||
|
|
||||||
/obj/item/weapon/stock_parts/scanning_module/phasic
|
/obj/item/weapon/stock_parts/scanning_module/phasic
|
||||||
name = "phasic scanning module"
|
name = "phasic scanning module"
|
||||||
desc = "A compact, high resolution phasic scanning module used in the construction of certain devices."
|
desc = "A compact, high resolution phasic scanning module used in the construction of certain devices."
|
||||||
origin_tech = "magnets=5"
|
origin_tech = "magnets=5"
|
||||||
rating = 3
|
rating = 3
|
||||||
matter = list("metal" = 50,"glass" = 20)
|
matter = list("steel" = 50,"glass" = 20)
|
||||||
|
|
||||||
/obj/item/weapon/stock_parts/manipulator/pico
|
/obj/item/weapon/stock_parts/manipulator/pico
|
||||||
name = "pico-manipulator"
|
name = "pico-manipulator"
|
||||||
@@ -560,7 +560,7 @@
|
|||||||
icon_state = "pico_mani"
|
icon_state = "pico_mani"
|
||||||
origin_tech = "materials=5,programming=2"
|
origin_tech = "materials=5,programming=2"
|
||||||
rating = 3
|
rating = 3
|
||||||
matter = list("metal" = 30)
|
matter = list("steel" = 30)
|
||||||
|
|
||||||
/obj/item/weapon/stock_parts/micro_laser/ultra
|
/obj/item/weapon/stock_parts/micro_laser/ultra
|
||||||
name = "ultra-high-power micro-laser"
|
name = "ultra-high-power micro-laser"
|
||||||
@@ -568,7 +568,7 @@
|
|||||||
desc = "A tiny laser used in certain devices."
|
desc = "A tiny laser used in certain devices."
|
||||||
origin_tech = "magnets=5"
|
origin_tech = "magnets=5"
|
||||||
rating = 3
|
rating = 3
|
||||||
matter = list("metal" = 10,"glass" = 20)
|
matter = list("steel" = 10,"glass" = 20)
|
||||||
|
|
||||||
/obj/item/weapon/stock_parts/matter_bin/super
|
/obj/item/weapon/stock_parts/matter_bin/super
|
||||||
name = "super matter bin"
|
name = "super matter bin"
|
||||||
@@ -576,7 +576,7 @@
|
|||||||
icon_state = "super_matter_bin"
|
icon_state = "super_matter_bin"
|
||||||
origin_tech = "materials=5"
|
origin_tech = "materials=5"
|
||||||
rating = 3
|
rating = 3
|
||||||
matter = list("metal" = 80)
|
matter = list("steel" = 80)
|
||||||
|
|
||||||
// Subspace stock parts
|
// Subspace stock parts
|
||||||
|
|
||||||
@@ -585,35 +585,35 @@
|
|||||||
icon_state = "subspace_ansible"
|
icon_state = "subspace_ansible"
|
||||||
desc = "A compact module capable of sensing extradimensional activity."
|
desc = "A compact module capable of sensing extradimensional activity."
|
||||||
origin_tech = "programming=3;magnets=5;materials=4;bluespace=2"
|
origin_tech = "programming=3;magnets=5;materials=4;bluespace=2"
|
||||||
matter = list("metal" = 30,"glass" = 10)
|
matter = list("steel" = 30,"glass" = 10)
|
||||||
|
|
||||||
/obj/item/weapon/stock_parts/subspace/filter
|
/obj/item/weapon/stock_parts/subspace/filter
|
||||||
name = "hyperwave filter"
|
name = "hyperwave filter"
|
||||||
icon_state = "hyperwave_filter"
|
icon_state = "hyperwave_filter"
|
||||||
desc = "A tiny device capable of filtering and converting super-intense radiowaves."
|
desc = "A tiny device capable of filtering and converting super-intense radiowaves."
|
||||||
origin_tech = "programming=4;magnets=2"
|
origin_tech = "programming=4;magnets=2"
|
||||||
matter = list("metal" = 30,"glass" = 10)
|
matter = list("steel" = 30,"glass" = 10)
|
||||||
|
|
||||||
/obj/item/weapon/stock_parts/subspace/amplifier
|
/obj/item/weapon/stock_parts/subspace/amplifier
|
||||||
name = "subspace amplifier"
|
name = "subspace amplifier"
|
||||||
icon_state = "subspace_amplifier"
|
icon_state = "subspace_amplifier"
|
||||||
desc = "A compact micro-machine capable of amplifying weak subspace transmissions."
|
desc = "A compact micro-machine capable of amplifying weak subspace transmissions."
|
||||||
origin_tech = "programming=3;magnets=4;materials=4;bluespace=2"
|
origin_tech = "programming=3;magnets=4;materials=4;bluespace=2"
|
||||||
matter = list("metal" = 30,"glass" = 10)
|
matter = list("steel" = 30,"glass" = 10)
|
||||||
|
|
||||||
/obj/item/weapon/stock_parts/subspace/treatment
|
/obj/item/weapon/stock_parts/subspace/treatment
|
||||||
name = "subspace treatment disk"
|
name = "subspace treatment disk"
|
||||||
icon_state = "treatment_disk"
|
icon_state = "treatment_disk"
|
||||||
desc = "A compact micro-machine capable of stretching out hyper-compressed radio waves."
|
desc = "A compact micro-machine capable of stretching out hyper-compressed radio waves."
|
||||||
origin_tech = "programming=3;magnets=2;materials=5;bluespace=2"
|
origin_tech = "programming=3;magnets=2;materials=5;bluespace=2"
|
||||||
matter = list("metal" = 30,"glass" = 10)
|
matter = list("steel" = 30,"glass" = 10)
|
||||||
|
|
||||||
/obj/item/weapon/stock_parts/subspace/analyzer
|
/obj/item/weapon/stock_parts/subspace/analyzer
|
||||||
name = "subspace wavelength analyzer"
|
name = "subspace wavelength analyzer"
|
||||||
icon_state = "wavelength_analyzer"
|
icon_state = "wavelength_analyzer"
|
||||||
desc = "A sophisticated analyzer capable of analyzing cryptic subspace wavelengths."
|
desc = "A sophisticated analyzer capable of analyzing cryptic subspace wavelengths."
|
||||||
origin_tech = "programming=3;magnets=4;materials=4;bluespace=2"
|
origin_tech = "programming=3;magnets=4;materials=4;bluespace=2"
|
||||||
matter = list("metal" = 30,"glass" = 10)
|
matter = list("steel" = 30,"glass" = 10)
|
||||||
|
|
||||||
/obj/item/weapon/stock_parts/subspace/crystal
|
/obj/item/weapon/stock_parts/subspace/crystal
|
||||||
name = "ansible crystal"
|
name = "ansible crystal"
|
||||||
@@ -627,7 +627,7 @@
|
|||||||
icon_state = "subspace_transmitter"
|
icon_state = "subspace_transmitter"
|
||||||
desc = "A large piece of equipment used to open a window into the subspace dimension."
|
desc = "A large piece of equipment used to open a window into the subspace dimension."
|
||||||
origin_tech = "magnets=5;materials=5;bluespace=3"
|
origin_tech = "magnets=5;materials=5;bluespace=3"
|
||||||
matter = list("metal" = 50)
|
matter = list("steel" = 50)
|
||||||
|
|
||||||
/obj/item/weapon/ectoplasm
|
/obj/item/weapon/ectoplasm
|
||||||
name = "ectoplasm"
|
name = "ectoplasm"
|
||||||
|
|||||||
@@ -8,7 +8,7 @@
|
|||||||
item_state = "electronic"
|
item_state = "electronic"
|
||||||
throw_speed = 4
|
throw_speed = 4
|
||||||
throw_range = 20
|
throw_range = 20
|
||||||
matter = list("metal" = 500)
|
matter = list("steel" = 500)
|
||||||
var/obj/item/weapon/disk/nuclear/the_disk = null
|
var/obj/item/weapon/disk/nuclear/the_disk = null
|
||||||
var/active = 0
|
var/active = 0
|
||||||
|
|
||||||
|
|||||||
@@ -798,7 +798,7 @@ datum/objective/heist/salvage
|
|||||||
choose_target()
|
choose_target()
|
||||||
switch(rand(1,8))
|
switch(rand(1,8))
|
||||||
if(1)
|
if(1)
|
||||||
target = "metal"
|
target = "steel"
|
||||||
target_amount = 300
|
target_amount = 300
|
||||||
if(2)
|
if(2)
|
||||||
target = "glass"
|
target = "glass"
|
||||||
|
|||||||
@@ -866,7 +866,7 @@ Just a object used in constructing air alarms
|
|||||||
icon_state = "door_electronics"
|
icon_state = "door_electronics"
|
||||||
desc = "Looks like a circuit. Probably is."
|
desc = "Looks like a circuit. Probably is."
|
||||||
w_class = 2.0
|
w_class = 2.0
|
||||||
matter = list("metal" = 50, "glass" = 50)
|
matter = list("steel" = 50, "glass" = 50)
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@@ -1188,7 +1188,7 @@ Just a object used in constructing fire alarms
|
|||||||
icon_state = "door_electronics"
|
icon_state = "door_electronics"
|
||||||
desc = "A circuit. It has a label on it, it says \"Can handle heat levels up to 40 degrees celsius!\""
|
desc = "A circuit. It has a label on it, it says \"Can handle heat levels up to 40 degrees celsius!\""
|
||||||
w_class = 2.0
|
w_class = 2.0
|
||||||
matter = list("metal" = 50, "glass" = 50)
|
matter = list("steel" = 50, "glass" = 50)
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|||||||
@@ -9,8 +9,8 @@
|
|||||||
active_power_usage = 2000
|
active_power_usage = 2000
|
||||||
|
|
||||||
var/list/machine_recipes
|
var/list/machine_recipes
|
||||||
var/list/stored_material = list("metal" = 0, "glass" = 0)
|
var/list/stored_material = list("steel" = 0, "glass" = 0)
|
||||||
var/list/storage_capacity = list("metal" = 0, "glass" = 0)
|
var/list/storage_capacity = list("steel" = 0, "glass" = 0)
|
||||||
var/show_category = "All"
|
var/show_category = "All"
|
||||||
|
|
||||||
var/hacked = 0
|
var/hacked = 0
|
||||||
@@ -279,18 +279,20 @@
|
|||||||
for(var/obj/item/weapon/stock_parts/manipulator/M in component_parts)
|
for(var/obj/item/weapon/stock_parts/manipulator/M in component_parts)
|
||||||
man_rating += M.rating
|
man_rating += M.rating
|
||||||
|
|
||||||
storage_capacity["metal"] = mb_rating * 25000
|
storage_capacity["steel"] = mb_rating * 25000
|
||||||
storage_capacity["glass"] = mb_rating * 12500
|
storage_capacity["glass"] = mb_rating * 12500
|
||||||
build_time = 50 / man_rating
|
build_time = 50 / man_rating
|
||||||
mat_efficiency = 1.1 - man_rating * 0.1// Normally, price is 1.25 the amount of material, so this shouldn't go higher than 0.8. Maximum rating of parts is 3
|
mat_efficiency = 1.1 - man_rating * 0.1// Normally, price is 1.25 the amount of material, so this shouldn't go higher than 0.8. Maximum rating of parts is 3
|
||||||
|
|
||||||
/obj/machinery/autolathe/dismantle()
|
/obj/machinery/autolathe/dismantle()
|
||||||
var/list/sheets = list("metal" = /obj/item/stack/sheet/metal, "glass" = /obj/item/stack/sheet/glass)
|
|
||||||
|
|
||||||
for(var/mat in stored_material)
|
for(var/mat in stored_material)
|
||||||
var/T = sheets[mat]
|
var/material/M = name_to_mineral[mat]
|
||||||
var/obj/item/stack/sheet/S = new T
|
if(!istype(M))
|
||||||
|
continue
|
||||||
|
var/obj/item/stack/sheet/S = new M.stack_type(get_turf(src))
|
||||||
if(stored_material[mat] > S.perunit)
|
if(stored_material[mat] > S.perunit)
|
||||||
S.amount = round(stored_material[mat] / S.perunit)
|
S.amount = round(stored_material[mat] / S.perunit)
|
||||||
S.loc = loc
|
else
|
||||||
|
del(S)
|
||||||
..()
|
..()
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
w_class = 2
|
w_class = 2
|
||||||
anchored = 0
|
anchored = 0
|
||||||
|
|
||||||
matter = list("metal" = 700,"glass" = 300)
|
matter = list("steel" = 700,"glass" = 300)
|
||||||
|
|
||||||
// Motion, EMP-Proof, X-Ray
|
// Motion, EMP-Proof, X-Ray
|
||||||
var/list/obj/item/possible_upgrades = list(/obj/item/device/assembly/prox_sensor, /obj/item/stack/sheet/mineral/osmium, /obj/item/weapon/stock_parts/scanning_module)
|
var/list/obj/item/possible_upgrades = list(/obj/item/device/assembly/prox_sensor, /obj/item/stack/sheet/mineral/osmium, /obj/item/weapon/stock_parts/scanning_module)
|
||||||
|
|||||||
@@ -573,7 +573,7 @@ About the new airlock wires panel:
|
|||||||
if (src.isElectrified())
|
if (src.isElectrified())
|
||||||
if (istype(mover, /obj/item))
|
if (istype(mover, /obj/item))
|
||||||
var/obj/item/i = mover
|
var/obj/item/i = mover
|
||||||
if (i.matter && ("metal" in i.matter) && i.matter["metal"] > 0)
|
if (i.matter && ("steel" in i.matter) && i.matter["steel"] > 0)
|
||||||
var/datum/effect/effect/system/spark_spread/s = new /datum/effect/effect/system/spark_spread
|
var/datum/effect/effect/system/spark_spread/s = new /datum/effect/effect/system/spark_spread
|
||||||
s.set_up(5, 1, src)
|
s.set_up(5, 1, src)
|
||||||
s.start()
|
s.start()
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
icon_state = "door_electronics"
|
icon_state = "door_electronics"
|
||||||
w_class = 2.0 //It should be tiny! -Agouri
|
w_class = 2.0 //It should be tiny! -Agouri
|
||||||
|
|
||||||
matter = list("metal" = 50,"glass" = 50)
|
matter = list("steel" = 50,"glass" = 50)
|
||||||
|
|
||||||
req_access = list(access_engine)
|
req_access = list(access_engine)
|
||||||
|
|
||||||
|
|||||||
@@ -22,7 +22,7 @@
|
|||||||
if(!M.get_amount())
|
if(!M.get_amount())
|
||||||
return
|
return
|
||||||
while(metal_amount < 150000 && M.amount)
|
while(metal_amount < 150000 && M.amount)
|
||||||
src.metal_amount += O.matter["metal"] /*O:height * O:width * O:length * 100000.0*/
|
src.metal_amount += O.matter["steel"] /*O:height * O:width * O:length * 100000.0*/
|
||||||
M.use(1)
|
M.use(1)
|
||||||
count++
|
count++
|
||||||
|
|
||||||
|
|||||||
@@ -9,7 +9,7 @@
|
|||||||
force = 5
|
force = 5
|
||||||
origin_tech = "materials=2"
|
origin_tech = "materials=2"
|
||||||
construction_time = 100
|
construction_time = 100
|
||||||
construction_cost = list("metal"=10000)
|
construction_cost = list("steel"=10000)
|
||||||
var/equip_cooldown = 0
|
var/equip_cooldown = 0
|
||||||
var/equip_ready = 1
|
var/equip_ready = 1
|
||||||
var/energy_drain = 0
|
var/energy_drain = 0
|
||||||
@@ -100,11 +100,11 @@
|
|||||||
|
|
||||||
if (ispath(required_type))
|
if (ispath(required_type))
|
||||||
return istype(M, required_type)
|
return istype(M, required_type)
|
||||||
|
|
||||||
for (var/path in required_type)
|
for (var/path in required_type)
|
||||||
if (istype(M, path))
|
if (istype(M, path))
|
||||||
return 1
|
return 1
|
||||||
|
|
||||||
return 0
|
return 0
|
||||||
|
|
||||||
/obj/item/mecha_parts/mecha_equipment/proc/attach(obj/mecha/M as obj)
|
/obj/item/mecha_parts/mecha_equipment/proc/attach(obj/mecha/M as obj)
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
origin_tech = "programming=2;biotech=3"
|
origin_tech = "programming=2;biotech=3"
|
||||||
energy_drain = 20
|
energy_drain = 20
|
||||||
range = MELEE
|
range = MELEE
|
||||||
construction_cost = list("metal"=5000,"glass"=10000)
|
construction_cost = list("steel"=5000,"glass"=10000)
|
||||||
reliability = 1000
|
reliability = 1000
|
||||||
equip_cooldown = 20
|
equip_cooldown = 20
|
||||||
var/mob/living/carbon/occupant = null
|
var/mob/living/carbon/occupant = null
|
||||||
@@ -390,7 +390,7 @@
|
|||||||
equip_cooldown = 10
|
equip_cooldown = 10
|
||||||
origin_tech = "materials=3;biotech=4;magnets=4;programming=3"
|
origin_tech = "materials=3;biotech=4;magnets=4;programming=3"
|
||||||
construction_time = 200
|
construction_time = 200
|
||||||
construction_cost = list("metal"=3000,"glass"=2000)
|
construction_cost = list("steel"=3000,"glass"=2000)
|
||||||
required_type = /obj/mecha/medical
|
required_type = /obj/mecha/medical
|
||||||
|
|
||||||
New()
|
New()
|
||||||
|
|||||||
@@ -123,7 +123,7 @@
|
|||||||
desc = "This is an upgraded version of the drill that'll pierce the heavens! (Can be attached to: Combat and Engineering Exosuits)"
|
desc = "This is an upgraded version of the drill that'll pierce the heavens! (Can be attached to: Combat and Engineering Exosuits)"
|
||||||
icon_state = "mecha_diamond_drill"
|
icon_state = "mecha_diamond_drill"
|
||||||
origin_tech = "materials=4;engineering=3"
|
origin_tech = "materials=4;engineering=3"
|
||||||
construction_cost = list("metal"=10000,"diamond"=6500)
|
construction_cost = list("steel"=10000,"diamond"=6500)
|
||||||
equip_cooldown = 20
|
equip_cooldown = 20
|
||||||
force = 15
|
force = 15
|
||||||
|
|
||||||
@@ -255,7 +255,7 @@
|
|||||||
energy_drain = 250
|
energy_drain = 250
|
||||||
range = MELEE|RANGED
|
range = MELEE|RANGED
|
||||||
construction_time = 1200
|
construction_time = 1200
|
||||||
construction_cost = list("metal"=30000,"phoron"=25000,"silver"=20000,"gold"=20000)
|
construction_cost = list("steel"=30000,"phoron"=25000,"silver"=20000,"gold"=20000)
|
||||||
var/mode = 0 //0 - deconstruct, 1 - wall or floor, 2 - airlock.
|
var/mode = 0 //0 - deconstruct, 1 - wall or floor, 2 - airlock.
|
||||||
var/disabled = 0 //malf
|
var/disabled = 0 //malf
|
||||||
|
|
||||||
@@ -505,7 +505,7 @@
|
|||||||
equip_cooldown = 10
|
equip_cooldown = 10
|
||||||
energy_drain = 50
|
energy_drain = 50
|
||||||
range = 0
|
range = 0
|
||||||
construction_cost = list("metal"=20000,"silver"=5000)
|
construction_cost = list("steel"=20000,"silver"=5000)
|
||||||
var/deflect_coeff = 1.15
|
var/deflect_coeff = 1.15
|
||||||
var/damage_coeff = 0.8
|
var/damage_coeff = 0.8
|
||||||
|
|
||||||
@@ -555,7 +555,7 @@
|
|||||||
equip_cooldown = 10
|
equip_cooldown = 10
|
||||||
energy_drain = 50
|
energy_drain = 50
|
||||||
range = 0
|
range = 0
|
||||||
construction_cost = list("metal"=20000,"gold"=5000)
|
construction_cost = list("steel"=20000,"gold"=5000)
|
||||||
var/deflect_coeff = 1.15
|
var/deflect_coeff = 1.15
|
||||||
var/damage_coeff = 0.8
|
var/damage_coeff = 0.8
|
||||||
|
|
||||||
@@ -626,7 +626,7 @@
|
|||||||
equip_cooldown = 20
|
equip_cooldown = 20
|
||||||
energy_drain = 100
|
energy_drain = 100
|
||||||
range = 0
|
range = 0
|
||||||
construction_cost = list("metal"=10000,"gold"=1000,"silver"=2000,"glass"=5000)
|
construction_cost = list("steel"=10000,"gold"=1000,"silver"=2000,"glass"=5000)
|
||||||
var/health_boost = 2
|
var/health_boost = 2
|
||||||
var/datum/global_iterator/pr_repair_droid
|
var/datum/global_iterator/pr_repair_droid
|
||||||
var/icon/droid_overlay
|
var/icon/droid_overlay
|
||||||
@@ -716,7 +716,7 @@
|
|||||||
equip_cooldown = 10
|
equip_cooldown = 10
|
||||||
energy_drain = 0
|
energy_drain = 0
|
||||||
range = 0
|
range = 0
|
||||||
construction_cost = list("metal"=10000,"gold"=2000,"silver"=3000,"glass"=2000)
|
construction_cost = list("steel"=10000,"gold"=2000,"silver"=3000,"glass"=2000)
|
||||||
var/datum/global_iterator/pr_energy_relay
|
var/datum/global_iterator/pr_energy_relay
|
||||||
var/coeff = 100
|
var/coeff = 100
|
||||||
var/list/use_channels = list(EQUIP,ENVIRON,LIGHT)
|
var/list/use_channels = list(EQUIP,ENVIRON,LIGHT)
|
||||||
@@ -828,7 +828,7 @@
|
|||||||
equip_cooldown = 10
|
equip_cooldown = 10
|
||||||
energy_drain = 0
|
energy_drain = 0
|
||||||
range = MELEE
|
range = MELEE
|
||||||
construction_cost = list("metal"=10000,"silver"=500,"glass"=1000)
|
construction_cost = list("steel"=10000,"silver"=500,"glass"=1000)
|
||||||
var/datum/global_iterator/pr_mech_generator
|
var/datum/global_iterator/pr_mech_generator
|
||||||
var/coeff = 100
|
var/coeff = 100
|
||||||
var/obj/item/stack/sheet/fuel
|
var/obj/item/stack/sheet/fuel
|
||||||
@@ -963,7 +963,7 @@
|
|||||||
desc = "Generates power using uranium. Pollutes the environment."
|
desc = "Generates power using uranium. Pollutes the environment."
|
||||||
icon_state = "tesla"
|
icon_state = "tesla"
|
||||||
origin_tech = "powerstorage=3;engineering=3"
|
origin_tech = "powerstorage=3;engineering=3"
|
||||||
construction_cost = list("metal"=10000,"silver"=500,"glass"=1000)
|
construction_cost = list("steel"=10000,"silver"=500,"glass"=1000)
|
||||||
max_fuel = 50000
|
max_fuel = 50000
|
||||||
fuel_per_cycle_idle = 10
|
fuel_per_cycle_idle = 10
|
||||||
fuel_per_cycle_active = 30
|
fuel_per_cycle_active = 30
|
||||||
@@ -1074,7 +1074,7 @@
|
|||||||
origin_tech = "engineering=1;biotech=1"
|
origin_tech = "engineering=1;biotech=1"
|
||||||
energy_drain = 10
|
energy_drain = 10
|
||||||
range = MELEE
|
range = MELEE
|
||||||
construction_cost = list("metal"=5000,"glass"=5000)
|
construction_cost = list("steel"=5000,"glass"=5000)
|
||||||
reliability = 1000
|
reliability = 1000
|
||||||
equip_cooldown = 20
|
equip_cooldown = 20
|
||||||
var/mob/living/carbon/occupant = null
|
var/mob/living/carbon/occupant = null
|
||||||
|
|||||||
@@ -274,7 +274,7 @@
|
|||||||
/obj/item/mecha_parts/mecha_equipment/weapon/ballistic/missile_rack/flashbang/clusterbang//Because I am a heartless bastard -Sieve
|
/obj/item/mecha_parts/mecha_equipment/weapon/ballistic/missile_rack/flashbang/clusterbang//Because I am a heartless bastard -Sieve
|
||||||
name = "\improper SOP-6 grenade launcher"
|
name = "\improper SOP-6 grenade launcher"
|
||||||
projectile = /obj/item/weapon/grenade/flashbang/clusterbang
|
projectile = /obj/item/weapon/grenade/flashbang/clusterbang
|
||||||
construction_cost = list("metal"=20000,"gold"=6000,"uranium"=6000)
|
construction_cost = list("steel"=20000,"gold"=6000,"uranium"=6000)
|
||||||
|
|
||||||
/obj/item/mecha_parts/mecha_equipment/weapon/ballistic/missile_rack/flashbang/clusterbang/limited/get_equip_info()//Limited version of the clusterbang launcher that can't reload
|
/obj/item/mecha_parts/mecha_equipment/weapon/ballistic/missile_rack/flashbang/clusterbang/limited/get_equip_info()//Limited version of the clusterbang launcher that can't reload
|
||||||
return "<span style=\"color:[equip_ready?"#0f0":"#f00"];\">*</span> [chassis.selected==src?"<b>":"<a href='?src=\ref[chassis];select_equip=\ref[src]'>"][src.name][chassis.selected==src?"</b>":"</a>"]\[[src.projectiles]\]"
|
return "<span style=\"color:[equip_ready?"#0f0":"#f00"];\">*</span> [chassis.selected==src?"<b>":"<a href='?src=\ref[chassis];select_equip=\ref[src]'>"][src.name][chassis.selected==src?"</b>":"</a>"]\[[src.projectiles]\]"
|
||||||
|
|||||||
@@ -17,7 +17,7 @@
|
|||||||
var/time_coeff = 1.5 //can be upgraded with research
|
var/time_coeff = 1.5 //can be upgraded with research
|
||||||
var/resource_coeff = 1.5 //can be upgraded with research
|
var/resource_coeff = 1.5 //can be upgraded with research
|
||||||
var/list/resources = list(
|
var/list/resources = list(
|
||||||
"metal"=0,
|
"steel"=0,
|
||||||
"glass"=0,
|
"glass"=0,
|
||||||
"gold"=0,
|
"gold"=0,
|
||||||
"silver"=0,
|
"silver"=0,
|
||||||
@@ -719,7 +719,7 @@
|
|||||||
/obj/machinery/mecha_part_fabricator/proc/remove_material(var/mat_string, var/amount)
|
/obj/machinery/mecha_part_fabricator/proc/remove_material(var/mat_string, var/amount)
|
||||||
var/type
|
var/type
|
||||||
switch(mat_string)
|
switch(mat_string)
|
||||||
if("metal")
|
if("steel")
|
||||||
type = /obj/item/stack/sheet/metal
|
type = /obj/item/stack/sheet/metal
|
||||||
if("glass")
|
if("glass")
|
||||||
type = /obj/item/stack/sheet/glass
|
type = /obj/item/stack/sheet/glass
|
||||||
@@ -774,9 +774,9 @@
|
|||||||
if(I.reliability != 100 && crit_fail)
|
if(I.reliability != 100 && crit_fail)
|
||||||
I.crit_fail = 1
|
I.crit_fail = 1
|
||||||
I.loc = src.loc
|
I.loc = src.loc
|
||||||
if(src.resources["metal"] >= 3750)
|
if(src.resources["steel"] >= 3750)
|
||||||
var/obj/item/stack/sheet/metal/G = new /obj/item/stack/sheet/metal(src.loc)
|
var/obj/item/stack/sheet/metal/G = new /obj/item/stack/sheet/metal(src.loc)
|
||||||
G.amount = round(src.resources["metal"] / G.perunit)
|
G.amount = round(src.resources["steel"] / G.perunit)
|
||||||
if(src.resources["glass"] >= 3750)
|
if(src.resources["glass"] >= 3750)
|
||||||
var/obj/item/stack/sheet/glass/G = new /obj/item/stack/sheet/glass(src.loc)
|
var/obj/item/stack/sheet/glass/G = new /obj/item/stack/sheet/glass(src.loc)
|
||||||
G.amount = round(src.resources["glass"] / G.perunit)
|
G.amount = round(src.resources["glass"] / G.perunit)
|
||||||
@@ -816,7 +816,7 @@
|
|||||||
if(/obj/item/stack/sheet/mineral/phoron)
|
if(/obj/item/stack/sheet/mineral/phoron)
|
||||||
material = "phoron"
|
material = "phoron"
|
||||||
if(/obj/item/stack/sheet/metal)
|
if(/obj/item/stack/sheet/metal)
|
||||||
material = "metal"
|
material = "steel"
|
||||||
if(/obj/item/stack/sheet/glass)
|
if(/obj/item/stack/sheet/glass)
|
||||||
material = "glass"
|
material = "glass"
|
||||||
if(/obj/item/stack/sheet/mineral/uranium)
|
if(/obj/item/stack/sheet/mineral/uranium)
|
||||||
|
|||||||
@@ -69,7 +69,7 @@
|
|||||||
icon_state = "motion2"
|
icon_state = "motion2"
|
||||||
origin_tech = "programming=2;magnets=2"
|
origin_tech = "programming=2;magnets=2"
|
||||||
construction_time = 50
|
construction_time = 50
|
||||||
construction_cost = list("metal"=500)
|
construction_cost = list("steel"=500)
|
||||||
|
|
||||||
proc/get_mecha_info()
|
proc/get_mecha_info()
|
||||||
if(!in_mecha())
|
if(!in_mecha())
|
||||||
|
|||||||
@@ -12,14 +12,14 @@
|
|||||||
flags = CONDUCT
|
flags = CONDUCT
|
||||||
origin_tech = "programming=2;materials=2"
|
origin_tech = "programming=2;materials=2"
|
||||||
var/construction_time = 100
|
var/construction_time = 100
|
||||||
var/list/construction_cost = list("metal"=20000,"glass"=5000)
|
var/list/construction_cost = list("steel"=20000,"glass"=5000)
|
||||||
|
|
||||||
|
|
||||||
/obj/item/mecha_parts/chassis
|
/obj/item/mecha_parts/chassis
|
||||||
name="Mecha Chassis"
|
name="Mecha Chassis"
|
||||||
icon_state = "backbone"
|
icon_state = "backbone"
|
||||||
var/datum/construction/construct
|
var/datum/construction/construct
|
||||||
construction_cost = list("metal"=20000)
|
construction_cost = list("steel"=20000)
|
||||||
flags = CONDUCT
|
flags = CONDUCT
|
||||||
|
|
||||||
attackby(obj/item/W as obj, mob/user as mob)
|
attackby(obj/item/W as obj, mob/user as mob)
|
||||||
@@ -45,7 +45,7 @@
|
|||||||
icon_state = "ripley_harness"
|
icon_state = "ripley_harness"
|
||||||
origin_tech = "programming=2;materials=2;biotech=2;engineering=2"
|
origin_tech = "programming=2;materials=2;biotech=2;engineering=2"
|
||||||
construction_time = 200
|
construction_time = 200
|
||||||
construction_cost = list("metal"=40000,"glass"=15000)
|
construction_cost = list("steel"=40000,"glass"=15000)
|
||||||
|
|
||||||
/obj/item/mecha_parts/part/ripley_left_arm
|
/obj/item/mecha_parts/part/ripley_left_arm
|
||||||
name="Ripley Left Arm"
|
name="Ripley Left Arm"
|
||||||
@@ -53,7 +53,7 @@
|
|||||||
icon_state = "ripley_l_arm"
|
icon_state = "ripley_l_arm"
|
||||||
origin_tech = "programming=2;materials=2;engineering=2"
|
origin_tech = "programming=2;materials=2;engineering=2"
|
||||||
construction_time = 150
|
construction_time = 150
|
||||||
construction_cost = list("metal"=25000)
|
construction_cost = list("steel"=25000)
|
||||||
|
|
||||||
/obj/item/mecha_parts/part/ripley_right_arm
|
/obj/item/mecha_parts/part/ripley_right_arm
|
||||||
name="Ripley Right Arm"
|
name="Ripley Right Arm"
|
||||||
@@ -61,7 +61,7 @@
|
|||||||
icon_state = "ripley_r_arm"
|
icon_state = "ripley_r_arm"
|
||||||
origin_tech = "programming=2;materials=2;engineering=2"
|
origin_tech = "programming=2;materials=2;engineering=2"
|
||||||
construction_time = 150
|
construction_time = 150
|
||||||
construction_cost = list("metal"=25000)
|
construction_cost = list("steel"=25000)
|
||||||
|
|
||||||
/obj/item/mecha_parts/part/ripley_left_leg
|
/obj/item/mecha_parts/part/ripley_left_leg
|
||||||
name="Ripley Left Leg"
|
name="Ripley Left Leg"
|
||||||
@@ -69,7 +69,7 @@
|
|||||||
icon_state = "ripley_l_leg"
|
icon_state = "ripley_l_leg"
|
||||||
origin_tech = "programming=2;materials=2;engineering=2"
|
origin_tech = "programming=2;materials=2;engineering=2"
|
||||||
construction_time = 150
|
construction_time = 150
|
||||||
construction_cost = list("metal"=30000)
|
construction_cost = list("steel"=30000)
|
||||||
|
|
||||||
/obj/item/mecha_parts/part/ripley_right_leg
|
/obj/item/mecha_parts/part/ripley_right_leg
|
||||||
name="Ripley Right Leg"
|
name="Ripley Right Leg"
|
||||||
@@ -77,13 +77,13 @@
|
|||||||
icon_state = "ripley_r_leg"
|
icon_state = "ripley_r_leg"
|
||||||
origin_tech = "programming=2;materials=2;engineering=2"
|
origin_tech = "programming=2;materials=2;engineering=2"
|
||||||
construction_time = 150
|
construction_time = 150
|
||||||
construction_cost = list("metal"=30000)
|
construction_cost = list("steel"=30000)
|
||||||
|
|
||||||
///////// Gygax
|
///////// Gygax
|
||||||
|
|
||||||
/obj/item/mecha_parts/chassis/gygax
|
/obj/item/mecha_parts/chassis/gygax
|
||||||
name = "Gygax Chassis"
|
name = "Gygax Chassis"
|
||||||
construction_cost = list("metal"=25000)
|
construction_cost = list("steel"=25000)
|
||||||
|
|
||||||
New()
|
New()
|
||||||
..()
|
..()
|
||||||
@@ -95,7 +95,7 @@
|
|||||||
icon_state = "gygax_harness"
|
icon_state = "gygax_harness"
|
||||||
origin_tech = "programming=2;materials=2;biotech=3;engineering=3"
|
origin_tech = "programming=2;materials=2;biotech=3;engineering=3"
|
||||||
construction_time = 300
|
construction_time = 300
|
||||||
construction_cost = list("metal"=50000,"glass"=20000)
|
construction_cost = list("steel"=50000,"glass"=20000)
|
||||||
|
|
||||||
/obj/item/mecha_parts/part/gygax_head
|
/obj/item/mecha_parts/part/gygax_head
|
||||||
name="Gygax Head"
|
name="Gygax Head"
|
||||||
@@ -103,7 +103,7 @@
|
|||||||
icon_state = "gygax_head"
|
icon_state = "gygax_head"
|
||||||
origin_tech = "programming=2;materials=2;magnets=3;engineering=3"
|
origin_tech = "programming=2;materials=2;magnets=3;engineering=3"
|
||||||
construction_time = 200
|
construction_time = 200
|
||||||
construction_cost = list("metal"=20000,"glass"=10000)
|
construction_cost = list("steel"=20000,"glass"=10000)
|
||||||
|
|
||||||
/obj/item/mecha_parts/part/gygax_left_arm
|
/obj/item/mecha_parts/part/gygax_left_arm
|
||||||
name="Gygax Left Arm"
|
name="Gygax Left Arm"
|
||||||
@@ -111,7 +111,7 @@
|
|||||||
icon_state = "gygax_l_arm"
|
icon_state = "gygax_l_arm"
|
||||||
origin_tech = "programming=2;materials=2;engineering=3"
|
origin_tech = "programming=2;materials=2;engineering=3"
|
||||||
construction_time = 200
|
construction_time = 200
|
||||||
construction_cost = list("metal"=30000)
|
construction_cost = list("steel"=30000)
|
||||||
|
|
||||||
/obj/item/mecha_parts/part/gygax_right_arm
|
/obj/item/mecha_parts/part/gygax_right_arm
|
||||||
name="Gygax Right Arm"
|
name="Gygax Right Arm"
|
||||||
@@ -119,35 +119,35 @@
|
|||||||
icon_state = "gygax_r_arm"
|
icon_state = "gygax_r_arm"
|
||||||
origin_tech = "programming=2;materials=2;engineering=3"
|
origin_tech = "programming=2;materials=2;engineering=3"
|
||||||
construction_time = 200
|
construction_time = 200
|
||||||
construction_cost = list("metal"=30000)
|
construction_cost = list("steel"=30000)
|
||||||
|
|
||||||
/obj/item/mecha_parts/part/gygax_left_leg
|
/obj/item/mecha_parts/part/gygax_left_leg
|
||||||
name="Gygax Left Leg"
|
name="Gygax Left Leg"
|
||||||
icon_state = "gygax_l_leg"
|
icon_state = "gygax_l_leg"
|
||||||
origin_tech = "programming=2;materials=2;engineering=3"
|
origin_tech = "programming=2;materials=2;engineering=3"
|
||||||
construction_time = 200
|
construction_time = 200
|
||||||
construction_cost = list("metal"=35000)
|
construction_cost = list("steel"=35000)
|
||||||
|
|
||||||
/obj/item/mecha_parts/part/gygax_right_leg
|
/obj/item/mecha_parts/part/gygax_right_leg
|
||||||
name="Gygax Right Leg"
|
name="Gygax Right Leg"
|
||||||
icon_state = "gygax_r_leg"
|
icon_state = "gygax_r_leg"
|
||||||
origin_tech = "programming=2;materials=2;engineering=3"
|
origin_tech = "programming=2;materials=2;engineering=3"
|
||||||
construction_time = 200
|
construction_time = 200
|
||||||
construction_cost = list("metal"=35000)
|
construction_cost = list("steel"=35000)
|
||||||
|
|
||||||
/obj/item/mecha_parts/part/gygax_armour
|
/obj/item/mecha_parts/part/gygax_armour
|
||||||
name="Gygax Armour Plates"
|
name="Gygax Armour Plates"
|
||||||
icon_state = "gygax_armour"
|
icon_state = "gygax_armour"
|
||||||
origin_tech = "materials=6;combat=4;engineering=5"
|
origin_tech = "materials=6;combat=4;engineering=5"
|
||||||
construction_time = 600
|
construction_time = 600
|
||||||
construction_cost = list("metal"=50000,"diamond"=10000)
|
construction_cost = list("steel"=50000,"diamond"=10000)
|
||||||
|
|
||||||
|
|
||||||
//////////// Durand
|
//////////// Durand
|
||||||
|
|
||||||
/obj/item/mecha_parts/chassis/durand
|
/obj/item/mecha_parts/chassis/durand
|
||||||
name = "Durand Chassis"
|
name = "Durand Chassis"
|
||||||
construction_cost = list("metal"=25000)
|
construction_cost = list("steel"=25000)
|
||||||
|
|
||||||
New()
|
New()
|
||||||
..()
|
..()
|
||||||
@@ -158,49 +158,49 @@
|
|||||||
icon_state = "durand_harness"
|
icon_state = "durand_harness"
|
||||||
origin_tech = "programming=2;materials=3;biotech=3;engineering=3"
|
origin_tech = "programming=2;materials=3;biotech=3;engineering=3"
|
||||||
construction_time = 300
|
construction_time = 300
|
||||||
construction_cost = list("metal"=55000,"glass"=20000,"silver"=10000)
|
construction_cost = list("steel"=55000,"glass"=20000,"silver"=10000)
|
||||||
|
|
||||||
/obj/item/mecha_parts/part/durand_head
|
/obj/item/mecha_parts/part/durand_head
|
||||||
name="Durand Head"
|
name="Durand Head"
|
||||||
icon_state = "durand_head"
|
icon_state = "durand_head"
|
||||||
origin_tech = "programming=2;materials=3;magnets=3;engineering=3"
|
origin_tech = "programming=2;materials=3;magnets=3;engineering=3"
|
||||||
construction_time = 200
|
construction_time = 200
|
||||||
construction_cost = list("metal"=25000,"glass"=10000,"silver"=3000)
|
construction_cost = list("steel"=25000,"glass"=10000,"silver"=3000)
|
||||||
|
|
||||||
/obj/item/mecha_parts/part/durand_left_arm
|
/obj/item/mecha_parts/part/durand_left_arm
|
||||||
name="Durand Left Arm"
|
name="Durand Left Arm"
|
||||||
icon_state = "durand_l_arm"
|
icon_state = "durand_l_arm"
|
||||||
origin_tech = "programming=2;materials=3;engineering=3"
|
origin_tech = "programming=2;materials=3;engineering=3"
|
||||||
construction_time = 200
|
construction_time = 200
|
||||||
construction_cost = list("metal"=35000,"silver"=3000)
|
construction_cost = list("steel"=35000,"silver"=3000)
|
||||||
|
|
||||||
/obj/item/mecha_parts/part/durand_right_arm
|
/obj/item/mecha_parts/part/durand_right_arm
|
||||||
name="Durand Right Arm"
|
name="Durand Right Arm"
|
||||||
icon_state = "durand_r_arm"
|
icon_state = "durand_r_arm"
|
||||||
origin_tech = "programming=2;materials=3;engineering=3"
|
origin_tech = "programming=2;materials=3;engineering=3"
|
||||||
construction_time = 200
|
construction_time = 200
|
||||||
construction_cost = list("metal"=35000,"silver"=3000)
|
construction_cost = list("steel"=35000,"silver"=3000)
|
||||||
|
|
||||||
/obj/item/mecha_parts/part/durand_left_leg
|
/obj/item/mecha_parts/part/durand_left_leg
|
||||||
name="Durand Left Leg"
|
name="Durand Left Leg"
|
||||||
icon_state = "durand_l_leg"
|
icon_state = "durand_l_leg"
|
||||||
origin_tech = "programming=2;materials=3;engineering=3"
|
origin_tech = "programming=2;materials=3;engineering=3"
|
||||||
construction_time = 200
|
construction_time = 200
|
||||||
construction_cost = list("metal"=40000,"silver"=3000)
|
construction_cost = list("steel"=40000,"silver"=3000)
|
||||||
|
|
||||||
/obj/item/mecha_parts/part/durand_right_leg
|
/obj/item/mecha_parts/part/durand_right_leg
|
||||||
name="Durand Right Leg"
|
name="Durand Right Leg"
|
||||||
icon_state = "durand_r_leg"
|
icon_state = "durand_r_leg"
|
||||||
origin_tech = "programming=2;materials=3;engineering=3"
|
origin_tech = "programming=2;materials=3;engineering=3"
|
||||||
construction_time = 200
|
construction_time = 200
|
||||||
construction_cost = list("metal"=40000,"silver"=3000)
|
construction_cost = list("steel"=40000,"silver"=3000)
|
||||||
|
|
||||||
/obj/item/mecha_parts/part/durand_armour
|
/obj/item/mecha_parts/part/durand_armour
|
||||||
name="Durand Armour Plates"
|
name="Durand Armour Plates"
|
||||||
icon_state = "durand_armour"
|
icon_state = "durand_armour"
|
||||||
origin_tech = "materials=5;combat=4;engineering=5"
|
origin_tech = "materials=5;combat=4;engineering=5"
|
||||||
construction_time = 600
|
construction_time = 600
|
||||||
construction_cost = list("metal"=50000,"uranium"=10000)
|
construction_cost = list("steel"=50000,"uranium"=10000)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@@ -248,42 +248,42 @@
|
|||||||
name="Phazon Torso"
|
name="Phazon Torso"
|
||||||
icon_state = "phazon_harness"
|
icon_state = "phazon_harness"
|
||||||
construction_time = 300
|
construction_time = 300
|
||||||
construction_cost = list("metal"=35000,"glass"=10000,"phoron"=20000)
|
construction_cost = list("steel"=35000,"glass"=10000,"phoron"=20000)
|
||||||
origin_tech = "programming=5;materials=7;bluespace=6;powerstorage=6"
|
origin_tech = "programming=5;materials=7;bluespace=6;powerstorage=6"
|
||||||
|
|
||||||
/obj/item/mecha_parts/part/phazon_head
|
/obj/item/mecha_parts/part/phazon_head
|
||||||
name="Phazon Head"
|
name="Phazon Head"
|
||||||
icon_state = "phazon_head"
|
icon_state = "phazon_head"
|
||||||
construction_time = 200
|
construction_time = 200
|
||||||
construction_cost = list("metal"=15000,"glass"=5000,"phoron"=10000)
|
construction_cost = list("steel"=15000,"glass"=5000,"phoron"=10000)
|
||||||
origin_tech = "programming=4;materials=5;magnets=6"
|
origin_tech = "programming=4;materials=5;magnets=6"
|
||||||
|
|
||||||
/obj/item/mecha_parts/part/phazon_left_arm
|
/obj/item/mecha_parts/part/phazon_left_arm
|
||||||
name="Phazon Left Arm"
|
name="Phazon Left Arm"
|
||||||
icon_state = "phazon_l_arm"
|
icon_state = "phazon_l_arm"
|
||||||
construction_time = 200
|
construction_time = 200
|
||||||
construction_cost = list("metal"=20000,"phoron"=10000)
|
construction_cost = list("steel"=20000,"phoron"=10000)
|
||||||
origin_tech = "materials=5;bluespace=2;magnets=2"
|
origin_tech = "materials=5;bluespace=2;magnets=2"
|
||||||
|
|
||||||
/obj/item/mecha_parts/part/phazon_right_arm
|
/obj/item/mecha_parts/part/phazon_right_arm
|
||||||
name="Phazon Right Arm"
|
name="Phazon Right Arm"
|
||||||
icon_state = "phazon_r_arm"
|
icon_state = "phazon_r_arm"
|
||||||
construction_time = 200
|
construction_time = 200
|
||||||
construction_cost = list("metal"=20000,"phoron"=10000)
|
construction_cost = list("steel"=20000,"phoron"=10000)
|
||||||
origin_tech = "materials=5;bluespace=2;magnets=2"
|
origin_tech = "materials=5;bluespace=2;magnets=2"
|
||||||
|
|
||||||
/obj/item/mecha_parts/part/phazon_left_leg
|
/obj/item/mecha_parts/part/phazon_left_leg
|
||||||
name="Phazon Left Leg"
|
name="Phazon Left Leg"
|
||||||
icon_state = "phazon_l_leg"
|
icon_state = "phazon_l_leg"
|
||||||
construction_time = 200
|
construction_time = 200
|
||||||
construction_cost = list("metal"=20000,"phoron"=10000)
|
construction_cost = list("steel"=20000,"phoron"=10000)
|
||||||
origin_tech = "materials=5;bluespace=3;magnets=3"
|
origin_tech = "materials=5;bluespace=3;magnets=3"
|
||||||
|
|
||||||
/obj/item/mecha_parts/part/phazon_right_leg
|
/obj/item/mecha_parts/part/phazon_right_leg
|
||||||
name="Phazon Right Leg"
|
name="Phazon Right Leg"
|
||||||
icon_state = "phazon_r_leg"
|
icon_state = "phazon_r_leg"
|
||||||
construction_time = 200
|
construction_time = 200
|
||||||
construction_cost = list("metal"=20000,"phoron"=10000)
|
construction_cost = list("steel"=20000,"phoron"=10000)
|
||||||
origin_tech = "materials=5;bluespace=3;magnets=3"
|
origin_tech = "materials=5;bluespace=3;magnets=3"
|
||||||
|
|
||||||
///////// Odysseus
|
///////// Odysseus
|
||||||
@@ -300,7 +300,7 @@
|
|||||||
name="Odysseus Head"
|
name="Odysseus Head"
|
||||||
icon_state = "odysseus_head"
|
icon_state = "odysseus_head"
|
||||||
construction_time = 100
|
construction_time = 100
|
||||||
construction_cost = list("metal"=2000,"glass"=10000)
|
construction_cost = list("steel"=2000,"glass"=10000)
|
||||||
origin_tech = "programming=3;materials=2"
|
origin_tech = "programming=3;materials=2"
|
||||||
|
|
||||||
/obj/item/mecha_parts/part/odysseus_torso
|
/obj/item/mecha_parts/part/odysseus_torso
|
||||||
@@ -309,7 +309,7 @@
|
|||||||
icon_state = "odysseus_torso"
|
icon_state = "odysseus_torso"
|
||||||
origin_tech = "programming=2;materials=2;biotech=2;engineering=2"
|
origin_tech = "programming=2;materials=2;biotech=2;engineering=2"
|
||||||
construction_time = 180
|
construction_time = 180
|
||||||
construction_cost = list("metal"=25000)
|
construction_cost = list("steel"=25000)
|
||||||
|
|
||||||
/obj/item/mecha_parts/part/odysseus_left_arm
|
/obj/item/mecha_parts/part/odysseus_left_arm
|
||||||
name="Odysseus Left Arm"
|
name="Odysseus Left Arm"
|
||||||
@@ -317,7 +317,7 @@
|
|||||||
icon_state = "odysseus_l_arm"
|
icon_state = "odysseus_l_arm"
|
||||||
origin_tech = "programming=2;materials=2;engineering=2"
|
origin_tech = "programming=2;materials=2;engineering=2"
|
||||||
construction_time = 120
|
construction_time = 120
|
||||||
construction_cost = list("metal"=10000)
|
construction_cost = list("steel"=10000)
|
||||||
|
|
||||||
/obj/item/mecha_parts/part/odysseus_right_arm
|
/obj/item/mecha_parts/part/odysseus_right_arm
|
||||||
name="Odysseus Right Arm"
|
name="Odysseus Right Arm"
|
||||||
@@ -325,7 +325,7 @@
|
|||||||
icon_state = "odysseus_r_arm"
|
icon_state = "odysseus_r_arm"
|
||||||
origin_tech = "programming=2;materials=2;engineering=2"
|
origin_tech = "programming=2;materials=2;engineering=2"
|
||||||
construction_time = 120
|
construction_time = 120
|
||||||
construction_cost = list("metal"=10000)
|
construction_cost = list("steel"=10000)
|
||||||
|
|
||||||
/obj/item/mecha_parts/part/odysseus_left_leg
|
/obj/item/mecha_parts/part/odysseus_left_leg
|
||||||
name="Odysseus Left Leg"
|
name="Odysseus Left Leg"
|
||||||
@@ -333,7 +333,7 @@
|
|||||||
icon_state = "odysseus_l_leg"
|
icon_state = "odysseus_l_leg"
|
||||||
origin_tech = "programming=2;materials=2;engineering=2"
|
origin_tech = "programming=2;materials=2;engineering=2"
|
||||||
construction_time = 130
|
construction_time = 130
|
||||||
construction_cost = list("metal"=15000)
|
construction_cost = list("steel"=15000)
|
||||||
|
|
||||||
/obj/item/mecha_parts/part/odysseus_right_leg
|
/obj/item/mecha_parts/part/odysseus_right_leg
|
||||||
name="Odysseus Right Leg"
|
name="Odysseus Right Leg"
|
||||||
@@ -341,11 +341,11 @@
|
|||||||
icon_state = "odysseus_r_leg"
|
icon_state = "odysseus_r_leg"
|
||||||
origin_tech = "programming=2;materials=2;engineering=2"
|
origin_tech = "programming=2;materials=2;engineering=2"
|
||||||
construction_time = 130
|
construction_time = 130
|
||||||
construction_cost = list("metal"=15000)
|
construction_cost = list("steel"=15000)
|
||||||
|
|
||||||
/*/obj/item/mecha_parts/part/odysseus_armour
|
/*/obj/item/mecha_parts/part/odysseus_armour
|
||||||
name="Odysseus Carapace"
|
name="Odysseus Carapace"
|
||||||
icon_state = "odysseus_armour"
|
icon_state = "odysseus_armour"
|
||||||
origin_tech = "materials=3;engineering=3"
|
origin_tech = "materials=3;engineering=3"
|
||||||
construction_time = 200
|
construction_time = 200
|
||||||
construction_cost = list("metal"=15000)*/
|
construction_cost = list("steel"=15000)*/
|
||||||
|
|||||||
@@ -82,7 +82,7 @@
|
|||||||
icon_broken = "ashtray_bork_bl"
|
icon_broken = "ashtray_bork_bl"
|
||||||
max_butts = 14
|
max_butts = 14
|
||||||
health = 24.0
|
health = 24.0
|
||||||
matter = list("metal" = 30,"glass" = 30)
|
matter = list("steel" = 30,"glass" = 30)
|
||||||
empty_desc = "Cheap plastic ashtray."
|
empty_desc = "Cheap plastic ashtray."
|
||||||
throwforce = 3.0
|
throwforce = 3.0
|
||||||
die()
|
die()
|
||||||
@@ -102,7 +102,7 @@
|
|||||||
icon_broken = "ashtray_bork_br"
|
icon_broken = "ashtray_bork_br"
|
||||||
max_butts = 10
|
max_butts = 10
|
||||||
health = 72.0
|
health = 72.0
|
||||||
matter = list("metal" = 80)
|
matter = list("steel" = 80)
|
||||||
empty_desc = "Massive bronze ashtray."
|
empty_desc = "Massive bronze ashtray."
|
||||||
throwforce = 10.0
|
throwforce = 10.0
|
||||||
|
|
||||||
|
|||||||
@@ -17,7 +17,7 @@
|
|||||||
throw_speed = 3
|
throw_speed = 3
|
||||||
desc = "You can use this on airlocks or APCs to try to hack them without cutting wires."
|
desc = "You can use this on airlocks or APCs to try to hack them without cutting wires."
|
||||||
|
|
||||||
matter = list("metal" = 50,"glass" = 20)
|
matter = list("steel" = 50,"glass" = 20)
|
||||||
|
|
||||||
origin_tech = "magnets=1;engineering=1"
|
origin_tech = "magnets=1;engineering=1"
|
||||||
var/obj/machinery/telecomms/buffer // simple machine buffer for device linkage
|
var/obj/machinery/telecomms/buffer // simple machine buffer for device linkage
|
||||||
|
|||||||
@@ -194,7 +194,7 @@
|
|||||||
desc = "When a problem arises, SCIENCE is the solution."
|
desc = "When a problem arises, SCIENCE is the solution."
|
||||||
icon_state = "sflash"
|
icon_state = "sflash"
|
||||||
origin_tech = "magnets=2;combat=1"
|
origin_tech = "magnets=2;combat=1"
|
||||||
var/construction_cost = list("metal"=750,"glass"=750)
|
var/construction_cost = list("steel"=750,"glass"=750)
|
||||||
var/construction_time=100
|
var/construction_time=100
|
||||||
|
|
||||||
/obj/item/device/flash/synthetic/attack(mob/living/M as mob, mob/user as mob)
|
/obj/item/device/flash/synthetic/attack(mob/living/M as mob, mob/user as mob)
|
||||||
|
|||||||
@@ -8,7 +8,7 @@
|
|||||||
flags = CONDUCT
|
flags = CONDUCT
|
||||||
slot_flags = SLOT_BELT
|
slot_flags = SLOT_BELT
|
||||||
|
|
||||||
matter = list("metal" = 50,"glass" = 20)
|
matter = list("steel" = 50,"glass" = 20)
|
||||||
|
|
||||||
icon_action_button = "action_flashlight"
|
icon_action_button = "action_flashlight"
|
||||||
var/on = 0
|
var/on = 0
|
||||||
|
|||||||
@@ -16,7 +16,7 @@
|
|||||||
throw_speed = 3
|
throw_speed = 3
|
||||||
desc = "You can use this on airlocks or APCs to try to hack them without cutting wires."
|
desc = "You can use this on airlocks or APCs to try to hack them without cutting wires."
|
||||||
|
|
||||||
matter = list("metal" = 50,"glass" = 20)
|
matter = list("steel" = 50,"glass" = 20)
|
||||||
|
|
||||||
origin_tech = "magnets=1;engineering=1"
|
origin_tech = "magnets=1;engineering=1"
|
||||||
var/obj/machinery/telecomms/buffer // simple machine buffer for device linkage
|
var/obj/machinery/telecomms/buffer // simple machine buffer for device linkage
|
||||||
|
|||||||
@@ -11,7 +11,7 @@
|
|||||||
throw_speed = 1
|
throw_speed = 1
|
||||||
throw_range = 2
|
throw_range = 2
|
||||||
|
|
||||||
matter = list("metal" = 750,"waste" = 750)
|
matter = list("steel" = 750,"waste" = 750)
|
||||||
|
|
||||||
origin_tech = "powerstorage=3;syndicate=5"
|
origin_tech = "powerstorage=3;syndicate=5"
|
||||||
var/drain_rate = 1000000 // amount of power to drain per tick
|
var/drain_rate = 1000000 // amount of power to drain per tick
|
||||||
|
|||||||
@@ -8,7 +8,7 @@
|
|||||||
slot_flags = SLOT_BACK
|
slot_flags = SLOT_BACK
|
||||||
w_class = 5.0
|
w_class = 5.0
|
||||||
|
|
||||||
matter = list("metal" = 10000,"glass" = 2500)
|
matter = list("steel" = 10000,"glass" = 2500)
|
||||||
|
|
||||||
var/code = 2
|
var/code = 2
|
||||||
|
|
||||||
|
|||||||
@@ -4,7 +4,7 @@
|
|||||||
var/radio_desc = ""
|
var/radio_desc = ""
|
||||||
icon_state = "headset"
|
icon_state = "headset"
|
||||||
item_state = "headset"
|
item_state = "headset"
|
||||||
matter = list("metal" = 75)
|
matter = list("steel" = 75)
|
||||||
subspace_transmission = 1
|
subspace_transmission = 1
|
||||||
canhear_range = 0 // can't hear headsets from very far away
|
canhear_range = 0 // can't hear headsets from very far away
|
||||||
|
|
||||||
|
|||||||
@@ -26,7 +26,7 @@
|
|||||||
throw_range = 9
|
throw_range = 9
|
||||||
w_class = 2
|
w_class = 2
|
||||||
|
|
||||||
matter = list("glass" = 25,"metal" = 75)
|
matter = list("glass" = 25,"steel" = 75)
|
||||||
var/const/FREQ_LISTENING = 1
|
var/const/FREQ_LISTENING = 1
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -16,7 +16,7 @@ REAGENT SCANNER
|
|||||||
w_class = 2
|
w_class = 2
|
||||||
item_state = "electronic"
|
item_state = "electronic"
|
||||||
|
|
||||||
matter = list("metal" = 150)
|
matter = list("steel" = 150)
|
||||||
|
|
||||||
origin_tech = "magnets=1;engineering=1"
|
origin_tech = "magnets=1;engineering=1"
|
||||||
|
|
||||||
@@ -73,7 +73,7 @@ REAGENT SCANNER
|
|||||||
w_class = 2.0
|
w_class = 2.0
|
||||||
throw_speed = 5
|
throw_speed = 5
|
||||||
throw_range = 10
|
throw_range = 10
|
||||||
matter = list("metal" = 200)
|
matter = list("steel" = 200)
|
||||||
origin_tech = "magnets=1;biotech=1"
|
origin_tech = "magnets=1;biotech=1"
|
||||||
var/mode = 1;
|
var/mode = 1;
|
||||||
|
|
||||||
@@ -238,7 +238,7 @@ REAGENT SCANNER
|
|||||||
throw_speed = 4
|
throw_speed = 4
|
||||||
throw_range = 20
|
throw_range = 20
|
||||||
|
|
||||||
matter = list("metal" = 30,"glass" = 20)
|
matter = list("steel" = 30,"glass" = 20)
|
||||||
|
|
||||||
origin_tech = "magnets=1;engineering=1"
|
origin_tech = "magnets=1;engineering=1"
|
||||||
|
|
||||||
@@ -285,7 +285,7 @@ REAGENT SCANNER
|
|||||||
throw_speed = 4
|
throw_speed = 4
|
||||||
throw_range = 20
|
throw_range = 20
|
||||||
|
|
||||||
matter = list("metal" = 30,"glass" = 20)
|
matter = list("steel" = 30,"glass" = 20)
|
||||||
|
|
||||||
origin_tech = "magnets=2;biotech=2"
|
origin_tech = "magnets=2;biotech=2"
|
||||||
var/details = 0
|
var/details = 0
|
||||||
@@ -358,7 +358,7 @@ REAGENT SCANNER
|
|||||||
throwforce = 5
|
throwforce = 5
|
||||||
throw_speed = 4
|
throw_speed = 4
|
||||||
throw_range = 20
|
throw_range = 20
|
||||||
matter = list("metal" = 30,"glass" = 20)
|
matter = list("steel" = 30,"glass" = 20)
|
||||||
|
|
||||||
origin_tech = "magnets=2;biotech=2"
|
origin_tech = "magnets=2;biotech=2"
|
||||||
var/details = 0
|
var/details = 0
|
||||||
@@ -417,7 +417,7 @@ REAGENT SCANNER
|
|||||||
throwforce = 0
|
throwforce = 0
|
||||||
throw_speed = 3
|
throw_speed = 3
|
||||||
throw_range = 7
|
throw_range = 7
|
||||||
matter = list("metal" = 30,"glass" = 20)
|
matter = list("steel" = 30,"glass" = 20)
|
||||||
|
|
||||||
/obj/item/device/slime_scanner/attack(mob/living/M as mob, mob/living/user as mob)
|
/obj/item/device/slime_scanner/attack(mob/living/M as mob, mob/living/user as mob)
|
||||||
if (!isslime(M))
|
if (!isslime(M))
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
item_state = "analyzer"
|
item_state = "analyzer"
|
||||||
w_class = 2.0
|
w_class = 2.0
|
||||||
|
|
||||||
matter = list("metal" = 60,"glass" = 30)
|
matter = list("steel" = 60,"glass" = 30)
|
||||||
|
|
||||||
var/emagged = 0.0
|
var/emagged = 0.0
|
||||||
var/recording = 0.0
|
var/recording = 0.0
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
flags = CONDUCT
|
flags = CONDUCT
|
||||||
slot_flags = SLOT_BELT
|
slot_flags = SLOT_BELT
|
||||||
var/construction_time = 100
|
var/construction_time = 100
|
||||||
var/list/construction_cost = list("metal"=20000,"glass"=5000)
|
var/list/construction_cost = list("steel"=20000,"glass"=5000)
|
||||||
var/list/part = null // Order of args is important for installing robolimbs.
|
var/list/part = null // Order of args is important for installing robolimbs.
|
||||||
var/sabotaged = 0 //Emagging limbs can have repercussions when installed as prosthetics.
|
var/sabotaged = 0 //Emagging limbs can have repercussions when installed as prosthetics.
|
||||||
var/model_info
|
var/model_info
|
||||||
@@ -33,7 +33,7 @@
|
|||||||
desc = "A skeletal limb wrapped in pseudomuscles, with a low-conductivity case."
|
desc = "A skeletal limb wrapped in pseudomuscles, with a low-conductivity case."
|
||||||
icon_state = "l_arm"
|
icon_state = "l_arm"
|
||||||
construction_time = 200
|
construction_time = 200
|
||||||
construction_cost = list("metal"=18000)
|
construction_cost = list("steel"=18000)
|
||||||
part = list("l_arm","l_hand")
|
part = list("l_arm","l_hand")
|
||||||
model_info = 1
|
model_info = 1
|
||||||
|
|
||||||
@@ -42,7 +42,7 @@
|
|||||||
desc = "A skeletal limb wrapped in pseudomuscles, with a low-conductivity case."
|
desc = "A skeletal limb wrapped in pseudomuscles, with a low-conductivity case."
|
||||||
icon_state = "r_arm"
|
icon_state = "r_arm"
|
||||||
construction_time = 200
|
construction_time = 200
|
||||||
construction_cost = list("metal"=18000)
|
construction_cost = list("steel"=18000)
|
||||||
part = list("r_arm","r_hand")
|
part = list("r_arm","r_hand")
|
||||||
model_info = 1
|
model_info = 1
|
||||||
|
|
||||||
@@ -51,7 +51,7 @@
|
|||||||
desc = "A skeletal limb wrapped in pseudomuscles, with a low-conductivity case."
|
desc = "A skeletal limb wrapped in pseudomuscles, with a low-conductivity case."
|
||||||
icon_state = "l_leg"
|
icon_state = "l_leg"
|
||||||
construction_time = 200
|
construction_time = 200
|
||||||
construction_cost = list("metal"=15000)
|
construction_cost = list("steel"=15000)
|
||||||
part = list("l_leg","l_foot")
|
part = list("l_leg","l_foot")
|
||||||
model_info = 1
|
model_info = 1
|
||||||
|
|
||||||
@@ -60,7 +60,7 @@
|
|||||||
desc = "A skeletal limb wrapped in pseudomuscles, with a low-conductivity case."
|
desc = "A skeletal limb wrapped in pseudomuscles, with a low-conductivity case."
|
||||||
icon_state = "r_leg"
|
icon_state = "r_leg"
|
||||||
construction_time = 200
|
construction_time = 200
|
||||||
construction_cost = list("metal"=15000)
|
construction_cost = list("steel"=15000)
|
||||||
part = list("r_leg","r_foot")
|
part = list("r_leg","r_foot")
|
||||||
model_info = 1
|
model_info = 1
|
||||||
|
|
||||||
@@ -69,7 +69,7 @@
|
|||||||
desc = "A heavily reinforced case containing cyborg logic boards, with space for a standard power cell."
|
desc = "A heavily reinforced case containing cyborg logic boards, with space for a standard power cell."
|
||||||
icon_state = "chest"
|
icon_state = "chest"
|
||||||
construction_time = 350
|
construction_time = 350
|
||||||
construction_cost = list("metal"=40000)
|
construction_cost = list("steel"=40000)
|
||||||
var/wires = 0.0
|
var/wires = 0.0
|
||||||
var/obj/item/weapon/cell/cell = null
|
var/obj/item/weapon/cell/cell = null
|
||||||
|
|
||||||
@@ -78,7 +78,7 @@
|
|||||||
desc = "A standard reinforced braincase, with spine-plugged neural socket and sensor gimbals."
|
desc = "A standard reinforced braincase, with spine-plugged neural socket and sensor gimbals."
|
||||||
icon_state = "head"
|
icon_state = "head"
|
||||||
construction_time = 350
|
construction_time = 350
|
||||||
construction_cost = list("metal"=25000)
|
construction_cost = list("steel"=25000)
|
||||||
var/obj/item/device/flash/flash1 = null
|
var/obj/item/device/flash/flash1 = null
|
||||||
var/obj/item/device/flash/flash2 = null
|
var/obj/item/device/flash/flash2 = null
|
||||||
|
|
||||||
@@ -87,7 +87,7 @@
|
|||||||
desc = "A complex metal backbone with standard limb sockets and pseudomuscle anchors."
|
desc = "A complex metal backbone with standard limb sockets and pseudomuscle anchors."
|
||||||
icon_state = "robo_suit"
|
icon_state = "robo_suit"
|
||||||
construction_time = 500
|
construction_time = 500
|
||||||
construction_cost = list("metal"=50000)
|
construction_cost = list("steel"=50000)
|
||||||
var/obj/item/robot_parts/l_arm/l_arm = null
|
var/obj/item/robot_parts/l_arm/l_arm = null
|
||||||
var/obj/item/robot_parts/r_arm/r_arm = null
|
var/obj/item/robot_parts/r_arm/r_arm = null
|
||||||
var/obj/item/robot_parts/l_leg/l_leg = null
|
var/obj/item/robot_parts/l_leg/l_leg = null
|
||||||
|
|||||||
@@ -7,7 +7,7 @@
|
|||||||
icon = 'icons/obj/module.dmi'
|
icon = 'icons/obj/module.dmi'
|
||||||
icon_state = "cyborg_upgrade"
|
icon_state = "cyborg_upgrade"
|
||||||
var/construction_time = 120
|
var/construction_time = 120
|
||||||
var/construction_cost = list("metal"=10000)
|
var/construction_cost = list("steel"=10000)
|
||||||
var/locked = 0
|
var/locked = 0
|
||||||
var/require_module = 0
|
var/require_module = 0
|
||||||
var/installed = 0
|
var/installed = 0
|
||||||
@@ -49,7 +49,7 @@
|
|||||||
name = "robot reclassification board"
|
name = "robot reclassification board"
|
||||||
desc = "Used to rename a cyborg."
|
desc = "Used to rename a cyborg."
|
||||||
icon_state = "cyborg_upgrade1"
|
icon_state = "cyborg_upgrade1"
|
||||||
construction_cost = list("metal"=35000)
|
construction_cost = list("steel"=35000)
|
||||||
var/heldname = "default name"
|
var/heldname = "default name"
|
||||||
|
|
||||||
/obj/item/borg/upgrade/rename/attack_self(mob/user as mob)
|
/obj/item/borg/upgrade/rename/attack_self(mob/user as mob)
|
||||||
@@ -67,7 +67,7 @@
|
|||||||
/obj/item/borg/upgrade/restart
|
/obj/item/borg/upgrade/restart
|
||||||
name = "robot emergency restart module"
|
name = "robot emergency restart module"
|
||||||
desc = "Used to force a restart of a disabled-but-repaired robot, bringing it back online."
|
desc = "Used to force a restart of a disabled-but-repaired robot, bringing it back online."
|
||||||
construction_cost = list("metal"=60000 , "glass"=5000)
|
construction_cost = list("steel"=60000 , "glass"=5000)
|
||||||
icon_state = "cyborg_upgrade1"
|
icon_state = "cyborg_upgrade1"
|
||||||
|
|
||||||
|
|
||||||
@@ -91,7 +91,7 @@
|
|||||||
/obj/item/borg/upgrade/vtec
|
/obj/item/borg/upgrade/vtec
|
||||||
name = "robotic VTEC Module"
|
name = "robotic VTEC Module"
|
||||||
desc = "Used to kick in a robot's VTEC systems, increasing their speed."
|
desc = "Used to kick in a robot's VTEC systems, increasing their speed."
|
||||||
construction_cost = list("metal"=80000 , "glass"=6000 , "gold"= 5000)
|
construction_cost = list("steel"=80000 , "glass"=6000 , "gold"= 5000)
|
||||||
icon_state = "cyborg_upgrade2"
|
icon_state = "cyborg_upgrade2"
|
||||||
require_module = 1
|
require_module = 1
|
||||||
|
|
||||||
@@ -108,7 +108,7 @@
|
|||||||
/obj/item/borg/upgrade/tasercooler
|
/obj/item/borg/upgrade/tasercooler
|
||||||
name = "robotic Rapid Taser Cooling Module"
|
name = "robotic Rapid Taser Cooling Module"
|
||||||
desc = "Used to cool a mounted taser, increasing the potential current in it and thus its recharge rate."
|
desc = "Used to cool a mounted taser, increasing the potential current in it and thus its recharge rate."
|
||||||
construction_cost = list("metal"=80000 , "glass"=6000 , "gold"= 2000, "diamond" = 500)
|
construction_cost = list("steel"=80000 , "glass"=6000 , "gold"= 2000, "diamond" = 500)
|
||||||
icon_state = "cyborg_upgrade3"
|
icon_state = "cyborg_upgrade3"
|
||||||
require_module = 1
|
require_module = 1
|
||||||
|
|
||||||
@@ -143,7 +143,7 @@
|
|||||||
/obj/item/borg/upgrade/jetpack
|
/obj/item/borg/upgrade/jetpack
|
||||||
name = "mining robot jetpack"
|
name = "mining robot jetpack"
|
||||||
desc = "A carbon dioxide jetpack suitable for low-gravity mining operations."
|
desc = "A carbon dioxide jetpack suitable for low-gravity mining operations."
|
||||||
construction_cost = list("metal"=10000,"phoron"=15000,"uranium" = 20000)
|
construction_cost = list("steel"=10000,"phoron"=15000,"uranium" = 20000)
|
||||||
icon_state = "cyborg_upgrade3"
|
icon_state = "cyborg_upgrade3"
|
||||||
require_module = 1
|
require_module = 1
|
||||||
|
|
||||||
@@ -165,7 +165,7 @@
|
|||||||
/obj/item/borg/upgrade/syndicate/
|
/obj/item/borg/upgrade/syndicate/
|
||||||
name = "illegal equipment module"
|
name = "illegal equipment module"
|
||||||
desc = "Unlocks the hidden, deadlier functions of a robot"
|
desc = "Unlocks the hidden, deadlier functions of a robot"
|
||||||
construction_cost = list("metal"=10000,"glass"=15000,"diamond" = 10000)
|
construction_cost = list("steel"=10000,"glass"=15000,"diamond" = 10000)
|
||||||
icon_state = "cyborg_upgrade3"
|
icon_state = "cyborg_upgrade3"
|
||||||
require_module = 1
|
require_module = 1
|
||||||
|
|
||||||
|
|||||||
@@ -9,7 +9,7 @@
|
|||||||
throwforce = 15.0
|
throwforce = 15.0
|
||||||
throw_speed = 5
|
throw_speed = 5
|
||||||
throw_range = 20
|
throw_range = 20
|
||||||
matter = list("metal" = 1875)
|
matter = list("steel" = 1875)
|
||||||
max_amount = 60
|
max_amount = 60
|
||||||
attack_verb = list("hit", "bludgeoned", "whacked")
|
attack_verb = list("hit", "bludgeoned", "whacked")
|
||||||
|
|
||||||
|
|||||||
@@ -144,7 +144,7 @@
|
|||||||
singular_name = "reinforced glass sheet"
|
singular_name = "reinforced glass sheet"
|
||||||
icon_state = "sheet-rglass"
|
icon_state = "sheet-rglass"
|
||||||
|
|
||||||
matter = list("metal" = 1875,"glass" = 3750)
|
matter = list("steel" = 1875,"glass" = 3750)
|
||||||
origin_tech = "materials=2"
|
origin_tech = "materials=2"
|
||||||
|
|
||||||
created_window = /obj/structure/window/reinforced
|
created_window = /obj/structure/window/reinforced
|
||||||
@@ -200,7 +200,7 @@
|
|||||||
desc = "Phoron glass which has been reinforced with metal rods."
|
desc = "Phoron glass which has been reinforced with metal rods."
|
||||||
singular_name = "reinforced phoron glass sheet"
|
singular_name = "reinforced phoron glass sheet"
|
||||||
icon_state = "sheet-phoronrglass"
|
icon_state = "sheet-phoronrglass"
|
||||||
matter = list("glass" = 7500,"metal" = 1875)
|
matter = list("glass" = 7500,"steel" = 1875)
|
||||||
|
|
||||||
origin_tech = "materials=4;phorontech=2"
|
origin_tech = "materials=4;phorontech=2"
|
||||||
created_window = /obj/structure/window/phoronreinforced
|
created_window = /obj/structure/window/phoronreinforced
|
||||||
|
|||||||
@@ -63,6 +63,10 @@ var/global/list/datum/stack_recipe/iron_recipes = list ( \
|
|||||||
w_class = 3.0
|
w_class = 3.0
|
||||||
throw_speed = 3
|
throw_speed = 3
|
||||||
throw_range = 3
|
throw_range = 3
|
||||||
|
var/walltype_solid
|
||||||
|
var/walltype_false
|
||||||
|
var/doortype_solid
|
||||||
|
var/doortype_machine
|
||||||
|
|
||||||
/obj/item/stack/sheet/mineral/New()
|
/obj/item/stack/sheet/mineral/New()
|
||||||
..()
|
..()
|
||||||
|
|||||||
@@ -80,18 +80,18 @@ var/global/list/datum/stack_recipe/metal_recipes = list ( \
|
|||||||
)
|
)
|
||||||
|
|
||||||
/obj/item/stack/sheet/metal
|
/obj/item/stack/sheet/metal
|
||||||
name = "metal"
|
name = "steel"
|
||||||
desc = "Sheets made out off metal. It has been dubbed Metal Sheets."
|
desc = "Sheets made out off steel."
|
||||||
singular_name = "metal sheet"
|
singular_name = "metal sheet"
|
||||||
icon_state = "sheet-metal"
|
icon_state = "sheet-metal"
|
||||||
matter = list("metal" = 3750)
|
matter = list("steel" = 3750)
|
||||||
throwforce = 14.0
|
throwforce = 14.0
|
||||||
flags = CONDUCT
|
flags = CONDUCT
|
||||||
origin_tech = "materials=1"
|
origin_tech = "materials=1"
|
||||||
|
|
||||||
/obj/item/stack/sheet/metal/cyborg
|
/obj/item/stack/sheet/metal/cyborg
|
||||||
name = "metal synthesizer"
|
name = "steel synthesizer"
|
||||||
desc = "A device that makes metal sheets."
|
desc = "A device that makes steel sheets."
|
||||||
gender = NEUTER
|
gender = NEUTER
|
||||||
matter = null
|
matter = null
|
||||||
uses_charge = 1
|
uses_charge = 1
|
||||||
@@ -120,7 +120,7 @@ var/global/list/datum/stack_recipe/plasteel_recipes = list ( \
|
|||||||
desc = "This sheet is an alloy of iron and phoron."
|
desc = "This sheet is an alloy of iron and phoron."
|
||||||
icon_state = "sheet-plasteel"
|
icon_state = "sheet-plasteel"
|
||||||
item_state = "sheet-metal"
|
item_state = "sheet-metal"
|
||||||
matter = list("metal" = 7500)
|
matter = list("steel" = 7500)
|
||||||
throwforce = 15.0
|
throwforce = 15.0
|
||||||
flags = CONDUCT
|
flags = CONDUCT
|
||||||
origin_tech = "materials=2"
|
origin_tech = "materials=2"
|
||||||
|
|||||||
@@ -4,7 +4,7 @@
|
|||||||
desc = "Those could work as a pretty decent throwing weapon"
|
desc = "Those could work as a pretty decent throwing weapon"
|
||||||
icon_state = "tile"
|
icon_state = "tile"
|
||||||
force = 6.0
|
force = 6.0
|
||||||
matter = list("metal" = 937.5)
|
matter = list("steel" = 937.5)
|
||||||
throwforce = 15.0
|
throwforce = 15.0
|
||||||
throw_speed = 5
|
throw_speed = 5
|
||||||
throw_range = 20
|
throw_range = 20
|
||||||
|
|||||||
@@ -147,7 +147,7 @@
|
|||||||
slot_flags = SLOT_BELT|SLOT_HOLSTER
|
slot_flags = SLOT_BELT|SLOT_HOLSTER
|
||||||
w_class = 3.0
|
w_class = 3.0
|
||||||
|
|
||||||
matter = list("glass" = 10,"metal" = 10)
|
matter = list("glass" = 10,"steel" = 10)
|
||||||
|
|
||||||
attack_verb = list("struck", "pistol whipped", "hit", "bashed")
|
attack_verb = list("struck", "pistol whipped", "hit", "bashed")
|
||||||
var/bullets = 7.0
|
var/bullets = 7.0
|
||||||
@@ -202,7 +202,7 @@
|
|||||||
flags = CONDUCT
|
flags = CONDUCT
|
||||||
w_class = 1.0
|
w_class = 1.0
|
||||||
|
|
||||||
matter = list("metal" = 10,"glass" = 10)
|
matter = list("steel" = 10,"glass" = 10)
|
||||||
|
|
||||||
var/amount_left = 7.0
|
var/amount_left = 7.0
|
||||||
|
|
||||||
|
|||||||
@@ -13,7 +13,7 @@
|
|||||||
throw_speed = 1
|
throw_speed = 1
|
||||||
throw_range = 5
|
throw_range = 5
|
||||||
w_class = 3.0
|
w_class = 3.0
|
||||||
matter = list("metal" = 50000)
|
matter = list("steel" = 50000)
|
||||||
origin_tech = "engineering=4;materials=2"
|
origin_tech = "engineering=4;materials=2"
|
||||||
var/datum/effect/effect/system/spark_spread/spark_system
|
var/datum/effect/effect/system/spark_spread/spark_system
|
||||||
var/stored_matter = 0
|
var/stored_matter = 0
|
||||||
@@ -153,7 +153,7 @@
|
|||||||
density = 0
|
density = 0
|
||||||
anchored = 0.0
|
anchored = 0.0
|
||||||
origin_tech = "materials=2"
|
origin_tech = "materials=2"
|
||||||
matter = list("metal" = 30000,"glass" = 15000)
|
matter = list("steel" = 30000,"glass" = 15000)
|
||||||
|
|
||||||
/obj/item/weapon/rcd/borg
|
/obj/item/weapon/rcd/borg
|
||||||
canRwall = 1
|
canRwall = 1
|
||||||
|
|||||||
@@ -11,7 +11,7 @@
|
|||||||
throw_speed = 2
|
throw_speed = 2
|
||||||
throw_range = 10
|
throw_range = 10
|
||||||
force = 10.0
|
force = 10.0
|
||||||
matter = list("metal" = 90)
|
matter = list("steel" = 90)
|
||||||
attack_verb = list("slammed", "whacked", "bashed", "thunked", "battered", "bludgeoned", "thrashed")
|
attack_verb = list("slammed", "whacked", "bashed", "thunked", "battered", "bludgeoned", "thrashed")
|
||||||
|
|
||||||
var/spray_particles = 6
|
var/spray_particles = 6
|
||||||
|
|||||||
@@ -10,7 +10,7 @@
|
|||||||
throw_speed = 1
|
throw_speed = 1
|
||||||
throw_range = 5
|
throw_range = 5
|
||||||
w_class = 3.0
|
w_class = 3.0
|
||||||
matter = list("metal" = 500)
|
matter = list("steel" = 500)
|
||||||
origin_tech = "combat=1;phorontech=1"
|
origin_tech = "combat=1;phorontech=1"
|
||||||
var/status = 0
|
var/status = 0
|
||||||
var/throw_amount = 100
|
var/throw_amount = 100
|
||||||
|
|||||||
@@ -10,7 +10,7 @@
|
|||||||
w_class = 2.0
|
w_class = 2.0
|
||||||
throw_speed = 2
|
throw_speed = 2
|
||||||
throw_range = 5
|
throw_range = 5
|
||||||
matter = list("metal" = 500)
|
matter = list("steel" = 500)
|
||||||
origin_tech = "materials=1"
|
origin_tech = "materials=1"
|
||||||
var/dispenser = 0
|
var/dispenser = 0
|
||||||
var/breakouttime = 1200 //Deciseconds = 120s = 2 minutes
|
var/breakouttime = 1200 //Deciseconds = 120s = 2 minutes
|
||||||
|
|||||||
@@ -145,7 +145,7 @@
|
|||||||
throwforce = 6.0
|
throwforce = 6.0
|
||||||
throw_speed = 3
|
throw_speed = 3
|
||||||
throw_range = 6
|
throw_range = 6
|
||||||
matter = list("metal" = 12000)
|
matter = list("steel" = 12000)
|
||||||
origin_tech = "materials=1"
|
origin_tech = "materials=1"
|
||||||
attack_verb = list("slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut")
|
attack_verb = list("slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut")
|
||||||
|
|
||||||
@@ -175,7 +175,7 @@
|
|||||||
throwforce = 8.0
|
throwforce = 8.0
|
||||||
throw_speed = 3
|
throw_speed = 3
|
||||||
throw_range = 6
|
throw_range = 6
|
||||||
matter = list("metal" = 12000)
|
matter = list("steel" = 12000)
|
||||||
origin_tech = "materials=1"
|
origin_tech = "materials=1"
|
||||||
attack_verb = list("cleaved", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut")
|
attack_verb = list("cleaved", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut")
|
||||||
sharp = 1
|
sharp = 1
|
||||||
@@ -247,7 +247,7 @@
|
|||||||
throw_range = 5
|
throw_range = 5
|
||||||
w_class = 3.0
|
w_class = 3.0
|
||||||
flags = CONDUCT
|
flags = CONDUCT
|
||||||
matter = list("metal" = 3000)
|
matter = list("steel" = 3000)
|
||||||
/* // NOPE
|
/* // NOPE
|
||||||
var/food_total= 0
|
var/food_total= 0
|
||||||
var/burger_amt = 0
|
var/burger_amt = 0
|
||||||
|
|||||||
@@ -9,7 +9,7 @@ var/global/list/cached_icons = list()
|
|||||||
icon = 'icons/obj/items.dmi'
|
icon = 'icons/obj/items.dmi'
|
||||||
icon_state = "paint_neutral"
|
icon_state = "paint_neutral"
|
||||||
item_state = "paintcan"
|
item_state = "paintcan"
|
||||||
matter = list("metal" = 200)
|
matter = list("steel" = 200)
|
||||||
w_class = 3.0
|
w_class = 3.0
|
||||||
amount_per_transfer_from_this = 10
|
amount_per_transfer_from_this = 10
|
||||||
possible_transfer_amounts = list(10,20,30,60)
|
possible_transfer_amounts = list(10,20,30,60)
|
||||||
|
|||||||
@@ -14,9 +14,9 @@
|
|||||||
var/maxcharge = 1000
|
var/maxcharge = 1000
|
||||||
var/rigged = 0 // true if rigged to explode
|
var/rigged = 0 // true if rigged to explode
|
||||||
var/minor_fault = 0 //If not 100% reliable, it will build up faults.
|
var/minor_fault = 0 //If not 100% reliable, it will build up faults.
|
||||||
var/construction_cost = list("metal"=750,"glass"=75)
|
var/construction_cost = list("steel"=750,"glass"=75)
|
||||||
var/construction_time=100
|
var/construction_time=100
|
||||||
matter = list("metal" = 700, "glass" = 50)
|
matter = list("steel" = 700, "glass" = 50)
|
||||||
|
|
||||||
suicide_act(mob/user)
|
suicide_act(mob/user)
|
||||||
viewers(user) << "\red <b>[user] is licking the electrodes of the [src.name]! It looks like \he's trying to commit suicide.</b>"
|
viewers(user) << "\red <b>[user] is licking the electrodes of the [src.name]! It looks like \he's trying to commit suicide.</b>"
|
||||||
@@ -27,7 +27,7 @@
|
|||||||
desc = "You can't top the plasma top." //TOTALLY TRADEMARK INFRINGEMENT
|
desc = "You can't top the plasma top." //TOTALLY TRADEMARK INFRINGEMENT
|
||||||
origin_tech = "powerstorage=0"
|
origin_tech = "powerstorage=0"
|
||||||
maxcharge = 500
|
maxcharge = 500
|
||||||
matter = list("metal" = 700, "glass" = 40)
|
matter = list("steel" = 700, "glass" = 40)
|
||||||
|
|
||||||
/obj/item/weapon/cell/crap/empty/New()
|
/obj/item/weapon/cell/crap/empty/New()
|
||||||
..()
|
..()
|
||||||
@@ -37,7 +37,7 @@
|
|||||||
name = "security borg rechargable D battery"
|
name = "security borg rechargable D battery"
|
||||||
origin_tech = "powerstorage=0"
|
origin_tech = "powerstorage=0"
|
||||||
maxcharge = 600 //600 max charge / 100 charge per shot = six shots
|
maxcharge = 600 //600 max charge / 100 charge per shot = six shots
|
||||||
matter = list("metal" = 700, "glass" = 40)
|
matter = list("steel" = 700, "glass" = 40)
|
||||||
|
|
||||||
/obj/item/weapon/cell/secborg/empty/New()
|
/obj/item/weapon/cell/secborg/empty/New()
|
||||||
..()
|
..()
|
||||||
@@ -47,14 +47,14 @@
|
|||||||
name = "heavy-duty power cell"
|
name = "heavy-duty power cell"
|
||||||
origin_tech = "powerstorage=1"
|
origin_tech = "powerstorage=1"
|
||||||
maxcharge = 5000
|
maxcharge = 5000
|
||||||
matter = list("metal" = 700, "glass" = 50)
|
matter = list("steel" = 700, "glass" = 50)
|
||||||
|
|
||||||
/obj/item/weapon/cell/high
|
/obj/item/weapon/cell/high
|
||||||
name = "high-capacity power cell"
|
name = "high-capacity power cell"
|
||||||
origin_tech = "powerstorage=2"
|
origin_tech = "powerstorage=2"
|
||||||
icon_state = "hcell"
|
icon_state = "hcell"
|
||||||
maxcharge = 10000
|
maxcharge = 10000
|
||||||
matter = list("metal" = 700, "glass" = 60)
|
matter = list("steel" = 700, "glass" = 60)
|
||||||
|
|
||||||
/obj/item/weapon/cell/high/empty/New()
|
/obj/item/weapon/cell/high/empty/New()
|
||||||
..()
|
..()
|
||||||
@@ -65,8 +65,8 @@
|
|||||||
origin_tech = "powerstorage=5"
|
origin_tech = "powerstorage=5"
|
||||||
icon_state = "scell"
|
icon_state = "scell"
|
||||||
maxcharge = 20000
|
maxcharge = 20000
|
||||||
matter = list("metal" = 700, "glass" = 70)
|
matter = list("steel" = 700, "glass" = 70)
|
||||||
construction_cost = list("metal"=750,"glass"=100)
|
construction_cost = list("steel"=750,"glass"=100)
|
||||||
|
|
||||||
/obj/item/weapon/cell/super/empty/New()
|
/obj/item/weapon/cell/super/empty/New()
|
||||||
..()
|
..()
|
||||||
@@ -77,8 +77,8 @@
|
|||||||
origin_tech = "powerstorage=6"
|
origin_tech = "powerstorage=6"
|
||||||
icon_state = "hpcell"
|
icon_state = "hpcell"
|
||||||
maxcharge = 30000
|
maxcharge = 30000
|
||||||
matter = list("metal" = 700, "glass" = 80)
|
matter = list("steel" = 700, "glass" = 80)
|
||||||
construction_cost = list("metal"=500,"glass"=150,"gold"=200,"silver"=200)
|
construction_cost = list("steel"=500,"glass"=150,"gold"=200,"silver"=200)
|
||||||
|
|
||||||
/obj/item/weapon/cell/hyper/empty/New()
|
/obj/item/weapon/cell/hyper/empty/New()
|
||||||
..()
|
..()
|
||||||
@@ -89,7 +89,7 @@
|
|||||||
icon_state = "icell"
|
icon_state = "icell"
|
||||||
origin_tech = null
|
origin_tech = null
|
||||||
maxcharge = 30000
|
maxcharge = 30000
|
||||||
matter = list("metal" = 700, "glass" = 80)
|
matter = list("steel" = 700, "glass" = 80)
|
||||||
use()
|
use()
|
||||||
return 1
|
return 1
|
||||||
|
|
||||||
|
|||||||
@@ -13,7 +13,7 @@
|
|||||||
throw_speed = 1
|
throw_speed = 1
|
||||||
throw_range = 4
|
throw_range = 4
|
||||||
w_class = 4.0
|
w_class = 4.0
|
||||||
matter = list("glass" = 7500, "metal" = 1000)
|
matter = list("glass" = 7500, "steel" = 1000)
|
||||||
origin_tech = "materials=2"
|
origin_tech = "materials=2"
|
||||||
attack_verb = list("shoved", "bashed")
|
attack_verb = list("shoved", "bashed")
|
||||||
var/cooldown = 0 //shield bash cooldown. based on world.time
|
var/cooldown = 0 //shield bash cooldown. based on world.time
|
||||||
|
|||||||
@@ -16,7 +16,7 @@
|
|||||||
desc = "Retracts stuff."
|
desc = "Retracts stuff."
|
||||||
icon = 'icons/obj/surgery.dmi'
|
icon = 'icons/obj/surgery.dmi'
|
||||||
icon_state = "retractor"
|
icon_state = "retractor"
|
||||||
matter = list("metal" = 10000, "glass" = 5000)
|
matter = list("steel" = 10000, "glass" = 5000)
|
||||||
flags = CONDUCT
|
flags = CONDUCT
|
||||||
w_class = 2.0
|
w_class = 2.0
|
||||||
origin_tech = "materials=1;biotech=1"
|
origin_tech = "materials=1;biotech=1"
|
||||||
@@ -29,7 +29,7 @@
|
|||||||
desc = "You think you have seen this before."
|
desc = "You think you have seen this before."
|
||||||
icon = 'icons/obj/surgery.dmi'
|
icon = 'icons/obj/surgery.dmi'
|
||||||
icon_state = "hemostat"
|
icon_state = "hemostat"
|
||||||
matter = list("metal" = 5000, "glass" = 2500)
|
matter = list("steel" = 5000, "glass" = 2500)
|
||||||
flags = CONDUCT
|
flags = CONDUCT
|
||||||
w_class = 2.0
|
w_class = 2.0
|
||||||
origin_tech = "materials=1;biotech=1"
|
origin_tech = "materials=1;biotech=1"
|
||||||
@@ -43,7 +43,7 @@
|
|||||||
desc = "This stops bleeding."
|
desc = "This stops bleeding."
|
||||||
icon = 'icons/obj/surgery.dmi'
|
icon = 'icons/obj/surgery.dmi'
|
||||||
icon_state = "cautery"
|
icon_state = "cautery"
|
||||||
matter = list("metal" = 5000, "glass" = 2500)
|
matter = list("steel" = 5000, "glass" = 2500)
|
||||||
flags = CONDUCT
|
flags = CONDUCT
|
||||||
w_class = 2.0
|
w_class = 2.0
|
||||||
origin_tech = "materials=1;biotech=1"
|
origin_tech = "materials=1;biotech=1"
|
||||||
@@ -58,7 +58,7 @@
|
|||||||
icon = 'icons/obj/surgery.dmi'
|
icon = 'icons/obj/surgery.dmi'
|
||||||
icon_state = "drill"
|
icon_state = "drill"
|
||||||
hitsound = 'sound/weapons/circsawhit.ogg'
|
hitsound = 'sound/weapons/circsawhit.ogg'
|
||||||
matter = list("metal" = 15000, "glass" = 10000)
|
matter = list("steel" = 15000, "glass" = 10000)
|
||||||
flags = CONDUCT
|
flags = CONDUCT
|
||||||
force = 15.0
|
force = 15.0
|
||||||
w_class = 2.0
|
w_class = 2.0
|
||||||
@@ -86,7 +86,7 @@
|
|||||||
throwforce = 5.0
|
throwforce = 5.0
|
||||||
throw_speed = 3
|
throw_speed = 3
|
||||||
throw_range = 5
|
throw_range = 5
|
||||||
matter = list("metal" = 10000, "glass" = 5000)
|
matter = list("steel" = 10000, "glass" = 5000)
|
||||||
origin_tech = "materials=1;biotech=1"
|
origin_tech = "materials=1;biotech=1"
|
||||||
attack_verb = list("attacked", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut")
|
attack_verb = list("attacked", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut")
|
||||||
|
|
||||||
@@ -140,7 +140,7 @@
|
|||||||
throwforce = 9.0
|
throwforce = 9.0
|
||||||
throw_speed = 3
|
throw_speed = 3
|
||||||
throw_range = 5
|
throw_range = 5
|
||||||
matter = list("metal" = 20000,"glass" = 10000)
|
matter = list("steel" = 20000,"glass" = 10000)
|
||||||
origin_tech = "materials=1;biotech=1"
|
origin_tech = "materials=1;biotech=1"
|
||||||
attack_verb = list("attacked", "slashed", "sawed", "cut")
|
attack_verb = list("attacked", "slashed", "sawed", "cut")
|
||||||
sharp = 1
|
sharp = 1
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
gender = PLURAL
|
gender = PLURAL
|
||||||
icon = 'icons/obj/items.dmi'
|
icon = 'icons/obj/items.dmi'
|
||||||
icon_state = "table_parts"
|
icon_state = "table_parts"
|
||||||
matter = list("metal" = 3750)
|
matter = list("steel" = 3750)
|
||||||
flags = CONDUCT
|
flags = CONDUCT
|
||||||
attack_verb = list("slammed", "bashed", "battered", "bludgeoned", "thrashed", "whacked")
|
attack_verb = list("slammed", "bashed", "battered", "bludgeoned", "thrashed", "whacked")
|
||||||
|
|
||||||
@@ -49,7 +49,7 @@
|
|||||||
desc = "Hard table parts. Well... harder."
|
desc = "Hard table parts. Well... harder."
|
||||||
icon = 'icons/obj/items.dmi'
|
icon = 'icons/obj/items.dmi'
|
||||||
icon_state = "reinf_tableparts"
|
icon_state = "reinf_tableparts"
|
||||||
matter = list("metal" = 7500)
|
matter = list("steel" = 7500)
|
||||||
flags = CONDUCT
|
flags = CONDUCT
|
||||||
|
|
||||||
stack_types = list(/obj/item/stack/sheet/metal, /obj/item/stack/rods)
|
stack_types = list(/obj/item/stack/sheet/metal, /obj/item/stack/rods)
|
||||||
|
|||||||
@@ -21,7 +21,7 @@
|
|||||||
item_state = "electronic"
|
item_state = "electronic"
|
||||||
throw_speed = 4
|
throw_speed = 4
|
||||||
throw_range = 20
|
throw_range = 20
|
||||||
matter = list("metal" = 400)
|
matter = list("steel" = 400)
|
||||||
origin_tech = "magnets=1"
|
origin_tech = "magnets=1"
|
||||||
|
|
||||||
/obj/item/weapon/locator/attack_self(mob/user as mob)
|
/obj/item/weapon/locator/attack_self(mob/user as mob)
|
||||||
@@ -132,7 +132,7 @@ Frequency:
|
|||||||
w_class = 2.0
|
w_class = 2.0
|
||||||
throw_speed = 3
|
throw_speed = 3
|
||||||
throw_range = 5
|
throw_range = 5
|
||||||
matter = list("metal" = 10000)
|
matter = list("steel" = 10000)
|
||||||
origin_tech = "magnets=1;bluespace=3"
|
origin_tech = "magnets=1;bluespace=3"
|
||||||
|
|
||||||
/obj/item/weapon/hand_tele/attack_self(mob/user as mob)
|
/obj/item/weapon/hand_tele/attack_self(mob/user as mob)
|
||||||
|
|||||||
@@ -24,7 +24,7 @@
|
|||||||
force = 5.0
|
force = 5.0
|
||||||
throwforce = 7.0
|
throwforce = 7.0
|
||||||
w_class = 2.0
|
w_class = 2.0
|
||||||
matter = list("metal" = 150)
|
matter = list("steel" = 150)
|
||||||
origin_tech = "materials=1;engineering=1"
|
origin_tech = "materials=1;engineering=1"
|
||||||
attack_verb = list("bashed", "battered", "bludgeoned", "whacked")
|
attack_verb = list("bashed", "battered", "bludgeoned", "whacked")
|
||||||
|
|
||||||
@@ -44,7 +44,7 @@
|
|||||||
throwforce = 5.0
|
throwforce = 5.0
|
||||||
throw_speed = 3
|
throw_speed = 3
|
||||||
throw_range = 5
|
throw_range = 5
|
||||||
matter = list("metal" = 75)
|
matter = list("steel" = 75)
|
||||||
attack_verb = list("stabbed")
|
attack_verb = list("stabbed")
|
||||||
|
|
||||||
suicide_act(mob/user)
|
suicide_act(mob/user)
|
||||||
@@ -102,7 +102,7 @@
|
|||||||
throw_speed = 2
|
throw_speed = 2
|
||||||
throw_range = 9
|
throw_range = 9
|
||||||
w_class = 2.0
|
w_class = 2.0
|
||||||
matter = list("metal" = 80)
|
matter = list("steel" = 80)
|
||||||
origin_tech = "materials=1;engineering=1"
|
origin_tech = "materials=1;engineering=1"
|
||||||
attack_verb = list("pinched", "nipped")
|
attack_verb = list("pinched", "nipped")
|
||||||
sharp = 1
|
sharp = 1
|
||||||
@@ -144,7 +144,7 @@
|
|||||||
w_class = 2.0
|
w_class = 2.0
|
||||||
|
|
||||||
//Cost to make in the autolathe
|
//Cost to make in the autolathe
|
||||||
matter = list("metal" = 70, "glass" = 30)
|
matter = list("steel" = 70, "glass" = 30)
|
||||||
|
|
||||||
//R&D tech level
|
//R&D tech level
|
||||||
origin_tech = "engineering=1"
|
origin_tech = "engineering=1"
|
||||||
@@ -403,21 +403,21 @@
|
|||||||
/obj/item/weapon/weldingtool/largetank
|
/obj/item/weapon/weldingtool/largetank
|
||||||
name = "industrial welding tool"
|
name = "industrial welding tool"
|
||||||
max_fuel = 40
|
max_fuel = 40
|
||||||
matter = list("metal" = 70, "glass" = 60)
|
matter = list("steel" = 70, "glass" = 60)
|
||||||
origin_tech = "engineering=2"
|
origin_tech = "engineering=2"
|
||||||
|
|
||||||
/obj/item/weapon/weldingtool/hugetank
|
/obj/item/weapon/weldingtool/hugetank
|
||||||
name = "upgraded welding tool"
|
name = "upgraded welding tool"
|
||||||
max_fuel = 80
|
max_fuel = 80
|
||||||
w_class = 3.0
|
w_class = 3.0
|
||||||
matter = list("metal" = 70, "glass" = 120)
|
matter = list("steel" = 70, "glass" = 120)
|
||||||
origin_tech = "engineering=3"
|
origin_tech = "engineering=3"
|
||||||
|
|
||||||
/obj/item/weapon/weldingtool/experimental
|
/obj/item/weapon/weldingtool/experimental
|
||||||
name = "experimental welding tool"
|
name = "experimental welding tool"
|
||||||
max_fuel = 40
|
max_fuel = 40
|
||||||
w_class = 3.0
|
w_class = 3.0
|
||||||
matter = list("metal" = 70, "glass" = 120)
|
matter = list("steel" = 70, "glass" = 120)
|
||||||
origin_tech = "engineering=4;phorontech=3"
|
origin_tech = "engineering=4;phorontech=3"
|
||||||
var/last_gen = 0
|
var/last_gen = 0
|
||||||
|
|
||||||
@@ -444,7 +444,7 @@
|
|||||||
throwforce = 7.0
|
throwforce = 7.0
|
||||||
item_state = "crowbar"
|
item_state = "crowbar"
|
||||||
w_class = 2.0
|
w_class = 2.0
|
||||||
matter = list("metal" = 50)
|
matter = list("steel" = 50)
|
||||||
origin_tech = "engineering=1"
|
origin_tech = "engineering=1"
|
||||||
attack_verb = list("attacked", "bashed", "battered", "bludgeoned", "whacked")
|
attack_verb = list("attacked", "bashed", "battered", "bludgeoned", "whacked")
|
||||||
|
|
||||||
|
|||||||
@@ -185,14 +185,14 @@
|
|||||||
desc = "A knife blade. Unusable as a weapon without a grip."
|
desc = "A knife blade. Unusable as a weapon without a grip."
|
||||||
icon = 'icons/obj/buildingobject.dmi'
|
icon = 'icons/obj/buildingobject.dmi'
|
||||||
icon_state = "butterfly2"
|
icon_state = "butterfly2"
|
||||||
matter = list("metal" = 5000)
|
matter = list("steel" = 5000)
|
||||||
|
|
||||||
/obj/item/butterflyhandle
|
/obj/item/butterflyhandle
|
||||||
name = "concealed knife grip"
|
name = "concealed knife grip"
|
||||||
desc = "A plasteel grip with screw fittings for a blade."
|
desc = "A plasteel grip with screw fittings for a blade."
|
||||||
icon = 'icons/obj/buildingobject.dmi'
|
icon = 'icons/obj/buildingobject.dmi'
|
||||||
icon_state = "butterfly1"
|
icon_state = "butterfly1"
|
||||||
matter = list("metal" = 4000)
|
matter = list("steel" = 4000)
|
||||||
|
|
||||||
/obj/item/butterflyhandle/attackby(obj/item/W as obj, mob/user as mob)
|
/obj/item/butterflyhandle/attackby(obj/item/W as obj, mob/user as mob)
|
||||||
if(istype(W,/obj/item/butterflyblade))
|
if(istype(W,/obj/item/butterflyblade))
|
||||||
@@ -276,7 +276,7 @@ obj/item/weapon/wirerod/attackby(var/obj/item/I, mob/user as mob)
|
|||||||
throw_range = 15
|
throw_range = 15
|
||||||
sharp = 1
|
sharp = 1
|
||||||
edge = 1
|
edge = 1
|
||||||
matter = list("metal" = 500)
|
matter = list("steel" = 500)
|
||||||
|
|
||||||
var/poisoned = 0
|
var/poisoned = 0
|
||||||
|
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
desc = "A huge chunk of metal used to seperate rooms."
|
desc = "A huge chunk of metal used to seperate rooms."
|
||||||
anchored = 1
|
anchored = 1
|
||||||
icon = 'icons/turf/walls.dmi'
|
icon = 'icons/turf/walls.dmi'
|
||||||
var/mineral = "metal"
|
var/mineral = "steel"
|
||||||
var/opening = 0
|
var/opening = 0
|
||||||
|
|
||||||
/obj/structure/falsewall/New()
|
/obj/structure/falsewall/New()
|
||||||
@@ -87,65 +87,45 @@
|
|||||||
user << "\red You must wait until the door has stopped moving."
|
user << "\red You must wait until the door has stopped moving."
|
||||||
return
|
return
|
||||||
|
|
||||||
if(density)
|
var/material/M = name_to_mineral[mineral]
|
||||||
var/turf/T = get_turf(src)
|
|
||||||
if(T.density)
|
if(istype(W, /obj/item/weapon/screwdriver))
|
||||||
user << "\red The wall is blocked!"
|
if(!istype(M) || !M.walltype_solid)
|
||||||
|
user << "You cannot find any bolts on the wall."
|
||||||
return
|
return
|
||||||
if(istype(W, /obj/item/weapon/screwdriver))
|
user.visible_message("[user] tightens some bolts on the wall.", "You tighten the bolts on the wall.")
|
||||||
user.visible_message("[user] tightens some bolts on the wall.", "You tighten the bolts on the wall.")
|
var/turf/T = get_turf(src)
|
||||||
if(!mineral || mineral == "metal")
|
if(T)
|
||||||
T.ChangeTurf(/turf/simulated/wall)
|
T.ChangeTurf(M.walltype_solid)
|
||||||
else
|
del(src)
|
||||||
T.ChangeTurf(text2path("/turf/simulated/wall/mineral/[mineral]"))
|
return
|
||||||
|
|
||||||
|
var/cutting
|
||||||
|
if(istype(W, /obj/item/weapon/melee/energy/blade) || istype(W, /obj/item/weapon/pickaxe))
|
||||||
|
cutting = 1
|
||||||
|
else if(istype(W, /obj/item/weapon/weldingtool))
|
||||||
|
var/obj/item/weapon/weldingtool/WT = W
|
||||||
|
if(WT.welding)
|
||||||
|
cutting = 1
|
||||||
|
|
||||||
|
if(cutting)
|
||||||
|
if(density)
|
||||||
|
var/turf/T = get_turf(src)
|
||||||
|
if(T.density)
|
||||||
|
user << "\red The wall is blocked!"
|
||||||
|
return
|
||||||
|
|
||||||
|
if(!istype(M) || !M.walltype_solid)
|
||||||
|
user << "You cannot weld this wall."
|
||||||
|
return
|
||||||
|
T.ChangeTurf(M.walltype_solid)
|
||||||
|
if(mineral != "phoron")//Stupid shit keeps me from pushing the attackby() to phoron walls -Sieve
|
||||||
|
T = get_turf(src) // Still not sure what the above is for, leaving it for now. ~Z
|
||||||
|
T.attackby(W,user)
|
||||||
del(src)
|
del(src)
|
||||||
|
|
||||||
if( istype(W, /obj/item/weapon/weldingtool) )
|
|
||||||
var/obj/item/weapon/weldingtool/WT = W
|
|
||||||
if( WT:welding )
|
|
||||||
if(!mineral)
|
|
||||||
T.ChangeTurf(/turf/simulated/wall)
|
|
||||||
else
|
|
||||||
T.ChangeTurf(text2path("/turf/simulated/wall/mineral/[mineral]"))
|
|
||||||
if(mineral != "phoron")//Stupid shit keeps me from pushing the attackby() to phoron walls -Sieve
|
|
||||||
T = get_turf(src)
|
|
||||||
T.attackby(W,user)
|
|
||||||
del(src)
|
|
||||||
else
|
|
||||||
user << "\blue You can't reach, close it first!"
|
|
||||||
|
|
||||||
if( istype(W, /obj/item/weapon/pickaxe/plasmacutter) )
|
|
||||||
var/turf/T = get_turf(src)
|
|
||||||
if(!mineral)
|
|
||||||
T.ChangeTurf(/turf/simulated/wall)
|
|
||||||
else
|
else
|
||||||
T.ChangeTurf(text2path("/turf/simulated/wall/mineral/[mineral]"))
|
user << "\blue You can't reach, close it first!"
|
||||||
if(mineral != "phoron")
|
|
||||||
T = get_turf(src)
|
|
||||||
T.attackby(W,user)
|
|
||||||
del(src)
|
|
||||||
|
|
||||||
//DRILLING
|
|
||||||
else if (istype(W, /obj/item/weapon/pickaxe/diamonddrill))
|
|
||||||
var/turf/T = get_turf(src)
|
|
||||||
if(!mineral)
|
|
||||||
T.ChangeTurf(/turf/simulated/wall)
|
|
||||||
else
|
|
||||||
T.ChangeTurf(text2path("/turf/simulated/wall/mineral/[mineral]"))
|
|
||||||
T = get_turf(src)
|
|
||||||
T.attackby(W,user)
|
|
||||||
del(src)
|
|
||||||
|
|
||||||
else if( istype(W, /obj/item/weapon/melee/energy/blade) )
|
|
||||||
var/turf/T = get_turf(src)
|
|
||||||
if(!mineral)
|
|
||||||
T.ChangeTurf(/turf/simulated/wall)
|
|
||||||
else
|
|
||||||
T.ChangeTurf(text2path("/turf/simulated/wall/mineral/[mineral]"))
|
|
||||||
if(mineral != "phoron")
|
|
||||||
T = get_turf(src)
|
|
||||||
T.attackby(W,user)
|
|
||||||
del(src)
|
|
||||||
|
|
||||||
/obj/structure/falsewall/update_icon()//Calling icon_update will refresh the smoothwalls if it's closed, otherwise it will make sure the icon is correct if it's open
|
/obj/structure/falsewall/update_icon()//Calling icon_update will refresh the smoothwalls if it's closed, otherwise it will make sure the icon is correct if it's open
|
||||||
..()
|
..()
|
||||||
@@ -167,7 +147,7 @@
|
|||||||
density = 1
|
density = 1
|
||||||
opacity = 1
|
opacity = 1
|
||||||
anchored = 1
|
anchored = 1
|
||||||
var/mineral = "metal"
|
var/mineral = "steel"
|
||||||
var/opening = 0
|
var/opening = 0
|
||||||
|
|
||||||
/obj/structure/falserwall/New()
|
/obj/structure/falserwall/New()
|
||||||
|
|||||||
@@ -89,88 +89,68 @@
|
|||||||
new/obj/structure/girder/displaced( src.loc )
|
new/obj/structure/girder/displaced( src.loc )
|
||||||
del(src)
|
del(src)
|
||||||
|
|
||||||
|
else if(istype(W, /obj/item/stack/sheet/plasteel))
|
||||||
|
var/obj/item/stack/sheet/S = W
|
||||||
|
if(!anchored)
|
||||||
|
if(S.use(2))
|
||||||
|
user << "\blue You create a false wall! Push on it to open or close the passage."
|
||||||
|
new /obj/structure/falserwall (src.loc)
|
||||||
|
del(src)
|
||||||
|
else
|
||||||
|
if (src.icon_state == "reinforced") //I cant believe someone would actually write this line of code...
|
||||||
|
if(S.get_amount() < 1) return ..()
|
||||||
|
user << "<span class='notice'>Now finalising reinforced wall.</span>"
|
||||||
|
if(do_after(user, 50))
|
||||||
|
if (S.use(1))
|
||||||
|
user << "<span class='notice'>Wall fully reinforced!</span>"
|
||||||
|
var/turf/Tsrc = get_turf(src)
|
||||||
|
Tsrc.ChangeTurf(/turf/simulated/wall/r_wall)
|
||||||
|
for(var/turf/simulated/wall/r_wall/X in Tsrc.loc)
|
||||||
|
if(X) X.add_hiddenprint(usr)
|
||||||
|
del(src)
|
||||||
|
return
|
||||||
|
else
|
||||||
|
if(S.get_amount() < 1) return ..()
|
||||||
|
user << "<span class='notice'>Now reinforcing girders...</span>"
|
||||||
|
if (do_after(user,60))
|
||||||
|
if(S.use(1))
|
||||||
|
user << "<span class='notice'>Girders reinforced!</span>"
|
||||||
|
new/obj/structure/girder/reinforced( src.loc )
|
||||||
|
del(src)
|
||||||
|
return
|
||||||
|
|
||||||
else if(istype(W, /obj/item/stack/sheet))
|
else if(istype(W, /obj/item/stack/sheet))
|
||||||
|
|
||||||
var/obj/item/stack/sheet/S = W
|
var/obj/item/stack/sheet/S = W
|
||||||
switch(S.type)
|
var/material/M = name_to_mineral[S.sheettype]
|
||||||
|
|
||||||
if(/obj/item/stack/sheet/metal, /obj/item/stack/sheet/metal/cyborg)
|
|
||||||
if(!anchored)
|
|
||||||
if(S.use(2))
|
|
||||||
user << "<span class='notice'>You create a false wall! Push on it to open or close the passage.</span>"
|
|
||||||
new /obj/structure/falsewall (src.loc)
|
|
||||||
del(src)
|
|
||||||
else
|
|
||||||
if(S.get_amount() < 2) return ..()
|
|
||||||
user << "<span class='notice'>Now adding plating...</span>"
|
|
||||||
if (do_after(user,40))
|
|
||||||
if (S.use(2))
|
|
||||||
user << "<span class='notice'>You added the plating!</span>"
|
|
||||||
var/turf/Tsrc = get_turf(src)
|
|
||||||
Tsrc.ChangeTurf(/turf/simulated/wall)
|
|
||||||
for(var/turf/simulated/wall/X in Tsrc.loc)
|
|
||||||
if(X) X.add_hiddenprint(usr)
|
|
||||||
del(src)
|
|
||||||
return
|
|
||||||
|
|
||||||
if(/obj/item/stack/sheet/plasteel, /obj/item/stack/sheet/plasteel/cyborg)
|
|
||||||
if(!anchored)
|
|
||||||
if(S.use(2))
|
|
||||||
user << "\blue You create a false wall! Push on it to open or close the passage."
|
|
||||||
new /obj/structure/falserwall (src.loc)
|
|
||||||
del(src)
|
|
||||||
else
|
|
||||||
if (src.icon_state == "reinforced") //I cant believe someone would actually write this line of code...
|
|
||||||
if(S.get_amount() < 1) return ..()
|
|
||||||
user << "<span class='notice'>Now finalising reinforced wall.</span>"
|
|
||||||
if(do_after(user, 50))
|
|
||||||
if (S.use(1))
|
|
||||||
user << "<span class='notice'>Wall fully reinforced!</span>"
|
|
||||||
var/turf/Tsrc = get_turf(src)
|
|
||||||
Tsrc.ChangeTurf(/turf/simulated/wall/r_wall)
|
|
||||||
for(var/turf/simulated/wall/r_wall/X in Tsrc.loc)
|
|
||||||
if(X) X.add_hiddenprint(usr)
|
|
||||||
del(src)
|
|
||||||
return
|
|
||||||
else
|
|
||||||
if(S.get_amount() < 1) return ..()
|
|
||||||
user << "<span class='notice'>Now reinforcing girders...</span>"
|
|
||||||
if (do_after(user,60))
|
|
||||||
if(S.use(1))
|
|
||||||
user << "<span class='notice'>Girders reinforced!</span>"
|
|
||||||
new/obj/structure/girder/reinforced( src.loc )
|
|
||||||
del(src)
|
|
||||||
return
|
|
||||||
|
|
||||||
if(S.sheettype)
|
|
||||||
var/M = S.sheettype
|
|
||||||
// Ugly hack, will suffice for now. Need to fix it upstream as well, may rewrite mineral walls. ~Z
|
|
||||||
if(M in list("mhydrogen","osmium","tritium","platinum","iron"))
|
|
||||||
user << "You cannot plate the girder in that material."
|
|
||||||
return
|
|
||||||
if(!anchored)
|
|
||||||
if(S.amount < 2) return
|
|
||||||
S.use(2)
|
|
||||||
user << "\blue You create a false wall! Push on it to open or close the passage."
|
|
||||||
var/F = text2path("/obj/structure/falsewall/[M]")
|
|
||||||
new F (src.loc)
|
|
||||||
del(src)
|
|
||||||
else
|
|
||||||
if(S.amount < 2) return ..()
|
|
||||||
user << "\blue Now adding plating..."
|
|
||||||
if (do_after(user,40))
|
|
||||||
if(!src || !S || S.amount < 2) return
|
|
||||||
S.use(2)
|
|
||||||
user << "\blue You added the plating!"
|
|
||||||
var/turf/Tsrc = get_turf(src)
|
|
||||||
Tsrc.ChangeTurf(text2path("/turf/simulated/wall/mineral/[M]"))
|
|
||||||
for(var/turf/simulated/wall/mineral/X in Tsrc.loc)
|
|
||||||
if(X) X.add_hiddenprint(usr)
|
|
||||||
del(src)
|
|
||||||
return
|
|
||||||
|
|
||||||
add_hiddenprint(usr)
|
add_hiddenprint(usr)
|
||||||
|
|
||||||
|
if(!anchored)
|
||||||
|
if(!istype(M) || !M.walltype_false)
|
||||||
|
user << "<span class='notice'>You cannot make a false wall using this material.</span>"
|
||||||
|
return
|
||||||
|
if(S.use(2))
|
||||||
|
user << "<span class='notice'>You create a false wall! Push on it to open or close the passage.</span>"
|
||||||
|
new M.walltype_false (src.loc)
|
||||||
|
del(src)
|
||||||
|
else
|
||||||
|
if(!istype(M) || !M.walltype_solid)
|
||||||
|
user << "<span class='notice'>You cannot plate a wall in this material.</span>"
|
||||||
|
return
|
||||||
|
if(S.get_amount() < 2)
|
||||||
|
return ..()
|
||||||
|
user << "<span class='notice'>Now adding plating...</span>"
|
||||||
|
if (do_after(user,40))
|
||||||
|
if (S.use(2))
|
||||||
|
user << "<span class='notice'>You added the plating!</span>"
|
||||||
|
var/turf/Tsrc = get_turf(src)
|
||||||
|
Tsrc.ChangeTurf(M.walltype_solid)
|
||||||
|
for(var/turf/simulated/wall/X in Tsrc.loc)
|
||||||
|
if(X)
|
||||||
|
X.add_hiddenprint(usr)
|
||||||
|
del(src)
|
||||||
|
return
|
||||||
|
|
||||||
else if(istype(W, /obj/item/pipe))
|
else if(istype(W, /obj/item/pipe))
|
||||||
var/obj/item/pipe/P = W
|
var/obj/item/pipe/P = W
|
||||||
if (P.pipe_type in list(0, 1, 5)) //simple pipes, simple bends, and simple manifolds.
|
if (P.pipe_type in list(0, 1, 5)) //simple pipes, simple bends, and simple manifolds.
|
||||||
|
|||||||
@@ -10,7 +10,7 @@
|
|||||||
icon = 'icons/obj/doors/mineral_doors.dmi'
|
icon = 'icons/obj/doors/mineral_doors.dmi'
|
||||||
icon_state = "metal"
|
icon_state = "metal"
|
||||||
|
|
||||||
var/mineralType = "metal"
|
var/mineralType = "steel"
|
||||||
var/state = 0 //closed, 1 == open
|
var/state = 0 //closed, 1 == open
|
||||||
var/isSwitchingStates = 0
|
var/isSwitchingStates = 0
|
||||||
var/hardness = 1
|
var/hardness = 1
|
||||||
@@ -119,24 +119,10 @@
|
|||||||
Dismantle(1)
|
Dismantle(1)
|
||||||
|
|
||||||
proc/Dismantle(devastated = 0)
|
proc/Dismantle(devastated = 0)
|
||||||
if(!devastated)
|
var/material/M = name_to_mineral[mineralType]
|
||||||
if (mineralType == "metal")
|
if(istype(M))
|
||||||
var/ore = /obj/item/stack/sheet/metal
|
for(var/i = (devastated? 1 : 3), i <= oreAmount, i++)
|
||||||
for(var/i = 1, i <= oreAmount, i++)
|
new M.stack_type(get_turf(src))
|
||||||
new ore(get_turf(src))
|
|
||||||
else
|
|
||||||
var/ore = text2path("/obj/item/stack/sheet/mineral/[mineralType]")
|
|
||||||
for(var/i = 1, i <= oreAmount, i++)
|
|
||||||
new ore(get_turf(src))
|
|
||||||
else
|
|
||||||
if (mineralType == "metal")
|
|
||||||
var/ore = /obj/item/stack/sheet/metal
|
|
||||||
for(var/i = 3, i <= oreAmount, i++)
|
|
||||||
new ore(get_turf(src))
|
|
||||||
else
|
|
||||||
var/ore = text2path("/obj/item/stack/sheet/mineral/[mineralType]")
|
|
||||||
for(var/i = 3, i <= oreAmount, i++)
|
|
||||||
new ore(get_turf(src))
|
|
||||||
del(src)
|
del(src)
|
||||||
|
|
||||||
ex_act(severity = 1)
|
ex_act(severity = 1)
|
||||||
@@ -155,7 +141,7 @@
|
|||||||
return
|
return
|
||||||
|
|
||||||
/obj/structure/mineral_door/iron
|
/obj/structure/mineral_door/iron
|
||||||
mineralType = "metal"
|
mineralType = "iron"
|
||||||
hardness = 3
|
hardness = 3
|
||||||
|
|
||||||
/obj/structure/mineral_door/silver
|
/obj/structure/mineral_door/silver
|
||||||
|
|||||||
@@ -126,15 +126,15 @@
|
|||||||
|
|
||||||
for(var/turf/simulated/wall/W in orange(src,1))
|
for(var/turf/simulated/wall/W in orange(src,1))
|
||||||
if(abs(src.x-W.x)-abs(src.y-W.y)) //doesn't count diagonal walls
|
if(abs(src.x-W.x)-abs(src.y-W.y)) //doesn't count diagonal walls
|
||||||
if(src.mineral == W.mineral)//Only 'like' walls connect -Sieve
|
if(mineral == W.mineral)//Only 'like' walls connect -Sieve
|
||||||
junction |= get_dir(src,W)
|
junction |= get_dir(src,W)
|
||||||
for(var/obj/structure/falsewall/W in orange(src,1))
|
for(var/obj/structure/falsewall/W in orange(src,1))
|
||||||
if(abs(src.x-W.x)-abs(src.y-W.y)) //doesn't count diagonal walls
|
if(abs(src.x-W.x)-abs(src.y-W.y)) //doesn't count diagonal walls
|
||||||
if(src.mineral == W.mineral)
|
if(mineral == W.mineral)
|
||||||
junction |= get_dir(src,W)
|
junction |= get_dir(src,W)
|
||||||
for(var/obj/structure/falserwall/W in orange(src,1))
|
for(var/obj/structure/falserwall/W in orange(src,1))
|
||||||
if(abs(src.x-W.x)-abs(src.y-W.y)) //doesn't count diagonal walls
|
if(abs(src.x-W.x)-abs(src.y-W.y)) //doesn't count diagonal walls
|
||||||
if(src.mineral == W.mineral)
|
if(mineral == W.mineral)
|
||||||
junction |= get_dir(src,W)
|
junction |= get_dir(src,W)
|
||||||
var/turf/simulated/wall/wall = src
|
var/turf/simulated/wall/wall = src
|
||||||
wall.icon_state = "[wall.walltype][junction]"
|
wall.icon_state = "[wall.walltype][junction]"
|
||||||
|
|||||||
@@ -41,7 +41,7 @@ var/list/wood_icons = list("wood","wood-broken")
|
|||||||
var/lava = 0
|
var/lava = 0
|
||||||
var/broken = 0
|
var/broken = 0
|
||||||
var/burnt = 0
|
var/burnt = 0
|
||||||
var/mineral = "metal"
|
var/mineral = "steel"
|
||||||
var/floor_type = /obj/item/stack/tile/plasteel
|
var/floor_type = /obj/item/stack/tile/plasteel
|
||||||
var/lightfloor_state // for light floors, this is the state of the tile. 0-7, 0x4 is on-bit - use the helper procs below
|
var/lightfloor_state // for light floors, this is the state of the tile. 0-7, 0x4 is on-bit - use the helper procs below
|
||||||
|
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
name = "wall"
|
name = "wall"
|
||||||
desc = "A huge chunk of metal used to seperate rooms."
|
desc = "A huge chunk of metal used to seperate rooms."
|
||||||
icon = 'icons/turf/walls.dmi'
|
icon = 'icons/turf/walls.dmi'
|
||||||
var/mineral = "metal"
|
var/mineral = "steel"
|
||||||
var/rotting = 0
|
var/rotting = 0
|
||||||
|
|
||||||
var/damage = 0
|
var/damage = 0
|
||||||
@@ -20,7 +20,7 @@
|
|||||||
thermal_conductivity = WALL_HEAT_TRANSFER_COEFFICIENT
|
thermal_conductivity = WALL_HEAT_TRANSFER_COEFFICIENT
|
||||||
heat_capacity = 312500 //a little over 5 cm thick , 312500 for 1 m by 2.5 m by 0.25 m plasteel wall
|
heat_capacity = 312500 //a little over 5 cm thick , 312500 for 1 m by 2.5 m by 0.25 m plasteel wall
|
||||||
|
|
||||||
var/walltype = "metal"
|
var/walltype = "steel"
|
||||||
|
|
||||||
/turf/simulated/wall/bullet_act(var/obj/item/projectile/Proj)
|
/turf/simulated/wall/bullet_act(var/obj/item/projectile/Proj)
|
||||||
|
|
||||||
@@ -107,7 +107,8 @@
|
|||||||
//Damage
|
//Damage
|
||||||
|
|
||||||
/turf/simulated/wall/melt()
|
/turf/simulated/wall/melt()
|
||||||
if(mineral == "diamond")
|
|
||||||
|
if(!can_melt())
|
||||||
return
|
return
|
||||||
|
|
||||||
src.ChangeTurf(/turf/simulated/floor/plating)
|
src.ChangeTurf(/turf/simulated/floor/plating)
|
||||||
@@ -167,23 +168,13 @@
|
|||||||
if(!devastated)
|
if(!devastated)
|
||||||
playsound(src, 'sound/items/Welder.ogg', 100, 1)
|
playsound(src, 'sound/items/Welder.ogg', 100, 1)
|
||||||
new /obj/structure/girder(src)
|
new /obj/structure/girder(src)
|
||||||
if (mineral == "metal")
|
var/material/M = name_to_mineral[mineral]
|
||||||
new /obj/item/stack/sheet/metal( src )
|
if(istype(M) && M.stack_type)
|
||||||
new /obj/item/stack/sheet/metal( src )
|
for(var/x=1;x<(devastated?2:3);x++)
|
||||||
|
new M.stack_type(src)
|
||||||
else
|
else
|
||||||
var/M = text2path("/obj/item/stack/sheet/mineral/[mineral]")
|
for(var/x=1;x<(devastated?2:3);x++)
|
||||||
new M( src )
|
new /obj/item/stack/sheet/metal(src)
|
||||||
new M( src )
|
|
||||||
else
|
|
||||||
if (mineral == "metal")
|
|
||||||
new /obj/item/stack/sheet/metal( src )
|
|
||||||
new /obj/item/stack/sheet/metal( src )
|
|
||||||
new /obj/item/stack/sheet/metal( src )
|
|
||||||
else
|
|
||||||
var/M = text2path("/obj/item/stack/sheet/mineral/[mineral]")
|
|
||||||
new M( src )
|
|
||||||
new M( src )
|
|
||||||
new /obj/item/stack/sheet/metal( src )
|
|
||||||
|
|
||||||
for(var/obj/O in src.contents) //Eject contents!
|
for(var/obj/O in src.contents) //Eject contents!
|
||||||
if(istype(O,/obj/structure/sign/poster))
|
if(istype(O,/obj/structure/sign/poster))
|
||||||
@@ -231,8 +222,15 @@
|
|||||||
O.layer = 5
|
O.layer = 5
|
||||||
O.mouse_opacity = 0
|
O.mouse_opacity = 0
|
||||||
|
|
||||||
|
|
||||||
|
/turf/simulated/wall/proc/can_melt()
|
||||||
|
var/material/M = name_to_mineral[mineral]
|
||||||
|
if(istype(M) && M.unmeltable)
|
||||||
|
return 0
|
||||||
|
return 1
|
||||||
|
|
||||||
/turf/simulated/wall/proc/thermitemelt(mob/user as mob)
|
/turf/simulated/wall/proc/thermitemelt(mob/user as mob)
|
||||||
if(mineral == "diamond")
|
if(!can_melt())
|
||||||
return
|
return
|
||||||
var/obj/effect/overlay/O = new/obj/effect/overlay( src )
|
var/obj/effect/overlay/O = new/obj/effect/overlay( src )
|
||||||
O.name = "Thermite"
|
O.name = "Thermite"
|
||||||
@@ -359,6 +357,11 @@
|
|||||||
|
|
||||||
var/turf/T = user.loc //get user's location for delay checks
|
var/turf/T = user.loc //get user's location for delay checks
|
||||||
|
|
||||||
|
var/cut_delay = 60
|
||||||
|
var/material/M = name_to_mineral[mineral]
|
||||||
|
if(istype(M))
|
||||||
|
cut_delay -= M.cut_delay
|
||||||
|
|
||||||
//DECONSTRUCTION
|
//DECONSTRUCTION
|
||||||
if( istype(W, /obj/item/weapon/weldingtool) )
|
if( istype(W, /obj/item/weapon/weldingtool) )
|
||||||
|
|
||||||
@@ -392,40 +395,24 @@
|
|||||||
user << "<span class='notice'>You need more welding fuel to complete this task.</span>"
|
user << "<span class='notice'>You need more welding fuel to complete this task.</span>"
|
||||||
return
|
return
|
||||||
|
|
||||||
else if( istype(W, /obj/item/weapon/pickaxe/plasmacutter) )
|
else if( istype(W, /obj/item/weapon/pickaxe) )
|
||||||
|
|
||||||
user << "<span class='notice'>You begin slicing through the outer plating.</span>"
|
var/obj/item/weapon/pickaxe/P = W
|
||||||
playsound(src, 'sound/items/Welder.ogg', 100, 1)
|
user << "<span class='notice'>You begin [P.drill_verb] through the outer plating.</span>"
|
||||||
|
if(P.drill_sound)
|
||||||
|
playsound(src, P.drill_sound, 100, 1)
|
||||||
|
|
||||||
var/delay = 60
|
cut_delay -= P.digspeed
|
||||||
if(mineral == "diamond")
|
if(cut_delay<0)
|
||||||
delay += 60
|
cut_delay = 0
|
||||||
|
|
||||||
if(!do_after(user,delay))
|
if(!do_after(user,cut_delay))
|
||||||
return
|
return
|
||||||
|
|
||||||
user << "<span class='notice'>You remove the outer plating.</span>"
|
user << "<span class='notice'>You remove the outer plating.</span>"
|
||||||
dismantle_wall()
|
dismantle_wall()
|
||||||
for(var/mob/O in viewers(user, 5))
|
for(var/mob/O in viewers(user, 5))
|
||||||
O.show_message("<span class='warning'>The wall was sliced apart by [user]!</span>", 1, "<span class='warning'>You hear metal being sliced apart.</span>", 2)
|
O.show_message("<span class='warning'>The wall was torn open by [user]!</span>", 1, "<span class='warning'>You hear metal being sliced apart.</span>", 2)
|
||||||
return
|
|
||||||
|
|
||||||
//DRILLING
|
|
||||||
else if (istype(W, /obj/item/weapon/pickaxe/diamonddrill))
|
|
||||||
|
|
||||||
user << "<span class='notice'>You begin to drill though the wall.</span>"
|
|
||||||
|
|
||||||
var/delay = 60
|
|
||||||
if(mineral == "diamond")
|
|
||||||
delay += 60
|
|
||||||
|
|
||||||
if(!do_after(user,delay))
|
|
||||||
return
|
|
||||||
|
|
||||||
user << "<span class='notice'>Your drill tears though the last of the reinforced plating.</span>"
|
|
||||||
dismantle_wall()
|
|
||||||
for(var/mob/O in viewers(user, 5))
|
|
||||||
O.show_message("<span class='warning'>The wall was drilled through by [user]!</span>", 1, "<span class='warning'>You hear the grinding of metal.</span>", 2)
|
|
||||||
return
|
return
|
||||||
|
|
||||||
else if( istype(W, /obj/item/weapon/melee/energy/blade) )
|
else if( istype(W, /obj/item/weapon/melee/energy/blade) )
|
||||||
@@ -435,9 +422,9 @@
|
|||||||
user << "<span class='notice'>You stab \the [EB] into the wall and begin to slice it apart.</span>"
|
user << "<span class='notice'>You stab \the [EB] into the wall and begin to slice it apart.</span>"
|
||||||
playsound(src, "sparks", 50, 1)
|
playsound(src, "sparks", 50, 1)
|
||||||
|
|
||||||
sleep(70)
|
if(!do_after(user,cut_delay))
|
||||||
if(mineral == "diamond")
|
return
|
||||||
sleep(70)
|
|
||||||
if( !istype(src, /turf/simulated/wall) || !user || !EB || !T ) return
|
if( !istype(src, /turf/simulated/wall) || !user || !EB || !T ) return
|
||||||
|
|
||||||
if( user.loc == T && user.get_active_hand() == W )
|
if( user.loc == T && user.get_active_hand() == W )
|
||||||
|
|||||||
@@ -10,39 +10,30 @@
|
|||||||
desc = "A wall with gold plating. Swag!"
|
desc = "A wall with gold plating. Swag!"
|
||||||
icon_state = "gold0"
|
icon_state = "gold0"
|
||||||
walltype = "gold"
|
walltype = "gold"
|
||||||
mineral = "gold"
|
|
||||||
//var/electro = 1
|
|
||||||
//var/shocked = null
|
|
||||||
|
|
||||||
/turf/simulated/wall/mineral/silver
|
/turf/simulated/wall/mineral/silver
|
||||||
name = "silver wall"
|
name = "silver wall"
|
||||||
desc = "A wall with silver plating. Shiny!"
|
desc = "A wall with silver plating. Shiny!"
|
||||||
icon_state = "silver0"
|
icon_state = "silver0"
|
||||||
walltype = "silver"
|
walltype = "silver"
|
||||||
mineral = "silver"
|
|
||||||
//var/electro = 0.75
|
|
||||||
//var/shocked = null
|
|
||||||
|
|
||||||
/turf/simulated/wall/mineral/diamond
|
/turf/simulated/wall/mineral/diamond
|
||||||
name = "diamond wall"
|
name = "diamond wall"
|
||||||
desc = "A wall with diamond plating. You monster."
|
desc = "A wall with diamond plating. You monster."
|
||||||
icon_state = "diamond0"
|
icon_state = "diamond0"
|
||||||
walltype = "diamond"
|
walltype = "diamond"
|
||||||
mineral = "diamond"
|
|
||||||
|
|
||||||
/turf/simulated/wall/mineral/sandstone
|
/turf/simulated/wall/mineral/sandstone
|
||||||
name = "sandstone wall"
|
name = "sandstone wall"
|
||||||
desc = "A wall with sandstone plating."
|
desc = "A wall with sandstone plating."
|
||||||
icon_state = "sandstone0"
|
icon_state = "sandstone0"
|
||||||
walltype = "sandstone"
|
walltype = "sandstone"
|
||||||
mineral = "sandstone"
|
|
||||||
|
|
||||||
/turf/simulated/wall/mineral/uranium
|
/turf/simulated/wall/mineral/uranium
|
||||||
name = "uranium wall"
|
name = "uranium wall"
|
||||||
desc = "A wall with uranium plating. This is probably a bad idea."
|
desc = "A wall with uranium plating. This is probably a bad idea."
|
||||||
icon_state = "uranium0"
|
icon_state = "uranium0"
|
||||||
walltype = "uranium"
|
walltype = "uranium"
|
||||||
mineral = "uranium"
|
|
||||||
|
|
||||||
/turf/simulated/wall/mineral/uranium/proc/radiate()
|
/turf/simulated/wall/mineral/uranium/proc/radiate()
|
||||||
if(!active)
|
if(!active)
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
icon_state = ""
|
icon_state = ""
|
||||||
flags = CONDUCT
|
flags = CONDUCT
|
||||||
w_class = 2.0
|
w_class = 2.0
|
||||||
matter = list("metal" = 100)
|
matter = list("steel" = 100)
|
||||||
throwforce = 2
|
throwforce = 2
|
||||||
throw_speed = 3
|
throw_speed = 3
|
||||||
throw_range = 10
|
throw_range = 10
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
name = "igniter"
|
name = "igniter"
|
||||||
desc = "A small electronic device able to ignite combustable substances."
|
desc = "A small electronic device able to ignite combustable substances."
|
||||||
icon_state = "igniter"
|
icon_state = "igniter"
|
||||||
matter = list("metal" = 500, "glass" = 50, "waste" = 10)
|
matter = list("steel" = 500, "glass" = 50, "waste" = 10)
|
||||||
origin_tech = "magnets=1"
|
origin_tech = "magnets=1"
|
||||||
|
|
||||||
secured = 1
|
secured = 1
|
||||||
|
|||||||
@@ -4,7 +4,7 @@
|
|||||||
name = "infrared emitter"
|
name = "infrared emitter"
|
||||||
desc = "Emits a visible or invisible beam and is triggered when the beam is interrupted."
|
desc = "Emits a visible or invisible beam and is triggered when the beam is interrupted."
|
||||||
icon_state = "infrared"
|
icon_state = "infrared"
|
||||||
matter = list("metal" = 1000, "glass" = 500, "waste" = 100)
|
matter = list("steel" = 1000, "glass" = 500, "waste" = 100)
|
||||||
origin_tech = "magnets=2"
|
origin_tech = "magnets=2"
|
||||||
|
|
||||||
wires = WIRE_PULSE
|
wires = WIRE_PULSE
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
name = "mousetrap"
|
name = "mousetrap"
|
||||||
desc = "A handy little spring-loaded trap for catching pesty rodents."
|
desc = "A handy little spring-loaded trap for catching pesty rodents."
|
||||||
icon_state = "mousetrap"
|
icon_state = "mousetrap"
|
||||||
matter = list("metal" = 100, "waste" = 10)
|
matter = list("steel" = 100, "waste" = 10)
|
||||||
origin_tech = "combat=1"
|
origin_tech = "combat=1"
|
||||||
var/armed = 0
|
var/armed = 0
|
||||||
|
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
name = "proximity sensor"
|
name = "proximity sensor"
|
||||||
desc = "Used for scanning and alerting when someone enters a certain proximity."
|
desc = "Used for scanning and alerting when someone enters a certain proximity."
|
||||||
icon_state = "prox"
|
icon_state = "prox"
|
||||||
matter = list("metal" = 800, "glass" = 200, "waste" = 50)
|
matter = list("steel" = 800, "glass" = 200, "waste" = 50)
|
||||||
origin_tech = "magnets=1"
|
origin_tech = "magnets=1"
|
||||||
|
|
||||||
wires = WIRE_PULSE
|
wires = WIRE_PULSE
|
||||||
|
|||||||
@@ -3,7 +3,7 @@
|
|||||||
desc = "Used to remotely activate devices."
|
desc = "Used to remotely activate devices."
|
||||||
icon_state = "signaller"
|
icon_state = "signaller"
|
||||||
item_state = "signaler"
|
item_state = "signaler"
|
||||||
matter = list("metal" = 1000, "glass" = 200, "waste" = 100)
|
matter = list("steel" = 1000, "glass" = 200, "waste" = 100)
|
||||||
origin_tech = "magnets=1"
|
origin_tech = "magnets=1"
|
||||||
wires = WIRE_RECEIVE | WIRE_PULSE | WIRE_RADIO_PULSE | WIRE_RADIO_RECEIVE
|
wires = WIRE_RECEIVE | WIRE_PULSE | WIRE_RADIO_PULSE | WIRE_RADIO_RECEIVE
|
||||||
|
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
name = "timer"
|
name = "timer"
|
||||||
desc = "Used to time things. Works well with contraptions which has to count down. Tick tock."
|
desc = "Used to time things. Works well with contraptions which has to count down. Tick tock."
|
||||||
icon_state = "timer"
|
icon_state = "timer"
|
||||||
matter = list("metal" = 500, "glass" = 50, "waste" = 10)
|
matter = list("steel" = 500, "glass" = 50, "waste" = 10)
|
||||||
origin_tech = "magnets=1"
|
origin_tech = "magnets=1"
|
||||||
|
|
||||||
wires = WIRE_PULSE
|
wires = WIRE_PULSE
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
name = "voice analyzer"
|
name = "voice analyzer"
|
||||||
desc = "A small electronic device able to record a voice sample, and send a signal when that sample is repeated."
|
desc = "A small electronic device able to record a voice sample, and send a signal when that sample is repeated."
|
||||||
icon_state = "voice"
|
icon_state = "voice"
|
||||||
matter = list("metal" = 500, "glass" = 50, "waste" = 10)
|
matter = list("steel" = 500, "glass" = 50, "waste" = 10)
|
||||||
origin_tech = "magnets=1"
|
origin_tech = "magnets=1"
|
||||||
var/listening = 0
|
var/listening = 0
|
||||||
var/recorded //the activation message
|
var/recorded //the activation message
|
||||||
|
|||||||
@@ -270,3 +270,62 @@
|
|||||||
desc = "A set of implantable lenses designed to augment your vision"
|
desc = "A set of implantable lenses designed to augment your vision"
|
||||||
icon_state = "thermalimplants"
|
icon_state = "thermalimplants"
|
||||||
item_state = "syringe_kit"
|
item_state = "syringe_kit"
|
||||||
|
|
||||||
|
/obj/item/clothing/glasses/minerals
|
||||||
|
name = "resonance scanners"
|
||||||
|
desc = "A set of goggles geared towards detecting different concentrations of minerals."
|
||||||
|
icon_state = "material"
|
||||||
|
item_state = "glasses"
|
||||||
|
icon_action_button = "action_material"
|
||||||
|
toggleable = 1
|
||||||
|
active = 0
|
||||||
|
|
||||||
|
var/mob/living/carbon/human/wearer
|
||||||
|
var/list/ore_nodes = list()
|
||||||
|
|
||||||
|
/obj/item/clothing/glasses/minerals/New()
|
||||||
|
..()
|
||||||
|
if(!active)
|
||||||
|
icon_state = off_state
|
||||||
|
processing_objects |= src
|
||||||
|
|
||||||
|
/obj/item/clothing/glasses/minerals/Del()
|
||||||
|
processing_objects -= src
|
||||||
|
..()
|
||||||
|
|
||||||
|
/obj/item/clothing/glasses/minerals/equipped(var/mob/living/carbon/human/M)
|
||||||
|
..()
|
||||||
|
remove_ore_images()
|
||||||
|
wearer = null
|
||||||
|
if(istype(M) && M.glasses == src)
|
||||||
|
wearer = M
|
||||||
|
|
||||||
|
/obj/item/clothing/glasses/minerals/dropped()
|
||||||
|
..()
|
||||||
|
remove_ore_images()
|
||||||
|
wearer = null
|
||||||
|
|
||||||
|
/obj/item/clothing/glasses/minerals/process()
|
||||||
|
remove_ore_images()
|
||||||
|
if(active)
|
||||||
|
if(!wearer || wearer.glasses != src)
|
||||||
|
return
|
||||||
|
for(var/obj/effect/mineral/M in range(wearer,6))
|
||||||
|
// Maybe make a cache for this so multiple miners aren't spawning copies.
|
||||||
|
ore_nodes += M.scanner_image
|
||||||
|
if(ore_nodes.len && wearer.client)
|
||||||
|
wearer.client.images |= ore_nodes
|
||||||
|
|
||||||
|
/obj/item/clothing/glasses/minerals/proc/remove_ore_images()
|
||||||
|
if(!ore_nodes)
|
||||||
|
ore_nodes = list()
|
||||||
|
if(ore_nodes.len)
|
||||||
|
if(wearer && wearer.client)
|
||||||
|
for(var/image/I in ore_nodes)
|
||||||
|
wearer.client.images -= I
|
||||||
|
del(I)
|
||||||
|
ore_nodes.Cut()
|
||||||
|
|
||||||
|
/obj/item/clothing/glasses/minerals/dropped()
|
||||||
|
remove_ore_images()
|
||||||
|
wearer = null
|
||||||
@@ -17,7 +17,7 @@
|
|||||||
icon_state = "welding"
|
icon_state = "welding"
|
||||||
flags = HEADCOVERSEYES | HEADCOVERSMOUTH
|
flags = HEADCOVERSEYES | HEADCOVERSMOUTH
|
||||||
item_state = "welding"
|
item_state = "welding"
|
||||||
matter = list("metal" = 3000, "glass" = 1000)
|
matter = list("steel" = 3000, "glass" = 1000)
|
||||||
var/up = 0
|
var/up = 0
|
||||||
armor = list(melee = 10, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0)
|
armor = list(melee = 10, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0)
|
||||||
flags_inv = (HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE)
|
flags_inv = (HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE)
|
||||||
|
|||||||
@@ -13,7 +13,7 @@
|
|||||||
desc = "It looks pretty sciency."
|
desc = "It looks pretty sciency."
|
||||||
icon = 'icons/obj/rig_modules.dmi'
|
icon = 'icons/obj/rig_modules.dmi'
|
||||||
icon_state = "module"
|
icon_state = "module"
|
||||||
matter = list("metal" = 20000, "plastic" = 30000, "glass" = 5000)
|
matter = list("steel" = 20000, "plastic" = 30000, "glass" = 5000)
|
||||||
|
|
||||||
var/damage = 0
|
var/damage = 0
|
||||||
var/obj/item/weapon/rig/holder
|
var/obj/item/weapon/rig/holder
|
||||||
|
|||||||
@@ -58,7 +58,7 @@
|
|||||||
force = 5.0
|
force = 5.0
|
||||||
throwforce = 7.0
|
throwforce = 7.0
|
||||||
w_class = 2.0
|
w_class = 2.0
|
||||||
matter = list("metal" = 50)
|
matter = list("steel" = 50)
|
||||||
attack_verb = list("slashed", "sliced", "cut", "clawed")
|
attack_verb = list("slashed", "sliced", "cut", "clawed")
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -215,7 +215,7 @@
|
|||||||
force = 5.0
|
force = 5.0
|
||||||
throwforce = 7.0
|
throwforce = 7.0
|
||||||
w_class = 2.0
|
w_class = 2.0
|
||||||
matter = list("metal" = 50)
|
matter = list("steel" = 50)
|
||||||
attack_verb = list("slashed", "sliced", "cut", "clawed")
|
attack_verb = list("slashed", "sliced", "cut", "clawed")
|
||||||
|
|
||||||
//Hatchets and things to kill kudzu
|
//Hatchets and things to kill kudzu
|
||||||
@@ -232,7 +232,7 @@
|
|||||||
throw_range = 4
|
throw_range = 4
|
||||||
sharp = 1
|
sharp = 1
|
||||||
edge = 1
|
edge = 1
|
||||||
matter = list("metal" = 15000)
|
matter = list("steel" = 15000)
|
||||||
origin_tech = "materials=2;combat=1"
|
origin_tech = "materials=2;combat=1"
|
||||||
attack_verb = list("chopped", "torn", "cut")
|
attack_verb = list("chopped", "torn", "cut")
|
||||||
|
|
||||||
|
|||||||
@@ -4,7 +4,7 @@
|
|||||||
icon = 'icons/obj/device.dmi'
|
icon = 'icons/obj/device.dmi'
|
||||||
icon_state = "forensic0-old" //GET A BETTER SPRITE.
|
icon_state = "forensic0-old" //GET A BETTER SPRITE.
|
||||||
item_state = "electronic"
|
item_state = "electronic"
|
||||||
matter = list("metal" = 150)
|
matter = list("steel" = 150)
|
||||||
origin_tech = "magnets=1;engineering=1"
|
origin_tech = "magnets=1;engineering=1"
|
||||||
|
|
||||||
/obj/item/weapon/mining_scanner/attack_self(mob/user as mob)
|
/obj/item/weapon/mining_scanner/attack_self(mob/user as mob)
|
||||||
|
|||||||
@@ -111,7 +111,6 @@
|
|||||||
var/sheets_per_tick = 10
|
var/sheets_per_tick = 10
|
||||||
var/list/ores_processing[0]
|
var/list/ores_processing[0]
|
||||||
var/list/ores_stored[0]
|
var/list/ores_stored[0]
|
||||||
var/list/ore_data[0]
|
|
||||||
var/list/alloy_data[0]
|
var/list/alloy_data[0]
|
||||||
var/active = 0
|
var/active = 0
|
||||||
|
|
||||||
@@ -123,11 +122,12 @@
|
|||||||
for(var/alloytype in typesof(/datum/alloy)-/datum/alloy)
|
for(var/alloytype in typesof(/datum/alloy)-/datum/alloy)
|
||||||
alloy_data += new alloytype()
|
alloy_data += new alloytype()
|
||||||
|
|
||||||
for(var/oretype in typesof(/datum/ore)-/datum/ore)
|
if(!ore_data || !ore_data.len)
|
||||||
var/datum/ore/OD = new oretype()
|
for(var/oretype in typesof(/ore)-/ore)
|
||||||
ore_data[OD.oretag] = OD
|
var/ore/OD = new oretype()
|
||||||
ores_processing[OD.oretag] = 0
|
ore_data[OD.name] = OD
|
||||||
ores_stored[OD.oretag] = 0
|
ores_processing[OD.name] = 0
|
||||||
|
ores_stored[OD.name] = 0
|
||||||
|
|
||||||
//Locate our output and input machinery.
|
//Locate our output and input machinery.
|
||||||
spawn(5)
|
spawn(5)
|
||||||
@@ -150,7 +150,7 @@
|
|||||||
for(var/i = 0,i<sheets_per_tick,i++)
|
for(var/i = 0,i<sheets_per_tick,i++)
|
||||||
var/obj/item/weapon/ore/O = locate() in input.loc
|
var/obj/item/weapon/ore/O = locate() in input.loc
|
||||||
if(!O) break
|
if(!O) break
|
||||||
if(!isnull(ores_stored[O.oretag])) ores_stored[O.oretag]++
|
if(!isnull(ores_stored[O.name])) ores_stored[O.name]++
|
||||||
O.loc = null
|
O.loc = null
|
||||||
|
|
||||||
if(!active)
|
if(!active)
|
||||||
@@ -164,7 +164,7 @@
|
|||||||
|
|
||||||
if(ores_stored[metal] > 0 && ores_processing[metal] != 0)
|
if(ores_stored[metal] > 0 && ores_processing[metal] != 0)
|
||||||
|
|
||||||
var/datum/ore/O = ore_data[metal]
|
var/ore/O = ore_data[metal]
|
||||||
|
|
||||||
if(!O) continue
|
if(!O) continue
|
||||||
|
|
||||||
@@ -206,24 +206,28 @@
|
|||||||
var/can_make = Clamp(ores_stored[metal],0,sheets_per_tick-sheets)
|
var/can_make = Clamp(ores_stored[metal],0,sheets_per_tick-sheets)
|
||||||
if(can_make%2>0) can_make--
|
if(can_make%2>0) can_make--
|
||||||
|
|
||||||
if(!can_make || ores_stored[metal] < 1)
|
var/material/M = name_to_mineral[O.compresses_to]
|
||||||
|
|
||||||
|
if(!istype(M) || !can_make || ores_stored[metal] < 1)
|
||||||
continue
|
continue
|
||||||
|
|
||||||
for(var/i=0,i<can_make,i+=2)
|
for(var/i=0,i<can_make,i+=2)
|
||||||
ores_stored[metal]-=2
|
ores_stored[metal]-=2
|
||||||
sheets+=2
|
sheets+=2
|
||||||
new O.compresses_to(output.loc)
|
new M.stack_type(output.loc)
|
||||||
|
|
||||||
else if(ores_processing[metal] == 1 && O.smelts_to) //Smelting.
|
else if(ores_processing[metal] == 1 && O.smelts_to) //Smelting.
|
||||||
|
|
||||||
var/can_make = Clamp(ores_stored[metal],0,sheets_per_tick-sheets)
|
var/can_make = Clamp(ores_stored[metal],0,sheets_per_tick-sheets)
|
||||||
if(!can_make || ores_stored[metal] < 1)
|
|
||||||
|
var/material/M = name_to_mineral[O.smelts_to]
|
||||||
|
if(!istype(M) || !can_make || ores_stored[metal] < 1)
|
||||||
continue
|
continue
|
||||||
|
|
||||||
for(var/i=0,i<can_make,i++)
|
for(var/i=0,i<can_make,i++)
|
||||||
ores_stored[metal]--
|
ores_stored[metal]--
|
||||||
sheets++
|
sheets++
|
||||||
new O.smelts_to(output.loc)
|
new M.stack_type(output.loc)
|
||||||
else
|
else
|
||||||
ores_stored[metal]--
|
ores_stored[metal]--
|
||||||
sheets++
|
sheets++
|
||||||
|
|||||||
@@ -89,8 +89,8 @@
|
|||||||
|
|
||||||
stack_storage["glass"] = 0
|
stack_storage["glass"] = 0
|
||||||
stack_paths["glass"] = /obj/item/stack/sheet/glass
|
stack_paths["glass"] = /obj/item/stack/sheet/glass
|
||||||
stack_storage["metal"] = 0
|
stack_storage["steel"] = 0
|
||||||
stack_paths["metal"] = /obj/item/stack/sheet/metal
|
stack_paths["steel"] = /obj/item/stack/sheet/metal
|
||||||
stack_storage["plasteel"] = 0
|
stack_storage["plasteel"] = 0
|
||||||
stack_paths["plasteel"] = /obj/item/stack/sheet/plasteel
|
stack_paths["plasteel"] = /obj/item/stack/sheet/plasteel
|
||||||
|
|
||||||
|
|||||||
@@ -26,66 +26,7 @@
|
|||||||
new /obj/item/device/flashlight/lantern(src)
|
new /obj/item/device/flashlight/lantern(src)
|
||||||
new /obj/item/weapon/shovel(src)
|
new /obj/item/weapon/shovel(src)
|
||||||
new /obj/item/weapon/pickaxe(src)
|
new /obj/item/weapon/pickaxe(src)
|
||||||
new /obj/item/clothing/glasses/orescanner(src)
|
new /obj/item/clothing/glasses/minerals(src)
|
||||||
|
|
||||||
/******************************Goggles*******************************/
|
|
||||||
|
|
||||||
/obj/item/clothing/glasses/orescanner
|
|
||||||
name = "resonance scanners"
|
|
||||||
desc = "A set of goggles geared towards detecting different concentrations of minerals."
|
|
||||||
icon_state = "meson"
|
|
||||||
item_state = "glasses"
|
|
||||||
icon_action_button = "action_meson"
|
|
||||||
toggleable = 1
|
|
||||||
active = 0
|
|
||||||
|
|
||||||
var/mob/living/carbon/human/wearer
|
|
||||||
var/list/ore_nodes = list()
|
|
||||||
|
|
||||||
/obj/item/clothing/glasses/orescanner/New()
|
|
||||||
..()
|
|
||||||
processing_objects |= src
|
|
||||||
|
|
||||||
/obj/item/clothing/glasses/orescanner/Del()
|
|
||||||
processing_objects -= src
|
|
||||||
..()
|
|
||||||
|
|
||||||
/obj/item/clothing/glasses/orescanner/equipped(var/mob/living/carbon/human/M)
|
|
||||||
..()
|
|
||||||
remove_ore_images()
|
|
||||||
wearer = null
|
|
||||||
if(istype(M) && M.glasses == src)
|
|
||||||
wearer = M
|
|
||||||
|
|
||||||
/obj/item/clothing/glasses/orescanner/dropped()
|
|
||||||
..()
|
|
||||||
remove_ore_images()
|
|
||||||
wearer = null
|
|
||||||
|
|
||||||
/obj/item/clothing/glasses/orescanner/process()
|
|
||||||
remove_ore_images()
|
|
||||||
if(active)
|
|
||||||
if(!wearer || wearer.glasses != src)
|
|
||||||
return
|
|
||||||
for(var/obj/effect/mineral/M in range(wearer,6))
|
|
||||||
// Maybe make a cache for this so multiple miners aren't spawning copies.
|
|
||||||
ore_nodes += image(M.icon, loc = get_turf(M), icon_state = M.icon_state)
|
|
||||||
if(ore_nodes.len && wearer.client && wearer.client.images)
|
|
||||||
wearer.client.images |= ore_nodes
|
|
||||||
|
|
||||||
/obj/item/clothing/glasses/orescanner/proc/remove_ore_images()
|
|
||||||
if(!ore_nodes)
|
|
||||||
ore_nodes = list()
|
|
||||||
if(ore_nodes.len)
|
|
||||||
if(wearer && wearer.client && wearer.client.images)
|
|
||||||
for(var/image/I in ore_nodes)
|
|
||||||
wearer.client.images -= I
|
|
||||||
del(I)
|
|
||||||
ore_nodes.Cut()
|
|
||||||
|
|
||||||
/obj/item/clothing/glasses/orescanner/dropped()
|
|
||||||
remove_ore_images()
|
|
||||||
wearer = null
|
|
||||||
|
|
||||||
/******************************Lantern*******************************/
|
/******************************Lantern*******************************/
|
||||||
|
|
||||||
@@ -108,7 +49,7 @@
|
|||||||
icon_state = "pickaxe"
|
icon_state = "pickaxe"
|
||||||
item_state = "jackhammer"
|
item_state = "jackhammer"
|
||||||
w_class = 4.0
|
w_class = 4.0
|
||||||
matter = list("metal" = 3750)
|
matter = list("steel" = 3750)
|
||||||
var/digspeed = 40 //moving the delay to an item var so R&D can make improved picks. --NEO
|
var/digspeed = 40 //moving the delay to an item var so R&D can make improved picks. --NEO
|
||||||
origin_tech = "materials=1;engineering=1"
|
origin_tech = "materials=1;engineering=1"
|
||||||
attack_verb = list("hit", "pierced", "sliced", "attacked")
|
attack_verb = list("hit", "pierced", "sliced", "attacked")
|
||||||
@@ -168,6 +109,7 @@
|
|||||||
origin_tech = "materials=4;phorontech=3;engineering=3"
|
origin_tech = "materials=4;phorontech=3;engineering=3"
|
||||||
desc = "A rock cutter that uses bursts of hot plasma. You could use it to cut limbs off of xenos! Or, you know, mine stuff."
|
desc = "A rock cutter that uses bursts of hot plasma. You could use it to cut limbs off of xenos! Or, you know, mine stuff."
|
||||||
drill_verb = "cutting"
|
drill_verb = "cutting"
|
||||||
|
drill_sound = 'sound/items/Welder.ogg'
|
||||||
sharp = 1
|
sharp = 1
|
||||||
edge = 1
|
edge = 1
|
||||||
|
|
||||||
@@ -210,7 +152,7 @@
|
|||||||
throwforce = 4.0
|
throwforce = 4.0
|
||||||
item_state = "shovel"
|
item_state = "shovel"
|
||||||
w_class = 3.0
|
w_class = 3.0
|
||||||
matter = list("metal" = 50)
|
matter = list("steel" = 50)
|
||||||
origin_tech = "materials=1;engineering=1"
|
origin_tech = "materials=1;engineering=1"
|
||||||
attack_verb = list("bashed", "bludgeoned", "thrashed", "whacked")
|
attack_verb = list("bashed", "bludgeoned", "thrashed", "whacked")
|
||||||
sharp = 0
|
sharp = 0
|
||||||
|
|||||||
@@ -11,7 +11,7 @@
|
|||||||
density = 1
|
density = 1
|
||||||
blocks_air = 1
|
blocks_air = 1
|
||||||
temperature = T0C
|
temperature = T0C
|
||||||
var/mineral/mineral
|
var/ore/mineral
|
||||||
var/mined_ore = 0
|
var/mined_ore = 0
|
||||||
var/last_act = 0
|
var/last_act = 0
|
||||||
var/emitter_blasts_taken = 0 // EMITTER MINING! Muhehe.
|
var/emitter_blasts_taken = 0 // EMITTER MINING! Muhehe.
|
||||||
@@ -375,12 +375,9 @@
|
|||||||
/turf/simulated/mineral/random/New()
|
/turf/simulated/mineral/random/New()
|
||||||
if (prob(mineralChance) && !mineral)
|
if (prob(mineralChance) && !mineral)
|
||||||
var/mineral_name = pickweight(mineralSpawnChanceList) //temp mineral name
|
var/mineral_name = pickweight(mineralSpawnChanceList) //temp mineral name
|
||||||
|
mineral_name = lowertext(mineral_name)
|
||||||
if(!name_to_mineral)
|
if (mineral_name && (mineral_name in ore_data))
|
||||||
SetupMinerals()
|
mineral = ore_data[mineral_name]
|
||||||
|
|
||||||
if (mineral_name && mineral_name in name_to_mineral)
|
|
||||||
mineral = name_to_mineral[mineral_name]
|
|
||||||
UpdateMineral()
|
UpdateMineral()
|
||||||
|
|
||||||
. = ..()
|
. = ..()
|
||||||
|
|||||||
@@ -5,10 +5,15 @@
|
|||||||
mouse_opacity = 0
|
mouse_opacity = 0
|
||||||
density = 0
|
density = 0
|
||||||
anchored = 1
|
anchored = 1
|
||||||
|
var/image/scanner_image
|
||||||
|
|
||||||
/obj/effect/mineral/New(var/newloc, var/mineral/M)
|
/obj/effect/mineral/New(var/newloc, var/ore/M)
|
||||||
..(newloc)
|
..(newloc)
|
||||||
name = "[M.display_name] deposit"
|
name = "[M.display_name] deposit"
|
||||||
icon_state = "rock_[M.name]"
|
icon_state = "rock_[M.name]"
|
||||||
var/turf/T = get_turf(src)
|
var/turf/T = get_turf(src)
|
||||||
layer = T.layer+0.1
|
layer = T.layer+0.1
|
||||||
|
|
||||||
|
var/ore/O = ore_data[M.name]
|
||||||
|
if(O)
|
||||||
|
scanner_image = image(icon, loc = get_turf(src), icon_state = (O.scan_icon ? O.scan_icon : icon_state))
|
||||||
@@ -2,71 +2,95 @@ var/list/name_to_mineral
|
|||||||
|
|
||||||
/proc/SetupMinerals()
|
/proc/SetupMinerals()
|
||||||
name_to_mineral = list()
|
name_to_mineral = list()
|
||||||
for(var/type in typesof(/mineral) - /mineral)
|
for(var/type in typesof(/material) - /material)
|
||||||
var/mineral/new_mineral = new type
|
var/material/new_mineral = new type
|
||||||
if(!new_mineral.name)
|
if(!new_mineral.name)
|
||||||
continue
|
continue
|
||||||
name_to_mineral[new_mineral.name] = new_mineral
|
name_to_mineral[lowertext(new_mineral.name)] = new_mineral
|
||||||
return 1
|
return 1
|
||||||
|
|
||||||
/mineral
|
/material
|
||||||
var/name // Tag for use in overlay generation/list population .
|
var/name // Tag for use in overlay generation/list population .
|
||||||
var/display_name // What am I called?
|
var/walltype_solid
|
||||||
var/result_amount // How much ore?
|
var/walltype_false
|
||||||
var/spread = 1 // Does this type of deposit spread?
|
var/doortype
|
||||||
var/spread_chance // Chance of spreading in any direction
|
var/stack_type
|
||||||
var/ore // Path to the ore produced when tile is mined.
|
var/unmeltable
|
||||||
|
var/cut_delay
|
||||||
|
|
||||||
|
/material/uranium
|
||||||
|
name = "uranium"
|
||||||
|
walltype_solid = /turf/simulated/wall/mineral/uranium
|
||||||
|
walltype_false = /obj/structure/falsewall/uranium
|
||||||
|
doortype = /obj/machinery/door/airlock/uranium
|
||||||
|
stack_type = /obj/item/stack/sheet/mineral/uranium
|
||||||
|
|
||||||
/mineral/New()
|
/material/diamond
|
||||||
. = ..()
|
name = "diamond"
|
||||||
if(!display_name)
|
walltype_solid = /turf/simulated/wall/mineral/diamond
|
||||||
display_name = name
|
walltype_false = /obj/structure/falsewall/diamond
|
||||||
|
doortype = /obj/machinery/door/airlock/diamond
|
||||||
|
stack_type = /obj/item/stack/sheet/mineral/diamond
|
||||||
|
unmeltable = 1
|
||||||
|
cut_delay = 60
|
||||||
|
|
||||||
/mineral/uranium
|
/material/gold
|
||||||
name = "Uranium"
|
name = "gold"
|
||||||
result_amount = 5
|
walltype_solid = /turf/simulated/wall/mineral/gold
|
||||||
spread_chance = 10
|
walltype_false = /obj/structure/falsewall/gold
|
||||||
ore = /obj/item/weapon/ore/uranium
|
doortype = /obj/machinery/door/airlock/gold
|
||||||
|
stack_type = /obj/item/stack/sheet/mineral/gold
|
||||||
|
|
||||||
/mineral/platinum
|
/material/silver
|
||||||
name = "Platinum"
|
name = "silver"
|
||||||
result_amount = 5
|
walltype_solid = /turf/simulated/wall/mineral/silver
|
||||||
spread_chance = 10
|
walltype_false = /obj/structure/falsewall/silver
|
||||||
ore = /obj/item/weapon/ore/osmium
|
doortype = /obj/machinery/door/airlock/silver
|
||||||
|
stack_type = /obj/item/stack/sheet/mineral/silver
|
||||||
|
|
||||||
/mineral/iron
|
/material/phoron
|
||||||
name = "Iron"
|
name = "phoron"
|
||||||
result_amount = 5
|
walltype_solid = /turf/simulated/wall/mineral/phoron
|
||||||
spread_chance = 25
|
walltype_false = /obj/structure/falsewall/phoron
|
||||||
ore = /obj/item/weapon/ore/iron
|
doortype = /obj/machinery/door/airlock/phoron
|
||||||
|
stack_type = /obj/item/stack/sheet/mineral/phoron
|
||||||
|
|
||||||
/mineral/coal
|
/material/sandstone
|
||||||
name = "Coal"
|
name = "sandstone"
|
||||||
result_amount = 5
|
walltype_solid = /turf/simulated/wall/mineral/sandstone
|
||||||
spread_chance = 25
|
walltype_false = /obj/structure/falsewall/sandstone
|
||||||
ore = /obj/item/weapon/ore/coal
|
stack_type = /obj/item/stack/sheet/mineral/sandstone
|
||||||
|
|
||||||
/mineral/diamond
|
/material/steel
|
||||||
name = "Diamond"
|
name = "steel"
|
||||||
result_amount = 5
|
stack_type = /obj/item/stack/sheet/metal
|
||||||
spread_chance = 10
|
walltype_solid = /turf/simulated/wall
|
||||||
ore = /obj/item/weapon/ore/diamond
|
walltype_false = /obj/structure/falsewall
|
||||||
|
|
||||||
/mineral/gold
|
/material/glass
|
||||||
name = "Gold"
|
name = "glass"
|
||||||
result_amount = 5
|
stack_type = /obj/item/stack/sheet/glass
|
||||||
spread_chance = 10
|
|
||||||
ore = /obj/item/weapon/ore/gold
|
|
||||||
|
|
||||||
/mineral/silver
|
/material/plastic
|
||||||
name = "Silver"
|
name = "plastic"
|
||||||
result_amount = 5
|
stack_type = /obj/item/stack/sheet/mineral/plastic
|
||||||
spread_chance = 10
|
|
||||||
ore = /obj/item/weapon/ore/silver
|
|
||||||
|
|
||||||
/mineral/phoron
|
/material/osmium
|
||||||
name = "Phoron"
|
name = "osmium"
|
||||||
result_amount = 5
|
stack_type = /obj/item/stack/sheet/mineral/osmium
|
||||||
spread_chance = 25
|
|
||||||
ore = /obj/item/weapon/ore/phoron
|
/material/tritium
|
||||||
|
name = "tritium"
|
||||||
|
stack_type = /obj/item/stack/sheet/mineral/tritium
|
||||||
|
|
||||||
|
/material/mhydrogen
|
||||||
|
name = "mhydrogen"
|
||||||
|
stack_type = /obj/item/stack/sheet/mineral/mhydrogen
|
||||||
|
|
||||||
|
/material/platinum
|
||||||
|
name = "platinum"
|
||||||
|
stack_type = /obj/item/stack/sheet/mineral/platinum
|
||||||
|
|
||||||
|
/material/iron
|
||||||
|
name = "iron"
|
||||||
|
stack_type = /obj/item/stack/sheet/mineral/iron
|
||||||
|
|||||||
@@ -17,7 +17,7 @@
|
|||||||
var/amt_uranium = 0
|
var/amt_uranium = 0
|
||||||
var/newCoins = 0 //how many coins the machine made in it's last load
|
var/newCoins = 0 //how many coins the machine made in it's last load
|
||||||
var/processing = 0
|
var/processing = 0
|
||||||
var/chosen = "metal" //which material will be used to make coins
|
var/chosen = "steel" //which material will be used to make coins
|
||||||
var/coinsToProduce = 10
|
var/coinsToProduce = 10
|
||||||
|
|
||||||
|
|
||||||
@@ -81,7 +81,7 @@
|
|||||||
else
|
else
|
||||||
dat += text("<A href='?src=\ref[src];choose=silver'>Choose</A>")
|
dat += text("<A href='?src=\ref[src];choose=silver'>Choose</A>")
|
||||||
dat += text("<br><font color='#555555'><b>Iron inserted: </b>[amt_iron]</font> ")
|
dat += text("<br><font color='#555555'><b>Iron inserted: </b>[amt_iron]</font> ")
|
||||||
if (chosen == "metal")
|
if (chosen == "steel")
|
||||||
dat += text("chosen")
|
dat += text("chosen")
|
||||||
else
|
else
|
||||||
dat += text("<A href='?src=\ref[src];choose=metal'>Choose</A>")
|
dat += text("<A href='?src=\ref[src];choose=metal'>Choose</A>")
|
||||||
@@ -133,7 +133,7 @@
|
|||||||
icon_state = "coinpress1"
|
icon_state = "coinpress1"
|
||||||
var/obj/item/weapon/moneybag/M
|
var/obj/item/weapon/moneybag/M
|
||||||
switch(chosen)
|
switch(chosen)
|
||||||
if("metal")
|
if("steel")
|
||||||
while(amt_iron > 0 && coinsToProduce > 0)
|
while(amt_iron > 0 && coinsToProduce > 0)
|
||||||
if (locate(/obj/item/weapon/moneybag,output.loc))
|
if (locate(/obj/item/weapon/moneybag,output.loc))
|
||||||
M = locate(/obj/item/weapon/moneybag,output.loc)
|
M = locate(/obj/item/weapon/moneybag,output.loc)
|
||||||
|
|||||||
@@ -4,71 +4,71 @@
|
|||||||
icon_state = "ore2"
|
icon_state = "ore2"
|
||||||
w_class = 2
|
w_class = 2
|
||||||
var/datum/geosample/geologic_data
|
var/datum/geosample/geologic_data
|
||||||
var/oretag
|
var/mineral
|
||||||
|
|
||||||
/obj/item/weapon/ore/uranium
|
/obj/item/weapon/ore/uranium
|
||||||
name = "pitchblende"
|
name = "pitchblende"
|
||||||
icon_state = "Uranium ore"
|
icon_state = "ore_uranium"
|
||||||
origin_tech = "materials=5"
|
origin_tech = "materials=5"
|
||||||
oretag = "uranium"
|
mineral = "uranium"
|
||||||
|
|
||||||
/obj/item/weapon/ore/iron
|
/obj/item/weapon/ore/iron
|
||||||
name = "hematite"
|
name = "hematite"
|
||||||
icon_state = "Iron ore"
|
icon_state = "ore_iron"
|
||||||
origin_tech = "materials=1"
|
origin_tech = "materials=1"
|
||||||
oretag = "hematite"
|
mineral = "hematite"
|
||||||
|
|
||||||
/obj/item/weapon/ore/coal
|
/obj/item/weapon/ore/coal
|
||||||
name = "carbonaceous rock"
|
name = "carbonaceous rock"
|
||||||
icon_state = "Coal ore"
|
icon_state = "ore_coal"
|
||||||
origin_tech = "materials=1"
|
origin_tech = "materials=1"
|
||||||
oretag = "coal"
|
mineral = "coal"
|
||||||
|
|
||||||
/obj/item/weapon/ore/glass
|
/obj/item/weapon/ore/glass
|
||||||
name = "impure silicates"
|
name = "impure silicates"
|
||||||
icon_state = "Glass ore"
|
icon_state = "ore_glass"
|
||||||
origin_tech = "materials=1"
|
origin_tech = "materials=1"
|
||||||
oretag = "sand"
|
mineral = "sand"
|
||||||
|
|
||||||
/obj/item/weapon/ore/phoron
|
/obj/item/weapon/ore/phoron
|
||||||
name = "phoron crystals"
|
name = "phoron crystals"
|
||||||
icon_state = "Phoron ore"
|
icon_state = "ore_phoron"
|
||||||
origin_tech = "materials=2"
|
origin_tech = "materials=2"
|
||||||
oretag = "phoron"
|
mineral = "phoron"
|
||||||
|
|
||||||
/obj/item/weapon/ore/silver
|
/obj/item/weapon/ore/silver
|
||||||
name = "native silver ore"
|
name = "native silver ore"
|
||||||
icon_state = "Silver ore"
|
icon_state = "ore_silver"
|
||||||
origin_tech = "materials=3"
|
origin_tech = "materials=3"
|
||||||
oretag = "silver"
|
mineral = "silver"
|
||||||
|
|
||||||
/obj/item/weapon/ore/gold
|
/obj/item/weapon/ore/gold
|
||||||
name = "native gold ore"
|
name = "native gold ore"
|
||||||
icon_state = "Gold ore"
|
icon_state = "ore_gold"
|
||||||
origin_tech = "materials=4"
|
origin_tech = "materials=4"
|
||||||
oretag = "gold"
|
mineral = "gold"
|
||||||
|
|
||||||
/obj/item/weapon/ore/diamond
|
/obj/item/weapon/ore/diamond
|
||||||
name = "diamonds"
|
name = "diamonds"
|
||||||
icon_state = "Diamond ore"
|
icon_state = "ore_diamond"
|
||||||
origin_tech = "materials=6"
|
origin_tech = "materials=6"
|
||||||
oretag = "diamond"
|
mineral = "diamond"
|
||||||
|
|
||||||
/obj/item/weapon/ore/osmium
|
/obj/item/weapon/ore/osmium
|
||||||
name = "raw platinum"
|
name = "raw platinum"
|
||||||
icon_state = "Platinum ore"
|
icon_state = "ore_platinum"
|
||||||
oretag = "platinum"
|
mineral = "platinum"
|
||||||
|
|
||||||
/obj/item/weapon/ore/hydrogen
|
/obj/item/weapon/ore/hydrogen
|
||||||
name = "raw hydrogen"
|
name = "raw hydrogen"
|
||||||
icon_state = "Phazon"
|
icon_state = "ore_hydrogen"
|
||||||
oretag = "hydrogen"
|
mineral = "mhydrogen"
|
||||||
|
|
||||||
/obj/item/weapon/ore/slag
|
/obj/item/weapon/ore/slag
|
||||||
name = "Slag"
|
name = "Slag"
|
||||||
desc = "Completely useless"
|
desc = "Someone screwed up..."
|
||||||
icon_state = "slag"
|
icon_state = "slag"
|
||||||
oretag = "slag"
|
mineral = "slag"
|
||||||
|
|
||||||
/obj/item/weapon/ore/New()
|
/obj/item/weapon/ore/New()
|
||||||
pixel_x = rand(0,16)-8
|
pixel_x = rand(0,16)-8
|
||||||
|
|||||||
@@ -1,52 +1,133 @@
|
|||||||
/datum/ore
|
var/global/list/ore_data = list()
|
||||||
var/oretag
|
|
||||||
|
/ore
|
||||||
|
var/name
|
||||||
|
var/display_name
|
||||||
var/alloy
|
var/alloy
|
||||||
var/smelts_to
|
var/smelts_to
|
||||||
var/compresses_to
|
var/compresses_to
|
||||||
|
var/result_amount // How much ore?
|
||||||
|
var/spread = 1 // Does this type of deposit spread?
|
||||||
|
var/spread_chance // Chance of spreading in any direction
|
||||||
|
var/ore // Path to the ore produced when tile is mined.
|
||||||
|
var/scan_icon // Overlay for ore scanners.
|
||||||
|
// Xenoarch stuff. No idea what it's for, just refactored it to be less awful.
|
||||||
|
var/list/xarch_ages = list(
|
||||||
|
"thousand" = 999,
|
||||||
|
"million" = 999
|
||||||
|
)
|
||||||
|
var/xarch_source_mineral = "iron"
|
||||||
|
|
||||||
/datum/ore/uranium
|
/ore/New()
|
||||||
smelts_to = /obj/item/stack/sheet/mineral/uranium
|
. = ..()
|
||||||
oretag = "uranium"
|
if(!display_name)
|
||||||
|
display_name = name
|
||||||
|
|
||||||
/datum/ore/iron
|
/ore/uranium
|
||||||
smelts_to = /obj/item/stack/sheet/mineral/iron
|
name = "uranium"
|
||||||
|
display_name = "pitchblende"
|
||||||
|
smelts_to = "uranium"
|
||||||
|
result_amount = 5
|
||||||
|
spread_chance = 10
|
||||||
|
ore = /obj/item/weapon/ore/uranium
|
||||||
|
scan_icon = "mineral_uncommon"
|
||||||
|
xarch_ages = list(
|
||||||
|
"thousand" = 999,
|
||||||
|
"million" = 704
|
||||||
|
)
|
||||||
|
xarch_source_mineral = "potassium"
|
||||||
|
|
||||||
|
/ore/hematite
|
||||||
|
name = "iron"
|
||||||
|
display_name = "hematite"
|
||||||
|
smelts_to = "iron"
|
||||||
alloy = 1
|
alloy = 1
|
||||||
oretag = "hematite"
|
result_amount = 5
|
||||||
|
spread_chance = 25
|
||||||
|
ore = /obj/item/weapon/ore/iron
|
||||||
|
scan_icon = "mineral_common"
|
||||||
|
|
||||||
/datum/ore/coal
|
/ore/coal
|
||||||
smelts_to = /obj/item/stack/sheet/mineral/plastic
|
name = "coal"
|
||||||
|
display_name = "carbonaceous rock"
|
||||||
|
smelts_to = "plastic"
|
||||||
alloy = 1
|
alloy = 1
|
||||||
oretag = "coal"
|
result_amount = 5
|
||||||
|
spread_chance = 25
|
||||||
|
ore = /obj/item/weapon/ore/coal
|
||||||
|
scan_icon = "mineral_common"
|
||||||
|
|
||||||
/datum/ore/glass
|
/ore/glass
|
||||||
smelts_to = /obj/item/stack/sheet/glass
|
name = "sand"
|
||||||
compresses_to = /obj/item/stack/sheet/mineral/sandstone
|
display_name = "impure silicates"
|
||||||
oretag = "sand"
|
smelts_to = "glass"
|
||||||
|
compresses_to = "sandstone"
|
||||||
|
|
||||||
/datum/ore/phoron
|
/ore/phoron
|
||||||
|
name = "phoron"
|
||||||
|
display_name = "phoron crystals"
|
||||||
|
compresses_to = "phoron"
|
||||||
//smelts_to = something that explodes violently on the conveyor, huhuhuhu
|
//smelts_to = something that explodes violently on the conveyor, huhuhuhu
|
||||||
compresses_to = /obj/item/stack/sheet/mineral/phoron
|
result_amount = 5
|
||||||
oretag = "phoron"
|
spread_chance = 25
|
||||||
|
ore = /obj/item/weapon/ore/phoron
|
||||||
|
scan_icon = "mineral_uncommon"
|
||||||
|
xarch_ages = list(
|
||||||
|
"thousand" = 999,
|
||||||
|
"million" = 999,
|
||||||
|
"billion" = 13,
|
||||||
|
"billion_lower" = 10
|
||||||
|
)
|
||||||
|
xarch_source_mineral = "phoron"
|
||||||
|
|
||||||
/datum/ore/silver
|
/ore/silver
|
||||||
smelts_to = /obj/item/stack/sheet/mineral/silver
|
name = "silver"
|
||||||
oretag = "silver"
|
display_name = "native silver"
|
||||||
|
smelts_to = "silver"
|
||||||
|
result_amount = 5
|
||||||
|
spread_chance = 10
|
||||||
|
ore = /obj/item/weapon/ore/silver
|
||||||
|
scan_icon = "mineral_uncommon"
|
||||||
|
|
||||||
/datum/ore/gold
|
/ore/gold
|
||||||
smelts_to = /obj/item/stack/sheet/mineral/gold
|
smelts_to = "gold"
|
||||||
oretag = "gold"
|
name = "gold"
|
||||||
|
display_name = "native gold"
|
||||||
|
result_amount = 5
|
||||||
|
spread_chance = 10
|
||||||
|
ore = /obj/item/weapon/ore/gold
|
||||||
|
scan_icon = "mineral_uncommon"
|
||||||
|
xarch_ages = list(
|
||||||
|
"thousand" = 999,
|
||||||
|
"million" = 999,
|
||||||
|
"billion" = 4,
|
||||||
|
"billion_lower" = 3
|
||||||
|
)
|
||||||
|
|
||||||
/datum/ore/diamond
|
/ore/diamond
|
||||||
compresses_to = /obj/item/stack/sheet/mineral/diamond
|
name = "diamonds"
|
||||||
oretag = "diamond"
|
display_name = "diamond"
|
||||||
|
compresses_to = "diamond"
|
||||||
|
result_amount = 5
|
||||||
|
spread_chance = 10
|
||||||
|
ore = /obj/item/weapon/ore/diamond
|
||||||
|
scan_icon = "mineral_rare"
|
||||||
|
xarch_source_mineral = "nitrogen"
|
||||||
|
|
||||||
/datum/ore/osmium
|
/ore/platinum
|
||||||
smelts_to = /obj/item/stack/sheet/mineral/platinum
|
name = "platinum"
|
||||||
compresses_to = /obj/item/stack/sheet/mineral/osmium
|
display_name = "raw platinum"
|
||||||
|
smelts_to = "platinum"
|
||||||
|
compresses_to = "osmium"
|
||||||
alloy = 1
|
alloy = 1
|
||||||
oretag = "platinum"
|
result_amount = 5
|
||||||
|
spread_chance = 10
|
||||||
|
ore = /obj/item/weapon/ore/osmium
|
||||||
|
scan_icon = "mineral_rare"
|
||||||
|
|
||||||
/datum/ore/hydrogen
|
/ore/hydrogen
|
||||||
smelts_to = /obj/item/stack/sheet/mineral/tritium
|
name = "mhydrogen"
|
||||||
compresses_to = /obj/item/stack/sheet/mineral/mhydrogen
|
display_name = "metallic hydrogen"
|
||||||
oretag = "hydrogen"
|
smelts_to = "tritium"
|
||||||
|
compresses_to = "mhydrogen"
|
||||||
|
scan_icon = "mineral_rare"
|
||||||
@@ -25,7 +25,7 @@
|
|||||||
w_class = 3
|
w_class = 3
|
||||||
origin_tech = "biotech=3"
|
origin_tech = "biotech=3"
|
||||||
|
|
||||||
var/list/construction_cost = list("metal"=1000,"glass"=500)
|
var/list/construction_cost = list("steel"=1000,"glass"=500)
|
||||||
var/construction_time = 75
|
var/construction_time = 75
|
||||||
//these vars are so the mecha fabricator doesn't shit itself anymore. --NEO
|
//these vars are so the mecha fabricator doesn't shit itself anymore. --NEO
|
||||||
|
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
w_class = 3
|
w_class = 3
|
||||||
origin_tech = "engineering=4;materials=4;bluespace=2;programming=4"
|
origin_tech = "engineering=4;materials=4;bluespace=2;programming=4"
|
||||||
|
|
||||||
construction_cost = list("metal"=500,"glass"=500,"silver"=200,"gold"=200,"phoron"=100,"diamond"=10)
|
construction_cost = list("steel"=500,"glass"=500,"silver"=200,"gold"=200,"phoron"=100,"diamond"=10)
|
||||||
construction_time = 75
|
construction_time = 75
|
||||||
var/searching = 0
|
var/searching = 0
|
||||||
var/askDelay = 10 * 60 * 1
|
var/askDelay = 10 * 60 * 1
|
||||||
|
|||||||
@@ -12,7 +12,7 @@
|
|||||||
w_class = 2.0
|
w_class = 2.0
|
||||||
throw_speed = 5
|
throw_speed = 5
|
||||||
throw_range = 10
|
throw_range = 10
|
||||||
matter = list("metal" = 500, "glass" = 200)
|
matter = list("steel" = 500, "glass" = 200)
|
||||||
origin_tech = "magnets=2;biotech=1;engineering=2"
|
origin_tech = "magnets=2;biotech=1;engineering=2"
|
||||||
var/mode = 1;
|
var/mode = 1;
|
||||||
|
|
||||||
|
|||||||
@@ -218,7 +218,7 @@
|
|||||||
icon = 'icons/obj/robot_component.dmi'
|
icon = 'icons/obj/robot_component.dmi'
|
||||||
icon_state = "working"
|
icon_state = "working"
|
||||||
construction_time = 200
|
construction_time = 200
|
||||||
construction_cost = list("metal"=5000)
|
construction_cost = list("steel"=5000)
|
||||||
var/brute = 0
|
var/brute = 0
|
||||||
var/burn = 0
|
var/burn = 0
|
||||||
var/icon_state_broken = "broken"
|
var/icon_state_broken = "broken"
|
||||||
|
|||||||
@@ -20,7 +20,7 @@
|
|||||||
w_class = 1.0
|
w_class = 1.0
|
||||||
throw_speed = 7
|
throw_speed = 7
|
||||||
throw_range = 15
|
throw_range = 15
|
||||||
matter = list("metal" = 10)
|
matter = list("steel" = 10)
|
||||||
var/colour = "black" //what colour the ink is!
|
var/colour = "black" //what colour the ink is!
|
||||||
pressure_resistance = 2
|
pressure_resistance = 2
|
||||||
|
|
||||||
|
|||||||
@@ -124,7 +124,7 @@ var/global/photo_count = 0
|
|||||||
w_class = 2.0
|
w_class = 2.0
|
||||||
flags = CONDUCT
|
flags = CONDUCT
|
||||||
slot_flags = SLOT_BELT
|
slot_flags = SLOT_BELT
|
||||||
matter = list("metal" = 2000)
|
matter = list("steel" = 2000)
|
||||||
var/pictures_max = 10
|
var/pictures_max = 10
|
||||||
var/pictures_left = 10
|
var/pictures_left = 10
|
||||||
var/on = 1
|
var/on = 1
|
||||||
|
|||||||
@@ -8,7 +8,7 @@
|
|||||||
w_class = 1.0
|
w_class = 1.0
|
||||||
throw_speed = 7
|
throw_speed = 7
|
||||||
throw_range = 15
|
throw_range = 15
|
||||||
matter = list("metal" = 60)
|
matter = list("steel" = 60)
|
||||||
item_color = "cargo"
|
item_color = "cargo"
|
||||||
pressure_resistance = 2
|
pressure_resistance = 2
|
||||||
attack_verb = list("stamped")
|
attack_verb = list("stamped")
|
||||||
|
|||||||
@@ -210,7 +210,7 @@ proc/cardinalrange(var/center)
|
|||||||
throwforce = 5
|
throwforce = 5
|
||||||
throw_speed = 1
|
throw_speed = 1
|
||||||
throw_range = 2
|
throw_range = 2
|
||||||
matter = list("metal" = 100, "waste" = 2000)
|
matter = list("steel" = 100, "waste" = 2000)
|
||||||
|
|
||||||
/obj/item/device/am_shielding_container/attackby(var/obj/item/I, var/mob/user)
|
/obj/item/device/am_shielding_container/attackby(var/obj/item/I, var/mob/user)
|
||||||
if(istype(I, /obj/item/device/multitool) && istype(src.loc,/turf))
|
if(istype(I, /obj/item/device/multitool) && istype(src.loc,/turf))
|
||||||
|
|||||||
@@ -476,7 +476,7 @@ obj/structure/cable/proc/cableColor(var/colorC)
|
|||||||
w_class = 2.0
|
w_class = 2.0
|
||||||
throw_speed = 2
|
throw_speed = 2
|
||||||
throw_range = 5
|
throw_range = 5
|
||||||
matter = list("metal" = 50, "glass" = 20)
|
matter = list("steel" = 50, "glass" = 20)
|
||||||
flags = CONDUCT
|
flags = CONDUCT
|
||||||
slot_flags = SLOT_BELT
|
slot_flags = SLOT_BELT
|
||||||
item_state = "coil"
|
item_state = "coil"
|
||||||
|
|||||||
@@ -643,7 +643,7 @@
|
|||||||
var/status = 0 // LIGHT_OK, LIGHT_BURNED or LIGHT_BROKEN
|
var/status = 0 // LIGHT_OK, LIGHT_BURNED or LIGHT_BROKEN
|
||||||
var/base_state
|
var/base_state
|
||||||
var/switchcount = 0 // number of times switched
|
var/switchcount = 0 // number of times switched
|
||||||
matter = list("metal" = 60)
|
matter = list("steel" = 60)
|
||||||
var/rigged = 0 // true if rigged to explode
|
var/rigged = 0 // true if rigged to explode
|
||||||
var/brightness = 2 //how much light it gives off
|
var/brightness = 2 //how much light it gives off
|
||||||
|
|
||||||
|
|||||||
@@ -66,7 +66,7 @@
|
|||||||
flags = CONDUCT
|
flags = CONDUCT
|
||||||
slot_flags = SLOT_BELT
|
slot_flags = SLOT_BELT
|
||||||
item_state = "syringe_kit"
|
item_state = "syringe_kit"
|
||||||
matter = list("metal" = 500)
|
matter = list("steel" = 500)
|
||||||
throwforce = 5
|
throwforce = 5
|
||||||
w_class = 2
|
w_class = 2
|
||||||
throw_speed = 4
|
throw_speed = 4
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
icon_state = "T38"
|
icon_state = "T38"
|
||||||
caliber = "357"
|
caliber = "357"
|
||||||
ammo_type = /obj/item/ammo_casing/a357
|
ammo_type = /obj/item/ammo_casing/a357
|
||||||
matter = list("metal" = 1260)
|
matter = list("steel" = 1260)
|
||||||
max_ammo = 7
|
max_ammo = 7
|
||||||
multiple_sprites = 1
|
multiple_sprites = 1
|
||||||
|
|
||||||
@@ -14,7 +14,7 @@
|
|||||||
name = "speed loader (.38)"
|
name = "speed loader (.38)"
|
||||||
icon_state = "38"
|
icon_state = "38"
|
||||||
caliber = "38"
|
caliber = "38"
|
||||||
matter = list("metal" = 360)
|
matter = list("steel" = 360)
|
||||||
ammo_type = /obj/item/ammo_casing/c38
|
ammo_type = /obj/item/ammo_casing/c38
|
||||||
max_ammo = 6
|
max_ammo = 6
|
||||||
multiple_sprites = 1
|
multiple_sprites = 1
|
||||||
@@ -28,7 +28,7 @@
|
|||||||
icon_state = "45"
|
icon_state = "45"
|
||||||
mag_type = MAGAZINE
|
mag_type = MAGAZINE
|
||||||
ammo_type = /obj/item/ammo_casing/c45
|
ammo_type = /obj/item/ammo_casing/c45
|
||||||
matter = list("metal" = 525) //metal costs are very roughly based around 1 .45 casing = 75 metal
|
matter = list("steel" = 525) //metal costs are very roughly based around 1 .45 casing = 75 metal
|
||||||
caliber = ".45"
|
caliber = ".45"
|
||||||
max_ammo = 7
|
max_ammo = 7
|
||||||
multiple_sprites = 1
|
multiple_sprites = 1
|
||||||
@@ -49,7 +49,7 @@
|
|||||||
icon_state = "9x19p"
|
icon_state = "9x19p"
|
||||||
origin_tech = "combat=2"
|
origin_tech = "combat=2"
|
||||||
mag_type = MAGAZINE
|
mag_type = MAGAZINE
|
||||||
matter = list("metal" = 600)
|
matter = list("steel" = 600)
|
||||||
caliber = "9mm"
|
caliber = "9mm"
|
||||||
ammo_type = /obj/item/ammo_casing/c9mm
|
ammo_type = /obj/item/ammo_casing/c9mm
|
||||||
max_ammo = 10
|
max_ammo = 10
|
||||||
@@ -65,7 +65,7 @@
|
|||||||
name = "ammunition Box (9mm)"
|
name = "ammunition Box (9mm)"
|
||||||
icon_state = "9mm"
|
icon_state = "9mm"
|
||||||
origin_tech = "combat=2"
|
origin_tech = "combat=2"
|
||||||
matter = list("metal" = 1800)
|
matter = list("steel" = 1800)
|
||||||
caliber = "9mm"
|
caliber = "9mm"
|
||||||
ammo_type = /obj/item/ammo_casing/c9mm
|
ammo_type = /obj/item/ammo_casing/c9mm
|
||||||
max_ammo = 30
|
max_ammo = 30
|
||||||
@@ -78,7 +78,7 @@
|
|||||||
icon_state = "9mmt"
|
icon_state = "9mmt"
|
||||||
mag_type = MAGAZINE
|
mag_type = MAGAZINE
|
||||||
ammo_type = /obj/item/ammo_casing/c9mm
|
ammo_type = /obj/item/ammo_casing/c9mm
|
||||||
matter = list("metal" = 1200)
|
matter = list("steel" = 1200)
|
||||||
caliber = "9mm"
|
caliber = "9mm"
|
||||||
max_ammo = 20
|
max_ammo = 20
|
||||||
multiple_sprites = 1
|
multiple_sprites = 1
|
||||||
@@ -95,7 +95,7 @@
|
|||||||
icon_state = "9mm"
|
icon_state = "9mm"
|
||||||
origin_tech = "combat=2"
|
origin_tech = "combat=2"
|
||||||
caliber = ".45"
|
caliber = ".45"
|
||||||
matter = list("metal" = 2250)
|
matter = list("steel" = 2250)
|
||||||
ammo_type = /obj/item/ammo_casing/c45
|
ammo_type = /obj/item/ammo_casing/c45
|
||||||
max_ammo = 30
|
max_ammo = 30
|
||||||
|
|
||||||
@@ -108,7 +108,7 @@
|
|||||||
origin_tech = "combat=2"
|
origin_tech = "combat=2"
|
||||||
mag_type = MAGAZINE
|
mag_type = MAGAZINE
|
||||||
caliber = "12mm"
|
caliber = "12mm"
|
||||||
matter = list("metal" = 1500)
|
matter = list("steel" = 1500)
|
||||||
ammo_type = "/obj/item/ammo_casing/a12mm"
|
ammo_type = "/obj/item/ammo_casing/a12mm"
|
||||||
max_ammo = 20
|
max_ammo = 20
|
||||||
multiple_sprites = 1
|
multiple_sprites = 1
|
||||||
@@ -122,7 +122,7 @@
|
|||||||
origin_tech = "combat=2"
|
origin_tech = "combat=2"
|
||||||
mag_type = MAGAZINE
|
mag_type = MAGAZINE
|
||||||
caliber = "a556"
|
caliber = "a556"
|
||||||
matter = list("metal" = 1800)
|
matter = list("steel" = 1800)
|
||||||
ammo_type = /obj/item/ammo_casing/a556
|
ammo_type = /obj/item/ammo_casing/a556
|
||||||
max_ammo = 10
|
max_ammo = 10
|
||||||
multiple_sprites = 1
|
multiple_sprites = 1
|
||||||
@@ -136,7 +136,7 @@
|
|||||||
origin_tech = "combat=2"
|
origin_tech = "combat=2"
|
||||||
mag_type = MAGAZINE
|
mag_type = MAGAZINE
|
||||||
caliber = ".50"
|
caliber = ".50"
|
||||||
matter = list("metal" = 1260)
|
matter = list("steel" = 1260)
|
||||||
ammo_type = /obj/item/ammo_casing/a50
|
ammo_type = /obj/item/ammo_casing/a50
|
||||||
max_ammo = 7
|
max_ammo = 7
|
||||||
multiple_sprites = 1
|
multiple_sprites = 1
|
||||||
@@ -162,7 +162,7 @@
|
|||||||
origin_tech = "combat=2"
|
origin_tech = "combat=2"
|
||||||
mag_type = MAGAZINE
|
mag_type = MAGAZINE
|
||||||
caliber = "a762"
|
caliber = "a762"
|
||||||
matter = list("metal" = 4500)
|
matter = list("steel" = 4500)
|
||||||
ammo_type = /obj/item/ammo_casing/a762
|
ammo_type = /obj/item/ammo_casing/a762
|
||||||
max_ammo = 50
|
max_ammo = 50
|
||||||
multiple_sprites = 1
|
multiple_sprites = 1
|
||||||
@@ -175,7 +175,7 @@
|
|||||||
icon_state = "c762"
|
icon_state = "c762"
|
||||||
mag_type = MAGAZINE
|
mag_type = MAGAZINE
|
||||||
caliber = "a762"
|
caliber = "a762"
|
||||||
matter = list("metal" = 1800)
|
matter = list("steel" = 1800)
|
||||||
ammo_type = /obj/item/ammo_casing/a762
|
ammo_type = /obj/item/ammo_casing/a762
|
||||||
max_ammo = 20
|
max_ammo = 20
|
||||||
multiple_sprites = 1
|
multiple_sprites = 1
|
||||||
|
|||||||
@@ -66,28 +66,28 @@
|
|||||||
icon_state = "slshell"
|
icon_state = "slshell"
|
||||||
caliber = "shotgun"
|
caliber = "shotgun"
|
||||||
projectile_type = /obj/item/projectile/bullet/shotgun
|
projectile_type = /obj/item/projectile/bullet/shotgun
|
||||||
matter = list("metal" = 360)
|
matter = list("steel" = 360)
|
||||||
|
|
||||||
/obj/item/ammo_casing/shotgun/pellet
|
/obj/item/ammo_casing/shotgun/pellet
|
||||||
name = "shotgun shell"
|
name = "shotgun shell"
|
||||||
desc = "A 12 gauge shell."
|
desc = "A 12 gauge shell."
|
||||||
icon_state = "gshell"
|
icon_state = "gshell"
|
||||||
projectile_type = /obj/item/projectile/bullet/pellet/shotgun
|
projectile_type = /obj/item/projectile/bullet/pellet/shotgun
|
||||||
matter = list("metal" = 360)
|
matter = list("steel" = 360)
|
||||||
|
|
||||||
/obj/item/ammo_casing/shotgun/blank
|
/obj/item/ammo_casing/shotgun/blank
|
||||||
name = "shotgun shell"
|
name = "shotgun shell"
|
||||||
desc = "A blank shell."
|
desc = "A blank shell."
|
||||||
icon_state = "blshell"
|
icon_state = "blshell"
|
||||||
projectile_type = /obj/item/projectile/bullet/blank
|
projectile_type = /obj/item/projectile/bullet/blank
|
||||||
matter = list("metal" = 90)
|
matter = list("steel" = 90)
|
||||||
|
|
||||||
/obj/item/ammo_casing/shotgun/beanbag
|
/obj/item/ammo_casing/shotgun/beanbag
|
||||||
name = "beanbag shell"
|
name = "beanbag shell"
|
||||||
desc = "A beanbag shell."
|
desc = "A beanbag shell."
|
||||||
icon_state = "bshell"
|
icon_state = "bshell"
|
||||||
projectile_type = /obj/item/projectile/bullet/shotgun/beanbag
|
projectile_type = /obj/item/projectile/bullet/shotgun/beanbag
|
||||||
matter = list("metal" = 180)
|
matter = list("steel" = 180)
|
||||||
|
|
||||||
//Can stun in one hit if aimed at the head, but
|
//Can stun in one hit if aimed at the head, but
|
||||||
//is blocked by clothing that stops tasers and is vulnerable to EMP
|
//is blocked by clothing that stops tasers and is vulnerable to EMP
|
||||||
@@ -97,7 +97,7 @@
|
|||||||
icon_state = "stunshell"
|
icon_state = "stunshell"
|
||||||
spent_icon = "stunshell-spent"
|
spent_icon = "stunshell-spent"
|
||||||
projectile_type = /obj/item/projectile/energy/electrode/stunshot
|
projectile_type = /obj/item/projectile/energy/electrode/stunshot
|
||||||
matter = list("metal" = 360, "glass" = 720)
|
matter = list("steel" = 360, "glass" = 720)
|
||||||
|
|
||||||
/obj/item/ammo_casing/shotgun/stunshell/emp_act(severity)
|
/obj/item/ammo_casing/shotgun/stunshell/emp_act(severity)
|
||||||
if(prob(100/severity)) BB = null
|
if(prob(100/severity)) BB = null
|
||||||
@@ -109,7 +109,7 @@
|
|||||||
desc = "A chemical shell used to signal distress or provide illumination."
|
desc = "A chemical shell used to signal distress or provide illumination."
|
||||||
icon_state = "fshell"
|
icon_state = "fshell"
|
||||||
projectile_type = /obj/item/projectile/energy/flash/flare
|
projectile_type = /obj/item/projectile/energy/flash/flare
|
||||||
matter = list("metal" = 90, "glass" = 90)
|
matter = list("steel" = 90, "glass" = 90)
|
||||||
|
|
||||||
/obj/item/ammo_casing/a762
|
/obj/item/ammo_casing/a762
|
||||||
desc = "A 7.62mm bullet casing."
|
desc = "A 7.62mm bullet casing."
|
||||||
@@ -123,7 +123,7 @@
|
|||||||
spent_icon = "lcasing-spent"
|
spent_icon = "lcasing-spent"
|
||||||
caliber = "14.5mm"
|
caliber = "14.5mm"
|
||||||
projectile_type = /obj/item/projectile/bullet/rifle/a145
|
projectile_type = /obj/item/projectile/bullet/rifle/a145
|
||||||
matter = list("metal" = 1250)
|
matter = list("steel" = 1250)
|
||||||
|
|
||||||
/obj/item/ammo_casing/a556
|
/obj/item/ammo_casing/a556
|
||||||
desc = "A 5.56mm bullet casing."
|
desc = "A 5.56mm bullet casing."
|
||||||
|
|||||||
@@ -11,7 +11,7 @@
|
|||||||
item_state = "gun"
|
item_state = "gun"
|
||||||
flags = CONDUCT
|
flags = CONDUCT
|
||||||
slot_flags = SLOT_BELT|SLOT_HOLSTER
|
slot_flags = SLOT_BELT|SLOT_HOLSTER
|
||||||
matter = list("metal" = 2000)
|
matter = list("steel" = 2000)
|
||||||
w_class = 3
|
w_class = 3
|
||||||
throwforce = 5
|
throwforce = 5
|
||||||
throw_speed = 4
|
throw_speed = 4
|
||||||
@@ -30,7 +30,7 @@
|
|||||||
var/scoped_accuracy = null
|
var/scoped_accuracy = null
|
||||||
|
|
||||||
var/last_fired = 0
|
var/last_fired = 0
|
||||||
|
|
||||||
//aiming system stuff
|
//aiming system stuff
|
||||||
var/keep_aim = 1 //1 for keep shooting until aim is lowered
|
var/keep_aim = 1 //1 for keep shooting until aim is lowered
|
||||||
//0 for one bullet after tarrget moves and aim is lowered
|
//0 for one bullet after tarrget moves and aim is lowered
|
||||||
@@ -61,9 +61,9 @@
|
|||||||
return 0
|
return 0
|
||||||
if(!user.IsAdvancedToolUser())
|
if(!user.IsAdvancedToolUser())
|
||||||
return 0
|
return 0
|
||||||
|
|
||||||
var/mob/living/M = user
|
var/mob/living/M = user
|
||||||
|
|
||||||
if(HULK in M.mutations)
|
if(HULK in M.mutations)
|
||||||
M << "<span class='danger'>Your fingers are much too large for the trigger guard!</span>"
|
M << "<span class='danger'>Your fingers are much too large for the trigger guard!</span>"
|
||||||
return 0
|
return 0
|
||||||
@@ -73,7 +73,7 @@
|
|||||||
if(process_projectile(P, user, user, pick("l_foot", "r_foot")))
|
if(process_projectile(P, user, user, pick("l_foot", "r_foot")))
|
||||||
handle_post_fire(user, user)
|
handle_post_fire(user, user)
|
||||||
user.visible_message(
|
user.visible_message(
|
||||||
"<span class='danger'>[user] shoots \himself in the foot with \the [src]!</span>",
|
"<span class='danger'>[user] shoots \himself in the foot with \the [src]!</span>",
|
||||||
"<span class='danger'>You shoot yourself in the foot with \the [src]!</span>"
|
"<span class='danger'>You shoot yourself in the foot with \the [src]!</span>"
|
||||||
)
|
)
|
||||||
M.drop_item()
|
M.drop_item()
|
||||||
@@ -149,7 +149,7 @@
|
|||||||
/obj/item/weapon/gun/proc/can_hit(atom/target as mob, var/mob/living/user as mob)
|
/obj/item/weapon/gun/proc/can_hit(atom/target as mob, var/mob/living/user as mob)
|
||||||
if(!special_check(user))
|
if(!special_check(user))
|
||||||
return 2
|
return 2
|
||||||
//just assume we can shoot through glass and stuff. No big deal, the player can just choose to not target someone
|
//just assume we can shoot through glass and stuff. No big deal, the player can just choose to not target someone
|
||||||
//on the other side of a window if it makes a difference. Or if they run behind a window, too bad.
|
//on the other side of a window if it makes a difference. Or if they run behind a window, too bad.
|
||||||
return check_trajectory(target, user)
|
return check_trajectory(target, user)
|
||||||
|
|
||||||
@@ -167,7 +167,7 @@
|
|||||||
playsound(user, fire_sound, 10, 1)
|
playsound(user, fire_sound, 10, 1)
|
||||||
else
|
else
|
||||||
playsound(user, fire_sound, 50, 1)
|
playsound(user, fire_sound, 50, 1)
|
||||||
|
|
||||||
if(reflex)
|
if(reflex)
|
||||||
user.visible_message(
|
user.visible_message(
|
||||||
"<span class='reflex_shoot'><b>\The [user] fires \the [src][pointblank ? " point blank at \the [target]":""] by reflex!<b></span>",
|
"<span class='reflex_shoot'><b>\The [user] fires \the [src][pointblank ? " point blank at \the [target]":""] by reflex!<b></span>",
|
||||||
@@ -180,7 +180,7 @@
|
|||||||
"<span class='warning'>You fire \the [src]!</span>",
|
"<span class='warning'>You fire \the [src]!</span>",
|
||||||
"You hear a [fire_sound_text]!"
|
"You hear a [fire_sound_text]!"
|
||||||
)
|
)
|
||||||
|
|
||||||
if(recoil)
|
if(recoil)
|
||||||
spawn()
|
spawn()
|
||||||
shake_camera(user, recoil+1, recoil)
|
shake_camera(user, recoil+1, recoil)
|
||||||
@@ -190,9 +190,9 @@
|
|||||||
/obj/item/weapon/gun/proc/process_projectile(obj/projectile, mob/user, atom/target, var/target_zone, var/params=null, var/pointblank=0, var/reflex=0)
|
/obj/item/weapon/gun/proc/process_projectile(obj/projectile, mob/user, atom/target, var/target_zone, var/params=null, var/pointblank=0, var/reflex=0)
|
||||||
if(!istype(projectile, /obj/item/projectile))
|
if(!istype(projectile, /obj/item/projectile))
|
||||||
return 0 //default behaviour only applies to true projectiles
|
return 0 //default behaviour only applies to true projectiles
|
||||||
|
|
||||||
var/obj/item/projectile/P = projectile
|
var/obj/item/projectile/P = projectile
|
||||||
|
|
||||||
//shooting while in shock
|
//shooting while in shock
|
||||||
var/x_offset = 0
|
var/x_offset = 0
|
||||||
var/y_offset = 0
|
var/y_offset = 0
|
||||||
@@ -206,9 +206,9 @@
|
|||||||
x_offset = rand(-1,1)
|
x_offset = rand(-1,1)
|
||||||
|
|
||||||
//Point blank bonus
|
//Point blank bonus
|
||||||
if(pointblank)
|
if(pointblank)
|
||||||
var/damage_mult = 1.3 //default point blank multiplier
|
var/damage_mult = 1.3 //default point blank multiplier
|
||||||
|
|
||||||
//determine multiplier due to the target being grabbed
|
//determine multiplier due to the target being grabbed
|
||||||
if(ismob(target))
|
if(ismob(target))
|
||||||
var/mob/M = target
|
var/mob/M = target
|
||||||
@@ -220,7 +220,7 @@
|
|||||||
damage_mult = 3.0
|
damage_mult = 3.0
|
||||||
else if (grabstate >= GRAB_AGGRESSIVE)
|
else if (grabstate >= GRAB_AGGRESSIVE)
|
||||||
damage_mult = 1.5
|
damage_mult = 1.5
|
||||||
|
|
||||||
P.damage *= damage_mult
|
P.damage *= damage_mult
|
||||||
|
|
||||||
if(params)
|
if(params)
|
||||||
@@ -234,7 +234,7 @@
|
|||||||
if(!ishuman(user))
|
if(!ishuman(user))
|
||||||
return
|
return
|
||||||
var/mob/living/carbon/human/M = user
|
var/mob/living/carbon/human/M = user
|
||||||
|
|
||||||
mouthshoot = 1
|
mouthshoot = 1
|
||||||
M.visible_message("\red [user] sticks their gun in their mouth, ready to pull the trigger...")
|
M.visible_message("\red [user] sticks their gun in their mouth, ready to pull the trigger...")
|
||||||
if(!do_after(user, 40))
|
if(!do_after(user, 40))
|
||||||
@@ -274,7 +274,7 @@
|
|||||||
var/zoom_offset = round(world.view * zoom_amount)
|
var/zoom_offset = round(world.view * zoom_amount)
|
||||||
var/view_size = round(world.view + zoom_amount)
|
var/view_size = round(world.view + zoom_amount)
|
||||||
var/scoped_accuracy_mod = zoom_offset
|
var/scoped_accuracy_mod = zoom_offset
|
||||||
|
|
||||||
zoom(zoom_offset, view_size)
|
zoom(zoom_offset, view_size)
|
||||||
if(zoom)
|
if(zoom)
|
||||||
accuracy = scoped_accuracy + scoped_accuracy_mod
|
accuracy = scoped_accuracy + scoped_accuracy_mod
|
||||||
|
|||||||
@@ -7,7 +7,7 @@
|
|||||||
slot_flags = SLOT_BELT|SLOT_BACK
|
slot_flags = SLOT_BELT|SLOT_BACK
|
||||||
w_class = 3
|
w_class = 3
|
||||||
force = 10
|
force = 10
|
||||||
matter = list("metal" = 2000)
|
matter = list("steel" = 2000)
|
||||||
origin_tech = "combat=3;magnets=2"
|
origin_tech = "combat=3;magnets=2"
|
||||||
projectile_type = /obj/item/projectile/beam
|
projectile_type = /obj/item/projectile/beam
|
||||||
fire_delay = 1 //rapid fire
|
fire_delay = 1 //rapid fire
|
||||||
@@ -106,7 +106,7 @@ obj/item/weapon/gun/energy/retro
|
|||||||
desc = "Standard issue weapon of the Imperial Guard"
|
desc = "Standard issue weapon of the Imperial Guard"
|
||||||
origin_tech = "combat=1;magnets=2"
|
origin_tech = "combat=1;magnets=2"
|
||||||
self_recharge = 1
|
self_recharge = 1
|
||||||
matter = list("metal" = 2000)
|
matter = list("steel" = 2000)
|
||||||
fire_sound = 'sound/weapons/Laser.ogg'
|
fire_sound = 'sound/weapons/Laser.ogg'
|
||||||
projectile_type = /obj/item/projectile/beam/lastertag/blue
|
projectile_type = /obj/item/projectile/beam/lastertag/blue
|
||||||
var/required_vest
|
var/required_vest
|
||||||
|
|||||||
@@ -37,7 +37,7 @@
|
|||||||
icon_state = "crossbow"
|
icon_state = "crossbow"
|
||||||
w_class = 2.0
|
w_class = 2.0
|
||||||
item_state = "crossbow"
|
item_state = "crossbow"
|
||||||
matter = list("metal" = 2000)
|
matter = list("steel" = 2000)
|
||||||
origin_tech = "combat=2;magnets=2;syndicate=5"
|
origin_tech = "combat=2;magnets=2;syndicate=5"
|
||||||
slot_flags = SLOT_BELT
|
slot_flags = SLOT_BELT
|
||||||
silenced = 1
|
silenced = 1
|
||||||
@@ -56,5 +56,5 @@
|
|||||||
desc = "A weapon favored by mercenary infiltration teams."
|
desc = "A weapon favored by mercenary infiltration teams."
|
||||||
w_class = 4
|
w_class = 4
|
||||||
force = 10
|
force = 10
|
||||||
matter = list("metal" = 200000)
|
matter = list("steel" = 200000)
|
||||||
projectile_type = /obj/item/projectile/energy/bolt/large
|
projectile_type = /obj/item/projectile/energy/bolt/large
|
||||||
|
|||||||
@@ -15,7 +15,7 @@
|
|||||||
var/obj/item/weapon/grenade/chambered
|
var/obj/item/weapon/grenade/chambered
|
||||||
var/list/grenades = new/list()
|
var/list/grenades = new/list()
|
||||||
var/max_grenades = 5 //holds this + one in the chamber
|
var/max_grenades = 5 //holds this + one in the chamber
|
||||||
matter = list("metal" = 2000)
|
matter = list("steel" = 2000)
|
||||||
|
|
||||||
//revolves the magazine, allowing players to choose between multiple grenade types
|
//revolves the magazine, allowing players to choose between multiple grenade types
|
||||||
/obj/item/weapon/gun/launcher/grenade/proc/pump(mob/M as mob)
|
/obj/item/weapon/gun/launcher/grenade/proc/pump(mob/M as mob)
|
||||||
@@ -80,7 +80,7 @@
|
|||||||
chambered.det_time = 10
|
chambered.det_time = 10
|
||||||
chambered.activate(null)
|
chambered.activate(null)
|
||||||
return chambered
|
return chambered
|
||||||
|
|
||||||
/obj/item/weapon/gun/launcher/grenade/handle_post_fire(mob/user)
|
/obj/item/weapon/gun/launcher/grenade/handle_post_fire(mob/user)
|
||||||
message_admins("[key_name_admin(user)] fired a grenade ([chambered.name]) from a grenade launcher ([src.name]).")
|
message_admins("[key_name_admin(user)] fired a grenade ([chambered.name]) from a grenade launcher ([src.name]).")
|
||||||
log_game("[key_name_admin(user)] used a grenade ([chambered.name]).")
|
log_game("[key_name_admin(user)] used a grenade ([chambered.name]).")
|
||||||
|
|||||||
@@ -4,7 +4,7 @@
|
|||||||
icon = 'icons/obj/ammo.dmi'
|
icon = 'icons/obj/ammo.dmi'
|
||||||
icon_state = "syringe-cartridge"
|
icon_state = "syringe-cartridge"
|
||||||
var/icon_flight = "syringe-cartridge-flight" //so it doesn't look so weird when shot
|
var/icon_flight = "syringe-cartridge-flight" //so it doesn't look so weird when shot
|
||||||
matter = list("metal" = 125, "glass" = 375)
|
matter = list("steel" = 125, "glass" = 375)
|
||||||
flags = CONDUCT
|
flags = CONDUCT
|
||||||
slot_flags = SLOT_BELT
|
slot_flags = SLOT_BELT
|
||||||
throwforce = 3
|
throwforce = 3
|
||||||
@@ -53,10 +53,10 @@
|
|||||||
if(L.can_inject())
|
if(L.can_inject())
|
||||||
if(syringe.reagents)
|
if(syringe.reagents)
|
||||||
syringe.reagents.trans_to(L, 15)
|
syringe.reagents.trans_to(L, 15)
|
||||||
|
|
||||||
syringe.break_syringe(iscarbon(hit_atom)? hit_atom : null)
|
syringe.break_syringe(iscarbon(hit_atom)? hit_atom : null)
|
||||||
syringe.update_icon()
|
syringe.update_icon()
|
||||||
|
|
||||||
icon_state = initial(icon_state) //reset icon state
|
icon_state = initial(icon_state) //reset icon state
|
||||||
update_icon()
|
update_icon()
|
||||||
|
|
||||||
@@ -67,15 +67,15 @@
|
|||||||
item_state = "syringegun"
|
item_state = "syringegun"
|
||||||
w_class = 3
|
w_class = 3
|
||||||
force = 7
|
force = 7
|
||||||
matter = list("metal" = 2000)
|
matter = list("steel" = 2000)
|
||||||
slot_flags = SLOT_BELT
|
slot_flags = SLOT_BELT
|
||||||
|
|
||||||
fire_sound = 'sound/weapons/empty.ogg'
|
fire_sound = 'sound/weapons/empty.ogg'
|
||||||
fire_sound_text = "a metallic thunk"
|
fire_sound_text = "a metallic thunk"
|
||||||
recoil = 0
|
recoil = 0
|
||||||
release_force = 10
|
release_force = 10
|
||||||
throw_distance = 10
|
throw_distance = 10
|
||||||
|
|
||||||
var/list/darts = list()
|
var/list/darts = list()
|
||||||
var/max_darts = 1
|
var/max_darts = 1
|
||||||
var/obj/item/weapon/syringe_cartridge/next
|
var/obj/item/weapon/syringe_cartridge/next
|
||||||
|
|||||||
@@ -8,9 +8,9 @@
|
|||||||
icon_state = "revolver"
|
icon_state = "revolver"
|
||||||
origin_tech = "combat=2;materials=2"
|
origin_tech = "combat=2;materials=2"
|
||||||
w_class = 3
|
w_class = 3
|
||||||
matter = list("metal" = 1000)
|
matter = list("steel" = 1000)
|
||||||
recoil = 1
|
recoil = 1
|
||||||
|
|
||||||
var/caliber = "357" //determines which casings will fit
|
var/caliber = "357" //determines which casings will fit
|
||||||
var/handle_casings = EJECT_CASINGS //determines how spent casings should be handled
|
var/handle_casings = EJECT_CASINGS //determines how spent casings should be handled
|
||||||
var/load_method = SINGLE_CASING|SPEEDLOADER //1 = Single shells, 2 = box or quick loader, 3 = magazine
|
var/load_method = SINGLE_CASING|SPEEDLOADER //1 = Single shells, 2 = box or quick loader, 3 = magazine
|
||||||
@@ -18,7 +18,7 @@
|
|||||||
|
|
||||||
//For SINGLE_CASING or SPEEDLOADER guns
|
//For SINGLE_CASING or SPEEDLOADER guns
|
||||||
var/max_shells = 0 //the number of casings that will fit inside
|
var/max_shells = 0 //the number of casings that will fit inside
|
||||||
var/ammo_type = null //the type of ammo that the gun comes preloaded with
|
var/ammo_type = null //the type of ammo that the gun comes preloaded with
|
||||||
var/list/loaded = list() //stored ammo
|
var/list/loaded = list() //stored ammo
|
||||||
|
|
||||||
//For MAGAZINE guns
|
//For MAGAZINE guns
|
||||||
@@ -50,7 +50,7 @@
|
|||||||
chambered = ammo_magazine.stored_ammo[1]
|
chambered = ammo_magazine.stored_ammo[1]
|
||||||
if(handle_casings != HOLD_CASINGS)
|
if(handle_casings != HOLD_CASINGS)
|
||||||
ammo_magazine.stored_ammo -= chambered
|
ammo_magazine.stored_ammo -= chambered
|
||||||
|
|
||||||
if (chambered)
|
if (chambered)
|
||||||
return chambered.BB
|
return chambered.BB
|
||||||
return null
|
return null
|
||||||
@@ -183,7 +183,7 @@
|
|||||||
)
|
)
|
||||||
if(auto_eject_sound)
|
if(auto_eject_sound)
|
||||||
playsound(user, auto_eject_sound, 40, 1)
|
playsound(user, auto_eject_sound, 40, 1)
|
||||||
ammo_magazine.update_icon()
|
ammo_magazine.update_icon()
|
||||||
ammo_magazine = null
|
ammo_magazine = null
|
||||||
update_icon() //make sure to do this after unsetting ammo_magazine
|
update_icon() //make sure to do this after unsetting ammo_magazine
|
||||||
|
|
||||||
|
|||||||
@@ -260,7 +260,7 @@
|
|||||||
icon = 'icons/obj/janitor.dmi'
|
icon = 'icons/obj/janitor.dmi'
|
||||||
icon_state = "bucket"
|
icon_state = "bucket"
|
||||||
item_state = "bucket"
|
item_state = "bucket"
|
||||||
matter = list("metal" = 200)
|
matter = list("steel" = 200)
|
||||||
w_class = 3.0
|
w_class = 3.0
|
||||||
amount_per_transfer_from_this = 20
|
amount_per_transfer_from_this = 20
|
||||||
possible_transfer_amounts = list(10,20,30,60,120)
|
possible_transfer_amounts = list(10,20,30,60,120)
|
||||||
|
|||||||
@@ -10,7 +10,7 @@
|
|||||||
anchored = 0
|
anchored = 0
|
||||||
density = 0
|
density = 0
|
||||||
pressure_resistance = 5*ONE_ATMOSPHERE
|
pressure_resistance = 5*ONE_ATMOSPHERE
|
||||||
matter = list("metal" = 1850)
|
matter = list("steel" = 1850)
|
||||||
level = 2
|
level = 2
|
||||||
var/ptype = 0
|
var/ptype = 0
|
||||||
// 0=straight, 1=bent, 2=junction-j1, 3=junction-j2, 4=junction-y, 5=trunk, 6=disposal bin, 7=outlet, 8=inlet
|
// 0=straight, 1=bent, 2=junction-j1, 3=junction-j2, 4=junction-y, 5=trunk, 6=disposal bin, 7=outlet, 8=inlet
|
||||||
|
|||||||
@@ -66,8 +66,8 @@ won't update every console in existence) but it's more of a hassle to do. Also,
|
|||||||
if (copytext(ID, 1, 2) == "$")
|
if (copytext(ID, 1, 2) == "$")
|
||||||
return_name = copytext(ID, 2)
|
return_name = copytext(ID, 2)
|
||||||
switch(return_name)
|
switch(return_name)
|
||||||
if("metal")
|
if("steel")
|
||||||
return_name = "Metal"
|
return_name = "Steel"
|
||||||
if("glass")
|
if("glass")
|
||||||
return_name = "Glass"
|
return_name = "Glass"
|
||||||
if("gold")
|
if("gold")
|
||||||
@@ -262,7 +262,7 @@ won't update every console in existence) but it's more of a hassle to do. Also,
|
|||||||
if(linked_destroy.loaded_item.reliability < 100 && linked_destroy.loaded_item.crit_fail)
|
if(linked_destroy.loaded_item.reliability < 100 && linked_destroy.loaded_item.crit_fail)
|
||||||
files.UpdateDesign(linked_destroy.loaded_item.type)
|
files.UpdateDesign(linked_destroy.loaded_item.type)
|
||||||
if(linked_lathe && linked_destroy.loaded_item.matter) //Also sends salvaged materials to a linked protolathe, if any.
|
if(linked_lathe && linked_destroy.loaded_item.matter) //Also sends salvaged materials to a linked protolathe, if any.
|
||||||
linked_lathe.m_amount += min((linked_lathe.max_material_storage - linked_lathe.TotalMaterials()), (linked_destroy.loaded_item.matter["metal"]*linked_destroy.decon_mod))
|
linked_lathe.m_amount += min((linked_lathe.max_material_storage - linked_lathe.TotalMaterials()), (linked_destroy.loaded_item.matter["steel"]*linked_destroy.decon_mod))
|
||||||
linked_lathe.g_amount += min((linked_lathe.max_material_storage - linked_lathe.TotalMaterials()), (linked_destroy.loaded_item.matter["glass"]*linked_destroy.decon_mod))
|
linked_lathe.g_amount += min((linked_lathe.max_material_storage - linked_lathe.TotalMaterials()), (linked_destroy.loaded_item.matter["glass"]*linked_destroy.decon_mod))
|
||||||
linked_destroy.loaded_item = null
|
linked_destroy.loaded_item = null
|
||||||
for(var/obj/I in linked_destroy.contents)
|
for(var/obj/I in linked_destroy.contents)
|
||||||
@@ -438,27 +438,24 @@ won't update every console in existence) but it's more of a hassle to do. Also,
|
|||||||
else if(href_list["lathe_ejectsheet"] && linked_lathe) //Causes the protolathe to eject a sheet of material
|
else if(href_list["lathe_ejectsheet"] && linked_lathe) //Causes the protolathe to eject a sheet of material
|
||||||
var/desired_num_sheets = text2num(href_list["amount"])
|
var/desired_num_sheets = text2num(href_list["amount"])
|
||||||
var/res_amount, type
|
var/res_amount, type
|
||||||
switch(href_list["lathe_ejectsheet"])
|
var/material/M = name_to_mineral[href_list["lathe_ejectsheet"]]
|
||||||
if("metal")
|
if(istype(M))
|
||||||
type = /obj/item/stack/sheet/metal
|
type = M.stack_type
|
||||||
|
|
||||||
|
switch(name_to_mineral[href_list["lathe_ejectsheet"]])
|
||||||
|
if("steel")
|
||||||
res_amount = "m_amount"
|
res_amount = "m_amount"
|
||||||
if("glass")
|
if("glass")
|
||||||
type = /obj/item/stack/sheet/glass
|
|
||||||
res_amount = "g_amount"
|
res_amount = "g_amount"
|
||||||
if("gold")
|
if("gold")
|
||||||
type = /obj/item/stack/sheet/mineral/gold
|
|
||||||
res_amount = "gold_amount"
|
res_amount = "gold_amount"
|
||||||
if("silver")
|
if("silver")
|
||||||
type = /obj/item/stack/sheet/mineral/silver
|
|
||||||
res_amount = "silver_amount"
|
res_amount = "silver_amount"
|
||||||
if("phoron")
|
if("phoron")
|
||||||
type = /obj/item/stack/sheet/mineral/phoron
|
|
||||||
res_amount = "phoron_amount"
|
res_amount = "phoron_amount"
|
||||||
if("uranium")
|
if("uranium")
|
||||||
type = /obj/item/stack/sheet/mineral/uranium
|
|
||||||
res_amount = "uranium_amount"
|
res_amount = "uranium_amount"
|
||||||
if("diamond")
|
if("diamond")
|
||||||
type = /obj/item/stack/sheet/mineral/diamond
|
|
||||||
res_amount = "diamond_amount"
|
res_amount = "diamond_amount"
|
||||||
|
|
||||||
if(ispath(type) && hasvar(linked_lathe, res_amount))
|
if(ispath(type) && hasvar(linked_lathe, res_amount))
|
||||||
@@ -817,11 +814,11 @@ won't update every console in existence) but it's more of a hassle to do. Also,
|
|||||||
dat += "<A href='?src=\ref[src];menu=3.1'>Protolathe Menu</A><HR>"
|
dat += "<A href='?src=\ref[src];menu=3.1'>Protolathe Menu</A><HR>"
|
||||||
dat += "Material Storage<BR><HR>"
|
dat += "Material Storage<BR><HR>"
|
||||||
dat += "<UL>"
|
dat += "<UL>"
|
||||||
for(var/M in list("metal", "glass", "gold", "silver", "phoron", "uranium", "diamond"))
|
for(var/M in list("steel", "glass", "gold", "silver", "phoron", "uranium", "diamond"))
|
||||||
var/amount
|
var/amount
|
||||||
var/sheetsize = 2000
|
var/sheetsize = 2000
|
||||||
switch(M)
|
switch(M)
|
||||||
if("metal")
|
if("steel")
|
||||||
amount = linked_lathe.m_amount
|
amount = linked_lathe.m_amount
|
||||||
sheetsize = 3750
|
sheetsize = 3750
|
||||||
if("glass")
|
if("glass")
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user