Commit Graph

154 Commits

Author SHA1 Message Date
Dean Herbert 298989ffd2 Merge branch 'master' into sample-set-controls 2023-05-24 14:03:04 +09:00
Dean Herbert 83dcd78826 Make `HitSampleInfo.Bank` non-nullable 2023-05-16 18:12:56 +09:00
OliBomby bf1951fc38 Fix incorrect xmldoc 2023-04-25 12:54:45 +02:00
Dean Herbert 044b0604b2 Move `OmitFirstBarLine` to `TimingControlPoint` 2023-02-28 19:29:31 +09:00
ansel 51e21ee6f0 Make snapped time always positive 2023-01-12 03:38:57 +03:00
Berkan Diler 08d2fbeb8e Use new ArgumentNullException.ThrowIfNull throw-helper API 2022-12-22 21:27:59 +01:00
Dean Herbert 4a7d7c6ed9 Use `MaxBy` in all locations that can and update inspection level to match `dotnet-build` 2022-12-19 16:47:10 +09:00
Dean Herbert 192536643c Fix some more inspections 2022-12-16 20:21:19 +09:00
Dean Herbert 27c497145f Fix the MOTHERLOAD of undetected issues that are now visible thanks to net6.0 2022-12-16 18:16:26 +09:00
Dean Herbert 5c13c443ff Fix incorrect fallback logic
Regressed when attempting to share implementation of binary search.
2022-10-20 23:08:44 +09:00
Dean Herbert a754dc6d3b
Expose binary search methods publicly
Co-authored-by: Dan Balasescu <smoogipoo@smgi.me>
2022-10-20 14:34:07 +09:00
Dean Herbert 78943a21d8
Update osu.Game/Beatmaps/ControlPoints/IControlPoint.cs
Co-authored-by: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2022-10-20 08:06:05 +09:00
Dean Herbert 579d5b51eb Add and consume sample bank constants 2022-10-19 20:47:58 +09:00
Dean Herbert ec3761ced9 Standardise control point search logic in `OverlappingScrollAlgorithm`
Was using a very local algorithm which I cannot guarantee is correct.
I'd rather it just use the one used everywhere else.
2022-10-18 16:01:05 +09:00
o-dasher feadac1f79 Cleanup all other leftover binding instantiation 2022-09-25 16:02:40 -04:00
Dean Herbert 31a447fda0 Update parameter discards 2022-06-24 21:26:19 +09:00
Dan Balasescu 6a26461683 Compare by reference in ControlPoint.Equals() 2022-06-21 12:05:28 +09:00
Dan Balasescu 16281f4a48 Properly annotate method to allow null 2022-06-20 16:56:19 +09:00
Dan Balasescu 03ab6fc141 Implement IEquatable on ControlPoint 2022-06-20 15:27:43 +09:00
Dan Balasescu f8830c6850 Automated #nullable processing 2022-06-17 16:37:17 +09:00
Dean Herbert 588c5d1583 Add initial waveform comparison display 2022-05-24 14:36:44 +09:00
Bartłomiej Dach d0c01afc2e
Add flow for changing set of valid divisors between presets 2022-02-27 15:37:51 +01:00
Bartłomiej Dach 735414bc49
Replace `TimeSignatures` enum with struct for storage of arbitrary meter 2022-01-22 20:50:31 +01:00
Dean Herbert 6944151486 Apply batch fixing of built-in types using `var` 2021-10-27 13:04:41 +09:00
Dean Herbert 34f875187c Copy time between `ControlPoint`s 2021-09-10 14:36:38 +09:00
Dean Herbert eabca016d4 Throw rather than ignore on invalid control point addition 2021-09-06 22:04:37 +09:00
Dean Herbert 693ecdf62a Refactor some incorrect/outdated terminology 2021-09-06 21:32:43 +09:00
Dean Herbert 766d789845 Rename `ApproachRate` to `ScrollSpeed` for now (to reduce complexity/confusion) 2021-09-06 21:06:13 +09:00
Dean Herbert a3d9ab1e2e Move approach rate to `EffectControlPoint` 2021-09-03 16:58:16 +09:00
Dean Herbert db3fc1d4af Move `DifficultyControlPoint`s list to `LegacyControlPointInfo` 2021-09-03 16:58:16 +09:00
Dean Herbert d988aa1680 Actually serialise `SampleControlPoint`s along with `HitObject`s 2021-08-31 15:14:03 +09:00
Dean Herbert a2cff75fc0 Fix editor not cloning control points as expected 2021-08-30 21:55:08 +09:00
Dean Herbert ccacf56dd8 Move to legacy namespace 2021-08-30 17:14:53 +09:00
Dean Herbert 7257aae7f2 Move samples to `LegacyControlPointInfo` 2021-08-30 17:14:53 +09:00
Dean Herbert 3c028ce05c Add `IDeepCloneable` interface and update existing `CreateCopy` methods to use it 2021-07-19 12:54:17 +09:00
Dean Herbert 5944c45f55 Specify types explicitly and don't handle non-nullable values with fallbacks 2021-06-16 16:24:30 +09:00
Justus Franklin Tumacder 0d077b7a5d Fix GetClosestBeatDivisor returning the wrong divisor 2021-05-01 14:13:42 +08:00
Dean Herbert 859898d98f Refactor lookup methods to avoid linq and reduce `TimingPointAt` calls 2021-04-28 17:16:05 +09:00
Dean Herbert c5186b6a69 Revert return values to non-rounded doubles 2021-04-28 16:59:49 +09:00
Dean Herbert f3c7694eeb Rename methods to match generally how these find-methods are named elsewhere 2021-04-28 16:57:52 +09:00
Dean Herbert 48d6c9ac4b Move snap/divisor helper methods to inside `ControlPointInfo` 2021-04-28 16:47:30 +09:00
Dean Herbert be08b9d1ef Combine logic of Difficulty and Timing pieces where feasible 2021-04-14 20:55:34 +09:00
Dean Herbert a8df2388eb Update design for TimingControlPoint 2021-04-14 20:11:47 +09:00
Dean Herbert 0195d654ca Increase the precision of speed multiplier to match osu-stable 2021-03-19 17:09:49 +09:00
smoogipoo c6e9a6cd5a Make most common BPM more accurate 2021-01-15 14:28:49 +09:00
Dean Herbert 69ac22dd7f Fix incorrectly copy pasted xmldoc 2021-01-07 19:06:10 +09:00
Dean Herbert caa88c6100 Use CreateCopy instead of Clone interface
I was going for conformity by using the IClonable interface, but it
doesn't look like we use it anywhere else in the project.
2021-01-05 13:13:52 +09:00
Dean Herbert ba4e411422 Clone and copy ControlPointInfo when retrieving a playable beatmap 2021-01-04 16:37:07 +09:00
smoogipoo 2150cf1c52 Rename parameters 2020-12-02 10:55:48 +09:00
smoogipoo 5760e1c1fc Make HitSampleInfo immutable 2020-12-01 15:37:51 +09:00