Merge branch 'master' into PAIN

This commit is contained in:
FlattestGuitar
2017-06-09 14:44:31 +02:00
422 changed files with 2346 additions and 2153 deletions
+13 -13
View File
@@ -14,7 +14,7 @@ AI MODULES
desc = "An AI Module for transmitting encrypted instructions to the AI."
flags = CONDUCT
force = 5.0
w_class = 2
w_class = WEIGHT_CLASS_SMALL
throwforce = 5.0
throw_speed = 3
throw_range = 15
@@ -95,7 +95,7 @@ AI MODULES
name = "\improper 'Safeguard' AI module"
var/targetName = ""
desc = "A 'safeguard' AI module: 'Safeguard <name>. Individuals that threaten <name> are not crew and must be eliminated.'"
origin_tech = "programming=3;materials=4"
origin_tech = "programming=3;materials=3"
/obj/item/weapon/aiModule/safeguard/attack_self(var/mob/user as mob)
..()
@@ -121,7 +121,7 @@ AI MODULES
name = "\improper 'oneCrewMember' AI module"
var/targetName = ""
desc = "A 'one human' AI module: 'Only <name> is crew.'"
origin_tech = "programming=3;materials=6" //made with diamonds!
origin_tech = "programming=4;materials=4"
/obj/item/weapon/aiModule/oneCrewMember/attack_self(var/mob/user as mob)
..()
@@ -152,7 +152,7 @@ AI MODULES
/obj/item/weapon/aiModule/protectStation
name = "\improper 'ProtectStation' AI module"
desc = "A 'protect station' AI module: 'Protect the space station against damage. Anyone you see harming the station is to be no longer considered crew, and is a threat to the station which must be neutralized.'"
origin_tech = "programming=3;materials=4" //made of gold
origin_tech = "programming=4;materials=4" //made of gold
/obj/item/weapon/aiModule/protectStation/attack_self(var/mob/user as mob)
..()
@@ -182,7 +182,7 @@ AI MODULES
/obj/item/weapon/aiModule/oxygen
name = "\improper 'OxygenIsToxicToHumans' AI module"
desc = "A 'OxygenIsToxicToHumans' AI module: 'Oxygen is highly toxic to crew members, and must be purged from the station. Prevent, by any means necessary, anyone from exposing the station to this toxic gas. Extreme cold is the most effective method of healing the damage Oxygen does to a crew member.'"
origin_tech = "programming=3;biotech=2;materials=4"
origin_tech = "programming=4;biotech=2;materials=4"
/obj/item/weapon/aiModule/oxygen/attack_self(var/mob/user as mob)
..()
@@ -231,7 +231,7 @@ AI MODULES
name = "\improper 'Reset' AI module"
var/targetName = "name"
desc = "A 'reset' AI module: 'Clears all laws except for the core laws.'"
origin_tech = "programming=3;materials=4"
origin_tech = "programming=3;materials=2"
/obj/item/weapon/aiModule/reset/transmitInstructions(var/mob/living/silicon/ai/target, var/mob/sender)
log_law_changes(target, sender)
@@ -248,7 +248,7 @@ AI MODULES
/obj/item/weapon/aiModule/purge // -- TLE
name = "\improper 'Purge' AI module"
desc = "A 'purge' AI Module: 'Purges all laws.'"
origin_tech = "programming=3;materials=6"
origin_tech = "programming=5;materials=4"
/obj/item/weapon/aiModule/purge/transmitInstructions(var/mob/living/silicon/ai/target, var/mob/sender)
..()
@@ -305,14 +305,14 @@ AI MODULES
/obj/item/weapon/aiModule/paladin // -- NEO
name = "\improper 'P.A.L.A.D.I.N.' core AI module"
desc = "A P.A.L.A.D.I.N. Core AI Module: 'Reconfigures the AI's core laws.'"
origin_tech = "programming=3;materials=6"
origin_tech = "programming=3;materials=4"
laws = new/datum/ai_laws/paladin
/****************** T.Y.R.A.N.T. *****************/
/obj/item/weapon/aiModule/tyrant // -- Darem
name = "\improper 'T.Y.R.A.N.T.' core AI module"
desc = "A T.Y.R.A.N.T. Core AI Module: 'Reconfigures the AI's core laws.'"
origin_tech = "programming=3;materials=6;syndicate=2"
origin_tech = "programming=3;materials=4;syndicate=1"
laws = new/datum/ai_laws/tyrant()
/******************** Antimov ********************/
@@ -327,7 +327,7 @@ AI MODULES
name = "\improper 'Freeform' core AI module"
var/newFreeFormLaw = ""
desc = "A 'freeform' Core AI module: '<freeform>'"
origin_tech = "programming=3;materials=6"
origin_tech = "programming=5;materials=4"
/obj/item/weapon/aiModule/freeformcore/attack_self(var/mob/user as mob)
..()
@@ -353,7 +353,7 @@ AI MODULES
name = "hacked AI module"
var/newFreeFormLaw = ""
desc = "A hacked AI law module: '<freeform>'"
origin_tech = "programming=3;materials=6;syndicate=7"
origin_tech = "programming=5;materials=5;syndicate=5"
/obj/item/weapon/aiModule/syndicate/attack_self(var/mob/user as mob)
..()
@@ -384,7 +384,7 @@ AI MODULES
desc = "A little toy model AI core with real law uploading action!" //Note: subtle tell
icon = 'icons/obj/toy.dmi'
icon_state = "AI"
origin_tech = "programming=3;materials=6;syndicate=7"
origin_tech = "programming=6;materials=5;syndicate=6"
laws = list("")
/obj/item/weapon/aiModule/toyAI/transmitInstructions(var/mob/living/silicon/ai/target, var/mob/sender)
@@ -397,4 +397,4 @@ AI MODULES
laws[1] = generate_ion_law()
to_chat(user, "<span class='notice'>You press the button on [src].</span>")
playsound(user, 'sound/machines/click.ogg', 20, 1)
src.loc.visible_message("<span class='warning'>[bicon(src)] [laws[1]]</span>")
src.loc.visible_message("<span class='warning'>[bicon(src)] [laws[1]]</span>")
+2 -2
View File
@@ -17,7 +17,7 @@ RCD
throwforce = 10.0
throw_speed = 3
throw_range = 5
w_class = 3
w_class = WEIGHT_CLASS_NORMAL
materials = list(MAT_METAL = 30000)
origin_tech = "engineering=4;materials=2"
toolspeed = 1
@@ -394,7 +394,7 @@ RCD
opacity = 0
density = 0
anchored = 0.0
origin_tech = "materials=2"
origin_tech = "materials=3"
materials = list(MAT_METAL=16000, MAT_GLASS=8000)
var/ammoamt = 20
+1 -1
View File
@@ -10,7 +10,7 @@
throw_speed = 1
throw_range = 7
w_class = WEIGHT_CLASS_NORMAL
origin_tech = "engineering=4;materials=4"
origin_tech = "engineering=4;materials=2"
var/max_amount = 90
var/active = 0
var/obj/structure/cable/last = null
+2 -2
View File
@@ -13,7 +13,7 @@ RSF
anchored = 0.0
var/matter = 0
var/mode = 1
w_class = 3
w_class = WEIGHT_CLASS_NORMAL
/obj/item/weapon/rsf/New()
desc = "A RSF. It currently holds [matter]/30 fabrication-units."
@@ -231,4 +231,4 @@ RSF
matter--
to_chat(user, "The RSF now holds [matter]/30 fabrication-units.")
desc = "A RSF. It currently holds [matter]/30 fabrication-units."
return
return
@@ -12,8 +12,8 @@
throwforce_on = 5
throw_speed = 1
throw_range = 5
w_class = 2
w_class_on = 2
w_class = WEIGHT_CLASS_SMALL
w_class_on = WEIGHT_CLASS_SMALL
attack_verb = list("attacked", "slashed", "gored", "sliced", "torn", "ripped", "butchered", "cut")
attack_verb_on = list()
@@ -11,7 +11,7 @@
force = 10
throw_speed = 2
throw_range = 4
w_class = 4
w_class = WEIGHT_CLASS_BULKY
attack_verb = list("bashed", "battered", "bludgeoned", "thrashed", "whacked")
var/bees_left = 10
var/list/blood_list = list()
+2 -2
View File
@@ -15,7 +15,7 @@
name = "card"
desc = "A card."
icon = 'icons/obj/card.dmi'
w_class = 1
w_class = WEIGHT_CLASS_TINY
var/associated_account_number = 0
var/list/files = list( )
@@ -299,7 +299,7 @@
/obj/item/weapon/card/id/syndicate
name = "agent card"
var/list/initial_access = list(access_maint_tunnels, access_syndicate, access_external_airlocks)
origin_tech = "syndicate=3"
origin_tech = "syndicate=1"
var/registered_user = null
untrackable = 1
+1 -1
View File
@@ -7,7 +7,7 @@
throwforce = 3.0
throw_speed = 1
throw_range = 5
w_class = 2
w_class = WEIGHT_CLASS_SMALL
attack_verb = list("warned", "cautioned", "smashed")
proximity_sign
@@ -6,7 +6,7 @@
icon = 'icons/obj/chronos.dmi'
icon_state = "chronobackpack"
item_state = "backpack"
w_class = 4
w_class = WEIGHT_CLASS_BULKY
slot_flags = SLOT_BACK
slowdown = 1
actions_types = list(/datum/action/item_action/equip_unequip_TED_Gun)
@@ -46,7 +46,7 @@
icon = 'icons/obj/chronos.dmi'
icon_state = "chronogun"
item_state = "chronogun"
w_class = 3
w_class = WEIGHT_CLASS_NORMAL
flags = NODROP
ammo_type = list(/obj/item/ammo_casing/energy/chrono_beam)
can_charge = 0
+4 -4
View File
@@ -20,7 +20,7 @@ LIGHTERS ARE IN LIGHTERS.DM
throw_speed = 0.5
item_state = "cigoff"
slot_flags = SLOT_EARS|SLOT_MASK
w_class = 1
w_class = WEIGHT_CLASS_TINY
body_parts_covered = null
attack_verb = list("burnt", "singed")
var/lit = 0
@@ -285,7 +285,7 @@ LIGHTERS ARE IN LIGHTERS.DM
desc = "A manky old cigarette butt."
icon = 'icons/obj/clothing/masks.dmi'
icon_state = "cigbutt"
w_class = 1
w_class = WEIGHT_CLASS_TINY
throwforce = 1
/obj/item/weapon/cigbutt/New()
@@ -389,7 +389,7 @@ LIGHTERS ARE IN LIGHTERS.DM
desc = "A thin piece of paper used to make fine smokeables."
icon = 'icons/obj/cigarettes.dmi'
icon_state = "cig_paper"
w_class = 1
w_class = WEIGHT_CLASS_TINY
/obj/item/weapon/rollingpaper/afterattack(atom/target, mob/user, proximity)
if(!proximity)
@@ -410,4 +410,4 @@ LIGHTERS ARE IN LIGHTERS.DM
else
to_chat(user, "<span class='warning'>You need to dry this first!</span>")
else
..()
..()
@@ -60,7 +60,7 @@
item_state = "bike_horn"
hitsound = null
throwforce = 3
w_class = 1
w_class = WEIGHT_CLASS_TINY
throw_speed = 3
throw_range = 15
attack_verb = list("HONKED")
@@ -89,6 +89,7 @@
icon_state = "air_horn"
honk_sound = 'sound/items/AirHorn2.ogg'
cooldowntime = 50
origin_tech = "materials=4;engineering=4"
/obj/item/weapon/bikehorn/golden
name = "golden bike horn"
@@ -112,4 +113,4 @@
var/mob/living/carbon/human/H = M
if(istype(H.l_ear, /obj/item/clothing/ears/earmuffs) || istype(H.r_ear, /obj/item/clothing/ears/earmuffs) || H.ear_deaf)
continue
M.emote("flip")
M.emote("flip")
+2 -2
View File
@@ -3,7 +3,7 @@
desc = "A generic brand of lipstick."
icon = 'icons/obj/items.dmi'
icon_state = "lipstick"
w_class = 1
w_class = WEIGHT_CLASS_TINY
var/colour = "red"
var/open = 0
@@ -86,7 +86,7 @@
icon = 'icons/obj/items.dmi'
icon_state = "razor"
flags = CONDUCT
w_class = 1
w_class = WEIGHT_CLASS_TINY
usesound = 'sound/items/Welder2.ogg'
toolspeed = 1
+3 -3
View File
@@ -9,7 +9,7 @@
icon_state = "gavelhammer"
force = 5.0
throwforce = 6.0
w_class = 2
w_class = WEIGHT_CLASS_SMALL
attack_verb = list("bashed", "battered", "judged", "whacked")
burn_state = FLAMMABLE
@@ -25,7 +25,7 @@
icon_state = "gavelblock"
force = 2.0
throwforce = 2.0
w_class = 1
w_class = WEIGHT_CLASS_TINY
burn_state = FLAMMABLE
/obj/item/weapon/gavelblock/attackby(obj/item/I, mob/user, params)
@@ -33,4 +33,4 @@
playsound(loc, 'sound/items/gavel.ogg', 100, 1)
user.visible_message("<span class='warning'>[user] strikes \the [src] with \the [I].</span>")
else
return
return
+11 -14
View File
@@ -9,7 +9,7 @@
slot_flags = SLOT_BACK
force = 5
throwforce = 6
w_class = 4
w_class = WEIGHT_CLASS_BULKY
origin_tech = "biotech=4"
actions_types = list(/datum/action/item_action/toggle_paddles)
species_fit = list("Vox")
@@ -112,8 +112,6 @@
/obj/item/weapon/defibrillator/emp_act(severity)
if(bcell)
deductcharge(1000 / severity)
if(bcell.reliability != 100 && prob(50/severity))
bcell.reliability -= 10 / severity
if(safety)
safety = 0
src.visible_message("<span class='notice'>[src] beeps: Safety protocols disabled!</span>")
@@ -206,9 +204,9 @@
desc = "A belt-equipped defibrillator that can be rapidly deployed."
icon_state = "defibcompact"
item_state = "defibcompact"
w_class = 3
w_class = WEIGHT_CLASS_NORMAL
slot_flags = SLOT_BELT
origin_tech = "biotech=4"
origin_tech = "biotech=5"
/obj/item/weapon/defibrillator/compact/item_action_slot_check(slot, mob/user)
if(slot == slot_belt)
@@ -251,7 +249,7 @@
item_state = "defibpaddles"
force = 0
throwforce = 6
w_class = 4
w_class = WEIGHT_CLASS_BULKY
toolspeed = 1
var/revivecost = 1000
@@ -330,8 +328,8 @@
H.updatehealth() //forces health update before next life tick
playsound(get_turf(src), 'sound/machines/defib_zap.ogg', 50, 1, -1)
H.emote("gasp")
if(!H.heart_attack && (prob(10) || defib.combat)) // Your heart explodes.
H.heart_attack = 1
if(!H.undergoing_cardiac_arrest() && (prob(10) || defib.combat)) // Your heart explodes.
H.set_heartattack(TRUE)
add_logs(user, M, "stunned", object="defibrillator")
defib.deductcharge(revivecost)
cooldown = 1
@@ -367,7 +365,7 @@
busy = 0
update_icon()
return
if(H.heart_attack)
if(H.undergoing_cardiac_arrest())
if(!H.get_int_organ(/obj/item/organ/internal/heart) && !H.get_int_organ(/obj/item/organ/internal/brain/slime)) //prevents defibing someone still alive suffering from a heart attack attack if they lack a heart
user.visible_message("<span class='boldnotice'>[defib] buzzes: Resuscitation failed - Failed to pick up any heart electrical activity.</span>")
playsound(get_turf(src), 'sound/machines/defib_failed.ogg', 50, 0)
@@ -375,7 +373,7 @@
update_icon()
return
else
H.heart_attack = 0
H.set_heartattack(FALSE)
user.visible_message("<span class='boldnotice'>[defib] pings: Cardiac arrhythmia corrected.</span>")
M.visible_message("<span class='warning'>[M]'s body convulses a bit.")
playsound(get_turf(src), 'sound/machines/defib_zap.ogg', 50, 1, -1)
@@ -435,7 +433,6 @@
busy = 0
update_icon()
/obj/item/weapon/borg_defib
name = "defibrillator paddles"
desc = "A pair of mounted paddles with flat metal surfaces that are used to deliver powerful electric shocks."
@@ -443,7 +440,7 @@
icon_state = "defibpaddles0"
item_state = "defibpaddles0"
force = 0
w_class = 4
w_class = WEIGHT_CLASS_BULKY
var/revivecost = 1000
var/cooldown = 0
var/busy = 0
@@ -471,8 +468,8 @@
H.adjustStaminaLoss(50)
H.Weaken(5)
H.updatehealth() //forces health update before next life tick
if(!H.heart_attack && prob(10)) // Your heart explodes.
H.heart_attack = 1
if(!H.undergoing_cardiac_arrest() && prob(10)) // Your heart explodes.
H.set_heartattack(TRUE)
playsound(get_turf(src), 'sound/machines/defib_zap.ogg', 50, 1, -1)
H.emote("gasp")
add_logs(user, M, "stunned", object="defibrillator")
+1 -1
View File
@@ -29,7 +29,7 @@
desc = "A die with six sides. Basic and servicable."
icon = 'icons/obj/dice.dmi'
icon_state = "d6"
w_class = 1
w_class = WEIGHT_CLASS_TINY
var/sides = 6
var/result = null
var/list/special_faces = list() //entries should match up to sides var if used
+1 -1
View File
@@ -1,5 +1,5 @@
/obj/item/weapon/disk
icon = 'icons/obj/module.dmi'
w_class = 1
w_class = WEIGHT_CLASS_TINY
item_state = "card-id"
icon_state = "datadisk0"
@@ -8,7 +8,7 @@
var/datum/dna2/record/buf = null
throw_speed = 3
throw_range = 5
w_class = 1
w_class = WEIGHT_CLASS_TINY
origin_tech = "biotech=1"
var/damage_coeff = 1
@@ -6,7 +6,7 @@
flags = NOBLUDGEON
det_time = 10
display_timer = 0
origin_tech = "syndicate=2"
origin_tech = "syndicate=1"
toolspeed = 1
var/atom/target = null
var/image_overlay = null
@@ -7,7 +7,7 @@
hitsound = 'sound/weapons/smash.ogg'
flags = CONDUCT
throwforce = 10
w_class = 3
w_class = WEIGHT_CLASS_NORMAL
throw_speed = 2
throw_range = 7
force = 10
@@ -29,7 +29,7 @@
hitsound = null //it is much lighter, after all.
flags = null //doesn't CONDUCT
throwforce = 2
w_class = 2
w_class = WEIGHT_CLASS_SMALL
force = 3.0
materials = list()
max_water = 30
@@ -11,9 +11,9 @@
throwforce = 10.0
throw_speed = 1
throw_range = 5
w_class = 3
w_class = WEIGHT_CLASS_NORMAL
materials = list(MAT_METAL=500)
origin_tech = "combat=1;plasmatech=1"
origin_tech = "combat=1;plasmatech=2;engineering=2"
var/status = 0
var/throw_amount = 100
var/lit = 0 //on or off
+1 -1
View File
@@ -8,7 +8,7 @@
name = "fiber wire"
desc = "A length of razor-thin wire with an elegant wooden handle on either end.<br>You suspect you'd have to be behind the target to use this weapon effectively."
icon_state = "garrot_wrap"
w_class = 1
w_class = WEIGHT_CLASS_TINY
var/mob/living/carbon/human/strangling
var/improvised = 0
var/garrote_time
@@ -4,7 +4,7 @@
/obj/item/weapon/grenade/gas
name = "Plasma Fire Grenade"
desc = "A compressed plasma grenade, used to start horrific plasma fires."
origin_tech = "materials=3;magnets=4;syndicate=4"
origin_tech = "materials=3;magnets=4;syndicate=3"
icon = 'icons/obj/grenade.dmi'
icon_state = "syndicate"
item_state = "flashbang"
@@ -4,7 +4,7 @@ var/turf/T
/obj/item/weapon/grenade/bananade
name = "bananade"
desc = "A yellow grenade."
w_class = 2
w_class = WEIGHT_CLASS_SMALL
icon = 'icons/obj/grenade.dmi'
icon_state = "banana"
item_state = "flashbang"
@@ -9,7 +9,7 @@
item_state = "flashbang"
var/bomb_state = "chembomb"
var/payload_name = null // used for spawned grenades
w_class = 2
w_class = WEIGHT_CLASS_SMALL
force = 2
var/prime_sound = 'sound/items/Screwdriver2.ogg'
var/stage = EMPTY
@@ -332,7 +332,7 @@
bomb_state = "largebomb"
allowed_containers = list(/obj/item/weapon/reagent_containers/glass,/obj/item/weapon/reagent_containers/food/condiment,
/obj/item/weapon/reagent_containers/food/drinks)
origin_tech = "combat=3;materials=3"
origin_tech = "combat=3;engineering=3"
affected_area = 4
@@ -539,4 +539,4 @@
#undef EMPTY
#undef WIRED
#undef READY
#undef READY
@@ -3,7 +3,7 @@
desc = "HONK! brand Bananas. In a special applicator for rapid slipping of wide areas."
icon_state = "banana"
item_state = "flashbang"
w_class = 2
w_class = WEIGHT_CLASS_SMALL
force = 2.0
var/stage = 0
var/state = 0
@@ -74,4 +74,4 @@
if(istype(hit_atom ,/mob/living))
var/mob/living/M = hit_atom
M.take_organ_damage(0, burned)
return ..()
return ..()
@@ -3,7 +3,7 @@
desc = "It is designed to wreak havoc on electronic systems."
icon_state = "emp"
item_state = "emp"
origin_tech = "materials=2;magnets=3"
origin_tech = "magnets=3;combat=2"
/obj/item/weapon/grenade/empgrenade/prime()
update_mob()
@@ -2,7 +2,7 @@
name = "flashbang"
icon_state = "flashbang"
item_state = "flashbang"
origin_tech = "materials=2;combat=1"
origin_tech = "materials=2;combat=3"
/obj/item/weapon/grenade/flashbang/prime()
update_mob()
@@ -17,7 +17,7 @@
/obj/item/weapon/grenade/iedcasing
name = "improvised explosive assembly"
desc = "An igniter stuffed into an aluminum shell."
w_class = 2
w_class = WEIGHT_CLASS_SMALL
icon = 'icons/obj/grenade.dmi'
icon_state = "improvised_grenade"
item_state = "flashbang"
@@ -67,7 +67,7 @@
/obj/item/weapon/grenade/iedcasing/filled
name = "improvised firebomb"
desc = "A weak, improvised incendiary device."
w_class = 2
w_class = WEIGHT_CLASS_SMALL
icon = 'icons/obj/grenade.dmi'
icon_state = "improvised_grenade"
item_state = "flashbang"
@@ -1,7 +1,7 @@
/obj/item/weapon/grenade
name = "grenade"
desc = "A hand held grenade, with an adjustable timer."
w_class = 2
w_class = WEIGHT_CLASS_SMALL
icon = 'icons/obj/grenade.dmi'
icon_state = "grenade"
item_state = "flashbang"
@@ -35,20 +35,20 @@
name = "manhack delivery grenade"
spawner_type = /mob/living/simple_animal/hostile/viscerator
deliveryamt = 5
origin_tech = "materials=3;magnets=4;syndicate=4"
origin_tech = "materials=3;magnets=4;syndicate=3"
/obj/item/weapon/grenade/spawnergrenade/spesscarp
name = "carp delivery grenade"
spawner_type = /mob/living/simple_animal/hostile/carp
deliveryamt = 5
origin_tech = "materials=3;magnets=4;syndicate=4"
origin_tech = "materials=3;magnets=4;syndicate=3"
/obj/item/weapon/grenade/spawnergrenade/feral_cats
name = "feral cat delivery grenade"
desc = "This grenade contains 8 dehydrated feral cats in a similar manner to dehydrated monkeys, which, upon detonation, will be rehydrated by a small reservoir of water contained within the grenade. These cats will then attack anything in sight."
spawner_type = /mob/living/simple_animal/hostile/feral_cat
deliveryamt = 5
origin_tech = "materials=3;magnets=4;syndicate=4"
origin_tech = "materials=3;magnets=4;syndicate=3"
/obj/item/weapon/grenade/spawnergrenade/feral_cats/prime() //Own proc for this because the regular one would flash people which was dumb.
update_mob()
@@ -65,4 +65,4 @@
qdel(src)
return
return
@@ -4,9 +4,9 @@
icon = 'icons/obj/grenade.dmi'
icon_state = "syndicate"
item_state = "flashbang"
origin_tech = "materials=3;magnets=4;syndicate=4"
origin_tech = "materials=3;magnets=4;syndicate=3"
/obj/item/weapon/grenade/syndieminibomb/prime()
update_mob()
explosion(src.loc,1,2,4,flame_range = 2)
qdel(src)
qdel(src)
+3 -2
View File
@@ -7,11 +7,11 @@
flags = CONDUCT
slot_flags = SLOT_BELT
throwforce = 5
w_class = 2
w_class = WEIGHT_CLASS_SMALL
throw_speed = 2
throw_range = 5
materials = list(MAT_METAL=500)
origin_tech = "materials=1"
origin_tech = "engineering=3;combat=3"
breakouttime = 600 //Deciseconds = 60s = 1 minutes
var/cuffsound = 'sound/weapons/handcuffs.ogg'
var/trashtype = null //For disposable cuffs
@@ -75,6 +75,7 @@
name = "cable restraints"
desc = "Looks like some cables tied together. Could be used to tie something up."
icon_state = "cuff_white"
origin_tech = "engineering=2"
materials = list(MAT_METAL=150, MAT_GLASS=75)
breakouttime = 300 //Deciseconds = 30s
cuffsound = 'sound/weapons/cablecuff.ogg'
+2 -2
View File
@@ -5,11 +5,11 @@
icon_state = "signmaker"
item_state = "electronic"
force = 5
w_class = 2
w_class = WEIGHT_CLASS_SMALL
throwforce = 0
throw_speed = 3
throw_range = 7
origin_tech = "programming=3"
origin_tech = "magnets=1;programming=3"
var/list/signs = list()
var/max_signs = 20
+12 -12
View File
@@ -7,7 +7,7 @@
throw_speed = 3
throw_range = 4
throwforce = 10
w_class = 1
w_class = WEIGHT_CLASS_TINY
var/reskinned = FALSE
var/reskin_selectable = TRUE //set to FALSE if a subtype is meant to not normally be available as a reskin option (fluff ones will get re-added through their list)
var/list/fluff_transformations = list() //does it have any special transformations only accessible to it? Should only be subtypes of /obj/item/weapon/nullrod
@@ -71,7 +71,7 @@
item_state = "disintegrate"
desc = "This hand of yours glows with an awesome power!"
flags = ABSTRACT | NODROP
w_class = 5
w_class = WEIGHT_CLASS_HUGE
hitsound = 'sound/weapons/sear.ogg'
damtype = BURN
attack_verb = list("punched", "cross countered", "pummeled")
@@ -81,7 +81,7 @@
icon_state = "godstaff-red"
item_state = "godstaff-red"
desc = "It has a mysterious, protective aura."
w_class = 5
w_class = WEIGHT_CLASS_HUGE
force = 5
slot_flags = SLOT_BACK
block_chance = 50
@@ -96,7 +96,7 @@
icon_state = "claymore"
item_state = "claymore"
desc = "A weapon fit for a crusade!"
w_class = 4
w_class = WEIGHT_CLASS_BULKY
slot_flags = SLOT_BACK|SLOT_BELT
block_chance = 30
sharp = 1
@@ -183,7 +183,7 @@
icon_state = "scythe0"
item_state = "scythe0"
desc = "Ask not for whom the bell tolls..."
w_class = 4
w_class = WEIGHT_CLASS_BULKY
armour_penetration = 35
slot_flags = SLOT_BACK
sharp = 1
@@ -255,7 +255,7 @@
item_state = "hammeron"
desc = "This war hammer cost the chaplain fourty thousand space dollars."
slot_flags = SLOT_BELT
w_class = 5
w_class = WEIGHT_CLASS_HUGE
attack_verb = list("smashed", "bashed", "hammered", "crunched")
/obj/item/weapon/nullrod/chainsaw
@@ -263,7 +263,7 @@
desc = "Good? Bad? You're the guy with the chainsaw hand."
icon_state = "chainsaw1"
item_state = "mounted_chainsaw"
w_class = 5
w_class = WEIGHT_CLASS_HUGE
flags = NODROP | ABSTRACT
sharp = 1
edge = 1
@@ -322,7 +322,7 @@
icon_state = "arm_blade"
item_state = "arm_blade"
flags = ABSTRACT | NODROP
w_class = 5
w_class = WEIGHT_CLASS_HUGE
sharp = 1
edge = 1
@@ -349,7 +349,7 @@
/obj/item/weapon/nullrod/claymore/bostaff //May as well make it a "claymore" and inherit the blocking
name = "monk's staff"
desc = "A long, tall staff made of polished wood. Traditionally used in ancient old-Earth martial arts, now used to harass the clown."
w_class = 4
w_class = WEIGHT_CLASS_BULKY
force = 13
block_chance = 40
slot_flags = SLOT_BACK
@@ -365,7 +365,7 @@
name = "arrhythmic knife"
icon_state = "crysknife"
item_state = "crysknife"
w_class = 5
w_class = WEIGHT_CLASS_HUGE
desc = "They say fear is the true mind killer, but stabbing them in the head works too. Honour compels you to not sheathe it once drawn."
sharp = 1
edge = 1
@@ -389,7 +389,7 @@
name = "unholy pitchfork"
icon_state = "pitchfork0"
item_state = "pitchfork0"
w_class = 3
w_class = WEIGHT_CLASS_NORMAL
desc = "Holding this makes you look absolutely devilish."
attack_verb = list("poked", "impaled", "pierced", "jabbed")
hitsound = 'sound/weapons/bladeslice.ogg'
@@ -518,7 +518,7 @@
reskin_selectable = FALSE
icon_state = "godstaff-red"
item_state = "godstaff-red"
w_class = 5
w_class = WEIGHT_CLASS_HUGE
force = 5
slot_flags = SLOT_BACK
block_chance = 50
@@ -3,7 +3,7 @@
desc = "Use this to escape from those evil Red Shirts."
icon_state = "freedom"
item_color = "r"
origin_tech = "materials=2;magnets=3;biotech=3;syndicate=4"
origin_tech = "combat=5;magnets=3;biotech=4;syndicate=2"
uses = 4
@@ -48,4 +48,4 @@ No Implant Specifics"}
/obj/item/weapon/implantcase/freedom/New()
imp = new /obj/item/weapon/implant/freedom(src)
..()
..()
@@ -2,7 +2,7 @@
name = "firearms authentication implant"
desc = "Lets you shoot your guns"
icon_state = "auth"
origin_tech = "materials=2;magnets=2;programming=2;biotech=5;syndicate=5"
origin_tech = "magnets=2;programming=7;biotech=5;syndicate=5"
activated = 0
/obj/item/weapon/implant/weapons_auth/get_data()
@@ -53,7 +53,7 @@
name = "emp implant"
desc = "Triggers an EMP."
icon_state = "emp"
origin_tech = "materials=2;biotech=3;magnets=4;syndicate=4"
origin_tech = "biotech=3;magnets=4;syndicate=1"
uses = 2
/obj/item/weapon/implant/emp/activate()
@@ -65,4 +65,4 @@
/obj/item/weapon/implant/cortical
name = "cortical stack"
desc = "A fist-sized mass of biocircuits and chips."
icon_state = "implant_evil"
icon_state = "implant_evil"
@@ -1,9 +1,9 @@
/obj/item/weapon/storage/hidden/implant
name = "bluespace pocket"
storage_slots = 2
max_w_class = 3
max_combined_w_class = 6
w_class = 4
max_w_class = WEIGHT_CLASS_NORMAL
max_combined_w_class = WEIGHT_CLASS_GIGANTIC
w_class = WEIGHT_CLASS_BULKY
cant_hold = list(/obj/item/weapon/disk/nuclear)
silent = 1
@@ -12,7 +12,7 @@
name = "storage implant"
desc = "Stores up to two big items in a bluespace pocket."
icon_state = "storage"
origin_tech = "materials=2;magnets=4;bluespace=4;syndicate=4"
origin_tech = "materials=2;magnets=4;bluespace=5;syndicate=4"
item_color = "r"
var/obj/item/weapon/storage/hidden/implant/storage
@@ -58,4 +58,4 @@
/obj/item/weapon/implanter/storage/New()
imp = new /obj/item/weapon/implant/storage(src)
..()
..()
@@ -6,7 +6,7 @@
item_state = "implantcase"
throw_speed = 2
throw_range = 5
w_class = 1
w_class = WEIGHT_CLASS_TINY
origin_tech = "materials=1;biotech=2"
materials = list(MAT_GLASS=500)
var/obj/item/weapon/implant/imp = null
@@ -98,4 +98,4 @@
/obj/item/weapon/implantcase/death_alarm/New()
imp = new /obj/item/weapon/implant/death_alarm(src)
..()
..()
@@ -6,8 +6,8 @@
item_state = "syringe_0"
throw_speed = 3
throw_range = 5
w_class = 2
origin_tech = "materials=1;biotech=3;programming=2"
w_class = WEIGHT_CLASS_SMALL
origin_tech = "materials=2;biotech=3"
materials = list(MAT_METAL=600, MAT_GLASS=200)
toolspeed = 1
var/obj/item/weapon/implant/imp = null
@@ -86,4 +86,4 @@
/obj/item/weapon/implanter/death_alarm/New()
imp = new /obj/item/weapon/implant/death_alarm(src)
..()
..()
@@ -8,7 +8,7 @@
item_state = "electronic"
throw_speed = 3
throw_range = 5
w_class = 2
w_class = WEIGHT_CLASS_SMALL
var/obj/item/weapon/implantcase/case = null
/obj/item/weapon/implantpad/Destroy()
@@ -3,7 +3,7 @@
desc = "Summon things."
icon = 'icons/obj/radio.dmi'
icon_state = "radio"
origin_tech = "materials=2;magnets=4;programming=4;biotech=4;syndicate=8;bluespace=5"
origin_tech = "materials=4;magnets=4;programming=4;biotech=4;syndicate=5;bluespace=5"
/obj/item/weapon/implant/uplink/New()
hidden_uplink = new(src)
@@ -32,4 +32,4 @@
/obj/item/weapon/implanter/uplink/New()
imp = new /obj/item/weapon/implant/uplink(src)
..()
..()
+8 -9
View File
@@ -12,18 +12,18 @@
/obj/item/weapon/kitchen
icon = 'icons/obj/kitchen.dmi'
origin_tech = "materials=1"
/*
* Utensils
*/
/obj/item/weapon/kitchen/utensil
force = 5.0
w_class = 1
w_class = WEIGHT_CLASS_TINY
throwforce = 0.0
throw_speed = 3
throw_range = 5
flags = CONDUCT
origin_tech = "materials=1"
attack_verb = list("attacked", "stabbed", "poked")
hitsound = 'sound/weapons/bladeslice.ogg'
sharp = 0
@@ -91,13 +91,12 @@
desc = "A general purpose Chef's Knife made by SpaceCook Incorporated. Guaranteed to stay sharp for years to come."
flags = CONDUCT
force = 10
w_class = 2
w_class = WEIGHT_CLASS_SMALL
throwforce = 10
hitsound = 'sound/weapons/bladeslice.ogg'
throw_speed = 3
throw_range = 6
materials = list(MAT_METAL=12000)
origin_tech = "materials=1"
attack_verb = list("slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut")
no_embed = 1
sharp = 1
@@ -122,7 +121,7 @@
desc = "The unearthly energies that once powered this blade are now dormant."
icon = 'icons/obj/wizard.dmi'
icon_state = "render"
w_class = 3
w_class = WEIGHT_CLASS_NORMAL
/obj/item/weapon/kitchen/knife/butcher
name = "butcher's cleaver"
@@ -132,7 +131,7 @@
force = 15
throwforce = 8
attack_verb = list("cleaved", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut")
w_class = 3
w_class = WEIGHT_CLASS_NORMAL
/obj/item/weapon/kitchen/knife/butcher/meatcleaver
name = "Meat Cleaver"
@@ -149,7 +148,7 @@
desc = "A military combat utility survival knife."
force = 20
throwforce = 20
origin_tech = "materials=2;combat=4"
origin_tech = "materials=3;combat=4"
attack_verb = list("slashed", "stabbed", "sliced", "torn", "ripped", "cut")
/obj/item/weapon/kitchen/knife/carrotshiv
@@ -175,7 +174,7 @@
throwforce = 10.0
throw_speed = 3
throw_range = 7
w_class = 3
w_class = WEIGHT_CLASS_NORMAL
attack_verb = list("bashed", "battered", "bludgeoned", "thrashed", "whacked")
/* Trays moved to /obj/item/weapon/storage/bag */
@@ -192,7 +191,7 @@
throwforce = 5
throw_speed = 3
throw_range = 3
w_class = 2
w_class = WEIGHT_CLASS_SMALL
attack_verb = list("bashed", "battered", "bludgeoned", "thrashed", "smashed")
/obj/item/weapon/kitchen/mould/bear
+5 -4
View File
@@ -6,8 +6,8 @@
icon_state = "handcuff"
flags = CONDUCT
throwforce = 0
w_class = 3
origin_tech = "materials=1"
w_class = WEIGHT_CLASS_NORMAL
origin_tech = "engineering=3;combat=3"
slowdown = 7
breakouttime = 300 //Deciseconds = 30s = 0.5 minute
@@ -17,6 +17,7 @@
throw_range = 1
icon_state = "beartrap"
desc = "A trap used to catch bears and other legged creatures."
origin_tech = "engineering=4"
var/armed = 0
var/trap_damage = 20
var/obj/item/weapon/grenade/iedcasing/IED = null
@@ -196,7 +197,7 @@
desc = "A specialized hard-light bola designed to ensnare fleeing criminals and aid in arrests."
icon_state = "ebola"
hitsound = 'sound/weapons/tase.ogg'
w_class = 2
w_class = WEIGHT_CLASS_SMALL
breakouttime = 60
/obj/item/weapon/restraints/legcuffs/bola/energy/throw_impact(atom/hit_atom)
@@ -204,4 +205,4 @@
var/obj/item/weapon/restraints/legcuffs/beartrap/B = new /obj/item/weapon/restraints/legcuffs/beartrap/energy/cyborg(get_turf(hit_atom))
B.Crossed(hit_atom)
qdel(src)
..()
..()
+4 -4
View File
@@ -9,7 +9,7 @@
item_state = "lighter-g"
var/icon_on = "lighter-g-on"
var/icon_off = "lighter-g"
w_class = 2
w_class = WEIGHT_CLASS_SMALL
throwforce = 4
flags = CONDUCT
slot_flags = SLOT_BELT
@@ -35,7 +35,7 @@
if(user.r_hand == src || user.l_hand == src || isrobot(user))
if(!lit)
lit = 1
w_class = 4
w_class = WEIGHT_CLASS_BULKY
icon_state = icon_on
item_state = icon_on
if(istype(src, /obj/item/weapon/lighter/zippo) )
@@ -59,7 +59,7 @@
processing_objects.Add(src)
else
lit = 0
w_class = 1
w_class = WEIGHT_CLASS_TINY
icon_state = icon_off
item_state = icon_off
if(istype(src, /obj/item/weapon/lighter/zippo) )
@@ -147,7 +147,7 @@
icon_state = "match_unlit"
var/lit = 0
var/smoketime = 5
w_class = 1
w_class = WEIGHT_CLASS_TINY
origin_tech = "materials=1"
attack_verb = list("burnt", "singed")
+1 -4
View File
@@ -580,11 +580,8 @@
<h2>Protolathe</h2>
This machine is an advanced form of the Autolathe that produce non-circuit designs. Unlike the Autolathe, it can use processed metal, glass, solid plasma, silver, gold, and diamonds along with a variety of chemicals to produce devices. The downside is that, again, not all devices you make are 100% reliable when you first discover them.
<h1>Reliability and You</h1>
As it has been stated, many devices when they're first discovered do not have a 100% reliablity when you first discover them. Instead, the reliablity of the device is dependent upon a base reliability value, whatever improvements to the design you've discovered through the Destructive Analyzer, and any advancements you've made with the device's source technologies. To be able to improve the reliability of a device, you have to use the device until it breaks beyond repair. Once that happens, you can analyze it in a Destructive Analyzer. Once the device reachs a certain minimum reliability, you'll gain tech advancements from it.
<h1>Building a Better Machine</h1>
Many machines produces from circuit boards and inserted into a machine frame require a variety of parts to construct. These are parts like capacitors, batteries, matter bins, and so forth. As your knowledge of science improves, more advanced versions are unlocked. If you use these parts when constructing something, its attributes may be improved. For example, if you use an advanced matter bin when constructing an autolathe (rather then a regular one), it'll hold more materials. Experiment around with stock parts of various qualities to see how they affect the end results! Be warned, however: Tier 3 and higher stock parts don't have 100% reliability and their low reliability may affect the reliability of the end machine.
Many machines produces from circuit boards and inserted into a machine frame require a variety of parts to construct. These are parts like capacitors, batteries, matter bins, and so forth. As your knowledge of science improves, more advanced versions are unlocked. If you use these parts when constructing something, its attributes may be improved. For example, if you use an advanced matter bin when constructing an autolathe (rather then a regular one), it'll hold more materials. Experiment around with stock parts of various qualities to see how they affect the end results!
</body>
</html>
"}*/
@@ -2,8 +2,8 @@
var/active = 0
var/force_on = 30 //force when active
var/throwforce_on = 20
w_class = 2
var/w_class_on = 4
w_class = WEIGHT_CLASS_SMALL
var/w_class_on = WEIGHT_CLASS_BULKY
var/icon_state_on = "axe1"
var/list/attack_verb_on = list("attacked", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut")
no_embed = 1 // Physically impossible for energy weapons to embed themselves into people, this should fix that. -- Dave
@@ -61,12 +61,12 @@
throwforce_on = 30
throw_speed = 3
throw_range = 5
w_class = 3
w_class_on = 5
w_class = WEIGHT_CLASS_NORMAL
w_class_on = WEIGHT_CLASS_HUGE
hitsound = "swing_hit"
flags = CONDUCT
armour_penetration = 100
origin_tech = "combat=3"
origin_tech = "combat=4;magnets=3"
attack_verb = list("attacked", "chopped", "cleaved", "torn", "cut")
attack_verb_on = list()
sharp = 1
@@ -86,7 +86,7 @@
throw_range = 5
hitsound = "swing_hit"
armour_penetration = 35
origin_tech = "magnets=3;syndicate=4"
origin_tech = "combat=3;magnets=4;syndicate=4"
block_chance = 50
sharp = 1
edge = 1
@@ -123,13 +123,12 @@
sharp = 1
edge = 1
hitsound = 'sound/weapons/circsawhit.ogg'
origin_tech = "materials=3;biotech=3;syndicate=3"
icon = 'icons/obj/surgery.dmi'
icon_state = "esaw_0"
icon_state_on = "esaw_1"
hitcost = 75 //Costs more than a standard cyborg esword
item_color = null
w_class = 3
w_class = WEIGHT_CLASS_NORMAL
/obj/item/weapon/melee/energy/sword/cyborg/saw/New()
..()
@@ -207,7 +206,7 @@
throwforce = 1//Throwing or dropping the item deletes it.
throw_speed = 3
throw_range = 1
w_class = 4//So you can't hide it in your pocket or some such.
w_class = WEIGHT_CLASS_BULKY //So you can't hide it in your pocket or some such.
armour_penetration = 50
attack_verb = list("attacked", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut")
var/datum/effect/system/spark_spread/spark_system
@@ -223,4 +222,4 @@
qdel(src)
/obj/item/weapon/melee/energy/blade/attack_self(mob/user)
return
return
@@ -10,8 +10,8 @@
slot_flags = SLOT_BELT
force = 10
throwforce = 7
w_class = 3
origin_tech = "combat=4"
w_class = WEIGHT_CLASS_NORMAL
origin_tech = "combat=5"
attack_verb = list("flogged", "whipped", "lashed", "disciplined")
hitsound = 'sound/weapons/slash.ogg' //pls replace
@@ -28,7 +28,7 @@
flags = CONDUCT
force = 15
throwforce = 10
w_class = 4
w_class = WEIGHT_CLASS_BULKY
block_chance = 50
armour_penetration = 75
sharp = 1
@@ -50,7 +50,7 @@
item_state = "icepick"
force = 15
throwforce = 10
w_class = 2
w_class = WEIGHT_CLASS_SMALL
attack_verb = list("stabbed", "jabbed", "iced,")
/obj/item/weapon/melee/candy_sword
@@ -60,5 +60,5 @@
item_state = "candy_sword"
force = 10
throwforce = 7
w_class = 3
w_class = WEIGHT_CLASS_NORMAL
attack_verb = list("slashed", "stabbed", "sliced", "caned")
+5 -5
View File
@@ -30,7 +30,7 @@
flags = CONDUCT
force = 5.0
throwforce = 7.0
w_class = 2
w_class = WEIGHT_CLASS_SMALL
materials = list(MAT_METAL=50)
attack_verb = list("bludgeoned", "whacked", "disciplined", "thrashed", "Vaudevilled")
@@ -43,7 +43,7 @@
icon = 'icons/obj/items.dmi'
icon_state = "c_tube"
throwforce = 1
w_class = 1
w_class = WEIGHT_CLASS_TINY
throw_speed = 4
throw_range = 5
@@ -65,7 +65,7 @@
var/data = ""
var/base_url = "http://svn.slurm.us/public/spacestation13/misc/game_kit"
item_state = "sheet-metal"
w_class = 5
w_class = WEIGHT_CLASS_HUGE
*/
/obj/item/weapon/gift
@@ -76,7 +76,7 @@
var/size = 3.0
var/obj/item/gift = null
item_state = "gift"
w_class = 4
w_class = WEIGHT_CLASS_BULKY
/obj/item/weapon/kidanglobe
name = "Kidan homeworld globe"
@@ -134,7 +134,7 @@
throwforce = 2
throw_speed = 1
throw_range = 4
w_class = 2
w_class = WEIGHT_CLASS_SMALL
attack_verb = list("called", "rang")
hitsound = 'sound/weapons/ring.ogg'
var/cooldown = 0
+2 -1
View File
@@ -9,7 +9,7 @@
throwforce = 5.0
throw_speed = 3
throw_range = 7
w_class = 3
w_class = WEIGHT_CLASS_NORMAL
attack_verb = list("mopped", "bashed", "bludgeoned", "whacked")
burn_state = FLAMMABLE
var/mopping = 0
@@ -78,6 +78,7 @@
mopcap = 15
icon_state = "advmop"
item_state = "mop" //meh will do for now until TG makes one
origin_tech = "materials=3;engineering=3"
force = 6
throwforce = 8
throw_range = 4
+2 -2
View File
@@ -7,7 +7,7 @@
icon_state = "paint_neutral"
item_state = "paintcan"
materials = list(MAT_METAL=200)
w_class = 3
w_class = WEIGHT_CLASS_NORMAL
burn_state = FLAMMABLE
burntime = 5
amount_per_transfer_from_this = 5
@@ -63,4 +63,4 @@
/obj/item/weapon/reagent_containers/glass/paint/remover
name = "paint remover bucket"
list_reagents = list("paint_remover" = 70)
list_reagents = list("paint_remover" = 70)
@@ -1,7 +1,7 @@
/obj/item/weapon/pneumatic_cannon
name = "pneumatic cannon"
desc = "A gas-powered cannon that can fire any object loaded into it."
w_class = 4
w_class = WEIGHT_CLASS_BULKY
force = 8 //Very heavy
attack_verb = list("bludgeoned", "smashed", "beaten")
icon = 'icons/obj/pneumaticCannon.dmi'
@@ -132,7 +132,7 @@
name = "improvised pneumatic cannon"
desc = "A gas-powered, object-firing cannon made out of common parts."
force = 5
w_class = 3
w_class = WEIGHT_CLASS_NORMAL
maxWeightClass = 7
gasPerThrow = 5
@@ -15,7 +15,6 @@
materials = list(MAT_METAL=700, MAT_GLASS=50)
var/rigged = 0 // true if rigged to explode
var/chargerate = 100 //how much power is given every tick in a recharger
var/minor_fault = 0 //If not 100% reliable, it will build up faults.
var/self_recharge = 0 //does it self recharge, over time, or not?
var/grown_battery = FALSE // If it's a grown that acts as a battery, add a wire overlay to it.
@@ -102,7 +101,7 @@
/obj/item/weapon/stock_parts/cell/super
name = "super-capacity power cell"
origin_tech = "powerstorage=5"
origin_tech = "powerstorage=3;materials=3"
icon_state = "scell"
maxcharge = 20000
materials = list(MAT_GLASS=300)
@@ -115,7 +114,7 @@
/obj/item/weapon/stock_parts/cell/hyper
name = "hyper-capacity power cell"
origin_tech = "powerstorage=6"
origin_tech = "powerstorage=4;engineering=4;materials=4"
icon_state = "hpcell"
maxcharge = 30000
materials = list(MAT_GLASS=400)
@@ -128,7 +127,7 @@
/obj/item/weapon/stock_parts/cell/bluespace
name = "bluespace power cell"
origin_tech = "powerstorage=7"
origin_tech = "powerstorage=5;bluespace=4;materials=4;engineering=4"
icon_state = "bscell"
maxcharge = 40000
materials = list(MAT_GLASS=600)
@@ -142,7 +141,7 @@
/obj/item/weapon/stock_parts/cell/infinite
name = "infinite-capacity power cell!"
icon_state = "icell"
origin_tech = null
origin_tech = "powerstorage=7"
maxcharge = 30000
materials = list(MAT_GLASS=1000)
rating = 6
@@ -161,13 +160,12 @@
maxcharge = 300
materials = list()
rating = 1
minor_fault = 1
grown_battery = TRUE //it has the overlays for wires
/obj/item/weapon/stock_parts/cell/high/slime
name = "charged slime core"
desc = "A yellow slime core infused with plasma, it crackles with power."
origin_tech = "powerstorage=2;biotech=4"
origin_tech = "powerstorage=5;biotech=4"
icon = 'icons/mob/slimes.dmi'
icon_state = "yellow slime extract"
materials = list()
+1 -1
View File
@@ -8,7 +8,7 @@
force = 12
throwforce = 10
throw_range = 7
w_class = 3
w_class = WEIGHT_CLASS_NORMAL
origin_tech = "combat=5;powerstorage=3;syndicate=3"
var/click_delay = 1.5
var/fisto_setting = 1
+1 -1
View File
@@ -6,7 +6,7 @@
force = 5
sharp = 1
edge = 1
w_class = 2
w_class = WEIGHT_CLASS_SMALL
hitsound = 'sound/weapons/bladeslice.ogg'
attack_verb = list("slices", "cuts", "stabs", "jabs")
toolspeed = 1
+4 -4
View File
@@ -4,17 +4,17 @@
icon = 'icons/obj/wizard.dmi'
icon_state = "scroll"
var/uses = 4.0
w_class = 2
w_class = WEIGHT_CLASS_SMALL
item_state = "paper"
throw_speed = 4
throw_range = 20
origin_tech = "bluespace=4"
origin_tech = "bluespace=6"
burn_state = FLAMMABLE
/obj/item/weapon/teleportation_scroll/apprentice
name = "lesser scroll of teleportation"
uses = 1
origin_tech = "bluespace 2"
origin_tech = "bluespace=5"
/obj/item/weapon/teleportation_scroll/attack_self(mob/user as mob)
user.set_machine(src)
@@ -96,4 +96,4 @@
user.loc = pick(L)
smoke.start()
src.uses -= 1
src.uses -= 1
+2 -2
View File
@@ -7,7 +7,7 @@
sharp = 1
edge = 1
desc = "Could probably be used as ... a throwing weapon?"
w_class = 1
w_class = WEIGHT_CLASS_TINY
force = 5.0
throwforce = 10.0
item_state = "shard-glass"
@@ -112,4 +112,4 @@
src.pixel_x = rand(-5, 5)
src.pixel_y = rand(-5, 5)
else
return
return
+11 -9
View File
@@ -19,9 +19,9 @@
throwforce = 5
throw_speed = 2
throw_range = 3
w_class = 4
w_class = WEIGHT_CLASS_BULKY
materials = list(MAT_GLASS=7500, MAT_METAL=1000)
origin_tech = "materials=2"
origin_tech = "materials=3;combat=4"
attack_verb = list("shoved", "bashed")
var/cooldown = 0 //shield bash cooldown. based on world.time
@@ -46,6 +46,7 @@
icon_state = "buckler"
item_state = "buckler"
materials = list()
origin_tech = "materials=1;combat=3;biotech=2"
burn_state = FLAMMABLE
block_chance = 30
@@ -58,8 +59,8 @@
throwforce = 3
throw_speed = 3
throw_range = 5
w_class = 1
origin_tech = "materials=4;magnets=3;syndicate=4"
w_class = WEIGHT_CLASS_TINY
origin_tech = "materials=4;magnets=5;syndicate=6"
attack_verb = list("shoved", "bashed")
var/active = 0
@@ -80,14 +81,14 @@
force = 10
throwforce = 8
throw_speed = 2
w_class = 4
w_class = WEIGHT_CLASS_BULKY
playsound(user, 'sound/weapons/saberon.ogg', 35, 1)
to_chat(user, "<span class='notice'>[src] is now active.</span>")
else
force = 3
throwforce = 3
throw_speed = 3
w_class = 1
w_class = WEIGHT_CLASS_TINY
playsound(user, 'sound/weapons/saberoff.ogg', 35, 1)
to_chat(user, "<span class='notice'>[src] can now be concealed.</span>")
if(istype(user,/mob/living/carbon/human))
@@ -102,12 +103,13 @@
desc = "An advanced riot shield made of lightweight materials that collapses for easy storage."
icon = 'icons/obj/weapons.dmi'
icon_state = "teleriot0"
origin_tech = "materials=3;combat=4;engineering=4"
slot_flags = null
force = 3
throwforce = 3
throw_speed = 3
throw_range = 4
w_class = 3
w_class = WEIGHT_CLASS_NORMAL
var/active = 0
/obj/item/weapon/shield/riot/tele/hit_reaction(mob/living/carbon/human/owner, attack_text, final_block_chance)
@@ -124,14 +126,14 @@
force = 8
throwforce = 5
throw_speed = 2
w_class = 4
w_class = WEIGHT_CLASS_BULKY
slot_flags = SLOT_BACK
to_chat(user, "<span class='notice'>You extend \the [src].</span>")
else
force = 3
throwforce = 3
throw_speed = 3
w_class = 3
w_class = WEIGHT_CLASS_NORMAL
slot_flags = null
to_chat(user, "<span class='notice'>[src] can now be concealed.</span>")
if(istype(user,/mob/living/carbon/human))
+2 -2
View File
@@ -4,7 +4,7 @@
name = "blank picket sign"
desc = "It's blank"
force = 5
w_class = 4
w_class = WEIGHT_CLASS_BULKY
attack_verb = list("bashed","smacked")
burn_state = FLAMMABLE
@@ -42,4 +42,4 @@
reqs = list(/obj/item/stack/rods = 1,
/obj/item/stack/sheet/cardboard = 2)
time = 80
category = CAT_MISC
category = CAT_MISC
+2 -2
View File
@@ -4,7 +4,7 @@
gender = PLURAL
icon = 'icons/obj/items.dmi'
icon_state = "soap"
w_class = 1
w_class = WEIGHT_CLASS_TINY
throwforce = 0
throw_speed = 4
throw_range = 20
@@ -53,4 +53,4 @@
/obj/item/weapon/soap/syndie
desc = "An untrustworthy bar of soap made of strong chemical agents that dissolve blood faster."
icon_state = "soapsyndie"
cleanspeed = 10 //much faster than mop so it is useful for traitors who want to clean crime scenes
cleanspeed = 10 //much faster than mop so it is useful for traitors who want to clean crime scenes
+2 -2
View File
@@ -7,7 +7,7 @@
throwforce = 5.0
throw_speed = 1
throw_range = 5
w_class = 2
w_class = WEIGHT_CLASS_SMALL
armour_penetration = 100
attack_verb = list("bludgeoned", "whacked", "disciplined")
burn_state = FLAMMABLE
@@ -73,4 +73,4 @@
throwforce = 5.0
throw_speed = 1
throw_range = 5
w_class = 2
w_class = WEIGHT_CLASS_SMALL
+29 -30
View File
@@ -5,7 +5,7 @@
desc = "Special mechanical module made to store, sort, and apply standard machine parts."
icon_state = "RPED"
item_state = "RPED"
w_class = 5
w_class = WEIGHT_CLASS_HUGE
can_hold = list(/obj/item/weapon/stock_parts)
storage_slots = 50
use_to_pickup = 1
@@ -13,7 +13,7 @@
allow_quick_empty = 1
collection_mode = 1
display_contents_with_number = 1
max_w_class = 3
max_w_class = WEIGHT_CLASS_NORMAL
max_combined_w_class = 100
var/works_from_distance = 0
var/primary_sound = 'sound/items/rped.ogg'
@@ -24,21 +24,20 @@
/obj/item/weapon/storage/part_replacer/afterattack(obj/machinery/T as obj, mob/living/carbon/human/user as mob, flag, params)
if(flag)
return
else
if(works_from_distance)
if(istype(T))
if(T.component_parts)
T.exchange_parts(user, src)
user.Beam(T,icon_state="rped_upgrade",icon='icons/effects/effects.dmi',time=5)
else if(works_from_distance)
if(istype(T))
if(T.component_parts)
T.exchange_parts(user, src)
user.Beam(T,icon_state="rped_upgrade",icon='icons/effects/effects.dmi',time=5)
return
/obj/item/weapon/storage/part_replacer/bluespace
name = "bluespace rapid part exchange device"
desc = "A version of the RPED that allows for replacement of parts and scanning from a distance, along with higher capacity for parts."
icon_state = "BS_RPED"
w_class = 3
w_class = WEIGHT_CLASS_NORMAL
storage_slots = 400
max_w_class = 3
max_w_class = WEIGHT_CLASS_NORMAL
max_combined_w_class = 800
works_from_distance = 1
primary_sound = 'sound/items/PSHOOM.ogg'
@@ -63,11 +62,11 @@
desc = "What?"
gender = PLURAL
icon = 'icons/obj/stock_parts.dmi'
w_class = 2
w_class = WEIGHT_CLASS_SMALL
var/rating = 1
toolspeed = 1
usesound = 'sound/items/Deconstruct.ogg'
/obj/item/weapon/stock_parts/New()
src.pixel_x = rand(-5.0, 5)
src.pixel_y = rand(-5.0, 5)
@@ -164,7 +163,7 @@
name = "super capacitor"
desc = "A super-high capacity capacitor used in the construction of a variety of devices."
icon_state = "super_capacitor"
origin_tech = "powerstorage=5;materials=4"
origin_tech = "powerstorage=4;engineering=4"
rating = 3
materials = list(MAT_METAL=50, MAT_GLASS=50)
@@ -172,7 +171,7 @@
name = "phasic scanning module"
desc = "A compact, high resolution phasic scanning module used in the construction of certain devices."
icon_state = "super_scan_module"
origin_tech = "magnets=5"
origin_tech = "magnets=4;engineering=4"
rating = 3
materials = list(MAT_METAL=50, MAT_GLASS=20)
@@ -180,7 +179,7 @@
name = "pico-manipulator"
desc = "A tiny little manipulator used in the construction of certain devices."
icon_state = "pico_mani"
origin_tech = "materials=5;programming=2"
origin_tech = "materials=4;programming=4;engineering=4"
rating = 3
materials = list(MAT_METAL=30)
@@ -188,7 +187,7 @@
name = "ultra-high-power micro-laser"
icon_state = "ultra_high_micro_laser"
desc = "A tiny laser used in certain devices."
origin_tech = "magnets=5"
origin_tech = "magnets=4;engineering=4"
rating = 3
materials = list(MAT_METAL=10, MAT_GLASS=20)
@@ -196,7 +195,7 @@
name = "super matter bin"
desc = "A container for hold compressed matter awaiting re-construction."
icon_state = "super_matter_bin"
origin_tech = "materials=5"
origin_tech = "materials=4;engineering=4"
rating = 3
materials = list(MAT_METAL=80)
@@ -206,7 +205,7 @@
name = "quadratic capacitor"
desc = "An capacity capacitor used in the construction of a variety of devices."
icon_state = "quadratic_capacitor"
origin_tech = "powerstorage=6;materials=5"
origin_tech = "powerstorage=5;materials=4;engineering=4"
rating = 4
materials = list(MAT_METAL=50, MAT_GLASS=50)
@@ -214,7 +213,7 @@
name = "triphasic scanning module"
desc = "A compact, ultra resolution triphasic scanning module used in the construction of certain devices."
icon_state = "triphasic_scan_module"
origin_tech = "magnets=6"
origin_tech = "magnets=5;materials=4;engineering=4"
rating = 4
materials = list(MAT_METAL=50, MAT_GLASS=20)
@@ -222,7 +221,7 @@
name = "femto-manipulator"
desc = "A tiny little manipulator used in the construction of certain devices."
icon_state = "femto_mani"
origin_tech = "materials=6;programming=3"
origin_tech = "materials=6;programming=4;engineering=4"
rating = 4
materials = list(MAT_METAL=30)
@@ -230,7 +229,7 @@
name = "quad-ultra micro-laser"
icon_state = "quadultra_micro_laser"
desc = "A tiny laser used in certain devices."
origin_tech = "magnets=6"
origin_tech = "magnets=5;materials=4;engineering=4"
rating = 4
materials = list(MAT_METAL=10, MAT_GLASS=20)
@@ -238,7 +237,7 @@
name = "bluespace matter bin"
desc = "A container for hold compressed matter awaiting re-construction."
icon_state = "bluespace_matter_bin"
origin_tech = "materials=6"
origin_tech = "materials=6;programming=4;engineering=4"
rating = 4
materials = list(MAT_METAL=80)
@@ -248,49 +247,49 @@
name = "subspace ansible"
icon_state = "subspace_ansible"
desc = "A compact module capable of sensing extradimensional activity."
origin_tech = "programming=2;magnets=3;materials=2;bluespace=1"
origin_tech = "programming=2;magnets=2;materials=2;bluespace=1"
materials = list(MAT_METAL=30, MAT_GLASS=10)
/obj/item/weapon/stock_parts/subspace/filter
name = "hyperwave filter"
icon_state = "hyperwave_filter"
desc = "A tiny device capable of filtering and converting super-intense radiowaves."
origin_tech = "programming=2;magnets=1"
origin_tech = "programming=2;magnets=2"
materials = list(MAT_METAL=30, MAT_GLASS=10)
/obj/item/weapon/stock_parts/subspace/amplifier
name = "subspace amplifier"
icon_state = "subspace_amplifier"
desc = "A compact micro-machine capable of amplifying weak subspace transmissions."
origin_tech = "programming=2;magnets=2;materials=1;bluespace=1"
origin_tech = "programming=2;magnets=2;materials=2;bluespace=2"
materials = list(MAT_METAL=30, MAT_GLASS=10)
/obj/item/weapon/stock_parts/subspace/treatment
name = "subspace treatment disk"
icon_state = "treatment_disk"
desc = "A compact micro-machine capable of stretching out hyper-compressed radio waves."
origin_tech = "programming=2;magnets=1;materials=3;bluespace=1"
origin_tech = "programming=2;magnets=2;materials=2;bluespace=2"
materials = list(MAT_METAL=30, MAT_GLASS=10)
/obj/item/weapon/stock_parts/subspace/analyzer
name = "subspace wavelength analyzer"
icon_state = "wavelength_analyzer"
desc = "A sophisticated analyzer capable of analyzing cryptic subspace wavelengths."
origin_tech = "programming=2;magnets=2;materials=2;bluespace=1"
origin_tech = "programming=2;magnets=2;materials=2;bluespace=2"
materials = list(MAT_METAL=30, MAT_GLASS=10)
/obj/item/weapon/stock_parts/subspace/crystal
name = "ansible crystal"
icon_state = "ansible_crystal"
desc = "A crystal made from pure glass used to transmit laser databursts to subspace."
origin_tech = "magnets=2;materials=2;bluespace=1"
origin_tech = "magnets=2;materials=2;bluespace=2;plasmatech=2"
materials = list(MAT_GLASS=50)
/obj/item/weapon/stock_parts/subspace/transmitter
name = "subspace transmitter"
icon_state = "subspace_transmitter"
desc = "A large piece of equipment used to open a window into the subspace dimension."
origin_tech = "magnets=3;materials=3;bluespace=2"
origin_tech = "magnets=2;materials=2;bluespace=2"
materials = list(MAT_METAL=50)
/obj/item/weapon/research//Makes testing much less of a pain -Sieve
@@ -298,4 +297,4 @@
icon = 'icons/obj/stock_parts.dmi'
icon_state = "capacitor"
desc = "A debug item for research."
origin_tech = "materials=8;programming=8;magnets=8;powerstorage=8;bluespace=8;combat=8;biotech=8;syndicate=8"
origin_tech = "materials=8;programming=8;magnets=8;powerstorage=8;bluespace=8;combat=8;biotech=8;syndicate=8;engineering=8;plasmatech=8;abductor=8"
@@ -12,6 +12,7 @@
desc = "His Grace."
force = 5
throwforce = 10
origin_tech = "combat=4;engineering=4;syndicate=2"
var/list/servantlinks = list()
var/hunger = 0
var/hunger_message_level = 0
@@ -10,9 +10,9 @@
item_state = "backpack"
lefthand_file = 'icons/mob/inhands/clothing_lefthand.dmi'
righthand_file = 'icons/mob/inhands/clothing_righthand.dmi'
w_class = 4
w_class = WEIGHT_CLASS_BULKY
slot_flags = SLOT_BACK //ERROOOOO
max_w_class = 3
max_w_class = WEIGHT_CLASS_NORMAL
max_combined_w_class = 21
storage_slots = 21
burn_state = FLAMMABLE
@@ -33,63 +33,47 @@
/obj/item/weapon/storage/backpack/holding
name = "Bag of Holding"
desc = "A backpack that opens into a localized pocket of Blue Space."
origin_tech = "bluespace=4"
origin_tech = "bluespace=5;materials=4;engineering=4;plasmatech=5"
icon_state = "holdingpack"
max_w_class = 5
max_w_class = WEIGHT_CLASS_HUGE
max_combined_w_class = 35
burn_state = FIRE_PROOF
New()
..()
return
/obj/item/weapon/storage/backpack/holding/New()
..()
return
attackby(obj/item/weapon/W as obj, mob/user as mob, params)
if(crit_fail)
to_chat(user, "<span class='warning'>The Bluespace generator isn't working.</span>")
return
else if(istype(W, /obj/item/weapon/storage/backpack/holding) && !W.crit_fail)
var/response = alert(user, "Are you sure you want to put the bag of holding inside another bag of holding?","Are you sure you want to die?","Yes","No")
if(response == "Yes")
user.visible_message("<span class='warning'>[user] grins as \he begins to put a Bag of Holding into a Bag of Holding!</span>", "<span class='warning'>You begin to put the Bag of Holding into the Bag of Holding!</span>")
if(do_after(user, 30, target=src))
investigate_log("has become a singularity. Caused by [user.key]","singulo")
user.visible_message("<span class='warning'>[user] erupts in evil laughter as \he puts the Bag of Holding into another Bag of Holding!</span>", "<span class='warning'>You can't help but laugh wildly as you put the Bag of Holding into another Bag of Holding, complete darkness surrounding you.</span>","<span class='warning'> You hear the sound of scientific evil brewing! </span>")
qdel(W)
var/obj/singularity/singulo = new /obj/singularity(get_turf(user))
singulo.energy = 300 //To give it a small boost
message_admins("[key_name_admin(user)] detonated a bag of holding <A HREF='?_src_=holder;adminplayerobservecoodjump=1;X=[x];Y=[y];Z=[z]'>JMP</a>)")
log_game("[key_name(user)] detonated a bag of holding")
qdel(src)
else
user.visible_message("After careful consideration, [user] has decided that putting a Bag of Holding inside another Bag of Holding would not yield the ideal outcome.","You come to the realization that this might not be the greatest idea.")
else
. = ..()
proc/failcheck(mob/user as mob)
if(prob(src.reliability)) return 1 //No failure
if(prob(src.reliability))
to_chat(user, "<span class='warning'>The Bluespace portal resists your attempt to add another item.</span>")//light failure
else
to_chat(user, "<span class='warning'>The Bluespace generator malfunctions!</span>")
for(var/obj/O in src.contents) //it broke, delete what was in it
qdel(O)
crit_fail = 1
icon_state = "brokenpack"
singularity_act(current_size)
var/dist = max((current_size - 2),1)
explosion(src.loc,(dist),(dist*2),(dist*4))
return
/obj/item/weapon/storage/backpack/holding/attackby(obj/item/weapon/W, mob/user, params)
if(istype(W, /obj/item/weapon/storage/backpack/holding))
var/response = alert(user, "Are you sure you want to put the bag of holding inside another bag of holding?","Are you sure you want to die?","Yes","No")
if(response == "Yes")
user.visible_message("<span class='warning'>[user] grins as \he begins to put a Bag of Holding into a Bag of Holding!</span>", "<span class='warning'>You begin to put the Bag of Holding into the Bag of Holding!</span>")
if(do_after(user, 30, target=src))
investigate_log("has become a singularity. Caused by [user.key]","singulo")
user.visible_message("<span class='warning'>[user] erupts in evil laughter as \he puts the Bag of Holding into another Bag of Holding!</span>", "<span class='warning'>You can't help but laugh wildly as you put the Bag of Holding into another Bag of Holding, complete darkness surrounding you.</span>","<span class='warning'> You hear the sound of scientific evil brewing! </span>")
qdel(W)
var/obj/singularity/singulo = new /obj/singularity(get_turf(user))
singulo.energy = 300 //To give it a small boost
message_admins("[key_name_admin(user)] detonated a bag of holding <A HREF='?_src_=holder;adminplayerobservecoodjump=1;X=[x];Y=[y];Z=[z]'>JMP</a>)")
log_game("[key_name(user)] detonated a bag of holding")
qdel(src)
else
user.visible_message("After careful consideration, [user] has decided that putting a Bag of Holding inside another Bag of Holding would not yield the ideal outcome.","You come to the realization that this might not be the greatest idea.")
else
. = ..()
/obj/item/weapon/storage/backpack/holding/singularity_act(current_size)
var/dist = max((current_size - 2),1)
explosion(src.loc,(dist),(dist*2),(dist*4))
return
/obj/item/weapon/storage/backpack/santabag
name = "Santa's Gift Bag"
desc = "Space Santa uses this to deliver toys to all the nice children in space on Christmas! Wow, it's pretty big!"
icon_state = "giftbag0"
item_state = "giftbag"
w_class = 4
max_w_class = 3
w_class = WEIGHT_CLASS_BULKY
max_w_class = WEIGHT_CLASS_NORMAL
max_combined_w_class = 400 // can store a ton of shit!
/obj/item/weapon/storage/backpack/cultpack
@@ -243,7 +227,7 @@
name = "smuggler's satchel"
desc = "A very slim satchel that can easily fit into tight spaces."
icon_state = "satchel-flat"
w_class = 3 //Can fit in backpacks itself.
w_class = WEIGHT_CLASS_NORMAL //Can fit in backpacks itself.
max_combined_w_class = 15
level = 1
cant_hold = list(/obj/item/weapon/storage/backpack/satchel_flat) //muh recursive backpacks
+23 -21
View File
@@ -33,8 +33,8 @@
icon_state = "trashbag"
item_state = "trashbag"
w_class = 1
max_w_class = 2
w_class = WEIGHT_CLASS_TINY
max_w_class = WEIGHT_CLASS_SMALL
storage_slots = 30
can_hold = list() // any
cant_hold = list(/obj/item/weapon/disk/nuclear)
@@ -46,16 +46,16 @@
/obj/item/weapon/storage/bag/trash/update_icon()
if(contents.len == 0)
w_class = 1
w_class = WEIGHT_CLASS_TINY
icon_state = "[initial(icon_state)]"
else if(contents.len < 12)
w_class = 4
w_class = WEIGHT_CLASS_BULKY
icon_state = "[initial(icon_state)]1"
else if(contents.len < 21)
w_class = 4
w_class = WEIGHT_CLASS_BULKY
icon_state = "[initial(icon_state)]2"
else
w_class = 4
w_class = WEIGHT_CLASS_BULKY
icon_state = "[initial(icon_state)]3"
/obj/item/weapon/storage/bag/trash/cyborg
@@ -72,6 +72,7 @@
name = "trash bag of holding"
desc = "The latest and greatest in custodial convenience, a trashbag that is capable of holding vast quantities of garbage."
icon_state = "bluetrashbag"
origin_tech = "materials=4;bluespace=4;engineering=4;plasmatech=3"
max_combined_w_class = 60
storage_slots = 60
@@ -88,8 +89,8 @@
item_state = "plasticbag"
slot_flags = SLOT_HEAD|SLOT_BELT
throwforce = 0
w_class = 4
max_w_class = 2
w_class = WEIGHT_CLASS_BULKY
max_w_class = WEIGHT_CLASS_SMALL
storage_slots = 7
display_contents_with_number = 0 //or else this will lead to stupid behavior.
can_hold = list() // any
@@ -131,11 +132,12 @@
desc = "This little bugger can be used to store and transport ores."
icon = 'icons/obj/mining.dmi'
icon_state = "satchel"
origin_tech = "engineering=2"
slot_flags = SLOT_BELT | SLOT_POCKET
w_class = 3
w_class = WEIGHT_CLASS_NORMAL
storage_slots = 50
max_combined_w_class = 200 //Doesn't matter what this is, so long as it's more or equal to storage_slots * ore.w_class
max_w_class = 3
max_w_class = WEIGHT_CLASS_NORMAL
can_hold = list(/obj/item/weapon/ore)
/obj/item/weapon/storage/bag/ore/cyborg
@@ -147,7 +149,7 @@
desc = "A revolution in convenience, this satchel allows for infinite ore storage. It's been outfitted with anti-malfunction safety measures."
storage_slots = INFINITY
max_combined_w_class = INFINITY
origin_tech = "bluespace=3"
origin_tech = "bluespace=4;materials=3;engineering=3"
icon_state = "satchel_bspace"
/obj/item/weapon/storage/bag/ore/holding/cyborg
@@ -164,8 +166,8 @@
icon_state = "plantbag"
storage_slots = 100 //the number of plant pieces it can carry.
max_combined_w_class = 100 //Doesn't matter what this is, so long as it's more or equal to storage_slots * plants.w_class
max_w_class = 3
w_class = 1
max_w_class = WEIGHT_CLASS_NORMAL
w_class = WEIGHT_CLASS_TINY
can_hold = list(/obj/item/weapon/reagent_containers/food/snacks/grown,/obj/item/seeds,/obj/item/weapon/grown,/obj/item/weapon/reagent_containers/food/snacks/ash_flora)
burn_state = FLAMMABLE
@@ -202,7 +204,7 @@
desc = "A patented Nanotrasen storage system designed for any kind of mineral sheet."
var/capacity = 300; //the number of sheets it can carry.
w_class = 3
w_class = WEIGHT_CLASS_NORMAL
allow_quick_empty = 1 // this function is superceded
New()
@@ -343,8 +345,8 @@
desc = "A bag for carrying lots of cash. It's got a big dollar sign printed on the front."
storage_slots = 50; //the number of cash pieces it can carry.
max_combined_w_class = 200 //Doesn't matter what this is, so long as it's more or equal to storage_slots * cash.w_class
max_w_class = 3
w_class = 1
max_w_class = WEIGHT_CLASS_NORMAL
w_class = WEIGHT_CLASS_TINY
can_hold = list(/obj/item/weapon/coin,/obj/item/stack/spacecash)
// -----------------------------
@@ -359,8 +361,8 @@
display_contents_with_number = 0 //This would look really stupid otherwise
storage_slots = 7
max_combined_w_class = 21
max_w_class = 3
w_class = 4 //Bigger than a book because physics
max_w_class = WEIGHT_CLASS_NORMAL
w_class = WEIGHT_CLASS_BULKY //Bigger than a book because physics
can_hold = list(/obj/item/weapon/book, /obj/item/weapon/storage/bible, /obj/item/weapon/tome, /obj/item/weapon/spellbook)
burn_state = FLAMMABLE
@@ -376,7 +378,7 @@
throwforce = 10.0
throw_speed = 3
throw_range = 5
w_class = 4
w_class = WEIGHT_CLASS_BULKY
flags = CONDUCT
materials = list(MAT_METAL=3000)
@@ -469,7 +471,7 @@
desc = "A bag for storing pills, patches, and bottles."
storage_slots = 50
max_combined_w_class = 200
w_class = 1
w_class = WEIGHT_CLASS_TINY
can_hold = list(/obj/item/weapon/reagent_containers/food/pill,/obj/item/weapon/reagent_containers/glass/beaker,/obj/item/weapon/reagent_containers/glass/bottle)
burn_state = FLAMMABLE
/*
@@ -483,6 +485,6 @@
desc = "A bag for the safe transportation and disposal of biowaste and other biological materials."
storage_slots = 25
max_combined_w_class = 200
w_class = 1
w_class = WEIGHT_CLASS_TINY
can_hold = list(/obj/item/slime_extract,/obj/item/weapon/reagent_containers/food/snacks/monkeycube,/obj/item/weapon/reagent_containers/syringe,/obj/item/weapon/reagent_containers/glass/beaker,/obj/item/weapon/reagent_containers/glass/bottle,/obj/item/weapon/reagent_containers/blood,/obj/item/weapon/reagent_containers/hypospray/autoinjector)
burn_state = FLAMMABLE
+14 -26
View File
@@ -176,7 +176,7 @@
icon_state = "securitybelt"
item_state = "security"//Could likely use a better one.
storage_slots = 5
max_w_class = 3
max_w_class = WEIGHT_CLASS_NORMAL
use_item_overlays = 1
can_hold = list(
/obj/item/weapon/grenade/flashbang,
@@ -249,7 +249,7 @@
icon_state = "militarybelt"
item_state = "military"
max_w_class = WEIGHT_CLASS_SMALL
/obj/item/weapon/storage/belt/military/abductor
name = "agent belt"
desc = "A belt used by abductor agents."
@@ -280,7 +280,7 @@
icon_state = "janibelt"
item_state = "janibelt"
storage_slots = 6
max_w_class = 4 // Set to this so the light replacer can fit.
max_w_class = WEIGHT_CLASS_BULKY // Set to this so the light replacer can fit.
use_item_overlays = 1
can_hold = list(
/obj/item/weapon/grenade/chem_grenade/cleaner,
@@ -306,8 +306,8 @@
desc = "For the mining master, holds your lazarus capsules."
icon_state = "lazarusbelt"
item_state = "lazbelt"
w_class = 4
max_w_class = 1
w_class = WEIGHT_CLASS_BULKY
max_w_class = WEIGHT_CLASS_TINY
max_combined_w_class = 6
storage_slots = 6
can_hold = list(/obj/item/device/mobcapsule)
@@ -379,7 +379,7 @@
icon_state = "holster"
item_state = "holster"
storage_slots = 1
max_w_class = 3
max_w_class = WEIGHT_CLASS_NORMAL
can_hold = list(
/obj/item/weapon/gun/projectile/automatic/pistol,
/obj/item/weapon/gun/projectile/revolver/detective
@@ -417,7 +417,7 @@
icon_state = "fannypack_leather"
item_state = "fannypack_leather"
storage_slots = 3
max_w_class = 2
max_w_class = WEIGHT_CLASS_SMALL
/obj/item/weapon/storage/belt/fannypack/black
name = "black fannypack"
@@ -475,8 +475,8 @@
icon_state = "sheath"
item_state = "sheath"
storage_slots = 1
w_class = 4
max_w_class = 4
w_class = WEIGHT_CLASS_BULKY
max_w_class = WEIGHT_CLASS_BULKY
can_hold = list(/obj/item/weapon/melee/rapier)
/obj/item/weapon/storage/belt/rapier/update_icon()
@@ -506,33 +506,21 @@
icon_state = "holdingbelt"
item_state = "holdingbelt"
storage_slots = 14
w_class = 4
max_w_class = 2
w_class = WEIGHT_CLASS_BULKY
max_w_class = WEIGHT_CLASS_SMALL
max_combined_w_class = 21 // = 14 * 1.5, not 14 * 2. This is deliberate
origin_tech = "bluespace=4"
origin_tech = "bluespace=5;materials=4;engineering=4;plasmatech=5"
can_hold = list()
proc/failcheck(mob/user as mob)
if(prob(src.reliability)) return 1 //No failure
if(prob(src.reliability))
to_chat(user, "<span class='warning'>The Bluespace portal resists your attempt to add another item.</span>")//light failure
else
to_chat(user, "<span class='warning'>The Bluespace generator malfunctions!</span>")
for(var/obj/O in src.contents) //it broke, delete what was in it
qdel(O)
crit_fail = 1
return 0
/obj/item/weapon/storage/belt/bluespace/owlman
name = "Owlman's utility belt"
desc = "Sometimes people choose justice. Sometimes, justice chooses you..."
icon_state = "securitybelt"
item_state = "security"
storage_slots = 6
max_w_class = 3
max_w_class = WEIGHT_CLASS_NORMAL
max_combined_w_class = 18
origin_tech = "bluespace=4;syndicate=2"
origin_tech = "bluespace=5;materials=4;engineering=4;plasmatech=5"
allow_quick_empty = 1
can_hold = list(
/obj/item/weapon/grenade/smokebomb,
@@ -4,7 +4,7 @@
icon_state ="bible"
throw_speed = 1
throw_range = 5
w_class = 3
w_class = WEIGHT_CLASS_NORMAL
burn_state = FLAMMABLE
var/mob/affecting = null
var/deity_name = "Christ"
@@ -634,8 +634,8 @@
icon_state = "matchbox"
item_state = "zippo"
storage_slots = 10
w_class = 1
max_w_class = 1
w_class = WEIGHT_CLASS_TINY
max_w_class = WEIGHT_CLASS_TINY
slot_flags = SLOT_BELT
can_hold = list(/obj/item/weapon/match)
@@ -810,4 +810,4 @@
#undef NANOTRASEN
#undef SYNDI
#undef HEART
#undef SMILE
#undef SMILE
@@ -8,12 +8,12 @@
force = 8.0
throw_speed = 2
throw_range = 4
w_class = 4
max_w_class = 3
w_class = WEIGHT_CLASS_BULKY
max_w_class = WEIGHT_CLASS_NORMAL
max_combined_w_class = 21
attack_verb = list("bashed", "battered", "bludgeoned", "thrashed", "whacked")
burn_state = FLAMMABLE
burntime = 20
/obj/item/weapon/storage/briefcase/New()
..()
..()
@@ -115,7 +115,7 @@
desc = "A box of crayons for all your rune drawing needs."
icon = 'icons/obj/crayons.dmi'
icon_state = "crayonbox"
w_class = 2
w_class = WEIGHT_CLASS_SMALL
storage_slots = 6
icon_type = "crayon"
can_hold = list(
@@ -158,7 +158,7 @@
icon = 'icons/obj/cigarettes.dmi'
icon_state = "cigpacket"
item_state = "cigpacket"
w_class = 2
w_class = WEIGHT_CLASS_SMALL
throwforce = 2
slot_flags = SLOT_BELT
storage_slots = 6
@@ -318,7 +318,7 @@
/obj/item/weapon/storage/fancy/rollingpapers
name = "rolling paper pack"
desc = "A pack of NanoTrasen brand rolling papers."
w_class = 1
w_class = WEIGHT_CLASS_TINY
icon = 'icons/obj/cigarettes.dmi'
icon_state = "cig_paper_pack"
storage_slots = 10
@@ -360,7 +360,7 @@
icon = 'icons/obj/vialbox.dmi'
icon_state = "vialbox0"
item_state = "syringe_kit"
max_w_class = 3
max_w_class = WEIGHT_CLASS_NORMAL
can_hold = list(/obj/item/weapon/reagent_containers/glass/beaker/vial)
max_combined_w_class = 14 //The sum of the w_classes of all the items in this storage item.
storage_slots = 6
@@ -155,7 +155,7 @@
name = "first-aid kit"
icon_state = "bezerk"
desc = "I hope you've got insurance."
max_w_class = 3
max_w_class = WEIGHT_CLASS_NORMAL
treatment_oxy = "perfluorodecalin"
treatment_brute = "styptic_powder"
treatment_fire = "silver_sulfadiazine"
@@ -181,7 +181,7 @@
name = "field surgery kit"
icon_state = "duffel-med"
desc = "A kit for surgery in the field."
max_w_class = 4
max_w_class = WEIGHT_CLASS_BULKY
max_combined_w_class = 21
storage_slots = 10
can_hold = list(/obj/item/roller,/obj/item/weapon/bonesetter,/obj/item/weapon/bonegel, /obj/item/weapon/scalpel, /obj/item/weapon/hemostat,
@@ -209,7 +209,7 @@
icon_state = "pill_canister"
icon = 'icons/obj/chemical.dmi'
item_state = "contsolid"
w_class = 2
w_class = WEIGHT_CLASS_SMALL
can_hold = list(/obj/item/weapon/reagent_containers/food/pill, /obj/item/weapon/dice, /obj/item/weapon/paper)
allow_quick_gather = 1
use_to_pickup = 1
@@ -5,8 +5,8 @@
desc = "A locked box."
icon_state = "lockbox+l"
item_state = "syringe_kit"
w_class = 4
max_w_class = 3
w_class = WEIGHT_CLASS_BULKY
max_w_class = WEIGHT_CLASS_NORMAL
max_combined_w_class = 14 //The sum of the w_classes of all the items in this storage item.
storage_slots = 4
req_access = list(access_armory)
@@ -76,7 +76,7 @@
/obj/item/weapon/storage/lockbox/large
name = "Large lockbox"
desc = "A large lockbox"
max_w_class = 4
max_w_class = WEIGHT_CLASS_BULKY
max_combined_w_class = 4 //The sum of the w_classes of all the items in this storage item.
storage_slots = 1
@@ -105,8 +105,8 @@
desc = "A locked box used to store medals of honor."
icon_state = "medalbox+l"
item_state = "syringe_kit"
w_class = 3
max_w_class = 2
w_class = WEIGHT_CLASS_NORMAL
max_w_class = WEIGHT_CLASS_SMALL
max_combined_w_class = 20
storage_slots = 12
req_access = list(access_captain)
@@ -23,8 +23,8 @@
var/l_hacking = 0
var/emagged = 0
var/open = 0
w_class = 3
max_w_class = 2
w_class = WEIGHT_CLASS_NORMAL
max_w_class = WEIGHT_CLASS_SMALL
max_combined_w_class = 14
/obj/item/weapon/storage/secure/examine(mob/user)
@@ -180,8 +180,8 @@
force = 8
throw_speed = 2
throw_range = 4
w_class = 4
max_w_class = 3
w_class = WEIGHT_CLASS_BULKY
max_w_class = WEIGHT_CLASS_NORMAL
max_combined_w_class = 21
attack_verb = list("bashed", "battered", "bludgeoned", "thrashed", "whacked")
@@ -228,7 +228,7 @@
icon_locking = "safeb"
icon_sparking = "safespark"
force = 8
w_class = 5
w_class = WEIGHT_CLASS_HUGE
max_w_class = 8
anchored = 1
density = 0
@@ -8,11 +8,11 @@
/obj/item/weapon/storage
name = "storage"
icon = 'icons/obj/storage.dmi'
w_class = 3
w_class = WEIGHT_CLASS_NORMAL
var/silent = 0 // No message on putting items in
var/list/can_hold = new/list() //List of objects which this item can store (if set, it can't store anything else)
var/list/cant_hold = new/list() //List of objects which this item can't store (in effect only if can_hold isn't set)
var/max_w_class = 2 //Max size of objects that this object can store (in effect only if can_hold isn't set)
var/max_w_class = WEIGHT_CLASS_SMALL //Max size of objects that this object can store (in effect only if can_hold isn't set)
var/max_combined_w_class = 14 //The sum of the w_classes of all the items in this storage item.
var/storage_slots = 7 //The number of storage slots in this container.
var/obj/screen/storage/boxes = null
@@ -304,7 +304,7 @@
to_chat(usr, "<span class='notice'>You put the [W] into [src].</span>")
else if(M in range(1)) //If someone is standing close enough, they can tell what it is...
M.show_message("<span class='notice'>[usr] puts [W] into [src].</span>")
else if(W && W.w_class >= 3.0) //Otherwise they can only see large or normal items from a distance...
else if(W && W.w_class >= WEIGHT_CLASS_NORMAL) //Otherwise they can only see large or normal items from a distance...
M.show_message("<span class='notice'>[usr] puts [W] into [src].</span>")
src.orient2hud(usr)
@@ -9,9 +9,9 @@
throwforce = 10.0
throw_speed = 2
throw_range = 7
w_class = 4
w_class = WEIGHT_CLASS_BULKY
materials = list(MAT_METAL = 500)
origin_tech = "combat=1"
origin_tech = "combat=1;engineering=1"
attack_verb = list("robusted")
hitsound = 'sound/weapons/smash.ogg'
@@ -71,7 +71,7 @@
name = "suspicious looking toolbox"
icon_state = "syndicate"
item_state = "toolbox_syndi"
origin_tech = "combat=1;syndicate=1"
origin_tech = "combat=2;syndicate=1;engineering=2"
silent = 1
force = 15.0
throwforce = 18.0
@@ -85,7 +85,7 @@
new /obj/item/weapon/wirecutters(src, "red")
new /obj/item/device/multitool(src)
new /obj/item/clothing/gloves/combat(src)
/obj/item/weapon/storage/toolbox/drone
name = "mechanical toolbox"
icon_state = "blue"
@@ -119,4 +119,4 @@
new /obj/item/weapon/wirecutters/brass(src)
new /obj/item/weapon/wrench/brass(src)
new /obj/item/weapon/crowbar/brass(src)
new /obj/item/weapon/weldingtool/experimental/brass(src)
new /obj/item/weapon/weldingtool/experimental/brass(src)
@@ -69,7 +69,7 @@
new /obj/item/clothing/suit/hooded/chaplain_hoodie(src)
new /obj/item/weapon/card/id/syndicate(src)
return
if("gadgets")
new /obj/item/clothing/gloves/color/yellow/power(src)
new /obj/item/weapon/pen/sleepy(src)
@@ -88,7 +88,7 @@
/obj/item/weapon/storage/box/syndie_kit/space
name = "Boxed Space Suit and Helmet"
can_hold = list(/obj/item/clothing/suit/space/syndicate/black/red, /obj/item/clothing/head/helmet/space/syndicate/black/red)
max_w_class = 3
max_w_class = WEIGHT_CLASS_NORMAL
/obj/item/weapon/storage/box/syndie_kit/space/New()
..()
@@ -99,7 +99,7 @@
/obj/item/weapon/storage/box/syndie_kit/hardsuit
name = "Boxed Blood Red Suit and Helmet"
can_hold = list(/obj/item/clothing/suit/space/hardsuit/syndi, /obj/item/clothing/head/helmet/space/hardsuit/syndi)
max_w_class = 3
max_w_class = WEIGHT_CLASS_NORMAL
/obj/item/weapon/storage/box/syndie_kit/hardsuit/New()
..()
@@ -110,7 +110,7 @@
/obj/item/weapon/storage/box/syndie_kit/elite_hardsuit
name = "Boxed Elite Syndicate Hardsuit and Helmet"
can_hold = list(/obj/item/clothing/suit/space/hardsuit/syndi/elite, /obj/item/clothing/head/helmet/space/hardsuit/syndi/elite)
max_w_class = 3
max_w_class = WEIGHT_CLASS_NORMAL
/obj/item/weapon/storage/box/syndie_kit/elite_hardsuit/New()
..()
@@ -120,7 +120,7 @@
/obj/item/weapon/storage/box/syndie_kit/shielded_hardsuit
name = "Boxed Shielded Syndicate Hardsuit and Helmet"
can_hold = list(/obj/item/clothing/suit/space/hardsuit/shielded/syndi, /obj/item/clothing/head/helmet/space/hardsuit/shielded/syndi)
max_w_class = 4
max_w_class = WEIGHT_CLASS_BULKY
/obj/item/weapon/storage/box/syndie_kit/shielded_hardsuit/New()
..()
@@ -4,7 +4,7 @@
storage_slots = 10
icon = 'icons/obj/wallets.dmi'
icon_state = "wallet"
w_class = 2
w_class = WEIGHT_CLASS_SMALL
burn_state = FLAMMABLE
can_hold = list(
/obj/item/stack/spacecash,
+2 -4
View File
@@ -7,7 +7,7 @@
slot_flags = SLOT_BELT
force = 10
throwforce = 7
w_class = 3
w_class = WEIGHT_CLASS_NORMAL
origin_tech = "combat=2"
attack_verb = list("beaten")
var/stunforce = 7
@@ -165,8 +165,6 @@
/obj/item/weapon/melee/baton/emp_act(severity)
if(bcell)
deductcharge(1000 / severity)
if(bcell.reliability != 100 && prob(50/severity))
bcell.reliability -= 10 / severity
..()
/obj/item/weapon/melee/baton/wash(mob/user, atom/source)
@@ -190,7 +188,7 @@
icon_state = "stunprod_nocell"
base_icon = "stunprod"
item_state = "prod"
w_class = 3
w_class = WEIGHT_CLASS_NORMAL
force = 3
throwforce = 5
stunforce = 5
@@ -25,7 +25,7 @@
item_state = "classic_baton"
slot_flags = SLOT_BELT
force = 12 //9 hit crit
w_class = 3
w_class = WEIGHT_CLASS_NORMAL
var/cooldown = 0
var/on = 1
@@ -90,7 +90,7 @@
icon_state = "telebaton_0"
item_state = null
slot_flags = SLOT_BELT
w_class = 2
w_class = WEIGHT_CLASS_SMALL
needs_permit = 0
force = 0
on = 0
@@ -101,7 +101,7 @@
to_chat(user, "<span class ='warning'>You extend the baton.</span>")
icon_state = "telebaton_1"
item_state = "nullrod"
w_class = 4 //doesnt fit in backpack when its on for balance
w_class = WEIGHT_CLASS_BULKY //doesnt fit in backpack when its on for balance
force = 10 //stunbaton damage
attack_verb = list("smacked", "struck", "cracked", "beaten")
else
@@ -109,7 +109,7 @@
icon_state = "telebaton_0"
item_state = null //no sprite for concealment even when in hand
slot_flags = SLOT_BELT
w_class = 2
w_class = WEIGHT_CLASS_SMALL
force = 0 //not so robust now
attack_verb = list("hit", "poked")
if(istype(user,/mob/living/carbon/human))
@@ -10,7 +10,7 @@
var/mob/currentUser = null
var/obj/item/device/radio/origradio = null
flags = CONDUCT | ONBELT
w_class = 2
w_class = WEIGHT_CLASS_SMALL
item_state = "radio"
throw_speed = 4
throw_range = 20
@@ -31,8 +31,8 @@
slot_flags = SLOT_BELT
item_state = "radio"
throwforce = 5
w_class = 2
w_class = WEIGHT_CLASS_SMALL
throw_speed = 4
throw_range = 20
materials = list(MAT_METAL=100)
origin_tech = "magnets=1"
origin_tech = "magnets=1"
@@ -88,9 +88,10 @@
for(var/obj/structure/table/T in user.loc)
to_chat(user, "<span class=warning>You can't build tables on top of tables!</span>")
return
new result(user.loc)
user.drop_item()
qdel(src)
if(do_after(user, 20, target = loc))
new result(user.loc)
user.drop_item()
qdel(src)
/*
* Rack Parts
@@ -102,7 +103,8 @@
qdel(src)
/obj/item/weapon/rack_parts/attack_self(mob/user as mob)
var/obj/structure/rack/R = new /obj/structure/rack(user.loc)
R.add_fingerprint(user)
user.drop_item()
qdel(src)
if(do_after(user, 20, target = loc))
var/obj/structure/rack/R = new /obj/structure/rack(user.loc)
R.add_fingerprint(user)
user.drop_item()
qdel(src)
@@ -4,7 +4,7 @@
name = "Jetpack (Empty)"
desc = "A tank of compressed gas for use as propulsion in zero-gravity areas. Use with caution."
icon_state = "jetpack"
w_class = 4
w_class = WEIGHT_CLASS_BULKY
item_state = "jetpack"
distribute_pressure = ONE_ATMOSPHERE*O2STANDARD
var/datum/effect/system/ion_trail_follow/ion_trail
@@ -116,7 +116,7 @@
item_state = "jetpack-mini"
volume = 40
throw_range = 8
w_class = 3
w_class = WEIGHT_CLASS_NORMAL
/obj/item/weapon/tank/jetpack/oxygenblack
name = "Jetpack (Oxygen)"
@@ -174,4 +174,4 @@
var/turf/T = get_turf(user)
T.assume_air(removed)
return 1
return 1
@@ -126,7 +126,7 @@
icon_state = "emergency"
flags = CONDUCT
slot_flags = SLOT_BELT
w_class = 2
w_class = WEIGHT_CLASS_SMALL
force = 4.0
distribute_pressure = ONE_ATMOSPHERE*O2STANDARD
volume = 3 //Tiny. Real life equivalents only have 21 breaths of oxygen in them. They're EMERGENCY tanks anyway -errorage (dangercon 2011)
@@ -7,7 +7,7 @@
flags = CONDUCT
slot_flags = SLOT_BACK
hitsound = 'sound/weapons/smash.ogg'
w_class = 3
w_class = WEIGHT_CLASS_NORMAL
pressure_resistance = ONE_ATMOSPHERE*5
@@ -5,7 +5,7 @@
icon = 'icons/obj/watertank.dmi'
icon_state = "waterbackpack"
item_state = "waterbackpack"
w_class = 4
w_class = WEIGHT_CLASS_BULKY
slot_flags = SLOT_BACK
slowdown = 1
actions_types = list(/datum/action/item_action/toggle_mister)
@@ -112,7 +112,7 @@
icon = 'icons/obj/watertank.dmi'
icon_state = "mister"
item_state = "mister"
w_class = 4
w_class = WEIGHT_CLASS_BULKY
amount_per_transfer_from_this = 50
possible_transfer_amounts = list(25,50,100)
volume = 500
@@ -220,7 +220,7 @@
power = 8
precision = 1
cooling_power = 5
w_class = 5
w_class = WEIGHT_CLASS_HUGE
flags = NODROP //Necessary to ensure that the nozzle and tank never seperate
var/obj/item/weapon/watertank/tank
var/nozzle_mode = 0
+2 -2
View File
@@ -3,7 +3,7 @@
desc = "A roll of sticky tape. Possibly for taping ducks... or was that ducts?"
icon = 'icons/obj/bureaucracy.dmi'
icon_state = "taperoll"
w_class = 1
w_class = WEIGHT_CLASS_TINY
amount = 10
max_amount = 10
@@ -76,7 +76,7 @@
desc = "A piece of sticky tape."
icon = 'icons/obj/bureaucracy.dmi'
icon_state = "tape"
w_class = 1
w_class = WEIGHT_CLASS_TINY
layer = 4
anchored = 1 //it's sticky, no you cant move it
@@ -17,12 +17,12 @@
var/broadcasting = null
var/listening = 1.0
flags = CONDUCT
w_class = 2
w_class = WEIGHT_CLASS_SMALL
item_state = "electronic"
throw_speed = 4
throw_range = 20
materials = list(MAT_METAL=400)
origin_tech = "magnets=1"
origin_tech = "magnets=3;bluespace=2"
/obj/item/weapon/locator/attack_self(mob/user as mob)
add_fingerprint(usr)
@@ -98,11 +98,11 @@ Frequency:
icon_state = "hand_tele"
item_state = "electronic"
throwforce = 0
w_class = 2
w_class = WEIGHT_CLASS_SMALL
throw_speed = 3
throw_range = 5
materials = list(MAT_METAL=10000)
origin_tech = "magnets=1;bluespace=3"
origin_tech = "magnets=3;bluespace=4"
var/active_portals = 0
/obj/item/weapon/hand_tele/attack_self(mob/user as mob)
+14 -14
View File
@@ -109,7 +109,7 @@
///////////OFFHAND///////////////
/obj/item/weapon/twohanded/offhand
w_class = 5
w_class = WEIGHT_CLASS_HUGE
icon_state = "offhand"
name = "offhand"
flags = ABSTRACT
@@ -123,7 +123,7 @@
///////////Two hand required objects///////////////
//This is for objects that require two hands to even pick up
/obj/item/weapon/twohanded/required/
w_class = 5
w_class = WEIGHT_CLASS_HUGE
/obj/item/weapon/twohanded/required/attack_self()
return
@@ -163,7 +163,7 @@
throwforce = 15
sharp = 1
edge = 1
w_class = 4
w_class = WEIGHT_CLASS_BULKY
slot_flags = SLOT_BACK
force_unwielded = 5
force_wielded = 24
@@ -199,13 +199,13 @@
throwforce = 5.0
throw_speed = 1
throw_range = 5
w_class = 2
w_class = WEIGHT_CLASS_SMALL
force_unwielded = 3
force_wielded = 34
wieldsound = 'sound/weapons/saberon.ogg'
unwieldsound = 'sound/weapons/saberoff.ogg'
armour_penetration = 35
origin_tech = "magnets=3;syndicate=4"
origin_tech = "magnets=4;syndicate=5"
attack_verb = list("attacked", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut")
block_chance = 75
sharp = 1
@@ -286,7 +286,7 @@
name = "spear"
desc = "A haphazardly-constructed yet still deadly weapon of ancient design."
force = 10
w_class = 4
w_class = WEIGHT_CLASS_BULKY
slot_flags = SLOT_BACK
force_unwielded = 10
force_wielded = 18
@@ -433,7 +433,7 @@
flags = CONDUCT
force = 13
var/force_on = 21
w_class = 5
w_class = WEIGHT_CLASS_HUGE
throwforce = 13
throw_speed = 2
throw_range = 4
@@ -490,7 +490,7 @@
throwforce = 15
throw_speed = 1
throw_range = 5
w_class = 4 // can't fit in backpacks
w_class = WEIGHT_CLASS_BULKY // can't fit in backpacks
force_unwielded = 15 //still pretty robust
force_wielded = 40 //you'll gouge their eye out! Or a limb...maybe even their entire body!
wieldsound = 'sound/weapons/chainsawstart.ogg'
@@ -545,9 +545,9 @@
force_wielded = 20
throwforce = 15
throw_range = 1
w_class = 5
w_class = WEIGHT_CLASS_HUGE
var/charged = 5
origin_tech = "combat=5;bluespace=4"
origin_tech = "combat=4;bluespace=4;plasmatech=7"
/obj/item/weapon/twohanded/singularityhammer/New()
..()
@@ -610,9 +610,9 @@
force_wielded = 25
throwforce = 30
throw_range = 7
w_class = 5
w_class = WEIGHT_CLASS_HUGE
//var/charged = 5
origin_tech = "combat=5;powerstorage=5"
origin_tech = "combat=4;powerstorage=7"
/obj/item/weapon/twohanded/mjollnir/proc/shock(mob/living/target as mob)
var/datum/effect/system/spark_spread/s = new /datum/effect/system/spark_spread()
@@ -658,7 +658,7 @@
force_wielded = 30
throwforce = 15
throw_range = 1
w_class = 5
w_class = WEIGHT_CLASS_HUGE
var/charged = 5
origin_tech = "combat=5;bluespace=4"
@@ -719,7 +719,7 @@
throwforce = 15
sharp = 1
edge = 1
w_class = 5
w_class = WEIGHT_CLASS_HUGE
armour_penetration = 20
slot_flags = SLOT_BACK
force_unwielded = 5
@@ -10,7 +10,7 @@
throwforce = 10.0
throw_speed = 1
throw_range = 7
w_class = 4
w_class = WEIGHT_CLASS_BULKY
var/charges = 0 //how many restocking "charges" the refill has
@@ -86,4 +86,3 @@
/obj/item/weapon/vending_refill/chinese
machine_name = "MrChangs"
charges = 8// of 24
+6 -6
View File
@@ -5,7 +5,7 @@
icon_state = "toyhammer"
slot_flags = SLOT_BELT
throwforce = 0
w_class = 1
w_class = WEIGHT_CLASS_TINY
throw_speed = 7
throw_range = 15
attack_verb = list("banned")
@@ -23,7 +23,7 @@
slot_flags = SLOT_BELT
force = 2
throwforce = 1
w_class = 3
w_class = WEIGHT_CLASS_NORMAL
hitsound = 'sound/weapons/bladeslice.ogg'
attack_verb = list("attacked", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut")
@@ -44,7 +44,7 @@
throwforce = 10
sharp = 1
edge = 1
w_class = 3
w_class = WEIGHT_CLASS_NORMAL
attack_verb = list("attacked", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut")
block_chance = 50
@@ -68,7 +68,7 @@
throwforce = 10
sharp = 1
edge = 1
w_class = 3
w_class = WEIGHT_CLASS_NORMAL
hitsound = 'sound/weapons/bladeslice.ogg'
attack_verb = list("attacked", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut")
block_chance = 50
@@ -89,7 +89,7 @@
item_state = "harpoon"
force = 20
throwforce = 15
w_class = 3
w_class = WEIGHT_CLASS_NORMAL
attack_verb = list("jabbed","stabbed","ripped")
obj/item/weapon/wirerod
@@ -100,7 +100,7 @@ obj/item/weapon/wirerod
flags = CONDUCT
force = 9
throwforce = 10
w_class = 3
w_class = WEIGHT_CLASS_NORMAL
materials = list(MAT_METAL=1150, MAT_GLASS=75)
attack_verb = list("hit", "bludgeoned", "whacked", "bonked")
+2 -2
View File
@@ -3,7 +3,7 @@
icon = 'icons/obj/kitchen.dmi'
icon_state = "whetstone"
desc = "A block of stone used to sharpen things."
w_class = 2
w_class = WEIGHT_CLASS_SMALL
usesound = 'sound/items/Screwdriver.ogg'
var/used = 0
var/increment = 4
@@ -63,4 +63,4 @@
increment = 200
max = 200
prefix = "super-sharpened"
requires_sharpness = 0
requires_sharpness = 0