Skip to content

Commit

Permalink
"progress" on non-working countdown
Browse files Browse the repository at this point in the history
  • Loading branch information
jnackmclain committed Jan 8, 2024
1 parent 52b9506 commit b69134b
Show file tree
Hide file tree
Showing 13 changed files with 1,214 additions and 4 deletions.
1 change: 1 addition & 0 deletions _ark/config/band.dta
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
#include xlast_macros_update.dta
#endif
#include ../dx/config/dx_macros.dta
#include ../dx/countdown/dx_countdown.dta
#ifdef HX_WII
#define PATCH_NO_STICKERS
(1)
Expand Down
1 change: 1 addition & 0 deletions _ark/config/beatmatcher.dta
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
{handle_type
($world halfbeat)})
(beat
;DX_COUNTDOWN_TRACKER
{unless {> {gamecfg get practice_speed} 0} {if {is_leader_local} {session send_msg_to_all {` (beatmatch set_music_speed {, $speedmod}) kNetReliable}}}}
{unless {> {gamecfg get practice_speed} 0} {beatmatch set_music_speed $speedmod}}
{if_else
Expand Down
1 change: 1 addition & 0 deletions _ark/config/midi_parsers.dta
Original file line number Diff line number Diff line change
Expand Up @@ -80,6 +80,7 @@
{game get_venue}
"video"}
FALSE}}
#include ../dx/countdown/dx_countdown_midi_parsers.dta
{new
MidiParser
events_parser
Expand Down
139 changes: 139 additions & 0 deletions _ark/dx/countdown/dx_countdown.dta
Original file line number Diff line number Diff line change
@@ -0,0 +1,139 @@
#define DX_COUNTDOWN_TRACKER
(
{beatmatch foreach_active_player $player ;dx - add our custom fc checking callbacks to the currently loaded player
;{set $dx_current_checked_slot {{$player get_user} get_slot_num}}
{set $dx_current_checked_instrument {$player instrument}}
{if {== {$player instrument} vocals}
{if $dx_countdown_enabled
{unless $delay_tracked_vocals
{foreach $entry $vocals_note_tracker
{if {== {elem $entry 0} {sprint "delay_" $current_tracked_beat_vocals}}
{set $tracked_beat_no_notes_start_vocals {elem {find $entry {sprint "delay_" $current_tracked_beat_vocals}} 1}}
{set $tracked_beat_no_notes_end_vocals {elem {find $entry {sprint "delay_" $current_tracked_beat_vocals}} 2}}
{set $delay_tracked_vocals TRUE}
}
}
}
{if $delay_tracked_vocals
{if {>= {dx_get_current_beat} $tracked_beat_no_notes_start_vocals}
{dx_check_beat {- $tracked_beat_no_notes_end_vocals {dx_get_current_beat}}}
}
}
}
}
{if {&& $dx_countdown_enabled {! {== {$player instrument} vocals}}}
{switch $dx_current_checked_instrument
(guitar {set $dx_current_search_tracker {sprint "delay_" $current_tracked_beat_0}})
(bass {set $dx_current_search_tracker {sprint "delay_" $current_tracked_beat_1}})
(drum {set $dx_current_search_tracker {sprint "delay_" $current_tracked_beat_2}})
}
{unless
{switch $dx_current_checked_instrument
(guitar $delay_tracked_0)
(bass $delay_tracked_1)
(drum $delay_tracked_2)
}
{switch $dx_current_checked_instrument
(guitar
{dx_log_writer countdown {sprint $dx_current_checked_instrument $dx_current_search_tracker " found, " $dx_current_checked_instrument " Start: " $tracked_beat_no_notes_start_guitar ", " $dx_current_checked_instrument " End: " $tracked_beat_no_notes_end_guitar ", Current Beat: " {dx_get_current_beat}}}
)
(bass
{dx_log_writer countdown {sprint $dx_current_checked_instrument $dx_current_search_tracker " found, " $dx_current_checked_instrument " Start: " $tracked_beat_no_notes_start_bass ", " $dx_current_checked_instrument " End: " $tracked_beat_no_notes_end_bass ", Current Beat: " {dx_get_current_beat}}}
)
(drum
{dx_log_writer countdown {sprint $dx_current_checked_instrument $dx_current_search_tracker " found, " $dx_current_checked_instrument " Start: " $tracked_beat_no_notes_start_drum ", " $dx_current_checked_instrument " End: " $tracked_beat_no_notes_end_drum ", Current Beat: " {dx_get_current_beat}}}
)
}
{foreach $entry
{switch $dx_current_checked_instrument
(guitar $guitar_note_tracker)
(bass $bass_note_tracker)
(keys $keys_note_tracker)
(drum $drum_note_tracker)
}
{if {== {elem $entry 0}
{switch $dx_current_checked_instrument
(guitar {sprint "delay_" $current_tracked_beat_0})
(bass {sprint "delay_" $current_tracked_beat_1})
(drum {sprint "delay_" $current_tracked_beat_2})
(3 {sprint "delay_" $current_tracked_beat_3})
}
}
{switch $dx_current_checked_instrument
(guitar
{set $tracked_beat_no_notes_start_guitar {elem {find $entry $dx_current_search_tracker} 1}}
{set $tracked_beat_no_notes_end_guitar {elem {find $entry $dx_current_search_tracker} 2}}
)
(bass
{set $tracked_beat_no_notes_start_bass {elem {find $entry $dx_current_search_tracker} 1}}
{set $tracked_beat_no_notes_end_bass {elem {find $entry $dx_current_search_tracker} 2}}
)
(drum
{set $tracked_beat_no_notes_start_drum {elem {find $entry $dx_current_search_tracker} 1}}
{set $tracked_beat_no_notes_end_drum {elem {find $entry $dx_current_search_tracker} 2}}
)
}
{switch $dx_current_checked_instrument
(guitar {set $delay_tracked_0 TRUE})
(bass {set $delay_tracked_1 TRUE})
(drum {set $delay_tracked_2 TRUE})
}
}
}
}
{if
{switch $dx_current_checked_instrument
(guitar $delay_tracked_0)
(bass $delay_tracked_1)
(drum $delay_tracked_2)
}
{switch $dx_current_checked_instrument
(guitar
{if {>= {dx_get_current_beat} $tracked_beat_no_notes_start_guitar}
{unless $dx_log_stopper
{set $dx_log_stopper TRUE}
{dx_log_writer countdown {sprint "Current Beat: " {dx_get_current_beat} " matches " $dx_current_checked_instrument " break start: " $tracked_beat_no_notes_start_guitar ", counting down to end of " $dx_current_checked_instrument " break at: " $tracked_beat_no_notes_end_guitar}}
}
{dx_check_beat {- $tracked_beat_no_notes_end_guitar {dx_get_current_beat}}}
}
)
(bass
{if {>= {dx_get_current_beat} $tracked_beat_no_notes_start_bass}
{unless $dx_log_stopper
{set $dx_log_stopper TRUE}
{dx_log_writer countdown {sprint "Current Beat: " {dx_get_current_beat} " matches " $dx_current_checked_instrument " break start: " $tracked_beat_no_notes_start_bass ", counting down to end of " $dx_current_checked_instrument " break at: " $tracked_beat_no_notes_end_bass}}
}
{dx_check_beat {- $tracked_beat_no_notes_end_bass {dx_get_current_beat}}}
}
)
(drum
{if {>= {dx_get_current_beat} $tracked_beat_no_notes_start_drum}
{unless $dx_log_stopper
{set $dx_log_stopper TRUE}
{dx_log_writer countdown {sprint "Current Beat: " {dx_get_current_beat} " matches " $dx_current_checked_instrument " break start: " $tracked_beat_no_notes_start_drum ", counting down to end of " $dx_current_checked_instrument " break at: " $tracked_beat_no_notes_end_drum}}
}
{dx_check_beat {- $tracked_beat_no_notes_end_drum {dx_get_current_beat}}}
}
)
}
}
}
{if $dx_end_song_feedback
{switch $dx_current_checked_instrument
(guitar
{if {== {dx_get_current_beat} {+ $dx_final_note_guitar 1}} {dx_show_solo_box} {dx_final_note_report}}
{if {== {dx_get_current_beat} {+ $dx_final_note_guitar 7}} {dx_final_percent_report}}
)
(bass
{if {== {dx_get_current_beat} {+ $dx_final_note_bass 1}} {dx_show_solo_box} {dx_final_note_report}}
{if {== {dx_get_current_beat} {+ $dx_final_note_bass 7}} {dx_final_percent_report}}
)
(drum
{if {== {dx_get_current_beat} {+ $dx_final_note_drum 1}} {dx_show_solo_box} {dx_final_note_report}}
{if {== {dx_get_current_beat} {+ $dx_final_note_drum 7}} {dx_final_percent_report}}
)
}
}
}
{dx_log_writer countdown {sprint "Current Beat: " {dx_get_current_beat}}}
)
Loading

0 comments on commit b69134b

Please sign in to comment.