From 3973e122cf1328a2729afdcccdfddef020ca8e0d Mon Sep 17 00:00:00 2001 From: Nic0Nic0Nii Date: Fri, 8 Oct 2021 00:40:38 +0000 Subject: [PATCH] Add in note judgements. Co-authored-by: sigonasr2 --- LLSIG/src/main/java/LLSIG/Canvas.java | 10 +++++--- LLSIG/src/main/java/LLSIG/LLSIG.java | 28 +++++++++++++-------- LLSIG/src/main/java/LLSIG/Lane.java | 3 ++- LLSIG/src/main/java/LLSIG/TimingRating.java | 10 ++++++++ 4 files changed, 36 insertions(+), 15 deletions(-) create mode 100644 LLSIG/src/main/java/LLSIG/TimingRating.java diff --git a/LLSIG/src/main/java/LLSIG/Canvas.java b/LLSIG/src/main/java/LLSIG/Canvas.java index 8e07b5a..c03a2ef 100644 --- a/LLSIG/src/main/java/LLSIG/Canvas.java +++ b/LLSIG/src/main/java/LLSIG/Canvas.java @@ -46,10 +46,12 @@ public class Canvas extends JPanel{ int noteCounter = 0; while (lane.noteExists(noteCounter)) { Note n = lane.getNote(noteCounter); - double PLAYTIME_RATIO = (1-(((double)n.getStartFrame()-LLSIG.game.musicPlayer.getPlayPosition())/LLSIG.game.NOTE_SPEED)); - if (n.getStartFrame()-LLSIG.game.musicPlayer.getPlayPosition()0?TimingRating.EARLY:TimingRating.LATE;} + l.lastNote=LLSIG.game.musicPlayer.getPlayPosition(); + n.active=false; + } + } keyState[lane]=true; } //System.out.println("Pressed "+e.getKeyChar()+" on frame "+musicPlayer.getPlayPosition()); diff --git a/LLSIG/src/main/java/LLSIG/Lane.java b/LLSIG/src/main/java/LLSIG/Lane.java index 3ce50c4..f30e75d 100644 --- a/LLSIG/src/main/java/LLSIG/Lane.java +++ b/LLSIG/src/main/java/LLSIG/Lane.java @@ -1,10 +1,11 @@ package main.java.LLSIG; -import java.util.ArrayList; import java.util.List; public class Lane{ List noteChart; int currentNoteIndex = 0; + TimingRating lastRating = TimingRating.MISS; + int lastNote = -1; public Lane(List noteChart) { super(); this.noteChart = noteChart; diff --git a/LLSIG/src/main/java/LLSIG/TimingRating.java b/LLSIG/src/main/java/LLSIG/TimingRating.java new file mode 100644 index 0000000..d3f08b3 --- /dev/null +++ b/LLSIG/src/main/java/LLSIG/TimingRating.java @@ -0,0 +1,10 @@ +package main.java.LLSIG; + +public enum TimingRating { + PERFECT, // +/-20ms + EXCELLENT, // +/-50ms + GREAT, // +/-100ms + EARLY, // +/-150ms + LATE, // +/-150ms + MISS; // >150ms +}