Thomas Müller-Höhne
926636cc03
Generalize Bezier curves to BSplines of Nth degree
2023-11-11 13:32:53 +01:00
Poyo
064857c40b
Calculate unstable rate using rate-adjusted offsets
2023-11-10 19:57:44 -08:00
Dean Herbert
34505b3933
Merge pull request #25185 from bdach/minimum-sample-volume
2023-10-24 22:04:43 +09:00
Bartłomiej Dach
b321d556b6
Enforce minimum gameplay sample volume of 5%
2023-10-20 15:50:13 +02:00
Dean Herbert
906b700aca
Fix fudge not being applied
2023-10-20 20:18:14 +09:00
Dean Herbert
3fb74cb5f9
Move helper method to LegacyRulesetExtensions
and stop applying rounding allowance to catch
...
As discussed, it isn't used in stable like this. Was a mistake.
2023-10-20 18:57:14 +09:00
Dan Balasescu
939b55020c
Merge branch 'master' into legacy-tick-test-coverage
2023-10-18 15:21:31 +09:00
Dean Herbert
e081fa48a2
Fix various other inspections
2023-10-17 17:48:51 +09:00
Dan Balasescu
a1a46e58fc
Move validation to DHO.ApplyResult()
2023-10-10 21:42:37 +09:00
Dean Herbert
cfb18e18c0
Add better commenting around legacy last tick edge case
2023-10-04 13:45:26 +09:00
Dean Herbert
62bcb62842
Document remaining pieces of LastTick
and add back legacy prefix for generation flow
2023-09-29 16:58:17 +09:00
Dean Herbert
81485c548c
Move LegacyLastTickOffset
specification to generation code and stop passing everywhere
2023-09-29 14:32:29 +09:00
Bartłomiej Dach
28da5baea4
Merge branch 'master' into fix-slider-length
2023-09-20 11:10:01 +02:00
Dean Herbert
aea7f81f1c
Merge pull request #24800 from sw1tchbl4d3r/invalid_bank
...
Default to normal bank if invalid sample bank is specified
2023-09-19 22:28:34 +09:00
Bartłomiej Dach
c4a0ca326e
Replace sample bank fix with more correct fix
...
stable does not treat unknown enum members as `None` / `Auto`, it treats
them as `Normal`:
switch (sampleSet)
{
case SampleSet.Normal:
default:
sample = 0;
break;
case SampleSet.None:
case SampleSet.Soft:
sample = 1;
break;
case SampleSet.Drum:
sample = 2;
break;
}
(from 1531237b63/osu
!/Audio/AudioEngine.cs#L1158-L1171).
2023-09-19 13:53:49 +02:00
Magnus-Cosmos
73db68a49a
Check if path lists are empty
2023-09-19 02:28:28 -04:00
Magnus-Cosmos
a9b45c6fdc
Fix slider path calculations for edge cases
2023-09-19 01:31:26 -04:00
Magnus-Cosmos
83584519e6
Fix extension check using control points instead of path points
2023-09-18 11:40:00 -04:00
Dean Herbert
56cc2b62f0
Make not extension method
2023-09-15 18:13:04 +09:00
Dean Herbert
0031da76ff
Move to extension method and throw on non-legacy ruleset
2023-09-15 17:38:34 +09:00
sw1tchbl4d3
5b2af7f264
Default to none bank if invalid samplebank is specified
2023-09-13 12:44:00 +02:00
Dean Herbert
4ecc4632aa
Make rounding error even less precise
...
Basically matching the old code more closely to avoid too much precision
from doing math in a slightly different way.
2023-09-12 18:41:09 +09:00
Dean Herbert
b34a36f6ce
Remove all usage of LegacyDifficultyControlPoint
2023-09-07 17:41:57 +09:00
Dean Herbert
1a37543d28
Rename SliderVelocity
to SliderVelocityMultiplier
to distinguish from Velocity
2023-09-06 19:01:08 +09:00
Bartłomiej Dach
8cd9f0822a
Merge branch 'master' into judge-fix
2023-08-22 09:44:58 +02:00
Bartłomiej Dach
5be5335784
Reword comment to be better
2023-08-22 09:37:54 +02:00
OliBomby
e283aa2843
Update inline comments
2023-08-21 13:09:31 +02:00
Bartłomiej Dach
1d657a8844
Merge branch 'master' into fix-slider-reversing
2023-08-21 09:29:46 +02:00
Bartłomiej Dach
dd1ac461db
Reformat xmldoc
2023-08-21 08:29:51 +02:00
OliBomby
56b1062c2f
expand xmldoc
2023-08-19 19:39:29 +02:00
Bartłomiej Dach
0a55830c16
Add braces for clarification
...
I like no-braces for single-line ifs as much as anyone, but with inline
comments involved it gets rather dicey.
2023-08-19 14:34:20 +02:00
Pasi4K5
44a85139e4
Update Reverse()
based on the changes in #24581
2023-08-19 02:40:18 +02:00
Pasi4K5
47d787b359
Merge remote-tracking branch 'OliBomby/fix-segment-ends' into fix-slider-reversing
2023-08-19 02:38:34 +02:00
Pasi4K5
0e691d5935
Revert changes in SliderPath
2023-08-19 00:16:05 +02:00
OliBomby
ff07fbae15
fix GetSegmentEnds
2023-08-18 12:20:40 +02:00
Pasi4K5
3481c41a22
Fix segmentEnds
being calculated incorrectly
2023-08-18 04:34:10 +02:00
Pasi4K5
58bffa13cd
Fix possible IndexOutOfRangeException
2023-08-16 01:19:41 +02:00
Pasi4K5
e7e0c49f42
Replace .Distinct()
with truncateEndingDuplicates()
2023-08-16 01:14:25 +02:00
Pasi4K5
6346872c39
Improve code readability and add assertion to test scene
2023-08-15 23:27:12 +02:00
Pasi4K5
449bee98cc
Code cleanup
2023-08-14 21:56:08 +02:00
Pasi4K5
19c8b74a47
Remove unnecessary circle arc approximation
2023-08-14 21:09:58 +02:00
Pasi4K5
55ac942e7a
Fix IndexOutOfRangeException
when trying to reverse a zero-length slider
2023-08-14 14:09:08 +02:00
Pasi4K5
f42b3603b3
Fix linear sliders sometimes being reversed incorrectly
...
Extract control point reversing to separate method
2023-08-14 14:08:02 +02:00
Pasi4K5
8912a0e91e
Fix sliders being reversed incorrectly in the editor.
2023-08-12 20:30:48 +02:00
OliBomby
d2f5e696e7
Fix DrawableHitObject state not synchronizing with hitobject edits
2023-08-11 22:34:04 +02:00
OliBomby
5d82190b70
Merge remote-tracking branch 'upstream/master' into legacy-export
2023-07-18 12:18:49 +02:00
OliBomby
06e5ef88c0
legacy export broken
2023-07-11 02:30:16 +02:00
Bartłomiej Dach
56a2ba4ac0
Fix GenerateTicks
being lost during osu! beatmap conversion process
2023-07-08 23:24:38 +02:00
Dean Herbert
e0fc97bb93
Replace various local implementations of rewinding checks with new property
2023-07-07 15:21:24 +09:00
Dean Herbert
3f8dfc7cb0
Fix fallback for Judged
to be more correct
...
Without this change, when the `Judged` value is checked on an
`HitObjectLifetimeEntry` it would return `true` if a `DrawableHitObject`
has not yet been associated with the entry. Which is completely wrong.
Of note, the usage in `DrawableHitObject` will have never fallen through
to this incorrect value as they always have a result populated:
f26f001e1d/osu.Game/Rulesets/Objects/Drawables/DrawableHitObject.cs (L721-L726)
2023-07-05 18:03:58 +09:00
Bartłomiej Dach
6c4e52821d
Redirect judgement-related flags from DHO to HOLE
2023-07-04 23:45:08 +02:00
Bartłomiej Dach
0ceaf3c451
Ensure synthetic entries from non-pooled DHO are linked to parents
2023-07-04 23:45:08 +02:00
Bartłomiej Dach
bae7670855
Redirect HitObjectEntryManager
child mapping to HOLE
2023-07-04 23:41:06 +02:00
Bartłomiej Dach
6dc8c7b617
Add HitObjectLifetimeEntry.NestedEntries
2023-07-04 23:39:56 +02:00
Dean Herbert
df5b389629
Manual fixes to reduce warnings to zero
2023-06-24 01:52:53 +09:00
Dean Herbert
0ab0c52ad5
Automated pass
2023-06-24 01:00:03 +09:00
Salman Ahmed
62cb6a98ca
Remove redundant nullable suppression directives
2023-06-07 08:20:41 +03:00
Bartłomiej Dach
afdddb0195
Merge pull request #23582 from peppy/placement-blueprint-timeline-combo-fixes
...
Fix timeline blueprint display not showing correct combo number / colour during placement
2023-05-20 15:02:55 +02:00
Dean Herbert
8d925c8a8a
Move combo information updating to an interface level helper method
2023-05-17 17:26:19 +09:00
Dean Herbert
510ebe1f23
Fix weird optional usage in HitSampleInfo.With
2023-05-17 14:11:52 +09:00
Dean Herbert
dc51d5ecf3
Rename GetSampleInfo
to better describe what method does
...
Also add full xmldoc
2023-05-17 14:07:48 +09:00
Dean Herbert
d9ae822966
Fix bank not correctly being assigned when adding sample additions in editor
2023-05-16 18:52:52 +09:00
Dean Herbert
83dcd78826
Make HitSampleInfo.Bank
non-nullable
2023-05-16 18:12:56 +09:00
Dean Herbert
64498e95a4
Add an IAnimationTimeReference
to DrawableHitObject
to synchronise all animations
2023-05-08 18:56:29 +09:00
Dean Herbert
490df8073c
Fix one incorrect namespace syntax file
2023-05-05 21:15:26 +09:00
OliBomby
2e018c8b06
Fix comment 2 osu.Game/Rulesets/Objects/Types/IHasGenerateTicks.cs
...
Co-authored-by: Dean Herbert <pe@ppy.sh>
2023-05-02 08:41:47 +02:00
OliBomby
c2ad8c2320
Fix comment 1 osu.Game/Rulesets/Objects/Types/IHasGenerateTicks.cs
...
Co-authored-by: Dean Herbert <pe@ppy.sh>
2023-05-02 08:41:30 +02:00
OliBomby
27cfadca16
add sample info to Banana and SpinnerBonusTick
2023-05-01 14:54:06 +02:00
OliBomby
92efd04f31
fix sample of drumroll ticks being bankless
2023-04-29 23:52:24 +02:00
OliBomby
ffcc8e91b2
fix legacy parser incorrectly assigning sample info for sliders
2023-04-29 23:51:49 +02:00
OliBomby
354cd23874
removed all usage of hitobject's DifficultyControlPoint
2023-04-26 18:17:02 +02:00
OliBomby
c44f71a737
remove all regular usage of DifficultyControlPoint
2023-04-26 17:55:38 +02:00
OliBomby
c6fc180659
remove all test usages of SampleControlPoint
2023-04-26 14:21:52 +02:00
OliBomby
6c70948681
Remove IContext & add IHasGenerateTicks
2023-04-26 13:10:57 +02:00
OliBomby
e27c4dfa10
Invoke ApplyDefaultsToSelf
2023-04-26 11:46:05 +02:00
OliBomby
66eda40cdf
fix implementations of IHasSliderVelocity
2023-04-25 18:22:22 +02:00
OliBomby
065464d90c
Fixed DifficultyPointPiece
2023-04-25 18:12:53 +02:00
OliBomby
ebe1d852f5
remove other usages of hitobject SampleControlPoint
2023-04-25 16:01:43 +02:00
OliBomby
97910d6be6
remove unused directives
2023-04-25 13:06:37 +02:00
OliBomby
891b87a5ff
remove ApplyLegacyInfo method
2023-04-25 12:52:21 +02:00
OliBomby
ea1e6e9798
Add LegacyContext
2023-04-25 12:12:46 +02:00
OliBomby
a4c6850ab2
made the SampleControlPoint and DifficultyControlPoint obsolete
2023-04-25 11:34:09 +02:00
Bartłomiej Dach
db86ced4b4
Invoke RevertResult
on parent DHO when nested DHO is reverted
...
The behaviour described above was removed in
812a4b412a
, thus henceforth
contradicting `RevertResult`'s xmldoc. As it is relied on by some
external rulesets, bring it back to unbreak them.
2023-04-11 18:29:08 +02:00
Dean Herbert
044b0604b2
Move OmitFirstBarLine
to TimingControlPoint
2023-02-28 19:29:31 +09:00
Bartłomiej Dach
3ee046000e
Merge branch 'master' into revert-result-in-playfield
2023-02-16 21:54:29 +01:00
Dean Herbert
da8ab7143b
Merge branch 'master' into maximum-judgement-offset-in-hit-object
2023-02-15 14:48:15 +09:00
Dean Herbert
9d09141ab7
Move taiko-specific property out of DrawableHitObject
2023-02-12 16:09:28 +09:00
sw1tchbl4d3
f0d11f44fc
Always add to additions soundbank in convertSoundType
2023-02-09 22:27:52 +01:00
Dean Herbert
34d1890f1c
Change snapping to only apply to classic mod
2023-02-09 18:22:14 +09:00
ekrctb
258de3b2d8
Store RawTime in JudgementResult
2023-02-09 17:15:37 +09:00
ekrctb
5f0636c330
Merge branch 'maximum-judgement-offset-in-hit-object' into revert-result-in-playfield
2023-02-09 16:47:58 +09:00
Dean Herbert
74ab036f3e
Refactor SkinnableSound.Samples
to be non-nullable
2023-01-27 19:32:30 +09:00
ekrctb
efef97d5be
Store Result.TimeAbsolute separately from offset
...
Calculating from TimeOffset is bad because it loses precision.
The result time won't change anymore
even If `HitObject.GetEndTime()` changes later.
2023-01-24 15:35:06 +09:00
ekrctb
11e1b22bf5
Move MaximumJudgementOffset to HitObject
...
We want to access this property for computing lifetime
2023-01-19 21:23:55 +09:00
ekrctb
812a4b412a
Move judgement result revert logic to Playfield
...
Previously, some judgement results were not reverted
when the source DHO is not alive (e.g. frames skipped in editor).
Now, all results are reverted in the exact reverse order.
2023-01-19 19:57:13 +09:00
Dean Herbert
d1ca4ebd40
Merge pull request #21559 from OliBomby/stream-tool-1
...
Add segment end completions list to SliderPath
2023-01-11 15:31:04 +09:00
Berkan Diler
08d2fbeb8e
Use new ArgumentNullException.ThrowIfNull throw-helper API
2022-12-22 21:27:59 +01: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
OliBomby
98a312ca96
Fix segmentEnds incorrect on shortened paths
2022-12-07 09:52:09 +01:00
OliBomby
cd46ca31f9
Add segmend end completions to SliderPath
2022-12-07 09:51:22 +01:00