Bartłomiej Dach
77fd748035
Fix incorrect circle piece hitbox
...
Hitboxes of circle pieces in osu! have regressed with commit 8592335
.
The reason for the regression was that hit detection was moved from
DrawableHitCircle itself to a newly-introduced private HitArea class
(now named HitReceptor).
As HitArea inherited from Drawable, it would return IsHovered == true
over its entire bounding box. This meant that the hit area could wrongly
pick up actions that are not within circle radius and make them into
hits.
To resolve, make HitReceptor a CompositeDrawable and set its corner
radius to match the circle piece. This fixes the invalid hitbox, as
IsHovered takes radius into account.
2020-03-06 21:21:20 +01:00
杜Nate
cf88e3ff19
Merge branch 'master' into spun-out
2020-03-04 17:38:35 +08:00
smoogipoo
5e218697c5
Use stacked positions
2020-03-04 09:46:53 +09:00
Dan Balasescu
ff063b229b
Merge pull request #7973 from peppy/fix-dho-lifetimes-via-judgements
...
Fix hitobjects with unknown lifetimes by enforcing non-null judgement
2020-02-25 20:38:29 +09:00
Dean Herbert
e6cfafffe9
Fix incorrect LifetimeStart and add todo regarding Expire usage
2020-02-24 12:24:15 +09:00
Dean Herbert
ffc7eaa3f2
Fix hitobjects with unknown lifetimes by enforcing non-null judgement
...
We've seen multiple cases where DrawableHitObject are stuck in the lifetime management container
due to not implementing a judgement (meaning they are never "hit" or "missed"). To avoid this going forward
CreateJudgement() must be implemented and return a non-null judgement.
This fixes BananaShower and JuiceStreams in osu!catch.
This also makes HitObject abstract and cleans up convert HitObject implementations.
2020-02-23 13:49:06 +09:00
Dean Herbert
090d9d9350
Make FollowPointRenderer a LifetimeManagementContainer
2020-02-23 04:37:04 +09:00
Dean Herbert
cb9a7ee0bb
Give FollowPointConnections a valid lifetime
2020-02-23 04:36:50 +09:00
Dean Herbert
00b4fc1e1f
Add fill to default skin slider ball when tracking
2020-02-21 17:38:23 +09:00
smoogipoo
958c891d15
Update with framework-side bindable list changes
2020-02-17 15:06:14 +09:00
mcendu
9aa5db88d4
move auto fade in to mod
2020-02-10 14:14:04 +08:00
mcendu
68873830aa
make spm counter show up automatically with spun out
2020-02-09 13:49:08 +08:00
mcendu
d314b38699
rename trackable to enabled and cleanup code
2020-02-09 13:46:06 +08:00
杜Nate
8d480c794a
Merge branch 'master' into spun-out
2020-02-08 13:54:39 +08:00
mcendu
efa95ecebb
fix spinner unspinnable
2020-02-08 10:52:59 +08:00
mcendu
4d9232a895
Move autospin logic to mods
2020-02-08 09:51:32 +08:00
mcendu
25a930c438
Implement OsuModSpunOut
2020-02-08 08:59:35 +08:00
Dean Herbert
6297606baa
Make sMake spinner's EndTime correct on construction
2020-02-07 19:08:37 +09:00
Dean Herbert
daf5fa9da4
Throw NotSupportedException instead
2020-02-06 13:16:32 +09:00
Dean Herbert
cd6902a312
Make EndTime and RepeatCount settable
2020-02-05 17:52:51 +09:00
mcendu
9f79713fb3
move rotation logic to its own method
2020-02-05 14:23:59 +08:00
mcendu
d773eb2c22
refactor rotation logic to use explicit delta value
2020-02-05 14:05:12 +08:00
Dean Herbert
84fcf45aae
Make slider tracking match what is on screen
2020-02-03 11:55:14 +09:00
Dean Herbert
cf4788d7ef
Merge branch 'master' into fix-follow-circle
2020-02-03 09:58:12 +09:00
TheWildTree
35032e2ddd
Make variables private
2020-02-02 14:34:06 +01:00
TheWildTree
f7abfdb40e
Remove unnecessary parameter
2020-02-02 14:33:48 +01:00
TheWildTree
e2589b2dcb
Rename drawable
2020-02-02 11:24:28 +01:00
Bartłomiej Dach
434c0d92e4
Use Bindable{Float,Double}s everywhere
...
To avoid further floating-point comparison bugs, remove all usages of
Bindable<{float,double}>, replacing them with their
Bindable<Float,Double> counterparts.
2020-02-01 22:50:29 +01:00
TheWildTree
9f4261111b
Match osu-stable behaviour and size
2020-02-01 16:55:30 +01:00
smoogipoo
7b2f58eb30
Apply OnRelease method signature refactorings
2020-01-22 13:22:34 +09:00
smoogipoo
92daf9b8f1
Cleanup
2020-01-14 18:14:31 +09:00
Dean Herbert
fe09e34f1b
Remove limiting clause
2020-01-14 01:48:20 +09:00
Dean Herbert
ab4f31639d
Remove weird time clause
2020-01-14 01:47:44 +09:00
Dean Herbert
210d06b75e
Remove default value
2020-01-14 01:45:32 +09:00
Dean Herbert
c5085aea24
Use Child, not InternalChild
2020-01-14 01:45:10 +09:00
Dean Herbert
619fe29871
Make reverse arrow animate faster via divisor specification
...
Adds MinimumBeatLength to BeatSyncedContainer to make sure things don't get out of hand.
2020-01-14 01:39:45 +09:00
Sebastian Krajewski
45cf65a28a
Merge remote-tracking branch 'upstream/master' into reverse-arrows
2020-01-13 14:15:37 +01:00
Dean Herbert
87645f6a41
Remove excess namespace specification
2020-01-10 01:13:42 +08:00
Dean Herbert
3be2fc27f3
Merge branch 'master' into Remove_osuTK.MathHelper
2020-01-10 00:28:46 +08:00
smoogipoo
91735ff367
Update MathUtils namespace usages
2020-01-09 13:43:44 +09:00
Berkan Diler
ed2bf5154d
Use tuple deconstruction to swap values
2020-01-08 20:46:17 +01:00
Berkan Diler
34d8740ec4
Remove remaining usage of osuTK.MathHelper
2020-01-08 20:21:13 +01:00
Sebastian Krajewski
21468eb070
Remove settings related to reverse arrow
2020-01-07 04:55:05 +01:00
Sebastian Krajewski
3194658998
Fix repeat point pulsing when it is in fade out state
2020-01-04 13:12:37 +01:00
Sebastian Krajewski
46271ccbc8
Add slider reverse arrow pulse settings
2020-01-04 13:01:42 +01:00
Sebastian Krajewski
fc0b622a69
Change reverse arrow pulse easing to OutQuad
2020-01-04 10:35:10 +01:00
Sebastian Krajewski
9da7eec0d9
Add pulse to slider reverse arrows
2020-01-04 08:21:48 +01:00
Dean Herbert
f150d22eaf
Fix SPM calculation logic not handling paused clocks ( #7253 )
...
Fix SPM calculation logic not handling paused clocks
Co-authored-by: Dean Herbert <pe@ppy.sh>
2019-12-18 16:30:18 +09:00
smoogipoo
1fe0e45a9c
Implement legacy slider border shadow
2019-12-18 13:37:37 +09:00
Salman Ahmed
cbfbbf9999
Make SpmCounter public
2019-12-18 03:04:37 +03:00
Salman Ahmed
7e58b4a948
Early-return on potential division by zero in SPM calculation
2019-12-18 03:03:12 +03:00
smoogipoo
35276c3739
Prevent test scene failures through casting softly
2019-12-17 21:26:23 +09:00
smoogipoo
7c2884700e
Fix various display issues by abstracting further
2019-12-17 19:29:27 +09:00
smoogipoo
9caed9e98a
Add legacy slider body support
2019-12-17 18:16:25 +09:00
smoogipoo
1e798a8dbe
Add abstract implementation of slider path
2019-12-17 17:54:05 +09:00
smoogipoo
a554ca728b
Don't reuse the same control point references
2019-12-16 15:27:54 +09:00
smoogipoo
883d5bc11d
Remove automatic slider path offsetting
2019-12-09 17:54:22 +09:00
smoogipoo
fa1468325e
Refactor hitobjects to remove default control point
2019-12-09 17:48:27 +09:00
smoogipoo
4905709ea4
Remove unused usings
2019-12-09 13:19:21 +09:00
smoogipoo
b9d12e5fe4
Fix nested hitobjects not updating
2019-12-06 20:53:40 +09:00
smoogipoo
16f8341a02
Handle control point positional updates within SliderPath
2019-12-06 18:49:01 +09:00
smoogipoo
3ebbf62b2a
Initial game-wide update with the new SliderPath
2019-12-05 19:53:36 +09:00
Huo Yaoyuan
c0fe91a84c
Merge branch 'master' into sharpen
2019-11-26 18:21:50 +08:00
Dean Herbert
709ec1404f
Centralise End/StartTime retrieval to extension method
2019-11-25 19:09:14 +09:00
Berkan Diler
fccdbffa93
Use MathF instead of Math- functions when possible
...
MathF-functions are faster than the Math-counterpart and it looks cleaner, so use MathF when we cast to float or int anyway.
2019-11-25 00:45:42 +01:00
Dean Herbert
c2e85a2057
Apply CornerExponent fixes
2019-11-22 19:49:20 +09:00
Huo Yaoyuan
818553027b
Merge branch 'master' into sharpen
2019-11-21 23:42:46 +08:00
Berkan Diler
6cab517b2d
.NET Standard 2.1 implements Math.Clamp , use it instead of MathHelper.Clamp from osuTK.
2019-11-20 13:37:47 +01:00
Huo Yaoyuan
dcfa98414f
Use ??=.
2019-11-12 19:56:51 +08:00
Dean Herbert
a43b0ee01b
Apply naming and styling changes
2019-11-12 10:45:46 +09:00
smoogipoo
df31acb294
Fix slider nested hitobject samples not getting updated
2019-11-08 15:43:34 +09:00
smoogipoo
6fc1be64c2
Make hitobject samples a bindable list
2019-11-08 14:04:57 +09:00
Dean Herbert
7b5b3ff15c
Remove unused returns
2019-11-06 16:36:12 +09:00
Dean Herbert
ee544e174a
Group -> Connection
2019-11-06 16:33:42 +09:00
smoogipoo
68ca5cb26a
Adjust comments
2019-11-05 23:20:46 +09:00
smoogipoo
aff275ea21
Revert "Fix follow point lifetime not being updated correctly"
...
This reverts commit 1ef2b81041
.
2019-11-05 23:03:05 +09:00
smoogipoo
0a2af2b0fe
Apply transform override at a higher level
2019-11-05 23:02:39 +09:00
smoogipoo
d762ec959c
Schedule group refresh when loaded
2019-11-05 22:50:38 +09:00
smoogipoo
68a81e0eb0
Fix follow point transforms not working after rewind
2019-11-05 22:50:21 +09:00
smoogipoo
f2118b0eba
Add automated test cases
2019-11-05 19:31:58 +09:00
smoogipoo
6c58faf30c
Fix group ends potentially not being updated correctly
2019-11-05 19:31:48 +09:00
smoogipoo
1ef2b81041
Fix follow point lifetime not being updated correctly
2019-11-05 17:33:02 +09:00
smoogipoo
3b6064336b
Implement group re-ordering based on start time
2019-11-05 17:33:02 +09:00
smoogipoo
a19e26f8aa
Improve performance of refreshes
2019-11-05 17:33:02 +09:00
smoogipoo
712253ff50
Replace follow point renderer with new implementation
2019-11-05 17:33:02 +09:00
smoogipoo
ddfcda9e02
Remove abstract ConnectionRenderer class
2019-11-05 17:33:02 +09:00
smoogipoo
7a3ebcd0b1
Fix path changes not updating tail circle
2019-10-31 15:52:38 +09:00
Dean Herbert
e9cb3337b3
Fix 1x1 white pixel appearing in the centre of hitcircles on default skin
2019-10-29 22:31:27 +09:00
Dean Herbert
02efd0e943
Merge pull request #6556 from smoogipoo/fix-slider-stack-change
...
Fix sliders not moving with stacking changes
2019-10-23 17:48:06 +09:00
smoogipoo
c34d3362df
Fix hit circles selection area being too large
2019-10-21 17:14:08 +09:00
smoogipoo
5f8d46f666
Fix sliders not moving with stacking change
2019-10-21 16:24:06 +09:00
Dean Herbert
d0eaf629af
Merge branch 'master' into dho-apply
2019-10-18 19:45:10 +09:00
Dean Herbert
f3ed71d336
Move scoring distance constant to a central/shared location
2019-10-17 16:36:47 +09:00
smoogipoo
bc41eb176e
Clean up head/tail setting in various DHOs
2019-10-17 14:02:23 +09:00
smoogipoo
f429a8f7c2
Add back/obsolete old AddNested() method
2019-10-17 14:02:08 +09:00
smoogipoo
d8f3678c3c
Rename parameter
2019-10-17 12:53:54 +09:00
smoogipoo
3a1acf7b0a
Fix slider approach circle proxies
2019-10-17 12:50:26 +09:00
smoogipoo
8d7453c251
Rework construction of nested hitobjects
2019-10-16 22:10:50 +09:00
smoogipoo
4ac2e1c58e
Move load() to below ctor()
2019-10-16 21:41:18 +09:00
Dean Herbert
51bf600ea7
Use empty hitwindows instead of null
2019-10-09 19:08:31 +09:00