1
0
mirror of https://github.com/ppy/osu.git synced 2024-12-17 20:43:21 +08:00
Commit Graph

695 Commits

Author SHA1 Message Date
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