[MDB Ignore] [IDB Ignore] Kills off /obj/item/device (#21774)

This has zero reason to exist in our code base. We have no procs or
variables tied to this. I removed it to make future modifications
cleaner.

---------

Signed-off-by: Cody Brittain <1779662+Generalcamo@users.noreply.github.com>
This commit is contained in:
Cody Brittain
2026-02-01 00:14:26 -05:00
committed by GitHub
parent 75424095ac
commit 3f62424312
857 changed files with 8690 additions and 8599 deletions
+51 -23
View File
@@ -1,4 +1,5 @@
# Licensing
Aurora Station code is licensed under the [GNU Affero General Public License version 3](https://www.gnu.org/licenses/agpl-3.0.en.html), which can be found in full in LICENSE-AGPL3.txt.
Commits with a git authorship date prior to `1420675200 +0000` (2015/01/08 00:00) are licensed under the GNU General Public License version 3, which can be found in full in LICENSE-GPL3.txt.
@@ -10,6 +11,7 @@ All assets including icons and sound are under a [Creative Commons 3.0 BY-SA](ht
# GitHub Standards
### Sub-licensing External Content
**When does this section apply to me?** When you are integrating content that is **not** licensed under [AGPLv3](https://www.gnu.org/licenses/agpl-3.0.en.html) (code)
or [Creative Commons 3.0 BY-SA](https://creativecommons.org/licenses/by-sa/3.0/) (icons and sounds). The most common application here is for icons and sounds gathered
from an external source or repository.
@@ -27,6 +29,7 @@ or within the plain text describing the change itself.
When reading the sub-sections that follow, note that these will be **generalizations**, and the specifics will be dictated by the license itself.
#### Code
Code from most other open source SS13 code bases is GPLv3 or AGPLv3. This means that it's free to be copied without any additional effort. Though any notes of authorship within
the code files, if presents, must be kept intact. Be wary of **Goon**: their code is licensed under CC-BY-SA-NC and is **not** directly compatible with our codebase's license.
Porting Goon code directly is highly discouraged as a result.
@@ -36,6 +39,7 @@ and that a separate license file (if present in/packaged with the original sourc
porting in this manner into a `modules/` sub folder, and stick the license file in there.
#### Other Assets (Sound, Icons)
If the material is distributed under CC-BY-SA 3.0, then it can go straight into the relevant folders, as long as you attribute the author(s) in the PR and changelog if they can be
identified.
@@ -43,6 +47,7 @@ In any other case, create a subfolder somewhere in the relevant structure, stick
license permits the intended use of the content in the appropriate manner.
### Peer Review
All pull requests are subject to peer review prior to being merged. After said reviews, they are given a final once-over by a maintainer and
then merged if good.
@@ -55,6 +60,7 @@ This is to ensure that there is enough time to review and discuss new additionsf
A **bug fix** pull request will require **two** reviews, if it is to be merged in the first 24 hours, or **one** following the first 24 hours.
### Prefer Atomic Pull-Requests
Pull requests should do **one** thing.
This means that a series of small, dependant pull requests is preferred over one large, monolithic one.
@@ -65,6 +71,7 @@ Small pull requests allow for easier reverting, easier (and faster!) reviewing a
developers in the future to more easily locate all changes relevant to a potential issue.
### Changelogs
Changelogs are automatically parsed from within the `html/changelogs` folder. A readme file exists there with specific information on how to
create and manage changelogs. All pull requests which contain player-visible changes are required to have a changelog. Any others, like pull
requests containing background system tweaks, minor optimizations, admin systems, etcetera, do not necessarily require a changelog.
@@ -76,20 +83,23 @@ about it.
# Coding Standards
### Absolute Pathing
Absolute pathing has to be used for type, proc, and verb definitions. This is to make searching and reading easier.
An example of properly pathed code:
```DM
/obj/item/device/cake
/obj/item/cake
[cake code here]
/obj/item/device/cake/proc/eat_cake()
/obj/item/cake/proc/eat_cake()
[proc code here]
```
An example of badly pathed code:
```DM
/obj/item/device/cake
/obj/item/cake
[cake code here]
proc/eat_cake()
@@ -97,6 +107,7 @@ An example of badly pathed code:
```
### Initialize() over New()
Since the implementation of the Stoned Master Controller, overrides of the `New()` proc have effectively become depracted in favour of `Initialize()` and `LateInitialize()`. In most cases, `Initialize()` is a drop-in replacement for `New()`, however, there are a few considerations to be taken into account when using this. Specifically, `Initialize()` must always return a initialization hint and must always call the superior definition via `..()`. Usually these two are done together, either via the `. = ..()` semantics or with explicit `return ..()` statements.
`LateInitialize()` can be used to manage race conditions during map loading. In the middle of the game, when `mapload = FALSE` in `Initialize()`, `LateInitialize()` is called immediately after the specific atom's `Initialize()` call. However, if `mapload = TRUE`, which it does during map atom initialization, the `LateInitialization()` of an atom is called once all atoms have finished their `Initialization()` calls. Note that `Initialize()` needs to return `INITIALIZE_HINT_LATELOAD` in order for `LateInitialization()` to be called in either case.
@@ -104,9 +115,11 @@ Since the implementation of the Stoned Master Controller, overrides of the `New(
Refer to the [wiki](https://github.com/Aurorastation/Aurora.3/wiki/Atom-Initialization) article for further information.
### qdel() and Destroy() usage
All objects with an applicable type need to be deleted by `qdel()`, as opposed to the regular `del()` proc. While conducting this action, make sure you remove all possible references to the object you assign for deletion *after* calling `qdel()`. This will enable the garbage collector to handle the objects assigned to it at its own pace, thus reducing lag in the long run.
All objects with an applicable type need to be deleted by `qdel()`, as opposed to the regular `del()` proc. While conducting this action, make sure you remove all possible references to the object you assign for deletion _after_ calling `qdel()`. This will enable the garbage collector to handle the objects assigned to it at its own pace, thus reducing lag in the long run.
An example of how to use `qdel()`:
```DM
/obj/item/plate
var/obj/item/cake/cake
@@ -126,6 +139,7 @@ The `Destroy()` proc for objects should be defined, if there are any special ope
Note that any modified `Destroy()` proc must always **call its superior definition `..()`** and **must return a deletion hint.** Usually the hint passed down from the superior definition is returned, via `. = ..()` or an explicit `return ..()` statement.
An example of how to define `Destroy()` for an item that needs it:
```DM
/obj/item/plate
var/obj/item/cake/cake
@@ -144,39 +158,45 @@ An example of how to define `Destroy()` for an item that needs it:
```
`qdel()` is **not** capable of handling the following types of objects:
* file
* savefile
* SQLLite object
* list objects.
* turfs
* areas (Note that these shouldn't be deleted at all)
- file
- savefile
- SQLLite object
- list objects.
- turfs
- areas (Note that these shouldn't be deleted at all)
You will have to use the regular `del()` proc to delete any object of that type (except for `/turf`, which should use `ChangeTurf()`).
More details on qdel, Garbage, and `Destroy()` are available [on the wiki](https://github.com/Aurorastation/Aurora.3/wiki/Garbage%2C-qdel%2C-and-Destroy).
### HTML styling for user output
All text output to the user, specially if the output operator `<<` is used, should be formatted in proper HTML. DM text macros for styling, such as `\red` and `\blue`, are no longer to be used actively. This will enable the modification of used HTML styling later down the line, via the centralized .css files. It will also enable a switch from an output panel, to other output methods.
For reference, here are the standard span classes for user output, and the correlation between them and the DM text macros:
* `<span class='danger'></span>` corresponds to `\red` and is bold.
* `<span class='warning'></span>` also corresponds to `\red` and is not bold.
* `<span class='notice'></span>` corresponds to `\blue` and is not bold.
- `<span class='danger'></span>` corresponds to `\red` and is bold.
- `<span class='warning'></span>` also corresponds to `\red` and is not bold.
- `<span class='notice'></span>` corresponds to `\blue` and is not bold.
There exist pre-processor macros for using these spans. `span(class, text)` which is the equivalent of typing a string that looks like this: `"<span class='[class]'>[text]</span>"` and macros such as `SPAN_WARNING(text)`, `SPAN_NOTICE(text)`, `SPAN_DANGER(text)`. Using the SPAN_X() macros is preferred.
The stylesheet available for use within DM can be found in `code/stylesheet.dm`.
### Usage of forceMove
In order to make `Exited()` and `Entered()` procs more reliable, the usage of `forceMove()` when forcibly moving one item to another location, be it another item or turf, is required. Directly changing an item's loc values will skip over calls to the aforementioned procs, thus making them less useful and more unreliable.
An example of improper item moving:
```DM
/proc/some_proc(var/obj/A, var/obj/B)
A.loc = B // Simply move A inside B.
```
An example of proper item moving:
```DM
/proc/some_proc(var/obj/A, var/obj/B)
A.forceMove(B) // This will call A.loc.Exited() and B.Entered().
@@ -184,20 +204,24 @@ An example of proper item moving:
```
### Regarding the variable usr
If at all possible, procs outside of verbs and `Topic()` should avoid reliance on `usr`, and instead use a custom argument to specify the user and its expected type. This makes it easier to reuse procs in chains where `usr` is not always defined, and combats against potential security flaws that relying on `usr` can bring.
`usr` must also always be validated to be the expected type!
### Reserved argument names
All BYOND procs have a set list of variables which are implicitly defined in each proc. However, the DM compiler will allow you to reuse these names as names for your custom variables. This should be avoided at all costs, to improve the readability and understanding of code.
A list of reserved argument names instantiated with all procs:
* `vars` being an alias of `src.vars` if `src` exists.
* `args`
* `usr`
* `src`
- `vars` being an alias of `src.vars` if `src` exists.
- `args`
- `usr`
- `src`
### Avoid `in world` loops
Due to the amount of instances in the world, utilizing an `in world` loop should be avoided in all instances. In large projects, specially when crawling for types that are not optimized internally by BYOND (only core built-in types are), crawling `in world` will surmount to a very large blocking loop and will almost certainly trigger the infinite loop warning. This forces the specific callstack to sleep at least once.
Note that a for-each loop without an explicit container specified will default to an `in world` loop. This is to say, the following two examples are equivalent:
@@ -211,21 +235,25 @@ for (var/client/C in world)
```
### Database prefixing
All tables for the database should be prefixed according to the following list:
* `ss13_` for tables in which ingame data is held.
* `discord_` for tables in which BOREALIS data is held.
- `ss13_` for tables in which ingame data is held.
- `discord_` for tables in which BOREALIS data is held.
# HTML UI Standards
### UI conversion policy
Due to our current situation with 5 different HTML UI systems we are now enforcing a policy that all new UIs should be made using the TGUI system. This policy also applies to editing existing UIs, with the following exceptions:
1. Modification is security / severe bug fix.
0. It is typo fix.
0. Touched UI file is too large.
0. TGUI can't accommodate that type of UI.
1. Modification is security / severe bug fix.
2. It is typo fix.
3. Touched UI file is too large.
4. TGUI can't accommodate that type of UI.
### Globals
All globals must use the defines found in `__defines/_globals.dm`. This is to store globals inside the Global Controller, allowing us to view and edit them at runtime. Here are a few examples.
`GLOBAL_VAR(thing)` will create a global variable `var/thing` accessed with `GLOB.thing`.
`GLOBAL_LIST_INIT(list_of_stuff, list("stuff", "thing"))` will create a global list `var/list/list_of_stuff = list("stuff, thing")` accessed with `GLOB.list_of_stuff`.
+1 -1
View File
@@ -2,7 +2,7 @@
//Update this whenever you need to take advantage of more recent byond features
#define MIN_COMPILER_VERSION 516
#define MIN_COMPILER_BUILD 1673
#define MIN_COMPILER_BUILD 1650
#if (DM_VERSION < MIN_COMPILER_VERSION || DM_BUILD < MIN_COMPILER_BUILD) && !defined(SPACEMAN_DMM) && !defined(OPENDREAM)
//Don't forget to update this part
#error Your version of BYOND is too out-of-date to compile this project. Go to https://secure.byond.com/download and update.
+1 -1
View File
@@ -155,7 +155,7 @@ GLOBAL_LIST_INIT(scarySounds, list(
GLOBAL_VAR_INIT(max_explosion_range, 14)
// Announcer intercom, because too much stuff creates an intercom for one message then hard del()s it.
GLOBAL_DATUM_INIT(global_announcer, /obj/item/device/radio/all_channels, new)
GLOBAL_DATUM_INIT(global_announcer, /obj/item/radio/all_channels, new)
// the number next to it denotes how much money the department receives when its account is generated
GLOBAL_LIST_INIT(department_funds, list(
+1 -1
View File
@@ -88,7 +88,7 @@
/*################################
Wires for the assembly
/obj/item/device/assembly
/obj/item/assembly
################################*/
///Allows Pulsed(0) to call Activate()
+1 -1
View File
@@ -67,7 +67,7 @@ GLOBAL_LIST_INIT(whitelisted_species, list(SPECIES_HUMAN))
GLOBAL_LIST_EMPTY(playable_species)
/// All uplinks.
GLOBAL_LIST_EMPTY_TYPED(world_uplinks, /obj/item/device/uplink)
GLOBAL_LIST_EMPTY_TYPED(world_uplinks, /obj/item/uplink)
/// Preferences stuff below.
/// Stores /datum/sprite_accessory/hair indexed by name.
+2 -2
View File
@@ -197,10 +197,10 @@
. -= target
break
/proc/get_hearers_in_radio_ranges(list/obj/item/device/radios)
/proc/get_hearers_in_radio_ranges(list/obj/item/radios)
. = list()
// Returns a list of mobs who can hear any of the radios given in @radios
for(var/obj/item/device/radio/radio as anything in radios)
for(var/obj/item/radio/radio as anything in radios)
. |= get_hearers_in_LOS(radio.canhear_range, radio, FALSE)
///Calculate if two atoms are in sight, returns TRUE or FALSE
+2 -2
View File
@@ -914,7 +914,7 @@ GLOBAL_LIST_INIT(common_tools, list(
/obj/item/wirecutters,
/obj/item/powerdrill,
/obj/item/combitool,
/obj/item/device/multitool,
/obj/item/multitool,
/obj/item/crowbar))
/proc/istool(O)
@@ -1005,7 +1005,7 @@ GLOBAL_LIST_INIT(common_tools, list(
GLOBAL_LIST_INIT(wall_items, typecacheof(list(
/obj/machinery/power/apc,
/obj/machinery/alarm,
/obj/item/device/radio/intercom,
/obj/item/radio/intercom,
/obj/structure/extinguisher_cabinet,
/obj/structure/reagent_dispensers/peppertank,
/obj/machinery/status_display,
+1 -1
View File
@@ -48,7 +48,7 @@
return 1
/mob/living/carbon/brain/can_use_rig()
return istype(loc, /obj/item/device/mmi)
return istype(loc, /obj/item/mmi)
/mob/living/silicon/ai/can_use_rig()
return carded
+1 -1
View File
@@ -58,7 +58,7 @@ SUBSYSTEM_DEF(arrivals)
return 1
if(istype(A,/obj/machinery/nuclearbomb))
return 1
if(istype(A,/obj/item/device/radio/beacon))
if(istype(A,/obj/item/radio/beacon))
return 1
if(istype(A,/obj/item/phylactery))
return 1
+1 -1
View File
@@ -473,7 +473,7 @@ SUBSYSTEM_DEF(cargo)
return 1
if(istype(A, /obj/machinery/nuclearbomb))
return 1
if(istype(A, /obj/item/device/radio/beacon))
if(istype(A, /obj/item/radio/beacon))
return 1
for(var/i=1, i<=A.contents.len, i++)
+4 -4
View File
@@ -49,7 +49,7 @@ SUBSYSTEM_DEF(pai)
to_chat(usr, SPAN_WARNING("Please set your pAI name."))
return
candidate.ready = TRUE
for(var/obj/item/device/paicard/p in all_pai_devices)
for(var/obj/item/paicard/p in all_pai_devices)
if(p.looking_for_personality)
p.alertUpdate()
ui.close()
@@ -81,13 +81,13 @@ SUBSYSTEM_DEF(pai)
/datum/controller/subsystem/pai/Topic(href, list/href_list)
if(href_list["download"])
var/datum/paiCandidate/candidate = locate(href_list["candidate"])
var/obj/item/device/paicard/card = locate(href_list["device"])
var/obj/item/paicard/card = locate(href_list["device"])
if (!(candidate in pai_candidates))
return
if(card.pai)
return
if(istype(card,/obj/item/device/paicard) && istype(candidate,/datum/paiCandidate))
if(istype(card,/obj/item/paicard) && istype(candidate,/datum/paiCandidate))
var/mob/living/silicon/pai/pai = new(card)
if(!candidate.name)
pai.name = pick(GLOB.ninja_names)
@@ -175,7 +175,7 @@ SUBSYSTEM_DEF(pai)
return data
/datum/controller/subsystem/pai/proc/findPAI(obj/item/device/paicard/p, mob/user)
/datum/controller/subsystem/pai/proc/findPAI(obj/item/paicard/p, mob/user)
requestRecruits(user)
var/list/available = list()
for(var/datum/paiCandidate/c in SSpai.pai_candidates)
@@ -40,38 +40,38 @@ PROCESSING_SUBSYSTEM_DEF(electronics)
// Now for non-circuit things.
printer_recipe_list["Assemblies"] = list(
new /obj/item/device/electronic_assembly/default,
new /obj/item/device/electronic_assembly/calc,
new /obj/item/device/electronic_assembly/clam,
new /obj/item/device/electronic_assembly/simple,
new /obj/item/device/electronic_assembly/hook,
new /obj/item/device/electronic_assembly/pda,
new /obj/item/device/electronic_assembly/tiny/default,
new /obj/item/device/electronic_assembly/tiny/cylinder,
new /obj/item/device/electronic_assembly/tiny/scanner,
new /obj/item/device/electronic_assembly/tiny/hook,
new /obj/item/device/electronic_assembly/tiny/box,
new /obj/item/device/electronic_assembly/medium/default,
new /obj/item/device/electronic_assembly/medium/box,
new /obj/item/device/electronic_assembly/medium/clam,
new /obj/item/device/electronic_assembly/medium/medical,
new /obj/item/device/electronic_assembly/medium/gun,
new /obj/item/device/electronic_assembly/medium/radio,
new /obj/item/device/electronic_assembly/large/default,
new /obj/item/device/electronic_assembly/large/scope,
new /obj/item/device/electronic_assembly/large/terminal,
new /obj/item/device/electronic_assembly/large/arm,
new /obj/item/device/electronic_assembly/large/tall,
new /obj/item/device/electronic_assembly/large/industrial,
new /obj/item/device/electronic_assembly/drone/default,
new /obj/item/device/electronic_assembly/drone/arms,
new /obj/item/device/electronic_assembly/drone/medbot,
new /obj/item/device/electronic_assembly/drone/genbot,
new /obj/item/device/electronic_assembly/drone/android,
new /obj/item/device/electronic_assembly/wallmount/tiny,
new /obj/item/device/electronic_assembly/wallmount/light,
new /obj/item/device/electronic_assembly/wallmount,
new /obj/item/device/electronic_assembly/wallmount/heavy,
new /obj/item/electronic_assembly/default,
new /obj/item/electronic_assembly/calc,
new /obj/item/electronic_assembly/clam,
new /obj/item/electronic_assembly/simple,
new /obj/item/electronic_assembly/hook,
new /obj/item/electronic_assembly/pda,
new /obj/item/electronic_assembly/tiny/default,
new /obj/item/electronic_assembly/tiny/cylinder,
new /obj/item/electronic_assembly/tiny/scanner,
new /obj/item/electronic_assembly/tiny/hook,
new /obj/item/electronic_assembly/tiny/box,
new /obj/item/electronic_assembly/medium/default,
new /obj/item/electronic_assembly/medium/box,
new /obj/item/electronic_assembly/medium/clam,
new /obj/item/electronic_assembly/medium/medical,
new /obj/item/electronic_assembly/medium/gun,
new /obj/item/electronic_assembly/medium/radio,
new /obj/item/electronic_assembly/large/default,
new /obj/item/electronic_assembly/large/scope,
new /obj/item/electronic_assembly/large/terminal,
new /obj/item/electronic_assembly/large/arm,
new /obj/item/electronic_assembly/large/tall,
new /obj/item/electronic_assembly/large/industrial,
new /obj/item/electronic_assembly/drone/default,
new /obj/item/electronic_assembly/drone/arms,
new /obj/item/electronic_assembly/drone/medbot,
new /obj/item/electronic_assembly/drone/genbot,
new /obj/item/electronic_assembly/drone/android,
new /obj/item/electronic_assembly/wallmount/tiny,
new /obj/item/electronic_assembly/wallmount/light,
new /obj/item/electronic_assembly/wallmount,
new /obj/item/electronic_assembly/wallmount/heavy,
new /obj/item/implant/integrated_circuit,
new /obj/item/clothing/under/circuitry,
new /obj/item/clothing/gloves/circuitry,
@@ -83,9 +83,9 @@ PROCESSING_SUBSYSTEM_DEF(electronics)
)
printer_recipe_list["Tools"] = list(
new /obj/item/device/integrated_electronics/wirer,
new /obj/item/device/integrated_electronics/debugger,
new /obj/item/device/integrated_electronics/detailer
new /obj/item/integrated_electronics/wirer,
new /obj/item/integrated_electronics/debugger,
new /obj/item/integrated_electronics/detailer
)
for(var/category in printer_recipe_list)
+3 -3
View File
@@ -238,10 +238,10 @@ SUBSYSTEM_DEF(radio)
LAZYREPLACEKEY(ALL_RADIO_CHANNELS, old_channel, new_channel)
reverseradiochannels["[freq]"] = new_channel
for(var/obj/item/device/radio/R in RF.devices[RADIO_CHAT])
var/obj/item/device/radio/headset/H = R
for(var/obj/item/radio/R in RF.devices[RADIO_CHAT])
var/obj/item/radio/headset/H = R
if(istype(H))
for(var/obj/item/device/encryptionkey/EK in list(H.keyslot1, H.keyslot2))
for(var/obj/item/encryptionkey/EK in list(H.keyslot1, H.keyslot2))
if(old_channel in EK.channels)
LAZYREPLACEKEY(EK.channels, old_channel, new_channel)
@@ -152,8 +152,8 @@ SUBSYSTEM_DEF(virtualreality)
var/mob/living/simple_animal/spiderbot/SB = target
SB.internal_id.access = original_id.access
// Update radio
var/obj/item/device/encryptionkey/Key = spider.radio.keyslot
var/obj/item/device/radio/Radio = M.get_radio()
var/obj/item/encryptionkey/Key = spider.radio.keyslot
var/obj/item/radio/Radio = M.get_radio()
if(Key && Radio)
Key.channels = Radio.channels
spider.radio.recalculateChannels()
@@ -8,7 +8,7 @@
callback_get_interact_window = interact_window
on_topic_interaction = new_on_topic
/datum/component/multitool/proc/interact(var/obj/item/device/multitool/M, var/mob/user)
/datum/component/multitool/proc/interact(var/obj/item/multitool/M, var/mob/user)
if(CanUseTopic(user) != STATUS_INTERACTIVE)
return
@@ -24,7 +24,7 @@
/datum/component/multitool/proc/close_window(var/mob/user)
user << browse(null, "window=multitool")
/datum/component/multitool/proc/buffer(var/obj/item/device/multitool/multitool)
/datum/component/multitool/proc/buffer(var/obj/item/multitool/multitool)
. += "<b>Buffer Memory:</b><br>"
var/buffer_name = multitool.get_buffer_name()
if(buffer_name)
@@ -49,7 +49,7 @@
return 1
var/mob/user = usr
var/obj/item/device/multitool/M = user.get_multitool()
var/obj/item/multitool/M = user.get_multitool()
if(href_list["send"])
var/atom/buffer = locate(href_list["send"])
. = send_buffer(M, buffer, user)
@@ -69,12 +69,12 @@
/datum/component/multitool/proc/on_topic(href, href_list, user)
return MT_NOACTION
/datum/component/multitool/proc/send_buffer(var/obj/item/device/multitool/M, var/atom/buffer, var/mob/user)
/datum/component/multitool/proc/send_buffer(var/obj/item/multitool/M, var/atom/buffer, var/mob/user)
if(M.get_buffer() == buffer && buffer)
receive_buffer(M, buffer, user)
else if(!buffer)
to_chat(user, SPAN_WARNING("Unable to acquire data from the buffered object. Purging from memory."))
return MT_REFRESH
/datum/component/multitool/proc/receive_buffer(var/obj/item/device/multitool/M, var/atom/buffer, var/mob/user)
/datum/component/multitool/proc/receive_buffer(var/obj/item/multitool/M, var/atom/buffer, var/mob/user)
return
+2 -2
View File
@@ -433,7 +433,7 @@
memory = null//Remove any memory they may have had.
if("crystals")
if (usr.client.holder.rights & R_FUN)
var/obj/item/device/uplink/hidden/suplink = find_syndicate_uplink()
var/obj/item/uplink/hidden/suplink = find_syndicate_uplink()
var/crystals
if (suplink)
crystals = suplink.telecrystals + suplink.bluecrystals
@@ -470,7 +470,7 @@
return null
/datum/mind/proc/take_uplink()
var/obj/item/device/uplink/hidden/H = find_syndicate_uplink()
var/obj/item/uplink/hidden/H = find_syndicate_uplink()
if(H)
qdel(H)
+8 -8
View File
@@ -14,7 +14,7 @@
back = /obj/item/storage/backpack/satchel/sec
belt = /obj/item/storage/belt/military
id = /obj/item/card/id/distress/ap_eridani
l_ear = /obj/item/device/radio/headset/distress
l_ear = /obj/item/radio/headset/distress
l_pocket = /obj/item/grenade/chem_grenade/teargas
r_pocket = /obj/item/tank/emergency_oxygen/double
@@ -29,10 +29,10 @@
belt_contents = list(
/obj/item/ammo_magazine/c45m/auto = 3,
/obj/item/device/flash = 1,
/obj/item/flash = 1,
/obj/item/handcuffs/ziptie = 1,
/obj/item/melee/baton/stunrod = 1,
/obj/item/device/flashlight/maglight = 1,
/obj/item/flashlight/maglight = 1,
/obj/item/shield/riot/tact = 1,
/obj/item/grenade/flashbang = 1
)
@@ -74,7 +74,7 @@
belt_contents = list(
/obj/item/ammo_magazine/c45m/auto = 3,
/obj/item/device/flash = 1,
/obj/item/flash = 1,
/obj/item/handcuffs/ziptie = 1,
/obj/item/melee/baton/stunrod = 1,
/obj/item/grenade/flashbang = 1,
@@ -97,8 +97,8 @@
back = /obj/item/storage/backpack/satchel/med
accessory = /obj/item/clothing/accessory/holster/thigh
accessory_contents = list(/obj/item/gun/energy/disruptorpistol/magnum = 1)
r_ear = /obj/item/device/flashlight/pen
l_pocket = /obj/item/device/healthanalyzer
r_ear = /obj/item/flashlight/pen
l_pocket = /obj/item/healthanalyzer
r_pocket = /obj/item/melee/telebaton
l_hand = /obj/item/clothing/head/helmet/space/void/medical
r_hand = /obj/item/clothing/suit/space/void/medical
@@ -108,7 +108,7 @@
/obj/item/storage/box/survival = 1,
/obj/item/storage/firstaid/adv = 1,
/obj/item/storage/firstaid/surgery = 1,
/obj/item/device/advanced_healthanalyzer = 1,
/obj/item/advanced_healthanalyzer = 1,
/obj/item/clothing/accessory/storage/pouches/black = 1,
/obj/item/reagent_containers/glass/bottle/thetamycin = 1,
/obj/item/surgery/scalpel/manager = 1,
@@ -141,7 +141,7 @@
belt = /obj/item/storage/belt/medical/paramedic/combat
accessory = /obj/item/clothing/accessory/holster/thigh
accessory_contents = list(/obj/item/gun/energy/disruptorpistol/magnum = 1)
l_pocket = /obj/item/device/healthanalyzer
l_pocket = /obj/item/healthanalyzer
r_pocket = /obj/item/crowbar
l_hand = /obj/item/storage/firstaid/adv
+2 -2
View File
@@ -8,7 +8,7 @@
shoes = /obj/item/clothing/shoes/jackboots
id = /obj/item/card/id/distress/legion/tcaf
accessory = /obj/item/clothing/accessory/holster/hip
l_ear = /obj/item/device/radio/headset/legion
l_ear = /obj/item/radio/headset/legion
r_pocket = /obj/item/crowbar/red
l_pocket = /obj/item/tank/emergency_oxygen/double
back = /obj/item/storage/backpack/tcaf
@@ -84,7 +84,7 @@
/obj/item/storage/firstaid/combat = 1,
/obj/item/storage/firstaid/adv = 1,
/obj/item/handcuffs/ziptie = 1,
/obj/item/device/healthanalyzer = 1,
/obj/item/healthanalyzer = 1,
/obj/item/stack/medical/advanced/bruise_pack = 1,
/obj/item/stack/medical/advanced/ointment = 1,
/obj/item/melee/energy/sword/knife = 1,
+5 -5
View File
@@ -3,7 +3,7 @@
uniform = /obj/item/clothing/under/tactical
shoes = /obj/item/clothing/shoes/magboots
gloves = /obj/item/clothing/gloves/combat
l_ear = /obj/item/device/radio/headset/distress
l_ear = /obj/item/radio/headset/distress
l_pocket = /obj/item/tank/emergency_oxygen/double
r_pocket = /obj/item/crowbar/red
id = /obj/item/card/id/ert
@@ -38,7 +38,7 @@
/obj/item/ammo_magazine/c45m = 3,
/obj/item/storage/firstaid/adv = 1,
/obj/item/handcuffs/ziptie = 1,
/obj/item/device/healthanalyzer = 1,
/obj/item/healthanalyzer = 1,
/obj/item/stack/medical/advanced/bruise_pack = 1,
/obj/item/stack/medical/advanced/ointment = 1,
/obj/item/material/knife/tacknife = 1
@@ -99,7 +99,7 @@
back = /obj/item/tank/jetpack/carbondioxide
l_pocket = /obj/item/tank/emergency_oxygen/double
r_pocket = /obj/item/crowbar/red
l_ear = /obj/item/device/radio/headset/distress
l_ear = /obj/item/radio/headset/distress
gloves = /obj/item/clothing/gloves/swat/ert
mask = /obj/item/clothing/mask/gas/tactical
suit_store = /obj/item/gun/projectile/automatic/rifle/konyang/k556
@@ -122,7 +122,7 @@
/obj/outfit/admin/ert/konyang/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE)
. = ..()
if(H.isSynthetic())
H.equip_to_slot_or_del(new /obj/item/device/suit_cooling_unit(H), slot_back)
H.equip_to_slot_or_del(new /obj/item/suit_cooling_unit(H), slot_back)
/obj/outfit/admin/ert/konyang/medic
name = "KASF Medic"
@@ -147,7 +147,7 @@
/obj/item/ammo_magazine/mc9mm = 2,
/obj/item/storage/firstaid/adv = 1,
/obj/item/handcuffs/ziptie = 1,
/obj/item/device/healthanalyzer = 1,
/obj/item/healthanalyzer = 1,
/obj/item/stack/medical/advanced/bruise_pack = 1,
/obj/item/stack/medical/advanced/ointment = 1,
/obj/item/melee/energy/sword/knife/sol = 1
+2 -2
View File
@@ -7,7 +7,7 @@
shoes = null
gloves = null
mask = /obj/item/clothing/mask/gas/swat
l_ear = /obj/item/device/radio/headset/ert
l_ear = /obj/item/radio/headset/ert
glasses = /obj/item/clothing/glasses/sunglasses/sechud/tactical
id = /obj/item/card/id/asset_protection
l_pocket = /obj/item/plastique
@@ -31,7 +31,7 @@
name = "Asset Protection Lead"
l_pocket = /obj/item/pinpointer
r_hand = /obj/item/device/orbital_dropper/icarus_drones
r_hand = /obj/item/orbital_dropper/icarus_drones
/obj/outfit/admin/deathsquad/get_id_access()
return get_all_accesses()
+2 -2
View File
@@ -11,7 +11,7 @@
l_pocket = /obj/item/crowbar/red
suit_accessory = /obj/item/clothing/accessory/dominia
id = /obj/item/card/id/imperial_fleet
l_ear = /obj/item/device/radio/headset/distress
l_ear = /obj/item/radio/headset/distress
mask = /obj/item/clothing/mask/gas
accessory = /obj/item/clothing/accessory/holster/hip
accessory_contents = list(
@@ -50,7 +50,7 @@
/obj/item/ammo_magazine/c45m/dominia = 1,
/obj/item/ammo_magazine/submachinemag = 2,
/obj/item/storage/firstaid/adv = 1,
/obj/item/device/healthanalyzer = 1,
/obj/item/healthanalyzer = 1,
/obj/item/stack/medical/advanced/bruise_pack = 1,
/obj/item/stack/medical/advanced/ointment = 1,
/obj/item/material/knife/bayonet= 1,
+3 -3
View File
@@ -6,7 +6,7 @@
head = /obj/item/clothing/head/helmet/space/void/einstein
back = /obj/item/tank/jetpack/carbondioxide
belt = /obj/item/storage/belt/military
l_ear = /obj/item/device/radio/headset/distress
l_ear = /obj/item/radio/headset/distress
id = /obj/item/card/id/zeng_hu
mask = /obj/item/clothing/mask/gas/tactical
glasses = /obj/item/clothing/glasses/night
@@ -19,7 +19,7 @@
)
belt_contents = list(
/obj/item/shield/energy = 1,
/obj/item/device/flash = 1,
/obj/item/flash = 1,
/obj/item/handcuffs/ziptie = 2,
/obj/item/melee/baton/loaded = 1,
/obj/item/grenade/flashbang = 2,
@@ -41,7 +41,7 @@
/obj/item/ammo_magazine/c45m = 2,
/obj/item/storage/firstaid/adv = 1,
/obj/item/handcuffs/ziptie = 1,
/obj/item/device/healthanalyzer = 1,
/obj/item/healthanalyzer = 1,
/obj/item/stack/medical/advanced/bruise_pack = 1,
/obj/item/stack/medical/advanced/ointment = 1,
/obj/item/melee/baton/loaded = 1,
+3 -3
View File
@@ -4,7 +4,7 @@
uniform = /obj/item/clothing/under/rank/elyran_fatigues
shoes = /obj/item/clothing/shoes/magboots
gloves = /obj/item/clothing/gloves/combat
l_ear = /obj/item/device/radio/headset/distress
l_ear = /obj/item/radio/headset/distress
l_pocket = /obj/item/tank/emergency_oxygen/double
r_pocket = /obj/item/crowbar/red
id = /obj/item/card/id/ert
@@ -75,7 +75,7 @@
/obj/item/ammo_magazine/c45m = 3,
/obj/item/storage/firstaid/adv = 1,
/obj/item/handcuffs/ziptie = 1,
/obj/item/device/healthanalyzer = 1,
/obj/item/healthanalyzer = 1,
/obj/item/stack/medical/advanced/bruise_pack = 1,
/obj/item/stack/medical/advanced/ointment = 1,
/obj/item/melee/energy/sword = 1
@@ -114,4 +114,4 @@
l_hand = /obj/item/gun/projectile/plasma
accessory = /obj/item/clothing/accessory/storage/black_vest
accessory_contents = list(/obj/item/device/flash = 1, /obj/item/handcuffs = 2, /obj/item/gun/projectile/pistol = 1)
accessory_contents = list(/obj/item/flash = 1, /obj/item/handcuffs = 2, /obj/item/gun/projectile/pistol = 1)
+4 -4
View File
@@ -12,7 +12,7 @@
id = /obj/item/card/id/distress/fsf
l_pocket = /obj/item/tank/emergency_oxygen/double
l_ear = /obj/item/device/radio/headset/distress
l_ear = /obj/item/radio/headset/distress
backpack_contents = list(
/obj/item/melee/energy/sword/knife/sol = 1
@@ -48,7 +48,7 @@
/obj/item/storage/box/shells/buckshot = 1,
/obj/item/storage/firstaid/adv = 1,
/obj/item/handcuffs/ziptie = 1,
/obj/item/device/healthanalyzer = 1,
/obj/item/healthanalyzer = 1,
/obj/item/stack/medical/advanced/bruise_pack = 1,
/obj/item/stack/medical/advanced/ointment = 1,
/obj/item/melee/energy/sword/knife/sol = 1
@@ -121,10 +121,10 @@
l_pocket = null
belt_contents = null
l_ear = /obj/item/device/radio/headset/distress
l_ear = /obj/item/radio/headset/distress
backpack_contents = list(
/obj/item/melee/energy/sword/knife/sol = 1,
/obj/item/grenade/smokebomb = 2,
/obj/item/device/binoculars = 1
/obj/item/binoculars = 1
)
+2 -2
View File
@@ -9,7 +9,7 @@
suit = /obj/item/clothing/suit/space/void/hephaestus
head = /obj/item/clothing/head/helmet/space/void/hephaestus
belt = /obj/item/storage/belt/military
l_ear = /obj/item/device/radio/headset/distress
l_ear = /obj/item/radio/headset/distress
id = /obj/item/card/id/hephaestus
mask = /obj/item/clothing/mask/gas/tactical
glasses = /obj/item/clothing/glasses/night
@@ -57,7 +57,7 @@
/obj/item/ammo_magazine/c45m = 3,
/obj/item/storage/firstaid/adv = 1,
/obj/item/handcuffs/ziptie = 1,
/obj/item/device/healthanalyzer = 1,
/obj/item/healthanalyzer = 1,
/obj/item/stack/medical/advanced/bruise_pack = 1,
/obj/item/stack/medical/advanced/ointment = 1,
/obj/item/melee/baton/loaded = 1,
+6 -6
View File
@@ -14,7 +14,7 @@
id = /obj/item/card/id/distress/iac
accessory_contents = list(/obj/item/stack/medical/advanced/bruise_pack = 1, /obj/item/stack/medical/advanced/ointment = 1, /obj/item/reagent_containers/glass/bottle/mortaphenyl = 1)
l_ear = /obj/item/device/radio/headset/distress
l_ear = /obj/item/radio/headset/distress
backpack_contents = list(
/obj/item/storage/box/survival = 1,
@@ -22,8 +22,8 @@
/obj/item/storage/firstaid/surgery = 1,
/obj/item/storage/box/gloves = 1,
/obj/item/storage/box/syringes = 1,
/obj/item/device/flashlight/pen = 1,
/obj/item/device/healthanalyzer = 1
/obj/item/flashlight/pen = 1,
/obj/item/healthanalyzer = 1
)
belt_contents = list(
@@ -79,10 +79,10 @@
belt_contents = list(
/obj/item/ammo_magazine/c45m/auto = 3,
/obj/item/device/flash = 1,
/obj/item/flash = 1,
/obj/item/handcuffs/ziptie = 2,
/obj/item/melee/baton/loaded = 1,
/obj/item/device/flashlight/flare = 1
/obj/item/flashlight/flare = 1
)
/obj/outfit/admin/ert/iac/paramedic
@@ -95,7 +95,7 @@
backpack_contents = list(
/obj/item/storage/box/survival = 1,
/obj/item/device/healthanalyzer = 1,
/obj/item/healthanalyzer = 1,
/obj/item/storage/firstaid/adv = 2,
/obj/item/storage/firstaid/o2 = 1,
/obj/item/storage/box/syringes = 1,
+2 -2
View File
@@ -10,7 +10,7 @@
accessory_contents = list(/obj/item/gun/energy/pistol/hegemony = 1)
gloves = /obj/item/clothing/gloves/black/unathi
back = /obj/item/recharger_backpack/high
l_ear = /obj/item/device/radio/headset/distress
l_ear = /obj/item/radio/headset/distress
l_pocket = /obj/item/tank/emergency_oxygen/double
belt_contents = list(
/obj/item/melee/energy/sword/hegemony = 1,
@@ -48,7 +48,7 @@
/obj/item/shield/energy/hegemony = 1,
/obj/item/crowbar = 1,
/obj/item/storage/firstaid/adv = 1,
/obj/item/device/healthanalyzer = 1,
/obj/item/healthanalyzer = 1,
/obj/item/handcuffs/ziptie = 2
)
gloves = /obj/item/clothing/gloves/latex/nitrile/unathi
+3 -3
View File
@@ -13,10 +13,10 @@
id = /obj/item/card/id/distress/kataphract
back = /obj/item/storage/backpack/satchel/hegemony
l_ear = /obj/item/device/radio/headset/distress
l_ear = /obj/item/radio/headset/distress
l_hand = /obj/item/martial_manual/swordsmanship
r_pocket = /obj/item/device/radio
r_pocket = /obj/item/radio
belt_contents = null
@@ -102,7 +102,7 @@
/obj/item/storage/box/unique/donkpockets = 1,
/obj/item/crowbar = 1,
/obj/item/storage/firstaid/adv = 1,
/obj/item/device/healthanalyzer = 1,
/obj/item/healthanalyzer = 1,
/obj/item/reagent_containers/glass/bottle/thetamycin = 1,
/obj/item/reagent_containers/hypospray/autoinjector/coagzolug = 1
)
+7 -7
View File
@@ -5,7 +5,7 @@
shoes = /obj/item/clothing/shoes/magboots
gloves = /obj/item/clothing/gloves/black/tajara
uniform = /obj/item/clothing/under/tajaran/cosmonaut
l_ear = /obj/item/device/radio/headset/distress
l_ear = /obj/item/radio/headset/distress
head = /obj/item/clothing/head/helmet/space/void/pra
suit = /obj/item/clothing/suit/space/void/pra
suit_store = /obj/item/tank/oxygen/red
@@ -41,7 +41,7 @@
back = /obj/item/storage/backpack/satchel/leather
backpack_contents = list(
/obj/item/device/versebook/pra = 1,
/obj/item/versebook/pra = 1,
/obj/item/storage/box/hadii_card = 1,
/obj/item/gun/projectile/deagle/adhomai = 1,
/obj/item/clothing/accessory/holster/hip/brown = 1,
@@ -49,7 +49,7 @@
/obj/item/clothing/head/tajaran/cosmonaut_commissar = 1
)
l_pocket = /obj/item/device/megaphone
l_pocket = /obj/item/megaphone
accessory = /obj/item/clothing/accessory/hadii_pin
l_hand = /obj/item/martial_manual/tajara
@@ -70,10 +70,10 @@
backpack_contents = list(
/obj/item/gun/projectile/automatic/tommygun = 1,
/obj/item/clothing/accessory/holster/hip/brown = 1,
/obj/item/device/binoculars = 1,
/obj/item/binoculars = 1,
/obj/item/ammo_magazine/submachinedrum = 1)
l_pocket = /obj/item/device/megaphone
l_pocket = /obj/item/megaphone
l_hand = /obj/item/martial_manual/tajara
/obj/outfit/admin/ert/pra_cosmonaut/tesla
@@ -117,7 +117,7 @@
/obj/item/ammo_magazine/c45uzi = 2,
/obj/item/storage/firstaid/combat = 1,
/obj/item/storage/firstaid/adv = 1,
/obj/item/device/flashlight/pen = 1,
/obj/item/flashlight/pen = 1,
/obj/item/gun/projectile/pistol/adhomai = 1
)
@@ -129,7 +129,7 @@
/obj/item/reagent_containers/glass/bottle/dexalin_plus = 1,
/obj/item/reagent_containers/glass/bottle/bicaridine = 1,
/obj/item/reagent_containers/glass/bottle/dermaline = 1,
/obj/item/device/healthanalyzer = 1
/obj/item/healthanalyzer = 1
)
l_hand = /obj/item/martial_manual/tajara
+3 -3
View File
@@ -14,7 +14,7 @@
glasses = /obj/item/clothing/glasses/sunglasses/aviator
l_pocket = /obj/item/tank/emergency_oxygen/double
l_ear = /obj/item/device/radio/headset/distress
l_ear = /obj/item/radio/headset/distress
backpack_contents = list(
/obj/item/storage/box/survival = 1,
@@ -51,7 +51,7 @@
/obj/item/ammo_magazine/c45m = 1,
/obj/item/storage/firstaid/combat = 1,
/obj/item/storage/firstaid/adv = 1,
/obj/item/device/healthanalyzer = 1,
/obj/item/healthanalyzer = 1,
/obj/item/reagent_containers/hypospray/autoinjector/coagzolug = 1
)
@@ -94,7 +94,7 @@
/obj/item/ammo_magazine/c45m = 2,
/obj/item/handcuffs/ziptie = 1,
/obj/item/shield/energy = 1,
/obj/item/device/flashlight/flare = 1,
/obj/item/flashlight/flare = 1,
)
/obj/outfit/admin/ert/mercenary/leader
+1 -1
View File
@@ -11,7 +11,7 @@
id = /obj/item/card/id/ert
back = /obj/item/rig/ert/security
l_ear = /obj/item/device/radio/headset/ert
l_ear = /obj/item/radio/headset/ert
belt_contents = list(
/obj/item/handcuffs = 2,
+3 -3
View File
@@ -8,7 +8,7 @@
head = /obj/item/clothing/head/helmet/space/void/kala
back = /obj/item/storage/backpack/kala
suit_store = /obj/item/gun/energy/gun/qukala
l_ear = /obj/item/device/radio/headset/distress
l_ear = /obj/item/radio/headset/distress
l_pocket = /obj/item/tank/emergency_oxygen/double
id = /obj/item/card/id
backpack_contents = list(
@@ -53,7 +53,7 @@
B.replaced(H, affectedB)
H.update_body()
if(H.is_diona())
H.equip_or_collect(new /obj/item/device/uv_light(src), slot_in_backpack)
H.equip_or_collect(new /obj/item/uv_light(src), slot_in_backpack)
if(H?.shoes)
var/obj/item/clothing/shoes/magboots/advance/boots = new(H)
H.equip_to_slot_if_possible(boots, slot_shoes)
@@ -94,7 +94,7 @@
/obj/item/storage/firstaid/combat = 1,
/obj/item/storage/firstaid/adv = 1,
/obj/item/handcuffs/ziptie = 1,
/obj/item/device/healthanalyzer = 1,
/obj/item/healthanalyzer = 1,
/obj/item/stack/medical/advanced/bruise_pack = 1,
/obj/item/stack/medical/advanced/ointment = 1,
/obj/item/melee/telebaton/nlom = 1,
+1 -1
View File
@@ -8,7 +8,7 @@
id = /obj/item/card/id/ert/scc
back = /obj/item/rig/ert/scc/security
l_ear = /obj/item/device/radio/headset/ert
l_ear = /obj/item/radio/headset/ert
belt_contents = list(
/obj/item/handcuffs = 2,
+1 -1
View File
@@ -4,7 +4,7 @@
uniform = /obj/item/clothing/under/syndicate
belt = /obj/item/storage/belt/military/syndicate
mask = /obj/item/clothing/mask/gas/syndicate
l_ear = /obj/item/device/radio/headset/syndicate
l_ear = /obj/item/radio/headset/syndicate
glasses = /obj/item/clothing/glasses/thermal
id = /obj/item/card/id/syndicate/ert
l_pocket = /obj/item/ammo_magazine/c45m
+2 -2
View File
@@ -3,7 +3,7 @@
head = /obj/item/clothing/head/beret/legion/field
uniform = /obj/item/clothing/under/legion
l_ear = /obj/item/device/radio/headset/legion
l_ear = /obj/item/radio/headset/legion
shoes = /obj/item/clothing/shoes/combat
gloves = /obj/item/clothing/gloves/swat/ert
glasses = /obj/item/clothing/glasses/sunglasses/aviator
@@ -47,7 +47,7 @@
back = null
belt = /obj/item/storage/belt/security/tactical
accessory = /obj/item/clothing/accessory/storage/webbingharness/pouches/ert
accessory_contents = list(/obj/item/gun/energy/blaster/pilot_special = 1, /obj/item/device/binoculars = 1)
accessory_contents = list(/obj/item/gun/energy/blaster/pilot_special = 1, /obj/item/binoculars = 1)
backpack_contents = null
+4 -4
View File
@@ -8,7 +8,7 @@
mask = /obj/item/clothing/mask/gas/vaurca/tactical
glasses = /obj/item/clothing/glasses/sunglasses/blinders
id = /obj/item/card/id
l_ear = /obj/item/device/radio/headset/distress
l_ear = /obj/item/radio/headset/distress
accessory = /obj/item/clothing/accessory/holster/hip
accessory_contents = list(
/obj/item/gun/energy/vaurca/blaster = 1
@@ -61,7 +61,7 @@
/obj/item/storage/firstaid/combat = 1,
/obj/item/storage/firstaid/adv = 1,
/obj/item/handcuffs/ziptie = 1,
/obj/item/device/healthanalyzer = 1,
/obj/item/healthanalyzer = 1,
/obj/item/stack/medical/advanced/bruise_pack = 1,
/obj/item/stack/medical/advanced/ointment = 1,
/obj/item/melee/energy/vaurca = 1,
@@ -151,7 +151,7 @@
mask = /obj/item/clothing/mask/gas/vaurca/tactical
glasses = /obj/item/clothing/glasses/sunglasses/blinders
id = /obj/item/card/id
l_ear = /obj/item/device/radio/headset/distress
l_ear = /obj/item/radio/headset/distress
r_pocket = /obj/item/crowbar/red
accessory = /obj/item/clothing/accessory/holster/hip
r_hand = /obj/item/recharger_backpack/high //so they can charge the hegemony weapons
@@ -206,7 +206,7 @@
/obj/item/storage/firstaid/combat = 1,
/obj/item/storage/firstaid/adv = 1,
/obj/item/handcuffs/ziptie = 1,
/obj/item/device/healthanalyzer = 1,
/obj/item/healthanalyzer = 1,
/obj/item/stack/medical/advanced/bruise_pack = 1,
/obj/item/stack/medical/advanced/ointment = 1,
/obj/item/melee/energy/sword/hegemony = 1,
+2 -2
View File
@@ -6,7 +6,7 @@
suit = /obj/item/clothing/suit/space/void/zavodskoi
head = /obj/item/clothing/head/helmet/space/void/zavodskoi
belt = /obj/item/storage/belt/military
l_ear = /obj/item/device/radio/headset/distress
l_ear = /obj/item/radio/headset/distress
id = /obj/item/card/id/zavodskoi
mask = /obj/item/clothing/mask/gas/tactical
glasses = /obj/item/clothing/glasses/safety/goggles/goon/zavod
@@ -46,7 +46,7 @@
/obj/item/ammo_magazine/mc9mm = 2,
/obj/item/storage/firstaid/adv = 1,
/obj/item/handcuffs/ziptie = 1,
/obj/item/device/healthanalyzer = 1,
/obj/item/healthanalyzer = 1,
/obj/item/stack/medical/advanced/bruise_pack = 1,
/obj/item/stack/medical/advanced/ointment = 1,
/obj/item/melee/baton/loaded = 1,
+3 -3
View File
@@ -6,7 +6,7 @@
suit = /obj/item/clothing/suit/space/void/zenghu
head = /obj/item/clothing/head/helmet/space/void/zenghu
belt = /obj/item/storage/belt/military
l_ear = /obj/item/device/radio/headset/distress
l_ear = /obj/item/radio/headset/distress
id = /obj/item/card/id/zeng_hu
mask = /obj/item/clothing/mask/gas/tactical
glasses = /obj/item/clothing/glasses/night
@@ -19,7 +19,7 @@
)
belt_contents = list(
/obj/item/shield/energy = 1,
/obj/item/device/flash = 1,
/obj/item/flash = 1,
/obj/item/handcuffs/ziptie = 2,
/obj/item/melee/baton/loaded = 1,
/obj/item/grenade/flashbang = 2
@@ -39,7 +39,7 @@
/obj/item/storage/firstaid/combat = 1,
/obj/item/storage/firstaid/adv = 1,
/obj/item/handcuffs/ziptie = 1,
/obj/item/device/healthanalyzer = 1,
/obj/item/healthanalyzer = 1,
/obj/item/stack/medical/advanced/bruise_pack = 1,
/obj/item/stack/medical/advanced/ointment = 1,
/obj/item/melee/baton/loaded = 1,
+6 -6
View File
@@ -5,7 +5,7 @@
back = /obj/item/gun/energy/rifle/pulse
gloves = /obj/item/clothing/gloves/force/basic
belt = /obj/item/storage/belt/military
l_ear = /obj/item/device/radio/headset/ert
l_ear = /obj/item/radio/headset/ert
head = /obj/item/clothing/head/helmet/space/void/lancer
species_head = list(
@@ -28,7 +28,7 @@
/obj/item/grenade/frag = 1,
/obj/item/melee/energy/sword = 1,
/obj/item/shield/energy = 1,
/obj/item/device/flash = 1,
/obj/item/flash = 1,
/obj/item/handcuffs/ziptie = 2,
/obj/item/melee/baton/loaded = 1,
/obj/item/grenade/empgrenade = 1
@@ -61,7 +61,7 @@
accessory_contents = list(
/obj/item/plastique = 3,
/obj/item/grenade/frag = 1,
/obj/item/device/flash = 1
/obj/item/flash = 1
)
id_access = "Lance Engineer"
@@ -82,7 +82,7 @@
accessory = /obj/item/clothing/accessory/holster/thigh
accessory_contents = list(/obj/item/gun/energy/pulse/pistol = 1)
belt_contents = list(
/obj/item/device/healthanalyzer = 1,
/obj/item/healthanalyzer = 1,
/obj/item/reagent_containers/hypospray/combat = 1,
/obj/item/reagent_containers/syringe = 1,
/obj/item/personal_inhaler/combat = 1,
@@ -103,7 +103,7 @@
accessory_contents = list(/obj/item/gun/energy/pulse/pistol = 1)
backpack_contents = list(
/obj/item/device/flash = 1,
/obj/item/flash = 1,
/obj/item/clothing/gloves/yellow = 1
)
id_access = "Lance Operative"
@@ -117,7 +117,7 @@
uniform = /obj/item/clothing/under/rank/sol
shoes = /obj/item/clothing/shoes/magboots
gloves = /obj/item/clothing/gloves/combat
l_ear = /obj/item/device/radio/headset/syndicate
l_ear = /obj/item/radio/headset/syndicate
glasses = /obj/item/clothing/glasses/thermal
l_pocket = /obj/item/tank/emergency_oxygen/double
r_pocket = /obj/item/crowbar/red
@@ -52,7 +52,7 @@
/obj/item/storage/belt/military,
)
belt_contents = list(
/obj/item/device/flash = 1,
/obj/item/flash = 1,
/obj/item/handcuffs/ziptie = 1,
/obj/item/material/knife/tacknife = 1,
/obj/item/gun/projectile/pistol = 1,
@@ -29,7 +29,7 @@
)
belt_contents = list(
/obj/item/gun/custom_ka/frame01/prebuilt=1,
/obj/item/device/flashlight/lantern=1,
/obj/item/flashlight/lantern=1,
)
head = list(
/obj/item/clothing/head/hardhat,
+2 -2
View File
@@ -7,7 +7,7 @@
gloves = /obj/item/clothing/gloves/latex
mask = /obj/item/clothing/mask/surgical
head = /obj/item/clothing/head/welding
l_ear = /obj/item/device/radio/headset
l_ear = /obj/item/radio/headset
glasses = /obj/item/clothing/glasses/thermal/plain/monocle
l_pocket = /obj/item/material/knife
r_pocket = /obj/item/surgery/scalpel
@@ -27,7 +27,7 @@
suit = /obj/item/clothing/suit/wcoat
shoes = /obj/item/clothing/shoes/sneakers/black
gloves = /obj/item/clothing/gloves/black
l_ear = /obj/item/device/radio/headset
l_ear = /obj/item/radio/headset
glasses = /obj/item/clothing/glasses/sunglasses
l_pocket = /obj/item/melee/energy/sword
r_pocket = /obj/item/cloaking_device
@@ -6,7 +6,7 @@
gloves = /obj/item/clothing/gloves/combat
shoes = /obj/item/clothing/shoes/magboots
belt = /obj/item/storage/belt/military
l_ear = /obj/item/device/radio/headset/syndicate
l_ear = /obj/item/radio/headset/syndicate
suit_store = /obj/item/gun/energy/laser
suit = /obj/item/clothing/suit/space/void/hephaestus
head = /obj/item/clothing/head/helmet/space/void/hephaestus
@@ -21,7 +21,7 @@
belt_contents = list(
/obj/item/shield/energy = 1,
/obj/item/device/flash = 1,
/obj/item/flash = 1,
/obj/item/handcuffs/ziptie = 2,
/obj/item/melee/baton/loaded = 1,
/obj/item/grenade/flashbang = 2
@@ -49,7 +49,7 @@
gloves = /obj/item/clothing/gloves/combat
shoes = /obj/item/clothing/shoes/magboots
belt = /obj/item/storage/belt/military
l_ear = /obj/item/device/radio/headset/syndicate
l_ear = /obj/item/radio/headset/syndicate
suit_store = /obj/item/gun/energy/laser
suit = /obj/item/clothing/suit/space/void/zenghu
head = /obj/item/clothing/head/helmet/space/void/zenghu
@@ -64,7 +64,7 @@
belt_contents = list(
/obj/item/shield/energy = 1,
/obj/item/device/flash = 1,
/obj/item/flash = 1,
/obj/item/handcuffs/ziptie = 2,
/obj/item/melee/baton/loaded = 1,
/obj/item/grenade/flashbang = 2
@@ -87,7 +87,7 @@
gloves = /obj/item/clothing/gloves/combat
shoes = /obj/item/clothing/shoes/magboots
belt = /obj/item/storage/belt/military
l_ear = /obj/item/device/radio/headset/syndicate
l_ear = /obj/item/radio/headset/syndicate
suit_store = /obj/item/gun/projectile/automatic/wt550
suit = /obj/item/clothing/suit/space/void/zavodskoi
head = /obj/item/clothing/head/helmet/space/void/zavodskoi
@@ -102,7 +102,7 @@
belt_contents = list(
/obj/item/shield/energy = 1,
/obj/item/device/flash = 1,
/obj/item/flash = 1,
/obj/item/handcuffs/ziptie = 2,
/obj/item/melee/baton/loaded = 1,
/obj/item/grenade/flashbang = 2
@@ -139,7 +139,7 @@
shoes = null
gloves = null
mask = /obj/item/clothing/mask/gas/swat
l_ear = /obj/item/device/radio/headset/syndicate
l_ear = /obj/item/radio/headset/syndicate
glasses = /obj/item/clothing/glasses/sunglasses/sechud/tactical
id = /obj/item/card/id/syndicate
l_pocket = /obj/item/plastique
+31 -31
View File
@@ -5,7 +5,7 @@
back = /obj/item/storage/backpack/satchel/leather
gloves = /obj/item/clothing/gloves/white
shoes = /obj/item/clothing/shoes/laceup
l_ear = /obj/item/device/radio/headset/ert/ccia
l_ear = /obj/item/radio/headset/ert/ccia
glasses = /obj/item/clothing/glasses/sunglasses
id = /obj/item/card/id
@@ -23,17 +23,17 @@
name = "NanoTrasen Navy Officer"
uniform = /obj/item/clothing/under/rank/centcom_officer
l_ear = /obj/item/device/radio/headset/heads/captain
l_ear = /obj/item/radio/headset/heads/captain
head = /obj/item/clothing/head/beret/centcom/officer
l_pocket = /obj/item/device/orbital_dropper/icarus_drones
l_pocket = /obj/item/orbital_dropper/icarus_drones
/obj/outfit/admin/nt/captain
name = "NanoTrasen Navy Captain"
uniform = /obj/item/clothing/under/rank/centcom_captain
l_ear = /obj/item/device/radio/headset/heads/captain
l_ear = /obj/item/radio/headset/heads/captain
head = /obj/item/clothing/head/beret/centcom/captain
l_pocket = /obj/item/device/orbital_dropper/icarus_drones
l_pocket = /obj/item/orbital_dropper/icarus_drones
/obj/outfit/admin/nt/protection_detail
name = "ERT Protection Detail"
@@ -42,7 +42,7 @@
suit = /obj/item/clothing/suit/storage/vest/heavy/ert/peacekeeper
shoes = /obj/item/clothing/shoes/combat
gloves = /obj/item/clothing/gloves/swat/tactical
l_ear = /obj/item/device/radio/headset/ert
l_ear = /obj/item/radio/headset/ert
glasses = /obj/item/clothing/glasses/sunglasses/sechud
id = /obj/item/card/id/ccia
head = /obj/item/clothing/head/beret/centcom/civilprotection
@@ -71,8 +71,8 @@
var/obj/item/shield/riot/tact/shield = new(H)
var/obj/item/grenade/flashbang/flashbang = new(H)
var/obj/item/handcuffs/cuffs = new(H)
var/obj/item/device/flash/flash = new(H)
var/obj/item/device/flashlight/flare/flare = new(H)
var/obj/item/flash/flash = new(H)
var/obj/item/flashlight/flare/flare = new(H)
H.belt.contents += flare
H.belt.contents += flashbang
@@ -90,14 +90,14 @@
suit = /obj/item/clothing/suit/storage/vest/heavy/ert/commander
shoes = /obj/item/clothing/shoes/jackboots
gloves = /obj/item/clothing/gloves/white
l_ear = /obj/item/device/radio/headset/ert
l_ear = /obj/item/radio/headset/ert
glasses = /obj/item/clothing/glasses/sunglasses/sechud
head = /obj/item/clothing/head/beret/centcom/commander
backpack_contents = list(
/obj/item/storage/box/fancy/cigarettes/cigar = 1,
/obj/item/flame/lighter/zippo = 1,
/obj/item/device/orbital_dropper/icarus_drones = 1
/obj/item/orbital_dropper/icarus_drones = 1
)
implants = list(
@@ -112,17 +112,17 @@
uniform = /obj/item/clothing/under/rank/centcom_officer
shoes = /obj/item/clothing/shoes/laceup
gloves = /obj/item/clothing/gloves/white
l_ear = /obj/item/device/radio/headset/ert/ccia
l_ear = /obj/item/radio/headset/ert/ccia
glasses = /obj/item/clothing/glasses/sunglasses/sechud
head = /obj/item/clothing/head/beret/centcom/officer
l_pocket = /obj/item/reagent_containers/spray/pepper
r_pocket = /obj/item/device/taperecorder/cciaa
r_pocket = /obj/item/taperecorder/cciaa
l_hand = /obj/item/storage/lockbox/cciaa
pda = /obj/item/modular_computer/handheld/pda/command/cciaa
id = /obj/item/card/id/ccia
backpack_contents = list(
/obj/item/device/memorywiper = 1
/obj/item/memorywiper = 1
)
id_icon = "ccia"
@@ -134,7 +134,7 @@
uniform = /obj/item/clothing/under/suit_jacket/nt_skirtsuit
shoes = /obj/item/clothing/shoes/flats
wrist = /obj/item/clothing/wrists/watch/gold
l_ear = /obj/item/device/radio/headset/ert/ccia
l_ear = /obj/item/radio/headset/ert/ccia
id = /obj/item/card/id/ccia
l_pocket = /obj/item/reagent_containers/spray/pepper
@@ -145,7 +145,7 @@
suit = /obj/item/clothing/suit/storage/vest/heavy/ert/peacekeeper
shoes = /obj/item/clothing/shoes/combat
gloves = /obj/item/clothing/gloves/swat/tactical
l_ear = /obj/item/device/radio/headset/ert
l_ear = /obj/item/radio/headset/ert
glasses = /obj/item/clothing/glasses/sunglasses/sechud/tactical
mask = /obj/item/clothing/mask/gas/tactical
head = /obj/item/clothing/head/helmet/swat/peacekeeper
@@ -161,7 +161,7 @@
/obj/item/reagent_containers/spray/pepper = 1,
/obj/item/melee/baton/loaded = 1,
/obj/item/grenade/chem_grenade/gas = 1,
/obj/item/device/flash = 1,
/obj/item/flash = 1,
/obj/item/ammo_magazine/c45m/auto = 2
)
@@ -189,7 +189,7 @@
suit = /obj/item/clothing/suit/armor/swat/officer
shoes = /obj/item/clothing/shoes/combat
gloves = /obj/item/clothing/gloves/combat
l_ear = /obj/item/device/radio/headset/ert
l_ear = /obj/item/radio/headset/ert
glasses = /obj/item/clothing/glasses/eyepatch/hud/thermal
mask = /obj/item/clothing/mask/smokable/cigarette/cigar/havana
head = /obj/item/clothing/head/helmet/space/deathsquad/beret
@@ -210,7 +210,7 @@
gloves = /obj/item/clothing/gloves/black
l_pocket = /obj/item/reagent_containers/spray/pepper
r_pocket = /obj/item/device/taperecorder/cciaa
r_pocket = /obj/item/taperecorder/cciaa
l_hand = /obj/item/storage/lockbox/cciaa/bssb
id = /obj/item/card/id/ccia/bssb
@@ -219,7 +219,7 @@
backpack_contents = list(
/obj/item/storage/box/survival/engineer = 1,
/obj/item/device/flash = 1,
/obj/item/flash = 1,
/obj/item/handcuffs = 1
)
@@ -248,7 +248,7 @@
r_pocket = null
l_hand = null
belt_contents = list(
/obj/item/device/flash = 1,
/obj/item/flash = 1,
/obj/item/melee/baton/loaded = 1,
/obj/item/handcuffs = 2,
/obj/item/ammo_magazine/c45m = 2
@@ -276,8 +276,8 @@
shoes = /obj/item/clothing/shoes/sneakers/black
mask = /obj/item/clothing/mask/surgical
l_hand = /obj/item/storage/firstaid/adv
headset = /obj/item/device/radio/headset/headset_med
bowman = /obj/item/device/radio/headset/headset_med/alt
headset = /obj/item/radio/headset/headset_med
bowman = /obj/item/radio/headset/headset_med/alt
glasses = /obj/item/clothing/glasses/hud/health
gloves = /obj/item/clothing/gloves/white
@@ -292,7 +292,7 @@
/obj/item/storage/firstaid/surgery = 1,
/obj/item/storage/box/gloves = 1,
/obj/item/storage/box/syringes = 1,
/obj/item/device/flashlight/pen = 1
/obj/item/flashlight/pen = 1
)
belt_contents = list(
@@ -313,8 +313,8 @@
uniform = /obj/item/clothing/under/rank/medical/pharmacist
suit = /obj/item/clothing/suit/storage/toggle/labcoat/nt
shoes = /obj/item/clothing/shoes/sneakers/medsci
headset = /obj/item/device/radio/headset/headset_med
bowman = /obj/item/device/radio/headset/headset_med/alt
headset = /obj/item/radio/headset/headset_med
bowman = /obj/item/radio/headset/headset_med/alt
glasses = /obj/item/clothing/glasses/hud/health
backpack = /obj/item/storage/backpack/pharmacy
@@ -329,8 +329,8 @@
uniform = /obj/item/clothing/under/rank/bartender
shoes = /obj/item/clothing/shoes/laceup
headset = /obj/item/device/radio/headset/headset_service
bowman = /obj/item/device/radio/headset/headset_service/alt
headset = /obj/item/radio/headset/headset_service
bowman = /obj/item/radio/headset/headset_service/alt
id_access = "Service"
@@ -341,8 +341,8 @@
suit = /obj/item/clothing/suit/chef_jacket
head = /obj/item/clothing/head/chefhat
shoes = /obj/item/clothing/shoes/laceup
headset = /obj/item/device/radio/headset/headset_service
bowman = /obj/item/device/radio/headset/headset_service/alt
headset = /obj/item/radio/headset/headset_service
bowman = /obj/item/radio/headset/headset_service/alt
id_access = "Service"
@@ -352,8 +352,8 @@
uniform = /obj/item/clothing/under/rank/janitor
pda = /obj/item/modular_computer/handheld/pda/civilian
shoes = /obj/item/clothing/shoes/galoshes
headset = /obj/item/device/radio/headset/headset_service
bowman = /obj/item/device/radio/headset/headset_service/alt
headset = /obj/item/radio/headset/headset_service
bowman = /obj/item/radio/headset/headset_service/alt
l_pocket = /obj/item/grenade/chem_grenade/cleaner
r_pocket = /obj/item/grenade/chem_grenade/cleaner
+5 -5
View File
@@ -4,12 +4,12 @@
uniform = /obj/item/clothing/under/rank/scc
back = /obj/item/storage/backpack/satchel/leather
shoes = /obj/item/clothing/shoes/laceup
l_ear = /obj/item/device/radio/headset/ert/ccia
l_ear = /obj/item/radio/headset/ert/ccia
glasses = /obj/item/clothing/glasses/sunglasses
wrist = /obj/item/modular_computer/handheld/wristbound/preset/advanced/command
l_pocket = /obj/item/reagent_containers/spray/pepper
r_pocket = /obj/item/device/taperecorder/cciaa
r_pocket = /obj/item/taperecorder/cciaa
id = /obj/item/card/id
@@ -36,12 +36,12 @@
head = /obj/item/clothing/head/helmet/merc/scc
uniform = /obj/item/clothing/under/tactical
suit = /obj/item/clothing/suit/armor/carrier/heavy/scc
l_ear = /obj/item/device/radio/headset/ert/ccia/alt
l_ear = /obj/item/radio/headset/ert/ccia/alt
shoes = /obj/item/clothing/shoes/jackboots
wrist = /obj/item/modular_computer/handheld/wristbound/preset/advanced/security
l_pocket = /obj/item/shield/energy
r_pocket = /obj/item/device/radio
r_pocket = /obj/item/radio
accessory = /obj/item/clothing/accessory/holster/armpit
accessory_contents = list(/obj/item/gun/energy/repeater)
@@ -51,7 +51,7 @@
/obj/item/reagent_containers/spray/pepper = 1,
/obj/item/melee/baton/loaded = 1,
/obj/item/grenade/chem_grenade/gas = 1,
/obj/item/device/flash = 1,
/obj/item/flash = 1,
/obj/item/handcuffs/ziptie = 2
)
+4 -4
View File
@@ -5,7 +5,7 @@
shoes = /obj/item/clothing/shoes/laceup
gloves = /obj/item/clothing/gloves/black
glasses = /obj/item/clothing/glasses/sunglasses/sechud
l_ear = /obj/item/device/radio/headset/ert/siib
l_ear = /obj/item/radio/headset/ert/siib
back = /obj/item/storage/backpack/satchel/leather
r_pocket = /obj/item/ammo_magazine/mc9mm
@@ -14,7 +14,7 @@
backpack_contents = list(
/obj/item/storage/box/survival/engineer = 1,
/obj/item/device/flash = 1,
/obj/item/flash = 1,
/obj/item/handcuffs/ziptie = 2
)
id = null
@@ -30,7 +30,7 @@
suit_store = /obj/item/gun/projectile/automatic/c20r/sol/siib
mask = /obj/item/clothing/mask/balaclava
belt = /obj/item/storage/belt/military
l_ear = /obj/item/device/radio/headset/ert/siib
l_ear = /obj/item/radio/headset/ert/siib
head = /obj/item/clothing/head/helmet/merc
back = /obj/item/storage/backpack/satchel/leather
r_pocket = /obj/item/ammo_magazine/mc9mm
@@ -46,7 +46,7 @@
backpack_contents = list(
/obj/item/storage/box/survival/engineer = 1,
/obj/item/device/flash = 1,
/obj/item/flash = 1,
/obj/item/crowbar/red = 1,
/obj/item/handcuffs/ziptie = 2
)
+1 -1
View File
@@ -5,7 +5,7 @@
suit = /obj/item/clothing/suit/storage/vest/legion/legate
gloves = /obj/item/clothing/gloves/swat/tactical
shoes = /obj/item/clothing/shoes/combat
l_ear = /obj/item/device/radio/headset/legion
l_ear = /obj/item/radio/headset/legion
head = /obj/item/clothing/head/legion/legate
glasses = /obj/item/clothing/glasses/sunglasses/aviator
id = /obj/item/card/id/distress/legion
+6 -6
View File
@@ -84,11 +84,11 @@
var/wristbound = /obj/item/modular_computer/handheld/wristbound/preset/pda/civilian
var/allow_headset_choice = FALSE
var/headset = /obj/item/device/radio/headset
var/bowman = /obj/item/device/radio/headset/alt
var/double_headset = /obj/item/device/radio/headset/alt/double
var/wrist_radio = /obj/item/device/radio/headset/wrist
var/clipon_radio = /obj/item/device/radio/headset/wrist/clip
var/headset = /obj/item/radio/headset
var/bowman = /obj/item/radio/headset/alt
var/double_headset = /obj/item/radio/headset/alt/double
var/wrist_radio = /obj/item/radio/headset/wrist
var/clipon_radio = /obj/item/radio/headset/wrist/clip
/// When spawning in, the ID will be set to this iff, preventing friendly fire.
var/id_iff = IFF_DEFAULT
@@ -325,7 +325,7 @@
else if (wrist)
equip_item(H, wrist, slot_wrists, callback = radio_callback)
/obj/outfit/proc/turn_into_thinset(var/obj/item/device/radio/headset/wrist/radio)
/obj/outfit/proc/turn_into_thinset(var/obj/item/radio/headset/wrist/radio)
if(istype(radio))
radio.icon_state = replacetext(radio.icon_state, "wrist", "thin")
radio.item_state = replacetext(radio.item_state, "wrist", "thin")
+2 -2
View File
@@ -57,8 +57,8 @@
uniform = "suit selection"
shoes = "shoe selection"
l_ear = list(
/obj/item/device/radio/headset,
/obj/item/device/radio/headset/alt,
/obj/item/radio/headset,
/obj/item/radio/headset/alt,
)
back = list(
/obj/item/storage/backpack,
+30 -30
View File
@@ -14,15 +14,15 @@
belt = /obj/item/storage/belt/utility/full
gloves = /obj/item/clothing/gloves/combat
shoes = /obj/item/clothing/shoes/combat
l_ear = /obj/item/device/radio/headset/syndicate/alt
l_ear = /obj/item/radio/headset/syndicate/alt
id = /obj/item/card/id/syndicate
r_pocket = /obj/item/device/radio/uplink
r_pocket = /obj/item/radio/uplink
backpack_contents = list(
/obj/item/storage/box/survival/engineer = 1,
/obj/item/device/flashlight = 1,
/obj/item/flashlight = 1,
/obj/item/card/emag = 1,
/obj/item/reagent_containers/food/snacks/donkpocket/sinpocket = 1,
/obj/item/device/multitool = 1
/obj/item/multitool = 1
)
id_iff = IFF_SYNDICATE
@@ -35,7 +35,7 @@
if(visualsOnly)
return
var/obj/item/device/radio/uplink/U = H.r_store
var/obj/item/radio/uplink/U = H.r_store
if(istype(U))
U.hidden_uplink.uplink_owner = H.mind
U.hidden_uplink.telecrystals = uplink_uses
@@ -57,7 +57,7 @@
belt = /obj/item/storage/belt/military/syndicate
head = /obj/item/clothing/head/helmet/space/void/merc
mask = /obj/item/clothing/mask/gas/syndicate
l_ear = /obj/item/device/radio/headset/syndicate
l_ear = /obj/item/radio/headset/syndicate
glasses = /obj/item/clothing/glasses/night
shoes = /obj/item/clothing/shoes/magboots/syndie
l_pocket = /obj/item/pinpointer/nukeop
@@ -71,7 +71,7 @@
/obj/item/crowbar/red = 1,
/obj/item/plastique = 1,
/obj/item/reagent_containers/food/snacks/donkpocket/sinpocket = 1,
/obj/item/device/flashlight = 1,
/obj/item/flashlight = 1,
/obj/item/clothing/shoes/combat = 1
)
@@ -81,13 +81,13 @@
head = /obj/item/clothing/head/beret/red
mask = /obj/item/clothing/mask/smokable/cigarette/cigar/havana
belt = /obj/item/gun/projectile/deagle
l_ear = /obj/item/device/radio/headset/syndicate
l_ear = /obj/item/radio/headset/syndicate
l_pocket = /obj/item/pinpointer/advpinpointer
r_pocket = null // stop them getting a radio uplink, they get an implant instead
backpack_contents = list(
/obj/item/storage/box/survival/engineer = 1,
/obj/item/device/flashlight = 1,
/obj/item/flashlight = 1,
/obj/item/reagent_containers/pill/cyanide = 1,
/obj/item/reagent_containers/food/snacks/donkpocket/sinpocket = 1,
/obj/item/ammo_magazine/a50 = 2,
@@ -123,7 +123,7 @@
shoes = /obj/item/clothing/shoes/combat
gloves = /obj/item/clothing/ring/ninja
mask = /obj/item/clothing/mask/balaclava
l_ear = /obj/item/device/radio/headset/ninja
l_ear = /obj/item/radio/headset/ninja
glasses = /obj/item/clothing/glasses/sunglasses/sechud/tactical
id = /obj/item/card/id/syndicate
l_pocket = null
@@ -133,10 +133,10 @@
backpack_contents = list()
belt_contents = list(
/obj/item/device/flashlight/maglight = 1,
/obj/item/flashlight/maglight = 1,
/obj/item/crowbar = 1,
/obj/item/screwdriver = 1,
/obj/item/device/paicard = 1
/obj/item/paicard = 1
)
id_access = "Syndicate Agent"
@@ -146,7 +146,7 @@
if(visualsOnly)
return
H.equip_to_slot_or_del(new /obj/item/device/special_uplink/ninja(H, H.mind), slot_l_store)
H.equip_to_slot_or_del(new /obj/item/special_uplink/ninja(H, H.mind), slot_l_store)
/obj/outfit/admin/syndicate/mercenary
name = "Mercenary"
@@ -156,7 +156,7 @@
gloves = /obj/item/clothing/gloves/swat
shoes = /obj/item/clothing/shoes/jackboots
pda = /obj/item/modular_computer/handheld/pda/syndicate
r_pocket = /obj/item/device/special_uplink/mercenary
r_pocket = /obj/item/special_uplink/mercenary
backpack_contents = list(
/obj/item/storage/box/survival/engineer = 1,
@@ -176,13 +176,13 @@
/obj/outfit/admin/syndicate/mercenary/loner
name = "Loner"
l_ear = /obj/item/device/radio/headset/syndicate
r_pocket = /obj/item/device/special_uplink/burglar
l_ear = /obj/item/radio/headset/syndicate
r_pocket = /obj/item/special_uplink/burglar
backpack_contents = list(
/obj/item/storage/box/syndie_kit/space = 1,
/obj/item/gun/projectile/shotgun/foldable = 1,
/obj/item/device/multitool/hacktool = 1
/obj/item/multitool/hacktool = 1
)
id_iff = IFF_LONER
@@ -320,8 +320,8 @@
/obj/item/clothing/glasses/sunglasses/big,
/obj/item/clothing/glasses/sunglasses/visor
)
l_ear = /obj/item/device/radio/headset/raider
l_pocket = /obj/item/device/special_uplink/raider
l_ear = /obj/item/radio/headset/raider
l_pocket = /obj/item/special_uplink/raider
r_pocket = list(
/obj/item/clothing/glasses/eyepatch/hud/thermal,
/obj/item/clothing/glasses/thermal,
@@ -420,9 +420,9 @@
/obj/item/clothing/wrists/watch/spy
)
l_ear = /obj/item/device/radio/headset/burglar
l_ear = /obj/item/radio/headset/burglar
l_pocket = /obj/item/syndie/teleporter
r_pocket = /obj/item/device/special_uplink/burglar
r_pocket = /obj/item/special_uplink/burglar
id = /obj/item/storage/wallet
r_hand = /obj/item/storage/briefcase/black
@@ -515,12 +515,12 @@
backpack_contents = list(
/obj/item/storage/box/survival/engineer = 1,
/obj/item/device/flashlight = 1,
/obj/item/flashlight = 1,
/obj/item/card/emag = 1
)
l_ear = /obj/item/device/radio/headset/jockey
r_pocket = /obj/item/device/special_uplink/jockey
l_ear = /obj/item/radio/headset/jockey
r_pocket = /obj/item/special_uplink/jockey
id = /obj/item/storage/wallet
id_iff = IFF_JOCKEY
@@ -555,7 +555,7 @@
uniform = /obj/item/clothing/under/kilt
head = /obj/item/clothing/head/beret/red
shoes = /obj/item/clothing/shoes/combat
l_ear = /obj/item/device/radio/headset/heads/captain
l_ear = /obj/item/radio/headset/heads/captain
l_hand = /obj/item/material/sword
l_pocket = /obj/item/pinpointer
@@ -614,7 +614,7 @@
belt = /obj/item/storage/belt/fannypack/component
gloves = null
l_ear = /obj/item/device/radio/headset/bluespace
l_ear = /obj/item/radio/headset/bluespace
l_pocket = /obj/item/technomancer_catalog/apprentice
r_pocket = null
id = /obj/item/storage/wallet/random
@@ -693,7 +693,7 @@
name = "Bluespace Golem"
allow_backbag_choice = FALSE
l_ear = /obj/item/device/radio/headset/bluespace
l_ear = /obj/item/radio/headset/bluespace
id_iff = IFF_BLUESPACE
/obj/outfit/admin/techomancer
@@ -701,10 +701,10 @@
allow_backbag_choice = FALSE
head = /obj/item/clothing/head/chameleon/technomancer
l_ear = /obj/item/device/radio/headset/bluespace
l_ear = /obj/item/radio/headset/bluespace
uniform = /obj/item/clothing/under/chameleon/technomancer
suit = /obj/item/clothing/suit/chameleon/technomancer
belt = /obj/item/device/flashlight
belt = /obj/item/flashlight
back = /obj/item/technomancer_core
shoes = /obj/item/clothing/shoes/chameleon/technomancer
@@ -760,7 +760,7 @@
name = "Technomancer Golem"
head = null
l_ear = /obj/item/device/radio/headset/bluespace
l_ear = /obj/item/radio/headset/bluespace
uniform = null
suit = null
belt = null
+45 -45
View File
@@ -24,49 +24,49 @@
"bribe_refusal" = "You have given me money to stay, however, I am a station. I do not leave."
)
possible_wanted_items = list(
/obj/item/device/ = TRADER_SUBTYPES_ONLY,
/obj/item/device/kit = TRADER_BLACKLIST_ALL, // They're impossible to make or get outside of mining, just annoys traders.
/obj/item/device/assembly = TRADER_BLACKLIST_ALL,
/obj/item/device/assembly_holder = TRADER_BLACKLIST_ALL,
/obj/item/device/encryptionkey = TRADER_BLACKLIST_SUB, //Why should ai want NT encryption keys?
/obj/item/device/radio = TRADER_BLACKLIST_ALL,
/obj/item/device/chameleon = TRADER_BLACKLIST, // Why should it want a chameleon projector
/obj/item/device/dociler = TRADER_BLACKLIST, //Item unobtaineable
/obj/item/device/flashlight/drone = TRADER_BLACKLIST, // No drone stuff
/obj/item/device/camera_bug = TRADER_BLACKLIST, // Traitor stuff
/obj/item/device/multitool = TRADER_BLACKLIST_SUB, // Hacktool, uplink and robo tool ban
/obj/item/device/modkit = TRADER_BLACKLIST_ALL, // No to modkits
/obj/item/device/pin_extractor = TRADER_BLACKLIST, // RD's tech
/obj/item/device/powersink = TRADER_BLACKLIST, // Traitor stuff
/obj/item/device/slime_scanner = TRADER_BLACKLIST, //If it was doing slime stuff, it already had this
/obj/item/device/spy_bug = TRADER_BLACKLIST, // Traitor stuff
/obj/item/device/spy_monitor = TRADER_BLACKLIST, // Traitor stuff
/obj/item/device/suit_cooling_unit = TRADER_BLACKLIST, // Not on Aurora
/obj/item/device/taperecorder/cciaa = TRADER_BLACKLIST, // Admin item
/obj/item/device/batterer = TRADER_BLACKLIST, // Item too rare
/obj/item/device/contract_uplink = TRADER_BLACKLIST, // Traitor stuff
/obj/item/device/uplink = TRADER_BLACKLIST_ALL, // Traitor stuff
/obj/item/device/announcer = TRADER_BLACKLIST, // Rev item
/obj/item/device/special_uplink = TRADER_BLACKLIST,
/obj/item/device/onetankbomb = TRADER_BLACKLIST, // Not weapons trader
/obj/item/device/kinetic_analyzer = TRADER_BLACKLIST, // Not KA trader
/obj/item/device/camera = TRADER_BLACKLIST_SUB, // a lot of ai/drone/cyborg/fluff items
/obj/item/device/uv_light = TRADER_BLACKLIST, // CSI item
/obj/item/device/eftpos = TRADER_BLACKLIST,
/obj/item/device/quikpay = TRADER_BLACKLIST,
/obj/item/device/electronic_assembly = TRADER_BLACKLIST_ALL, // Not a circuit trader
/obj/item/device/integrated_circuit_printer = TRADER_BLACKLIST_ALL, //Not a circuit trader
/obj/item/device/integrated_electronics = TRADER_BLACKLIST_ALL, // Not a circuit trader
/obj/item/device/mine_bot_upgrade = TRADER_BLACKLIST_ALL, // Not a mining vendor + drone stuff
/obj/item/device/mmi = TRADER_BLACKLIST_SUB, // removes MMI Subtypes to prevent trading confusion
/obj/item/device/soulstone = TRADER_BLACKLIST, // Wiz item
/obj/item/device/firing_pin = TRADER_BLACKLIST_ALL, // Not a weapons trader
/obj/item/device/laser_assembly = TRADER_BLACKLIST_ALL, // Not a weapons trader
/obj/item/device/ano_scanner = TRADER_BLACKLIST, // Xenoarch
/obj/item/device/core_sampler = TRADER_BLACKLIST, // Xenoarch
/obj/item/device/depth_scanner = TRADER_BLACKLIST, // Xenoarch
/obj/item/device/beacon_locator = TRADER_BLACKLIST, // Telescience
/obj/item/device/telepad_beacon = TRADER_BLACKLIST, // Telescience
/obj/item/ = TRADER_SUBTYPES_ONLY,
/obj/item/kit = TRADER_BLACKLIST_ALL, // They're impossible to make or get outside of mining, just annoys traders.
/obj/item/assembly = TRADER_BLACKLIST_ALL,
/obj/item/assembly_holder = TRADER_BLACKLIST_ALL,
/obj/item/encryptionkey = TRADER_BLACKLIST_SUB, //Why should ai want NT encryption keys?
/obj/item/radio = TRADER_BLACKLIST_ALL,
/obj/item/chameleon = TRADER_BLACKLIST, // Why should it want a chameleon projector
/obj/item/dociler = TRADER_BLACKLIST, //Item unobtaineable
/obj/item/flashlight/drone = TRADER_BLACKLIST, // No drone stuff
/obj/item/camera_bug = TRADER_BLACKLIST, // Traitor stuff
/obj/item/multitool = TRADER_BLACKLIST_SUB, // Hacktool, uplink and robo tool ban
/obj/item/modkit = TRADER_BLACKLIST_ALL, // No to modkits
/obj/item/pin_extractor = TRADER_BLACKLIST, // RD's tech
/obj/item/powersink = TRADER_BLACKLIST, // Traitor stuff
/obj/item/slime_scanner = TRADER_BLACKLIST, //If it was doing slime stuff, it already had this
/obj/item/spy_bug = TRADER_BLACKLIST, // Traitor stuff
/obj/item/spy_monitor = TRADER_BLACKLIST, // Traitor stuff
/obj/item/suit_cooling_unit = TRADER_BLACKLIST, // Not on Aurora
/obj/item/taperecorder/cciaa = TRADER_BLACKLIST, // Admin item
/obj/item/batterer = TRADER_BLACKLIST, // Item too rare
/obj/item/contract_uplink = TRADER_BLACKLIST, // Traitor stuff
/obj/item/uplink = TRADER_BLACKLIST_ALL, // Traitor stuff
/obj/item/announcer = TRADER_BLACKLIST, // Rev item
/obj/item/special_uplink = TRADER_BLACKLIST,
/obj/item/onetankbomb = TRADER_BLACKLIST, // Not weapons trader
/obj/item/kinetic_analyzer = TRADER_BLACKLIST, // Not KA trader
/obj/item/camera = TRADER_BLACKLIST_SUB, // a lot of ai/drone/cyborg/fluff items
/obj/item/uv_light = TRADER_BLACKLIST, // CSI item
/obj/item/eftpos = TRADER_BLACKLIST,
/obj/item/quikpay = TRADER_BLACKLIST,
/obj/item/electronic_assembly = TRADER_BLACKLIST_ALL, // Not a circuit trader
/obj/item/integrated_circuit_printer = TRADER_BLACKLIST_ALL, //Not a circuit trader
/obj/item/integrated_electronics = TRADER_BLACKLIST_ALL, // Not a circuit trader
/obj/item/mine_bot_upgrade = TRADER_BLACKLIST_ALL, // Not a mining vendor + drone stuff
/obj/item/mmi = TRADER_BLACKLIST_SUB, // removes MMI Subtypes to prevent trading confusion
/obj/item/soulstone = TRADER_BLACKLIST, // Wiz item
/obj/item/firing_pin = TRADER_BLACKLIST_ALL, // Not a weapons trader
/obj/item/laser_assembly = TRADER_BLACKLIST_ALL, // Not a weapons trader
/obj/item/ano_scanner = TRADER_BLACKLIST, // Xenoarch
/obj/item/core_sampler = TRADER_BLACKLIST, // Xenoarch
/obj/item/depth_scanner = TRADER_BLACKLIST, // Xenoarch
/obj/item/beacon_locator = TRADER_BLACKLIST, // Telescience
/obj/item/telepad_beacon = TRADER_BLACKLIST, // Telescience
)
possible_trading_items = list(
@@ -151,8 +151,8 @@
/obj/item/storage/firstaid = TRADER_SUBTYPES_ONLY,
/obj/item/storage/pill_bottle = TRADER_SUBTYPES_ONLY,
/obj/item/reagent_containers/hypospray = TRADER_ALL,
/obj/item/device/healthanalyzer = TRADER_THIS_TYPE,
/obj/item/device/breath_analyzer = TRADER_THIS_TYPE,
/obj/item/healthanalyzer = TRADER_THIS_TYPE,
/obj/item/breath_analyzer = TRADER_THIS_TYPE,
/obj/item/stack/medical/bruise_pack = TRADER_THIS_TYPE,
/obj/item/stack/medical/ointment = TRADER_THIS_TYPE,
/obj/item/stack/medical/advanced = TRADER_SUBTYPES_ONLY,
+38 -38
View File
@@ -213,43 +213,43 @@ Sells devices, odds and ends, and medical stuff
origin = "Wally's SmartMart"
possible_origins = list("Buy 'n Save", "Drug Carnival", "C&B", "Fentles", "Dr. Goods", "Beevees")
possible_trading_items = list(
/obj/item/device/flashlight = TRADER_ALL,
/obj/item/flashlight = TRADER_ALL,
/obj/item/aicard = TRADER_THIS_TYPE,
/obj/item/device/binoculars = TRADER_THIS_TYPE,
/obj/item/device/flash = TRADER_THIS_TYPE,
/obj/item/device/paint_sprayer = TRADER_THIS_TYPE,
/obj/item/device/multitool = TRADER_THIS_TYPE,
/obj/item/device/lightreplacer = TRADER_THIS_TYPE,
/obj/item/device/megaphone = TRADER_THIS_TYPE,
/obj/item/device/paicard = TRADER_THIS_TYPE,
/obj/item/device/pipe_painter = TRADER_THIS_TYPE,
/obj/item/device/healthanalyzer = TRADER_THIS_TYPE,
/obj/item/device/breath_analyzer = TRADER_THIS_TYPE,
/obj/item/device/analyzer = TRADER_ALL,
/obj/item/device/mass_spectrometer = TRADER_ALL,
/obj/item/device/reagent_scanner = TRADER_ALL,
/obj/item/device/slime_scanner = TRADER_THIS_TYPE,
/obj/item/device/suit_cooling_unit = TRADER_THIS_TYPE,
/obj/item/device/t_scanner = TRADER_THIS_TYPE,
/obj/item/device/taperecorder = TRADER_THIS_TYPE,
/obj/item/device/batterer = TRADER_THIS_TYPE,
/obj/item/device/synthesized_instrument/violin = TRADER_THIS_TYPE,
/obj/item/device/synthesized_instrument/guitar = TRADER_THIS_TYPE,
/obj/item/device/synthesized_instrument/trumpet = TRADER_THIS_TYPE,
/obj/item/device/hailer = TRADER_THIS_TYPE,
/obj/item/device/uv_light = TRADER_THIS_TYPE,
/obj/item/device/mmi = TRADER_ALL,
/obj/item/device/robotanalyzer = TRADER_THIS_TYPE,
/obj/item/device/toner = TRADER_THIS_TYPE,
/obj/item/device/camera_film = TRADER_THIS_TYPE,
/obj/item/device/camera = TRADER_THIS_TYPE,
/obj/item/device/destTagger = TRADER_THIS_TYPE,
/obj/item/device/gps = TRADER_THIS_TYPE,
/obj/item/device/measuring_tape = TRADER_THIS_TYPE,
/obj/item/device/ano_scanner = TRADER_THIS_TYPE,
/obj/item/device/core_sampler = TRADER_THIS_TYPE,
/obj/item/device/depth_scanner = TRADER_THIS_TYPE,
/obj/item/device/beacon_locator = TRADER_THIS_TYPE,
/obj/item/binoculars = TRADER_THIS_TYPE,
/obj/item/flash = TRADER_THIS_TYPE,
/obj/item/paint_sprayer = TRADER_THIS_TYPE,
/obj/item/multitool = TRADER_THIS_TYPE,
/obj/item/lightreplacer = TRADER_THIS_TYPE,
/obj/item/megaphone = TRADER_THIS_TYPE,
/obj/item/paicard = TRADER_THIS_TYPE,
/obj/item/pipe_painter = TRADER_THIS_TYPE,
/obj/item/healthanalyzer = TRADER_THIS_TYPE,
/obj/item/breath_analyzer = TRADER_THIS_TYPE,
/obj/item/analyzer = TRADER_ALL,
/obj/item/mass_spectrometer = TRADER_ALL,
/obj/item/reagent_scanner = TRADER_ALL,
/obj/item/slime_scanner = TRADER_THIS_TYPE,
/obj/item/suit_cooling_unit = TRADER_THIS_TYPE,
/obj/item/t_scanner = TRADER_THIS_TYPE,
/obj/item/taperecorder = TRADER_THIS_TYPE,
/obj/item/batterer = TRADER_THIS_TYPE,
/obj/item/synthesized_instrument/violin = TRADER_THIS_TYPE,
/obj/item/synthesized_instrument/guitar = TRADER_THIS_TYPE,
/obj/item/synthesized_instrument/trumpet = TRADER_THIS_TYPE,
/obj/item/hailer = TRADER_THIS_TYPE,
/obj/item/uv_light = TRADER_THIS_TYPE,
/obj/item/mmi = TRADER_ALL,
/obj/item/robotanalyzer = TRADER_THIS_TYPE,
/obj/item/toner = TRADER_THIS_TYPE,
/obj/item/camera_film = TRADER_THIS_TYPE,
/obj/item/camera = TRADER_THIS_TYPE,
/obj/item/destTagger = TRADER_THIS_TYPE,
/obj/item/gps = TRADER_THIS_TYPE,
/obj/item/measuring_tape = TRADER_THIS_TYPE,
/obj/item/ano_scanner = TRADER_THIS_TYPE,
/obj/item/core_sampler = TRADER_THIS_TYPE,
/obj/item/depth_scanner = TRADER_THIS_TYPE,
/obj/item/beacon_locator = TRADER_THIS_TYPE,
/obj/item/stack/medical/advanced = TRADER_BLACKLIST
)
@@ -283,7 +283,7 @@ Sells devices, odds and ends, and medical stuff
)
possible_trading_items = list(
/obj/item/device/paicard = TRADER_THIS_TYPE,
/obj/item/paicard = TRADER_THIS_TYPE,
/obj/item/aicard = TRADER_THIS_TYPE,
/mob/living/bot = TRADER_SUBTYPES_ONLY
)
@@ -341,7 +341,7 @@ Sells devices, odds and ends, and medical stuff
/obj/item/rfd_ammo = TRADER_THIS_TYPE,
/obj/item/rfd/mining = TRADER_THIS_TYPE,
/obj/item/ore_radar = TRADER_THIS_TYPE,
/obj/item/device/wormhole_jaunter = TRADER_THIS_TYPE,
/obj/item/wormhole_jaunter = TRADER_THIS_TYPE,
/obj/item/resonator = TRADER_ALL,
/obj/item/autochisel = TRADER_ALL,
/obj/structure/sculpting_block = TRADER_ALL,
+2 -2
View File
@@ -64,7 +64,7 @@
/mob/living/simple_animal/corgi/fox = TRADER_THIS_TYPE,
/mob/living/simple_animal/hostile/retaliate/goat = TRADER_THIS_TYPE,
/mob/living/simple_animal/hostile/commanded/dog = TRADER_ALL,
/obj/item/device/dociler = TRADER_THIS_TYPE
/obj/item/dociler = TRADER_THIS_TYPE
)
/datum/trader/prank_shop
@@ -285,7 +285,7 @@
/obj/item/clothing/shoes/tajara/fancy = TRADER_THIS_TYPE,
/obj/item/clothing/head/beret/tajaran/nka/officer = TRADER_THIS_TYPE,
/obj/item/clothing/shoes/tajara/fancy = TRADER_THIS_TYPE,
/obj/item/device/versebook/nka = TRADER_THIS_TYPE,
/obj/item/versebook/nka = TRADER_THIS_TYPE,
/obj/item/clothing/wrists/watch/pocketwatch/adhomai = TRADER_THIS_TYPE,
/obj/item/clothing/head/helmet/amohda = TRADER_THIS_TYPE,
/obj/item/clothing/suit/armor/amohda = TRADER_THIS_TYPE,
+1 -1
View File
@@ -150,7 +150,7 @@
/obj/machinery/bluespacerelay = TRADER_ALL,
/obj/item/stack/telecrystal = TRADER_THIS_TYPE,
/obj/item/organ/internal/brain/golem = TRADER_THIS_TYPE,
/obj/item/device/soulstone = TRADER_THIS_TYPE,
/obj/item/soulstone = TRADER_THIS_TYPE,
/obj/item/circuitboard/telesci_console = TRADER_THIS_TYPE,
/obj/item/circuitboard/telesci_pad = TRADER_THIS_TYPE,
/obj/item/phylactery = TRADER_THIS_TYPE,
+5 -5
View File
@@ -4,7 +4,7 @@
/datum/uplink_item/abstract/announcements
category = /datum/uplink_category/services
/datum/uplink_item/abstract/announcements/buy(var/obj/item/device/uplink/U, var/mob/user)
/datum/uplink_item/abstract/announcements/buy(var/obj/item/uplink/U, var/mob/user)
. = ..()
if(.)
log_and_message_admins("has triggered a falsified [src]", user)
@@ -25,7 +25,7 @@
return
return list("title" = strip_html_readd_newlines(title), "message" = strip_html_readd_newlines(message))
/datum/uplink_item/abstract/announcements/fake_centcom/get_goods(var/obj/item/device/uplink/U, var/loc, var/mob/user, var/list/arguments)
/datum/uplink_item/abstract/announcements/fake_centcom/get_goods(var/obj/item/uplink/U, var/loc, var/mob/user, var/list/arguments)
command_announcement.Announce(arguments["message"], arguments["title"], do_newscast=1, do_print=1, msg_sanitized=TRUE)
return TRUE
@@ -35,7 +35,7 @@
telecrystal_cost = 4
bluecrystal_cost = 4
/datum/uplink_item/abstract/announcements/fake_crew_arrival/get_goods(var/obj/item/device/uplink/U, var/loc, var/mob/user, var/list/arguments)
/datum/uplink_item/abstract/announcements/fake_crew_arrival/get_goods(var/obj/item/uplink/U, var/loc, var/mob/user, var/list/arguments)
if(!user)
return 0
@@ -94,7 +94,7 @@
telecrystal_cost = 2
var/static/cooldown = FALSE
/datum/uplink_item/abstract/announcements/fake_ion_storm/get_goods(var/obj/item/device/uplink/U, var/loc)
/datum/uplink_item/abstract/announcements/fake_ion_storm/get_goods(var/obj/item/uplink/U, var/loc)
if(cooldown != TRUE)
ion_storm_announcement()
cooldown = TRUE
@@ -117,7 +117,7 @@
telecrystal_cost = 3
var/static/cooldown = 0
/datum/uplink_item/abstract/announcements/fake_radiation/get_goods(var/obj/item/device/uplink/U, var/loc)
/datum/uplink_item/abstract/announcements/fake_radiation/get_goods(var/obj/item/uplink/U, var/loc)
if(cooldown != TRUE)
var/datum/event_meta/EM = new(EVENT_LEVEL_MUNDANE, "Fake Radiation Storm", add_to_queue = 0)
new/datum/event/radiation_storm/syndicate(EM)
+5 -5
View File
@@ -26,11 +26,11 @@
name = "Random Item"
desc = "Buys you one random item."
/datum/uplink_item/item/badassery/random_one/buy(var/obj/item/device/uplink/U, var/mob/user)
/datum/uplink_item/item/badassery/random_one/buy(var/obj/item/uplink/U, var/mob/user)
var/datum/uplink_item/item = GLOB.default_uplink_selection.get_random_item(U.telecrystals)
return item.buy(U, user)
/datum/uplink_item/item/badassery/random_one/can_buy_telecrystals(obj/item/device/uplink/U)
/datum/uplink_item/item/badassery/random_one/can_buy_telecrystals(obj/item/uplink/U)
return GLOB.default_uplink_selection.get_random_item(U.telecrystals, U) != null
/datum/uplink_item/item/badassery/random_many
@@ -40,7 +40,7 @@
/datum/uplink_item/item/badassery/random_many/telecrystal_cost(var/telecrystals)
return max(1, telecrystals)
/datum/uplink_item/item/badassery/random_many/get_goods(var/obj/item/device/uplink/U, var/loc)
/datum/uplink_item/item/badassery/random_many/get_goods(var/obj/item/uplink/U, var/loc)
var/list/bought_items = list()
for(var/datum/uplink_item/UI in get_random_uplink_items(U, U.telecrystals, loc))
UI.purchase_log(U)
@@ -50,7 +50,7 @@
return bought_items
/datum/uplink_item/item/badassery/random_many/purchase_log(obj/item/device/uplink/U)
/datum/uplink_item/item/badassery/random_many/purchase_log(obj/item/uplink/U)
feedback_add_details("traitor_uplink_items_bought", "[src]")
log_and_message_admins("used \the [U.loc] to buy \a [src]")
@@ -68,7 +68,7 @@
..()
desc = "A crate containing [item_worth] telecrystal\s worth of surplus leftovers."
/datum/uplink_item/item/badassery/surplus/get_goods(var/obj/item/device/uplink/U, var/loc)
/datum/uplink_item/item/badassery/surplus/get_goods(var/obj/item/uplink/U, var/loc)
var/obj/structure/largecrate/C = new(loc)
var/random_items = get_random_uplink_items(null, item_worth, C)
for(var/datum/uplink_item/I in random_items)
+13 -13
View File
@@ -27,7 +27,7 @@
/datum/uplink_item/item/tools/firingpin //todo, make this a special syndicate one instead of just a normal one?
name = "Firing Pin"
bluecrystal_cost = 1
path = /obj/item/device/firing_pin
path = /obj/item/firing_pin
desc = "An unmarked firing pin - It should be compatible with nearly every weapon onboard."
/datum/uplink_item/item/tools/surge
@@ -59,14 +59,14 @@
name = "Encrypted Radio Channel Key"
telecrystal_cost = 1
bluecrystal_cost = 1
path = /obj/item/device/encryptionkey/syndicate
path = /obj/item/encryptionkey/syndicate
desc = "An encryption key for use in a headset, intercepts all frequencies and grants access to a secure private frequency."
/datum/uplink_item/item/tools/encryptionkey_binary
name = "Binary Translator Key"
telecrystal_cost = 1
bluecrystal_cost = 1
path = /obj/item/device/encryptionkey/binary
path = /obj/item/encryptionkey/binary
desc = "An encryption key for use in a headset, capable of intercepting stationbound binary communications."
/datum/uplink_item/item/tools/emag
@@ -82,13 +82,13 @@
This can only be bought once."
telecrystal_cost = 1
item_limit = 1
path = /obj/item/device/personal_shield
path = /obj/item/personal_shield
/datum/uplink_item/item/tools/hacking_tool
name = "Door Hacking Tool"
telecrystal_cost = 1
bluecrystal_cost = 1
path = /obj/item/device/multitool/hacktool
path = /obj/item/multitool/hacktool
desc = "Appears and functions as a standard multitool until the mode is toggled by applying a screwdriver appropriately. \
When in hacking mode this device will grant full access to any standard airlock within 7 to 13 seconds. \
This device will also be able to immediately access the last 6 to 8 hacked airlocks."
@@ -109,7 +109,7 @@
name = "Powersink (DANGER!)"
telecrystal_cost = 6
bluecrystal_cost = 6
path = /obj/item/device/powersink
path = /obj/item/powersink
/datum/uplink_item/item/tools/ai_module
name = "Hacked AI Upload Module"
@@ -174,35 +174,35 @@
name = "Portable suit cooling unit"
telecrystal_cost = 1
bluecrystal_cost = 1
path = /obj/item/device/suit_cooling_unit
path = /obj/item/suit_cooling_unit
desc = "A suit cooling unit with a high capacity power cell."
/datum/uplink_item/item/tools/keypad
name = "Keypad Mag-Lock"
telecrystal_cost = 1
bluecrystal_cost = 1
path = /obj/item/device/magnetic_lock/keypad
path = /obj/item/magnetic_lock/keypad
desc = "A maglock that requires the user to enter a passcode to lock and then later unlock."
/datum/uplink_item/item/tools/personal_ai
name = "Personal AI"
telecrystal_cost = 1
bluecrystal_cost = 1
path = /obj/item/device/paicard
path = /obj/item/paicard
desc = "An unmodified personal AI that can assist you in your ventures."
/datum/uplink_item/item/tools/pin_extractor
name = "Firing Pin Extractor"
telecrystal_cost = 1
bluecrystal_cost = 1
path = /obj/item/device/pin_extractor
path = /obj/item/pin_extractor
desc = "An extractor tool capable of extracting firing pins from most firearms."
/datum/uplink_item/item/tools/radio_jammer
name = "Radio Jammer"
telecrystal_cost = 2
bluecrystal_cost = 2
path = /obj/item/device/radiojammer
path = /obj/item/radiojammer
desc = "A small jammer that can fit inside a pocket. Capable of disrupting nearby radios and hivenet transmitters."
/datum/uplink_item/item/tools/jetpack
@@ -215,7 +215,7 @@
name = "Electropack"
telecrystal_cost = 1
bluecrystal_cost = 1
path = /obj/item/device/radio/electropack
path = /obj/item/radio/electropack
desc = "A backpack wired with electrodes. Sync up with a signaller, attach to an unwilling host and pulse the signal to shock them."
/datum/uplink_item/item/tools/ammo_display
@@ -243,7 +243,7 @@
desc = "This set of earmuffs has a secret compartment housing radio gear, allowing it to function as a standard headset."
telecrystal_cost = 1
bluecrystal_cost = 1
path = /obj/item/device/radio/headset/earmuff
path = /obj/item/radio/headset/earmuff
/datum/uplink_item/item/tools/liquidbags
name = "25 Liquid-Bags"
+4 -4
View File
@@ -5,22 +5,22 @@
name = "Combat Exosuit Dropper"
desc = "A device that can be used to drop in a combat exosuit. Can only be used outside [SSatlas.current_map.station_name] areas, unless emagged, which is hazardous."
telecrystal_cost = 25
path = /obj/item/device/orbital_dropper/mecha/combat
path = /obj/item/orbital_dropper/mecha/combat
/datum/uplink_item/item/exosuit/heavy/New()
name = "Heavy Exosuit Dropper"
desc = "A device that can be used to drop in a heavy exosuit. Can only be used outside [SSatlas.current_map.station_name] areas, unless emagged, which is hazardous."
telecrystal_cost = 20
path = /obj/item/device/orbital_dropper/mecha/heavy
path = /obj/item/orbital_dropper/mecha/heavy
/datum/uplink_item/item/exosuit/light/New()
name = "Light Exosuit Dropper"
desc = "A device that can be used to drop in a light exosuit. Can only be used outside [SSatlas.current_map.station_name] areas, unless emagged, which is hazardous."
telecrystal_cost = 15
path = /obj/item/device/orbital_dropper/mecha
path = /obj/item/orbital_dropper/mecha
/datum/uplink_item/item/exosuit/powerloader/New()
name = "Powerloader Exosuit Dropper"
desc = "A device that can be used to drop in a powerloader exosuit. Can only be used outside [SSatlas.current_map.station_name] areas, unless emagged, which is hazardous."
telecrystal_cost = 10
path = /obj/item/device/orbital_dropper/mecha/powerloader
path = /obj/item/orbital_dropper/mecha/powerloader
+10 -10
View File
@@ -41,25 +41,25 @@
name = "Combitool Augment Implanter"
bluecrystal_cost = 1
desc = "An augment implanter, with the combitool augment."
path = /obj/item/device/augment_implanter/combitool
path = /obj/item/augment_implanter/combitool
/datum/uplink_item/item/implants/aug_health_scanner
name = "Health Scanner Augment Implanter"
bluecrystal_cost = 1
desc = "An augment implanter, with the integrated health scanner augment."
path = /obj/item/device/augment_implanter/health_scanner
path = /obj/item/augment_implanter/health_scanner
/datum/uplink_item/item/implants/hiveshield
name = "Vaurca Hivenet Defense Implanter"
bluecrystal_cost = 1
desc = "An augment implanter, with a Hivenet defense augment. ONLY WORKS ON VAURCA!"
path = /obj/item/device/augment_implanter/hivenet_shield
path = /obj/item/augment_implanter/hivenet_shield
/datum/uplink_item/item/implants/hivewarfare
name = "Vaurca Hivenet Warfare Suite"
bluecrystal_cost = 5
desc = "A augment implanter, with a Hivenet defense augment and electronic warfare suite. ONLY WORKS ON VAURCA!"
path = /obj/item/device/augment_implanter/hivenet_warfare
path = /obj/item/augment_implanter/hivenet_warfare
/datum/uplink_item/item/implants/telefreedom_kit
name = "Telefreedom Kit"
@@ -74,39 +74,39 @@
bluecrystal_cost = 3
telecrystal_cost = 3
desc = "An augment implanter, with a Auxiliary Heart bioaug. ONLY WORKS ON HUMANS!"
path = /obj/item/device/augment_implanter/auxiliary_heart
path = /obj/item/augment_implanter/auxiliary_heart
/datum/uplink_item/item/implants/gravity_adaptations
name = "Galatean Gravity Adaptations Implanter"
bluecrystal_cost = 1
telecrystal_cost = 1
desc = "An augment implanter, with a Gravity Adaptations bioaug. ONLY WORKS ON OFF-WORLDERS!"
path = /obj/item/device/augment_implanter/gravity_adaptations
path = /obj/item/augment_implanter/gravity_adaptations
/datum/uplink_item/item/implants/mind_blanker
name = "Galatean Mind Blanker Implanter"
bluecrystal_cost = 2
telecrystal_cost = 2
desc = "An augment implanter, with a Mind Blanker bioaug. ONLY WORKS ON HUMANS!"
path = /obj/item/device/augment_implanter/mind_blanker
path = /obj/item/augment_implanter/mind_blanker
/datum/uplink_item/item/implants/mind_blanker_lethal
name = "Galatean Mind Blanker (Lethal) Implanter"
bluecrystal_cost = 4
telecrystal_cost = 4
desc = "An augment implanter, with a Lethal Mind Blanker bioaug. ONLY WORKS ON HUMANS!"
path = /obj/item/device/augment_implanter/mind_blanker_lethal
path = /obj/item/augment_implanter/mind_blanker_lethal
/datum/uplink_item/item/implants/platelet_factories
name = "Galatean Platelet Factories Implanter"
bluecrystal_cost = 3
telecrystal_cost = 3
desc = "An augment implanter, with a Platelet Factories bioaug. ONLY WORKS ON HUMANS!"
path = /obj/item/device/augment_implanter/platelet_factories
path = /obj/item/augment_implanter/platelet_factories
/datum/uplink_item/item/implants/subdermal_carapace
name = "Galatean Subdermal Carapace Implanter"
bluecrystal_cost = 5
telecrystal_cost = 5
desc = "An augment implanter, with a Subdermal Carapace bioaug. ONLY WORKS ON HUMANS!"
path = /obj/item/device/augment_implanter/subdermal_carapace
path = /obj/item/augment_implanter/subdermal_carapace
+1 -1
View File
@@ -5,7 +5,7 @@
name = "Armory Dropper"
desc = "A device that can be used to drop in an armory-worth of guns. Can only be used outside [SSatlas.current_map.station_short] areas, unless emagged, which is hazardous."
telecrystal_cost = 25
path = /obj/item/device/orbital_dropper/armory/syndicate
path = /obj/item/orbital_dropper/armory/syndicate
/datum/uplink_item/item/revolution/implants
name = "Box of Aggression Implants"
@@ -27,7 +27,7 @@
desc = "A small self-contained auto-surgery device that has the ability to conduct larynxial, facial and even melanin re-structuring surgery, in a (mostly) blood-less manner."
telecrystal_cost = 1
bluecrystal_cost = 1
path = /obj/item/device/cosmetic_surgery_kit
path = /obj/item/cosmetic_surgery_kit
/datum/uplink_item/item/stealth_items/chameleon_kit
name = "Chameleon Kit"
@@ -52,7 +52,7 @@
name = "Chameleon-Projector"
desc = "A device that can be used to mimic common items by scanning, then transforming into them."
telecrystal_cost = 2
path = /obj/item/device/chameleon
path = /obj/item/chameleon
/datum/uplink_item/item/stealth_items/venenum
name = "Vial of Venenum"
+2 -2
View File
@@ -5,7 +5,7 @@
category = /datum/uplink_category/crystals
desc = "Acquire the uplink telecrystals in pure form."
/datum/uplink_item/item/telecrystal/get_goods(var/obj/item/device/uplink/U, var/loc)
/datum/uplink_item/item/telecrystal/get_goods(var/obj/item/uplink/U, var/loc)
return new /obj/item/stack/telecrystal(loc, telecrystal_cost(U.telecrystals))
/datum/uplink_item/item/telecrystal/one
@@ -35,7 +35,7 @@
category = /datum/uplink_category/crystals
desc = "Acquire the uplink bluecrystals in pure form."
/datum/uplink_item/item/bluecrystal/get_goods(var/obj/item/device/uplink/U, var/loc)
/datum/uplink_item/item/bluecrystal/get_goods(var/obj/item/uplink/U, var/loc)
return new /obj/item/stack/telecrystal/blue(loc, bluecrystal_cost(U.bluecrystals))
/datum/uplink_item/item/bluecrystal/one
+1 -1
View File
@@ -8,7 +8,7 @@
..()
items = list()
/datum/uplink_category/proc/can_view(obj/item/device/uplink/U)
/datum/uplink_category/proc/can_view(obj/item/uplink/U)
if(LAZYLEN(restricted_antags))
for(var/antag_role in restricted_antags)
var/datum/antagonist/antag = GLOB.all_antag_types[antag_role]
+11 -11
View File
@@ -44,7 +44,7 @@ GLOBAL_DATUM(uplink, /datum/uplink)
/datum/uplink_item/item
var/path
/datum/uplink_item/proc/buy(var/obj/item/device/uplink/U, var/mob/user)
/datum/uplink_item/proc/buy(var/obj/item/uplink/U, var/mob/user)
var/extra_args = extra_args(user)
if(!extra_args)
return
@@ -76,7 +76,7 @@ GLOBAL_DATUM(uplink, /datum/uplink)
if(istype(implanter))
var/obj/item/implant/uplink/uplink_implant = implanter.imp
if(istype(uplink_implant))
var/obj/item/device/uplink/hidden/hidden_uplink = uplink_implant.hidden_uplink
var/obj/item/uplink/hidden/hidden_uplink = uplink_implant.hidden_uplink
if(istype(hidden_uplink))
hidden_uplink.purchase_log = U.purchase_log
@@ -87,7 +87,7 @@ GLOBAL_DATUM(uplink, /datum/uplink)
/datum/uplink_item/proc/extra_args(var/mob/user)
return 1
/datum/uplink_item/proc/can_buy_telecrystals(obj/item/device/uplink/U)
/datum/uplink_item/proc/can_buy_telecrystals(obj/item/uplink/U)
if(isnull(telecrystal_cost))
return FALSE
@@ -99,7 +99,7 @@ GLOBAL_DATUM(uplink, /datum/uplink)
return can_view(U)
/datum/uplink_item/proc/can_buy_bluecrystals(obj/item/device/uplink/U)
/datum/uplink_item/proc/can_buy_bluecrystals(obj/item/uplink/U)
if(isnull(bluecrystal_cost))
return FALSE
@@ -111,10 +111,10 @@ GLOBAL_DATUM(uplink, /datum/uplink)
return can_view(U)
/datum/uplink_item/proc/items_left(obj/item/device/uplink/U)
/datum/uplink_item/proc/items_left(obj/item/uplink/U)
return item_limit - U.purchase_log[src]
/datum/uplink_item/proc/can_view(obj/item/device/uplink/U)
/datum/uplink_item/proc/can_view(obj/item/uplink/U)
// Making the assumption that if no uplink was supplied, then we don't care about antag roles
if(!U || (!length(antag_roles) && !antag_job))
return TRUE
@@ -142,13 +142,13 @@ GLOBAL_DATUM(uplink, /datum/uplink)
return desc
// get_goods does not necessarily return physical objects, it is simply a way to acquire the uplink item without paying
/datum/uplink_item/proc/get_goods(var/obj/item/device/uplink/U, var/loc)
/datum/uplink_item/proc/get_goods(var/obj/item/uplink/U, var/loc)
return FALSE
/datum/uplink_item/proc/log_icon()
return
/datum/uplink_item/proc/purchase_log(obj/item/device/uplink/U)
/datum/uplink_item/proc/purchase_log(obj/item/uplink/U)
feedback_add_details("traitor_uplink_items_bought", "[src]")
log_and_message_admins("used \the [U.loc] to buy \a [src]")
U.purchase_log[src] = U.purchase_log[src] + 1
@@ -158,7 +158,7 @@ GLOBAL_DATUM(uplink, /datum/uplink)
* Physical Uplink Entries *
* *
********************************/
/datum/uplink_item/item/buy(var/obj/item/device/uplink/U, var/mob/user)
/datum/uplink_item/item/buy(var/obj/item/uplink/U, var/mob/user)
var/obj/item/I = ..()
if(!I)
return
@@ -172,7 +172,7 @@ GLOBAL_DATUM(uplink, /datum/uplink)
A.put_in_any_hand_if_possible(I)
return I
/datum/uplink_item/item/get_goods(var/obj/item/device/uplink/U, var/loc)
/datum/uplink_item/item/get_goods(var/obj/item/uplink/U, var/loc)
var/obj/I = new path(loc)
return I
@@ -204,7 +204,7 @@ GLOBAL_DATUM(uplink, /datum/uplink)
/****************
* Support procs *
****************/
/proc/get_random_uplink_items(var/obj/item/device/uplink/U, var/remaining_TC, var/loc)
/proc/get_random_uplink_items(var/obj/item/uplink/U, var/remaining_TC, var/loc)
var/list/bought_items = list()
while(remaining_TC)
var/datum/uplink_item/I = GLOB.default_uplink_selection.get_random_item(remaining_TC, U, bought_items)
+4 -4
View File
@@ -1,6 +1,6 @@
/datum/wires/radio
proper_name = "Radio"
holder_type = /obj/item/device/radio
holder_type = /obj/item/radio
/datum/wires/radio/New()
wires = list(
@@ -14,13 +14,13 @@
/datum/wires/radio/interactable(mob/user)
if(!..())
return FALSE
var/obj/item/device/radio/R = holder
var/obj/item/radio/R = holder
if(R.b_stat)
return TRUE
return FALSE
/datum/wires/radio/on_pulse(wire)
var/obj/item/device/radio/R = holder
var/obj/item/radio/R = holder
switch(wire)
if(WIRE_SIGNAL)
R.set_listening(!R.get_listening() && !is_cut(WIRE_RECEIVE))
@@ -34,7 +34,7 @@
SSnanoui.update_uis(holder)
/datum/wires/radio/on_cut(wire, mend, source)
var/obj/item/device/radio/R = holder
var/obj/item/radio/R = holder
switch(wire)
if(WIRE_SIGNAL)
R.set_listening(mend && !is_cut(WIRE_RECEIVE))
+5 -5
View File
@@ -56,7 +56,7 @@ GLOBAL_LIST_INIT(wire_name_directory, list())
holder = null
//properly clear refs to avoid harddels & other problems
for(var/color in assemblies)
var/obj/item/device/assembly/assembly = assemblies[color]
var/obj/item/assembly/assembly = assemblies[color]
assembly.holder = null
LAZYCLEARLIST(assemblies)
return ..()
@@ -171,13 +171,13 @@ GLOBAL_LIST_INIT(wire_name_directory, list())
/datum/wires/proc/pulse_color(color, mob/living/user, force=FALSE)
pulse(get_wire(color), user, force)
/datum/wires/proc/pulse_assembly(obj/item/device/assembly/signaler/S)
/datum/wires/proc/pulse_assembly(obj/item/assembly/signaler/S)
for(var/color in assemblies)
if(S == assemblies[color])
pulse_color(color, force=TRUE)
return TRUE
/datum/wires/proc/attach_assembly(color, obj/item/device/assembly/signaler/S)
/datum/wires/proc/attach_assembly(color, obj/item/assembly/signaler/S)
if(S && istype(S) && !is_attached(color))
assemblies[color] = S
S.forceMove(holder)
@@ -185,7 +185,7 @@ GLOBAL_LIST_INIT(wire_name_directory, list())
return S
/datum/wires/proc/detach_assembly(color)
var/obj/item/device/assembly/signaler/S = get_attached(color)
var/obj/item/assembly/signaler/S = get_attached(color)
if(S && istype(S))
assemblies -= color
S.connected = null
@@ -318,7 +318,7 @@ GLOBAL_LIST_INIT(wire_name_directory, list())
if("attach")
// Attach
if(!is_attached(target_wire))
var/obj/item/device/assembly/signaler/I = L.get_type_in_hands(/obj/item/device/assembly/signaler)
var/obj/item/assembly/signaler/I = L.get_type_in_hands(/obj/item/assembly/signaler)
if(!istype(I))
to_chat(usr, SPAN_WARNING("You do not have a signaler to attach!"))
return
+4 -4
View File
@@ -382,7 +382,7 @@
var/uses = 4.0
var/selfdestruct = 0.0
var/traitor_frequency = 0.0
var/obj/item/device/radio/origradio = null
var/obj/item/radio/origradio = null
obj_flags = OBJ_FLAG_CONDUCTABLE
slot_flags = SLOT_BELT
throwforce = 5
@@ -472,9 +472,9 @@
icon_state = "power_mod"
desc = "Charging circuits for power cells."
/obj/item/device/camera_bug
/obj/item/camera_bug
name = "camera bug"
icon = 'icons/obj/item/device/flash.dmi'
icon = 'icons/obj/item/flash.dmi'
icon_state = "flash"
item_state = "flash"
w_class = WEIGHT_CLASS_TINY
@@ -522,7 +522,7 @@
/obj/item/neuralbroke/attackby(obj/item/attacking_item, mob/user)
if(attacking_item.tool_behaviour == TOOL_SCREWDRIVER)
new /obj/item/device/encryptionkey/hivenet(user.loc)
new /obj/item/encryptionkey/hivenet(user.loc)
attacking_item.play_tool_sound(get_turf(src), 50)
to_chat(user, "You bypass the fried security chip and extract the encryption key.")
to_chat(user, "The fried neural socket crumbles away like dust.")
+7 -7
View File
@@ -42,21 +42,21 @@
return W
/datum/antagonist/proc/create_radio(var/freq, var/mob/living/carbon/human/player)
var/obj/item/device/radio/R
var/obj/item/radio/R
switch(freq)
if(NINJ_FREQ)
R = new /obj/item/device/radio/headset/ninja(player)
R = new /obj/item/radio/headset/ninja(player)
if(BLSP_FREQ)
R = new /obj/item/device/radio/headset/bluespace(player)
R = new /obj/item/radio/headset/bluespace(player)
if(BURG_FREQ)
R = new /obj/item/device/radio/headset/burglar(player)
R = new /obj/item/radio/headset/burglar(player)
if(SYND_FREQ)
R = new /obj/item/device/radio/headset/syndicate(player)
R = new /obj/item/radio/headset/syndicate(player)
if(RAID_FREQ)
R = new /obj/item/device/radio/headset/raider(player)
R = new /obj/item/radio/headset/raider(player)
else
R = new /obj/item/device/radio/headset(player)
R = new /obj/item/radio/headset(player)
R.set_frequency(freq)
R.set_frequency(freq)
+3 -3
View File
@@ -94,7 +94,7 @@
var/bluecrystal_uses = 0
var/uplink_true = 0
var/purchases = ""
for(var/obj/item/device/uplink/H in GLOB.world_uplinks)
for(var/obj/item/uplink/H in GLOB.world_uplinks)
if(H && H.uplink_owner && H.uplink_owner == ply)
telecrystal_uses += H.used_telecrystals
bluecrystal_uses += H.used_bluecrystals
@@ -109,7 +109,7 @@
/proc/print_ownerless_uplinks()
var/has_printed = 0
for(var/obj/item/device/uplink/H in GLOB.world_uplinks)
for(var/obj/item/uplink/H in GLOB.world_uplinks)
if(isnull(H.uplink_owner) && (H.used_telecrystals || H.used_bluecrystals))
if(!has_printed)
has_printed = 1
@@ -117,7 +117,7 @@
to_world("[H.loc] (used [H.used_telecrystals] TC and [H.used_bluecrystals] BC)")
to_world(get_uplink_purchases(H))
/proc/get_uplink_purchases(var/obj/item/device/uplink/H)
/proc/get_uplink_purchases(var/obj/item/uplink/H)
var/list/refined_log = new()
for(var/datum/uplink_item/UI in H.purchase_log)
refined_log.Add("[H.purchase_log[UI]]x[UI.log_icon()][UI.name]")
+2 -2
View File
@@ -54,8 +54,8 @@ GLOBAL_DATUM(loyalists, /datum/antagonist/loyalists)
if(!player.back)
player.equip_to_slot_or_del(new /obj/item/storage/backpack(player), slot_back) // if they have no backpack, spawn one
player.equip_to_slot_or_del(new /obj/item/device/announcer(player), slot_in_backpack)
player.equip_to_slot_or_del(new /obj/item/device/special_uplink/rev(player, player.mind), slot_in_backpack)
player.equip_to_slot_or_del(new /obj/item/announcer(player), slot_in_backpack)
player.equip_to_slot_or_del(new /obj/item/special_uplink/rev(player, player.mind), slot_in_backpack)
give_codewords(player)
INVOKE_ASYNC(src, PROC_REF(alert_loyalist_status), player)
@@ -65,8 +65,8 @@ GLOBAL_DATUM(revs, /datum/antagonist/revolutionary)
if(!player.back)
player.equip_to_slot_or_del(new /obj/item/storage/backpack/satchel(player), slot_back) // if they have no backpack, spawn one
player.equip_to_slot_or_del(new /obj/item/device/announcer(player), slot_in_backpack)
player.equip_to_slot_or_del(new /obj/item/device/special_uplink/rev(player, player.mind), slot_in_backpack)
player.equip_to_slot_or_del(new /obj/item/announcer(player), slot_in_backpack)
player.equip_to_slot_or_del(new /obj/item/special_uplink/rev(player, player.mind), slot_in_backpack)
give_codewords(player)
INVOKE_ASYNC(src, PROC_REF(alert_revolutionary_status), player)
+7 -7
View File
@@ -121,7 +121,7 @@ GLOBAL_DATUM(traitors, /datum/antagonist/traitor)
var/obj/item/R = locate() //Hide the uplink in a PDA if available, otherwise radio
if(traitor_mob.client.prefs.uplinklocation == "Headset")
R = locate(/obj/item/device/radio) in traitor_mob.contents
R = locate(/obj/item/radio) in traitor_mob.contents
if(!R)
R = locate(/obj/item/modular_computer/handheld) in traitor_mob.contents
to_chat(traitor_mob, "Could not locate a Radio, installing in PDA instead!")
@@ -130,7 +130,7 @@ GLOBAL_DATUM(traitors, /datum/antagonist/traitor)
else if(traitor_mob.client.prefs.uplinklocation == "PDA")
R = locate(/obj/item/modular_computer/handheld) in traitor_mob.contents
if(!R)
R = locate(/obj/item/device/radio) in traitor_mob.contents
R = locate(/obj/item/radio) in traitor_mob.contents
to_chat(traitor_mob, "Could not locate a PDA, installing into a Radio instead!")
if(!R)
to_chat(traitor_mob, "Unfortunately, neither a radio or a PDA relay could be installed.")
@@ -141,7 +141,7 @@ GLOBAL_DATUM(traitors, /datum/antagonist/traitor)
to_chat(traitor_mob, "You have not selected a location for your relay in the antagonist options! Defaulting to PDA!")
R = locate(/obj/item/modular_computer/handheld) in traitor_mob.contents
if (!R)
R = locate(/obj/item/device/radio) in traitor_mob.contents
R = locate(/obj/item/radio) in traitor_mob.contents
to_chat(traitor_mob, "Could not locate a PDA, installing into a Radio instead!")
if (!R)
to_chat(traitor_mob, "Unfortunately, neither a radio or a PDA relay could be installed.")
@@ -149,9 +149,9 @@ GLOBAL_DATUM(traitors, /datum/antagonist/traitor)
if(!R)
return
if(istype(R,/obj/item/device/radio))
if(istype(R,/obj/item/radio))
// generate list of radio freqs
var/obj/item/device/radio/target_radio = R
var/obj/item/radio/target_radio = R
var/freq = PUBLIC_LOW_FREQ
var/list/freqlist = list()
while (freq <= PUBLIC_HIGH_FREQ)
@@ -161,7 +161,7 @@ GLOBAL_DATUM(traitors, /datum/antagonist/traitor)
if ((freq % 2) == 0)
freq += 1
freq = freqlist[rand(1, freqlist.len)]
var/obj/item/device/uplink/hidden/T = new(R, traitor_mob.mind)
var/obj/item/uplink/hidden/T = new(R, traitor_mob.mind)
target_radio.hidden_uplink = T
target_radio.traitor_frequency = freq
to_chat(traitor_mob, "A portable object teleportation relay has been installed in your [R.name] [loc]. Simply dial the frequency [format_frequency(freq)] to unlock its hidden features.")
@@ -170,7 +170,7 @@ GLOBAL_DATUM(traitors, /datum/antagonist/traitor)
else if (istype(R, /obj/item/modular_computer))
// generate a passcode if the uplink is hidden in a PDA
var/pda_pass = "[rand(100,999)] [pick("Alpha","Bravo","Delta","Omega")]"
var/obj/item/device/uplink/hidden/T = new(R, traitor_mob.mind)
var/obj/item/uplink/hidden/T = new(R, traitor_mob.mind)
R.hidden_uplink = T
T.pda_code = pda_pass
to_chat(traitor_mob, "A portable object teleportation relay has been installed in your [R.name] [loc]. Simply enter the code \"[pda_pass]\" into the ringtone select to unlock its hidden features.")
+1 -1
View File
@@ -12,7 +12,7 @@
/obj/effect/overlay/cultify()
return
/obj/item/device/flashlight/lamp/cultify()
/obj/item/flashlight/lamp/cultify()
new /obj/structure/cult/pylon(get_turf(src))
qdel(src)
return "As you cast \the [src] into the forge, a great pylon grows beneath your feet, achieving its form in seconds."
+1 -1
View File
@@ -40,7 +40,7 @@
item_state = "cult_armor"
desc = "A bulky armored voidsuit, bristling with menacing spikes. It looks space proof."
w_class = WEIGHT_CLASS_NORMAL
allowed = list(/obj/item/book/tome, /obj/item/melee/cultblade, /obj/item/gun/energy/rifle/cult, /obj/item/tank, /obj/item/device/suit_cooling_unit)
allowed = list(/obj/item/book/tome, /obj/item/melee/cultblade, /obj/item/gun/energy/rifle/cult, /obj/item/tank, /obj/item/suit_cooling_unit)
slowdown = 1
armor = list(
MELEE = ARMOR_MELEE_VERY_HIGH,
+1 -1
View File
@@ -101,7 +101,7 @@
/datum/rune/convert/proc/shard_player(var/mob/living/target, atom/movable/A)
converting -= target
var/obj/item/device/soulstone/stone = new /obj/item/device/soulstone(get_turf(A))
var/obj/item/soulstone/stone = new /obj/item/soulstone(get_turf(A))
target.death()
stone.transfer_human(target)
var/mob/living/simple_animal/shade/shade = locate() in stone
+2 -2
View File
@@ -16,8 +16,8 @@
var/obj/item/organ/internal/brain/B = I
victims += B.brainmob
else if(istype(I,/obj/item/device/mmi))
var/obj/item/device/mmi/B = I
else if(istype(I,/obj/item/mmi))
var/obj/item/mmi/B = I
victims += B.brainmob
else if(istype(I,/obj/item/aicard))
@@ -4,6 +4,6 @@
/datum/rune/summon_soulstone/do_rune_action(mob/living/user, atom/movable/A)
user.say("N'ath reth sh'yro eth d'raggathnor!")
new /obj/item/device/soulstone(get_turf(A))
new /obj/item/soulstone(get_turf(A))
qdel(A)
return TRUE
@@ -73,7 +73,7 @@
to_chat(user, SPAN_WARNING("You are dead!"))
return
var/obj/item/device/radio/radio = new/obj/item/device/radio()
var/obj/item/radio/radio = new/obj/item/radio()
var/datum/weakref/nuke
//Time control for the self destruct
//It works in 3 stages:
@@ -222,9 +222,9 @@
name = "Spyglass"
desc = "A mundane spyglass, it may prove useful to those who wish to scout ahead, or fight from an extreme range."
cost = 100
obj_path = /obj/item/device/binoculars/spyglass
obj_path = /obj/item/binoculars/spyglass
/obj/item/device/binoculars/spyglass
/obj/item/binoculars/spyglass
name = "spyglass"
desc = "It's a hand-held telescope, useful for star-gazing, peeping, and recon."
icon_state = "spyglass"
+1 -1
View File
@@ -155,7 +155,7 @@
messengerbag_faction = /obj/item/storage/backpack/messenger/heph
backpack_contents = list(
/obj/item/device/camera = 1,
/obj/item/camera = 1,
/obj/item/gun/energy/pistol = 1,
/obj/item/stamp/hephaestus = 1
)
+3 -3
View File
@@ -195,7 +195,7 @@
name = "Curator - Idris"
jobtype = /datum/job/librarian
r_pocket = /obj/item/device/price_scanner
r_pocket = /obj/item/price_scanner
l_hand = null
/obj/outfit/job/librarian/idris/tech_support
@@ -205,7 +205,7 @@
l_pocket = /obj/item/modular_computer/handheld/preset/generic
r_pocket = /obj/item/card/tech_support
r_hand = /obj/item/storage/bag/circuits/basic
l_hand = /obj/item/device/debugger
l_hand = /obj/item/debugger
wrist = /obj/item/modular_computer/handheld/wristbound/preset/advanced/civilian
/obj/outfit/job/chaplain/idris
@@ -245,7 +245,7 @@
messengerbag_faction = /obj/item/storage/backpack/messenger/idris
backpack_contents = list(
/obj/item/device/camera = 1,
/obj/item/camera = 1,
/obj/item/gun/energy/pistol = 1,
/obj/item/stamp/idris = 1
)
+2 -2
View File
@@ -185,7 +185,7 @@
name = "Curator - Orion Express"
jobtype = /datum/job/librarian
r_pocket = /obj/item/device/price_scanner
r_pocket = /obj/item/price_scanner
l_hand = null
/obj/outfit/job/librarian/orion/tech_support
@@ -195,7 +195,7 @@
l_pocket = /obj/item/modular_computer/handheld/preset/generic
r_pocket = /obj/item/card/tech_support
r_hand = /obj/item/storage/bag/circuits/basic
l_hand = /obj/item/device/debugger
l_hand = /obj/item/debugger
wrist = /obj/item/modular_computer/handheld/wristbound/preset/advanced/civilian
/obj/outfit/job/journalist/orion
+1 -1
View File
@@ -271,7 +271,7 @@
messengerbag_faction = /obj/item/storage/backpack/messenger/zavod
backpack_contents = list(
/obj/item/device/camera = 1,
/obj/item/camera = 1,
/obj/item/gun/projectile/pistol = 1,
/obj/item/stamp/zavodskoi = 1
)
+1 -1
View File
@@ -240,7 +240,7 @@
messengerbag_faction = /obj/item/storage/backpack/messenger/zeng
backpack_contents = list(
/obj/item/device/camera = 1,
/obj/item/camera = 1,
/obj/item/gun/energy/pistol = 1,
/obj/item/stamp/zeng_hu = 1
)
+15 -15
View File
@@ -36,11 +36,11 @@ GLOBAL_DATUM_INIT(captain_announcement, /datum/announcement/minor, new(do_newsca
glasses = /obj/item/clothing/glasses/sunglasses
id = /obj/item/card/id/scc/gold/captain
headset = /obj/item/device/radio/headset/heads/captain
bowman = /obj/item/device/radio/headset/heads/captain/alt
double_headset = /obj/item/device/radio/headset/alt/double/captain
wrist_radio = /obj/item/device/radio/headset/wrist/captain
clipon_radio = /obj/item/device/radio/headset/wrist/clip/captain
headset = /obj/item/radio/headset/heads/captain
bowman = /obj/item/radio/headset/heads/captain/alt
double_headset = /obj/item/radio/headset/alt/double/captain
wrist_radio = /obj/item/radio/headset/wrist/captain
clipon_radio = /obj/item/radio/headset/wrist/clip/captain
tab_pda = /obj/item/modular_computer/handheld/pda/command/captain
wristbound = /obj/item/modular_computer/handheld/wristbound/preset/pda/command/captain
@@ -123,11 +123,11 @@ GLOBAL_DATUM_INIT(captain_announcement, /datum/announcement/minor, new(do_newsca
shoes = /obj/item/clothing/shoes/laceup/brown
id = /obj/item/card/id/scc/silver
headset = /obj/item/device/radio/headset/heads/xo
bowman = /obj/item/device/radio/headset/heads/xo/alt
double_headset = /obj/item/device/radio/headset/alt/double/xo
wrist_radio = /obj/item/device/radio/headset/wrist/xo
clipon_radio = /obj/item/device/radio/headset/wrist/clip/xo
headset = /obj/item/radio/headset/heads/xo
bowman = /obj/item/radio/headset/heads/xo/alt
double_headset = /obj/item/radio/headset/alt/double/xo
wrist_radio = /obj/item/radio/headset/wrist/xo
clipon_radio = /obj/item/radio/headset/wrist/clip/xo
tab_pda = /obj/item/modular_computer/handheld/pda/command/xo
wristbound = /obj/item/modular_computer/handheld/wristbound/preset/pda/command/xo
@@ -181,11 +181,11 @@ GLOBAL_DATUM_INIT(captain_announcement, /datum/announcement/minor, new(do_newsca
shoes = /obj/item/clothing/shoes/laceup
id = /obj/item/card/id/scc/bridge
headset = /obj/item/device/radio/headset/headset_com
bowman = /obj/item/device/radio/headset/headset_com/alt
double_headset = /obj/item/device/radio/headset/alt/double/command
wrist_radio = /obj/item/device/radio/headset/wrist/command
clipon_radio = /obj/item/device/radio/headset/wrist/clip/command
headset = /obj/item/radio/headset/headset_com
bowman = /obj/item/radio/headset/headset_com/alt
double_headset = /obj/item/radio/headset/alt/double/command
wrist_radio = /obj/item/radio/headset/wrist/command
clipon_radio = /obj/item/radio/headset/wrist/clip/command
messengerbag = /obj/item/storage/backpack/messenger/com
tab_pda = /obj/item/modular_computer/handheld/pda/bridge
+53 -53
View File
@@ -34,11 +34,11 @@
wristbound = /obj/item/modular_computer/handheld/wristbound/preset/pda/civilian/bartender
tablet = /obj/item/modular_computer/handheld/preset/civilian/bartender
headset = /obj/item/device/radio/headset/headset_service
bowman = /obj/item/device/radio/headset/headset_service/alt
double_headset = /obj/item/device/radio/headset/alt/double/service
wrist_radio = /obj/item/device/radio/headset/wrist/service
clipon_radio = /obj/item/device/radio/headset/wrist/clip/service
headset = /obj/item/radio/headset/headset_service
bowman = /obj/item/radio/headset/headset_service/alt
double_headset = /obj/item/radio/headset/alt/double/service
wrist_radio = /obj/item/radio/headset/wrist/service
clipon_radio = /obj/item/radio/headset/wrist/clip/service
backpack_faction = /obj/item/storage/backpack/nt
satchel_faction = /obj/item/storage/backpack/satchel/nt
@@ -81,11 +81,11 @@
wristbound = /obj/item/modular_computer/handheld/wristbound/preset/pda/civilian
tablet = /obj/item/modular_computer/handheld/preset/civilian
headset = /obj/item/device/radio/headset/headset_service
bowman = /obj/item/device/radio/headset/headset_service/alt
double_headset = /obj/item/device/radio/headset/alt/double/service
wrist_radio = /obj/item/device/radio/headset/wrist/service
clipon_radio = /obj/item/device/radio/headset/wrist/clip/service
headset = /obj/item/radio/headset/headset_service
bowman = /obj/item/radio/headset/headset_service/alt
double_headset = /obj/item/radio/headset/alt/double/service
wrist_radio = /obj/item/radio/headset/wrist/service
clipon_radio = /obj/item/radio/headset/wrist/clip/service
backpack_faction = /obj/item/storage/backpack/nt
satchel_faction = /obj/item/storage/backpack/satchel/nt
@@ -132,11 +132,11 @@
wristbound = /obj/item/modular_computer/handheld/wristbound/preset/pda/civilian
tablet = /obj/item/modular_computer/handheld/preset/civilian
headset = /obj/item/device/radio/headset/headset_service
bowman = /obj/item/device/radio/headset/headset_service/alt
double_headset = /obj/item/device/radio/headset/alt/double/service
wrist_radio = /obj/item/device/radio/headset/wrist/service
clipon_radio = /obj/item/device/radio/headset/wrist/clip/service
headset = /obj/item/radio/headset/headset_service
bowman = /obj/item/radio/headset/headset_service/alt
double_headset = /obj/item/radio/headset/alt/double/service
wrist_radio = /obj/item/radio/headset/wrist/service
clipon_radio = /obj/item/radio/headset/wrist/clip/service
backpack = /obj/item/storage/backpack/hydroponics
backpack_faction = /obj/item/storage/backpack/nt
@@ -184,11 +184,11 @@
wristbound = /obj/item/modular_computer/handheld/wristbound/preset/pda/civilian/janitor
tablet = /obj/item/modular_computer/handheld/preset/civilian/janitor
headset = /obj/item/device/radio/headset/headset_service
bowman = /obj/item/device/radio/headset/headset_service/alt
double_headset = /obj/item/device/radio/headset/alt/double/service
wrist_radio = /obj/item/device/radio/headset/wrist/service
clipon_radio = /obj/item/device/radio/headset/wrist/clip/service
headset = /obj/item/radio/headset/headset_service
bowman = /obj/item/radio/headset/headset_service/alt
double_headset = /obj/item/radio/headset/alt/double/service
wrist_radio = /obj/item/radio/headset/wrist/service
clipon_radio = /obj/item/radio/headset/wrist/clip/service
backpack_faction = /obj/item/storage/backpack/nt
satchel_faction = /obj/item/storage/backpack/satchel/nt
@@ -227,11 +227,11 @@
wristbound = /obj/item/modular_computer/handheld/wristbound/preset/pda/civilian/librarian
tablet = /obj/item/modular_computer/handheld/preset/civilian/librarian
headset = /obj/item/device/radio/headset/headset_service
bowman = /obj/item/device/radio/headset/headset_service/alt
double_headset = /obj/item/device/radio/headset/alt/double/service
wrist_radio = /obj/item/device/radio/headset/wrist/service
clipon_radio = /obj/item/device/radio/headset/wrist/clip/service
headset = /obj/item/radio/headset/headset_service
bowman = /obj/item/radio/headset/headset_service/alt
double_headset = /obj/item/radio/headset/alt/double/service
wrist_radio = /obj/item/radio/headset/wrist/service
clipon_radio = /obj/item/radio/headset/wrist/clip/service
backpack_faction = /obj/item/storage/backpack/nt
satchel_faction = /obj/item/storage/backpack/satchel/nt
@@ -243,7 +243,7 @@
jobtype = /datum/job/librarian
uniform = /obj/item/clothing/under/suit_jacket
r_pocket = /obj/item/device/price_scanner
r_pocket = /obj/item/price_scanner
l_hand = null
/obj/outfit/job/librarian/tech_support
@@ -254,7 +254,7 @@
l_pocket = /obj/item/modular_computer/handheld/preset/generic
r_pocket = /obj/item/card/tech_support
r_hand = /obj/item/storage/bag/circuits/basic
l_hand = /obj/item/device/debugger
l_hand = /obj/item/debugger
wrist = /obj/item/modular_computer/handheld/wristbound/preset/advanced/civilian
/obj/outfit/job/librarian/tech_support/equip(mob/living/carbon/human/H, visualsOnly = FALSE)
@@ -287,11 +287,11 @@
uniform = /obj/item/clothing/under/rank/chaplain
shoes = /obj/item/clothing/shoes/sneakers/black
headset = /obj/item/device/radio/headset/headset_service
bowman = /obj/item/device/radio/headset/headset_service/alt
double_headset = /obj/item/device/radio/headset/alt/double/service
wrist_radio = /obj/item/device/radio/headset/wrist/service
clipon_radio = /obj/item/device/radio/headset/wrist/clip/service
headset = /obj/item/radio/headset/headset_service
bowman = /obj/item/radio/headset/headset_service/alt
double_headset = /obj/item/radio/headset/alt/double/service
wrist_radio = /obj/item/radio/headset/wrist/service
clipon_radio = /obj/item/radio/headset/wrist/clip/service
tab_pda = /obj/item/modular_computer/handheld/pda/civilian/chaplain
wristbound = /obj/item/modular_computer/handheld/wristbound/preset/pda/civilian/chaplain
@@ -311,7 +311,7 @@
var/datum/religion/religion = SSrecords.religions[H.religion]
if (religion)
if(religion.unique_book_path)
var/obj/item/device/versebook/U = new religion.unique_book_path(get_turf(H))
var/obj/item/versebook/U = new religion.unique_book_path(get_turf(H))
var/obj/item/storage/S = locate() in H.contents
if(S && istype(S))
U.forceMove(S)
@@ -375,11 +375,11 @@
wristbound = /obj/item/modular_computer/handheld/wristbound/preset/pda/supply/om
tablet = /obj/item/modular_computer/handheld/preset/supply/om
headset = /obj/item/device/radio/headset/operations_manager
bowman = /obj/item/device/radio/headset/operations_manager/alt
double_headset = /obj/item/device/radio/headset/alt/double/operations_manager
wrist_radio = /obj/item/device/radio/headset/wrist/cargo/operations_manager
clipon_radio = /obj/item/device/radio/headset/wrist/clip/cargo/operations_manager
headset = /obj/item/radio/headset/operations_manager
bowman = /obj/item/radio/headset/operations_manager/alt
double_headset = /obj/item/radio/headset/alt/double/operations_manager
wrist_radio = /obj/item/radio/headset/wrist/cargo/operations_manager
clipon_radio = /obj/item/radio/headset/wrist/clip/cargo/operations_manager
backpack = /obj/item/storage/backpack/om
satchel = /obj/item/storage/backpack/satchel/om
@@ -426,11 +426,11 @@
wristbound = /obj/item/modular_computer/handheld/wristbound/preset/pda/supply
tablet = /obj/item/modular_computer/handheld/preset/supply
headset = /obj/item/device/radio/headset/headset_cargo
bowman = /obj/item/device/radio/headset/headset_cargo/alt
double_headset = /obj/item/device/radio/headset/alt/double/cargo
wrist_radio = /obj/item/device/radio/headset/wrist/cargo
clipon_radio = /obj/item/device/radio/headset/wrist/clip/cargo
headset = /obj/item/radio/headset/headset_cargo
bowman = /obj/item/radio/headset/headset_cargo/alt
double_headset = /obj/item/radio/headset/alt/double/cargo
wrist_radio = /obj/item/radio/headset/wrist/cargo
clipon_radio = /obj/item/radio/headset/wrist/clip/cargo
/datum/job/mining
title = "Shaft Miner"
@@ -473,11 +473,11 @@
wristbound = /obj/item/modular_computer/handheld/wristbound/preset/pda/supply/miner
tablet = /obj/item/modular_computer/handheld/preset/civilian
headset = /obj/item/device/radio/headset/headset_mining
bowman = /obj/item/device/radio/headset/headset_mining/alt
double_headset = /obj/item/device/radio/headset/alt/double/mining
wrist_radio = /obj/item/device/radio/headset/wrist/cargo/mining
clipon_radio = /obj/item/device/radio/headset/wrist/clip/cargo/mining
headset = /obj/item/radio/headset/headset_mining
bowman = /obj/item/radio/headset/headset_mining/alt
double_headset = /obj/item/radio/headset/alt/double/mining
wrist_radio = /obj/item/radio/headset/wrist/cargo/mining
clipon_radio = /obj/item/radio/headset/wrist/clip/cargo/mining
backpack_contents = list(
/obj/item/storage/bag/ore = 1
@@ -534,11 +534,11 @@
wristbound = /obj/item/modular_computer/handheld/wristbound/preset/pda/supply/machinist
tablet = /obj/item/modular_computer/handheld/preset/supply/machinist
headset = /obj/item/device/radio/headset/headset_cargo
bowman = /obj/item/device/radio/headset/headset_cargo/alt
double_headset = /obj/item/device/radio/headset/alt/double/cargo
wrist_radio = /obj/item/device/radio/headset/wrist/cargo
clipon_radio = /obj/item/device/radio/headset/wrist/clip/cargo
headset = /obj/item/radio/headset/headset_cargo
bowman = /obj/item/radio/headset/headset_cargo/alt
double_headset = /obj/item/radio/headset/alt/double/cargo
wrist_radio = /obj/item/radio/headset/wrist/cargo
clipon_radio = /obj/item/radio/headset/wrist/clip/cargo
belt_contents = list(
/obj/item/screwdriver = 1,
+31 -31
View File
@@ -46,13 +46,13 @@
belt = /obj/item/storage/belt/utility/ce
id = /obj/item/card/id/scc/silver
shoes = null
r_pocket = /obj/item/device/t_scanner
r_pocket = /obj/item/t_scanner
headset = /obj/item/device/radio/headset/heads/ce
bowman = /obj/item/device/radio/headset/heads/ce/alt
double_headset = /obj/item/device/radio/headset/alt/double/ce
wrist_radio = /obj/item/device/radio/headset/wrist/ce
clipon_radio = /obj/item/device/radio/headset/wrist/clip/ce
headset = /obj/item/radio/headset/heads/ce
bowman = /obj/item/radio/headset/heads/ce/alt
double_headset = /obj/item/radio/headset/alt/double/ce
wrist_radio = /obj/item/radio/headset/wrist/ce
clipon_radio = /obj/item/radio/headset/wrist/clip/ce
tab_pda = /obj/item/modular_computer/handheld/pda/engineering/ce
wristbound = /obj/item/modular_computer/handheld/wristbound/preset/pda/engineering/ce
@@ -113,13 +113,13 @@
belt = /obj/item/storage/belt/utility
id = /obj/item/card/id/silver
shoes = null
r_pocket = /obj/item/device/t_scanner
r_pocket = /obj/item/t_scanner
headset = /obj/item/device/radio/headset/headset_eng
bowman = /obj/item/device/radio/headset/headset_eng/alt
double_headset = /obj/item/device/radio/headset/alt/double/eng
wrist_radio = /obj/item/device/radio/headset/wrist/eng
clipon_radio = /obj/item/device/radio/headset/wrist/clip/eng
headset = /obj/item/radio/headset/headset_eng
bowman = /obj/item/radio/headset/headset_eng/alt
double_headset = /obj/item/radio/headset/alt/double/eng
wrist_radio = /obj/item/radio/headset/wrist/eng
clipon_radio = /obj/item/radio/headset/wrist/clip/eng
tab_pda = /obj/item/modular_computer/handheld/pda/engineering
wristbound = /obj/item/modular_computer/handheld/wristbound/preset/pda/engineering
@@ -186,11 +186,11 @@
id = /obj/item/card/id/silver
shoes = null
headset = /obj/item/device/radio/headset/headset_eng
bowman = /obj/item/device/radio/headset/headset_eng/alt
double_headset = /obj/item/device/radio/headset/alt/double/eng
wrist_radio = /obj/item/device/radio/headset/wrist/eng
clipon_radio = /obj/item/device/radio/headset/wrist/clip/eng
headset = /obj/item/radio/headset/headset_eng
bowman = /obj/item/radio/headset/headset_eng/alt
double_headset = /obj/item/radio/headset/alt/double/eng
wrist_radio = /obj/item/radio/headset/wrist/eng
clipon_radio = /obj/item/radio/headset/wrist/clip/eng
backpack = /obj/item/storage/backpack/industrial
satchel = /obj/item/storage/backpack/satchel/eng
@@ -207,8 +207,8 @@
/obj/item/weldingtool = 1,
/obj/item/crowbar = 1,
/obj/item/wirecutters = 1,
/obj/item/device/t_scanner = 1,
/obj/item/device/analyzer = 1,
/obj/item/t_scanner = 1,
/obj/item/analyzer = 1,
/obj/item/pipewrench = 1
)
@@ -268,11 +268,11 @@
/obj/item/stack/cable_coil/random = 1
)
headset = /obj/item/device/radio/headset/headset_eng
bowman = /obj/item/device/radio/headset/headset_eng/alt
double_headset = /obj/item/device/radio/headset/alt/double/eng
wrist_radio = /obj/item/device/radio/headset/wrist/eng
clipon_radio = /obj/item/device/radio/headset/wrist/clip/eng
headset = /obj/item/radio/headset/headset_eng
bowman = /obj/item/radio/headset/headset_eng/alt
double_headset = /obj/item/radio/headset/alt/double/eng
wrist_radio = /obj/item/radio/headset/wrist/eng
clipon_radio = /obj/item/radio/headset/wrist/clip/eng
backpack = /obj/item/storage/backpack/industrial
satchel = /obj/item/storage/backpack/satchel/eng
@@ -299,16 +299,16 @@
/obj/item/weldingtool = 1,
/obj/item/crowbar = 1,
/obj/item/wirecutters = 1,
/obj/item/device/t_scanner = 1,
/obj/item/device/analyzer = 1,
/obj/item/t_scanner = 1,
/obj/item/analyzer = 1,
/obj/item/pipewrench = 1
)
headset = /obj/item/device/radio/headset/headset_eng
bowman = /obj/item/device/radio/headset/headset_eng/alt
double_headset = /obj/item/device/radio/headset/alt/double/eng
wrist_radio = /obj/item/device/radio/headset/wrist/eng
clipon_radio = /obj/item/device/radio/headset/wrist/clip/eng
headset = /obj/item/radio/headset/headset_eng
bowman = /obj/item/radio/headset/headset_eng/alt
double_headset = /obj/item/radio/headset/alt/double/eng
wrist_radio = /obj/item/radio/headset/wrist/eng
clipon_radio = /obj/item/radio/headset/wrist/clip/eng
backpack = /obj/item/storage/backpack/industrial
satchel = /obj/item/storage/backpack/satchel/eng
+6 -6
View File
@@ -69,11 +69,11 @@
belt = /obj/item/storage/belt/medical/paramedic
belt_contents = list(
/obj/item/reagent_containers/hypospray = 1,
/obj/item/device/healthanalyzer = 1
/obj/item/healthanalyzer = 1
)
glasses = /obj/item/clothing/glasses/hud/health
gloves = /obj/item/clothing/gloves/latex/nitrile
r_ear = /obj/item/device/flashlight/pen
r_ear = /obj/item/flashlight/pen
species_gloves = list(
SPECIES_UNATHI = /obj/item/clothing/gloves/latex/nitrile/unathi,
SPECIES_TAJARA = /obj/item/clothing/gloves/latex/nitrile/tajara,
@@ -129,7 +129,7 @@
/obj/item/crowbar = 1,
/obj/item/wirecutters = 1,
/obj/item/stack/cable_coil/random = 1,
/obj/item/device/multitool = 1,
/obj/item/multitool = 1,
/obj/item/hammer = 1
)
@@ -162,9 +162,9 @@
name = "Research Personnel"
backpack_contents = list(
/obj/item/storage/box/survival = 1,
/obj/item/device/camera = 1,
/obj/item/device/camera_film = 2,
/obj/item/device/taperecorder = 1
/obj/item/camera = 1,
/obj/item/camera_film = 2,
/obj/item/taperecorder = 1
)
belt = /obj/item/storage/belt/archaeology/full
+5 -5
View File
@@ -47,17 +47,17 @@
head = /obj/item/clothing/head/beret/scc/alt
belt = /obj/item/melee/telebaton
headset = /obj/item/device/radio/headset/representative
bowman = /obj/item/device/radio/headset/representative/alt
double_headset = /obj/item/device/radio/headset/alt/double/command/representative
wrist_radio = /obj/item/device/radio/headset/wrist/command/representative
headset = /obj/item/radio/headset/representative
bowman = /obj/item/radio/headset/representative/alt
double_headset = /obj/item/radio/headset/alt/double/command/representative
wrist_radio = /obj/item/radio/headset/wrist/command/representative
tab_pda = /obj/item/modular_computer/handheld/pda/civilian/lawyer
wristbound = /obj/item/modular_computer/handheld/wristbound/preset/pda/civilian/lawyer
tablet = /obj/item/modular_computer/handheld/preset/civilian/lawyer
l_pocket = /obj/item/reagent_containers/spray/pepper
r_pocket = /obj/item/device/taperecorder/cciaa
r_pocket = /obj/item/taperecorder/cciaa
l_hand = /obj/item/storage/lockbox/cciaa
id = /obj/item/card/id/scc/gold
+5 -5
View File
@@ -353,11 +353,11 @@
back = /obj/item/storage/backpack
shoes = /obj/item/clothing/shoes/sneakers/black
headset = /obj/item/device/radio/headset
bowman = /obj/item/device/radio/headset/alt
double_headset = /obj/item/device/radio/headset/alt/double
wrist_radio = /obj/item/device/radio/headset/wrist
clipon_radio = /obj/item/device/radio/headset/wrist/clip
headset = /obj/item/radio/headset
bowman = /obj/item/radio/headset/alt
double_headset = /obj/item/radio/headset/alt/double
wrist_radio = /obj/item/radio/headset/wrist
clipon_radio = /obj/item/radio/headset/wrist/clip
tab_pda = /obj/item/modular_computer/handheld/pda/civilian
wristbound = /obj/item/modular_computer/handheld/wristbound/preset/pda/civilian
+32 -32
View File
@@ -41,16 +41,16 @@
uniform = /obj/item/clothing/under/rank/chief_medical_officer
suit = /obj/item/clothing/suit/storage/toggle/labcoat/cmo
suit_store = /obj/item/device/flashlight/pen
suit_store = /obj/item/flashlight/pen
shoes = /obj/item/clothing/shoes/sneakers/brown
id = /obj/item/card/id/scc/silver
l_hand = /obj/item/storage/firstaid/adv
headset = /obj/item/device/radio/headset/heads/cmo
bowman = /obj/item/device/radio/headset/heads/cmo/alt
double_headset = /obj/item/device/radio/headset/alt/double/cmo
wrist_radio = /obj/item/device/radio/headset/wrist/cmo
clipon_radio = /obj/item/device/radio/headset/wrist/clip/cmo
headset = /obj/item/radio/headset/heads/cmo
bowman = /obj/item/radio/headset/heads/cmo/alt
double_headset = /obj/item/radio/headset/alt/double/cmo
wrist_radio = /obj/item/radio/headset/wrist/cmo
clipon_radio = /obj/item/radio/headset/wrist/clip/cmo
tab_pda = /obj/item/modular_computer/handheld/pda/medical/cmo
wristbound = /obj/item/modular_computer/handheld/wristbound/preset/pda/medical/cmo
@@ -117,13 +117,13 @@
suit = /obj/item/clothing/suit/storage/toggle/labcoat/nt
shoes = /obj/item/clothing/shoes/sneakers/medsci
id = /obj/item/card/id/white
suit_store = /obj/item/device/flashlight/pen
suit_store = /obj/item/flashlight/pen
headset = /obj/item/device/radio/headset/headset_med
bowman = /obj/item/device/radio/headset/headset_med/alt
double_headset = /obj/item/device/radio/headset/alt/double/med
wrist_radio = /obj/item/device/radio/headset/wrist/med
clipon_radio = /obj/item/device/radio/headset/wrist/clip/med
headset = /obj/item/radio/headset/headset_med
bowman = /obj/item/radio/headset/headset_med/alt
double_headset = /obj/item/radio/headset/alt/double/med
wrist_radio = /obj/item/radio/headset/wrist/med
clipon_radio = /obj/item/radio/headset/wrist/clip/med
tab_pda = /obj/item/modular_computer/handheld/pda/medical
wristbound = /obj/item/modular_computer/handheld/wristbound/preset/pda/medical
@@ -182,11 +182,11 @@
shoes = /obj/item/clothing/shoes/sneakers/medsci
id = /obj/item/card/id/white
headset = /obj/item/device/radio/headset/headset_med
bowman = /obj/item/device/radio/headset/headset_med/alt
double_headset = /obj/item/device/radio/headset/alt/double/med
wrist_radio = /obj/item/device/radio/headset/wrist/med
clipon_radio = /obj/item/device/radio/headset/wrist/clip/med
headset = /obj/item/radio/headset/headset_med
bowman = /obj/item/radio/headset/headset_med/alt
double_headset = /obj/item/radio/headset/alt/double/med
wrist_radio = /obj/item/radio/headset/wrist/med
clipon_radio = /obj/item/radio/headset/wrist/clip/med
tab_pda = /obj/item/modular_computer/handheld/pda/medical
wristbound = /obj/item/modular_computer/handheld/wristbound/preset/pda/medical
@@ -236,11 +236,11 @@
shoes = /obj/item/clothing/shoes/sneakers/medsci
id = /obj/item/card/id/white
headset = /obj/item/device/radio/headset/headset_med
bowman = /obj/item/device/radio/headset/headset_med/alt
double_headset = /obj/item/device/radio/headset/alt/double/med
wrist_radio = /obj/item/device/radio/headset/wrist/med
clipon_radio = /obj/item/device/radio/headset/wrist/clip/med
headset = /obj/item/radio/headset/headset_med
bowman = /obj/item/radio/headset/headset_med/alt
double_headset = /obj/item/radio/headset/alt/double/med
wrist_radio = /obj/item/radio/headset/wrist/med
clipon_radio = /obj/item/radio/headset/wrist/clip/med
tab_pda = /obj/item/modular_computer/handheld/pda/medical/psych
wristbound = /obj/item/modular_computer/handheld/wristbound/preset/pda/medical/psych
@@ -294,11 +294,11 @@
shoes = /obj/item/clothing/shoes/jackboots
id = /obj/item/card/id/white
headset = /obj/item/device/radio/headset/headset_med
bowman = /obj/item/device/radio/headset/headset_med/alt
double_headset = /obj/item/device/radio/headset/alt/double/med
wrist_radio = /obj/item/device/radio/headset/wrist/med
clipon_radio = /obj/item/device/radio/headset/wrist/clip/med
headset = /obj/item/radio/headset/headset_med
bowman = /obj/item/radio/headset/headset_med/alt
double_headset = /obj/item/radio/headset/alt/double/med
wrist_radio = /obj/item/radio/headset/wrist/med
clipon_radio = /obj/item/radio/headset/wrist/clip/med
tab_pda = /obj/item/modular_computer/handheld/pda/medical
wristbound = /obj/item/modular_computer/handheld/wristbound/preset/pda/medical
@@ -365,11 +365,11 @@
uniform = /obj/item/clothing/under/rank/medical/intern
shoes = /obj/item/clothing/shoes/sneakers/medsci
headset = /obj/item/device/radio/headset/headset_med
bowman = /obj/item/device/radio/headset/headset_med/alt
double_headset = /obj/item/device/radio/headset/alt/double/med
wrist_radio = /obj/item/device/radio/headset/wrist/med
clipon_radio = /obj/item/device/radio/headset/wrist/clip/med
headset = /obj/item/radio/headset/headset_med
bowman = /obj/item/radio/headset/headset_med/alt
double_headset = /obj/item/radio/headset/alt/double/med
wrist_radio = /obj/item/radio/headset/wrist/med
clipon_radio = /obj/item/radio/headset/wrist/clip/med
backpack = /obj/item/storage/backpack/medic
backpack_faction = /obj/item/storage/backpack/nt
+2 -2
View File
@@ -44,7 +44,7 @@
tab_pda = /obj/item/modular_computer/handheld/pda/civilian/merchant
wristbound = /obj/item/modular_computer/handheld/wristbound/preset/pda/civilian
tablet = /obj/item/modular_computer/handheld/preset/civilian
r_pocket = /obj/item/device/price_scanner
r_pocket = /obj/item/price_scanner
/obj/outfit/merchant_assistant
name = "Merchant's Assistant"
@@ -52,7 +52,7 @@
tab_pda = /obj/item/modular_computer/handheld/pda/civilian/merchant
wristbound = /obj/item/modular_computer/handheld/wristbound/preset/pda/civilian
tablet = /obj/item/modular_computer/handheld/preset/civilian
r_pocket = /obj/item/device/price_scanner
r_pocket = /obj/item/price_scanner
belt = /obj/item/storage/belt/utility/full
uniform = list(
/obj/item/clothing/under/suit_jacket/charcoal,
+29 -29
View File
@@ -38,11 +38,11 @@
wristbound = /obj/item/modular_computer/handheld/wristbound/preset/pda/civilian/librarian
tablet = /obj/item/modular_computer/handheld/preset/civilian/librarian
headset = /obj/item/device/radio/headset/headset_service
bowman = /obj/item/device/radio/headset/headset_service/alt
double_headset = /obj/item/device/radio/headset/alt/double/service
wrist_radio = /obj/item/device/radio/headset/wrist/service
clipon_radio = /obj/item/device/radio/headset/wrist/clip/service
headset = /obj/item/radio/headset/headset_service
bowman = /obj/item/radio/headset/headset_service/alt
double_headset = /obj/item/radio/headset/alt/double/service
wrist_radio = /obj/item/radio/headset/wrist/service
clipon_radio = /obj/item/radio/headset/wrist/clip/service
backpack_faction = /obj/item/storage/backpack/nt
satchel_faction = /obj/item/storage/backpack/satchel/nt
@@ -51,7 +51,7 @@
backpack_contents = list(
/obj/item/clothing/accessory/badge/press = 1,
/obj/item/device/tvcamera = 1
/obj/item/tvcamera = 1
)
/obj/outfit/job/journalistf
@@ -67,7 +67,7 @@
backpack_contents = list(
/obj/item/clothing/accessory/badge/press/independent = 1,
/obj/item/device/tvcamera = 1
/obj/item/tvcamera = 1
)
/datum/job/representative
@@ -143,16 +143,16 @@
tablet = /obj/item/modular_computer/handheld/preset/civilian/lawyer
shoes = /obj/item/clothing/shoes/laceup
glasses = /obj/item/clothing/glasses/sunglasses/big
headset = /obj/item/device/radio/headset/representative
bowman = /obj/item/device/radio/headset/representative/alt
double_headset = /obj/item/device/radio/headset/alt/double/command/representative
wrist_radio = /obj/item/device/radio/headset/wrist/command/representative
clipon_radio = /obj/item/device/radio/headset/wrist/clip/command/representative
headset = /obj/item/radio/headset/representative
bowman = /obj/item/radio/headset/representative/alt
double_headset = /obj/item/radio/headset/alt/double/command/representative
wrist_radio = /obj/item/radio/headset/wrist/command/representative
clipon_radio = /obj/item/radio/headset/wrist/clip/command/representative
accessory = /obj/item/clothing/accessory/tie/corporate
suit_accessory = /obj/item/clothing/accessory/pin/corporate
backpack_contents = list(
/obj/item/device/camera = 1,
/obj/item/camera = 1,
/obj/item/gun/energy/pistol = 1
)
@@ -234,7 +234,7 @@
head = null
suit = null
backpack_contents = list(
/obj/item/device/camera = 1,
/obj/item/camera = 1,
/obj/item/gun/energy/pistol = 1
)
implants = null
@@ -338,11 +338,11 @@
tablet = /obj/item/modular_computer/handheld/preset/civilian/lawyer
shoes = /obj/item/clothing/shoes/laceup
glasses = /obj/item/clothing/glasses/sunglasses/big
headset = /obj/item/device/radio/headset/representative
bowman = /obj/item/device/radio/headset/representative/alt
double_headset = /obj/item/device/radio/headset/alt/double/command/representative
wrist_radio = /obj/item/device/radio/headset/wrist/command/representative
clipon_radio = /obj/item/device/radio/headset/wrist/clip/command/representative
headset = /obj/item/radio/headset/representative
bowman = /obj/item/radio/headset/representative/alt
double_headset = /obj/item/radio/headset/alt/double/command/representative
wrist_radio = /obj/item/radio/headset/wrist/command/representative
clipon_radio = /obj/item/radio/headset/wrist/clip/command/representative
/datum/job/diplomatic_aide/after_spawn(mob/living/carbon/human/H)
LAZYDISTINCTADD(blacklisted_citizenship, H.citizenship)
@@ -385,11 +385,11 @@
tablet = /obj/item/modular_computer/handheld/preset/civilian/lawyer
shoes = /obj/item/clothing/shoes/laceup
glasses = /obj/item/clothing/glasses/sunglasses/big
headset = /obj/item/device/radio/headset/representative
bowman = /obj/item/device/radio/headset/representative/alt
double_headset = /obj/item/device/radio/headset/alt/double/command/representative
wrist_radio = /obj/item/device/radio/headset/wrist/command/representative
clipon_radio = /obj/item/device/radio/headset/wrist/clip/command/representative
headset = /obj/item/radio/headset/representative
bowman = /obj/item/radio/headset/representative/alt
double_headset = /obj/item/radio/headset/alt/double/command/representative
wrist_radio = /obj/item/radio/headset/wrist/command/representative
clipon_radio = /obj/item/radio/headset/wrist/clip/command/representative
/datum/job/diplomatic_bodyguard/after_spawn(mob/living/carbon/human/H)
LAZYDISTINCTADD(blacklisted_citizenship, H.citizenship)
@@ -429,8 +429,8 @@
wristbound = /obj/item/modular_computer/handheld/wristbound/preset/pda/civilian/lawyer
tablet = /obj/item/modular_computer/handheld/preset/civilian/lawyer
shoes = /obj/item/clothing/shoes/laceup
headset = /obj/item/device/radio/headset/representative
bowman = /obj/item/device/radio/headset/representative/alt
double_headset = /obj/item/device/radio/headset/alt/double/command/representative
wrist_radio = /obj/item/device/radio/headset/wrist/command/representative
clipon_radio = /obj/item/device/radio/headset/wrist/clip/command/representative
headset = /obj/item/radio/headset/representative
bowman = /obj/item/radio/headset/representative/alt
double_headset = /obj/item/radio/headset/alt/double/command/representative
wrist_radio = /obj/item/radio/headset/wrist/command/representative
clipon_radio = /obj/item/radio/headset/wrist/clip/command/representative
+35 -35
View File
@@ -44,11 +44,11 @@
id = /obj/item/card/id/scc/silver
l_hand = /obj/item/clipboard
headset = /obj/item/device/radio/headset/heads/rd
bowman = /obj/item/device/radio/headset/heads/rd/alt
double_headset = /obj/item/device/radio/headset/alt/double/rd
wrist_radio = /obj/item/device/radio/headset/wrist/rd
clipon_radio = /obj/item/device/radio/headset/wrist/clip/rd
headset = /obj/item/radio/headset/heads/rd
bowman = /obj/item/radio/headset/heads/rd/alt
double_headset = /obj/item/radio/headset/alt/double/rd
wrist_radio = /obj/item/radio/headset/wrist/rd
clipon_radio = /obj/item/radio/headset/wrist/clip/rd
tab_pda = /obj/item/modular_computer/handheld/pda/research/rd
wristbound = /obj/item/modular_computer/handheld/wristbound/preset/pda/research/rd
@@ -93,11 +93,11 @@
shoes = /obj/item/clothing/shoes/sneakers/medsci
id = /obj/item/card/id/white
headset = /obj/item/device/radio/headset/headset_sci
bowman = /obj/item/device/radio/headset/headset_sci/alt
double_headset = /obj/item/device/radio/headset/alt/double/sci
wrist_radio = /obj/item/device/radio/headset/wrist/sci
clipon_radio = /obj/item/device/radio/headset/wrist/clip/sci
headset = /obj/item/radio/headset/headset_sci
bowman = /obj/item/radio/headset/headset_sci/alt
double_headset = /obj/item/radio/headset/alt/double/sci
wrist_radio = /obj/item/radio/headset/wrist/sci
clipon_radio = /obj/item/radio/headset/wrist/clip/sci
tab_pda = /obj/item/modular_computer/handheld/pda/research
wristbound = /obj/item/modular_computer/handheld/wristbound/preset/pda/research
@@ -145,11 +145,11 @@
uniform = /obj/item/clothing/under/rank/scientist/xenoarchaeologist
headset = /obj/item/device/radio/headset/headset_xenology
bowman = /obj/item/device/radio/headset/headset_xenology/alt
double_headset = /obj/item/device/radio/headset/alt/double/xenology
wrist_radio = /obj/item/device/radio/headset/wrist/xenology
clipon_radio = /obj/item/device/radio/headset/wrist/clip/xenology
headset = /obj/item/radio/headset/headset_xenology
bowman = /obj/item/radio/headset/headset_xenology/alt
double_headset = /obj/item/radio/headset/alt/double/xenology
wrist_radio = /obj/item/radio/headset/wrist/xenology
clipon_radio = /obj/item/radio/headset/wrist/clip/xenology
/obj/outfit/job/scientist/anomalist
name = "Anomalist"
@@ -157,11 +157,11 @@
uniform = /obj/item/clothing/under/rank/scientist/anomalist
headset = /obj/item/device/radio/headset/headset_anom
bowman = /obj/item/device/radio/headset/headset_anom/alt
double_headset = /obj/item/device/radio/headset/alt/double/anom
wrist_radio = /obj/item/device/radio/headset/wrist/anom
clipon_radio = /obj/item/device/radio/headset/wrist/clip/anom
headset = /obj/item/radio/headset/headset_anom
bowman = /obj/item/radio/headset/headset_anom/alt
double_headset = /obj/item/radio/headset/alt/double/anom
wrist_radio = /obj/item/radio/headset/wrist/anom
clipon_radio = /obj/item/radio/headset/wrist/clip/anom
/datum/job/xenobiologist
title = "Xenobiologist"
@@ -195,11 +195,11 @@
uniform = /obj/item/clothing/under/rank/scientist/xenobio
headset = /obj/item/device/radio/headset/headset_xenology
bowman = /obj/item/device/radio/headset/headset_xenology/alt
double_headset = /obj/item/device/radio/headset/alt/double/xenology
wrist_radio = /obj/item/device/radio/headset/wrist/xenology
clipon_radio = /obj/item/device/radio/headset/wrist/clip/xenology
headset = /obj/item/radio/headset/headset_xenology
bowman = /obj/item/radio/headset/headset_xenology/alt
double_headset = /obj/item/radio/headset/alt/double/xenology
wrist_radio = /obj/item/radio/headset/wrist/xenology
clipon_radio = /obj/item/radio/headset/wrist/clip/xenology
/datum/job/xenobotanist
title = "Xenobotanist"
@@ -234,11 +234,11 @@
uniform = /obj/item/clothing/under/rank/scientist/botany
headset = /obj/item/device/radio/headset/headset_xenology
bowman = /obj/item/device/radio/headset/headset_xenology/alt
double_headset = /obj/item/device/radio/headset/alt/double/xenology
wrist_radio = /obj/item/device/radio/headset/wrist/xenology
clipon_radio = /obj/item/device/radio/headset/wrist/clip/xenology
headset = /obj/item/radio/headset/headset_xenology
bowman = /obj/item/radio/headset/headset_xenology/alt
double_headset = /obj/item/radio/headset/alt/double/xenology
wrist_radio = /obj/item/radio/headset/wrist/xenology
clipon_radio = /obj/item/radio/headset/wrist/clip/xenology
/datum/job/intern_sci
title = "Research Intern"
@@ -262,11 +262,11 @@
uniform = /obj/item/clothing/under/rank/scientist/intern
shoes = /obj/item/clothing/shoes/sneakers/medsci
headset = /obj/item/device/radio/headset/headset_sci
bowman = /obj/item/device/radio/headset/headset_sci/alt
double_headset = /obj/item/device/radio/headset/alt/double/sci
wrist_radio = /obj/item/device/radio/headset/wrist/sci
clipon_radio = /obj/item/device/radio/headset/wrist/clip/sci
headset = /obj/item/radio/headset/headset_sci
bowman = /obj/item/radio/headset/headset_sci/alt
double_headset = /obj/item/radio/headset/alt/double/sci
wrist_radio = /obj/item/radio/headset/wrist/sci
clipon_radio = /obj/item/radio/headset/wrist/clip/sci
backpack = /obj/item/storage/backpack/toxins
backpack_faction = /obj/item/storage/backpack/nt
+25 -25
View File
@@ -45,11 +45,11 @@
shoes = null
glasses = /obj/item/clothing/glasses/sunglasses/sechud/head
headset = /obj/item/device/radio/headset/heads/hos
bowman = /obj/item/device/radio/headset/heads/hos/alt
double_headset = /obj/item/device/radio/headset/alt/double/hos
wrist_radio = /obj/item/device/radio/headset/wrist/hos
clipon_radio = /obj/item/device/radio/headset/wrist/clip/hos
headset = /obj/item/radio/headset/heads/hos
bowman = /obj/item/radio/headset/heads/hos/alt
double_headset = /obj/item/radio/headset/alt/double/hos
wrist_radio = /obj/item/radio/headset/wrist/hos
clipon_radio = /obj/item/radio/headset/wrist/clip/hos
tab_pda = /obj/item/modular_computer/handheld/pda/security/hos
wristbound = /obj/item/modular_computer/handheld/wristbound/preset/pda/security/hos
@@ -110,11 +110,11 @@
glasses = /obj/item/clothing/glasses/sunglasses/sechud/aviator
shoes = null
headset = /obj/item/device/radio/headset/headset_warden
bowman = /obj/item/device/radio/headset/headset_warden/alt
double_headset = /obj/item/device/radio/headset/alt/double/sec/warden
wrist_radio = /obj/item/device/radio/headset/wrist/sec/warden
clipon_radio = /obj/item/device/radio/headset/wrist/clip/sec/warden
headset = /obj/item/radio/headset/headset_warden
bowman = /obj/item/radio/headset/headset_warden/alt
double_headset = /obj/item/radio/headset/alt/double/sec/warden
wrist_radio = /obj/item/radio/headset/wrist/sec/warden
clipon_radio = /obj/item/radio/headset/wrist/clip/sec/warden
tab_pda = /obj/item/modular_computer/handheld/pda/security
wristbound = /obj/item/modular_computer/handheld/wristbound/preset/pda/security
@@ -172,11 +172,11 @@
uniform = /obj/item/clothing/under/det
shoes = /obj/item/clothing/shoes/laceup
headset = /obj/item/device/radio/headset/headset_sec
bowman = /obj/item/device/radio/headset/headset_sec/alt
double_headset = /obj/item/device/radio/headset/alt/double/sec
wrist_radio = /obj/item/device/radio/headset/wrist/sec
clipon_radio = /obj/item/device/radio/headset/wrist/clip/sec
headset = /obj/item/radio/headset/headset_sec
bowman = /obj/item/radio/headset/headset_sec/alt
double_headset = /obj/item/radio/headset/alt/double/sec
wrist_radio = /obj/item/radio/headset/wrist/sec
clipon_radio = /obj/item/radio/headset/wrist/clip/sec
tab_pda = /obj/item/modular_computer/handheld/pda/security/detective
wristbound = /obj/item/modular_computer/handheld/wristbound/preset/pda/security/detective
@@ -231,11 +231,11 @@
uniform = /obj/item/clothing/under/rank/security
shoes = null
headset = /obj/item/device/radio/headset/headset_sec
bowman = /obj/item/device/radio/headset/headset_sec/alt
double_headset = /obj/item/device/radio/headset/alt/double/sec
wrist_radio = /obj/item/device/radio/headset/wrist/sec
clipon_radio = /obj/item/device/radio/headset/wrist/clip/sec
headset = /obj/item/radio/headset/headset_sec
bowman = /obj/item/radio/headset/headset_sec/alt
double_headset = /obj/item/radio/headset/alt/double/sec
wrist_radio = /obj/item/radio/headset/wrist/sec
clipon_radio = /obj/item/radio/headset/wrist/clip/sec
tab_pda = /obj/item/modular_computer/handheld/pda/security
wristbound = /obj/item/modular_computer/handheld/wristbound/preset/pda/security
@@ -299,11 +299,11 @@
suit = /obj/item/clothing/suit/storage/hazardvest/security
head = /obj/item/clothing/head/beret/security
headset = /obj/item/device/radio/headset/headset_sec
bowman = /obj/item/device/radio/headset/headset_sec/alt
double_headset = /obj/item/device/radio/headset/alt/double/sec
wrist_radio = /obj/item/device/radio/headset/wrist/sec
clipon_radio = /obj/item/device/radio/headset/wrist/clip/sec
headset = /obj/item/radio/headset/headset_sec
bowman = /obj/item/radio/headset/headset_sec/alt
double_headset = /obj/item/radio/headset/alt/double/sec
wrist_radio = /obj/item/radio/headset/wrist/sec
clipon_radio = /obj/item/radio/headset/wrist/clip/sec
backpack = /obj/item/storage/backpack/security
satchel = /obj/item/storage/backpack/satchel/sec
+21 -21
View File
@@ -70,42 +70,42 @@
uniform = /obj/item/clothing/under/color/lightpurple
suit = /obj/item/clothing/suit/storage/toggle/labcoat
glasses = /obj/item/clothing/glasses/safety/goggles/science
headset = /obj/item/device/radio/headset/headset_sci
bowman = /obj/item/device/radio/headset/headset_sci/alt
double_headset = /obj/item/device/radio/headset/alt/double/sci
wrist_radio = /obj/item/device/radio/headset/wrist/sci
clipon_radio = /obj/item/device/radio/headset/wrist/clip/sci
headset = /obj/item/radio/headset/headset_sci
bowman = /obj/item/radio/headset/headset_sci/alt
double_headset = /obj/item/radio/headset/alt/double/sci
wrist_radio = /obj/item/radio/headset/wrist/sci
clipon_radio = /obj/item/radio/headset/wrist/clip/sci
/obj/outfit/job/assistant/tech_assistant
name = "Technical Assistant"
uniform = /obj/item/clothing/under/color/yellowgreen
suit = /obj/item/clothing/suit/storage/hazardvest
backpack_contents = list(/obj/item/device/debugger = 1)
headset = /obj/item/device/radio/headset/headset_eng
bowman = /obj/item/device/radio/headset/headset_eng/alt
double_headset = /obj/item/device/radio/headset/alt/double/eng
wrist_radio = /obj/item/device/radio/headset/wrist/eng
clipon_radio = /obj/item/device/radio/headset/wrist/clip/eng
backpack_contents = list(/obj/item/debugger = 1)
headset = /obj/item/radio/headset/headset_eng
bowman = /obj/item/radio/headset/headset_eng/alt
double_headset = /obj/item/radio/headset/alt/double/eng
wrist_radio = /obj/item/radio/headset/wrist/eng
clipon_radio = /obj/item/radio/headset/wrist/clip/eng
/obj/outfit/job/assistant/med_assistant
name = "Medical Orderly"
uniform = /obj/item/clothing/under/color/blue
suit = /obj/item/clothing/suit/storage/toggle/labcoat
backpack_contents = list(/obj/item/reagent_containers/spray/sterilizine = 1)
headset = /obj/item/device/radio/headset/headset_med
bowman = /obj/item/device/radio/headset/headset_med/alt
double_headset = /obj/item/device/radio/headset/alt/double/med
wrist_radio = /obj/item/device/radio/headset/wrist/med
clipon_radio = /obj/item/device/radio/headset/wrist/clip/med
headset = /obj/item/radio/headset/headset_med
bowman = /obj/item/radio/headset/headset_med/alt
double_headset = /obj/item/radio/headset/alt/double/med
wrist_radio = /obj/item/radio/headset/wrist/med
clipon_radio = /obj/item/radio/headset/wrist/clip/med
/obj/outfit/job/assistant/waiter
name = "Wait Staff"
uniform = /obj/item/clothing/under/waiter
headset = /obj/item/device/radio/headset/headset_service
bowman = /obj/item/device/radio/headset/headset_service/alt
double_headset = /obj/item/device/radio/headset/alt/double/service
wrist_radio = /obj/item/device/radio/headset/wrist/service
clipon_radio = /obj/item/device/radio/headset/wrist/clip/service
headset = /obj/item/radio/headset/headset_service
bowman = /obj/item/radio/headset/headset_service/alt
double_headset = /obj/item/radio/headset/alt/double/service
wrist_radio = /obj/item/radio/headset/wrist/service
clipon_radio = /obj/item/radio/headset/wrist/clip/service
/datum/job/visitor
title = "Off-Duty Crew Member"
+2 -2
View File
@@ -8,12 +8,12 @@
layer = 2.5
anchored = TRUE
idle_power_usage = 0
var/obj/item/device/radio/beacon/beacon
var/obj/item/radio/beacon/beacon
/obj/machinery/bluespace_beacon/Initialize(mapload, d, populate_components, is_internal)
. = ..()
var/turf/T = loc
beacon = new /obj/item/device/radio/beacon/fixed(T)
beacon = new /obj/item/radio/beacon/fixed(T)
hide(!T.is_plating())
/obj/machinery/bluespace_beacon/Destroy()
@@ -3,9 +3,9 @@
desc = DESC_PARENT
power_channel = AREA_USAGE_EQUIP
var/obj/item/device/radio/intercom/master
var/obj/item/radio/intercom/master
/obj/machinery/abstract/intercom_listener/New(atom/loc, obj/item/device/radio/intercom/owner)
/obj/machinery/abstract/intercom_listener/New(atom/loc, obj/item/radio/intercom/owner)
if (QDELETED(owner))
warning("intercom_listener created with QDELETED intercom!")
qdel(src)
+1 -1
View File
@@ -456,7 +456,7 @@ update_flag
/obj/machinery/portable_atmospherics/canister/attackby(obj/item/attacking_item, mob/user)
if(istype(attacking_item, /obj/item/mecha_equipment/clamp))
return
if(attacking_item.tool_behaviour != TOOL_WRENCH && !is_type_in_list(attacking_item, list(/obj/item/tank, /obj/item/device/analyzer, /obj/item/modular_computer)) && !issignaler(attacking_item) && (attacking_item.tool_behaviour != TOOL_WIRECUTTER && signaler))
if(attacking_item.tool_behaviour != TOOL_WRENCH && !is_type_in_list(attacking_item, list(/obj/item/tank, /obj/item/analyzer, /obj/item/modular_computer)) && !issignaler(attacking_item) && (attacking_item.tool_behaviour != TOOL_WIRECUTTER && signaler))
if(attacking_item.item_flags & ITEM_FLAG_NO_BLUDGEON)
return TRUE
visible_message(SPAN_WARNING("\The [user] hits \the [src] with \the [attacking_item]!"), SPAN_NOTICE("You hit \the [src] with \the [attacking_item]."))
@@ -140,8 +140,8 @@
to_chat(user, SPAN_NOTICE("Nothing happens."))
return TRUE
else if ((istype(attacking_item, /obj/item/device/analyzer)) && Adjacent(user))
var/obj/item/device/analyzer/A = attacking_item
else if ((istype(attacking_item, /obj/item/analyzer)) && Adjacent(user))
var/obj/item/analyzer/A = attacking_item
A.analyze_gases(src, user)
return TRUE

Some files were not shown because too many files have changed in this diff Show More