From c2fd3796a97ee8d87544ec26df7d6797acfebd80 Mon Sep 17 00:00:00 2001 From: Crystalwarrior Date: Wed, 11 Sep 2019 00:49:30 +0300 Subject: Add clear_music and clear_areas Comment out the index as it can be potentially confusing alongside "true" area numbers Add "FM" to Packet Received that would reload the areas and music list TODO: Test this with arup systems --- src/packet_distribution.cpp | 42 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) (limited to 'src/packet_distribution.cpp') diff --git a/src/packet_distribution.cpp b/src/packet_distribution.cpp index 40015fd..cfd6d8c 100644 --- a/src/packet_distribution.cpp +++ b/src/packet_distribution.cpp @@ -525,6 +525,48 @@ void AOApplication::server_packet_received(AOPacket *p_packet) send_server_packet(new AOPacket("RD#%")); } + else if (header == "FM") + { + if (!courtroom_constructed) + goto end; + + w_courtroom->clear_music(); + w_courtroom->clear_areas(); + + bool musics_time = false; + int areas = 0; + + for (int n_element = 0 ; n_element < f_contents.size() ; ++n_element) + { + if (musics_time) + { + w_courtroom->append_music(f_contents.at(n_element)); + } + else + { + if (f_contents.at(n_element).endsWith(".wav") || + f_contents.at(n_element).endsWith(".mp3") || + f_contents.at(n_element).endsWith(".mp4") || + f_contents.at(n_element).endsWith(".ogg") || + f_contents.at(n_element).endsWith(".opus")) + { + musics_time = true; + w_courtroom->fix_last_area(); + w_courtroom->append_music(f_contents.at(n_element)); + areas--; +// qDebug() << "wtf!!" << f_contents.at(n_element); + } + else + { + w_courtroom->append_area(f_contents.at(n_element)); + areas++; + } + } + } + + w_courtroom->list_music(); + w_courtroom->list_areas(); + } else if (header == "DONE") { if (!courtroom_constructed) -- cgit From dd2daf55f3d987fddb47a5afd269eaf00a674b8d Mon Sep 17 00:00:00 2001 From: sD Date: Sun, 15 Mar 2020 13:20:33 +0100 Subject: it's basically the same packet minus requesting the next list --- src/packet_distribution.cpp | 51 ++++++--------------------------------------- 1 file changed, 6 insertions(+), 45 deletions(-) (limited to 'src/packet_distribution.cpp') diff --git a/src/packet_distribution.cpp b/src/packet_distribution.cpp index c381278..b14cd57 100644 --- a/src/packet_distribution.cpp +++ b/src/packet_distribution.cpp @@ -515,11 +515,14 @@ void AOApplication::server_packet_received(AOPacket *p_packet) send_server_packet(new AOPacket("RM#%")); } - else if (header == "SM") + else if (header == "SM" || header == "FM") { if (!courtroom_constructed) goto end; + w_courtroom->clear_music(); + w_courtroom->clear_areas(); + bool musiclist_start = false; area_count = 0; @@ -543,50 +546,8 @@ void AOApplication::server_packet_received(AOPacket *p_packet) } } QThreadPool::globalInstance()->waitForDone(); - - send_server_packet(new AOPacket("RD#%")); - } - else if (header == "FM") - { - if (!courtroom_constructed) - goto end; - - w_courtroom->clear_music(); - w_courtroom->clear_areas(); - - bool musics_time = false; - int areas = 0; - - for (int n_element = 0 ; n_element < f_contents.size() ; ++n_element) - { - if (musics_time) - { - w_courtroom->append_music(f_contents.at(n_element)); - } - else - { - if (f_contents.at(n_element).endsWith(".wav") || - f_contents.at(n_element).endsWith(".mp3") || - f_contents.at(n_element).endsWith(".mp4") || - f_contents.at(n_element).endsWith(".ogg") || - f_contents.at(n_element).endsWith(".opus")) - { - musics_time = true; - w_courtroom->fix_last_area(); - w_courtroom->append_music(f_contents.at(n_element)); - areas--; -// qDebug() << "wtf!!" << f_contents.at(n_element); - } - else - { - w_courtroom->append_area(f_contents.at(n_element)); - areas++; - } - } - } - - w_courtroom->list_music(); - w_courtroom->list_areas(); + if (header == "SM") + send_server_packet(new AOPacket("RD#%")); } else if (header == "DONE") { -- cgit