Revert "Swing UI and other stuff (#903)" (#907)

This reverts commit ae4a1d8757.
This commit is contained in:
minenice55 2024-05-08 12:07:59 -04:00 committed by GitHub
parent 36a665c941
commit eece21b1a7
3 changed files with 115 additions and 1251 deletions

File diff suppressed because it is too large Load diff

View file

@ -243,7 +243,7 @@ namespace HeavenStudio.Editor.Track
if (create) if (create)
{ {
RiqEntity sectionC = GameManager.instance.Beatmap.AddNewSectionMarker(Timeline.instance.MousePos2BeatSnap, ""); RiqEntity sectionC = GameManager.instance.Beatmap.AddNewSectionMarker(Timeline.instance.MousePos2BeatSnap, "New Section");
sectionC.CreateProperty("startPerfect", false); sectionC.CreateProperty("startPerfect", false);
sectionC.CreateProperty("weight", 1f); sectionC.CreateProperty("weight", 1f);

View file

@ -51,7 +51,7 @@ public class TempoDialog : Dialog
deleteButton.gameObject.SetActive(!tempoObj.first); deleteButton.gameObject.SetActive(!tempoObj.first);
tempoInput.text = tempoObj.chartEntity["tempo"].ToString("F"); tempoInput.text = tempoObj.chartEntity["tempo"].ToString("F");
swingInput.text = (tempoObj.chartEntity["swing"] * 100 + 50).ToString("F"); swingInput.text = (tempoObj.chartEntity["swing"] * 400).ToString("F");
swingSlider.value = tempoObj.chartEntity["swing"]; swingSlider.value = tempoObj.chartEntity["swing"];
swingDivisionToggle.isOn = tempoObj.chartEntity["swingDivision"] != 1f; swingDivisionToggle.isOn = tempoObj.chartEntity["swingDivision"] != 1f;
@ -97,81 +97,24 @@ public class TempoDialog : Dialog
} }
} }
public void RefreshSwingUI()
{
swingInput.text = (tempoObj.chartEntity["swing"] * 100 + 50).ToString("F");
swingSlider.value = tempoObj.chartEntity["swing"];
}
public void SwingSliderUpdate() public void SwingSliderUpdate()
{ {
if (tempoObj != null) if (tempoObj != null)
{ {
tempoObj.SetSwing(System.MathF.Round(swingSlider.value, 4)); tempoObj.SetSwing(System.MathF.Round(swingSlider.value, 4));
RefreshSwingUI(); swingInput.text = (tempoObj.chartEntity["swing"] * 400).ToString("F");
swingSlider.value = tempoObj.chartEntity["swing"];
} }
} }
public void SwingManualUpdate() public void SetSwing()
{ {
if (tempoObj != null) if (tempoObj != null)
{ {
float swing = float.Parse(swingInput.text); float swing = float.Parse(swingInput.text);
tempoObj.SetSwing(swing / 100f - 0.5f); tempoObj.SetSwing(swing * 0.25f / 100f);
RefreshSwingUI(); swingInput.text = (tempoObj.chartEntity["swing"] * 400).ToString("F");
} swingSlider.value = tempoObj.chartEntity["swing"];
}
/*
a note for future reference:
all stored swing values (like ones in remix.json) are the SWING RATIO - 0.5
for example, a swing ratio of 50% would be 0.5 - 0.5 = 0
and a ratio of 66.67% would be 0.6667 - 0.5 = 0.1667
you put that final value into tempoObj.SetSwing() to set it,
hence why the above functions use that weird formula and the below functions set it directly
in addition, you can get the swing ratio (as a percentage) from this value by
multiplying the value by 100, then adding 50
this is really stupid lol
minenice why didnt you write any of this down lmao - zeo
*/
public void SetStraightSwing()
{
if (tempoObj != null)
{
tempoObj.SetSwing(0f);
RefreshSwingUI();
}
}
public void SetLightSwing()
{
if (tempoObj != null)
{
tempoObj.SetSwing(0.1f);
RefreshSwingUI();
}
}
public void SetNormalSwing()
{
if (tempoObj != null)
{
tempoObj.SetSwing(0.1667f);
RefreshSwingUI();
}
}
public void SetHeavySwing()
{
if (tempoObj != null)
{
tempoObj.SetSwing(0.25f);
RefreshSwingUI();
} }
} }