Add blip rate of 0 which only plays a single blip sound per message (#659)
* Add blip rate of 0 which only plays a single blip sound per message * don't have copy-pasted code I GUESS
This commit is contained in:
		
							parent
							
								
									fa6eef8eba
								
							
						
					
					
						commit
						df1c8ccd83
					
				@ -751,10 +751,10 @@ AOOptionsDialog::AOOptionsDialog(QWidget *parent, AOApplication *p_ao_app)
 | 
			
		||||
  ui_audio_layout->setWidget(row, QFormLayout::LabelRole, ui_bliprate_lbl);
 | 
			
		||||
 | 
			
		||||
  ui_bliprate_spinbox = new QSpinBox(ui_audio_widget);
 | 
			
		||||
  ui_bliprate_spinbox->setMinimum(1);
 | 
			
		||||
  ui_bliprate_spinbox->setMinimum(0);
 | 
			
		||||
  ui_bliprate_spinbox->setToolTip(
 | 
			
		||||
      tr("Play a blip sound \"once per every X symbols\", where "
 | 
			
		||||
         "X is the blip rate."));
 | 
			
		||||
         "X is the blip rate. 0 plays a blip sound only once."));
 | 
			
		||||
 | 
			
		||||
  ui_audio_layout->setWidget(row, QFormLayout::FieldRole, ui_bliprate_spinbox);
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -3614,7 +3614,7 @@ void Courtroom::chat_tick()
 | 
			
		||||
    // ! !  ! !
 | 
			
		||||
    // where ! is the blip sound
 | 
			
		||||
    int b_rate = blip_rate;
 | 
			
		||||
    // Earrape prevention without using timers, this method is more consistent.
 | 
			
		||||
    // Overwhelming blip spam prevention, this method is more consistent than timers
 | 
			
		||||
    if (msg_delay != 0 && msg_delay <= 25) {
 | 
			
		||||
      // The default blip speed is 40ms, and if current msg_delay is 25ms,
 | 
			
		||||
      // the formula will result in the blip rate of:
 | 
			
		||||
@ -3625,7 +3625,7 @@ void Courtroom::chat_tick()
 | 
			
		||||
          qMax(b_rate, qRound(static_cast<float>(text_crawl) /
 | 
			
		||||
                              msg_delay));
 | 
			
		||||
    }
 | 
			
		||||
    if (blip_ticker % b_rate == 0) {
 | 
			
		||||
    if ((blip_rate <= 0 && blip_ticker < 1) || (b_rate > 0 && blip_ticker % b_rate == 0)) {
 | 
			
		||||
      // ignoring white space unless blank_blip is enabled.
 | 
			
		||||
      if (!formatting_char && (f_character != ' ' || blank_blip)) {
 | 
			
		||||
        blip_player->blip_tick();
 | 
			
		||||
 | 
			
		||||
@ -10,8 +10,8 @@ int AOApplication::read_blip_rate()
 | 
			
		||||
{
 | 
			
		||||
  int result = configini->value("blip_rate", 2).toInt();
 | 
			
		||||
 | 
			
		||||
  if (result < 1)
 | 
			
		||||
    return 1;
 | 
			
		||||
  if (result < 0)
 | 
			
		||||
    return 0;
 | 
			
		||||
 | 
			
		||||
  return result;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
		Loading…
	
		Reference in New Issue
	
	Block a user