@rian8337/osu-droid-replay-analyzer 4.0.0-beta.68 → 4.0.0-beta.69

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/dist/index.js +14 -19
  2. package/package.json +5 -5
package/dist/index.js CHANGED
@@ -379,9 +379,6 @@ class RebalanceThreeFingerChecker {
379
379
  }
380
380
  this.getAccurateBreakPoints();
381
381
  this.filterCursorInstances();
382
- if (this.downCursorInstances.filter((v) => v.length > 0).length <= 3) {
383
- return { is3Finger: false, penalty: 1 };
384
- }
385
382
  this.getBeatmapSections();
386
383
  this.calculateNerfFactors();
387
384
  const finalPenalty = this.calculateFinalPenalty();
@@ -536,7 +533,7 @@ class RebalanceThreeFingerChecker {
536
533
  return -1;
537
534
  }
538
535
  const hitTime = object.startTime + objectData.accuracy;
539
- const objectPosition = object.getStackedPosition(osuBase.Modes.droid);
536
+ const objectPosition = object.stackedPosition;
540
537
  // We are maintaining the closest distance to the object.
541
538
  // This is because the radius that is calculated is using an estimation.
542
539
  // As such, it does not reflect the actual object radius in gameplay.
@@ -804,7 +801,7 @@ class SliderCheeseChecker {
804
801
  Math.min(this.hitWindow50, object.duration)) {
805
802
  continue;
806
803
  }
807
- const objectStartPosition = object.getStackedPosition(osuBase.Modes.droid);
804
+ const objectStartPosition = object.stackedPosition;
808
805
  // These time boundaries should consider the delta time between the previous and next
809
806
  // object as well as their hit accuracy. However, they are somewhat complicated to
810
807
  // compute and the accuracy gain is small. As such, let's settle with 50 hit window.
@@ -905,7 +902,7 @@ class SliderCheeseChecker {
905
902
  continue;
906
903
  }
907
904
  const nestedObject = object.nestedHitObjects[i];
908
- const nestedPosition = nestedObject.getStackedPosition(osuBase.Modes.droid);
905
+ const nestedPosition = nestedObject.stackedPosition;
909
906
  while (occurrenceLoopIndex < allOccurrences.length &&
910
907
  allOccurrences[occurrenceLoopIndex].time <
911
908
  nestedObject.startTime) {
@@ -1186,7 +1183,7 @@ class ThreeFingerChecker {
1186
1183
  return -1;
1187
1184
  }
1188
1185
  const hitTime = object.startTime + objectData.accuracy;
1189
- const objectPosition = object.getStackedPosition(osuBase.Modes.droid);
1186
+ const objectPosition = object.stackedPosition;
1190
1187
  // We are maintaining the closest distance to the object.
1191
1188
  // This is because the radius that is calculated is using an estimation.
1192
1189
  // As such, it does not reflect the actual object radius in gameplay.
@@ -1585,11 +1582,11 @@ class TwoHandChecker {
1585
1582
  prevObjectData.result === exports.HitResult.miss) {
1586
1583
  return new IndexedHitObject(object, -1, -1, -1, null, false);
1587
1584
  }
1588
- const objectStartPosition = object.getStackedPosition(osuBase.Modes.droid);
1589
- let prevObjectEndPosition = prevObject.getStackedEndPosition(osuBase.Modes.droid);
1585
+ const objectStartPosition = object.stackedPosition;
1586
+ let prevObjectEndPosition = prevObject.stackedEndPosition;
1590
1587
  if (prevObject instanceof osuBase.Slider) {
1591
1588
  if (prevObject.distance > 0) {
1592
- const endPosition = prevObject.getStackedEndPosition(osuBase.Modes.droid);
1589
+ const endPosition = prevObject.stackedEndPosition;
1593
1590
  const lazyEndMovement = objectStartPosition.subtract(endPosition);
1594
1591
  const actualEndMovement = objectStartPosition.subtract(prevObjectEndPosition);
1595
1592
  if (lazyEndMovement.length < actualEndMovement.length) {
@@ -1597,12 +1594,10 @@ class TwoHandChecker {
1597
1594
  }
1598
1595
  }
1599
1596
  else {
1600
- prevObjectEndPosition = prevObject.getStackedPosition(osuBase.Modes.droid);
1597
+ prevObjectEndPosition = prevObject.stackedPosition;
1601
1598
  }
1602
1599
  }
1603
- const prevToCurrentMovement = object
1604
- .getStackedPosition(osuBase.Modes.droid)
1605
- .subtract(prevObjectEndPosition);
1600
+ const prevToCurrentMovement = object.stackedPosition.subtract(prevObjectEndPosition);
1606
1601
  // Don't consider objects that are too close to each other.
1607
1602
  if (prevToCurrentMovement.length <= object.radius) {
1608
1603
  return new IndexedHitObject(object, -1, -1, -1, null, false);
@@ -1725,7 +1720,7 @@ class TwoHandChecker {
1725
1720
  getCursorPositionForObjectStart(objectIndex) {
1726
1721
  const object = this.beatmap.hitObjects.objects[objectIndex];
1727
1722
  const data = this.data.hitObjectData[objectIndex];
1728
- const objectPosition = object.getStackedPosition(osuBase.Modes.droid);
1723
+ const objectPosition = object.stackedPosition;
1729
1724
  if (object instanceof osuBase.Spinner) {
1730
1725
  return {
1731
1726
  position: objectPosition,
@@ -1887,10 +1882,10 @@ class TwoHandChecker {
1887
1882
  return this.getCursorPositionForObjectStart(objectIndex);
1888
1883
  }
1889
1884
  const nextObject = this.beatmap.hitObjects.objects[objectIndex - 1];
1890
- let objectEndPosition = object.getStackedEndPosition(osuBase.Modes.droid);
1885
+ let objectEndPosition = object.stackedEndPosition;
1891
1886
  if (object.distance > 0 && nextObject) {
1892
- const endPosition = object.getStackedEndPosition(osuBase.Modes.droid);
1893
- const nextStartPosition = nextObject.getStackedPosition(osuBase.Modes.droid);
1887
+ const endPosition = object.stackedEndPosition;
1888
+ const nextStartPosition = nextObject.stackedPosition;
1894
1889
  const lazyEndMovement = nextStartPosition.subtract(endPosition);
1895
1890
  const actualEndMovement = nextStartPosition.subtract(objectEndPosition);
1896
1891
  if (lazyEndMovement.length < actualEndMovement.length) {
@@ -1898,7 +1893,7 @@ class TwoHandChecker {
1898
1893
  }
1899
1894
  }
1900
1895
  else {
1901
- objectEndPosition = object.getStackedPosition(osuBase.Modes.droid);
1896
+ objectEndPosition = object.stackedPosition;
1902
1897
  }
1903
1898
  let nearestPosition = new osuBase.Vector2(Number.POSITIVE_INFINITY);
1904
1899
  let nearestCursorIndex = 0;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rian8337/osu-droid-replay-analyzer",
3
- "version": "4.0.0-beta.68",
3
+ "version": "4.0.0-beta.69",
4
4
  "description": "A replay analyzer for analyzing osu!droid replay files.",
5
5
  "keywords": [
6
6
  "osu",
@@ -34,9 +34,9 @@
34
34
  "url": "https://github.com/Rian8337/osu-droid-module/issues"
35
35
  },
36
36
  "dependencies": {
37
- "@rian8337/osu-base": "^4.0.0-beta.68",
38
- "@rian8337/osu-difficulty-calculator": "^4.0.0-beta.68",
39
- "@rian8337/osu-rebalance-difficulty-calculator": "^4.0.0-beta.68",
37
+ "@rian8337/osu-base": "^4.0.0-beta.69",
38
+ "@rian8337/osu-difficulty-calculator": "^4.0.0-beta.69",
39
+ "@rian8337/osu-rebalance-difficulty-calculator": "^4.0.0-beta.69",
40
40
  "java-deserialization": "^0.1.0",
41
41
  "unzipper": "^0.10.11"
42
42
  },
@@ -46,5 +46,5 @@
46
46
  "publishConfig": {
47
47
  "access": "public"
48
48
  },
49
- "gitHead": "7e5fb503347032ae2a6337bbc25a76c95a54f7d8"
49
+ "gitHead": "aed764bcd1c55a0a937b8f7439146c00b0457bfb"
50
50
  }