mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-08-26 13:37:58 +01:00
Merge remote-tracking branch 'upstream/master' into path_cleanups
Conflicts: code/modules/examine/descriptions/atmospherics.dm
This commit is contained in:
@@ -86,12 +86,12 @@
|
||||
|
||||
//Normal valves
|
||||
/obj/machinery/atmospherics/binary/valve
|
||||
description_info = "Click this to turn the valve. If red, the pipes on each end are seperated. Otherwise, they are connected."
|
||||
description_info = "Click this to turn the valve. If red, the pipes on each end are separated. Otherwise, they are connected."
|
||||
|
||||
//TEG ports
|
||||
/obj/machinery/atmospherics/binary/circulator
|
||||
description_info = "This generates electricity, depending on the difference in temperature between each side of the machine. The meter in \
|
||||
the center of the machine gives an indicator of how much elecrtricity is being generated."
|
||||
the center of the machine gives an indicator of how much electricity is being generated."
|
||||
|
||||
//Passive gates
|
||||
/obj/machinery/atmospherics/binary/passive_gate
|
||||
@@ -119,7 +119,7 @@
|
||||
|
||||
//Gas injectors
|
||||
/obj/machinery/atmospherics/unary/outlet_injector
|
||||
description_info = "Outputs the pipe's gas into the atmosphere, similar to an airvent. It can be controlled by a nearby atmospherics computer. \
|
||||
description_info = "Outputs the pipe's gas into the atmosphere, similar to an air vent. It can be controlled by a nearby atmospherics computer. \
|
||||
A green light on it means it is on."
|
||||
|
||||
//Scrubbers
|
||||
@@ -163,4 +163,4 @@
|
||||
//Pipe dispensers
|
||||
/obj/machinery/pipedispenser
|
||||
description_info = "This can be moved by using a wrench. You will need to wrench it again when you want to use it. You can put \
|
||||
excess (atmospheric) pipes into the dispenser, as well. The dispenser requires electricity to function."
|
||||
excess (atmospheric) pipes into the dispenser, as well. The dispenser requires electricity to function."
|
||||
|
||||
@@ -10,7 +10,7 @@
|
||||
Touching the supermatter will result in *instant death*, with no corpse left behind! You can drag the supermatter, but anything else will kill you. \
|
||||
It is advised to obtain a genetic backup before trying to drag it."
|
||||
|
||||
description_antag = "Exposing the supermatter to oxygen or vaccum will cause it to start rapidly heating up. Sabotaging the supermatter and making it explode will \
|
||||
description_antag = "Exposing the supermatter to oxygen or vacuum will cause it to start rapidly heating up. Sabotaging the supermatter and making it explode will \
|
||||
cause a period of lag as the explosion is processed by the server, as well as irradiating the entire station and causing hallucinations to happen. \
|
||||
Wearing radiation equipment will protect you from most of the delamination effects sans explosion."
|
||||
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
/mob/living/silicon/robot/drone
|
||||
description_info = "Drones are player-controlled synthetics which are lawed to maintain the station and not \
|
||||
interact with anyone else, except for other drones. They hold a wide array of tools to build, repair, maintain, and clean. \
|
||||
They fuction similarly to other synthetics, in that they require recharging regularly, have laws, and are resilient to many hazards, \
|
||||
They function similarly to other synthetics, in that they require recharging regularly, have laws, and are resilient to many hazards, \
|
||||
such as fire, radiation, vacuum, and more. Ghosts can join the round as a maintenance drone by using the appropriate verb in the 'ghost' tab. \
|
||||
An inactive drone can be rebooted by swiping an ID card on it with engineering or robotics access."
|
||||
|
||||
description_antag = "An Electromagnetic Sequencer can be used to subvert the drone to your cause."
|
||||
description_antag = "An Electromagnetic Sequencer can be used to subvert the drone to your cause."
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
/obj/structure/girder
|
||||
description_info = "Use metal sheets on this to build a normal wall. Adding plasteel instead will make a reinforced wall.<br>\
|
||||
A false wall can be made by using a crowbar on this girder, and then adding metal or plasteel.<br>\
|
||||
You can dismantle the grider with a wrench."
|
||||
You can dismantle the girder with a wrench."
|
||||
|
||||
/obj/structure/girder/reinforced
|
||||
description_info = "Add another sheet of plasteel to finish."
|
||||
@@ -18,4 +18,4 @@
|
||||
description_info = "Click and drag yourself (or anyone) to this to buckle in. Click on this with an empty hand to undo the buckles.<br>\
|
||||
<br>\
|
||||
Anyone with restraints, such as handcuffs, will not be able to unbuckle themselves. They must use the Resist button, or verb, to break free of \
|
||||
the buckles, instead."
|
||||
the buckles, instead."
|
||||
|
||||
@@ -51,7 +51,7 @@
|
||||
|
||||
/obj/item/weapon/gun/projectile
|
||||
description_info = "This is a ballistic weapon. To fire the weapon, have your gun mode set to 'fire', \
|
||||
then click where you want to fire. To reload, click the weapon in your hand to unload (if needed), then add the appropiate ammo. The description \
|
||||
then click where you want to fire. To reload, click the weapon in your hand to unload (if needed), then add the appropriate ammo. The description \
|
||||
will tell you what caliber you need."
|
||||
|
||||
/obj/item/weapon/gun/projectile/shotgun/pump
|
||||
@@ -79,4 +79,4 @@
|
||||
it can be concealed in your pocket or bag."
|
||||
|
||||
/obj/item/weapon/melee/cultblade
|
||||
description_antag = "This sword is a powerful weapon, capable of severing limbs easily, if they are targeted. Nonbelivers are unable to use this weapon."
|
||||
description_antag = "This sword is a powerful weapon, capable of severing limbs easily, if they are targeted. Nonbelievers are unable to use this weapon."
|
||||
|
||||
@@ -47,6 +47,8 @@
|
||||
|
||||
if(RUN in mutations)
|
||||
tally = -1
|
||||
if(HULK in mutations)
|
||||
tally += 1
|
||||
if(status_flags & IGNORESLOWDOWN) // make sure this is always at the end so we don't have ignore slowdown getting ignored itself
|
||||
tally = -1
|
||||
|
||||
|
||||
@@ -363,27 +363,37 @@ var/global/list/brutefireloss_overlays = list("1" = image("icon" = 'icons/mob/sc
|
||||
|
||||
|
||||
/mob/living/carbon/human/get_breath_from_internal(volume_needed) //making this call the parent would be far too complicated
|
||||
var/null_internals = 0
|
||||
|
||||
if(internal)
|
||||
if(istype(back, /obj/item/weapon/rig))
|
||||
var/obj/item/weapon/rig/rig = back
|
||||
if(rig.offline && (rig.air_supply && internal == rig.air_supply))
|
||||
null_internals = 1
|
||||
var/null_internals = 0 //internals are invalid, therefore turn them off
|
||||
var/skip_contents_check = 0 //rigsuit snowflake, oxygen tanks aren't stored inside the mob, so the 'contents.Find' check has to be skipped.
|
||||
|
||||
if(!(wear_mask && (wear_mask.flags & AIRTIGHT))) //not wearing mask
|
||||
if(!(head && (head.flags & AIRTIGHT))) //not wearing helmet
|
||||
null_internals = 1
|
||||
if(!(wear_mask && wear_mask.flags & AIRTIGHT)) //if NOT (wear_mask AND wear_mask.flags CONTAIN AIRTIGHT)
|
||||
if(!(head && head.flags & AIRTIGHT)) //if NOT (head AND head.flags CONTAIN AIRTIGHT)
|
||||
null_internals = 1 //not wearing a mask or suitable helmet
|
||||
|
||||
if(null_internals)
|
||||
internal = null
|
||||
if(istype(back, /obj/item/weapon/rig)) //wearing a rigsuit
|
||||
var/obj/item/weapon/rig/rig = back //needs to be typecasted because this doesn't use get_rig() for some reason
|
||||
if(rig.offline && (rig.air_supply && internal == rig.air_supply)) //if rig IS offline AND (rig HAS air_supply AND internal IS air_supply)
|
||||
null_internals = 1 //offline suits do not breath
|
||||
|
||||
if(internal)
|
||||
if(internals)
|
||||
internals.icon_state = "internal1"
|
||||
return internal.remove_air_volume(volume_needed)
|
||||
else
|
||||
if(internals)
|
||||
internals.icon_state = "internal0"
|
||||
else if(rig.air_supply && internal == rig.air_supply) //if rig HAS air_supply AND internal IS rig air_supply
|
||||
skip_contents_check = 1 //skip contents.Find() check, the oxygen is valid even being outside of the mob
|
||||
|
||||
if(!contents.Find(internal) && (!skip_contents_check)) //if internal NOT IN contents AND skip_contents_check IS false
|
||||
null_internals = 1 //not a rigsuit and your oxygen is gone
|
||||
|
||||
if(null_internals) //something wants internals gone
|
||||
internal = null //so do it
|
||||
|
||||
|
||||
if(internal) //check for hud updates every time this is called
|
||||
if(internals)
|
||||
internals.icon_state = "internal1"
|
||||
return internal.remove_air_volume(volume_needed) //returns the valid air
|
||||
else
|
||||
if(internals)
|
||||
internals.icon_state = "internal0"
|
||||
|
||||
return null
|
||||
|
||||
|
||||
@@ -814,6 +814,53 @@ mob/living/carbon/slime/var/temperature_resistance = T0C+75
|
||||
icon_state = "bottle17"
|
||||
|
||||
|
||||
/obj/item/weapon/slimespeed
|
||||
name = "slime speed potion"
|
||||
desc = "A potent chemical mix that will remove the slowdown from any item."
|
||||
icon = 'icons/obj/chemical.dmi'
|
||||
icon_state = "bottle3"
|
||||
|
||||
/obj/item/weapon/slimespeed/afterattack(obj/item/C, mob/user)
|
||||
..()
|
||||
if(!istype(C))
|
||||
user << "<span class='warning'>The potion can only be used on items!</span>"
|
||||
return
|
||||
if(C.slowdown <= 0)
|
||||
user << "<span class='warning'>The [C] can't be made any faster!</span>"
|
||||
return..()
|
||||
user <<"<span class='notice'>You slather the red gunk over the [C], making it faster.</span>"
|
||||
C.color = "#FF0000"
|
||||
C.slowdown = 0
|
||||
qdel(src)
|
||||
|
||||
/obj/item/weapon/slimefireproof
|
||||
name = "slime chill potion"
|
||||
desc = "A potent chemical mix that will fireproof any article of clothing. Has three uses."
|
||||
icon = 'icons/obj/chemical.dmi'
|
||||
icon_state = "bottle17"
|
||||
var/uses = 3
|
||||
|
||||
/obj/item/weapon/slimefireproof/afterattack(obj/item/clothing/C, mob/user)
|
||||
..()
|
||||
if(!uses)
|
||||
qdel(src)
|
||||
return
|
||||
if(!istype(C))
|
||||
user << "<span class='warning'>The potion can only be used on clothing!</span>"
|
||||
return
|
||||
if(C.max_heat_protection_temperature == FIRE_IMMUNITY_SUIT_MAX_TEMP_PROTECT)
|
||||
user << "<span class='warning'>The [C] is already fireproof!</span>"
|
||||
return..()
|
||||
user <<"<span class='notice'>You slather the blue gunk over the [C], fireproofing it.</span>"
|
||||
C.name = "fireproofed [C.name]"
|
||||
C.color = "#000080"
|
||||
C.max_heat_protection_temperature = FIRE_IMMUNITY_SUIT_MAX_TEMP_PROTECT
|
||||
C.heat_protection = C.body_parts_covered
|
||||
uses --
|
||||
if(!uses)
|
||||
qdel(src)
|
||||
|
||||
|
||||
/obj/effect/goleRUNe
|
||||
anchored = 1
|
||||
desc = "a strange rune used to create golems. It glows when spirits are nearby."
|
||||
|
||||
@@ -13,11 +13,11 @@
|
||||
if(!O)
|
||||
return 0
|
||||
|
||||
O.mouse_opacity = 2
|
||||
O.mouse_opacity = 2
|
||||
if(istype(O,/obj/item/borg/sight))
|
||||
var/obj/item/borg/sight/S = O
|
||||
sight_mode &= ~S.sight_mode
|
||||
|
||||
|
||||
if(client)
|
||||
client.screen -= O
|
||||
contents -= O
|
||||
@@ -71,6 +71,7 @@
|
||||
sight_mode |= module_state_3:sight_mode
|
||||
else
|
||||
src << "You need to disable a module first!"
|
||||
src.update_icons()
|
||||
|
||||
/mob/living/silicon/robot/proc/uneq_active()
|
||||
uneq_module(module_active)
|
||||
|
||||
@@ -1008,16 +1008,16 @@ var/list/robot_verbs_default = list(
|
||||
else
|
||||
overlays += "ov-openpanel -c"
|
||||
|
||||
if(modtype == ("Combat" || "Peacekeeper"))
|
||||
var/combat = list("Combat","Peacekeeper")
|
||||
if(modtype in combat)
|
||||
if (base_icon == "")
|
||||
base_icon = icon_state
|
||||
if(module_active && istype(module_active,/obj/item/borg/combat/mobility))
|
||||
icon_state = "[base_icon]-roll"
|
||||
else
|
||||
icon_state = base_icon
|
||||
|
||||
if(activated(/obj/item/borg/combat/shield))
|
||||
overlays += "[icon_state]-shield"
|
||||
if(activated(/obj/item/borg/combat/shield))
|
||||
overlays += "[base_icon]-shield"
|
||||
|
||||
if(jetpackoverlay)
|
||||
overlays += "minerjetpack-[icon_state]"
|
||||
|
||||
@@ -5,6 +5,7 @@
|
||||
icon_state = "fox"
|
||||
icon_living = "fox"
|
||||
icon_dead = "fox_dead"
|
||||
icon_resting = "fox_rest"
|
||||
speak = list("Ack-Ack","Ack-Ack-Ack-Ackawoooo","Geckers","Awoo","Tchoff")
|
||||
speak_emote = list("geckers", "barks")
|
||||
emote_hear = list("howls","barks")
|
||||
|
||||
@@ -202,6 +202,7 @@
|
||||
result_amount = 10
|
||||
required_container = /obj/item/slime_extract/blue
|
||||
required_other = 1
|
||||
|
||||
//Dark Blue
|
||||
slimefreeze
|
||||
name = "Slime Freeze"
|
||||
@@ -221,6 +222,21 @@
|
||||
M.bodytemperature -= 140
|
||||
M << "\blue You feel a chill!"
|
||||
|
||||
|
||||
slimefireproof
|
||||
name = "Slime Fireproof"
|
||||
id = "m_fireproof"
|
||||
result = null
|
||||
required_reagents = list("water" = 1)
|
||||
result_amount = 1
|
||||
required_container = /obj/item/slime_extract/darkblue
|
||||
required_other = 1
|
||||
|
||||
on_reaction(datum/reagents/holder)
|
||||
feedback_add_details("slime_cores_used","[type]")
|
||||
var/obj/item/weapon/slimefireproof/P = new /obj/item/weapon/slimefireproof
|
||||
P.loc = get_turf(holder.my_atom)
|
||||
|
||||
//Orange
|
||||
slimecasp
|
||||
name = "Slime Capsaicin Oil"
|
||||
@@ -353,6 +369,21 @@
|
||||
for(var/mob/O in viewers(get_turf(holder.my_atom), null))
|
||||
O.show_message(text("\red The [slime] is driven into a frenzy!."), 1)
|
||||
|
||||
|
||||
slimespeed
|
||||
name = "Slime Speed"
|
||||
id = "m_speed"
|
||||
result = null
|
||||
required_reagents = list("water" = 1)
|
||||
result_amount = 1
|
||||
required_container = /obj/item/slime_extract/red
|
||||
required_other = 1
|
||||
|
||||
on_reaction(datum/reagents/holder)
|
||||
feedback_add_details("slime_cores_used","[type]")
|
||||
var/obj/item/weapon/slimespeed/P = new /obj/item/weapon/slimespeed
|
||||
P.loc = get_turf(holder.my_atom)
|
||||
|
||||
//Pink
|
||||
slimeppotion
|
||||
name = "Slime Potion"
|
||||
|
||||
Reference in New Issue
Block a user