mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-08-25 13:07:46 +01:00
Merge branch 'master' of https://github.com/ParadiseSS13/Paradise into BookClub
This commit is contained in:
@@ -6,6 +6,7 @@
|
||||
icon = 'icons/obj/musician.dmi'
|
||||
icon_state = "violin"
|
||||
item_state = "violin"
|
||||
attack_verb = list("strung", "fiddled", "tuned", "pitched")
|
||||
force = 10
|
||||
burn_state = FLAMMABLE
|
||||
burntime = 20
|
||||
@@ -38,4 +39,4 @@
|
||||
song.ui_interact(user, ui_key, ui, force_open)
|
||||
|
||||
/obj/item/device/violin/Topic(href, href_list)
|
||||
song.Topic(href, href_list)
|
||||
song.Topic(href, href_list)
|
||||
|
||||
@@ -32,7 +32,7 @@
|
||||
throwforce = 7.0
|
||||
w_class = 2
|
||||
materials = list(MAT_METAL=50)
|
||||
attack_verb = list("bludgeoned", "whacked", "disciplined", "thrashed")
|
||||
attack_verb = list("bludgeoned", "whacked", "disciplined", "thrashed", "Vaudevilled")
|
||||
|
||||
/obj/item/weapon/cane/is_crutch()
|
||||
return 1
|
||||
@@ -53,7 +53,7 @@
|
||||
name = "desk fan"
|
||||
icon = 'icons/obj/decorations.dmi'
|
||||
icon_state = "fan"
|
||||
desc = "A smal desktop fan. Button seems to be stuck in the 'on' position."
|
||||
desc = "A small desktop fan. The button seems to be stuck in the 'on' position."
|
||||
|
||||
/*
|
||||
/obj/item/weapon/game_kit
|
||||
@@ -114,7 +114,7 @@
|
||||
name = "newton cradle"
|
||||
icon = 'icons/obj/decorations.dmi'
|
||||
icon_state = "newton"
|
||||
desc = "A device bored paper pushers use to remind themselves that the time did not stop yet. Contains gravity."
|
||||
desc = "A device bored paper pushers use to remind themselves that time did not stop yet. Contains gravity."
|
||||
|
||||
/obj/item/weapon/pai_cable
|
||||
desc = "A flexible coated cable with a universal jack on one end."
|
||||
@@ -142,4 +142,4 @@
|
||||
/obj/item/weapon/phone/attack_self(mob/user)
|
||||
if(cooldown < world.time - 20)
|
||||
playsound(user.loc, 'sound/weapons/ring.ogg', 50, 1)
|
||||
cooldown = world.time
|
||||
cooldown = world.time
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
desc = "A pair of scissors used by the barber."
|
||||
icon_state = "bscissor"
|
||||
item_state = "scissor"
|
||||
attack_verb = list("beautifully slices", "artistically cuts", "smoothly stabs", "quickly jabs")
|
||||
attack_verb = list("beautifully sliced", "artistically cut", "smoothly stabbed", "quickly jabbed")
|
||||
|
||||
/obj/item/weapon/scissors/attack(mob/living/carbon/M as mob, mob/user as mob)
|
||||
if(user.a_intent != "help")
|
||||
|
||||
@@ -2,6 +2,13 @@
|
||||
name = "shield"
|
||||
block_chance = 50
|
||||
|
||||
/obj/item/weapon/shield/hit_reaction(mob/living/carbon/human/owner, attack_text, final_block_chance, damage, attack_type)
|
||||
if(attack_type == THROWN_PROJECTILE_ATTACK)
|
||||
final_block_chance += 30
|
||||
if(attack_type == LEAP_ATTACK)
|
||||
final_block_chance = 100
|
||||
return ..()
|
||||
|
||||
/obj/item/weapon/shield/riot
|
||||
name = "riot shield"
|
||||
desc = "A shield adept at blocking blunt objects from connecting with the torso of the shield wielder."
|
||||
@@ -18,11 +25,6 @@
|
||||
attack_verb = list("shoved", "bashed")
|
||||
var/cooldown = 0 //shield bash cooldown. based on world.time
|
||||
|
||||
/obj/item/weapon/shield/hit_reaction(mob/living/carbon/human/owner, attack_text, final_block_chance, damage, attack_type)
|
||||
if(attack_type == THROWN_PROJECTILE_ATTACK)
|
||||
final_block_chance += 30
|
||||
return ..()
|
||||
|
||||
/obj/item/weapon/shield/riot/attackby(obj/item/weapon/W as obj, mob/user as mob, params)
|
||||
if(istype(W, /obj/item/weapon/melee/baton))
|
||||
if(cooldown < world.time - 25)
|
||||
|
||||
@@ -17,17 +17,15 @@
|
||||
distribute_pressure = ONE_ATMOSPHERE*O2STANDARD
|
||||
|
||||
|
||||
New()
|
||||
..()
|
||||
src.air_contents.oxygen = (6*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C)
|
||||
return
|
||||
/obj/item/weapon/tank/oxygen/New()
|
||||
..()
|
||||
air_contents.oxygen = (6*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C)
|
||||
|
||||
|
||||
examine(mob/user)
|
||||
if(..(user, 0))
|
||||
if(air_contents.oxygen < 10)
|
||||
to_chat(user, text("<span class='danger'>The meter on the [src.name] indicates you are almost out of air!</span>"))
|
||||
//playsound(usr, 'sound/effects/alert.ogg', 50, 1)
|
||||
/obj/item/weapon/tank/oxygen/examine(mob/user)
|
||||
if(..(user, 0))
|
||||
if(air_contents.oxygen < 10)
|
||||
to_chat(user, text("<span class='danger'>The meter on the [src.name] indicates you are almost out of air!</span>"))
|
||||
//playsound(usr, 'sound/effects/alert.ogg', 50, 1)
|
||||
|
||||
|
||||
/obj/item/weapon/tank/oxygen/yellow
|
||||
@@ -51,13 +49,12 @@
|
||||
/obj/item/weapon/tank/anesthetic/New()
|
||||
..()
|
||||
|
||||
src.air_contents.oxygen = (3*ONE_ATMOSPHERE)*70/(R_IDEAL_GAS_EQUATION*T20C) * O2STANDARD
|
||||
air_contents.oxygen = (3*ONE_ATMOSPHERE)*70/(R_IDEAL_GAS_EQUATION*T20C) * O2STANDARD
|
||||
|
||||
var/datum/gas/sleeping_agent/trace_gas = new()
|
||||
trace_gas.moles = (3*ONE_ATMOSPHERE)*70/(R_IDEAL_GAS_EQUATION*T20C) * N2STANDARD
|
||||
|
||||
src.air_contents.trace_gases += trace_gas
|
||||
return
|
||||
air_contents.trace_gases += trace_gas
|
||||
|
||||
/*
|
||||
* Air
|
||||
@@ -68,18 +65,16 @@
|
||||
icon_state = "oxygen"
|
||||
|
||||
|
||||
examine(mob/user)
|
||||
if(..(user, 0))
|
||||
if(air_contents.oxygen < 1 && loc==usr)
|
||||
to_chat(user, "<span class='danger'>The meter on the [src.name] indicates you are almost out of air!</span>")
|
||||
user << sound('sound/effects/alert.ogg')
|
||||
/obj/item/weapon/tank/air/examine(mob/user)
|
||||
if(..(user, 0))
|
||||
if(air_contents.oxygen < 1 && loc==usr)
|
||||
to_chat(user, "<span class='danger'>The meter on the [src.name] indicates you are almost out of air!</span>")
|
||||
user << sound('sound/effects/alert.ogg')
|
||||
|
||||
/obj/item/weapon/tank/air/New()
|
||||
..()
|
||||
|
||||
src.air_contents.oxygen = (6*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C) * O2STANDARD
|
||||
src.air_contents.nitrogen = (6*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C) * N2STANDARD
|
||||
return
|
||||
air_contents.oxygen = (6*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C) * O2STANDARD
|
||||
air_contents.nitrogen = (6*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C) * N2STANDARD
|
||||
|
||||
/*
|
||||
* Plasma
|
||||
@@ -93,9 +88,7 @@
|
||||
|
||||
/obj/item/weapon/tank/plasma/New()
|
||||
..()
|
||||
src.air_contents.toxins = (3*ONE_ATMOSPHERE)*70/(R_IDEAL_GAS_EQUATION*T20C)
|
||||
return
|
||||
|
||||
air_contents.toxins = (3*ONE_ATMOSPHERE)*70/(R_IDEAL_GAS_EQUATION*T20C)
|
||||
|
||||
/obj/item/weapon/tank/plasma/attackby(obj/item/weapon/W as obj, mob/user as mob, params)
|
||||
..()
|
||||
@@ -103,17 +96,15 @@
|
||||
if(istype(W, /obj/item/weapon/flamethrower))
|
||||
var/obj/item/weapon/flamethrower/F = W
|
||||
if((!F.status)||(F.ptank)) return
|
||||
src.master = F
|
||||
master = F
|
||||
F.ptank = src
|
||||
user.unEquip(src)
|
||||
src.loc = F
|
||||
loc = F
|
||||
F.update_icon()
|
||||
return
|
||||
|
||||
/obj/item/weapon/tank/plasma/full/New()
|
||||
..()
|
||||
src.air_contents.toxins = (10*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C)
|
||||
return
|
||||
air_contents.toxins = (10*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C)
|
||||
|
||||
/obj/item/weapon/tank/plasma/plasmaman
|
||||
desc = "The lifeblood of plasmamen. Warning: Extremely flammable, do not inhale (unless you're a plasman)."
|
||||
@@ -141,17 +132,15 @@
|
||||
volume = 3 //Tiny. Real life equivalents only have 21 breaths of oxygen in them. They're EMERGENCY tanks anyway -errorage (dangercon 2011)
|
||||
|
||||
|
||||
New()
|
||||
..()
|
||||
src.air_contents.oxygen = (3*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C)
|
||||
return
|
||||
/obj/item/weapon/tank/emergency_oxygen/New()
|
||||
..()
|
||||
air_contents.oxygen = (3*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C)
|
||||
|
||||
|
||||
examine(mob/user)
|
||||
if(..(user, 0))
|
||||
if(air_contents.oxygen < 0.2 && loc==usr)
|
||||
to_chat(user, text("<span class='danger'>The meter on the [src.name] indicates you are almost out of air!</span>"))
|
||||
user << sound('sound/effects/alert.ogg')
|
||||
/obj/item/weapon/tank/emergency_oxygen/examine(mob/user)
|
||||
if(..(user, 0))
|
||||
if(air_contents.oxygen < 0.2 && loc==usr)
|
||||
to_chat(user, text("<span class='danger'>The meter on the [src.name] indicates you are almost out of air!</span>"))
|
||||
user << sound('sound/effects/alert.ogg')
|
||||
|
||||
/obj/item/weapon/tank/emergency_oxygen/engi
|
||||
name = "extended-capacity emergency oxygen tank"
|
||||
@@ -167,10 +156,9 @@
|
||||
name = "pressurized double emergency oxygen tank"
|
||||
desc = "Used for \"emergencies,\" it actually contains a fair amount of oxygen."
|
||||
|
||||
New()
|
||||
..()
|
||||
src.air_contents.oxygen = (10*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C)
|
||||
return
|
||||
/obj/item/weapon/tank/emergency_oxygen/double/full/New()
|
||||
..()
|
||||
air_contents.oxygen = (10*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C)
|
||||
|
||||
/*
|
||||
* Nitrogen
|
||||
@@ -184,9 +172,7 @@
|
||||
|
||||
/obj/item/weapon/tank/nitrogen/New()
|
||||
..()
|
||||
|
||||
src.air_contents.nitrogen = (3*ONE_ATMOSPHERE)*70/(R_IDEAL_GAS_EQUATION*T20C)
|
||||
return
|
||||
air_contents.nitrogen = (3*ONE_ATMOSPHERE)*70/(R_IDEAL_GAS_EQUATION*T20C)
|
||||
|
||||
/obj/item/weapon/tank/nitrogen/examine(mob/user)
|
||||
if(..(user, 0))
|
||||
@@ -194,7 +180,6 @@
|
||||
to_chat(user, text("<span class='danger'>The meter on the [src.name] indicates you are almost out of air!</span>"))
|
||||
//playsound(usr, 'sound/effects/alert.ogg', 50, 1)
|
||||
|
||||
|
||||
/obj/item/weapon/tank/emergency_oxygen/vox
|
||||
name = "vox specialized nitrogen tank"
|
||||
desc = "A high-tech nitrogen tank designed specifically for Vox."
|
||||
@@ -202,9 +187,29 @@
|
||||
item_state = "emergency_vox"
|
||||
volume = 25
|
||||
|
||||
/obj/item/weapon/tank/emergency_oxygen/vox/New()
|
||||
..()
|
||||
air_contents.oxygen -= (3*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C)
|
||||
air_contents.nitrogen = (10*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C)
|
||||
|
||||
New()
|
||||
..()
|
||||
src.air_contents.oxygen -= (3*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C)
|
||||
src.air_contents.nitrogen = (10*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C)
|
||||
return
|
||||
/obj/item/weapon/tank/emergency_oxygen/nitrogen
|
||||
name = "emergency nitrogen tank"
|
||||
desc = "An emergency tank designed specifically for Vox."
|
||||
icon_state = "emergency_nitrogen"
|
||||
volume = 3
|
||||
|
||||
/obj/item/weapon/tank/emergency_oxygen/nitrogen/New()
|
||||
..()
|
||||
air_contents.oxygen -= (3*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C)
|
||||
air_contents.nitrogen = (10*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C)
|
||||
|
||||
/obj/item/weapon/tank/emergency_oxygen/plasma
|
||||
name = "emergency plasma tank"
|
||||
desc = "An emergency tank designed specifically for Plasmamen."
|
||||
icon_state = "emergency_p"
|
||||
volume = 3
|
||||
|
||||
/obj/item/weapon/tank/emergency_oxygen/plasma/New()
|
||||
..()
|
||||
air_contents.oxygen -= (3*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C)
|
||||
air_contents.toxins = (10*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C)
|
||||
|
||||
Reference in New Issue
Block a user