1
0
mirror of https://github.com/ppy/osu.git synced 2024-09-21 18:07:23 +08:00

Merge pull request #25726 from smoogipoo/fix-catch-clamping

Fix catch applying positional clamping too early
This commit is contained in:
Bartłomiej Dach 2023-12-13 18:47:05 +01:00 committed by GitHub
commit 15ce45ac71
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 588 additions and 8 deletions

View File

@ -52,6 +52,7 @@ namespace osu.Game.Rulesets.Catch.Tests
[TestCase("3644427", new[] { typeof(CatchModEasy), typeof(CatchModFlashlight) })]
[TestCase("3689906", new[] { typeof(CatchModDoubleTime), typeof(CatchModEasy) })]
[TestCase("3949367", new[] { typeof(CatchModDoubleTime), typeof(CatchModEasy) })]
[TestCase("112643")]
public new void Test(string name, params Type[] mods) => base.Test(name, mods);
protected override IEnumerable<ConvertValue> CreateConvertValue(HitObject hitObject)

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,582 @@
osu file format v9
[General]
StackLeniency: 0.7
Mode: 0
[Difficulty]
HPDrainRate:7
CircleSize:5
OverallDifficulty:8
ApproachRate:8
SliderMultiplier:3.2
SliderTickRate:2
[Events]
//Background and Video events
//Break Periods
2,16325,17625
2,32325,33875
2,66325,67375
2,120135,127375
//Storyboard Layer 0 (Background)
//Storyboard Layer 1 (Fail)
//Storyboard Layer 2 (Pass)
//Storyboard Layer 3 (Foreground)
//Storyboard Sound Samples
//Background Colour Transformations
3,100,163,162,255
[TimingPoints]
125,500,4,1,0,50,1,0
36125,-100,4,1,0,50,0,1
66125,-100,4,1,0,50,0,0
88125,-100,4,1,0,50,0,1
120125,-100,4,1,0,50,0,0
170125,-100,4,2,0,5,0,0
170250,-100,4,1,0,50,0,0
172125,-100,4,1,0,50,0,1
200125,-100,4,1,0,50,0,0
[HitObjects]
64,80,2375,5,0
172,192,2625,1,2
152,36,2875,1,0
80,176,3125,1,2
224,112,3375,1,0
192,256,3625,1,8
136,116,3875,1,0
272,32,4125,2,2,B|376:0|408:56|412:125|320:144|304:176|328:216|368:272|496:208,1,400,6|0
504,216,4875,2,2,B|376:232|288:280|248:384,1,320
384,344,5625,1,8
272,216,5875,1,0
272,216,6000,1,0
272,216,6125,1,4
92,280,6375,5,0
124,108,6625,1,8
256,8,6875,1,0
388,108,7125,1,2
420,280,7375,1,8
256,296,7625,1,8
256,120,7875,1,0
443,152,8125,2,2,B|397:202|305:219|256:192|203:163|114:181|68:231,1,400,2|0
24,256,8875,2,2,B|112:227|141:134|122:36|37:1,1,320
16,132,9625,1,8
136,280,9875,1,0
136,280,10000,1,0
136,280,10125,1,4
256,172,10375,5,0
368,56,10625,1,8
196,116,10875,1,0
316,116,11125,1,2
144,56,11375,1,0
256,0,11625,1,8
112,128,11875,1,0
164,280,12125,6,0,B|256:316,1,80,4|2
100,348,12500,2,0,B|8:312,1,80,0|2
144,212,12875,2,0,B|52:176,1,80,0|2
208,144,13250,2,0,B|300:180,1,80,0|2
332,324,13625,1,8
180,324,13875,1,0
256,240,14125,5,4
256,240,14250,1,2
324,112,14500,1,0
324,112,14625,1,2
192,56,14875,1,4
192,56,15000,1,2
256,164,15250,1,0
256,164,15375,1,2
256,20,15625,1,8
120,56,15875,1,0
256,92,16125,1,6
20,152,18375,5,0
180,136,18625,1,8
52,228,18875,1,0
120,84,19125,1,2
128,244,19375,1,0
48,84,19625,1,8
192,212,19875,1,0
300,72,20125,2,4,B|396:36|444:84|396:144|352:184|372:224|416:260|532:224|528:164,1,320,4|0
472,40,20875,2,2,B|376:72|304:164|272:260|280:320,1,320
404,352,21625,1,8
432,196,21875,1,0
432,196,22000,1,0
432,196,22125,1,4
296,100,22375,5,0
168,196,22625,2,0,B|32:296,1,160,8|0
268,212,23125,2,0,B|168:76,1,160,2|8
252,312,23625,2,0,B|388:212,1,160,8|0
484,96,24125,2,2,B|412:0|320:36|288:120|240:136|200:132|156:116|132:96|80:44,1,400,2|0
72,24,24875,2,2,B|158:66|148:177|67:253|-19:210,1,320
56,108,25625,1,8
176,200,25875,1,0
176,200,26000,1,0
176,200,26125,1,4
316,92,26375,5,0
464,164,26625,2,0,B|394:224|412:336,1,160,2|0
232,316,27125,2,0,B|306:256|284:144,1,160,2|8
136,88,27625,1,8
60,224,27875,1,0
212,132,28125,6,0,B|256:32,1,80,4|2
340,228,28500,2,0,B|384:128,1,80,0|2
256,284,28875,2,0,B|212:184,1,80,4|2
128,380,29250,2,0,B|84:280,1,80,0|2
238,383,29625,2,0,B|406:379,1,160,8|0
512,267,30125,5,4
512,267,30250,1,2
416,152,30500,1,0
416,152,30625,1,2
300,264,30875,1,4
300,264,31000,1,2
236,100,31250,1,0
236,100,31375,1,2
152,256,31625,1,8
300,160,31875,1,0
256,332,32125,1,6
52,52,34625,5,0
152,164,34875,1,0
256,56,35125,1,4
256,56,35625,1,2
256,56,36125,2,4,B|331:63|364:136|320:224,1,160,4|0
320,312,36625,1,8
204,228,36875,1,0
104,328,37125,2,2,B|24:287|44:188,1,160
92,60,37625,1,8
212,148,37875,1,0
268,104,38000,1,0
324,60,38125,2,0,B|452:184,1,160,4|0
504,300,38625,1,8
364,340,38875,1,0
232,280,39125,6,2,B|150:282|69:198|105:87|179:53,2,320,2|2|6
280,148,40375,1,0
400,228,40625,2,0,B|520:368,1,160,8|0
480,192,41125,1,2
324,220,41375,1,2
168,256,41625,1,8
72,148,41875,1,2
48,84,42000,1,2
96,36,42125,2,0,B|164:108|256:44,1,160,6|0
400,72,42625,1,2
440,236,42875,1,2
464,300,43000,1,2
416,348,43125,2,0,B|348:276|256:340,1,160,6|0
112,312,43625,1,2
140,188,43875,1,0
52,64,44125,5,6
208,48,44375,1,0
344,132,44625,1,8
448,256,44875,2,2,B|401:321|285:337|217:242|233:163,2,320,2|2|0
326,211,46125,2,2,B|279:146|163:130|95:225|111:304,1,320,6|0
230,287,46875,2,2,B|277:352|393:368|461:273|445:194,1,320,6|8
376,80,47625,1,8
376,80,48125,6,0,B|304:128|216:96,1,160,4|0
84,56,48625,1,8
152,200,48875,1,0
44,320,49125,2,0,B|121:364|204:320,1,160,4|0
336,240,49625,5,8
256,148,49875,1,0
176,240,50125,1,0
340,144,50625,1,0
420,236,50875,1,0
500,144,51125,1,2
172,144,51625,1,2
92,236,51875,1,0
12,144,52125,6,0,B|160:48,1,160,4|0
304,76,52625,1,8
256,228,52875,1,0
216,112,53125,2,0,B|364:208,1,160,2|0
508,180,53625,1,8
460,28,53875,1,0
344,96,54125,1,2
228,8,54375,1,0
153,116,54625,1,2
72,220,54875,1,0
180,295,55125,1,2
284,376,55375,1,0
359,268,55625,1,2
440,164,55875,1,0
352,160,56125,6,0,B|466:294,1,160,4|0
312,228,56625,1,8
200,300,56875,1,0
160,160,57125,2,0,B|46:294,1,160,4|0
200,228,57625,1,8
312,300,57875,1,0
444,208,58125,2,0,B|362:164|380:56,1,160,2|0
344,12,58500,1,0
272,4,58625,2,0,B|232:88|120:68,1,160,2|0
68,176,59125,2,0,B|148:220|132:328,1,160,2|0
168,372,59500,1,0
240,380,59625,2,0,B|280:296|392:316,1,160,2|0
456,176,60125,5,6
328,80,60375,1,0
216,196,60625,1,8
72,136,60875,2,2,B|54:209|91:305|191:336|269:306,2,320,2|2|0
200,224,62125,2,2,B|182:150|219:54|319:23|397:53,1,320,2|0
480,179,62875,2,2,B|499:252|462:348|362:379|284:349,1,320,2|0
136,296,63625,2,0,B|67:220|140:136,1,160,8|0
256,56,64125,5,6
284,212,64375,1,0
440,180,64625,1,8
420,24,64875,1,0
300,132,65125,1,6
272,288,65375,1,0
116,256,65625,1,8
136,100,65875,1,0
256,8,66125,1,4
256,56,68125,6,0,B|298:128|244:237|123:241|74:173,1,320
132,80,68875,2,2,B|344:328,1,320
456,224,69625,1,8
340,116,69875,1,0
340,116,70000,1,0
340,116,70125,1,4
228,4,70375,5,0
256,160,70625,2,0,B|186:224|88:168,1,160,2|0
148,332,71125,2,0,B|216:396|316:340,1,160,2|8
424,248,71625,1,8
336,112,71875,1,0
336,112,72000,1,0
336,112,72125,1,4
228,208,72375,2,0,B|139:179|144:80,1,160,0|8
268,56,72875,2,2,B|272:164|220:272|120:308|72:308,1,320
24,192,73625,1,8
92,64,73875,1,0
92,64,74000,1,0
92,64,74125,1,4
224,140,74375,5,0
340,224,74625,2,0,B|412:211|428:121|363:77,1,160,2|0
268,192,75125,2,0,B|196:205|180:295|245:339,1,160,2|0
268,192,75625,2,0,B|104:168,1,160,8|0
24,52,76125,6,0,B|132:40,1,80
176,32,76375,1,2
348,60,76625,1,2
248,164,76875,1,2
264,20,77125,1,2
324,140,77375,1,2
180,116,77625,1,2
240,240,77875,1,0
256,92,78125,1,4
100,124,78375,5,0
8,256,78625,2,0,B|64:332|176:304,1,160,8|0
304,260,79125,2,0,B|248:184|136:212,1,160,2|0
304,260,79625,1,8
460,284,79875,1,2
420,128,80125,6,0,B|332:128,1,80,4|0
256,124,80375,1,2
344,260,80625,1,2
168,260,80875,1,2
384,192,81125,1,2
256,260,81375,1,2
168,124,81625,1,2
344,124,81875,1,2
128,192,82125,1,4
48,192,82250,6,0,B|48:84|152:52,1,160,2|0
204,44,82625,2,0,B|204:152|308:184,1,160,2|0
352,160,83000,2,0,B|244:160|212:264,1,160,2|0
192,316,83375,2,0,B|84:316|52:212,1,160,2|2
32,88,83875,1,2
172,8,84125,1,4
256,192,84250,12,6,86125
256,192,86250,12,4,87125
256,100,88125,6,2,B|308:116|368:104|404:16,1,160,6|0
256,100,88625,1,8
136,180,88875,1,0
8,96,89125,2,0,B|-28:168|16:232|68:256,1,160,2|0
164,312,89625,1,8
288,236,89875,1,2
288,236,90000,1,2
288,236,90125,2,2,B|452:164,1,160,6|0
476,32,90625,1,8
332,104,90875,1,0
180,104,91125,5,6
36,32,91375,1,8
56,164,91625,1,8
56,164,92125,2,0,B|260:208,1,160,6|0
84,296,92625,1,8
220,376,92875,1,0
320,268,93125,2,0,B|524:224,1,160,6|0
432,80,93625,1,8
296,152,93875,1,2
296,152,94000,1,2
296,152,94125,2,2,B|232:164|176:132|164:52,1,160,6|0
216,232,94625,2,2,B|280:220|336:252|348:332,1,160,2|0
341,304,95000,1,0
341,304,95125,2,0,B|369:84,1,160,2|0
171,80,95625,2,0,B|143:300,1,160,2|0
43,358,96125,5,6
81,219,96375,1,0
169,332,96625,1,8
304,272,96875,2,2,B|388:252|426:161|418:63|344:19,2,320,2|2|0
240,144,98125,2,2,B|219:244|50:229|65:60|168:58,1,320
240,144,98875,2,2,B|260:43|429:58|414:227|311:229,1,320,2|0
180,292,99625,2,0,B|80:304|36:208,1,160,2|0
48,64,100125,6,0,B|224:112,1,160,4|0
348,52,100625,2,0,B|524:4,1,160,2|0
504,172,101125,2,0,B|328:124,1,160,2|0
204,184,101625,2,0,B|28:232,1,160,2|0
49,226,102000,1,0
49,226,102125,1,2
256,324,102625,5,8
384,256,102875,1,0
256,188,103125,1,6
256,188,103625,1,2
128,256,103875,1,0
256,324,104125,6,0,B|324:252|432:316,1,160,6|0
492,168,104625,1,8
332,188,104875,1,0
256,60,105125,2,0,B|188:132|80:68,1,160,6|0
20,216,105625,1,8
180,196,105875,1,0
368,156,106125,2,0,B|418:184|462:234|408:296,1,160,2|0
220,80,106625,2,0,B|248:30|298:-14|360:40,1,160,2|0
144,228,107125,2,0,B|94:200|50:150|104:88,1,160,2|0
292,304,107625,2,0,B|264:354|214:398|152:344,1,160,2|0
44,216,108125,6,0,B|145:221|172:132,1,160,6|0
304,224,108625,1,8
408,104,108875,1,0
468,216,109125,2,0,B|367:221|340:132,1,160,6|0
208,224,109625,1,8
104,104,109875,1,0
256,56,110125,2,0,B|144:180,1,160,2|0
256,328,110625,2,0,B|368:204,1,160,2|0
208,244,111125,2,0,B|96:368,1,160,2|0
304,140,111625,2,0,B|416:16,1,160,2|0
252,20,112125,5,6
112,60,112375,1,0
72,200,112625,1,8
158,316,112875,2,2,B|236:321|324:259|326:152|278:89,2,320,2|2|0
176,168,114125,2,2,B|214:236|313:276|405:220|431:145,1,320,2|0
328,64,114875,2,2,B|259:102|219:201|275:293|350:319,1,320,2|0
488,340,115625,2,0,B|456:172,1,160,2|0
416,72,116125,5,6
288,140,116375,1,0
164,68,116625,1,8
36,136,116875,1,0
104,264,117125,1,6
232,332,117375,1,0
356,260,117625,1,8
484,328,117875,1,0
356,384,118125,1,6
256,12,128125,5,4
256,12,128250,1,2
336,128,128500,1,0
336,128,128625,1,2
400,0,128875,1,0
400,0,129000,1,2
492,112,129250,1,0
492,112,129375,1,2
440,248,129625,2,2,B|272:284,1,160
256,108,130125,5,4
256,108,130250,1,2
176,224,130500,1,0
176,224,130625,1,2
112,96,130875,1,0
112,96,131000,1,2
20,208,131250,1,0
20,208,131375,1,2
72,344,131625,2,2,B|240:380,1,160
408,376,132125,6,0,B|512:352|584:248|592:-32|416:-48|256:-80|96:-16|56:88|8:224|88:304|144:336|184:368|256:368|256:368|328:368|368:336|424:304|504:224|456:88|416:-16|256:-80|96:-48|-80:-32|-72:248|0:352|104:376,1,2240,6|0
256,192,135875,5,2
256,192,136000,1,0
256,192,136125,1,4
136,104,136375,1,0
132,240,136625,1,8
133,240,136750,1,0
256,280,137000,1,0
255,280,137125,1,8
256,280,137250,1,0
256,280,137375,1,0
380,240,137625,1,8
376,104,137875,1,0
256,124,138125,5,4
256,124,138375,1,0
144,192,138625,1,8
144,192,138750,1,0
256,260,139000,1,0
256,260,139125,1,8
256,260,139250,1,0
256,260,139375,1,0
368,192,139625,1,8
256,124,139875,1,0
256,124,140000,1,0
256,124,140125,2,2,B|188:112|212:76|188:36|256:20,1,160,6|2
332,128,140625,5,8
332,128,140750,1,0
332,256,141000,1,0
332,256,141125,1,8
332,256,141250,1,0
332,256,141375,1,0
180,256,141625,1,8
180,128,141875,1,0
256,56,142125,5,4
256,56,142375,1,0
256,160,142625,1,8
256,160,142750,1,0
256,264,143000,1,0
256,264,143125,1,8
256,264,143250,1,0
256,264,143375,1,0
188,352,143625,1,8
324,352,143875,1,0
324,352,144000,1,0
324,352,144125,2,0,B|492:352,1,160,6|2
392,280,144625,5,8
392,280,144750,1,0
324,192,145000,1,0
324,192,145125,1,8
324,192,145250,1,0
324,192,145375,1,0
188,192,145625,1,8
120,280,145875,1,0
256,288,146125,5,4
256,288,146375,1,0
256,176,146625,1,8
256,176,146750,1,0
176,96,147000,1,0
176,96,147125,1,8
176,96,147250,1,0
176,96,147375,1,0
256,16,147625,1,8
336,96,147875,1,0
336,96,148000,1,0
336,96,148125,2,6,B|400:156|388:224|364:248,1,160,6|2
256,272,148625,5,8
240,264,148750,1,0
240,180,149000,1,0
256,172,149125,1,8
272,164,149250,1,0
288,156,149375,1,0
256,64,149625,1,8
256,64,149875,1,0
116,180,150125,5,0
120,200,150250,1,0
132,224,150375,1,0
152,236,150500,1,0
176,240,150625,1,8
208,240,150750,1,0
232,236,150875,1,0
248,216,151000,1,0
256,192,151125,1,8
260,168,151250,1,0
272,144,151375,1,8
292,132,151500,1,0
316,128,151625,1,8
348,128,151750,1,8
372,132,151875,1,8
388,152,152000,1,0
404,184,152125,6,0,B|436:250|377:334|292:300,1,160,6|0
108,200,152625,2,0,B|76:134|135:50|220:84,1,160,6|0
256,192,153125,2,0,B|256:100,1,80,2|0
256,192,153375,2,0,B|256:368,2,160,2|8|0
360,60,154125,5,0
360,60,154250,1,0
360,60,154375,1,2
256,12,154625,1,0
256,12,154750,1,0
256,12,154875,1,2
154,64,155125,1,0
154,64,155250,1,2
155,63,155375,2,0,B|87:119|115:191|179:211|227:179,2,160,0|8|0
163,74,156000,5,0
163,74,156125,1,0
163,74,156250,2,2,B|174:151|299:265|445:180|473:106,1,400,2|0
320,80,157125,2,2,B|224:88|184:188|224:288|320:295,1,320
348,292,157750,1,0
380,280,157875,1,0
404,260,158000,1,0
412,236,158125,1,0
412,208,158250,1,0
404,180,158375,1,0
264,68,158625,2,0,B|184:104,2,80,2|0|2
164,216,159125,2,0,B|244:180,2,80,2|0|2
56,144,159625,5,8
64,276,159875,1,8
64,276,160000,1,8
64,276,160125,2,0,B|24:352,2,80,2|0|0
128,288,160500,2,0,B|136:188,2,80,2|0|0
192,300,160875,2,0,B|200:400,2,80,2|0|0
240,256,161250,2,0,B|304:176,2,80,2|0|0
284,304,161625,2,0,B|356:380,2,80,2|0|0
328,256,162000,6,0,B|456:236,2,80,0|2|0
308,192,162375,2,0,B|180:172,2,80,0|2|0
340,136,162750,2,0,B|468:116,2,80,0|2|0
284,100,163125,2,0,B|264:-28,2,80,0|2|0
224,128,163500,2,0,B|204:256,2,80,0|2|0
180,76,163875,6,0,B|92:52,2,80,2|0|0
144,132,164250,2,0,B|72:184,2,80,2|0|0
168,196,164625,2,0,B|240:248,2,80,2|0|0
136,256,165000,2,0,B|96:340,2,80,2|0|0
188,296,165375,2,0,B|228:380,2,80,2|0|0
236,252,165750,1,0
236,252,165875,1,2
364,276,166125,6,2,B|408:176|360:156|320:168|296:176|268:132|264:112|272:76|304:52|328:40,1,240,2|0
264,24,166625,2,2,B|308:124|260:144|220:132|196:124|168:168|164:188|172:224|204:248|228:260,1,240,2|0
192,280,167125,1,0
320,376,167375,1,0
192,376,167625,1,0
256,328,167750,1,0
320,280,167875,1,0
256,124,168125,1,6
256,192,168250,12,0,170125
256,192,171125,12,6,172125
48,56,172375,5,0
20,184,172625,2,0,B|16:264|92:316|152:304,1,160,8|0
240,300,173125,1,2
200,176,173375,1,0
324,220,173625,2,0,B|360:220|416:258|412:338,1,160,8|0
412,334,174000,1,0
412,334,174125,2,0,B|456:156,1,160,6|0
398,35,174625,2,0,B|220:-8,1,160,2|0
245,0,175000,1,0
245,0,175125,2,0,B|201:178,1,160,6|0
259,299,175625,2,0,B|437:342,1,160,2|0
424,176,176125,5,6
272,128,176375,1,0
116,152,176625,1,8
173,253,176875,2,2,B|257:233|295:142|287:44|213:0,2,320,2|2|0
28,204,178125,2,2,B|356:316,1,320
172,360,178875,2,2,B|500:248,1,320,2|0
384,148,179625,2,0,B|292:168|224:96|232:44,1,160,2|0
244,93,180000,1,0
244,93,180125,6,0,B|64:120,1,160,6|0
100,268,180625,2,0,B|256:296,1,160,8|0
257,296,181000,1,0
256,296,181125,2,0,B|413:267,1,160,6|0
426,116,181625,2,0,B|267:93,1,160,8|2
267,93,182000,5,2
267,93,182125,2,2,B|180:112|168:212,1,160,2|0
140,380,182625,2,0,B|227:361|239:261,1,160,8|0
62,169,183125,2,2,B|80:256|180:268,1,160,2|0
348,296,183625,2,0,B|329:208|229:196,1,160,8|0
64,172,184125,1,6
256,192,184250,12,2,185625
48,188,186125,6,2,B|96:108|256:108|256:192|256:276|416:276|464:196,1,480,2|0
328,144,187125,2,0,B|296:316,1,160,2|0
184,240,187625,2,0,B|216:68,1,160,2|0
256,192,188125,1,6
256,192,188250,12,2,189625
464,188,190125,6,2,B|416:108|256:108|256:192|256:276|96:276|48:196,1,480,2|0
184,144,191125,2,0,B|216:316,1,160,2|0
328,240,191625,2,0,B|296:68,1,160,2|0
164,32,192125,5,6
28,84,192375,1,0
28,228,192625,1,8
128,332,192875,2,2,B|160:224|300:172|408:244,2,320,2|2|0
276,356,194125,2,2,B|384:324|436:184|364:76,1,320
236,28,194875,2,2,B|128:60|76:200|148:308,1,320,2|0
280,268,195625,2,0,B|232:116,1,160,2|0
104,52,196125,5,6
136,192,196375,1,0
116,344,196625,1,8
256,312,196875,1,0
332,312,197000,1,0
408,332,197125,1,6
392,264,197250,1,0
376,192,197375,1,0
396,40,197625,1,8
256,72,197875,5,0
256,72,198000,1,0
256,72,198125,1,6
136,192,198625,1,6
256,312,199125,1,6
376,192,199625,1,6
256,192,200125,1,6

View File

@ -10,7 +10,6 @@ using osu.Framework.Bindables;
using osu.Game.Audio;
using osu.Game.Beatmaps;
using osu.Game.Beatmaps.ControlPoints;
using osu.Game.Rulesets.Catch.UI;
using osu.Game.Rulesets.Judgements;
using osu.Game.Rulesets.Objects;
using osu.Game.Rulesets.Objects.Types;
@ -103,8 +102,7 @@ namespace osu.Game.Rulesets.Catch.Objects
AddNested(new TinyDroplet
{
StartTime = t + lastEvent.Value.Time,
X = ClampToPlayfield(EffectiveX + Path.PositionAt(
lastEvent.Value.PathProgress + (t / sinceLastTick) * (e.PathProgress - lastEvent.Value.PathProgress)).X),
X = EffectiveX + Path.PositionAt(lastEvent.Value.PathProgress + (t / sinceLastTick) * (e.PathProgress - lastEvent.Value.PathProgress)).X,
});
}
}
@ -121,7 +119,7 @@ namespace osu.Game.Rulesets.Catch.Objects
{
Samples = dropletSamples,
StartTime = e.Time,
X = ClampToPlayfield(EffectiveX + Path.PositionAt(e.PathProgress).X),
X = EffectiveX + Path.PositionAt(e.PathProgress).X,
});
break;
@ -132,16 +130,14 @@ namespace osu.Game.Rulesets.Catch.Objects
{
Samples = this.GetNodeSamples(nodeIndex++),
StartTime = e.Time,
X = ClampToPlayfield(EffectiveX + Path.PositionAt(e.PathProgress).X),
X = EffectiveX + Path.PositionAt(e.PathProgress).X,
});
break;
}
}
}
public float EndX => ClampToPlayfield(EffectiveX + this.CurvePositionAt(1).X);
public float ClampToPlayfield(float value) => Math.Clamp(value, 0, CatchPlayfield.WIDTH);
public float EndX => EffectiveX + this.CurvePositionAt(1).X;
[JsonIgnore]
public double Duration