From 8cc067dee42ede24614f1a7bccef7f8752f56a01 Mon Sep 17 00:00:00 2001 From: Crystalwarrior Date: Fri, 11 Sep 2020 22:17:13 +0300 Subject: More accurate/consistent blip rate functionality inspired by https://youtu.be/Min0hkwO43g --- src/courtroom.cpp | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) (limited to 'src') diff --git a/src/courtroom.cpp b/src/courtroom.cpp index 04c625fe..3e00158e 100644 --- a/src/courtroom.cpp +++ b/src/courtroom.cpp @@ -2938,11 +2938,23 @@ void Courtroom::chat_tick() ui_vp_message->ensureCursorVisible(); - // Blip player and real tick pos ticker - if (!formatting_char && (f_character != ' ' || blank_blip)) { - if (blip_ticker % blip_rate == 0) { + // We blip every "blip rate" letters. + // Here's an example with blank_blip being false and blip_rate being 2: + // I am you + // ! ! ! ! + // where ! is the blip sound + if (blip_ticker % blip_rate == 0) { + // ignoring white space unless blank_blip is enabled. + if (!formatting_char && (f_character != ' ' || blank_blip)) { blip_player->blip_tick(); + ++blip_ticker; } + } + else + { + // Don't fully ignore whitespace still, keep ticking until + // we reached the need to play a blip sound - we also just + // need to wait for a letter to play it on. ++blip_ticker; } -- cgit