mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-01-18 21:15:21 +00:00
## About The Pull Request Adjusts the placement of basic and upgraded cybernetic ears in the research tree and adds two new variants: Whisper-sensitive Cybernetic Ears, which make it slightly easier to hear whispers from a tile away, at the cost of higher vulnerability to flashbangs and other loud noises; and Wall-penetrating Cybernetic Ears, which allow you to 'hear through walls' so to speak, also at the cost of higher vulnerability to loud noises. Basic cybernetic ears are now in basic medical tech node, meaning that medbay can print them roundstart the same as other basic cybernetics. The upgraded cybernetic ears are now unlocked with the other tier 2 cybernetics. The two new ear variants are unlocked with the other tier 3 cybernetic organs, and the luminiscent and welding shield eyes have also been moved there from the cybernetic implants node for consistency reasons. The whisper ears allow you to clearly hear whispers from up to seven tiles away, the same range where you can hear normal speech. The wall-penetrating ears allow you to hear normal speech within seven tiles even through walls. Due to technical limitations, runechat popups do not show up for people you can't see, but the messages will still show up in chat. ## Why It's Good For The Game Currently, upgraded cybernetic ears are very underwhelming compared to other high-tier cybernetic organs. All other high tier organs provide some sort of benefit; even if the benefit is minor like a built-in flashlight, a slightly higher tolerance to alcohol and toxins, or higher tolerance to disgusting food. This change is intended to grant similarly minor but useful benefits to the cybernetic ears. ## Changelog 🆑 add: Added whisper-sensitive cybernetic ears, which make it much easier for the user to hear whispers at the cost of being more vulnerable to loud noises add: Added wall-penetrating cybernetic ears, which allow you to hear speech through walls balance: Basic cybernetic ears and upgraded cybernetic ears are now unlocked with the other basic/normal cybernetics balance: The welding shield and luminiscent cybernetic eyes are now unlocked with the other upgraded cybernetics /🆑
111 lines
3.3 KiB
Plaintext
111 lines
3.3 KiB
Plaintext
/*
|
|
Defines for use in saycode and text formatting.
|
|
Currently contains speech spans and message modes
|
|
*/
|
|
#define RADIO_EXTENSION "department specific"
|
|
#define RADIO_KEY "department specific key"
|
|
#define LANGUAGE_EXTENSION "language specific"
|
|
|
|
//Message modes. Each one defines a radio channel, more or less.
|
|
//if you use ! as a mode key for some ungodly reason, change the first character for ion_num() so get_message_mode() doesn't freak out with state law prompts - shiz.
|
|
#define MODE_HEADSET "headset"
|
|
#define MODE_ROBOT "robot"
|
|
|
|
#define MODE_R_HAND "right hand"
|
|
#define MODE_KEY_R_HAND "r"
|
|
|
|
#define MODE_L_HAND "left hand"
|
|
#define MODE_KEY_L_HAND "l"
|
|
|
|
#define MODE_INTERCOM "intercom"
|
|
#define MODE_KEY_INTERCOM "i"
|
|
#define MODE_TOKEN_INTERCOM ":i"
|
|
|
|
#define MODE_BINARY "binary"
|
|
#define MODE_KEY_BINARY "b"
|
|
#define MODE_TOKEN_BINARY ":b"
|
|
|
|
#define WHISPER_MODE "the type of whisper"
|
|
#define MODE_WHISPER "whisper"
|
|
#define MODE_WHISPER_CRIT "whispercrit"
|
|
|
|
#define MODE_DEPARTMENT "department"
|
|
#define MODE_KEY_DEPARTMENT "h"
|
|
#define MODE_TOKEN_DEPARTMENT ":h"
|
|
|
|
#define MODE_ADMIN "admin"
|
|
#define MODE_KEY_ADMIN "p"
|
|
|
|
#define MODE_DEADMIN "deadmin"
|
|
#define MODE_KEY_DEADMIN "d"
|
|
|
|
#define MODE_PUPPET "puppet"
|
|
#define MODE_KEY_PUPPET "j"
|
|
|
|
#define MODE_ALIEN "alientalk"
|
|
#define MODE_HOLOPAD "holopad"
|
|
|
|
#define MODE_CHANGELING "changeling"
|
|
#define MODE_KEY_CHANGELING "g"
|
|
#define MODE_TOKEN_CHANGELING ":g"
|
|
|
|
#define MODE_VOCALCORDS "cords"
|
|
#define MODE_KEY_VOCALCORDS "x"
|
|
|
|
#define MODE_MAFIA "mafia"
|
|
|
|
#define MODE_SING "sing"
|
|
|
|
#define MODE_CUSTOM_SAY_EMOTE "custom_say"
|
|
|
|
#define MODE_CUSTOM_SAY_ERASE_INPUT "erase_input"
|
|
|
|
//Spans. Robot speech, italics, etc. Applied in compose_message().
|
|
#define SPAN_ROBOT "robot"
|
|
#define SPAN_YELL "yell"
|
|
#define SPAN_ITALICS "italics"
|
|
#define SPAN_SANS "sans"
|
|
#define SPAN_PAPYRUS "papyrus"
|
|
#define SPAN_REALLYBIG "reallybig"
|
|
#define SPAN_COMMAND "command_headset"
|
|
#define SPAN_CLOWN "clown"
|
|
#define SPAN_SINGING "singing"
|
|
#define SPAN_TAPE_RECORDER "tape_recorder"
|
|
#define SPAN_HELIUM "small"
|
|
|
|
//bitflag #defines for return value of the radio() proc.
|
|
#define ITALICS (1<<0)
|
|
#define REDUCE_RANGE (1<<1)
|
|
#define NOPASS (1<<2)
|
|
|
|
/// Range to hear normal messages
|
|
#define MESSAGE_RANGE 7
|
|
/// Range to hear whispers normally
|
|
#define WHISPER_RANGE 1
|
|
/// Additional range to partially hear whispers
|
|
#define EAVESDROP_EXTRA_RANGE 1 //how much past the specified message_range does the message get starred, whispering only
|
|
|
|
/// How close intercoms can be for radio code use
|
|
#define MODE_RANGE_INTERCOM 1
|
|
|
|
// A link given to ghost alice to follow bob
|
|
#define FOLLOW_LINK(alice, bob) "<a href=?src=[REF(alice)];follow=[REF(bob)]>(F)</a>"
|
|
#define TURF_LINK(alice, turfy) "<a href=?src=[REF(alice)];x=[turfy.x];y=[turfy.y];z=[turfy.z]>(T)</a>"
|
|
#define FOLLOW_OR_TURF_LINK(alice, bob, turfy) "<a href=?src=[REF(alice)];follow=[REF(bob)];x=[turfy.x];y=[turfy.y];z=[turfy.z]>(F)</a>"
|
|
|
|
//Don't set this very much higher then 1024 unless you like inviting people in to dos your server with message spam
|
|
#define MAX_MESSAGE_LEN 1024
|
|
#define MAX_NAME_LEN 42
|
|
#define MAX_BROADCAST_LEN 512
|
|
#define MAX_CHARTER_LEN 80
|
|
#define MAX_PLAQUE_LEN 144
|
|
|
|
// Audio/Visual Flags. Used to determine what sense are required to notice a message.
|
|
#define MSG_VISUAL (1<<0)
|
|
#define MSG_AUDIBLE (1<<1)
|
|
|
|
|
|
|
|
//Used in visible_message_flags, audible_message_flags and runechat_flags
|
|
#define EMOTE_MESSAGE (1<<0)
|