From 692a052c6303cfbd9daecbcec99c54441f6b3af2 Mon Sep 17 00:00:00 2001 From: Vito Caputo Date: Wed, 25 Oct 2023 23:00:48 -0700 Subject: modules/submit: give transparent an advantage as overlay This makes transparent "winning" more likely, ~ensuring what's below gets screen time. I'm not sure if it's a keeper. Maybe it should be a setting if transparent is biased to win/lose/none as overlay. --- src/modules/submit/submit.c | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'src/modules/submit') diff --git a/src/modules/submit/submit.c b/src/modules/submit/submit.c index 753b8bb..415f795 100644 --- a/src/modules/submit/submit.c +++ b/src/modules/submit/submit.c @@ -323,6 +323,7 @@ static void submit_destroy_context(til_module_context_t *context) static void submit_prepare_frame(til_module_context_t *context, til_stream_t *stream, unsigned ticks, til_fb_fragment_t **fragment_ptr, til_frame_plan_t *res_frame_plan) { submit_context_t *ctxt = (submit_context_t *)context; + til_fb_fragment_t *fragment = *fragment_ptr; *res_frame_plan = (til_frame_plan_t){ .fragmenter = til_fragmenter_tile64 }; @@ -335,6 +336,9 @@ static void submit_prepare_frame(til_module_context_t *context, til_stream_t *st for (int i = 0; i < NUM_PLAYERS; i++) { int moves = rand_r(&ctxt->til_module_context.seed) % TICKS_PER_FRAME; + if (fragment->cleared && colors[i + 1].a == 0.f) + moves = MIN(TICKS_PER_FRAME, moves + (TICKS_PER_FRAME / 10)); + for (int j = 0; j < moves; j++) grid_player_plan(ctxt->players[i], ctxt->seq++, rand_r(&ctxt->til_module_context.seed) % GRID_SIZE, -- cgit v1.2.3