//We have a local copy here so that we can do some optimizing that isn't available in MenuCore. private Vector3 DeterminePosition(Counter <T> counter, CountersData data) { float comboOffset = CountersController.settings.ComboOffset; float multOffset = CountersController.settings.MultiplierOffset; ICounterPositions position = settings.Position; int index = settings.Distance; Vector3 pos = new Vector3(); //Base position Vector3 offset = new Vector3(0, -0.75f * (index), 0); //Offset for any overlapping, indexes, etc. bool hud360 = CountersController.settings.hudConfig.AttachToBaseGameHUDFor360 && data.Is360Or90Level; float X = hud360 ? 2f : 3.2f; switch (position) { case ICounterPositions.BelowCombo: pos = new Vector3(-X, 1.15f - comboOffset, 7); break; case ICounterPositions.AboveCombo: pos = new Vector3(-X, 2f + comboOffset, 7); offset = new Vector3(0, (offset.y * -1) + 0.75f, 0); break; case ICounterPositions.BelowMultiplier: pos = new Vector3(X, 1.05f - multOffset, 7); break; case ICounterPositions.AboveMultiplier: pos = new Vector3(X, 2f + multOffset, 7); offset = new Vector3(0, (offset.y * -1) + 0.75f, 0); break; case ICounterPositions.BelowEnergy: pos = new Vector3(0, hud360 ? -0.25f : -1.5f, 7); break; case ICounterPositions.AboveHighway: pos = new Vector3(0, 2.5f, 7); offset = new Vector3(0, (offset.y * -1) + (hud360 ? 0.25f : 0.75f), 0); break; } if (counter is ProgressCounter) { if ((settings as ProgressConfigModel).Mode == ICounterMode.Original) { offset += new Vector3(0.25f, 0, 0); } } return(pos + offset); }
public static Vector3 DeterminePosition(GameObject counter, ICounterPositions position, int index) { Vector3 pos = new Vector3(); //Base position Vector3 offset = new Vector3(0, -0.75f * (index), 0); //Offset for any overlapping, indexes, etc. bool hud360 = settings.hudConfig.AttachToBaseGameHUDFor360 && Resources.FindObjectsOfTypeAll <FlyingGameHUDRotation>().Any(x => x.isActiveAndEnabled); float X = hud360 ? 2f : 3.2f; switch (position) { case ICounterPositions.BelowCombo: pos = new Vector3(-X, 1.15f - settings.ComboOffset, 7); break; case ICounterPositions.AboveCombo: pos = new Vector3(-X, 2f + settings.ComboOffset, 7); offset = new Vector3(0, (offset.y * -1) + 0.75f, 0); break; case ICounterPositions.BelowMultiplier: pos = new Vector3(X, 1.05f - settings.MultiplierOffset, 7); break; case ICounterPositions.AboveMultiplier: pos = new Vector3(X, 2f + settings.MultiplierOffset, 7); offset = new Vector3(0, (offset.y * -1) + 0.75f, 0); break; case ICounterPositions.BelowEnergy: pos = new Vector3(0, hud360 ? -0.25f : -1.5f, 7); break; case ICounterPositions.AboveHighway: pos = new Vector3(0, 2.5f, 7); offset = new Vector3(0, (offset.y * -1) + (hud360 ? 0.25f : 0.75f), 0); break; } if (counter.GetComponent <ProgressCounter>() != null) { if (settings.progressConfig.Mode == ICounterMode.Original) { offset += new Vector3(0.25f, 0, 0); } } return(pos + offset); }
public static Vector3 DeterminePosition(GameObject counter, ICounterPositions position, int index) { float X = 3.2f; Vector3 pos = new Vector3(); //Base position Vector3 offset = new Vector3(0, -0.75f * (index), 0); //Offset for any overlapping, indexes, etc. switch (position) { case ICounterPositions.BelowCombo: pos = new Vector3(-X, 0.85f - settings.ComboOffset, 7); break; case ICounterPositions.AboveCombo: pos = new Vector3(-X, 1.7f + settings.ComboOffset, 7); offset = new Vector3(0, (offset.y * -1) + 0.75f, 0); break; case ICounterPositions.BelowMultiplier: pos = new Vector3(X, 0.75f - settings.MultiplierOffset, 7); break; case ICounterPositions.AboveMultiplier: pos = new Vector3(X, 1.7f + settings.MultiplierOffset, 7); offset = new Vector3(0, (offset.y * -1) + 0.75f, 0); break; case ICounterPositions.BelowEnergy: pos = new Vector3(0, -1.5f, 7); break; case ICounterPositions.AboveHighway: pos = new Vector3(0, 2.5f, 7); offset = new Vector3(0, (offset.y * -1) + 0.75f, 0); break; } if (counter.GetComponent <ProgressCounter>() != null) { if (settings.progressConfig.Mode == ICounterMode.Original) { offset += new Vector3(0.25f, 0, 0); } } return(pos + offset); }
public static Vector3 DeterminePosition(GameObject counter, ICounterPositions position, int index) { float X = 3.2f; Vector3 pos = new Vector3(); //Base position Vector3 offset = new Vector3(0, -0.75f * (index), 0); //Offset for any overlapping, indexes, etc. bool nextToProgress = settings.progressConfig.Position == position && settings.progressConfig.Distance < index && settings.progressConfig.Mode == ICounterMode.Original; bool nextToScore = settings.scoreConfig.Position == position && settings.scoreConfig.Distance < index; bool baseScore = settings.scoreConfig.Mode == ICounterMode.BaseGame; switch (position) { case ICounterPositions.BelowCombo: pos = new Vector3(-X, 0.85f - settings.ComboOffset, 7); if (nextToProgress) { offset += new Vector3(0, -0.25f, 0); } if (nextToScore) { offset += new Vector3(0, -0.25f, 0); } if (nextToScore && baseScore) { offset += new Vector3(0, -0.15f, 0); } break; case ICounterPositions.AboveCombo: pos = new Vector3(-X, 1.7f + settings.ComboOffset, 7); offset = new Vector3(0, (offset.y * -1) + 0.75f, 0); if (nextToProgress) { offset -= new Vector3(0, -0.5f, 0); } break; case ICounterPositions.BelowMultiplier: pos = new Vector3(X, 0.75f - settings.MultiplierOffset, 7); if (GameObject.Find("FCDisplay")) { offset += new Vector3(0, -0.25f, 0); } if (nextToProgress) { offset += new Vector3(0, -0.25f, 0); } if (nextToScore) { offset += new Vector3(0, -0.25f, 0); } if (nextToScore && baseScore) { offset += new Vector3(0, -0.15f, 0); } break; case ICounterPositions.AboveMultiplier: pos = new Vector3(X, 1.7f + settings.MultiplierOffset, 7); offset = new Vector3(0, (offset.y * -1) + 0.75f, 0); if (GameObject.Find("FCDisplay")) { offset += new Vector3(0, -0.25f, 0); } if (nextToProgress) { offset -= new Vector3(0, -0.5f, 0); } break; case ICounterPositions.BelowEnergy: pos = new Vector3(0, -1.5f, 7); if (nextToProgress) { offset += new Vector3(0, -0.25f, 0); } if (nextToScore) { offset += new Vector3(0, -0.25f, 0); } if (nextToScore && baseScore) { offset += new Vector3(0, -0.15f, 0); } break; case ICounterPositions.AboveHighway: pos = new Vector3(0, 2.5f, 7); offset = new Vector3(0, (offset.y * -1) + 0.75f, 0); if (nextToProgress) { offset -= new Vector3(0, -0.5f, 0); } break; } if (counter.GetComponent <ProgressCounter>() != null) { if (settings.progressConfig.Mode == ICounterMode.Original) { offset += new Vector3(0.25f, 0, 0); } } return(pos + offset); }
private static void ResetSetting <T>(T model, bool en, ICounterPositions pos, int index) where T : IConfigModel { model.Enabled = en; model.Position = pos; model.Index = index; }