Dean Herbert
d1b01095ee
Rewrite to reduce code changes and complexities in hit object implementation
2020-03-29 14:31:03 +09:00
Dean Herbert
b259708915
Merge branch 'master' into spun-out
2020-03-29 13:24:48 +09:00
Endrik Tombak
d3114ca858
Don't snake when hit
2020-03-28 23:12:13 +02:00
Dean Herbert
fb4b334ce2
Add support for legacy skin sliderstartcircle / sliderstartcircleoverlay
2020-03-28 14:10:26 +09:00
Dan Balasescu
3763457a1d
Merge pull request #8451 from peppy/fix-slider-end-sounds
...
Only play slider end sounds if tracking
2020-03-27 20:38:59 +09:00
Dean Herbert
d36f5fb96f
Fix animated follow points not (re)animating after rewind
2020-03-27 18:03:02 +09:00
Dean Herbert
f80efd10c2
Avoid using a miss judgement
2020-03-26 19:54:17 +09:00
Dean Herbert
6555ab6ede
Only play slider end sounds if tracking
2020-03-26 17:18:27 +09:00
Dean Herbert
8e4896fbbe
Make slider judgements count towards base score / accuracy
2020-03-26 17:13:53 +09:00
杜Nate
9ea0137b01
Merge branch 'master' into spun-out
2020-03-23 18:13:53 +08:00
Dean Herbert
19b6e496ef
Fix (very) long spinners degrading in performance due to high transform count
2020-03-22 04:18:03 +09:00
Dean Herbert
d96f684077
Merge pull request #8358 from peppy/remove-slider-implicit-judgement
...
Remove slider implicit judgement
2020-03-20 01:13:58 +09:00
Dean Herbert
6b482c057a
Merge pull request #8362 from peppy/fix-slidertick-judgement-accuracy
...
Fix slider ticks/repeats contributing to accuracy
2020-03-20 01:13:49 +09:00
smoogipoo
12a48d2774
Cause all earlier hitobjects to get missed
2020-03-19 19:16:24 +09:00
Dean Herbert
0c1f385d5a
Add OsuIgnoreJudgement to get correct result type
2020-03-19 18:19:10 +09:00
Dean Herbert
114b46c4f0
Change slider tail to give repeat judgement; slider itself to give none (managed by head already)
2020-03-19 15:01:14 +09:00
Dean Herbert
08b5ab8ec4
SliderRepeatPoint -> SliderRepeat
2020-03-19 14:42:02 +09:00
Dean Herbert
94c3ffb6e5
Fix slider ticks contributing to accuracy
2020-03-19 14:36:15 +09:00
Dean Herbert
1c0c269852
Reduce allocations of followpoints by reusing existing
2020-03-19 00:34:24 +09:00
Dan Balasescu
1d680b7a00
Better english
...
Co-Authored-By: Dean Herbert <pe@ppy.sh>
2020-03-18 19:13:25 +09:00
smoogipoo
210e5c672f
Merge branch 'master' into add-notelock
2020-03-18 16:24:31 +09:00
Dean Herbert
d6be8eec0c
Merge branch 'master' into click-disabled-difficulty-icons
2020-03-16 11:30:57 +09:00
Andrei Zavatski
c271d17557
Remove useless field
2020-03-14 14:07:52 +03:00
Andrei Zavatski
74c9d5fc93
Use AccentColour
2020-03-14 13:45:55 +03:00
Andrei Zavatski
7e9d28b1b1
Fix slider ball colour affects follow circle
2020-03-13 13:42:33 +03:00
Dean Herbert
ed837d3115
Use framework extension method for FromHex
2020-03-11 10:18:41 +09:00
smoogipoo
742698acab
Add notelock implementation
2020-03-10 15:30:24 +09:00
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