1
0
mirror of https://github.com/ppy/osu.git synced 2024-09-30 02:07:26 +08:00
Commit Graph

38173 Commits

Author SHA1 Message Date
OliBomby
8302bb1f37 dont encode custom sample bank for objects without legacy samples 2023-05-01 14:56:29 +02:00
OliBomby
27cfadca16 add sample info to Banana and SpinnerBonusTick 2023-05-01 14:54:06 +02:00
OliBomby
cef9f73d34 dont assign custom sample bank and volume to hitobjects in non-mania gamemodes
this makes it easier to edit hitsounds in the stable editor after export because the sample control point effects wont get overwritten by the properties of the hitobject
2023-05-01 12:31:27 +02:00
Bartłomiej Dach
d98aa60efc
Merge branch 'master' into cursor-ripples 2023-05-01 09:37:50 +02:00
OliBomby
2a94757154 Make sure the first object you place has bank and volume 2023-05-01 00:49:01 +02:00
OliBomby
608fa3cc73 Merge remote-tracking branch 'upstream/master' into sample-control-points 2023-04-30 19:47:03 +02:00
OliBomby
139a1d7e6d fix legacy encoder writing sample info while not writing node samples 2023-04-30 17:46:47 +02:00
Bartłomiej Dach
7cedbca9be
Merge branch 'master' into multiplier-doesnt-update-with-preset-mod 2023-04-30 17:36:00 +02:00
Bartłomiej Dach
2e3daf0a54
Fix leak of ModSettingChangeTracker instances
The `SelectedMods.BindValueChanged()` callback in `ModSelectOverlay` can
in some instances run recursively. This is most heavily leaned on in
scenarios where `SelectedMods` is updated by an external component. In
such cases, the mod select overlay needs to replace the mod instances
received externally with mod instances which it owns, so that the changes
made on the overlay can propagate outwards.

This in particular means that prior to this commit, it was possible to
encounter the following scenario:

	modSettingChangeTracker?.Dispose();
	updateFromExternalSelection(); // mutates SelectedMods to perform the replacement
	                               // therefore causing a recursive call

		modSettingChangeTracker?.Dispose();
		// inner call continues
		modSettingChangeTracker = new ModSettingChangeTracker(SelectedMods.Value);

	// outer call continues
	modSettingChangeTracker = new ModSettingChangeTracker(SelectedMods.Value);

This leaks one `modSettingChangeTracker` instance from the inner call,
which is never disposed.

To avoid this, move the disposal to the same side of the recursion that
the creation happens on, changing the call pattern to:

	updateFromExternalSelection(); // mutates SelectedMods to perform the replacement
	                               // therefore causing a recursive call

		modSettingChangeTracker?.Dispose();
		// inner call continues
		modSettingChangeTracker = new ModSettingChangeTracker(SelectedMods.Value);

	modSettingChangeTracker?.Dispose();
	// outer call continues
	modSettingChangeTracker = new ModSettingChangeTracker(SelectedMods.Value);

which, while slightly wasteful, does not cause any leaks.

The solution is definitely suboptimal, but addressing this properly
would entail a major rewrite of the mod instance management in the mods
overlay, which is probably not the wisest move to make right now.
2023-04-30 17:31:41 +02:00
Dean Herbert
b39a9d816e Add basic structural requirements for cursor ripples 2023-04-30 14:48:03 +09:00
OliBomby
83111223e0 fix null sample 2023-04-30 01:08:52 +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
Bartłomiej Dach
646d4965b9
Merge branch 'master' into fix-exclusive-fullscreen-detection 2023-04-29 14:39:34 +02:00
Dean Herbert
119687cf6e
Merge pull request #23329 from rltn/clickable-country-name-in-profile
Clickable country name in profile
2023-04-29 14:19:13 +09:00
Cootz
607a04ae73 Fix the issue 2023-04-29 10:29:33 +09:00
_ltn
2d6c0d2900 use of Child instead of Children 2023-04-28 19:24:07 +03:00
OliBomby
f7c84030ac remove bank default value 2023-04-28 17:22:34 +02:00
Dean Herbert
6929be49b7 Change condition for exclusive fullscreen notice to only show when using the correct renderer
This avoids the notice showing when running on windows, but using the
newer renderers (where the underlying logic hasn't been tested properly
and can result in false-positives).

Supersedes https://github.com/ppy/osu-framework/pull/5759 as a more
correct implementation.
2023-04-28 22:36:30 +09:00
_ltn
4b0ee392f6 add OsuHoverContainer 2023-04-28 05:48:54 +03:00
_ltn
17730f05bc remove UpdateableCountryText 2023-04-28 05:47:05 +03:00
_ltn
4d144cd5b5 clearing the code 2023-04-28 02:06:13 +03:00
_ltn
092377fdaa moving UpdateableCountryText 2023-04-28 01:47:14 +03:00
_ltn
e9843f2066 replace country text object 2023-04-28 01:16:50 +03:00
_ltn
b13201fb79 UpdateableCountryText rewrite 2023-04-28 01:14:42 +03:00
_ltn
f5c652325a Create UpdateableCountryText.cs 2023-04-27 23:44:18 +03:00
Bartłomiej Dach
07efa7d660
Merge branch 'master' into fix-storyboard-loop-end-time 2023-04-26 21:53:26 +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
1b4f4372d5 fixed sample control point applying 2023-04-26 14:32:12 +02:00
OliBomby
5accb05f45 fix invalidoperation exception 2023-04-26 14:28:48 +02:00
OliBomby
c6fc180659 remove all test usages of SampleControlPoint 2023-04-26 14:21:52 +02:00
OliBomby
87ca0f5335 Update SamplePointPiece.cs 2023-04-26 13:45:58 +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
Dean Herbert
61b62b35f5
Merge pull request #18626 from ggliv/decouple-mod-fails
Allow ModFailCondition to arbitrarily trigger failures
2023-04-26 16:19:42 +09:00
Dean Herbert
cb7b246e33 Fix naming and update in line with nullability 2023-04-26 15:27:58 +09:00
Dean Herbert
210c5e7c53 Merge branch 'master' into decouple-mod-fails 2023-04-26 15:26:20 +09:00
Dean Herbert
6a3b587374
Merge pull request #23260 from Haspamelodica/master
Fix some videos with uppercase file extensions not displaying correctly in-game
2023-04-26 14:29:25 +09:00
Dean Herbert
1efc78c0f8 Actually use new end time property when setting lifetimes 2023-04-26 13:28:51 +09:00
Bartłomiej Dach
5ec8ecb11b
Merge pull request #23309 from peppy/key-counters-fix
Fix key counters counting during break time
2023-04-25 21:15:12 +02:00
OliBomby
e4b64bdc3e clean up code stuff 2023-04-25 19:06:29 +02:00
OliBomby
755ad25dbe clean code 2023-04-25 18:27:20 +02:00
OliBomby
66eda40cdf fix implementations of IHasSliderVelocity 2023-04-25 18:22:22 +02:00
OliBomby
c23a7b014e add missing } 2023-04-25 18:17:07 +02:00
OliBomby
065464d90c Fixed DifficultyPointPiece 2023-04-25 18:12:53 +02:00
Daniel Kirschten
54e8aa8fe9
Merge branch 'master' into master 2023-04-25 16:04:02 +02:00
OliBomby
ebe1d852f5 remove other usages of hitobject SampleControlPoint 2023-04-25 16:01:43 +02:00
OliBomby
a634617157 Fix file header notice 2023-04-25 16:01:06 +02:00
OliBomby
c37875bee8 remove hitobject SampleControlPoint usage from LegacyBeatmapEncoder 2023-04-25 16:00:40 +02:00
Dean Herbert
14af2063e5
Merge pull request #23247 from peppy/round-editor-rotation
Always round editor rotation to integer values
2023-04-25 21:43:44 +09:00
Dean Herbert
e08d7daffd Don't show decimal point in tooltip 2023-04-25 21:43:14 +09:00
Dean Herbert
6b4032e34b Add missing binding of IsCounting with contained counters 2023-04-25 21:37:19 +09:00
Dean Herbert
0a861ffcee Restructure key counters to use a common flow 2023-04-25 21:37:19 +09:00
Dean Herbert
7630958633 Stop using Drawable.Name to convey actual UI information 2023-04-25 20:24:36 +09:00
Dean Herbert
dd2c289ce9 Remove pointless default value 2023-04-25 20:22:12 +09:00
OliBomby
97910d6be6 remove unused directives 2023-04-25 13:06:37 +02:00
OliBomby
bf1951fc38 Fix incorrect xmldoc 2023-04-25 12:54:45 +02:00
Dean Herbert
d8b4db3a13
Merge branch 'master' into gameplay/argon-key-counter_le-retour 2023-04-25 19:54:31 +09: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
Dean Herbert
e330052852 Add second definition of EndTime for storyboard elements to account for loops in lifetime 2023-04-25 15:22:11 +09:00
Dean Herbert
3919400be2 Apply NRT to some storyboard classes 2023-04-25 14:30:01 +09:00
Hy0tic
80301f0fc9 Merge https://github.com/Hy0tic/osu 2023-04-22 13:32:41 -04:00
Hy0tic
56ab029a58 fix issue where multipler does not update when adjusting speed for preset mod 2023-04-22 13:30:08 -04:00
Daniel Kirschten
6c9a90d1ec
Merge branch 'master' into master 2023-04-22 19:23:52 +02:00
Haspamelodica
e90660c1a4 Switched to lowercase 2023-04-21 02:35:28 +02:00
Haspamelodica
b62de5514c Fixed video importing bug #23259 2023-04-21 02:10:24 +02:00
Dean Herbert
1066dfcbf6 Change default beat divisor to 4
This matches stable, and is a much saner default value.

Will apply to new beatmaps and also beatmaps which don't specify a snap
value in the `.osu` file.
2023-04-20 14:35:13 +09:00
Dean Herbert
9f4b1f0f24 Always round editor rotation to integer values 2023-04-20 14:30:01 +09:00
Joseph Madamba
776c4cfaad
Ensure selected field is correct in updateSelectionState()
Co-Authored-By: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2023-04-19 18:34:35 -07:00
Dean Herbert
01260e5f54 Merge branch 'master' into shader-cache-stages 2023-04-19 20:47:34 +09:00
Dean Herbert
760ef10145 Update framework 2023-04-19 00:04:21 +09:00
Dean Herbert
ee5658c15a
Merge pull request #23222 from peppy/update-framework-resources
Update framework and resources
2023-04-18 14:10:42 +09:00
Dean Herbert
26a2d1fdea
Merge pull request #23000 from Joehuu/fix-beatmap-terminology
Fix song select matching label not using right terminology
2023-04-18 13:53:05 +09:00
Joseph Madamba
c80a25328d
Shorten label to just "matches" 2023-04-17 20:59:41 -07:00
Joseph Madamba
16df92f405
Fix sets not being plural 2023-04-17 20:59:02 -07:00
Dan Balasescu
c0a25144cf Apply changes to custom ShaderManager 2023-04-18 11:31:56 +09:00
Dean Herbert
c3f3b8db7c Update resources 2023-04-17 23:09:46 +09:00
Dean Herbert
fbb15fff26 Update framework 2023-04-17 23:03:16 +09:00
Dean Herbert
7aeab174eb
Merge pull request #23185 from bdach/nested-result-revert
Invoke `RevertResult` on parent DHO when nested DHO is reverted
2023-04-12 23:08:10 +09:00
Bartłomiej Dach
e72f103c17
Do not look up metadata for locally-modified beatmaps on save 2023-04-11 23:14:35 +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
Joseph Madamba
d0cbe206a9
Revert back to one number with "matching beatmap difficulties" label 2023-04-10 23:37:29 -07:00
Joseph Madamba
f0c8a3202b
Merge remote-tracking branch 'upstream/master' into fix-beatmap-terminology 2023-04-10 23:22:15 -07:00
Dean Herbert
52bb7891f7
Merge branch 'master' into fix-count-not-updating-when-deleting 2023-04-11 09:04:02 +09:00
Joseph Madamba
f80de08f24
Adjust BeatmapSetsChanged xmldoc
Co-Authored-By: Dean Herbert <pe@ppy.sh>
2023-04-10 11:28:23 -07:00
Joseph Madamba
c7dea71793
Use existing BeatmapSetsChanged action 2023-04-10 11:26:18 -07:00
Dean Herbert
8757276c37
Merge pull request #23156 from Micha-ohne-el/editor-selection-rotation-snapping
Add rotation snapping to editor selection
2023-04-11 00:45:44 +09:00
Dean Herbert
52c4703261
Merge pull request #23103 from Joehuu/normalise-overlay-padding
Normalise horizontal padding on overlays
2023-04-10 23:48:59 +09:00
Bartłomiej Dach
1f2c96c8e8
Merge branch 'master' into gd-onlinesetoverlay 2023-04-10 15:35:03 +02:00
Bartłomiej Dach
11fd93a2ba
Inline disturbing getGuestMapper() method
Disturbing because name suggests pure method, but it is in fact `void`
and also performs side effects by about the most confusing means
possible.
2023-04-10 15:20:43 +02:00
Bartłomiej Dach
73bd0feef5
Fix incorrectly implemented localisation 2023-04-10 15:03:33 +02:00
Bartłomiej Dach
6fec476147
Simplify snap implementation 2023-04-10 14:55:30 +02:00
Bartłomiej Dach
ead5e9f027
Merge branch 'master' into editor-inspector 2023-04-10 14:29:05 +02:00
Bartłomiej Dach
60358c7203
Perform first inspector text update immediately
Provides better and more consistent initial state for the inspector.
2023-04-10 14:13:53 +02:00
Bartłomiej Dach
641415ca32
Unify displayed duration format for single/multiple selection 2023-04-10 14:05:32 +02:00
Joseph Madamba
7f5b99c91b
Fix song select beatmap difficulty count not updating when deleting 2023-04-09 22:12:51 -07:00
Dan Balasescu
15f6bc155e Add progressive score multiplier for HT 2023-04-10 13:35:48 +09:00