In case of simultaneous hyperfruit and non-hyperfruit - which happen to
occur on some aspire maps - the desired behaviour is to hyperdash. This
did not previously occur, due to annoying details in how
`HitObjectContainer` is structured.
`HitObjectContainer`'s drawable comparer determines the order of
updating the objects. One could say that forcing the hyperfruit to be
updated last, after normal fruit, could help; unfortunately this is
complicated by the existence of juice streams and the fact that while a
juice stream can be terminated by a normal fruit that is coincidental
with a hyperfruit, the two are not comparable directly using the
comparer in any feasible way.
Therefore, apply a `Catcher`-level workaround that intends to handle
this locally; in short, if a hyperdash was toggled in a given frame, it
cannot be toggled off again in the same frame. This yields the desired
behaviour.