mirror of
https://github.com/CHOMPStation2/CHOMPStation2.git
synced 2025-12-13 11:43:31 +00:00
Merge pull request #2103 from CHOMPStationBot/upstream-merge-10515
[MIRROR] Runechat tweak/feature
This commit is contained in:
@@ -167,7 +167,7 @@ var/list/runechat_image_cache = list()
|
|||||||
approx_lines = max(1, mheight / CHAT_MESSAGE_APPROX_LHEIGHT)
|
approx_lines = max(1, mheight / CHAT_MESSAGE_APPROX_LHEIGHT)
|
||||||
|
|
||||||
// Translate any existing messages upwards, apply exponential decay factors to timers
|
// Translate any existing messages upwards, apply exponential decay factors to timers
|
||||||
message_loc = target
|
message_loc = target.runechat_holder(src)
|
||||||
RegisterSignal(message_loc, COMSIG_PARENT_QDELETING, .proc/qdel_self)
|
RegisterSignal(message_loc, COMSIG_PARENT_QDELETING, .proc/qdel_self)
|
||||||
if(owned_by.seen_messages)
|
if(owned_by.seen_messages)
|
||||||
var/idx = 1
|
var/idx = 1
|
||||||
@@ -190,10 +190,10 @@ var/list/runechat_image_cache = list()
|
|||||||
message.plane = PLANE_RUNECHAT
|
message.plane = PLANE_RUNECHAT
|
||||||
message.appearance_flags = APPEARANCE_UI_IGNORE_ALPHA | KEEP_APART
|
message.appearance_flags = APPEARANCE_UI_IGNORE_ALPHA | KEEP_APART
|
||||||
message.alpha = 0
|
message.alpha = 0
|
||||||
message.pixel_y = (owner.bound_height * 0.95)*owner.size_multiplier
|
|
||||||
message.maptext_width = msgwidth
|
message.maptext_width = msgwidth
|
||||||
message.maptext_height = mheight
|
message.maptext_height = mheight
|
||||||
message.maptext_x = (msgwidth - owner.bound_width) * -0.5
|
message.maptext_x = message_loc.runechat_x_offset(msgwidth, mheight)
|
||||||
|
message.maptext_y = message_loc.runechat_y_offset(msgwidth, mheight)
|
||||||
message.maptext = complete_text
|
message.maptext = complete_text
|
||||||
|
|
||||||
if(owner.contains(target)) // Special case, holding an atom speaking (pAI, recorder...)
|
if(owner.contains(target)) // Special case, holding an atom speaking (pAI, recorder...)
|
||||||
@@ -334,3 +334,33 @@ var/list/runechat_image_cache = list()
|
|||||||
if(!M.client)
|
if(!M.client)
|
||||||
continue
|
continue
|
||||||
M.create_chat_message(src, message, italics, classes, audible)
|
M.create_chat_message(src, message, italics, classes, audible)
|
||||||
|
|
||||||
|
// Allows you to specify your desired offset for messages from yourself
|
||||||
|
/atom/proc/runechat_x_offset(width, height)
|
||||||
|
return (width - world.icon_size) * -0.5
|
||||||
|
|
||||||
|
/atom/proc/runechat_y_offset(width, height)
|
||||||
|
return world.icon_size * 0.95
|
||||||
|
|
||||||
|
/atom/movable/runechat_x_offset(width, height)
|
||||||
|
return (width - bound_width) * -0.5
|
||||||
|
|
||||||
|
/atom/movable/runechat_y_offset(width, height)
|
||||||
|
return bound_height * 0.95
|
||||||
|
|
||||||
|
/* Nothing special
|
||||||
|
/mob/runechat_x_offset(width, height)
|
||||||
|
return (width - bound_width) * -0.5
|
||||||
|
*/
|
||||||
|
|
||||||
|
/mob/runechat_y_offset(width, height)
|
||||||
|
return ..()*size_multiplier
|
||||||
|
|
||||||
|
// Allows you to specify a different attachment point for messages from yourself
|
||||||
|
/atom/proc/runechat_holder(datum/chatmessage/CM)
|
||||||
|
return src
|
||||||
|
|
||||||
|
/mob/runechat_holder(datum/chatmessage/CM)
|
||||||
|
if(istype(loc, /obj/item/weapon/holder))
|
||||||
|
return loc
|
||||||
|
return ..()
|
||||||
|
|||||||
Reference in New Issue
Block a user