Bartłomiej Dach
3b9f250c1b
Merge branch 'master' into menu-star-fountains
2023-07-25 21:58:13 +02:00
Dean Herbert
9cfe9164fa
Add helper method to get drain length (and rename some usages)
2023-07-25 16:58:41 +09:00
Bartłomiej Dach
f3a95d4c13
Merge branch 'master' into menu-star-fountains
2023-07-19 21:26:41 +02:00
OliBomby
5d82190b70
Merge remote-tracking branch 'upstream/master' into legacy-export
2023-07-18 12:18:49 +02:00
Dean Herbert
e6e66c6aef
Remove mention of clock being nullable in IBeatSyncProvider
...
Co-authored-by: Susko3 <Susko3@protonmail.com>
2023-07-18 13:08:23 +09:00
Dean Herbert
20e4e2581a
Change IBeatSyncProvider.Clock
to always be non-null
2023-07-13 22:13:40 +09:00
OliBomby
cde8d8e7f1
Optimize realm transactions for editor Save action
2023-07-13 14:33:21 +02:00
OliBomby
1d837a8725
Move all conversion code to LegacyBeatmapExporter
2023-07-13 00:20:01 +02:00
OliBomby
8ca801a224
dispose the streams
2023-07-12 15:18:16 +02:00
OliBomby
3052c317e1
change .osz2 to .olz (osu lazer zip)
2023-07-12 15:04:06 +02:00
OliBomby
b577b6b6ae
Export legacy converted beatmaps as .osz and non-converted beatmaps as .osz2
2023-07-11 21:04:09 +02:00
OliBomby
2db25722cb
It works now
2023-07-11 20:18:54 +02:00
OliBomby
06e5ef88c0
legacy export broken
2023-07-11 02:30:16 +02:00
Bartłomiej Dach
10ba04512d
Add ScoreV2
to LegacyMods
2023-07-09 16:06:05 +02:00
Bartłomiej Dach
832c1c0009
Merge branch 'master' into fix-gameplay-samepl-trigger-source-rewind
2023-07-08 13:33:04 +02:00
Dean Herbert
d72765b6f8
Merge pull request #24114 from peppy/editor-save-local-score-management
...
Ensure scores always have the correct linked `BeatmapInfo`
2023-07-07 15:40:54 +09:00
Dean Herbert
2e98ab0a48
Expose rewinding state of IGameplayClock
s
...
The implementation of this requires a bit of a special case
for 0, so makes sense to implement in a central place.
2023-07-06 19:08:42 +09:00
Dean Herbert
a98a36872e
Bring realm library up-to-date
2023-07-06 13:37:43 +09:00
Dean Herbert
64fc5e40e8
Move score attach logic to a helper method and call during editor save
2023-07-04 15:07:40 +09:00
Bartłomiej Dach
1ce60378be
Rewrite comments further
2023-07-01 20:37:33 +02:00
Dean Herbert
5bd91a531d
Tidy up comments and code
2023-07-01 23:37:22 +09:00
Dean Herbert
a4a9223726
Move score re-attach to PostImport
2023-07-01 23:12:04 +09:00
Cootz
47ccbddfb1
Reword comment
2023-06-29 08:08:10 +03:00
Cootz
351f217c8c
Reassign existing scores to new/re-exported beatmap
2023-06-29 08:07:43 +03:00
Bartłomiej Dach
6876566530
Fix difficulty deletion not deleting records from realm
2023-06-27 23:43:00 +02:00
Bartłomiej Dach
e3a89a6273
Fix remaining obvious CI inspections
2023-06-24 16:07:01 +02:00
Bartłomiej Dach
1f2f522a1e
Mark override as null-accepting
...
`ModelBackedDrawable<T>.CreateDrawable()` is R#-annotated to accept
a potentially null model. Apply nullability there too for better reading
experience.
2023-06-24 15:07:04 +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
Joseph Madamba
9ae864c219
Fix beatmap info length tooltip not showing actual drain length
2023-06-17 15:00:32 -07:00
Joseph Madamba
fdebf93ae4
Fix incorrect xmldoc of IBeatmapInfo.Length
2023-06-17 14:55:27 -07:00
Bartłomiej Dach
af3fbdbfbe
Merge pull request #23829 from Joehuu/truncating-text-tooltips
...
Add tooltips to truncated text
2023-06-12 23:43:31 +02:00
Dean Herbert
a29f6772cd
Fix storyboard being null if file doesn't exist
...
It's expected that `WorkingBeatmap.Storyboard` is non-null.
An example fail case is in `BeatmapBackgroundWithStoryboard.load`.
2023-06-12 17:22:15 +09:00
Salman Ahmed
2823a62b5f
Avoid potential cropping error on very tall backgrounds
2023-06-09 15:27:53 +03:00
Dean Herbert
49c77a64ef
Apply more correct fix, factoring in minimum display ratio
2023-06-09 19:30:28 +09:00
Salman Ahmed
df874b9ae8
Fix beatmap panel background looking different than usual
2023-06-09 09:16:10 +03:00
Joseph Madamba
85fedbd025
Add tooltips to truncated text
2023-06-08 19:44:07 -07:00
Bartłomiej Dach
05bd912a21
Revert internal
access modifier application
...
Unfortunately breaks a few classes (which is fixable), and also breaks
Moq/Castle dynamic proxies (which is unfortunate).
Relevant error:
System.TypeLoadException : Method 'GetPanelBackground' in type 'Castle.Proxies.IWorkingBeatmapProxy' from assembly 'DynamicProxyGenAssembly2, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null' does not have an implementation.
Stack Trace:
at System.Reflection.Emit.TypeBuilder.CreateTypeNoLock()
at System.Reflection.Emit.TypeBuilder.CreateTypeInfo()
at Castle.DynamicProxy.Generators.Emitters.AbstractTypeEmitter.BuildType()
at Castle.DynamicProxy.Generators.BaseInterfaceProxyGenerator.GenerateType(String typeName, INamingScope namingScope)
at Castle.DynamicProxy.Generators.BaseProxyGenerator.<>c__DisplayClass13_0.<GetProxyType>b__0(CacheKey cacheKey)
at Castle.Core.Internal.SynchronizedDictionary`2.GetOrAdd(TKey key, Func`2 valueFactory)
at Castle.DynamicProxy.Generators.BaseProxyGenerator.GetProxyType()
at Castle.DynamicProxy.DefaultProxyBuilder.CreateInterfaceProxyTypeWithoutTarget(Type interfaceToProxy, Type[] additionalInterfacesToProxy, ProxyGenerationOptions options)
at Castle.DynamicProxy.ProxyGenerator.CreateInterfaceProxyTypeWithoutTarget(Type interfaceToProxy, Type[] additionalInterfacesToProxy, ProxyGenerationOptions options)
at Castle.DynamicProxy.ProxyGenerator.CreateInterfaceProxyWithoutTarget(Type interfaceToProxy, Type[] additionalInterfacesToProxy, ProxyGenerationOptions options, IInterceptor[] interceptors)
at Moq.CastleProxyFactory.CreateProxy(Type mockType, IInterceptor interceptor, Type[] interfaces, Object[] arguments) in C:\projects\moq4\src\Moq\Interception\CastleProxyFactory.cs:line 50
In theory it would be possible to fix this via application of
[assembly: InternalsVisibleTo("DynamicProxyGenAssembly2")]
onto the `osu.Game` assembly, but I think this would be bad precedent.
2023-06-08 15:23:09 +02:00
Bartłomiej Dach
6dbf02454f
Fix bad math
2023-06-08 14:19:34 +02:00
Dean Herbert
cccc06de48
Fix potential failure if beatmap background isn't tall enough
2023-06-08 21:10:40 +09:00
Dean Herbert
ff4d376c84
Mark relevant components as internal
2023-06-08 21:01:05 +09:00
Dean Herbert
3978d4babb
Crop and disable mipmaps on beatmap panel backgrounds
...
This is an effort to improve general performance at song select. At
least on the metal renderer, I can notice very high draw frame overheads
related to texture uploads.
By reducing the size of the texture uploads to roughly match what is
actually being displayed on screen (using a relatively inexpensive crop
operation), we can bastly reduce stuttering both during initial load and
carousel scroll.
You might ask if it's safe to disable mipmapping, but I've tested with
lower resolutions and bilinear filtering seems to handle just fine.
Bilinear without mipmaps only falls apart when you scale below 50% and
we're not going too far past that at minimum game scale, if at all.
2023-06-08 16:51:07 +09:00
Dean Herbert
a842f79ad4
Refactor IWorkingBeatmap.Background
to GetBackground()
2023-06-08 16:19:32 +09:00
Bartłomiej Dach
1f4e79d79d
Merge pull request #23711 from timiimit/add-last-edit-time
...
Store timestamp of beatmap's last edit time in local database
2023-06-07 16:57:24 +02:00
Salman Ahmed
62cb6a98ca
Remove redundant nullable suppression directives
2023-06-07 08:20:41 +03:00
Dean Herbert
22f7fe1d79
Rename variable and ensure timestamp is updated even when not saving
2023-06-06 15:11:31 +09:00
timiimit
659fb80c16
Add BeatmapInfo.LastEditTime
property
2023-05-31 19:06:41 +02:00
Bartłomiej Dach
96fe7cbe54
Merge branch 'master' into sample-set-controls
2023-05-25 21:58:16 +02:00
Bartłomiej Dach
78f41f7109
Fix spelling
2023-05-25 17:33:41 +02:00
Dean Herbert
058edb5d5f
Centralise beatmap playable duration and bounds lookups
2023-05-25 17:32:48 +09:00
Dean Herbert
298989ffd2
Merge branch 'master' into sample-set-controls
2023-05-24 14:03:04 +09: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
83dcd78826
Make HitSampleInfo.Bank
non-nullable
2023-05-16 18:12:56 +09:00
Dean Herbert
ca5e8b290f
Add clamping to SliderMultiplier
and SliderTickRate
at parsing time
2023-05-09 20:53:20 +09:00
Dean Herbert
d10dd6d5ae
Merge branch 'master' into base-s-v
2023-05-09 20:52:11 +09:00
Dean Herbert
944da06c10
Rename slider multiplier variable back for now
2023-05-09 16:58:19 +09:00
Bartłomiej Dach
30ce86a582
Merge pull request #23437 from peppy/fix-hold-note-input-test
...
Fix `TestSceneHoldNoteInput` not displaying correctly
2023-05-08 22:22:33 +02:00
Dan Balasescu
d2380bd840
Remove usages of [ExcludeFromDynamicCompile]
2023-05-08 18:12:56 +09:00
Dean Herbert
d6ce56e6b1
Fix GetMostCommonBeatLength
returning zero in case of not timing points
2023-05-08 17:09:08 +09:00
Dean Herbert
f7d44c3013
Rename SliderMultiplier
to BaseSliderVelocity
2023-05-08 13:13:09 +09:00
Dean Herbert
0d095c4bb7
Remove non-Live
pathway
2023-05-06 23:10:18 +09:00
cdwcgt
4549a865d9
Merge branch 'master' into export
2023-05-04 00:18:01 +09:00
Dean Herbert
f930c4bd0a
Move struct
to bottom of file
2023-05-03 13:33:31 +09:00
Dean Herbert
48fd99818e
Split out default and sample application
2023-05-03 13:30:45 +09:00
Dean Herbert
cca15f930c
Refactor applyLegacyInfoAndDefaults
for legibility
2023-05-03 13:26:50 +09:00
Dean Herbert
588a4e6196
Move pragma disable to top of LegacyBeatmapDecoder
...
Makes more sense as it's used multiple times in the class.
2023-05-03 13:19:14 +09:00
Dean Herbert
e3c384c6b5
Merge branch 'master' into sample-control-points
2023-05-02 14:38:39 +09:00
Bartłomiej Dach
436ebdcfcb
Fix beatmap leaderboard test failure
...
Because the online info reset (which includes online ID reset) was
happening after encoding,
`TestSceneBeatmapLeaderboard.TestLocalScoresDisplayOnBeatmapEdit()`
started failing, as the hash no longer matched expectations after the
first save of the map.
2023-05-01 19:44:15 +02:00
Bartłomiej Dach
f470b2c9cc
Always reset online info when saving local beatmap
2023-05-01 18:17:45 +02:00
OliBomby
8c21fddb5e
remove all redundancies from encoded control points
2023-05-01 16:53:38 +02:00
OliBomby
8302bb1f37
dont encode custom sample bank for objects without legacy samples
2023-05-01 14:56:29 +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
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
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
6c70948681
Remove IContext & add IHasGenerateTicks
2023-04-26 13:10:57 +02:00
OliBomby
c37875bee8
remove hitobject SampleControlPoint usage from LegacyBeatmapEncoder
2023-04-25 16:00:40 +02:00
OliBomby
bf1951fc38
Fix incorrect xmldoc
2023-04-25 12:54:45 +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
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
Bartłomiej Dach
e72f103c17
Do not look up metadata for locally-modified beatmaps on save
2023-04-11 23:14:35 +02:00
cdwcgt
ce6a87b4a3
Merge remote-tracking branch 'upstream/master' into export
2023-04-09 15:02:47 +09:00
cdwcgt
de21b4a2f7
use Live<TModel>
...
Use RealmAccess only when needed
2023-04-09 22:21:15 +09:00
Dean Herbert
da947d8661
Gracefully handle beatmaps specifying images using the video storyboard type
2023-03-13 18:24:16 +09:00
Bartłomiej Dach
72695f7c90
Merge branch 'master' into omit-barline-in-timing-control-point
2023-03-07 22:46:24 +01:00
OliBomby
1fcf41379d
Added maintainability patch by bdach
2023-03-06 16:20:36 +01:00
OliBomby
b0cd801405
fix code quality
2023-03-04 19:34:22 +01:00
OliBomby
5146f7c978
using array again in GetSearchableTerms
2023-03-04 16:49:46 +01:00
OliBomby
b90c389ff0
using List instead of Span in GetSearchableTerms
2023-03-04 15:42:35 +01:00
OliBomby
91d206e8d2
Optimised GetSearchableTerms
...
Reduced memory allocations to 1
2023-03-03 19:21:50 +01:00
Dean Herbert
044b0604b2
Move OmitFirstBarLine
to TimingControlPoint
2023-02-28 19:29:31 +09:00
cdwcgt
e84e011d5d
Merge branch 'master' into export
2023-02-17 22:15:19 +09:00