Notes now move
This commit is contained in:
parent
e1dbbafe99
commit
27082a717c
@ -51,11 +51,16 @@ public class Game : MonoBehaviour
|
||||
float timestamp = manager.source.time;
|
||||
|
||||
List<Note> newNotes = allNotes.Where(note => note.t >= timestamp && timestamp + 1f <= note.t).ToList();
|
||||
newNotes.ForEach(note => activeNotes.Remove(note));
|
||||
|
||||
menu.GameElem.CheckNoteSelf(timestamp);
|
||||
menu.GameElem.UpdateMargin(timestamp);
|
||||
foreach (Note note in newNotes)
|
||||
{
|
||||
Debug.Log("Removing note");
|
||||
Debug.Log(allNotes.Remove(note));
|
||||
}
|
||||
|
||||
menu.GameElem.UpdateNotes(newNotes);
|
||||
menu.GameElem.CheckNoteLifetime(timestamp);
|
||||
menu.GameElem.UpdateMargin(timestamp);
|
||||
}
|
||||
|
||||
IEnumerator GameLoop()
|
||||
@ -83,7 +88,7 @@ public class Game : MonoBehaviour
|
||||
{
|
||||
int totalSeconds = (int)manager.source.time;
|
||||
int h = totalSeconds / 3600;
|
||||
int m = (totalSeconds % 3600) / 60;
|
||||
int m = totalSeconds % 3600 / 60;
|
||||
int s = totalSeconds % 60;
|
||||
|
||||
string result = $"{h:D2}:{m:D2}:{s:D2} / {totalDuration}";
|
||||
|
@ -46,7 +46,6 @@ namespace UITypes
|
||||
|
||||
Game game;
|
||||
|
||||
|
||||
List<NoteElement> activeNoteElements = new();
|
||||
|
||||
public void InitGame(Game game)
|
||||
@ -121,7 +120,8 @@ namespace UITypes
|
||||
foreach (var note in notes)
|
||||
{
|
||||
NoteElement el = new();
|
||||
el.Init(note);
|
||||
el.Init(note, leftUpcomingColumn.resolvedStyle.height);
|
||||
activeNoteElements.Add(el);
|
||||
|
||||
if (note.a == "left")
|
||||
{
|
||||
@ -150,9 +150,9 @@ namespace UITypes
|
||||
}
|
||||
}
|
||||
|
||||
public void CheckNoteSelf(float timestamp)
|
||||
public void CheckNoteLifetime(float timestamp)
|
||||
{
|
||||
foreach (var note in activeNoteElements)
|
||||
foreach (var note in activeNoteElements.ToList())
|
||||
{
|
||||
if (note.CheckSelf(timestamp))
|
||||
{
|
||||
|
@ -14,9 +14,11 @@ namespace UITypes
|
||||
public new class UxmlFactory : UxmlFactory<NoteElement> { }
|
||||
|
||||
public Note note;
|
||||
public float ColumnHeight;
|
||||
|
||||
public void Init(Note note)
|
||||
public void Init(Note note, float columnHeight)
|
||||
{
|
||||
this.ColumnHeight = columnHeight;
|
||||
AddToClassList("NoteElement");
|
||||
|
||||
AddToClassList(note.a[..1].ToUpper() + note.a[1..] + "Note");
|
||||
@ -26,7 +28,7 @@ namespace UITypes
|
||||
|
||||
public void UpdateMargin(float timestamp)
|
||||
{
|
||||
style.marginTop = new((note.t - timestamp) / 1000f);
|
||||
style.marginTop = new(ColumnHeight - (note.t - timestamp) * 1000 - resolvedStyle.height);
|
||||
}
|
||||
|
||||
public bool CheckSelf(float timestamp)
|
||||
|
@ -38,8 +38,8 @@
|
||||
}
|
||||
|
||||
.NoteElement {
|
||||
width: 20%;
|
||||
height: 20%;
|
||||
width: 100%;
|
||||
height: 30%;
|
||||
margin: auto;
|
||||
font-size: 32px;
|
||||
border-radius: 45px;
|
||||
|
Loading…
x
Reference in New Issue
Block a user