mirror of
https://github.com/CHOMPStation2/CHOMPStation2.git
synced 2025-12-11 02:34:00 +00:00
Buff Shadekin Empathy (And other hive languages)
This commit is contained in:
@@ -130,11 +130,27 @@
|
|||||||
/datum/language/proc/broadcast(var/mob/living/speaker,var/message,var/speaker_mask)
|
/datum/language/proc/broadcast(var/mob/living/speaker,var/message,var/speaker_mask)
|
||||||
log_say("(HIVE) [message]", speaker)
|
log_say("(HIVE) [message]", speaker)
|
||||||
|
|
||||||
|
speaker.verbs |= /mob/proc/adjust_hive_range //VOREStation Add - If you don't have the verb you should.
|
||||||
|
|
||||||
if(!speaker_mask) speaker_mask = speaker.name
|
if(!speaker_mask) speaker_mask = speaker.name
|
||||||
message = "[get_spoken_verb(message)], \"[format_message(message, get_spoken_verb(message))]\""
|
message = "[get_spoken_verb(message)], \"[format_message(message, get_spoken_verb(message))]\""
|
||||||
|
//VOREStation Edit Start
|
||||||
for(var/mob/player in player_list)
|
if(speaker.hive_lang_range == -1)
|
||||||
player.hear_broadcast(src, speaker, speaker_mask, message)
|
var/turf/t = get_turf(speaker)
|
||||||
|
for(var/mob/player in player_list)
|
||||||
|
var/turf/b = get_turf(player)
|
||||||
|
if (t.z == b.z)
|
||||||
|
player.hear_broadcast(src, speaker, speaker_mask, message)
|
||||||
|
else if(speaker.hive_lang_range)
|
||||||
|
var/turf/t = get_turf(speaker)
|
||||||
|
for(var/mob/player in player_list)
|
||||||
|
var/turf/b = get_turf(player)
|
||||||
|
if(get_dist(t,b) <= speaker.hive_lang_range)
|
||||||
|
player.hear_broadcast(src, speaker, speaker_mask, message)
|
||||||
|
else
|
||||||
|
for(var/mob/player in player_list)
|
||||||
|
player.hear_broadcast(src, speaker, speaker_mask, message)
|
||||||
|
//VOREStation Edit End
|
||||||
|
|
||||||
/mob/proc/hear_broadcast(var/datum/language/language, var/mob/speaker, var/speaker_name, var/message)
|
/mob/proc/hear_broadcast(var/datum/language/language, var/mob/speaker, var/speaker_name, var/message)
|
||||||
if((language in languages) && language.check_special_condition(src))
|
if((language in languages) && language.check_special_condition(src))
|
||||||
@@ -187,6 +203,11 @@
|
|||||||
return 0
|
return 0
|
||||||
|
|
||||||
languages.Add(new_language)
|
languages.Add(new_language)
|
||||||
|
//VOREStation Addition Start
|
||||||
|
if(new_language.flags & HIVEMIND)
|
||||||
|
verbs |= /mob/proc/adjust_hive_range
|
||||||
|
//VOREStation Addition End
|
||||||
|
|
||||||
return 1
|
return 1
|
||||||
|
|
||||||
/mob/proc/remove_language(var/rem_language)
|
/mob/proc/remove_language(var/rem_language)
|
||||||
|
|||||||
19
code/modules/mob/language/snowflake.dm
Normal file
19
code/modules/mob/language/snowflake.dm
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
/mob
|
||||||
|
var/hive_lang_range = 0
|
||||||
|
|
||||||
|
/mob/proc/adjust_hive_range()
|
||||||
|
set name = "Adjust Special Language Range"
|
||||||
|
set desc = "Changes the range you will transmit your hive language to!"
|
||||||
|
set category = "IC"
|
||||||
|
|
||||||
|
var/option = tgui_alert(src, "What range?", "Adjust special language range", list("Global","This Z level","Local", "Subtle"))
|
||||||
|
|
||||||
|
switch(option)
|
||||||
|
if("Global")
|
||||||
|
hive_lang_range = 0
|
||||||
|
if("This Z level")
|
||||||
|
hive_lang_range = -1
|
||||||
|
if("Local")
|
||||||
|
hive_lang_range = world.view
|
||||||
|
if("Subtle")
|
||||||
|
hive_lang_range = 1
|
||||||
@@ -22,8 +22,12 @@
|
|||||||
unarmed_types = list(/datum/unarmed_attack/stomp, /datum/unarmed_attack/kick, /datum/unarmed_attack/claws/shadekin, /datum/unarmed_attack/bite/sharp/shadekin)
|
unarmed_types = list(/datum/unarmed_attack/stomp, /datum/unarmed_attack/kick, /datum/unarmed_attack/claws/shadekin, /datum/unarmed_attack/bite/sharp/shadekin)
|
||||||
rarity_value = 15 //INTERDIMENSIONAL FLUFFERS
|
rarity_value = 15 //INTERDIMENSIONAL FLUFFERS
|
||||||
|
|
||||||
|
<<<<<<< HEAD
|
||||||
male_scream_sound = null //CHOMPedit
|
male_scream_sound = null //CHOMPedit
|
||||||
female_scream_sound = null //CHOMPedit
|
female_scream_sound = null //CHOMPedit
|
||||||
|
=======
|
||||||
|
inherent_verbs = list(/mob/proc/adjust_hive_range)
|
||||||
|
>>>>>>> 68f3b83a08... Merge pull request #14375 from Very-Soft/shadekinempathy
|
||||||
|
|
||||||
siemens_coefficient = 1
|
siemens_coefficient = 1
|
||||||
darksight = 10
|
darksight = 10
|
||||||
|
|||||||
@@ -572,7 +572,8 @@
|
|||||||
|
|
||||||
inherent_verbs = list(
|
inherent_verbs = list(
|
||||||
/mob/living/carbon/human/proc/diona_split_nymph,
|
/mob/living/carbon/human/proc/diona_split_nymph,
|
||||||
/mob/living/carbon/human/proc/regenerate
|
/mob/living/carbon/human/proc/regenerate,
|
||||||
|
/mob/proc/adjust_hive_range //VOREStation Add
|
||||||
)
|
)
|
||||||
|
|
||||||
warning_low_pressure = 50
|
warning_low_pressure = 50
|
||||||
|
|||||||
@@ -494,6 +494,8 @@
|
|||||||
unarmed_types = list(/datum/unarmed_attack/stomp, /datum/unarmed_attack/kick, /datum/unarmed_attack/claws, /datum/unarmed_attack/bite/sharp)
|
unarmed_types = list(/datum/unarmed_attack/stomp, /datum/unarmed_attack/kick, /datum/unarmed_attack/claws, /datum/unarmed_attack/bite/sharp)
|
||||||
rarity_value = 5 //INTERDIMENSIONAL FLUFFERS
|
rarity_value = 5 //INTERDIMENSIONAL FLUFFERS
|
||||||
|
|
||||||
|
inherent_verbs = list(/mob/proc/adjust_hive_range)
|
||||||
|
|
||||||
siemens_coefficient = 0
|
siemens_coefficient = 0
|
||||||
darksight = 10
|
darksight = 10
|
||||||
|
|
||||||
|
|||||||
@@ -154,6 +154,9 @@
|
|||||||
langlist |= L.languages
|
langlist |= L.languages
|
||||||
if(langlist.len)
|
if(langlist.len)
|
||||||
langlist -= languages
|
langlist -= languages
|
||||||
|
for(var/datum/language/L in langlist)
|
||||||
|
if(L.flags & HIVEMIND)
|
||||||
|
verbs |= /mob/proc/adjust_hive_range
|
||||||
temp_languages |= langlist
|
temp_languages |= langlist
|
||||||
languages |= langlist
|
languages |= langlist
|
||||||
|
|
||||||
@@ -460,4 +463,4 @@
|
|||||||
pred.prey_controlled = TRUE
|
pred.prey_controlled = TRUE
|
||||||
log_and_message_admins("[pred] is now controlled by [pred.ckey], they were taken over via pred submission, and were originally controlled by [pred_brain.pred_ckey].")
|
log_and_message_admins("[pred] is now controlled by [pred.ckey], they were taken over via pred submission, and were originally controlled by [pred_brain.pred_ckey].")
|
||||||
if(delete_source)
|
if(delete_source)
|
||||||
qdel(prey)
|
qdel(prey)
|
||||||
|
|||||||
@@ -131,6 +131,8 @@
|
|||||||
|
|
||||||
update_icon()
|
update_icon()
|
||||||
|
|
||||||
|
verbs |= /mob/proc/adjust_hive_range
|
||||||
|
|
||||||
return ..()
|
return ..()
|
||||||
|
|
||||||
/mob/living/simple_mob/shadekin/Destroy()
|
/mob/living/simple_mob/shadekin/Destroy()
|
||||||
|
|||||||
@@ -2901,6 +2901,7 @@
|
|||||||
#include "code\modules\mob\language\generic.dm"
|
#include "code\modules\mob\language\generic.dm"
|
||||||
#include "code\modules\mob\language\language.dm"
|
#include "code\modules\mob\language\language.dm"
|
||||||
#include "code\modules\mob\language\outsider.dm"
|
#include "code\modules\mob\language\outsider.dm"
|
||||||
|
#include "code\modules\mob\language\snowflake.dm"
|
||||||
#include "code\modules\mob\language\station.dm"
|
#include "code\modules\mob\language\station.dm"
|
||||||
#include "code\modules\mob\language\station_vr.dm"
|
#include "code\modules\mob\language\station_vr.dm"
|
||||||
#include "code\modules\mob\language\station_YW.dm"
|
#include "code\modules\mob\language\station_YW.dm"
|
||||||
|
|||||||
Reference in New Issue
Block a user