mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-08-23 21:18:37 +01:00
Adds a verb_exclaim var. Fixes #8478.
Also makes saymods transmitted through the radio system for upcoming NTSL integration.
This commit is contained in:
@@ -9,6 +9,7 @@
|
||||
var/languages = 0 //For say() and Hear()
|
||||
var/verb_say = "says"
|
||||
var/verb_ask = "asks"
|
||||
var/verb_exclaim = "exclaims"
|
||||
var/verb_yell = "yells"
|
||||
var/inertia_dir = 0
|
||||
var/pass_flags = 0
|
||||
|
||||
@@ -134,7 +134,7 @@
|
||||
circuit = /obj/item/weapon/circuitboard/supplycomp
|
||||
verb_say = "flashes"
|
||||
verb_ask = "flashes"
|
||||
verb_yell = "flashes"
|
||||
verb_exclaim = "flashes"
|
||||
var/temp = null
|
||||
var/reqtime = 0 //Cooldown for requisitions - Quarxink
|
||||
var/hacked = 0
|
||||
@@ -155,7 +155,7 @@
|
||||
circuit = /obj/item/weapon/circuitboard/ordercomp
|
||||
verb_say = "flashes"
|
||||
verb_ask = "flashes"
|
||||
verb_yell = "flashes"
|
||||
verb_exclaim = "flashes"
|
||||
var/temp = null
|
||||
var/reqtime = 0 //Cooldown for requisitions - Quarxink
|
||||
var/last_viewed_group = "categories"
|
||||
|
||||
@@ -93,6 +93,7 @@ Class Procs:
|
||||
/obj/machinery
|
||||
name = "machinery"
|
||||
icon = 'icons/obj/stationobjs.dmi'
|
||||
verb_yell = "blares"
|
||||
var/stat = 0
|
||||
var/emagged = 0
|
||||
var/use_power = 1
|
||||
|
||||
@@ -126,7 +126,7 @@ var/list/obj/machinery/newscaster/allCasters = list() //Global list that will co
|
||||
icon_state = "newscaster_normal"
|
||||
verb_say = "beeps"
|
||||
verb_ask = "beeps"
|
||||
verb_yell = "beeps"
|
||||
verb_exclaim = "beeps"
|
||||
var/isbroken = 0 //1 if someone banged it with something heavy
|
||||
var/ispowered = 1 //starts powered, changes with power_change()
|
||||
//var/list/datum/feed_channel/channel_list = list() //This list will contain the names of the feed channels. Each name will refer to a data region where the messages of the feed channels are stored.
|
||||
|
||||
@@ -59,7 +59,8 @@ var/message_delay = 0 // To make sure restarting the recentmessages list is kept
|
||||
Broadcast_Message(signal.data["mob"],
|
||||
signal.data["vmask"], signal.data["radio"],
|
||||
signal.data["message"], signal.data["name"], signal.data["job"], signal.data["realname"],
|
||||
0, signal.data["compression"], signal.data["level"], signal.frequency, signal.data["spans"])
|
||||
0, signal.data["compression"], signal.data["level"], signal.frequency, signal.data["spans"],
|
||||
signal.data["verb_say"], signal.data["verb_ask"], signal.data["verb_exclaim"], signal.data["verb_yell"])
|
||||
|
||||
|
||||
/** #### - Simple Broadcast - #### **/
|
||||
@@ -83,7 +84,8 @@ var/message_delay = 0 // To make sure restarting the recentmessages list is kept
|
||||
signal.data["vmask"],
|
||||
signal.data["radio"], signal.data["message"],
|
||||
signal.data["name"], signal.data["job"],
|
||||
signal.data["realname"], 4, signal.data["compression"], signal.data["level"], signal.frequency, signal.data["spans"])
|
||||
signal.data["realname"], 4, signal.data["compression"], signal.data["level"], signal.frequency, signal.data["spans"],
|
||||
signal.data["verb_say"], signal.data["verb_ask"], signal.data["verb_exclaim"], signal.data["verb_yell"])
|
||||
|
||||
if(!message_delay)
|
||||
message_delay = 1
|
||||
@@ -143,7 +145,8 @@ var/message_delay = 0 // To make sure restarting the recentmessages list is kept
|
||||
signal.data["vmask"],
|
||||
signal.data["radio"], signal.data["message"],
|
||||
signal.data["name"], signal.data["job"],
|
||||
signal.data["realname"],, signal.data["compression"], list(0, z), signal.frequency, signal.data["spans"])
|
||||
signal.data["realname"],, signal.data["compression"], list(0, z), signal.frequency, signal.data["spans"],
|
||||
signal.data["verb_say"], signal.data["verb_ask"], signal.data["verb_exclaim"], signal.data["verb_yell"])
|
||||
|
||||
|
||||
/**
|
||||
@@ -204,7 +207,8 @@ var/message_delay = 0 // To make sure restarting the recentmessages list is kept
|
||||
/proc/Broadcast_Message(var/atom/movable/AM,
|
||||
var/vmask, var/obj/item/device/radio/radio,
|
||||
var/message, var/name, var/job, var/realname,
|
||||
var/data, var/compression, var/list/level, var/freq, var/list/spans)
|
||||
var/data, var/compression, var/list/level, var/freq, var/list/spans,
|
||||
var/verb_say, var/verb_ask, var/verb_exclaim, var/verb_yell)
|
||||
|
||||
message = copytext(message, 1, MAX_BROADCAST_LEN)
|
||||
|
||||
@@ -220,9 +224,10 @@ var/message_delay = 0 // To make sure restarting the recentmessages list is kept
|
||||
virt.source = AM
|
||||
virt.faketrack = data == 4 ? 1 : 0
|
||||
virt.radio = radio
|
||||
virt.verb_say = AM.verb_say
|
||||
virt.verb_ask = AM.verb_ask
|
||||
virt.verb_yell = AM.verb_yell
|
||||
virt.verb_say = verb_say
|
||||
virt.verb_ask = verb_ask
|
||||
virt.verb_exclaim = verb_exclaim
|
||||
virt.verb_yell = verb_yell
|
||||
|
||||
if(compression > 0)
|
||||
message = Gibberish(message, compression + 40)
|
||||
|
||||
@@ -88,7 +88,11 @@ var/global/list/obj/machinery/telecomms/telecomms_list = list()
|
||||
"server" = signal.data["server"],
|
||||
"reject" = signal.data["reject"],
|
||||
"level" = signal.data["level"],
|
||||
"spans" = signal.data["spans"]
|
||||
"spans" = signal.data["spans"],
|
||||
"verb_say" = signal.data["verb_say"],
|
||||
"verb_ask" = signal.data["verb_ask"],
|
||||
"verb_exclaim" = signal.data["verb_exclaim"],
|
||||
"verb_yell" = signal.data["verb_yell"]
|
||||
)
|
||||
|
||||
// Keep the "original" signal constant
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
density = 1
|
||||
verb_say = "beeps"
|
||||
verb_ask = "beeps"
|
||||
verb_yell = "beeps"
|
||||
verb_exclaim = "beeps"
|
||||
var/active = 1 //No sales pitches if off!
|
||||
var/vend_ready = 1 //Are we ready to vend?? Is it time??
|
||||
var/vend_delay = 10 //How long does it take to vend?
|
||||
|
||||
@@ -360,7 +360,11 @@
|
||||
"reject" = 0, // if nonzero, the signal will not be accepted by any broadcasting machinery
|
||||
"level" = position.z, // The source's z level
|
||||
"languages" = M.languages, //The languages M is talking in.
|
||||
"spans" = spans //the span classes of this message.
|
||||
"spans" = spans, //the span classes of this message.
|
||||
"verb_say" = M.verb_say, //the verb used when talking normally
|
||||
"verb_ask" = M.verb_ask, //the verb used when asking
|
||||
"verb_exclaim" = M.verb_exclaim, //the verb used when exclaiming
|
||||
"verb_yell" = M.verb_yell //the verb used when yelling
|
||||
)
|
||||
signal.frequency = freq
|
||||
|
||||
@@ -406,7 +410,11 @@
|
||||
"reject" = 0,
|
||||
"level" = position.z,
|
||||
"languages" = languages,
|
||||
"spans" = spans
|
||||
"spans" = spans,
|
||||
"verb_say" = M.verb_say,
|
||||
"verb_ask" = M.verb_ask,
|
||||
"verb_exclaim" = M.verb_exclaim,
|
||||
"verb_yell" = M.verb_yell
|
||||
)
|
||||
signal.frequency = text2num(freq) // Quick frequency set
|
||||
for(var/obj/machinery/telecomms/receiver/R in telecomms_list)
|
||||
@@ -423,7 +431,8 @@
|
||||
// Send a mundane broadcast with limited targets:
|
||||
Broadcast_Message(M, voicemask,
|
||||
src, message, voice, jobname, real_name,
|
||||
filter_type, signal.data["compression"], list(position.z), freq, spans)
|
||||
filter_type, signal.data["compression"], list(position.z), freq, spans,
|
||||
verb_say, verb_ask, verb_exclaim, verb_yell)
|
||||
|
||||
/obj/item/device/radio/Hear(message, atom/movable/speaker, message_langs, raw_message, radio_freq, list/spans)
|
||||
if(radio_freq)
|
||||
|
||||
+7
-4
@@ -68,18 +68,21 @@ var/list/freqtospan = list(
|
||||
var/ending = copytext(input, length(input))
|
||||
if(copytext(input, length(input) - 1) == "!!")
|
||||
spans |= SPAN_YELL
|
||||
return "[verb_yell], \"[attach_spans(input, spans)]\""
|
||||
input = attach_spans(input, spans)
|
||||
if(ending == "?")
|
||||
return "[verb_ask], \"[input]\""
|
||||
if(ending == "!")
|
||||
return "[verb_yell], \"[input]\""
|
||||
return "[verb_exclaim], \"[input]\""
|
||||
|
||||
return "[verb_say], \"[input]\""
|
||||
|
||||
/atom/movable/proc/lang_treat(atom/movable/speaker, message_langs, raw_message, list/spans)
|
||||
if(languages & message_langs)
|
||||
var/atom/movable/AM = speaker.GetSource()
|
||||
if(AM)
|
||||
if(AM) //Basically means "if the speaker is virtual"
|
||||
if(AM.verb_say != speaker.verb_say || AM.verb_ask != speaker.verb_ask || AM.verb_exclaim != speaker.verb_exclaim || AM.verb_yell != speaker.verb_yell) //If the saymod was changed
|
||||
return speaker.say_quote(raw_message, spans)
|
||||
return AM.say_quote(raw_message, spans)
|
||||
else
|
||||
return speaker.say_quote(raw_message, spans)
|
||||
@@ -136,11 +139,11 @@ var/list/freqtospan = list(
|
||||
/atom/movable/proc/IsVocal()
|
||||
return 1
|
||||
|
||||
/atom/movable/proc/get_alt_name()
|
||||
|
||||
//HACKY VIRTUALSPEAKER STUFF BEYOND THIS POINT
|
||||
//these exist mostly to deal with the AIs hrefs and job stuff.
|
||||
|
||||
/atom/movable/proc/get_alt_name()
|
||||
|
||||
/atom/movable/proc/GetJob() //Get a job, you lazy butte
|
||||
|
||||
/atom/movable/proc/GetTrack()
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
attachable = 1
|
||||
verb_say = "beeps"
|
||||
verb_ask = "beeps"
|
||||
verb_yell = "beeps"
|
||||
verb_exclaim = "beeps"
|
||||
var/listening = 0
|
||||
var/recorded = "" //the activation message
|
||||
|
||||
|
||||
@@ -164,7 +164,7 @@ var/global/list/datum/cachedbook/cachedbooks // List of our cached book datums
|
||||
screenstate = 0 // 0 - Main Menu, 1 - Inventory, 2 - Checked Out, 3 - Check Out a Book
|
||||
verb_say = "beeps"
|
||||
verb_ask = "beeps"
|
||||
verb_yell = "beeps"
|
||||
verb_exclaim = "beeps"
|
||||
var/buffer_book
|
||||
var/buffer_mob
|
||||
var/upload_category = "Fiction"
|
||||
|
||||
@@ -1,13 +1,3 @@
|
||||
/mob/living/carbon/slime/say_quote(var/text)
|
||||
var/ending = copytext(text, length(text))
|
||||
|
||||
if (ending == "?")
|
||||
return "telepathically asks, \"[text]\"";
|
||||
else if (ending == "!")
|
||||
return "telepathically cries, \"[text]\"";
|
||||
|
||||
return "telepathically chirps, \"[text]\"";
|
||||
|
||||
/mob/living/carbon/slime/Hear(message, atom/movable/speaker, message_langs, raw_message, radio_freq, spans)
|
||||
if(speaker != src && !radio_freq)
|
||||
if (speaker in Friends)
|
||||
|
||||
@@ -22,6 +22,7 @@
|
||||
|
||||
verb_say = "telepathically chirps"
|
||||
verb_ask = "telepathically asks"
|
||||
verb_exclaim = "telepathically cries"
|
||||
verb_yell = "telephatically cries"
|
||||
|
||||
// canstun and canweaken don't affect slimes because they ignore stun and weakened variables
|
||||
|
||||
@@ -1,14 +1,6 @@
|
||||
/mob/living/silicon/say(var/message)
|
||||
return ..(message, "R")
|
||||
|
||||
/mob/living/silicon/say_quote(input, spans)
|
||||
if(copytext(input, length(input) - 1) == "!!")
|
||||
spans |= SPAN_YELL
|
||||
input = attach_spans(input, spans)
|
||||
return "alarms, \"[input]\""
|
||||
|
||||
return ..()
|
||||
|
||||
/mob/living/silicon/get_spans()
|
||||
return ..() | SPAN_ROBOT
|
||||
|
||||
|
||||
@@ -5,7 +5,8 @@
|
||||
has_unlimited_silicon_privilege = 1
|
||||
verb_say = "states"
|
||||
verb_ask = "queries"
|
||||
verb_yell = "declares"
|
||||
verb_exclaim = "declares"
|
||||
verb_yell = "alarms"
|
||||
var/syndicate = 0
|
||||
var/datum/ai_laws/laws = null//Now... THEY ALL CAN ALL HAVE LAWS
|
||||
var/list/alarms_to_show = list()
|
||||
|
||||
@@ -52,7 +52,7 @@ global procs
|
||||
What languages this object speaks/understands. If the languages of the speaker don't match the languages
|
||||
of the hearer, the message will be modified in the hearer's lang_treat().
|
||||
|
||||
verb_say/verb_ask/verb_yell
|
||||
verb_say/verb_ask/verb_exclaim/verb_yell
|
||||
These determine what the verb is for their respective action. Used in say_quote().
|
||||
|
||||
say(message)
|
||||
@@ -74,8 +74,12 @@ global procs
|
||||
Modifies the message by comparing the languages of the speaker with the languages of the hearer.
|
||||
Called on the hearer.
|
||||
|
||||
say_quote(text, spans)
|
||||
say_quote(input, spans)
|
||||
Adds a verb and quotes to a message. Also attaches span classes to a message. Verbs are determined by verb_say/verb_ask/verb_yell variables. Called on the speaker.
|
||||
|
||||
get_spans(input, spans)
|
||||
Returns the list of spans that are always applied to messages of this atom.
|
||||
Always return ..() | + youroutput when overriding this proc!
|
||||
|
||||
/mob
|
||||
say_dead(message)
|
||||
|
||||
Reference in New Issue
Block a user