aboutsummaryrefslogtreecommitdiff
path: root/src/courtroom.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/courtroom.cpp')
-rw-r--r--src/courtroom.cpp18
1 files changed, 11 insertions, 7 deletions
diff --git a/src/courtroom.cpp b/src/courtroom.cpp
index e79d3d5..ce4b982 100644
--- a/src/courtroom.cpp
+++ b/src/courtroom.cpp
@@ -2910,8 +2910,15 @@ void Courtroom::handle_ic_message()
{
// Update the chatbox information
initialize_chatbox();
-
- do_transition(m_chatmessage[DESK_MOD], last_side, m_chatmessage[SIDE]);
+ if (m_chatmessage[EMOTE] != "")
+ {
+ do_transition(m_chatmessage[DESK_MOD], last_side, m_chatmessage[SIDE]);
+ }
+ else
+ {
+ play_sfx();
+ start_chat_ticking();
+ }
// if we have instant objections disabled, and queue is not empty, check if next message after this is an objection.
if (!Options::getInstance().objectionSkipQueueEnabled() && chatmessage_queue.size() > 0)
@@ -2974,10 +2981,7 @@ void Courtroom::do_screenshake()
void Courtroom::do_transition(QString p_desk_mod, QString oldPosId, QString newPosId)
{
- if (m_chatmessage[EMOTE].isEmpty())
- {
- display_character();
- }
+ display_character();
const QStringList legacy_pos = {"def", "wit", "pro"};
QString t_old_pos = oldPosId;
@@ -3000,7 +3004,7 @@ void Courtroom::do_transition(QString p_desk_mod, QString oldPosId, QString newP
int duration = ao_app->get_pos_transition_duration(t_old_pos, t_new_pos);
// conditions to stop slide
- if (m_chatmessage[EMOTE].isEmpty() || oldPosId == newPosId || old_pos_pair.first != new_pos_pair.first || !new_pos_pair.second.isValid() || !Options::getInstance().slidesEnabled() || m_chatmessage[SLIDE] != "1" || duration == -1 || m_chatmessage[EMOTE_MOD].toInt() == ZOOM || m_chatmessage[EMOTE_MOD].toInt() == PREANIM_ZOOM)
+ if (oldPosId == newPosId || old_pos_pair.first != new_pos_pair.first || !new_pos_pair.second.isValid() || !Options::getInstance().slidesEnabled() || m_chatmessage[SLIDE] != "1" || duration == -1 || m_chatmessage[EMOTE_MOD].toInt() == ZOOM || m_chatmessage[EMOTE_MOD].toInt() == PREANIM_ZOOM)
{
#ifdef DEBUG_TRANSITION
qDebug() << "skipping transition - not applicable";