Merge remote-tracking branch 'upstream/dev' into Wires

Conflicts:
	code/game/machinery/autolathe.dm
This commit is contained in:
PsiOmega
2014-11-25 10:55:08 +01:00
10 changed files with 106 additions and 73 deletions

View File

@@ -122,7 +122,7 @@ var/list/adminhelp_ignored_words = list("unknown","the","a","an","of","monkey","
if(!(R_ADMIN & X.holder.rights))
if(X.is_afk())
admin_number_afk++
if(R_ADMIN & X.holder.rights) // just admins here please
if(R_ADMIN | R_MOD & X.holder.rights) // just admins here please
adminholders += X
if(X.is_afk())
admin_number_afk++
@@ -148,7 +148,7 @@ var/list/adminhelp_ignored_words = list("unknown","the","a","an","of","monkey","
if("Bug report")
if(debugholders.len)
for(var/client/X in debugholders)
if(R_ADMIN & X.holder.rights) // Admins get every button & special highlights in theirs
if(R_ADMIN | R_MOD & X.holder.rights) // Admins get every button & special highlights in theirs
if(X.prefs.toggles & SOUND_ADMINHELP)
X << 'sound/effects/adminhelp.ogg'
X << msg

View File

@@ -8,6 +8,7 @@
var/speech_verb = "says" // 'says', 'hisses', 'farts'.
var/ask_verb = "asks" // Used when sentence ends in a ?
var/exclaim_verb = "exclaims" // Used when sentence ends in a !
var/whisper_verb // Optional. When not specified speech_verb + quietly/softly is used instead.
var/signlang_verb = list() // list of emotes that might be displayed if this language has NONVERBAL or SIGNLANG flags
var/colour = "body" // CSS style to use for strings in this language.
var/key = "x" // Character used to speak in language eg. :o for Unathi.
@@ -97,9 +98,11 @@
name = "Galactic Common"
desc = "The common galactic tongue."
speech_verb = "says"
whisper_verb = "whispers"
key = "0"
flags = RESTRICTED
//TODO flag certain languages to use the mob-type specific say_quote and then get rid of these.
/datum/language/common/get_spoken_verb(var/msg_end)
switch(msg_end)
if("!")
@@ -111,10 +114,20 @@
/datum/language/human
name = "Sol Common"
desc = "A bastardized hybrid of informal English and elements of Mandarin Chinese; the common language of the Sol system."
speech_verb = "says"
whisper_verb = "whispers"
colour = "rough"
key = "1"
flags = RESTRICTED
/datum/language/human/get_spoken_verb(var/msg_end)
switch(msg_end)
if("!")
return pick("exclaims","shouts","yells") //TODO: make the basic proc handle lists of verbs.
if("?")
return ask_verb
return speech_verb
// Galactic common languages (systemwide accepted standards).
/datum/language/trader
name = "Tradeband"

View File

@@ -41,8 +41,17 @@
var/watching_range = 5
var/italics = 1
var/not_heard //the message displayed to people who could not hear the whispering
if (speaking)
verb = speaking.speech_verb + pick(" quietly", " softly")
if (speaking.whisper_verb)
verb = speaking.whisper_verb
not_heard = "[verb] something"
else
var/adverb = pick("quietly", "softly")
verb = "[speaking.speech_verb] [adverb]"
not_heard = "[verb] something [adverb]"
else
not_heard = "[verb] something" //TODO get rid of the null language and just prevent speech if language is null
message = capitalize(trim(message))
@@ -144,6 +153,6 @@
M.hear_say(new_message, verb, speaking, alt_name, italics, src)
if (watching.len)
var/rendered = "<span class='game say'><span class='name'>[src.name]</span> whispers something.</span>"
var/rendered = "<span class='game say'><span class='name'>[src.name]</span> [not_heard].</span>"
for (var/mob/M in watching)
M.show_message(rendered, 2)

View File

@@ -39,21 +39,13 @@
greaterform = "Unathi"
uni_append = list(0x044,0xC5D) // 044C5D
/mob/living/carbon/monkey/initialize()
if (!species)
species = all_species[greaterform]
add_language(species.language)
/mob/living/carbon/monkey/New()
var/datum/reagents/R = new/datum/reagents(1000)
reagents = R
R.my_atom = src
//Ensure that the all_species list has been initialized.
//If not then this must be round-start and initialize() will
//be called directly by the master controller, later.
if (ticker && ticker.current_state >= GAME_STATE_SETTING_UP)
initialize()
species = all_species[greaterform]
add_language(species.language)
if(name == initial(name)) //To stop Pun-Pun becoming generic.
name = "[name] ([rand(1, 1000)])"

View File

@@ -1531,12 +1531,11 @@
if (istype(M, /mob/living/carbon/human))
//Do not try to understand.
var/obj/item/weapon/surprise = new/obj/item/weapon(M)
var/mob/living/carbon/monkey/ook = new monkey_type(null) //no other way to get access to the vars, alas
surprise.icon = ook.icon
surprise.icon_state = ook.icon_state
surprise.name = "malformed [ook.name]"
surprise.desc = "Looks like \a very deformed [ook.name], a little small for its kind. It shows no signs of life."
del(ook) //rip nullspace monkey
var/mob/ook = monkey_type
surprise.icon = initial(ook.icon)
surprise.icon_state = initial(ook.icon_state)
surprise.name = "malformed [initial(ook.name)]"
surprise.desc = "Looks like \a very deformed [initial(ook.name)], a little small for its kind. It shows no signs of life."
surprise.transform *= 0.6
surprise.add_blood(M)
var/mob/living/carbon/human/H = M
@@ -1597,7 +1596,7 @@
/obj/item/weapon/reagent_containers/food/snacks/monkeycube/neaeracube
name = "neaera cube"
monkey_type ="skrell"
monkey_type = /mob/living/carbon/monkey/skrell
/obj/item/weapon/reagent_containers/food/snacks/monkeycube/wrapped/neaeracube
name = "neaera cube"
monkey_type =/mob/living/carbon/monkey/skrell