fix annoying hold tail 1px overlap

This commit is contained in:
Colby Klein
2019-03-12 10:37:56 -07:00
parent 7fc73af922
commit c0c26697a1
+14 -13
View File
@@ -1045,24 +1045,25 @@ void NoteDisplay::DrawHoldBodyInternal(vector<Sprite*>& 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);
}