fix replay hit results
This commit is contained in:
@@ -1558,6 +1558,9 @@ public class Game extends ComplexOpsuState {
|
||||
}
|
||||
|
||||
gameObjects = new GameObject[beatmap.objects.length];
|
||||
for (ReplayPlayback replayPlayback : replays) {
|
||||
replayPlayback.gameObjects = new GameObject[gameObjects.length];
|
||||
}
|
||||
playbackSpeed = PlaybackSpeed.NORMAL;
|
||||
|
||||
// reset game data
|
||||
@@ -1604,6 +1607,9 @@ public class Game extends ComplexOpsuState {
|
||||
} else if (hitObject.isSpinner()) {
|
||||
gameObjects[i] = new Spinner(hitObject, this, data);
|
||||
}
|
||||
for (ReplayPlayback replayPlayback : replays) {
|
||||
replayPlayback.gameObjects[i] = gameObjects[i].clone(replayPlayback.gdata);
|
||||
}
|
||||
} catch (Exception e) {
|
||||
String message = String.format("Failed to create %s at index %d:\n%s", hitObject.getTypeName(), i, hitObject.toString());
|
||||
Log.error(message, e);
|
||||
@@ -1718,14 +1724,6 @@ public class Game extends ComplexOpsuState {
|
||||
}
|
||||
}
|
||||
|
||||
for (ReplayPlayback replayPlayback : replays) {
|
||||
GameObject[] objs = new GameObject[gameObjects.length];
|
||||
for (int i = 0; i < objs.length; i++) {
|
||||
objs[i] = gameObjects[i].clone(replayPlayback.new GData());
|
||||
}
|
||||
replayPlayback.setGameObjects(objs);
|
||||
}
|
||||
|
||||
Dancer.instance.setGameObjects(gameObjects);
|
||||
storyboardOverlay.setGameObjects(gameObjects);
|
||||
if (!skippedToCheckpoint) {
|
||||
|
||||
Reference in New Issue
Block a user