mirror of
https://github.com/PolarisSS13/Polaris.git
synced 2026-08-24 21:56:55 +01:00
@@ -12,7 +12,7 @@
|
||||
*/
|
||||
/obj/effect/alien
|
||||
name = "alien thing"
|
||||
desc = "theres something alien about this"
|
||||
desc = "there's something alien about this"
|
||||
icon = 'icons/mob/alien.dmi'
|
||||
|
||||
/*
|
||||
@@ -20,7 +20,7 @@
|
||||
*/
|
||||
/obj/effect/alien/resin
|
||||
name = "magmellite coating"
|
||||
desc = "Looks like some kind of crystaline growth."
|
||||
desc = "Looks like some kind of crystalline growth."
|
||||
icon_state = "resin"
|
||||
|
||||
density = 1
|
||||
@@ -32,7 +32,7 @@
|
||||
|
||||
/obj/effect/alien/resin/wall
|
||||
name = "magmellite wall"
|
||||
desc = "Matter reformed into a crystaline wall."
|
||||
desc = "Matter reformed into a crystalline wall."
|
||||
icon_state = "resinwall" //same as resin, but consistency ho!
|
||||
|
||||
/obj/effect/alien/resin/membrane
|
||||
|
||||
@@ -73,7 +73,7 @@
|
||||
smokeFlow() //pathing check
|
||||
|
||||
//set the density of the cloud - for diluting reagents
|
||||
density = max(1, targetTurfs.len / 4) //clamp the cloud density minimum to 1 so it cant multiply the reagents
|
||||
density = max(1, targetTurfs.len / 4) //clamp the cloud density minimum to 1 so it can't multiply the reagents
|
||||
|
||||
//Admin messaging
|
||||
var/contained = carry.get_reagents()
|
||||
|
||||
@@ -9,7 +9,7 @@ GLOBAL_LIST_EMPTY(all_beam_points)
|
||||
// General variables.
|
||||
var/list/my_beams = list() // Instances of beams. Deleting one will kill the beam.
|
||||
var/id = "A" // Two beam_points must share the same ID to be connected to each other.
|
||||
var/max_beams = 10 // How many concurrent beams to seperate beam_points to have at once. Set to zero to only act as targets for other beam_points.
|
||||
var/max_beams = 10 // How many concurrent beams to separate beam_points to have at once. Set to zero to only act as targets for other beam_points.
|
||||
var/seek_range = 7 // How far to look for an end beam_point when not having a beam. Defaults to screen height/width. Make sure this is below beam_max_distance.
|
||||
|
||||
// Controls how and when the beam is created.
|
||||
|
||||
@@ -30,14 +30,14 @@ Portals also have some limitations to be aware of when mapping. Some of these ar
|
||||
- Sounds currently are not carried across portals.
|
||||
- Mismatched lighting between each portal end can make the portal look obvious.
|
||||
- Portals look weird when observing as a ghost, or otherwise when able to see through walls. Meson vision will also spoil the illusion.
|
||||
- Walls that change icons based on neightboring walls can give away that a portal is nearby if both sides don't have a similar transition.
|
||||
- Walls that change icons based on neighboring walls can give away that a portal is nearby if both sides don't have a similar transition.
|
||||
- Projectiles that pass through portals will generally work as intended, however aiming and firing upon someone on the other side of a portal
|
||||
will likely be weird due to the click targeting the real position of the thing clicked instead of the apparent position.
|
||||
Thrown objects suffer a similar fate.
|
||||
- The tiles that are visually shown across a portal are determined based on visibility at the time of portal initialization,
|
||||
and currently don't update, meaning that opacity changes are not reflected, e.g. a wall is deconstructed, or an airlock is opened.
|
||||
- There is currently a small but somewhat noticable pause in mob movement when moving across a portal,
|
||||
as a result of the mob's glide animation being inturrupted by a teleport.
|
||||
- There is currently a small but somewhat noticeable pause in mob movement when moving across a portal,
|
||||
as a result of the mob's glide animation being interrupted by a teleport.
|
||||
- Gas is not transferred through portals, and ZAS is oblivious to them.
|
||||
|
||||
A lot of those limitations can potentially be solved with some more work. Otherwise, portals work best in static environments like Points of Interest,
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
// Constantly emites radiation from the tile it's placed on.
|
||||
// Constantly emits radiation from the tile it's placed on.
|
||||
/obj/effect/map_effect/radiation_emitter
|
||||
name = "radiation emitter"
|
||||
icon_state = "radiation_emitter"
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
/obj/effect/step_trigger
|
||||
var/affect_ghosts = 0
|
||||
var/stopper = 1 // stops throwers
|
||||
invisibility = 99 // nope cant see this shit
|
||||
invisibility = 99 // nope can't see this shit
|
||||
plane = ABOVE_PLANE
|
||||
anchored = 1
|
||||
|
||||
|
||||
@@ -68,7 +68,7 @@
|
||||
var/list/item_state_slots = list() //overrides the default item_state for particular slots.
|
||||
|
||||
// Used to specify the icon file to be used when the item is worn. If not set the default icon for that slot will be used.
|
||||
// If icon_override or sprite_sheets are set they will take precendence over this, assuming they apply to the slot in question.
|
||||
// If icon_override or sprite_sheets are set they will take precedence over this, assuming they apply to the slot in question.
|
||||
// Only slot_l_hand/slot_r_hand are implemented at the moment. Others to be implemented as needed.
|
||||
var/list/item_icons = list()
|
||||
|
||||
@@ -87,7 +87,7 @@
|
||||
// Works similarly to worn sprite_sheets, except the alternate sprites are used when the clothing/refit_for_species() proc is called.
|
||||
var/list/sprite_sheets_obj = list()
|
||||
|
||||
var/toolspeed = 1 // This is a multipler on how 'fast' a tool works. e.g. setting this to 0.5 will make the tool work twice as fast.
|
||||
var/toolspeed = 1 // This is a multiplier on how 'fast' a tool works. e.g. setting this to 0.5 will make the tool work twice as fast.
|
||||
var/attackspeed = DEFAULT_ATTACK_COOLDOWN // How long click delay will be when using this, in 1/10ths of a second. Checked in the user's get_attack_speed().
|
||||
var/reach = 1 // Length of tiles it can reach, 1 is adjacent.
|
||||
var/addblends // Icon overlay for ADD highlights when applicable.
|
||||
@@ -574,7 +574,7 @@ var/global/list/slot_flags_enumeration = list(
|
||||
to_chat(user, "<span class='danger'>You stab [M] in the eye with [src]!</span>")
|
||||
else
|
||||
user.visible_message( \
|
||||
"<span class='danger'>[user] has stabbed themself with [src]!</span>", \
|
||||
"<span class='danger'>[user] has stabbed themselves with [src]!</span>", \
|
||||
"<span class='danger'>You stab yourself in the eyes with [src]!</span>" \
|
||||
)
|
||||
|
||||
|
||||
@@ -104,7 +104,7 @@
|
||||
/obj/item/bodybag/cryobag
|
||||
name = "stasis bag"
|
||||
desc = "A non-reusable plastic bag designed to slow down bodily functions such as circulation and breathing, \
|
||||
especially useful if short on time or in a hostile enviroment."
|
||||
especially useful if short on time or in a hostile environment."
|
||||
icon = 'icons/obj/closets/cryobag.dmi'
|
||||
icon_state = "bodybag_folded"
|
||||
item_state = "bodybag_cryo_folded"
|
||||
@@ -122,7 +122,7 @@
|
||||
/obj/structure/closet/body_bag/cryobag
|
||||
name = "stasis bag"
|
||||
desc = "A non-reusable plastic bag designed to slow down bodily functions such as circulation and breathing, \
|
||||
especially useful if short on time or in a hostile enviroment."
|
||||
especially useful if short on time or in a hostile environment."
|
||||
icon = 'icons/obj/closets/cryobag.dmi'
|
||||
item_path = /obj/item/bodybag/cryobag
|
||||
store_misc = 0
|
||||
|
||||
@@ -178,7 +178,7 @@
|
||||
while(AI && AI.stat != DEAD)
|
||||
// This is absolutely evil and I love it.
|
||||
if(AI.deployed_shell && prob(AI.oxyloss)) //You feel it creeping? Eventually will reach 100, resulting in the second half of the AI's remaining life being lonely.
|
||||
AI.disconnect_shell("Disconnecting from remote shell due to insufficent power.")
|
||||
AI.disconnect_shell("Disconnecting from remote shell due to insufficient power.")
|
||||
AI.adjustOxyLoss(2)
|
||||
AI.updatehealth()
|
||||
sleep(10)
|
||||
|
||||
@@ -54,7 +54,7 @@
|
||||
for(var/obj/item/communicator/comm in communicating)
|
||||
connected_communicators[++connected_communicators.len] = list("name" = sanitize(comm.name), "true_name" = sanitize(comm.name), "ref" = "\ref[comm]")
|
||||
|
||||
//Devices that have been messaged or recieved messages from.
|
||||
//Devices that have been messaged or received messages from.
|
||||
for(var/obj/item/communicator/comm in im_contacts)
|
||||
if(comm.exonet)
|
||||
im_contacts_ui[++im_contacts_ui.len] = list("name" = sanitize(comm.name), "address" = comm.exonet.address, "ref" = "\ref[comm]")
|
||||
@@ -159,7 +159,7 @@
|
||||
|
||||
if(href_list["toggle_visibility"])
|
||||
switch(network_visibility)
|
||||
if(1) //Visible, becoming invisbile
|
||||
if(1) //Visible, becoming invisible
|
||||
network_visibility = 0
|
||||
if(camera)
|
||||
camera.remove_network(NETWORK_COMMUNICATORS)
|
||||
|
||||
@@ -161,7 +161,7 @@ var/global/list/obj/item/communicator/all_communicators = list()
|
||||
|
||||
// Proc: add_to_EPv2()
|
||||
// Parameters: 1 (hex - a single hexadecimal character)
|
||||
// Description: Called when someone is manually dialing with nanoUI. Adds colons when appropiate.
|
||||
// Description: Called when someone is manually dialing with nanoUI. Adds colons when appropriate.
|
||||
/obj/item/communicator/proc/add_to_EPv2(var/hex)
|
||||
var/length = length(target_address)
|
||||
if(length >= 24)
|
||||
|
||||
@@ -96,7 +96,7 @@
|
||||
to conduct a one time lawful search of the Suspect's person/belongings/premises and/or Department </br>
|
||||
for any items and materials that could be connected to the suspected criminal act described below, </br>
|
||||
pending an investigation in progress. The Security Officer(s) are obligated to remove any and all</br>
|
||||
such items from the Suspects posession and/or Department and file it as evidence. The Suspect/Department </br>
|
||||
such items from the Suspect's possession and/or Department and file it as evidence. The Suspect/Department </br>
|
||||
staff is expected to offer full co-operation. In the event of the Suspect/Department staff attempting </br>
|
||||
to resist/impede this search or flee, they must be taken into custody immediately! </br>
|
||||
All confiscated items must be filed and taken to Evidence!</small></i></br>
|
||||
|
||||
@@ -70,6 +70,6 @@
|
||||
. += "It looks as though it modifies hardsuits to fit [target_species] users."
|
||||
|
||||
/obj/item/modkit/tajaran
|
||||
name = "tajaran hardsuit modification kit"
|
||||
name = "Tajaran hardsuit modification kit"
|
||||
desc = "A kit containing all the needed tools and parts to modify a hardsuit for another user. This one looks like it's meant for Tajaran."
|
||||
target_species = SPECIES_TAJ
|
||||
|
||||
@@ -207,7 +207,7 @@
|
||||
|
||||
/obj/item/radio/headset/heads/ai_integrated/receive_range(freq, level)
|
||||
if (disabledAi)
|
||||
return -1 //Transciever Disabled.
|
||||
return -1 //Transceiver Disabled.
|
||||
return ..(freq, level, 1)
|
||||
|
||||
/obj/item/radio/headset/heads/rd
|
||||
@@ -330,7 +330,7 @@
|
||||
|
||||
/obj/item/radio/headset/mmi_radio/receive_range(freq, level)
|
||||
if (!radio_enabled || istype(src.loc.loc, /mob/living/silicon) || istype(src.loc.loc, /obj/item/organ/internal))
|
||||
return -1 //Transciever Disabled.
|
||||
return -1 //Transceiver Disabled.
|
||||
return ..(freq, level, 1)
|
||||
|
||||
/obj/item/radio/headset/attackby(obj/item/W as obj, mob/user as mob)
|
||||
|
||||
@@ -365,7 +365,7 @@ GLOBAL_DATUM(autospeaker, /mob/living/silicon/ai/announcer)
|
||||
actually transmit large mass. Headsets are the only radio devices capable
|
||||
of sending subspace transmissions to the Communications Satellite.
|
||||
|
||||
A headset sends a signal to a subspace listener/reciever elsewhere in space,
|
||||
A headset sends a signal to a subspace listener/receiver elsewhere in space,
|
||||
the signal gets processed and logged, and an audible transmission gets sent
|
||||
to each individual headset.
|
||||
*/
|
||||
@@ -575,7 +575,7 @@ GLOBAL_DATUM(autospeaker, /mob/living/silicon/ai/announcer)
|
||||
return -1
|
||||
if (!on)
|
||||
return -1
|
||||
if (!freq) //recieved on main frequency
|
||||
if (!freq) //received on main frequency
|
||||
if (!listening)
|
||||
return -1
|
||||
else
|
||||
|
||||
@@ -59,7 +59,7 @@
|
||||
return ..()
|
||||
|
||||
/// Ponchos specifically, but other accessories may eventually need this.
|
||||
/// Consequence of snowflake-y teshari code.
|
||||
/// Consequence of snowflake-y Teshari code.
|
||||
/obj/item/kit/accessory
|
||||
name = "accessory modification kit"
|
||||
desc = "A kit for modifying accessories."
|
||||
@@ -72,7 +72,7 @@
|
||||
if(istype(I, /obj/item/clothing/accessory/storage/poncho))
|
||||
var/obj/item/clothing/accessory/storage/poncho/P = I
|
||||
P.icon_override_state = new_icon_override_file
|
||||
LAZYSET(P.sprite_sheets, SPECIES_TESHARI, new_icon_override_file) /// Will look the same on teshari and other species.
|
||||
LAZYSET(P.sprite_sheets, SPECIES_TESHARI, new_icon_override_file) /// Will look the same on Teshari and other species.
|
||||
P.item_state = new_icon
|
||||
to_chat(user, "You set about modifying the poncho into [new_name].")
|
||||
return ..()
|
||||
@@ -84,7 +84,7 @@
|
||||
|
||||
/obj/item/kit/clothing/customize(var/obj/item/clothing/I, var/mob/user)
|
||||
if(istype(I) && can_customize(I))
|
||||
LAZYSET(I.sprite_sheets, SPECIES_TESHARI, new_icon_override_file) /// Will look the same on teshari and other species.
|
||||
LAZYSET(I.sprite_sheets, SPECIES_TESHARI, new_icon_override_file) /// Will look the same on Teshari and other species.
|
||||
I.item_state = new_icon
|
||||
return ..()
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
/obj/item/bodybag/cryobag/robobag
|
||||
name = "synthmorph bag"
|
||||
desc = "A reusable polymer bag designed to slow down synthetic functions such as data corruption and coolant flow, \
|
||||
especially useful if short on time or in a hostile enviroment."
|
||||
especially useful if short on time or in a hostile environment."
|
||||
icon = 'icons/obj/robobag.dmi'
|
||||
icon_state = "bodybag_folded"
|
||||
item_state = "bodybag_cryo_folded"
|
||||
@@ -19,7 +19,7 @@
|
||||
/obj/structure/closet/body_bag/cryobag/robobag
|
||||
name = "synthmorph bag"
|
||||
desc = "A reusable polymer bag designed to slow down synthetic functions such as data corruption and coolant flow, \
|
||||
especially useful if short on time or in a hostile enviroment."
|
||||
especially useful if short on time or in a hostile environment."
|
||||
icon = 'icons/obj/robobag.dmi'
|
||||
item_path = /obj/item/bodybag/cryobag/robobag
|
||||
tank_type = /obj/item/tank/stasis/nitro_cryo
|
||||
|
||||
@@ -272,7 +272,7 @@
|
||||
add_flashes(W,user)
|
||||
return
|
||||
|
||||
/obj/item/robot_parts/head/proc/add_flashes(obj/item/W as obj, mob/user as mob) //Made into a seperate proc to avoid copypasta
|
||||
/obj/item/robot_parts/head/proc/add_flashes(obj/item/W as obj, mob/user as mob) //Made into a separate proc to avoid copypasta
|
||||
if(src.flash1 && src.flash2)
|
||||
to_chat(user, "<span class='notice'>You have already inserted the eyes!</span>")
|
||||
return
|
||||
|
||||
@@ -62,7 +62,7 @@
|
||||
* this proc combines "sleep" while also checking for if the battle should continue
|
||||
*
|
||||
* this goes through some of the checks - the toys need to be next to each other to fight!
|
||||
* if it's player vs themself: They need to be able to "control" both mechs (either must be adjacent or using TK).
|
||||
* if it's player vs themselves: They need to be able to "control" both mechs (either must be adjacent or using TK).
|
||||
* if it's player vs player: Both players need to be able to "control" their mechs (either must be adjacent or using TK).
|
||||
* if all the checks are TRUE, it does the sleeps, and returns TRUE. Otherwise, it returns FALSE.
|
||||
* Arguments:
|
||||
@@ -80,7 +80,7 @@
|
||||
if(!in_range(src, attacker_controller))
|
||||
attacker_controller.visible_message("<span class='suicide'>[attacker_controller] is running from [src]! The coward!</span>")
|
||||
return FALSE
|
||||
else // If there's an attacker, we can procede as normal.
|
||||
else // If there's an attacker, we can proceed as normal.
|
||||
if(!in_range(src, attacker)) // The two toys aren't next to each other, the battle ends.
|
||||
attacker_controller.visible_message("<span class='notice'> [attacker] and [src] separate, ending the battle. </span>", \
|
||||
"<span class='notice'> [attacker] and [src] separate, ending the battle. </span>")
|
||||
@@ -91,7 +91,7 @@
|
||||
return FALSE
|
||||
// If the attacker_controller isn't next to the attacking toy (and doesn't have telekinesis), the battle ends.
|
||||
if(!in_range(attacker, attacker_controller))
|
||||
attacker_controller.visible_message("<span class='notice'> [attacker_controller.name] seperates from [attacker], ending the battle.</span>", \
|
||||
attacker_controller.visible_message("<span class='notice'> [attacker_controller.name] separates from [attacker], ending the battle.</span>", \
|
||||
"<span class='notice'> You separate from [attacker], ending the battle. </span>")
|
||||
return FALSE
|
||||
|
||||
@@ -100,13 +100,13 @@
|
||||
if(opponent.incapacitated())
|
||||
return FALSE
|
||||
if(!in_range(src, opponent))
|
||||
opponent.visible_message("<span class='notice'> [opponent.name] seperates from [src], ending the battle.</span>", \
|
||||
opponent.visible_message("<span class='notice'> [opponent.name] separates from [src], ending the battle.</span>", \
|
||||
"<span class='notice'> You separate from [src], ending the battle. </span>")
|
||||
return FALSE
|
||||
// If it's not PVP and the attacker_controller isn't next to the defending toy (and doesn't have telekinesis), the battle ends.
|
||||
else
|
||||
if (!in_range(src, attacker_controller))
|
||||
attacker_controller.visible_message("<span class='notice'> [attacker_controller.name] seperates from [src] and [attacker], ending the battle.</span>", \
|
||||
attacker_controller.visible_message("<span class='notice'> [attacker_controller.name] separates from [src] and [attacker], ending the battle.</span>", \
|
||||
"<span class='notice'> You separate [attacker] and [src], ending the battle. </span>")
|
||||
return FALSE
|
||||
|
||||
|
||||
@@ -968,14 +968,14 @@
|
||||
return ..()
|
||||
|
||||
/obj/item/toy/plushie/nymph
|
||||
name = "diona nymph plush"
|
||||
desc = "A plushie of an adorable diona nymph! While its level of self-awareness is still being debated, its level of cuteness is not."
|
||||
name = "Diona nymph plush"
|
||||
desc = "A plushie of an adorable Diona nymph! While its level of self-awareness is still being debated, its level of cuteness is not."
|
||||
icon_state = "nymphplushie"
|
||||
pokephrase = "Chirp!"
|
||||
|
||||
/obj/item/toy/plushie/teshari
|
||||
name = "teshari plush"
|
||||
desc = "This is a plush teshari. Very soft, with a pompom on the tail. The toy is made well, as if alive. Looks like she is sleeping. Shhh!"
|
||||
name = "Teshari plush"
|
||||
desc = "This is a plush Teshari. Very soft, with a pompom on the tail. The toy is made well, as if alive. Looks like she is sleeping. Shhh!"
|
||||
icon_state = "teshariplushie"
|
||||
pokephrase = "Rya!"
|
||||
|
||||
@@ -1004,8 +1004,8 @@
|
||||
pokephrase = "Sksksk!"
|
||||
|
||||
/obj/item/toy/plushie/farwa
|
||||
name = "farwa plush"
|
||||
desc = "A farwa plush doll. It's soft and comforting!"
|
||||
name = "Farwa plush"
|
||||
desc = "A Farwa plush doll. It's soft and comforting!"
|
||||
icon_state = "farwaplushie"
|
||||
pokephrase = "Squaw!"
|
||||
|
||||
|
||||
@@ -179,7 +179,7 @@
|
||||
icon_state = "electric_rcd"
|
||||
var/obj/item/cell/cell = null
|
||||
var/make_cell = TRUE // If false, initialize() won't spawn a cell for this.
|
||||
var/electric_cost_coefficent = 83.33 // Higher numbers make it less efficent. 86.3... means it should matche the standard RCD capacity on a 10k cell.
|
||||
var/electric_cost_coefficent = 83.33 // Higher numbers make it less efficient. 86.3... means it should match the standard RCD capacity on a 10k cell.
|
||||
|
||||
/obj/item/rcd/electric/Initialize()
|
||||
if(make_cell)
|
||||
@@ -242,7 +242,7 @@
|
||||
/obj/item/rcd/electric/mounted/borg
|
||||
can_remove_rwalls = TRUE
|
||||
desc = "A device used to rapidly build and deconstruct. It runs directly off of electricity, drawing directly from your cell."
|
||||
electric_cost_coefficent = 41.66 // Twice as efficent, out of pity.
|
||||
electric_cost_coefficent = 41.66 // Twice as efficient, out of pity.
|
||||
toolspeed = 0.5 // Twice as fast, since borg versions typically have this.
|
||||
|
||||
/obj/item/rcd/electric/mounted/borg/swarm
|
||||
@@ -268,7 +268,7 @@
|
||||
|
||||
// Infinite use RCD for debugging/adminbuse.
|
||||
/obj/item/rcd/debug
|
||||
name = "self-repleshing rapid construction device"
|
||||
name = "self-replenishing rapid construction device"
|
||||
desc = "An RCD that appears to be plated with gold. For some reason it also seems to just \
|
||||
be vastly superior to all other RCDs ever created, possibly due to it being colored gold."
|
||||
icon_state = "debug_rcd"
|
||||
|
||||
@@ -17,11 +17,11 @@
|
||||
throwforce = 7
|
||||
|
||||
/obj/item/bone/skull/tajaran
|
||||
desc = "A skull. Judging by the shape and size, you'd guess that it might be tajaran."
|
||||
desc = "A skull. Judging by the shape and size, you'd guess that it might be Tajaran."
|
||||
icon_state = "tajskull"
|
||||
|
||||
/obj/item/bone/skull/unathi
|
||||
desc = "A skull. Judging by the shape and size, you'd guess that it might be unathi."
|
||||
desc = "A skull. Judging by the shape and size, you'd guess that it might be Unathi."
|
||||
icon_state = "unaskull"
|
||||
|
||||
/obj/item/bone/skull/unknown
|
||||
|
||||
@@ -74,7 +74,7 @@
|
||||
to_chat(user, "<span class='warning'>Circuit controls are locked.</span>")
|
||||
return
|
||||
var/existing_networks = jointext(network,",")
|
||||
var/input = sanitize(input(usr, "Which networks would you like to connect this camera console circuit to? Seperate networks with a comma. No Spaces!\nFor example: SS13,Security,Secret ", "Multitool-Circuitboard interface", existing_networks))
|
||||
var/input = sanitize(input(usr, "Which networks would you like to connect this camera console circuit to? Separate networks with a comma. No Spaces!\nFor example: SS13,Security,Secret ", "Multitool-Circuitboard interface", existing_networks))
|
||||
if(!input)
|
||||
to_chat(usr, "No input found please hang up and try your call again.")
|
||||
return
|
||||
|
||||
@@ -168,7 +168,7 @@
|
||||
for(var/obj/item/reagent_containers/glass/G in beakers)
|
||||
G.reagents.trans_to_obj(src, G.reagents.total_volume)
|
||||
|
||||
if(src.reagents.total_volume) //The possible reactions didnt use up all reagents.
|
||||
if(src.reagents.total_volume) //The possible reactions didn't use up all reagents.
|
||||
var/datum/effect_system/steam_spread/steam = new /datum/effect_system/steam_spread()
|
||||
steam.set_up(10, 0, get_turf(src))
|
||||
steam.attach(src)
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
//Concussion, or 'dizzyness' grenades.
|
||||
//Concussion, or 'dizziness' grenades.
|
||||
|
||||
/obj/item/grenade/concussion
|
||||
name = "concussion grenade"
|
||||
|
||||
@@ -372,7 +372,7 @@
|
||||
<p>
|
||||
<ol>
|
||||
<li>Take a syringe of blood from the body you wish to turn into a Diona.</li>
|
||||
<li>Inject 5 units of blood into the pack of dionaea-replicant seeds.</li>
|
||||
<li>Inject 5 units of blood into the pack of Dionaea-replicant seeds.</li>
|
||||
<li>Plant the seeds.</li>
|
||||
<li>Tend to the plants water and nutrition levels until it is time to harvest the Diona.</li>
|
||||
</ol>
|
||||
@@ -1016,7 +1016,7 @@
|
||||
Here's a guide for some basic drinks.
|
||||
|
||||
<h3>Black Russian:</h3>
|
||||
Mix vodka and Kahlua into a glass.
|
||||
Mix vodka and Kahlúa into a glass.
|
||||
|
||||
<h3>Cafe Latte:</h3>
|
||||
Mix milk and coffee into a glass.
|
||||
|
||||
@@ -5,7 +5,7 @@ This class of armor takes armor and appearance data from a material "datum".
|
||||
They are also fragile based on material data and many can break/smash apart when hit.
|
||||
|
||||
Materials has a var called protectiveness which plays a major factor in how good it is for armor.
|
||||
With the coefficent being 0.05, this is how strong different levels of protectiveness are (for melee)
|
||||
With the coefficient being 0.05, this is how strong different levels of protectiveness are (for melee)
|
||||
For bullets and lasers, material hardness and reflectivity also play a major role, respectively.
|
||||
|
||||
|
||||
@@ -31,7 +31,7 @@ Protectiveness | Armor %
|
||||
var/applies_material_color = TRUE
|
||||
var/unbreakable = FALSE
|
||||
var/default_material = null // Set this to something else if you want material attributes on init.
|
||||
var/material_armor_modifier = 1 // Adjust if you want seperate types of armor made from the same material to have different protectiveness (e.g. makeshift vs real armor)
|
||||
var/material_armor_modifier = 1 // Adjust if you want separate types of armor made from the same material to have different protectiveness (e.g. makeshift vs real armor)
|
||||
var/material_slowdown_modifier = 0
|
||||
var/material_slowdown_multiplier = 0.5
|
||||
|
||||
|
||||
@@ -210,7 +210,7 @@
|
||||
if(!istype(S)) return 0
|
||||
|
||||
//I would prefer to drop a new stack, but the item/attack_hand code
|
||||
// that calls this can't recieve a different object than you clicked on.
|
||||
// that calls this can't receive a different object than you clicked on.
|
||||
//Therefore, make a new stack internally that has the remainder.
|
||||
// -Sayu
|
||||
|
||||
|
||||
@@ -406,8 +406,8 @@
|
||||
starts_with = list(/obj/item/reagent_containers/food/snacks/cube/monkeycube/wrapped = 4)
|
||||
|
||||
/obj/item/storage/box/monkeycubes/farwacubes
|
||||
name = "farwa cube box"
|
||||
desc = "Drymate brand farwa cubes, shipped from Meralar. Just add water!"
|
||||
name = "Farwa cube box"
|
||||
desc = "Drymate brand Farwa cubes, shipped from Meralar. Just add water!"
|
||||
starts_with = list(/obj/item/reagent_containers/food/snacks/cube/monkeycube/wrapped/farwacube = 4)
|
||||
|
||||
/obj/item/storage/box/monkeycubes/stokcubes
|
||||
@@ -416,8 +416,8 @@
|
||||
starts_with = list(/obj/item/reagent_containers/food/snacks/cube/monkeycube/wrapped/stokcube = 4)
|
||||
|
||||
/obj/item/storage/box/monkeycubes/neaeracubes
|
||||
name = "neaera cube box"
|
||||
desc = "Drymate brand neaera cubes, shipped from Qerr'balak. Just add water!"
|
||||
name = "Neaera cube box"
|
||||
desc = "Drymate brand Neaera cubes, shipped from Qerr'balak. Just add water!"
|
||||
starts_with = list(/obj/item/reagent_containers/food/snacks/cube/monkeycube/wrapped/neaeracube = 4)
|
||||
|
||||
/obj/item/storage/box/ids
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*
|
||||
* The 'fancy' path is for objects like donut boxes that show how many items are in the storage item on the sprite itself
|
||||
* .. Sorry for the shitty path name, I couldnt think of a better one.
|
||||
* .. Sorry for the shitty path name, I couldn't think of a better one.
|
||||
*
|
||||
* WARNING: var/icon_type is used for both examine text and sprite name. Please look at the procs below and adjust your sprite names accordingly
|
||||
*
|
||||
|
||||
@@ -134,7 +134,7 @@ MRE Stuff
|
||||
|
||||
/obj/item/storage/mre/menu9
|
||||
name = "vegan MRE"
|
||||
meal_desc = "This one is menu 9, boiled rice (skrell-safe)."
|
||||
meal_desc = "This one is menu 9, boiled rice (Skrell-safe)."
|
||||
icon_state = "vegmre"
|
||||
starts_with = list(
|
||||
/obj/item/storage/mrebag/menu9,
|
||||
|
||||
@@ -146,7 +146,7 @@
|
||||
|
||||
/obj/item/storage/box/syndie_kit/chameleon
|
||||
name = "chameleon kit"
|
||||
desc = "Comes with all the clothes you need to impersonate most people. Acting lessons sold seperately."
|
||||
desc = "Comes with all the clothes you need to impersonate most people. Acting lessons sold separately."
|
||||
starts_with = list(
|
||||
/obj/item/storage/backpack/chameleon/full,
|
||||
/obj/item/gun/energy/chameleon
|
||||
|
||||
@@ -248,13 +248,13 @@
|
||||
// Rare version of a baton that causes lesser lifeforms to really hate the user and attack them.
|
||||
/obj/item/melee/baton/shocker
|
||||
name = "shocker"
|
||||
desc = "A device that appears to arc electricity into a target to incapacitate or otherwise hurt them, similar to a stun baton. It looks inefficent."
|
||||
desc = "A device that appears to arc electricity into a target to incapacitate or otherwise hurt them, similar to a stun baton. It looks inefficient."
|
||||
description_info = "Hitting a lesser lifeform with this while it is on will compel them to attack you above other nearby targets. Otherwise \
|
||||
it works like a regular stun baton, just less effectively."
|
||||
icon_state = "shocker"
|
||||
force = 10
|
||||
throwforce = 5
|
||||
agonyforce = 25 // Less efficent than a regular baton.
|
||||
agonyforce = 25 // Less efficient than a regular baton.
|
||||
attack_verb = list("poked")
|
||||
|
||||
/obj/item/melee/baton/shocker/apply_hit_effect(mob/living/target, mob/living/user, var/hit_zone)
|
||||
|
||||
@@ -49,7 +49,7 @@ var/global/list/tank_gauge_cache = list()
|
||||
|
||||
description_antag = "Each tank may be incited to burn by attaching wires and an igniter assembly, though the igniter can only be used once and the mixture only burn if the igniter pushes a flammable gas mixture above the minimum burn temperature (126ºC). \
|
||||
Wired and assembled tanks may be disarmed with a set of wirecutters. Any exploding or rupturing tank will generate shrapnel, assuming their relief valves have been welded beforehand. Even if not, they can be incited to expel hot gas on ignition if pushed above 173ºC. \
|
||||
Relatively easy to make, the single tank bomb requries no tank transfer valve, and is still a fairly formidable weapon that can be manufactured from any tank."
|
||||
Relatively easy to make, the single tank bomb requires no tank transfer valve, and is still a fairly formidable weapon that can be manufactured from any tank."
|
||||
|
||||
/obj/item/tank/proc/init_proxy()
|
||||
var/obj/item/tankassemblyproxy/proxy = new /obj/item/tankassemblyproxy(src)
|
||||
|
||||
@@ -45,10 +45,10 @@
|
||||
..()
|
||||
|
||||
/datum/category_item/catalogue/anomalous/precursor_a/alien_wirecutters
|
||||
name = "Precursor Alpha Object - Wire Seperator"
|
||||
name = "Precursor Alpha Object - Wire Separator"
|
||||
desc = "An object appearing to have a tool shape. It has two handles, and two \
|
||||
sides which are attached to each other in the center. At the end on each side \
|
||||
is a sharp cutting edge, made from a seperate material than the rest of the \
|
||||
is a sharp cutting edge, made from a separate material than the rest of the \
|
||||
tool.\
|
||||
<br><br>\
|
||||
This tool appears to serve the same purpose as conventional wirecutters, due \
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
GLOBAL_LIST_EMPTY(cliff_icon_cache)
|
||||
|
||||
/*
|
||||
Cliffs give a visual illusion of depth by seperating two places while presenting a 'top' and 'bottom' side.
|
||||
Cliffs give a visual illusion of depth by separating two places while presenting a 'top' and 'bottom' side.
|
||||
|
||||
Mobs moving into a cliff from the bottom side will simply bump into it and be denied moving into the tile,
|
||||
where as mobs moving into a cliff from the top side will 'fall' off the cliff, forcing them to the bottom, causing significant damage and stunning them.
|
||||
@@ -35,7 +35,7 @@ two tiles on initialization, and which way a cliff is facing may change during m
|
||||
climb_delay = 10 SECONDS
|
||||
block_turf_edges = TRUE // Don't want turf edges popping up from the cliff edge.
|
||||
|
||||
var/icon_variant = null // Used to make cliffs less repeative by having a selection of sprites to display.
|
||||
var/icon_variant = null // Used to make cliffs less repetitive by having a selection of sprites to display.
|
||||
var/corner = FALSE // Used for icon things.
|
||||
var/ramp = FALSE // Ditto.
|
||||
var/bottom = FALSE // Used for 'bottom' typed cliffs, to avoid infinite cliffs, and for icons.
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
anchored = 0
|
||||
|
||||
/obj/structure/closet/gimmick/russian
|
||||
name = "russian surplus closet"
|
||||
name = "Russian surplus closet"
|
||||
desc = "It's a storage unit for Russian standard-issue surplus."
|
||||
closet_appearance = /decl/closet_appearance/tactical
|
||||
|
||||
|
||||
@@ -455,7 +455,7 @@
|
||||
|
||||
/obj/structure/flora/pottedplant/xmas
|
||||
name = "small christmas tree"
|
||||
desc = "This is a tiny well lit decorative christmas tree."
|
||||
desc = "This is a tiny well lit decorative Christmas tree."
|
||||
icon_state = "plant-xmas"
|
||||
|
||||
/obj/structure/flora/mushroom
|
||||
@@ -486,7 +486,7 @@
|
||||
it to spread much farther than before, with the assistance of humans.\
|
||||
<br><br>\
|
||||
In Sif's early history, Sivian settlers found this plant while they were establishing mines. Their ability \
|
||||
to emit low, but consistant amounts of light made them desirable to the settlers. They would often cultivate \
|
||||
to emit low, but consistent amounts of light made them desirable to the settlers. They would often cultivate \
|
||||
this plant inside man-made tunnels and mines to act as a backup source of light that would not need \
|
||||
electricity. This technique has saved many lost miners, and this practice continues to this day."
|
||||
value = CATALOGUER_REWARD_EASY
|
||||
|
||||
@@ -157,14 +157,14 @@
|
||||
dat += "<A href='?src=\ref[src];newline=1'>Add Line</A><BR><BR>"
|
||||
if(help)
|
||||
dat += {"<B><A href='?src=\ref[src];help=1'>Hide Help</A></B><BR>
|
||||
Lines are a series of chords, separated by commas (,), each with notes seperated by hyphens (-).<br>
|
||||
Lines are a series of chords, separated by commas (,), each with notes separated by hyphens (-).<br>
|
||||
Every note in a chord will play together, with chord timed by the tempo.<br>
|
||||
<br>
|
||||
Notes are played by the names of the note, and optionally, the accidental, and/or the octave number.<br>
|
||||
By default, every note is natural and in octave 3. Defining otherwise is remembered for each note.<br>
|
||||
Example: <i>C,D,E,F,G,A,B</i> will play a C major scale.<br>
|
||||
After a note has an accidental placed, it will be remembered: <i>C,C4,C,C3</i> is <i>C3,C4,C4,C3</i><br>
|
||||
Chords can be played simply by seperating each note with a hyphon: <i>A-C#,Cn-E,E-G#,Gn-B</i><br>
|
||||
Chords can be played simply by separating each note with a hyphen: <i>A-C#,Cn-E,E-G#,Gn-B</i><br>
|
||||
A pause may be denoted by an empty chord: <i>C,E,,C,G</i><br>
|
||||
To make a chord be a different time, end it with /x, where the chord length will be length<br>
|
||||
defined by tempo / x: <i>C,G/2,E/4</i><br>
|
||||
@@ -226,7 +226,7 @@
|
||||
edit = text2num(href_list["edit"]) - 1
|
||||
if(href_list["repeat"]) //Changing this from a toggle to a number of repeats to avoid infinite loops.
|
||||
if(playing)
|
||||
return //So that people cant keep adding to repeat. If the do it intentionally, it could result in the server crashing.
|
||||
return //So that people can't keep adding to repeat. If the do it intentionally, it could result in the server crashing.
|
||||
repeat += round(text2num(href_list["repeat"]))
|
||||
if(repeat < 0)
|
||||
repeat = 0
|
||||
|
||||
@@ -34,7 +34,7 @@
|
||||
<B>Captain Willis 06:13:15:</B> (Expletives), I'm turning us around. Put out a distress call to Control, we'll be back in Sif orbit in a couple of minutes.<BR>
|
||||
**
|
||||
<BR>
|
||||
<B>V.I.S Traffic Control 06:15:49:</B> MBT-540 we are recieving you. Your atmospheric sensors are reading potentially harmful toxins in your cargo bay. Advise locking down interior cargo bay doors. Please stand by.<BR>
|
||||
<B>V.I.S Traffic Control 06:15:49:</B> MBT-540 we are receiving you. Your atmospheric sensors are reading potentially harmful toxins in your cargo bay. Advise locking down interior cargo bay doors. Please stand by.<BR>
|
||||
<B>Captain Adisu 06:16:10:</B> Understood. <BR> ** <BR><B>V.I.S Traffic Control 06:27:02: </B> MBT-540, we have no docking bays available at this time, are you equipped for atmospheric re-entry?<BR>
|
||||
<B>Captain Willis 06:27:12:</B> We-We are shielded. But we have fuel and air for-<BR>
|
||||
<B>V.I.S Traffic Control 06:27:17:</B> Please make an emergency landing at the coordinates provided and standby for further information.<BR>
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
// A fluff structure for certain PoIs involving communications.
|
||||
// It makes audible sounds, generally in morse code.
|
||||
// It makes audible sounds, generally in Morse code.
|
||||
/obj/structure/prop/transmitter
|
||||
name = "transmitter"
|
||||
desc = "A machine that appears to be transmitting a message somewhere else. It sounds like it's on a loop."
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/obj/structure/salvageable
|
||||
name = "broken macninery"
|
||||
name = "broken machinery"
|
||||
desc = "Broken beyond repair, but looks like you can still salvage something from this if you had a prying implement."
|
||||
icon = 'icons/obj/salvageable.dmi'
|
||||
density = 1
|
||||
@@ -29,7 +29,7 @@
|
||||
return TRUE
|
||||
return ..()
|
||||
|
||||
//Types themself, use them, but not the parent object
|
||||
//Types themselves, use them, but not the parent object
|
||||
|
||||
/obj/structure/salvageable/machine
|
||||
name = "broken machine"
|
||||
|
||||
@@ -1469,7 +1469,7 @@
|
||||
/obj/structure/sign/flag/fivearrows
|
||||
name = "Five Arrows flag"
|
||||
desc = "The red flag of the Five Arrows."
|
||||
description_fluff = "The Five Arrows is an independent government entity that seceded from the Solar Confederate Government in 2570, in response to percieved \
|
||||
description_fluff = "The Five Arrows is an independent government entity that seceded from the Solar Confederate Government in 2570, in response to perceived \
|
||||
failures in aiding the Sagittarius Heights during the Skathari Incursion. The success of the government in achieving effective local defense and prosperity has \
|
||||
since attracted the membership of Kauq'xum, a remote Skrellian colony. \The Five Arrows formed the model for SolGov's own semi-autonomous \"Regional Blocs\"."
|
||||
icon_state = "fivearrows"
|
||||
@@ -1484,7 +1484,7 @@
|
||||
/obj/item/flag/fivearrows
|
||||
name = "Five Arrows flag"
|
||||
desc = "The red flag of the Five Arrows."
|
||||
description_fluff = "The Five Arrows is an independent government entity that seceded from the Solar Confederate Government in 2570, in response to percieved \
|
||||
description_fluff = "The Five Arrows is an independent government entity that seceded from the Solar Confederate Government in 2570, in response to perceived \
|
||||
failures in aiding the Sagittarius Heights during the Skathari Incursion. The success of the government in achieving effective local defense and prosperity has \
|
||||
since attracted the membership of Kauq'xum, a remote Skrellian colony. \The Five Arrows formed the model for SolGov's own semi-autonomous \"Regional Blocs\"."
|
||||
flag_path = "fivearrows"
|
||||
|
||||
Reference in New Issue
Block a user