diff --git a/src/NoteDisplay.cpp b/src/NoteDisplay.cpp index b82b9bba1f..6525b668c5 100644 --- a/src/NoteDisplay.cpp +++ b/src/NoteDisplay.cpp @@ -1045,24 +1045,25 @@ void NoteDisplay::DrawHoldBodyInternal(vector& sprite_top, const float bottom_beat, bool glow) { // Draw the top cap - part_args.y_top= head_minus_top; - part_args.y_bottom= y_head; - part_args.top_beat= top_beat; - part_args.bottom_beat= top_beat; - part_args.wrapping= false; + part_args.y_top = head_minus_top; + part_args.y_bottom = y_head; + part_args.top_beat = top_beat; + part_args.bottom_beat = top_beat; + part_args.wrapping = false; DrawHoldPart(sprite_top, field_args, column_args, part_args, glow, hpt_top); // Draw the body - part_args.y_top= y_head; - part_args.y_bottom= y_tail; - part_args.bottom_beat= bottom_beat; - part_args.wrapping= true; + part_args.y_top = y_head; + part_args.y_bottom = y_tail; + part_args.bottom_beat = bottom_beat; + part_args.wrapping = true; DrawHoldPart(sprite_body, field_args, column_args, part_args, glow, hpt_body); // Draw the bottom cap - part_args.y_top= y_tail; - part_args.y_bottom = tail_plus_bottom; + float overlap_hack = 1.0f; + part_args.y_top = y_tail + overlap_hack; + part_args.y_bottom = tail_plus_bottom + overlap_hack; part_args.top_beat = bottom_beat; - part_args.y_start_pos = max(part_args.y_start_pos, y_head); - part_args.wrapping= false; + part_args.y_start_pos = fmaxf(part_args.y_start_pos, y_head); + part_args.wrapping = false; DrawHoldPart(sprite_bottom, field_args, column_args, part_args, glow, hpt_bottom); }